Category Archives: Technology

Programming Summer Camp in Colorado, July 25-29

I went to summer camp orientation over the weekend for my elementary school aged children. I muttered to my husband afterward that I thought that the camp should organize a week for the parents. Sailing, swimming, lacrosse, soccer, archery … what’s not to like?

And then, I was reminded that I am going to camp this year too. Programming Summer Camp. A camp for grown-ups! It’s in Crested Butte, CO (which is in the mountains of Colorado and gorgeous!). Like my kids’ camp, it’s a day camp. Without family commitments, most of the folks will have some time in the evenings to hang out as well. In conferences that I have attended previously in Crested Butte, the attendees tend to hang out from early morning til late night, going back to their hotels or B&B’s or shared houses only to sleep.

The camp is set up to support “campsites” proposed by participants. I’m going to be involved with one of the 3 tents at the Scala campsite. Attendees are free to propose campsites of their own or join one that has already formed. (Note that we’re not talking about real “tents” here; this is not a rustic summer camp … it’s held indoors). The price ($200) was set super low, to cover costs only, with profit going to charitable organizations. Your travel to Crested Butte and lodging will be the majority of your expense.

While we’ll be working on programming topics during the days and into the evening, what is summer camp without some time for the great outdoors.  Mountain biking and hiking are amazing in the mountains during the summer, and groups will surely form. In fact, there’s time built into the conference for such activities. I’m looking forward to biking the legendary 401 trail, often described as the best trail in CO:  “At the top there are spectacular views, to the east you can see the Maroon Bells. From here, the scenery can’t be beat… start the narrow singletrack downhill through fields of wildflowers and aspen groves. There are about two more steady climbs after the long downhill back to your car, take your time and enjoy the views!”

I biked part of it once before, and I’m looking forward to tackling it once more. Without the thunderstorm this time!

Sometimes folks worry that events like this might be low on the learning, high on the play factor. I’ll counter that. I’ve been to many conferences and I have never learned more than at these interactive events. Yes, people head off to go hiking and mountain biking, but when they’re in the learning part, they’re truly engaged (and energized). It’s a great experience.

And so yes, the “parents” get to go to camp too. To register, sign the release form and it will take you to the registration. Yes, every self-respecting camp should have a release form!

See you in Colorado!

Flex User Group to Tackle Building Flex/Air Apps for Custom Electronics

The Flex User Group meets in Lansing tonight, May 19, 2011. The topic of tonight’s meeting is building Flex and AIR applications for custom electronics, like Arduino. Here’s the summary that has me intrigued, from their mailing list:

“We will be going through basic electronic concepts, hooking up an Ardunio Microcontroller to a computer, and interacting with it from a Flex application.  We will be working with LEDs, push buttons, gas sensors, etc. to make a an application that you can not only control with a mouse, but can also interact with physically.”

Sounds like fun. Note that the summer meeting location is different from previous months. They will be meeting at 7 pm at 1345 Engineering on Michigan State’s campus. The room is the northwest-most room in the Engineering Building complex.

Free parking is available a block south in the Communication Arts and Sciences parking ramp (Ramp 5).

Directions are included below. Enjoy!

From Detroit:

  • Take Interstate 96 towards Lansing. Take exit 106B / US-127 NORTH (labeled DOWNTOWN Lansing) for approximately 2.7 miles to exit 9 / Trowbridge Rd. When on Trowbridge Road, continue EAST onto the campus of MSU. Take Trowbridge Road 0.6 miles to the parking garage on your right. Meters are valid only until 6pm. The Engineering Building is one block north of the parking ramp, on the north/east corner of Wilson and Red Cedar.  Enter the building and go to the north/west corner of the building to find room 1345.  The room is right next to the coffee shop.

From Grand Rapids:

  • Take Interstate 96 towards Lansing. Take exit 95 / I-496 (labeled DOWNTOWN Lansing) for approximately 9 miles to exit 9 / Trowbridge Road.. When on Trowbridge Road, continue EAST onto the campus of MSU. Take Trowbridge Road 0.6 miles to the parking garage on your right. Meters are valid only until 6pm. The Engineering Building is one block north of the parking ramp, on the north/east corner of Wilson and Red Cedar.  Enter the building and go to the north/west corner of the building to find room 1345.  The room is right next to the coffee shop.

The night the geeks invade the museum

