maker faire and rain plans

mf3

Last year, I blogged about co-organizing a booth at World Maker Faire and that we won a blue ribbon.  This year we won a red educators choice ribbon.  Which was also very cool.  Plus this year, my friend and I ran a whole tent.

It was a lot of fun and we got to see some from robots that the kids made.  Of course we had all the FIRST robots (FIRST Lego League, FIRST Tech Challenge and FIRST Robotic Challenge) that the students build.  But we also had a heat/motion sensitive hand sanitizer dispenser.  Especially helpful since we were next to the port-a-potties!

mf2

Speaking of rain, our rain plans get better every year!  Let me tell you what happened this year.

Saturday 9:30am

Norm and I gave the morning briefing to the teams.  Which covered what to do if it rains.

  • move everything into the middle of the tent
  • cover everything electronic with tarp or painters plastic
  • leave a couple team members with the stuff and have everyone else go into the Hall of Science (you can only fit so many people in a tent)

Saturday 9:40am

It starts drizzling.  Luckily everyone was listening and was able to execute the rain plan.  And also luckily, the rain didn’t last long.  While we were waiting under the tent, Bronx Science added an umbrella to their robot. mf8

Saturday about 11am

More rain.  Again, everyone dealt with the electronics quickly and the rain didn’t last long.

Saturday 7pm

The prediction was for rain 8pm-midnight and downpours (.5 to 1 inch per hour) from midnight-6am.  Clearly we needed to protect the booth well.  We moved everything to the center, flipped tables over and covered the FTC field with:

  • painters plastic
  • a table cloth
  • a garbage bag
  • chairs to hold everything down

mf7

Sunday 7:30am

I was first to the booth and was thrilled to see that our plan worked.  I had some students help me lift the plastic from the corners in.  Someone said it looked like a goldfish bowl – there was so much water inside.  But the tops of the foam mats were mostly dry.

mf6mf5mf4

Sunday 6pm

While we protected the top of the field, we didn’t for the bottom.  It was fine, but I hadn’t realized how wet it was down there until we picked up the field!

mf1

Improvement

The tablecloths worked better than I’d have ever imagined.  The painter’s plastic also worked really well.  And for FRC teams – “bag and tag” bags work wonders for rain protection – great idea Xavier!

What is the lesson?

Have good plans.  Communicate them.  Make them better year after year.

 

trying architexa – an eclipse diagramming plugin

Architexa recently announced free licensing for individuals or teams of up to three.  I figured I’d run it against CodeRanch JForum to see what happens.

Requirements/Install

The software is an Eclipse plugin.  You get the link after registering.  A different update site is provided for Eclipse 3.X vs Juno (4.2).  I know some CodeRanch JForum developers use IntelliJ IDEA.  I don’t, so I can try it out.  The install was smooth.  I did get asked to confirm I trust the certificate within Eclipse.

One minor discrepancy.  The website says the software is free for individuals and teams of up to three developers.  The email confirming your email and welcoming you says the software is free for individuals and teams of up to four developers.  Moot point at the moment since I’m using it as an individual.  But Architexa should sync these up.

The email asks me to validate my email using a localhost link.  Same for editing my profile.  I can’t click on it to validate.  Hm.. I then went to the website and clicked the “forgot password” link.  This got an emailed password which I could use to validate in Eclipse itself.  Again the change password link is a localhost link.  After entering that password, Eclipse said my account was validated.  So while the links are broken, I’m in the tool.

Learning curve

Architexa asks which projects it should index.  I said just JForum.  Architexa provides good Eclipse “cheat sheets” to start out quickly.

Layered Diagram

This is like a dependency graph for packages.  Very nice.  If you mouse over, you see incoming (afferent) and outgoing (efferent) dependencies.  You can also drill down to see lower level packages.

Class Diagram

Right clicking a package opens the option to create a class diagram.  Two classes generated on top of each other, but I can drag them around (or highlight them or call other attention.)  It is easy to view the source code from the class diagram.  I don’t see how to view the method names/fields in the class diagram.  This info is available in the outline view in Eclipse already though so it isn’t critical.

Sequence Diagram

This appears to be an enhanced editor.  You drag classes into it and it shows calls.  This seems like more work to create.  I tried dragging a few items over and “add all” to get the calls.  Unfortunately calls aren’t so much within one or two classes so this didn’t help much.  I didn’t create anything worth taking a screenshot of.

