Monthly Archives: January 2007

CodeMash 2007

Well, the CodeMash conference has come and gone. Ah, all of that planning and now it’s over. How will I spend my days if I don’t have to help plan and publicize this event? Maybe I’ll actually get some work done (and see my kids)!

The conference was very cool. One problem in helping to arrange the event is that I had a lot of input into which talks were accepted. That meant that in every time slot, there were multiple talks that I wanted to attend! Ugh! So I moved in and out of the talks, sampling each. Sometimes, I got captivated with a talk and stayed until the end. Other times, some conference organization thing came up and I had to step out. But all in all, people seemed thrilled with the talks, the keynotes, and the venue. And I had lively conversations with attendees and speakers alike, WAY past my bedtime. The 6:30 am organizer scrum came very early on Thursday morning (since I had barely gotten to sleep, it seems). I dashed off without so much as washing my hair (eek, I had to be on stage to introduce Bruce Eckel’s keynote and there would certainly be photos!). Sigh. I had planned to get more sleep on Thursday night, but instead, I found myself talking to speakers and other attendees, including both Mark Ramm and Mike Levin (who I hear continued the conversation even later!) until 1:30 am. Friday night, much of the same. Oh well, maybe I can catch up on my sleep this week.

We kicked off the conference with an “Expert Panel on Languages”, which was moderated by Bruce Eckel and panelists included: Neal Ford, David Stanek, Bill Wagner, James Ward, and Jay Pipes. Many thanks to both Jay and James who stepped in at the last minute to round out the panel!

In addition to the scheduled talks, I attended (and convened) some Open Spaces talks. These are interactive conversations, decided by the makeup of the group. I was introduced to Open Spaces by Bruce Eckel at several conferences in Crested Butte (the next of which is the Java Posse Roundup in March). As he warned often happens, Open Spaces conferences have really spoiled me for eyes-forward talks. Sure, sitting in a lecture and listening to someone talk about something is often an effective way to learn. But I LOVE the interaction of Open Spaces, where every participant is actively involved in the conversation, sitting on the edge of their chairs, engaged. Not falling asleep.

Ah, anyhow, since Bruce was at CodeMash, we had him introduce the concept of Open Spaces and provided a board where people could post talks. His conferences are ALL open spaces, while this one had open spaces “on the side”. I think that we could have done things better in this regard, but I saw some engaging open spaces talks, including some convened by Bruce Eckel (for questions after his keynote) and Mary Poppendieck (for questions after her talk on Lean Software Development).

Other Open Spaces sessions that I attended …

Social Networking for Nerds (Versions 1 and 2):

One of the scheduled talks, for example, was “Networking for Nerds” (hardware stuff), but a few of us were thinking that a “social” networking for nerds might be a good thing to do, so we convened an open spaces session, “Social Networking for Nerds”. But as we were about to begin, there were rumblings about hitting the water park (CodeMash was at the Kalahari Resort and Indoor Water Park in Sandusky). So, we simply moved the “social networking” open spaces TO the water park. “Meet at the Lazy River!” And we did. A bunch of geeks in swimsuits … hmm, that knocks down some social barriers. As I explained to Josh Holmes later, “Once you’ve floated down the Lazy River in a raft, or raced down a water slide side by side with another conference participant, you don’t really feel too shy about asking if you can sit next to him at lunch!”.

Later, we did convene a second session, “Social Networking for Nerds 2”, in a more traditional venue … in the Nia Conference Center midday on Friday. It was well-attended as well. I think about 20 people showed up. I voiced my one regret in my career as not having kept in touch with people from prior jobs in my 20 years as a professional developer. One guy said that he keeps birthdays in Outlook and emails people yearly! He doesn’t feel like he’s “using” another person when he has a question for them later. Good idea (and it was his birthday as well, so we all wished him a happy birthday). Another guy (Barry Hawkins, who I first met in Crested Butte), indicated that his first Java User Group meeting was an eye-opener for him. He realized that people went and heard the presentation, but didn’t interact otherwise. So he announced a “pre-event” meeting where he would be at a local restaurant beforehand, and he gets a great turnout for that. Like our “social networking” session, it’s self-selecting. Those who are interested in networking, go! And while geeks have a bad reputation for being antisocial, I think that those who attend conferences perhaps have a bit more interest in socializing than the standard geek. The consensus seemed to be that most of us feel socially awkward at one point or another, but we push on and do it anyhow. And so we get better at it, just like software development!