For the third year, the Ann Arbor Hands on Museum is opening its doors to area geeks and their families. Billed as a giant Science Fair for adults, Tech Twilight offers companies like SRT Solutions the opportunity to show the fun side of being a geek. We get to let our hair down, so to speak, and build something fun that kids and their parents will enjoy while visiting the museum. The event will be held on Saturday, May 21, from 6-9 pm at the Ann Arbor Hands on Museum, 220 E. Ann, Ann Arbor, MI 48104.

In addition to the individual sponsor exhibits, the museum offers a scavenger hunt for the kids. Kid-friendly refreshments are provided as well.

This is SRT’s second year as a sponsor of the event, and we’ve been looking forward to it since our inaugural appearance last year. Join us! It’s going to be a fun evening for all.

Learn more and purchase tickets for the event at the Tech Twilight site.

Scala training in Ann Arbor next week

If you haven’t already signed up for Scala training with Bill Venners (author of Programming in Scala and ScalaTest) and Dick Wall (Java Posse, Locus Development, Inc.), don’t delay. The first 3 days (May 23-25) will focus on Applied Fundamentals, what you need to effectively use the language for software development. The last 2 days (May 26-27) will focus on more advanced topics. The 2 “sections” are priced separately, with a discount for taking both. Discounts are also available for large groups. You can register at Escalate’s site.

This is a great opportunity for local software developers to get training from experienced trainers who use the language every day. The momentum behind Scala is growing:

  • Scala 2.9 final (stable build) was released last week.
  • Typesafe, a commercial entity was launched and promises to accelerate commercial adoption.
  • The list of companies using Scala is growing, and includes familiar names such as LinkedIn, Twitter, FourSquare, The Guardian, and Siemens.

I’m looking forward to the training class.  Hope you will join us!

A Business Case for New Languages …

Learning new languages has always been a part of our jobs as software developers. We’ve had a pretty long streak with Java and C#, but it’s time to move onward and take advantages of more expressive languages, like Scala.  I’ve written an article for Artima, “A Business Case for New Languages: The Benefits of Scala over Java“, and I hope that business leaders will be encouraged to talk to their staff about how their product development might benefit from moving to Scala.  And, it’s timely.  Bill Venners and Dick Wall, of Escalate Software, will be in town to hold a public training course on Scala the week of May 22.  They will take you from novice to fully comfortable in the language in that 1 week.  I’m looking forward to it!

Agile Leaders Panel Discussion at Agile and Beyond Conference

The Agile and Beyond Conference was held today at the Henry Ford Conference Center in Dearborn. Marvin Toll and a dedicated group of volunteers, including Tom Kubit (Gene Codes Forensics) and Nayan Hajratwala (Chikli Consulting), and many others worked hard to put on this conference and they did an amazing job.  Mary Poppendieck is one of my favorite speakers, and she keynoted today, talking about the challenges ahead for the software industry. She promised to share her slides, and I will definitely post a link when they are made available.

I was invited to moderate a panel of agile entrepreneurs from our area.  We had a great panel, made up of Carl Erickson, Gary Gentry, Jon Stahl, and Rich Sheridan.  These guys could talk forever, and we had no shortage of questions.  People submitted many questions prior to the event on a google moderator group.  But what really made the panel discussion interesting (for me, at least) was the audience.  This audience was engaged and interested in asking questions.  They were also enthusiastic to share their own stories and challenges, which of course would have made a great open spaces discussion (Tom Kubit was managing open spaces at this conference).  We had people 2 and 3-deep waiting to ask questions throughout the discussion.  I was really pleased with the participation.

I took some notes during the panel discussion …

  • There were a lot of similarities and some differences among the way our panelists manage their companies. Half of the panelists have dedicated project managers on their agile projects, while the other half use team leads who split their time between development, customer management, and reporting.
  • Pretty much everyone agreed that the key to successful projects lies in engaging the business and validating assumptions throughout.
  • There was significant discussion around fixed bid projects and their relationship to agile. Carl Erickson described his process as similar to one that we’ve encountered, that being fixed budget, scope-controlled projects.  I’ll follow up with a blog post about that in more detail soon, because this is a fascinating topic that can’t be adequately described in a paragraph.
  • There was some discussion around cross-team waste, particularly when teams are distributed.
  • The audience participants expressed significant concern around getting their business leaders involved in the (agile) software development process. Earning the respect of the business was deemed critical to success, as was addressing their pain.  And several of the panelists admitted that some organizations are not ready to change, or willing to expose weaknesses in their structure or process.