Overall opinion

The package diagram caught my attention the most.  I really like the dependency arrows.  The class diagram provides a nice visualization as well.  The sequence diagram seems like it would be a good documentation aid if one was creating sequence diagrams for the project.  Which I’m not because we inherited the design of the code and I’m already familiar with the flow.  I think more value would come from sharing documents and using the tool as a team.

For a “real” (paid) project, I”m not sure I’d be so thrilled to keep my documentation in a proprietary tool. Even a free one.  But for getting a feel for the software on a product that is “documentation-lite” or “no documentation”, the layered (package) diagrams and class diagrams provide a nice way to jump in.  Assuming you are using Eclipse already of course.

distributed retrospectives with a twist

In  the traditional agile retrospective, everyone gets in a room and puts post it notes on a board.  The group then sorts the post its by topic.  Then there is discussion about the points brought up.  I find there are a few limitations with this approach:

  1. It requires everyone to be in the room at the same time.  This isn’t always easy.  (Especially if the team is distributed or partially allocated to other teams.)
  2. Everyone has to watch the sorting exercise.  Throwing more people at this doesn’t make it faster on a big team.
  3. People get worn out by the long meeting.
I’ve done about a dozen retrospectives where people write on post-its in advance of the retrospective and leave them in a shoebox.  (We’ve extended this to having the shoebox available for the length of the project so team members can add thoughts as they occur.)  We then have myself and another team member group the post its by category.  Then we use the actual retrospective meeting for discussion/brainstorming.  For members located remote, we let them e-mail post-it notes.  This loses the anonymity, but people haven’t seemed to mind.
At he end of the season, the programmers of Stuypulse do a  lessons learned over e-mail.  We had more new programmers this year that stuck with the team than ever before.  I wanted to make sure we got their input and the brainstorming wasn’t “biased” by older team members.  I suggested we do a retrospective.  It was an experiment for me too as I’ve never done one completely remote (or without post-its or a shoebox.)  Remember that these are high school students and it is likely they’ve never done any type of agile retrospective before.  Here’s what went down.

Phase 1 – post it generation

I searched if there was an online retrospective website and didn’t find anything.  [If anyone reading this knows of one, please post a comment.]  Instead of post-its, I created a google docs spreadsheet with the following columns:

  • green background – What did we do well?
  • red background – What should we do differently?
  • blue background – What did we learn?
  • purple background – What still puzzles us?
  • Division – I wanted to record whether the comments were coming from a programmer or someone in a different part of the team as perceptions were likely to be different.  This turned out to be a non-issue as only one non-programmer contributed content.  (Which is interesting because when we did lessons learned on the mailing list, we had lots of comments from engineers.  This may still happen in phase 3, but at least programmers got to frame the discussion about programming in the brainstorm phase.)
  • Optional name – In case there we wanted to clarify something.  Only one person choose to be anonymous.  This column turned out to help me because a week after I sent out the request to participate, only the more senior members of the team had contributed content.  This allowed me to “re-invite” the newer members by name.  If everyone was anonymous, I would have just known that turnout was poor but not why.

Phase 2 – post it sorting

Ina corporate environment, I just sort/group the post its.  With the high school team, I also edited a little.  Just to avoid “I agree with so and so” because the sorted post its don’t have names on them.  This took me about an hour.  I did not edit the items for length even though some contributes were sentences (which is really long for a post it note.)  I also added a couple post its to round out groups and get at missing subtext.  I’ve added post-its while grouping in a corporate environment too when the contributed post-its dance around an issue.  This is actually the first time I’ve grouped post-its without having an “other” kitchen sink category!

Now that we are ready for phase 3, the spreadsheet has three tabs:

  1. raw data – what people contributed
  2. grouped – data from tab 1 grouped by category
  3. a summary of the categories, # posts its in each category and a summary with some questions for discussion (in a corporate setting, I order the categories by # posts but don’t come up with questions.  I did here because phase 3 will be over e-mail)

Phase 3 – discussion

This hasn’t happened yet.  I’m sending the spreadsheet out today.  I expect it to be like the lessons learned e-mail threads of the past though.  Which is fine now that we’ve gotten the topics to talk about out there.