Finally: a CodeMash trip report (and some upcoming community events too)

Finally starting to feel a bit human after CodeMash.  While I scaled back my volunteer time this year, SRT was still pretty busy at the conference this year, with scaling up to a Platinum sponsorship and MobiMash! But I found a lot of time to attend sessions this year, which was great.  It's been a few weeks since the conference, but I did want to highlight some of my favorite moments.

During the precompiler, I went to Ruby Koans, given by Jim Weirich and Joe O'Brien.  What a great way to learn!  Joe and Jim even brought a little humor to their teaching, with the exercises reflecting "enlightenment".  Love those guys! I completed my precompiler day with Mary Poppendieck's workshop on Competency and Leadership in Software. I worked with a small group, created a fictitious company that we could use to analyze for effectiveness. Great fun! Very instructive!  I've been fortunate enough to spend some time with Mary and Tom during 3 of the last 4 CodeMash events.  I definitely hope that they make it next year!

For the Wednesday night panel discussion, the Java Posse invited Bill Wagner (representing C#) and Chris Smith (representing F#) to join them.  It was a great group, with lots of interesting discussion.

The variety of talks at CodeMash this year was impressive.  Jim Weaver's JavaFX demo was thought-provoking, and I suspect that Bill Venners' Scalatest demo spoke to more than just Java developers.  Andres Almiray's enthusiasm for Groovy/Griffon was contagious.  And Chris Smith's "Evil Genius with F#" was well-planned and interesting.  We were also really lucky to get the Java Posse to come to CodeMash, both for their panel discussion and their sessions.  Joe Nuxoll's Photoshop for Engineers and Engineering vs. Design sessions were well-attended and offered insight that I haven't previously seen at CodeMash.  Dick Wall did "Funky Java, Objective Scala" which was both fun and interesting, offering functional aspects of Java and object-oriented aspects of Scala.  Carl Quinn rounded out the Posse talks with his on Tools in the Trenches.

Of course, there were many sessions that I regret missing, such as James Ward's Agile Toolchain for Flex and Barry Hawkins' "User Stories: Closing the Agile Loop".  I also missed various iphone and Cocoa development sessions, by both Chris Adamson and Daniel Steinberg, and Nick Siegler's talk on JRuby. And many more.

I'm already looking forward to CodeMash 2011. In the meantime, there are some interesting community-driven conferences coming up.  On March 13, you can attend "2010 Michigan: Agile and Beyond" in Dearborn.  The early bird rate on that ends soon (February 10!), so register soon to get $29 registration rather than the regular rate of $99.  After the very successful 1DevDay in 2009, I've heard rumblings of that conference returning in 2010.  Watch the Detroit Java User Group for announcements there.  And, of course, don't miss the Java Posse Roundup in Crested Butte, CO.  It runs March 15-19, with the first day dedicated to "Alternate Languages on the JVM".  There's graduated pricing on the Roundup, so the sooner you know you want to go, the better!

This week, being the first of the month, is a busy one for user group meetings in Ann Arbor.  Tomorrow night, the Ann Arbor Study Group features Django.  This interactive learning experience will be led by Darrell Hawley, and hosted at SRT Solutions ( 206 S. Fifth Ave., Suite 200, Ann Arbor).   The Ann Arbor Computer Society hosts Aaron Thul for Postgres SQL on Wednesday, February 3.  On Thursday, join the Michigan Python User Group in their monthly meeting/discussion.  Both of these events will be hosted at SRT Solutions as well. 

My schedule for CodeMash 2010

Or, more accurately, CodeMash 2.0.1.0.

This is the week that software development in many locations in the midwest takes a hiatus so that its developers can beef up on new skills and ultimately provide more benefit to their companies and customers. In its 4th year, CodeMash this year will attract nearly 700 developers to the Kalahari Resort and Indoor Waterpark in Sandusky, OH.  The conference kicks off with the "precompiler" sessions (fast-paced interactive tutorials) on Wednesday, and a panel discussion featuring the Java Posse on Wednesday night.  Thursday morning, the conference will be in full gear, with morning sessions by industry luminaries such as Joe O'Brien, Jesse Liberty, Jim Weaver, Jim Weirich, James Ward, Ken Sipe, and Jim Wooley.    Fortunately, due to "Best of CodeMash" repeat sessions, I can pass up the "Why is Ruby Different" talk during that session in hopes of catching it later and then only have to decide between the JavaFX talk by Jim Weaver and the Flex talk by James Ward.  The next session of the day pits the panel discussion "Lessons from the Rails Rumble" against the venerable Andres Almiray in "The Case for Griffon", not to mention Barry Hawkins' "User Stories: Closing the Agile Loop"  Hard choices: that's what CodeMash is all about.

Once I survive the struggle from my choices from the morning, and after a lunch keynote by Hank Janssen from Microsoft, I'll have to choose between Joe Nuxoll's "Photoshop for Engineers: Going from PSD to HTML" and Bill Venners' "GetHigher with ScalaTest". Then it's a hard choice between Leon Gershing's "Introduction to Cucumber",  Michael Slade's "Techniques for Programming Parallel Solutions", Catherine Devlin's "reStructuredText: Plain Text Gets Superpowers", and Barry Hawkins' "Domain Driven Design".  But I'll almost certainly choose Dick Wall's "Funky Java, Objective Scala", as I've been looking forward to this talk and its domain examples in bioinformatics.  Fortunately, Joe O'Brien's "Refactoring theProgrammer" has a repeat session!  And then there's one more session before dinner, where I'll have to choose between a more advanced Cucumber talk, Chris Adamson's "How do you do that on the iPhone", Andres Alimary's "Testing Java in the Fast Lane", and Carey Payette's "Enterprise Development with Prism".  I almost missed that Nick Sieger is talking about "Five Ways to Cure the Java Blues with JRuby" in this timeslot.  Again the "Best of CodeMash" repeat sessions come to the rescue and I can choose to see Joe Nuxoll's "Enginering vs. Design" talk later.

Thursday night is always fun at CodeMash.  This year, we're adding a concert (Enter the Haggis) to the cocktail party and jam session.  Every other year, I've headed out to the water park for a while on Thursday night.  Not sure I'll have time to do that this year!

Friday morning, there's no keynote (after that late night, probably a good thing!).  We'll start the day with Chris Adamson's "Oh Crap! I Forgot or Never Learned C!", "Going Dynamic with C#" by Bill Wagner, "Being an Evil Genius with F# and .NET", and "Software Design and Testability" with Jeremy Miller.  I really enjoy Chris Smith's banter, and so I'll probably head to the F# talk.  The next slot has several sessions that I'm really interested in: "RESTful Interfaces to Third Party websites with Python", "Come for the Phone Stay for the Mac" (by author Daniel Steinberg) and James Ward's "Agile Toolchain for Flex".

I'm REALLY REALLY excited about Friday's lunchtime keynote with Andy Hunt.  I heard Andy speak at the Philly Emerging Tech conference last year and was thrilled that we were able to get him to come to CodeMash.  And by "we", I mean Jason Gilmore.

SRT's Friday vendor session "MobiMash" should be interesting.  Jay Wren, Mike Woelmer, Dan Hibbits, and Patrick Steele worked together and independently to provide a mobile solution for CodeMash, incorporating scheduling, session rating, and favorites.  And they did it in the 4 major mobile platforms: iPhone, Windows Mobile, Android, and Blackberry.  The iPhone and Android apps are available for download in their respective stores.  The Blackberry and Windows Mobile apps should be available Real Soon Now.  They will discuss the development challenges (and rewards) on the various platforms, using the MobiMash app as a case study.  I'm looking forward to it!

After the vendor sessions, I'll have to choose between "Clojure" and "Tools in the Trenches".   That's a really hard choice, because I'm both really interested in Clojure and yet also intrigued with Carl Quinn's tools talk.  Maybe I can convince Carl to do a lightning talk version at the Java Posse Roundup 2010!

Mobile Development for CodeMash at SRT Solutions

4 developers, 4 platforms, 1 objective: provide the latest CodeMash information on your mobile device.  Whatever device that is.

Jay Wren (iPhone), Dan Hibbitts (Android), Mike Woelmer (Windows Mobile), and Patrick Steele (Blackberry) have been working together on an application targeted the various mobile phone platforms.  Their intent was to provide not only scheduling but also abstracts, bios and up-to-date schedule information.  You can also use MobiMash to save your favorite sessions, watch #codemash tweets, and to rate sessions 1-5 (information goes to CodeMash organizers). 

Stats are provided on www.mobimash.org showing the page loads from each platform. Many thanks to Charlie Sears and Dennis Burton for their work on the mobimash site.

Android and iPhone apps are available for download right now.  The Blackberry and Windows Mobile versions will be released very soon.  And look for an update to the iPhone app, as soon as Apple gives it the green light.

See Mike Woelmer's blog for more info and screen shots: http://srtsolutions.com/blogs/mikewoelmer/archive/2010/01/06/introducing-mobimash.aspx

Come to the SRT Solutions MobiMash vendor session (Friday: 3 pm-3:25 pm) to hear about the development of the various apps, including how Jay Wren used MonoTouch to develop his iPhone app, and the unique development challenges/rewards of the individual platforms.  Or, stop by the SRT booth. 

As for me, I'll be waiting anxiously for the Blackberry version!

 

 


Funny thing happened to twitter …

Yesterday, we were talking about twitter at the office, and a few people lamented that all of a sudden, it seems like "reading twitter is work".  And we all knew what they meant.  While our friends are all certainly different, the makeup is somewhat the same.  We have all chosen to follow those who are tweeting useful links about things going on in software development, the business community, etc.  And it's like a firehose of articles to read, ideas to ponder, etc.  Like RSS on steroids.  And yes, it does elicit that feeling of, "OMG, I'm overwhelmed at how much I don't know".

Tools, such as groups in tweetdeck, can help you avoid that feeling of dread of opening up twitter, segmenting your friends into different groups so that you can focus attention on social aspects of twitter (meeting up with friends, etc.) and business use based on your mood. 

 

Ignite Ann Arbor videos posted!

Ignite talks have been presented all over the country, and I was thrilled to hear that Ryan Burns was organizing them in Ann Arbor.  About 200 people packed into the Neutral Zone on Washington on Tuesday, June 30, for Ignite Ann Arbor. If you missed the event, you can check out the videos posted on the Ignite YouTube channel.  I suspect that the videos will encourage you to attend in person when Ignite talks return to Ann Arbor in the fall!

The Ignite format is …. 5 minutes total, with 20 slides, slides advancing AUTOMATICALLY every 15 seconds.  I've attended and participated in a lot of 5 minute lightning talks, but the auto advancing of slides adds a new twist! Your timing had better be ON or the slide will go on without you (or linger as you wait, uncomfortably).  But, I found that I liked the format.  The energy level remained really high and the slides were engaging and interesting.   The speakers all did a fantastic job of staying on message and keeping with their slides.  I was quite impressed.

Here's a quick summary of what you will find on the You Tube channel:

Eli Neiburger of the Ann Arbor District Library kicked things off in amazing style with "Hack your Library".  His energy and excitement really set the pace for the remainder of the evening!

Matt Orishi is a Neutral Zone teen, and he did an amazing job of composing an electronic lullaby.  Not to mention, he's a TEEN! Good job, Matt. 

I spoke on the Under-representation of Women in Computer Science.  I was shocked to learn that the number of women in this field that I truly enjoy has been declining since I graduated in 1986, and felt the need to talk about this.  I hope that other computer scientists, male and female, will talk more about what we do.  I'll write more about this in an upcoming blog post.

Aydin Akcasu scaled his Wii Will Wii Will Rock You talk down to the Ignite format, and it was quite well received.

James Deakins talked about making your own weather balloon (and sending chocolate into near space!).

Stephanie Murray talked about the past and future of the news in this town.

Zach Steindler thrilled the crowd with a discussion of inexpensive, do it yourself camping gear.  My personal favorite?  The pop can stove.

Brad Boegler talked about receiving real time NOAA weather satellite imagery in your home (pretty sure that when my husband sees this, we will be hacking along with him).

Laura Fisher talked about classic visual ratios.  I didn't know that ratios were so fascinating, but she's right: they are!

Bob Stack talked about his experience with a fabulous group of people, coworking at the Mech Lab.

Kyle Mulka talked about the Many Uses of Twitter.

Eric Jankowski promoted the game Go (he sure makes it sound easy!).

Dave Askins talked about the history of the Ann Arbor Chronicle and the TeeterTalk.

John Barrie wrapped up the night with a discussion about how to end poverty using clean green technology.

Ignite talks will return to Ann Arbor in the fall.  I'm already looking forward to them.

3 Days, 3 Events before the Holiday

Holiday week? Lots to do before fireworks on the weekend.

Tomorrow night is Ignite Ann Arbor.  If you haven't attending Ignite talks before, check them out! If you have, I'm sure that you'll be there. Format is 5 minutes per speaker, 20 slides that autoscroll every 15 seconds. No time to get off track. No opportunity to go over. People stay on track, on message, and then they're off the stage.  Talks can be on anything, as long as it's something that the speaker is passionate about.  I'll be talking about the Under-representation of Women in Computer Science (the number of women getting CS degrees peaked the year I graduated from college in 1986, and has been in a steady decline since).  

Ignite Ann Arbor starts at 7 pm, and will be held at the Neutral Zone, 310 E. Washington (yes, that's just down the street from SRT's office!).  Register at http://www.igniteannarbor.eventbright.com.

Wednesday, July 1 is the monthly Ann Arbor Computer Society meeting.  I'm not sure about the topic, but it's election month, so it's really important that members attend.  Meeting starts at 6 pm, at SRT Solutions, 206 S. Fifth Avenue, Suite 200, Ann Arbor.  Pizza will be served.

Thursday, July 2 is the monthly Michigan Python User Group meeting.  The group is still deciding on a topic, but it never disappoints.  Meeting starts at 7 pm at SRT Solutions, 206 S. Fifth Ave, Suite 200, Ann Arbor.

And on Friday, it will be time to rest.

Lightning talks all over the region!

After a year or so of hosting public lightning talks on Fridays, we're finding that it's no longer necessary for us to continue to do so.  We're happy to say that other groups have introduced lightning talks and are holding them in the evenings (of note: Ann Arbor .NET Developer Group, Detroit Java User Group), so there are plenty of opportunities to join in on these talks.  With summer upon us, schedules (and art fair) make Friday afternoon events challenging anyhow, but stay tuned.  We'll announce a replacement for Friday afternoon lightning talks in the fall.

How I spent my software stimulus …

A few months ago, Bill Wagner (my business partner at SRT Solutions) and I were talking about how companies were really pulling together in this economy and doing what they could to help others. I was really impressed with the brillant marketing of Atlassian when they rolled out several of their enterprise tools for $5 for 5 days for 5 users.  Nice.  And so we started to think about what we could do, how we could contribute.  The result of that was the SRT Software Stimulus Lab, which we held last Monday at Automation Alley in Troy.  We held a low-cost, no-frills event.  We told people to bring bag lunches and their own coffee.  We made it cheap for employed developers ($50 early bird) and free for those who are unemployed.  And it was … fun, interesting, and productive.  During the registration process, we asked registrants what they wanted to learn and we found that C#, Silverlight, WPF, and Scala were high on the list, as were version control, unit testing, and functional testing.

We started out the day talking one of the most fundamental and, in my opinon, essential tools: version control.  While most people had used version control in one form or another, many of them had only used tools like Visual Source Safe (which, you will likely recall mainly led to annoyance with your coworkers for leaving files locked).  We talked about tools like subversion as today's tools and looked forward a bit toward distributed version control, like bazaar and mercurial.  We set up a repository for the attendees to access and made sure that everyone was able to do so.

After that, we broke into mainly 2 groups.  One attendee, who I know from the Detroit Java User Group, came to learn more about Scala.  He's a Java developer with a significant amount of experience in Groovy.  I enjoyed my time with him, ane he seemed to have fun too.  I don't think that I sold him on Scala (that wasn't my objective), but I believe he left knowing enough about it to decide if he wants to pursue it further or to determine if he wants to stick with Groovy.  We compared and contrasted some features of the languages, and it was fun for both of us (I think!). People from the other group filtered in and out.  One guy teaches C++ on the side, and he was interested,  Another was a PHP developer who was popping in periodically.  We spent some time looking at unit testing in Scala as well as at a lot of the language features, and the preview of what's to come.  Fun stuff!

The other group worked mainly on WPF and Silverlight. The attendees seemed to really appreciate Silverlight (as well as the demos and tutorials that they worked on with the SRT staff).  The attendees also wanted to delve into multithreaded programming a bit, so the SRT staff came up with some demos and an impromptu discussion on that topic.

All in all, the day was what a Jam session should be: a group of people self-organizing into groups to work on things that they enjoy, free to move on if they changed their minds. I really enjoyed spending time with the attendees and I think that we'll probably do the Lab again sometime.  I know that I won't always get to do Scala.  And that's just fine.  I wouldn't have minded learning more about Silverlight myself!

The continuum of social media

A friend was complaining today that he didn't get Facebook. I mentioned that I didn't either.  That's not actually true.  I do get it; it just serves a different purpose than twitter.  Or LinkedIn.  So I thought that I would write a bit about how I see all of these pieces fitting together.

Twitter is truly emerging as a business tool.  And a political tool.   And social as well, of course.  But for business, it offers a great opportunity to engage your customers (and they, you) in a conversation.  Of 140 characters or less.  So, sure, it's not a meaningful long-lasting relationship conversation. But it's an interaction that you probably weren't having otherwise, so it's a good converation.  It's fleeting.  You "tweet" something and it's out there.  Then it's gone (except for the fact that the web has a long memory.  But for the most part it's fleeting.  It's difficult to carry on a conversation over time, particularly between more than 2 people.  Oh, and it's pretty open.  By default, your updates are available to the world at large. Sure, you can secure them, but then you lose a bit of the charm of twitter (the rapid web-like growth from friends and from sharing a common interest).  So, in short, twitter offers you a way to meet people through friends of friends (and through following threads of interest).  This is extreme networking, and quite effective.

Facebook fits a different need.  It's not open, by default.  You choose your friends, approve them.  With that, in my mind, comes responsibility.  I have to choose who I want to include and who I want to exclude. From a business standpoint, a personal facebook account can collide in an awkward way with your business interests.  Facebook is just that … personal.  People post photos of their families, and their high school friends connect with them.  It can be a bit awkward to have people 20+ years in your past posting side-by-side with your business associates.  I'm reminded of the friend who happily left a family nickname behind when he went to college.  Finally he was free.  Until some high school friends went to visit him at college and unwittingly revealed the decades-old nickname that he had been so happy to shed.  Ugh. 

What Facebook does nicely is promote events to your friends.  When one of them signs up for an event through Facebook, others learn about the event (presuming that they may have similar interests).  That's compelling, but for me, the awkwardness remains.  Facebook is adding some controls to allow you to partition updates to different people.  No matter.  I use Facebook for what I see as its strengths: communicating with friends. So while I see twitter as a way to meet new people and carry on very casual conversations with people I may or may not already know but share an interest, I see Facebook as a way to carry on a longer, more persistent conversation with people I already know (or used to, way back when).  I won't likely meet new people through Facebook, unless we happen to join the same "group",  But even so, I'm probably not going to carry on much of a conversation with them,

So where does LinkedIn fit it?  Good question.  LinkedIn is a referral network.  While they too seem to want to support group-based conversations, I don't see many people using it that way.  You don't "hang out" on LinkedIn like you might on Facebook and probably do on twitter.  You go there to see if you can get an introduction to someone, or to find someone with a particular area of expertise.

So, I see all of these as useful social media tools.  They really do just fit different needs. And I like it that way. 

 

So follow me: dmarsh on twitter.  But please don't feel offended if I don't add you as a friend on facebook.  It really isn't anything personal. I just don't spend much time there, and I don't particularly want to be reminded of my awkward teenage years.  My adult years are awkward enough!

AADND, Software Stimulus Lab, Agile Groupies: oh my!

Tomorrow is the 2nd Wedneday of the month, which means that the Ann Arbor .NET Developer group is meeting at SRT.  If, like me, you're still bummed that you missed last month's meeting with Michael Wood on PLINQ, you probably will want to make an extra effort tomorrow night, when Steve Smith is in town and speaking on ASP.NET MVC.  Steve will be presenting Robert Martin’s SOLID principles of Object Oriented Programming, with examples of violations of these principles in a simple ASP.NET MVC application. The principles are then applied, resulting in a much more elegant and maintainable application.  This is a free meeting, open to the public.

SRT Solutions is inviting all developers to join them at Automation Alley in Troy for a day of software development at the SRT Stimulus Lab. This is a jam format, not a lecture format (which means that it's very hands-on).  We'll start off with some fundamentals: version control (bazaar), continuous integration, unit testing and functional testing. The format is open; you can work on your problems (with encouragement, advice, and help from others) or on our examples, if you just want a flavor of some new languages.  This is a low cost event ($75 for the full day), and it's free for unemployed software developers (limited seats available).  Sign up at http://srtstimulus.eventbrite.com.  If you use the discount code SRTUSER, you can still get the early bird price of $50 for a few more days. 

The Agile Groupies in Ann Arbor will meet at SRT Solutions on June 16, from 6-7:30 or so.  Cost: $10 for food.  Joe Hershey will be pairing and speaking, and the talk is entitled, "TDD is Nonsense".

The Detroit Java User Group will meet on June 17 at Compuware, during the Eclipse DemoCamp and IT Exchange Forum, from 5-8 pm. 

The next Ann Arbor Java User Group meeting is scheduled for June 24.  I'm still waiting to hear what the topic is.