align-toparrow-leftarrow-rightbackbellblockcalendarcamerachatcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-crosscrosseditfacebookglobegoogleimagesinstagramlocation-pinmagnifying-glassmailmoremuplabelShape 3 + Rectangle 1outlookpersonplusImported LayersImported LayersImported Layersshieldstartwitteryahoo

Designing Reactive Systems: State-Based Design Challenges w/Mark Mahoney

This month we will continue our series on product development principles with Ralph Iden and then Mark Mahoney will give his talk on reactive systems.


Agenda:
6:30 - 7:15: Product Development Principles w/Ralph Iden and discussion
7:30 - 8:30: Designing Reactive Systems: State-Based Design Challenges w/Mark Mahoney

Product Development Principles w/Ralph Iden:

As software craftsmen, each of us strives to develop and embrace principles that result in better products. Last time, we discussed Principal #1 ("Don't annoy your customers) and were given a "homework" assignment.  This month, we will discuss Principal #2 (Strive to delight your customers) and Principal #3 (Establish your project's mission, vision, and values). The evening will start by providing an opportunity for people to share their homework results. Then, after a short presentation to introduce this month's principles, a discussion will follow to explore them more deeply.

Ralph Iden is a Principal Developer at Follett Software Company with over 30 years of experience developing commercial software applications using a variety of languages and frameworks. He likes to create tools to make developing software more enjoyable and dabbling with parsers, electronics, and embedded micro-controllers. His mantra is, "Don't annoy your customers". 


Designing Reactive Systems: State-Based Design Challenges w/Mark Mahoney

State-based systems must respond to events that can occur at any time and in any order. They are particularly relevant for embedded devices with inputs other than keyboards and mice. Some people are predicting a future filled with reactive, interconnected devices. This presentation is relevant for those who are excited about designing state-based solutions for the ‘Internet of Things’.

This presentation will introduce extended finite state machines as a way to design reactive systems. Next, we will learn how to turn state machines into code using the ‘State’ design pattern. The group will be presented with some problems and will be asked to come up with state-based solutions. This will be a highly interactive session, so come prepared to discuss, design, and solve some interesting problems. We will compare solutions and share our experiences and expertise.

Mark Mahoney is the chair of the computer science department at Carthage College in Kenosha, WI. Before that he was a software engineer at Motorola. Dr. Mahoney leads groups of undergraduate researchers examining how to make it easier for software developers to learn from their code repositories and from each other.

Join or login to comment.

  • Bill S.

    Enjoyed both the StateMachine and Product discussions.

    On the latter, I've found a Positioning Statement to be helpful in clarifying a mission/vision. http://webseitz.fluxent.com/wiki/PositioningStatement

    November 20, 2013

    • Ralph I.

      I like the Positioning Statement as a tool that involves the entire organization developing a product. It very clearly captures the goals and rationale in a manner that is meaningful for all stakeholders. The mission/vision I presented is development centric and co-opted the "traditional" mission/value and grafted on quality attributes as an instrument to help the development/engineering team produce the product. Our primary goal was to ensure that everyone involved in producing the product bases his/her decisions on those values or attributes, but could benefit from some refinements.

      One thing I enjoy about these discussions is that everyone is able to share their wisdom and experiences so we can all become more accomplished craftsmen. Thanks for sharing.

      November 21, 2013

  • James G.

    Sorry I missed the event. I had a car problem on the way

    November 20, 2013

  • James G.

    I've been wanting to come to this group and finally I am in town for a meeting.

    November 18, 2013

Our Sponsors

  • Clean Coders

    Change the way you think about code, design and your profession.

  • Follett Software Company

    Follett Software Company provides the venue for our meetings.

  • Veredus

    Veredus is currently sponsoring our Meetup.com account.

  • 8th Light

    A long time supporter of our group.

  • Cranium Core

    A good friend of the group, since the beginning.

  • Express Pigeon

    Buy 1 month of service get the next three months free.

  • Groupon

    Assisting with some group-related expenses.

  • VoltSoftware

    They picked up the tab for the Meetup.com subscription. Thanks, Rob!

Start the perfect Meetup for you

We'll help you find just the right people

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy