Tag Archives: community

One Laptop Per Child comes to Farmington Hills …

If you haven't heard about the One Laptop Per Child program, it's worth investigating.  This is a privately funded project, targeted toward providing laptops to children around the world.  The laptops themselves run on Linux, and are pretty much indestructible.  The giving program allows you to buy one, give one for $399.  Interesting.  I did a little nosing around to see which age group these are targeted at.  The answer I found was around 6-16, although the laptops are supposedly appropriate for any age group.  I'm not sure that they would be good for my kids (they're still a bit young, at ages 2 and 4), but it would be fascinating to see if they expressed interest.
Ivan Krstić, director of security and information architecture at the One Laptop per Child project, who also did a keynote at PyCon about this project (much of the software is written in Python), will be in Farmington Hills next Tuesday, November 13, for a public meeting with the Michigan Unix Users Group (MUG).  The meeting goes from 6:30-9:30, and is held at the Farmington Community Library, 32737 W. 12 Mile Rd., Farmington Hills, MI 48334-3302.

 And … rumor has it that he's bringing HARDWARE, which would be very cool to see.  It's a huge honor to have him attend this meeting considering that the public launch of the giving program is the day before the meeting, November 12.  I really hope that the library is packed.

Here's a link to a flyer for the event:



Microsoft Technology Summit 2007

No, you didn't stumble on Bill's blog accidentally. Really, I'm going to Redmond!

I’m heading off to Redmond on Sunday. Yes, Redmond. No, I do not typically develop on the Microsoft platform (at least not recently), but that’s the point of this conference. This is a conference targeted at community leaders not currently developing on the Microsoft platform. It’s an honor to be included (which is a response in large part, I’m sure, to the many hours I put in to help organize CodeMash). Only about 50 people have been invited and we will be meeting with the product and research teams. It sounds like we will have an opportunity to provide feedback to those teams as well as be exposed to the latest cool things that Microsoft has available. I’m looking forward to not only learning about the latest in what Microsoft has to offer, but I’m also interested in meeting the other participants and helping to build that community as well.

My involvement with CodeMash and my participation at the various Open Spaces events that Bruce Eckel has been hosting (including Programming the New Web, Web Frameworks Jam, TurboGears Jam, and most recently, the Java Posse Roundup) has given me the opportunity to realize that I really enjoy building community. I have been involved with this in the past (Ann Arbor Computer Society, and the Ann Arbor ITZone). I’m trying to work with the Ann Arbor Java User group, and I’ve been going to Python User Group meetings as well. A large part of being an entrepreneur in software is networking. I really dislike some aspects of that. I dislike going to meetings and shaking hands, and delivering elevator pitches. What I do like is getting to know people at conferences or user group meetings, learning what they do, who they work with, who they interact with in the community and what technologies they use. I LOVE meeting new people and talking geek stuff with them. I don’t like meeting business people and giving spiels. I know that this business requires a bit of both, but I would really rather spend time with the fun, cool, technical people when I can!

About a week before CodeMash, we created a google group for people to communicate with one another prior to the event. In addition to helping plan logistics, like carpooling, room sharing and such, it gave us an opportunity to build some community in advance of the event. Face it — geeks can be shy. If this helps to bring us out of our shells so that the face-to-face meeting is a little easier, then that’s great. It gives us all some context about the rest of the group, so that when we finally do meet, it’s a bit more relaxed (I think, at least).

Anyhow, I offered to create a group for the MTS2007 and the Microsoft staff took me up on the offer. People have been signing up all week and I’m looking forward to meeting all of them in person.

I’ll blog more from the event (Microsoft is OK with us blogging about it).

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