We didn’t get to all of the questions on the list, but an ongoing dialog, particularly in open spaces, is likely more effective anyhow.  One question that I wanted to ask, was what changes each of the panelists had made in their processes in the past year.  Were they significant? What were they in response to?  How were they met, but customers and employees alike?

I enjoyed the panel discussion and I hope that the audience (and panelists) did as well.  I’m looking forward to what will happen before next year’s conference!

Ann Arbor in top 10 “Where to find a geek”

Last week, I wrote about a recent Fortune survey that showed a large number of companies in the top 10 were tech companies. I quipped that perhaps it’s finally cool to be a geek.  And then, a poll came out from Match.com (the matchmaking website)  that puts Ann Arbor in the top 10 cities of “where to date a nerd”.

OK, so I took some liberties and replaced “nerd” with “geek” in my title because (1) I prefer it, and (2) the former is a bit condescending.  I’ve had this conversation before … maybe it’s a losing battle, but it’s my soapbox.  I’ll save that for another day.

Ann Arbor should be proud of its placement (6 out of 10) for where to find a nerd.  With A2Geeks, Ignite, TedX, numerous tech group meetings each week, thriving co-working space at TechBrewery and Workantile Exchange, incubator space, and the support of Ann Arbor SPARK, it’s no wonder!  We’ve got something that larger cities envy.  And yes, it’s a proud moment for geeks all over town!

Is it finally “cool” to be a geek?

Techies have long been the subject of jokes, but has the tech world arrived?  Today, Fortune listed the top 50 companies with the best reputations.  In the top 10 were 4 popular tech companies: Apple (1), Google (2), Amazon.com (7), and Microsoft (9).  The top 50 includes a number of other tech companies.

Tech gadgets are mainstream, and even teens are impressed by cool things such as iPads and Android tablets.  Many of the leading tech companies have self-made billionaires at the helm.  Has there ever been a cooler time to be a techie?

And maybe, just maybe, we’ll be able to attract more women to the software industry if it’s now cool to be a geek.

The Java Posse Roundup (An Open Spaces Conference): An Insiders Perspective

As I have done each winter for the past 5 years, I just spent a week at the Java Posse Roundup, an open spaces conference, in Crested Butte, Colorado. Organized by the Java Posse, a dedicated group of software professionals who generously give their time to produce a weekly podcast for developers on the Java Virtual Machine, the conference is a week of open spaces discussions, software coding sessions, networking and, inevitably, skiing.

As one of the 4 people (in addition to the organizers) who have attended all 5 of the events, I want to offer some perspective for people who have never attended, and for business owners or technical managers who wonder if they should fund their employees to attend.

The conference is designed around the people who attend the conference. It’s not designed for them; it’s designed by them. On the first day of the conference, the attendees choose topics for discussion, coding sessions to conduct, and extracurricular activities to organize. The content varies based on who attends, and if a topic isn’t discussed, that’s either because the attendees didn’t have interest or because folks were too shy to propose the topic. In the latter case, this doesn’t last long. Those who come back a second time usually come with a bunch of ideas.

A diverse group attends the Roundup. While the vast majority of developers are North American Java developers, we always have a number of attendees from the UK, Europe, Scandinavia. This year, we also had an attendee from Brazil and another from Australia.   We also had a .NET developer and some folks who no longer do active development in any language, but rather focus on either design or management of developers.

When Bill Venners attended a few years ago, we had some fun coding sessions on ScalaTest. When Bill Pugh, a professor from the University of Maryland, attended in years prior, we saw sessions around education as well as static analysis, his research focus.

Managers face an empty agenda when considering whether or not to send employees. Rather than looking at this as a concern, folks in the know see this as an opportunity to explore the many questions and concerns in software development. When people wonder about the content of the Roundup, I point them at the Java Posse podcast, where many of recorded sessions are freely available.

The schedule for the conference has evolved over the years. An optional “coding rodeo” day was added to the front of the conference.  Most attendees show up on Sunday so that they can do software coding sessions all day on Monday.  These have been very popular, and have since been added into the conference proper as well, as optional afternoon sessions.  Like the rest of the conference, these sessions are driven and organized by the attendees.  This year, they included (among others):

  • Developing and deploying an application on Amazon’s new Elastic Beanstalk cloud platform
  • Developing and releasing SnapItLive, a Flex application targeted toward desktop, web, and Android mobile devices
  • A Scala implementation of the Game of Life, complete with a Scala-based user interface
  • Converting a document from Microsoft word to docbook format
  • F# development using MonoDevelop on Linux

