I spent last week in Santa Clara, California at the Software Development West conference (http://www.sdexpo.com). This is the seventh SD I've attended, and I've already put in my request to go again next year. It's the only conference I attend, in fact. I like it so much because it's not focused on just developing or just testing or just Microsoft or just Linux or just C++ or just TCL or just people willing to fly to the East coast in autumn or just people who can drive to Hamburg. SDWest is five days jam-packed with endless sessions on every topic imaginable, keynotes and panels by industry illuminaries, and of course the Software Development Jolt Awards.
I'm always interested to see what sessions are being offered each year. My first SD had no testing sessions whatsoever, a track dedicated to COM, and some number of management-type classes (whose topics I have no idea, as I didn't care about management back then). This SD had about ten different talks on testing, not one single COM session (although .Net and Java each had a dedicated track), and the management classes were broken into separate modeling, process, and analysis tracks.
I find it interesting to look at how the sessions I attend have changed of the years, too. I may have attended one or two non-technical sessions my first SD, but this year I split fairly evenly between technical (e.g., hierarchy design, Tablet PC programming), modeling and analysis, and process and management sessions.
Attendance is much less than it was back in 1998, and the show floor is miniscule compared to the first few years. Both are creeping back up, though, which is an encouraging sign. There seem to be a lot more women attendees this year than I remember from my first SD, although a majority of them seem to be either management or analysts. Interestingly, the give-me-all-sorts-of-gory-details C++ technical sessions had almost exclusively male audiences (e.g., two women and one hundred men), the .Net technical sessions were less skewed toward maleness.
One thing that hasn't changed is the quality of the sessions. Most of the industry big names talk at SD: Herb Sutter, Martin Fowler, Robert Martin, Scott Ambler, Josh Holmes, Steve Dewhurst, Allen Holub, just to name a few. Mixing it up with these big guns are plenty of unknowns who happen to have something to say. The level of quality of the presentations is very high, but if by chance you do get a bad presenter, or the topic just doesn't interest you as much as you thought it would, no worry -- there are so many good presentations in each timeslot that you are guaranteed to have at least one other session (more likely two or three) to fall back on.
"How to Break Software Security" was one of the better sessions. Herbert H. Thompson is one of the James Whittaker protoges who has productized Whittaker's Holodeck fault injection tool (http://www.securityinnovation.com/holodeck/). A funny guy with what I can only assume was a Florida accent, Herbert kept the room in stitches with his continuous flow of wry comments and straight setups to some amazing bugs. For example:
Another fascinating session found Juval Lowy (http://www.idesign.net), who Microsoft not only made a Regional Director (which doesn't mean we pay him, but recognizes him as some sort of semi-official Microsoft technology cheerleader) but also gave the title Software Legend (http://www.softwarelegends.com/legends.html), showing us how to inject logging into our apps just by adding an attribute to each class -- in other words, pretend to do aspect-oriented programming on .Net. If this piques your interest, it turns out he wrote about in MSDN (http://msdn.microsoft.com/msdnmag/issues/03/03/contextsinnet/).
I always leave SD with a plethora of new quotes and stories to tell. The best this year:
*** Comments, questions, feedback? Or just want a job on a great team? </g> Send two coding samples and an explanation of why you chose them, and of course your resume, to me at michhu at microsoft dot com. I need a tester, and my team needs a data binding developer, program managers, and a product manager. Great coding skills required for all positions.