Building a TurboGears Widget with Flex:

James Ward, Flex evangelist from Adobe, and Kevin Dangoor, the creator of TurboGears, paired to build a widget in TurboGears that embodied a Flex component. They built a DisplayShelf widget and deployed it to the Python Cheese Shop in under an hour. In a nice demonstration of pair programming, it actually worked the FIRST TIME. Phenomenal. About a dozen people sat around and watched the two at work, and later went to work themselves, grabbing the widget from the cheese shop and quickstarting a TurboGears app and using it themselves. When I got home from the conference and explained this to my husband, he insisted that I do the same. I easy_installed the widget and had it working in about 16 minutes (including copying images to use), in spite of me NOT wearing my glasses. Impressive.

Women in Software:

We brainstormed a bit on why there are so few women in software development these days. Mary Poppendieck explained that when she first got into software, about 40% of the developers were women. She thinks that companies were afraid to hire men because they might be drafted for Vietnam, and so it was “safer” to hire women. And women did it. Another attendee landed in software development from a secretarial field because of an awesome role model and mentor in her (female) boss. Another woman who attended came from a mechanical engineering background. Several men attended as well. We tried to work out some differences, and the one thing that kept coming up was … what drives us. Several of the women in attendance were really drawn by fulfilling customer’s (or company’s) needs. HELPING people. As a generalization, the men seemed more drawn by “building cool things”. Interesting. So maybe when we talk to girls about computer science, we need to talk to them about the human interaction component? That’s a thought. Mary Poppendieck brought up an interesting point as well. She doesn’t think that we need to reach young girls to convince them to go into computer science. She thinks we need to reach their PARENTS. Ah, interesting, especially since many of us indicated that our parents were guiding influences in our choice of professions. So we didn’t come up with “a solution” but that wasn’t really the goal. We have some insight and that’s a start.

User Stories: Reaping the Benefits of Agile Software Development:

Barry Hawkins convened an Open Spaces session on User Stories. A few of us gathered and described why user stories are so critical to the success of agile development. We delved into the representation of personas and we all really feel that these are key to user stories. It’s not all that productive to talk about “the user” as if my 67 year old retired dad and my 23 year old neighbor with a college degree see and use software in the same way. Should we just ban the words “THE USER” in our discussions? OK, maybe not, but building up personas really does help us keep in mind how people use software differently. And building stories for what the components are in software is a great way to help management define not only the complexity of a task but also how essential it is. Ah, now that we all clearly SEE what we’ve been talking about, maybe we can live without it. Or maybe it’s even more critical and needs to be elevated in priority. User stories really help that.

There have been a lot of blogs about CodeMash, since the conference ended. Those that say that they’re glad that they attended and that they would come again, or that they would recommend the conference to their colleagues, make me feel like I didn’t spend the last few months planning this conference for nothing. The real benefit in community-organized events is, however, in letting people know what you would like done differently next time. We’re not a bunch of conference organizers. We’re developers. As I said several times at the conference, this is the conference (and content) that WE wanted to attend. If others in the development community pitch in with ideas and speakers and keynoters and what to do differently, it can be even MORE awesome next time. Did I say “next time”? EEK! Don’t tell my family …. But do join the CodeMash google group and provide feedback, suggestions, etc.!

CodeMash website

CodeMash google group

TurboGears 1.0 is released!

TurboGears, which has been at 1.0b1 for a while now, was released as 1.0 today. Here’s a link to an IRC chat that describes what that means, and more about the future of the TurboGears project.