Code developed during the conference was made available in various code repositories, so that learning could continue beyond the one week of time spent together.

Geek note: We had an open spaces session on distributed version control systems (Distributed Version Control: Risks, Rewards, and the Cool Kids) which discussed the various issues around VCS such as git, mercurial, and bazaar.  Following a particularly bad experience last year of merging with git, many chose to use mercurial this year, while others stuck with git and had better success than last year.

Weeks before the conference, attendees start self-organizing by renting houses for groups of people to share. Upon registration, attendees are added to an online group to communicate with other attendees. The regret most often expressed by new attendees is in not joining a group house in their first year.  The houses provide amazing opportunities for communicating with other attendees, nearly around the clock, but also serve as adjunct locations for coding rodeos throughout the week.

The daily schedule for the 4 days after the coding rodeo day has evolved over the years, and continues to change as we figure out what we want to get out of our time together.  I say “we” quite deliberately, meaning all of the attendees. While the old timers often feel more comfortable suggesting changes, everyone is encouraged to do so.  Currently, we get together in the early morning each day for 3 open spaces sessions, with topics running consecutively in 4 rooms. One of those locations isn’t amenable to recording, so someone suggested having “off the record” sessions there. These are typically not as technical, tending more toward soft skills and managerial in nature.  They have a slightly different feel to them than the recorded sessions, as people are more free to be vocal about things that they’re not comfortable saying publicly.

After a lunch break, people either do something social (skiing and snowshoeing are popular), catch up on what’s going on back at their workplaces, or join in on one of the coding rodeos that have been organized by attendees. People then get together for dinner before returning for a few hours of lightning talks.  These are 5 minute talks, prepared by the attendees, about a variety of topics. They provide insight into who people are, as well as sometimes answer technical questions.

After a week of this, we all go home, energized by the knowledge gained, amazed by the connections we have made, yet both physically and mentally exhausted. I’ve learned to stretch out my trip for a few days (this year, I arrived on Sunday and returned on Sunday) to give myself Saturday to relax and recover and enjoy the town of Crested Butte with no specific schedule.  Of course, I ended up skiing and having dinner with some other stragglers.

I’ve made some great friends at the Roundup. I’m sad when longtime attendees have to skip a year, but I’m thrilled with the spaces that opens up for newcomers. Over the past several years, I’ve gotten to know many of the attendees personally and we continue our interactions throughout the year.  There are others that I don’t regularly communicate with, but if a question arose that they could help with, I wouldn’t hesitate to reach out. When you spend a week with people, the relationship is based on a pretty deep appreciation of who they are, and an understanding of how you might work together.

Unfortunately, there’s one elephant in the room. That is, while the group is diverse geographically, we still suffer from a significantly lower participation by women than expected. In the past 5 years, only 4 women in total have attended. Even by the paltry statistics of women in this industry, that is pathetically low. I’m working on a side project of how to increase that number, by trying to engage directly with women software developers.

The Java Posse Roundup is one of my favorite events, and I would strongly encourage developers to attend and managers to approve this as a conference.  The opportunity to spend a week with such amazing people is not to be squandered.  I stand behind that recommendation.  That .NET developer who attended the Roundup this year?  He works for me.

Cross training in software

Several months ago, the opportunity arose to work on a project in Flex.  Brian Genisio has had a lot of experience with WPF and Silverlight and he expressed interest in the Flex project.   While there are a lot of differences between the Adobe world and the Microsoft world, Brian found similarities as well.  And he learned that there are things about each platform that he appreciates over the other.  By learning Flex, he’s become a better Silverlight developer, and by knowing Silverlight, he had quick and substantial success with Flex.  He’s been blogging about the experience, and it’s quite interesting.

We asked James Ward if he would like to do a Flex Jam in Ann Arbor, as we’ve done in previous years. We were thrilled when he agreed.  If you think that you might want to join James (and Brian) in learning Flex in an interactive coding workshop, you can get more information or register at http://www.srtsolutions.com/flex-training.  It’s not just for Java or Flex developers!  If you’re a Silverlight developer, check out Brian’s blog and see if you think learning Flex would help make you a better developer.