Thursday, January 14, 2010

Codemash - day 0 (precompiler) report

A good start to CodeMash. I started with a session on the Ruby Koans, a very nice way of teaching; it tempts me to join the crew building a corresponding set of Python Koans. In fact, it would be really interesting to host Python Koans on Google App Engine... Hmm...

Next I went to Mary Poppendieck's session on leadership in software; alas, for me, it was as much frustrating as inspiring. She described techniques proven to produce good software consistently, and I see very few of them in use in the Air Force. Worse, the Air Force is driving hard to make the problem worse: centralizing, centralizing, centralizing - building up the separation between decisionmakers and IT professionals and IT users with thicker and thicker walls made of miles, layers of management, internal organziational boundaries, and government:contractor barriers. *sigh*

She did, however, make me realize that my employer - a small contractor that sends IT professionals in ones and twos to work on projects as our customers need - can do a lot more to improve skills among our employees. We could get together occasionally from our various customer sites to work together on our skills, or at least have a mailing list for technical chat among our employees.

But here's a question - from a purely selfish point of view, is this the right way to spend my energy? After all, there are already plenty of groups of professionals dedicated to mutual skill improvement. They're called user groups, and the time I spent on internal skill development could just as well be spent deepening my involvement in local user groups; the payoff may be bigger, because I'd be involved with a self-selecting group, with people who already believe it's worth going out of their way to hone their own skills and others'. User group members have an attitude, a hunger and thirst and personal committment to excellence, and trying to create that attitude among my company coworkers may be a lot less fruitful than taking advantage of people who alreay have it.

Your thoughts?

Anyway, today begins CodeMash in earnest, and I'm loving it. Most of all, I like meeting up with old friends and meeting new ones. Geeks - particularly geeks who are active in the user community - are just fun, interesting people to be around!


Grant said...

I'd tend to agree that you shouldn't waste too much time trying to form in-company tech discussion groups. At least in companies I've worked at, there were few or no other people passionate enough to put forth any extra effort. Besides, if you do find someone else who's interested, the local user groups are available to them as well. I guess forming a group might be worthwhile if your company does unique things which don't have any local user group support.

Gary Myers said...

When I joined my current consulting firm each group (specialty) did a presentation a month to other consultants. Attendance wasn't compulsory, but people were expected to attend some.
Some time ago the boss changed and decided that specialties didn't have to host the presentations. So they stopped dead.

The Sydney Oracle Meetups started some time after. [Thanks Alex].

I prefer the Meetup meetings because they are more technical, go on longer and you learn things from people you might not otherwise come into contact with.
The company meetings were briefer (an hour) and so less in depth. They were still better than nothing though.

Mike Pirnat said...

In a rare fit of motivation, Mike Crute and I started a Python Koans project last summer:

Then we both got spectacularly busy at work, and it kind of stalled out.

I think we'd both be glad to have more folks contributing though. :-)