http://irclog.turbogears.org/archive/freenode/turbogears/2007/01/03 (scroll down to timestamp 17:00 for the relevant info).

This is all great timing, since the TurboGears Jam is starting in just a week and a half, here in Ann Arbor. It’s January 14-16 (more details on Bruce Eckel’s site: http://mindview.net/Conferences/TurboGearsJam/).

Here’s Kevin’s mention of the TurboGears Jam from the IRC chat:

Next minor item: I'd just like to remind folks that Bruce Eckel's TurboGears Jam is happening here in Ann Arbor, Michigan in less than two weeks. It should be a lot of fun and I hear that Bruce creates a great learning environment at these kinds of events. I will be at the Jam as much as I can. Also, I'll be introducing TurboGears at CodeMash in Sandusky, Ohio later that same week.

I’m really looking forward to the TurboGears Jam, and I’m excited to see what 1.0 has to offer that I haven’t already seen in 1.0b1. If you haven’t already signed up, I think that there’s still room for a few more people. Join us! Sunday is “introductory day” with pricing that allows you to attend Sunday only (great for those who want exposure to TurboGears, but can’t justify it to their bosses … yet). Monday and Tuesday should give us a lot of time to experiment.

My responses to Kathy Sierra’s blog on 5ish questions

As often happens when Kathy Sierra posts a new blog entry, I find myself compelled to get something in writing. Her writing really does provoke passion and interest … what a great job she does!

Last week, I read her blog (late) about women’s t-shirts at conferences (ahem, lack thereof). Since I’m in the midst of helping to organize the CodeMash conference, I’m really pushing women’s tees. If we pull it off, I’ll definitely send Kathy one (and anyone else who wants one). Our logo is cool (check it out). Anyhow, women’s tees cost an extra $3/shirt but heck, so do the XXL’s and we’re buying THOSE, so why not!

Anyhow, back to this week’s Creating Passionate Users blog entry, where Kathy turned the “5 Things You Don’t Know About Me” question around a bit, and asked it of her readers. Certainly, it’s great to know who’s reading, but I think that she’s built up a community around her blog posts and REALLY just wants to know who’s in it.

So here are her questions, with my answers.

0) What's your name and website URL? (optional, of course)

Dianne Marsh, www.srtsolutions.com

1) What's the most fun work you've ever done, and why? (two sentences max)

I worked for a small startup (5’ish people) from 1992-1996, doing human genome software (specifically sequence analysis). This was the most fun application area I’ve been in, to date: interesting, challenging, personally rewarding.

2) A. Name one thing you did in the past that you no longer do but wish you did? (one sentence max)

Triathlons: I can’t say I ENJOYED them but it was good to be training.

B. Name one thing you've always wanted to do but keep putting it off? (one sentence max)

Learn to play the piano.

3) A. What two things would you most like to learn or be better at, and why? (two sentences max)

Patience and relaxation. Life seems to get away from me, and stress seems to take over.

B. If you could take a class/workshop/apprentice from anyone in the world living or dead, who would it be and what would you hope to learn? (two more sentences, max)

My three year old daughter, as an adult. I would love to be able to understand the impact of my parenting on her, and learn from that experience (even though I couldn’t apply it!).

4) A. What three words might your best friends or family use to describe you?

Bossy, opinionated, dedicated

B. Now list two more words you wish described you…

Neat, polished

5) What are your top three passions? (can be current or past, work, hobbies, or causes– three sentences max)

My children, the environment, and community (both web and IRL)

6) (sue me) Write–and answer–one more question that YOU would ask someone (with answer in three sentences max)

Q: Have you chosen the right profession?

A: Yes; I enjoy what I’m doing and there’s plenty of opportunity for me to keep learning about things in my profession throughout my career. If this weren’t true, I would change professions. Life’s too short.

[Bonus: What is one question you wish people would ask themselves?]

Q: WHY do you think you need to eat trans-fats?