# Monday, December 10, 2007
Alt.NET Leadership Summit

Alt-Tab Pedal"My dream is that the next evolutionary leap in software development, on the magnitude of continuous integration, comes from the .NET world." John Kordyback - Alt.NET Leadership Summit 2007. This is a huge challenge that he laid out at the summit meeting this past weekend.

I'm actually sitting on the plane on the way home from this same Alt.NET Leadership Summit and collecting my thoughts. I'll be honest and say that it was a very interesting ride throughout the day. I came in with very few real expectations as to what was going to happen or what was going to be talked about. I knew that one of the core missions of the weekend was to decide on how much "leadership" this movement needed. Secondarily, and part of the reason I was there, everyone wanted to figure out how Microsoft can be involved or if it should be. Lastly, there's been a lot of criticism lately around a negative vibe that some people are getting out of Alt.NET.

Who was there:
I came on the invitation of David Laribee. I know that the other guys that were invited from Microsoft were guys like Scott Guthrie, Scott Hanselman, Peter Provost and John Lam. I'm honored to be included on that fantastic short list.

I already knew David, Scott Bellware, Ray Lewallen, Don (XML) Demsak and Rod Paddock (Who didn't make it). I also knew Peter Laudati (Developer Evangelist out of NY) and Dani Diaz (Developer Evangelist out of Philly). I had met Martin Fowler once or twice but we had never really had a chance to sit down and talk.

I didn't know but got to meet Mike Roberts (who created CruiseControl.NET), Brian Donahue (who's starting the first Alt.NET User Group in Philadelphia), John Kordyback (Currently working for Thoughtworks and one of the key guys for the relationship between Thoughtworks and Microsoft), Luke Melia (Who is actually going to work at a new startup on a completely Ruby on Rails application), Wendy Friedlander (token female - :), frequent speaker and Agile pairing expert), Jeremy Miller and Stephen "Doc" List (Open spaces facilitator and dubiously Scott Bellware's boss). I also didn't know the other Microsoft guy, Glenn Block (Working currently on the Smart Client Software Factory for Patterns and Practices). It was amazing to be sitting in the room with all of that brain power.

Summary thoughts on Alt.NET

The first thing that I need to put out there is my thoughts on what Alt.NET is. David Laribee wrote the original 4 pointsMartin Fowler said it really well when he said that "Alt.NET is about strengthening the .NET Ecosystem and therefore the .NET platform".

Alt.NET, to sum of the discussion this weekend in a gross and barbaric way, is about Alternatives In .NET not Alternatives To .NET.

ALT.NET Tools BoardWhat it's not:
Alt.NET is not anti-Microsoft. The whole crew, by and large, was very pro-Microsoft and supportive of .NET and Windows. Not necessarily Vista, but Windows in general.
Alt.NET is not about a particular toolset even though it happens that many of the members use the same exact toolset. It's a philosophy grounded in many of the things that Agile community embrace. The tools that they choose are tools that either really help them follow that philosophy or at a minimum don't get in the way.
Alt.NET is not a group. It's a movement of which there are many members in many different circumstances.

What is is:
First and foremost, it's about raising the bar in development shops in the .NET world. That's desperately needed. There's a lack of knowledge of how to and/or desire to build truly great software by the majority of developers in the world. I'm not the first person to say this nor will I be the last. Jeff Atwood recently posted about the "80/20" rule where 80% of developers are 9-5 clock punchers and the other 20% are trying to better themselves through many different educational means, like reading blogs, magazines, books, attending conferences, training classes and so on. But across the board there is a lack of knowledge of the fundamentals. Recently I was talking to a developer who had deep knowledge about specific technologies but it started to become apparent that they lacked the fundamentals like Object Oriented (OO) programming. This is one of the points that I think that I brought to the table this weekend that resonated with people. Many of the Alt.NET guys are concerned about teaching Agile, TDD, Object Relational Mappers such as NHibernate and so on but we really need to start even more basic than that and make sure that there's a true grounding in the fundamentals before the rest of it matters.

Second, the way to raise the bar in development shops is to raise the capabilities/skill/knowledge of the developer through a grounding in Agile practices such as TDD and best practices such as continuous integration. This is counter to adding slicker tools that drag and drop and perform magic that not all users understand and nobody can automatically test.

So back to this weekend's summit.

One of the key take-aways for me was the crew that was present are really the passionate about getting this movement off the ground and jump started more than they are being dictatorial leaders. It's great that the everyone there got that. This movement is larger than they are it's it's larger than the sum of the parts. There was discussion in the first session that I sat in on about the fact that this person or that person was "on the sidelines" and so they shouldn't be allowed to talk about Alt.NET because they weren't in the "club". This was very quickly quashed by a 8-1 margin (9 people in the room) voted by everyone virtually dog piling on the 1 and consensus was reached. It's far more important that people are starting conversations around the philosophies that Alt.NET hold near and dear than it is to be involved in the group. It was also discussed that it's important to get that right and that you shouldn't be talking about XYZ topic unless you really and completely get it. Mock objects were one of the examples of this - unless you truly understand mock objects, you shouldn't talk about it. I personally disagree a little bit on this. I think it's more important that people are starting to have those conversations than it is that they get it right first shot out the gate. The more people that are aware of it and are attempting to leverage the tools the more likely we as an industry are to get it right. For example, I'll be honest and say that I've not done a lot of pure agile development and I've never done a production system with a pure TDD approach. However, I've had an epiphany when I finally caught on that it's not about the tests. It's about designing the code. Once I got that the lights came on and I became a believer. The tests are important, but they are almost a side effect of going through the process of designing your code right. This does form a great body of executable documentation that can serve as a safety net to you and the developers around you. This is fantastic and I think I should be able to speak about it. And the more I speak about it, the more awareness I'm raising and the more likely a given shop is to try it. Now, that being said - I always toss out the appropriate caveats that I'm not the expert. I'm just a guy who things this is right and wants to get that discussion off the ground. Hopefully through that process, we can all grow and learn and in so doing continually evolve our expertise as a whole.

We also talked quite a bit about the negative vibes that have been the focus of a lot of the of the discussions lately. "Crank.NET" and so. For this discussion, it was invaluable to have Martin Fowler and his experience with the Agile movement at the meeting. He talked about how there were a lot of the same issues in the early days leading up to and shortly following the creation and signing of the Agile Manifesto. In short, there were several of the core guys that were particularly avid about the rigidly of principles of the movement and were not overly diplomatic in their delivery of said message. This is what the Alt.NET movement is going through right now. Many of the solutions to the problem were fairly lo-tech, like getting peer reviews on content that's going to be publicly consumed. He actually talked quite extensively about the fact that on discussion lists, mailing lists and so on that you should always realize that the person you are writing the note to is only a small percentage of the actual audience so context, you have to choose your words well for the wider audience.

Lastly we talked a lot about how Microsoft can help. The interesting part is that early on the discussions it seemed that it was very much an us verses them discussion. As the day moved along, it became clearer and clearer to everyone present that it was in both Microsoft and the movements best interest for Alt.NET and Microsoft to work together in this. If we jointly focus on challenging and strengthening the eco-system within the .NET community to raise it's bar to the level of the bar in the Ruby community, for example, everybody wins.

In the last session, we went around the room and talked about what we had gotten out of the meeting and what we were taking forward. The same themes were resounding from everyone around the room. And there was a bullet list of goals to pursue over the next year or so. The most contentious of the goals is to put together a manifesto. Like a lot of people, I didn't get the real reasoning behind it until Martin Fowler said that the reason was to keep anyone, especially vendors, from taking the term and morphing it to fit their individual needs/desires. The movement as a whole is larger than a single person/group.

I second John Kordyback - I too want the next evolution in software development to come from .NET. Alt.NET is attempting to raise the bar high enough that this becomes reality.


Alt.NET
Monday, December 10, 2007 10:54:06 PM (GMT Standard Time, UTC+00:00)  #  Comments [11] 
« Bill Gates on Green Compu... | Main | Phizzpop Design Challenge... »
Tuesday, December 11, 2007 3:33:32 PM (GMT Standard Time, UTC+00:00)
Fantastic post. I've been following the ALT.NET movement pretty closely.

I've never felt better about being a software engineer on the .NET platform. The new ASP.NET MVC framework from Microsoft is the most exciting development of my career so far (all 2.5 years of it :)).
Wednesday, December 12, 2007 2:07:04 AM (GMT Standard Time, UTC+00:00)
What a fun ride!

The Altnetconf mailing list, while very high volume, has the highest signal to noise ratio of anything I've followed in a long time. I highly recommend every .net developer to read it. You don't have to read everything, but just browsing it like you would the daily news would be an excellent participation in the community: http://tech.groups.yahoo.com/group/altnetconf/

I still haven't heard an outcome to "how much leadership is needed"?

It isn't us v. them. If you have read something about alt.net that turned you off, let me (or anyone, especially names Josh listed above) know, so that they are at least aware of the issue. ALT.NET really should be just a label for "the .net community" that means "hey, we are doing more than just bare framework development here". If you are getting a negative vibe from the community, lets get the community to squash that vibe. I promise we don't want a cloud of elitism surrounding alt.net.

Thanks for the awesome report Josh. I guess I excuse you from leaving early on Friday :)
Wednesday, December 12, 2007 2:33:02 AM (GMT Standard Time, UTC+00:00)
Josh,

I'll use your blog to draft my thoughts. If I find I have something constructive to say, I'll post on my blog. :-) My primary annoyance with the *idea* of Alt.Net (NOT the people) is the apparent sense of smug insularity. It *looks* like a crowd of people joining together around the "one true way." I'm exaggerating, of course.

I don't see a movement, but I do see a lot of hype. Hype is good if properly directed. I worked with a very talented group on a sort of Alt.Tfs (Team Foundation Server) called NTeam. We shared many of the same passions and attitudes as the current Alt.Net proponents. We also shared their propensity to talk ourselves into a frenzy without delivering anything tangible, evidenced by the lack of working NTeam code today.

I've joined the Alt.Net mailing list, and I'm in the conversation. I just am not convinced that this is anything special. It's just the top 20% talking to themselves. I will continue focusing my activities in the community on positively affecting the yeoman developers using the Microsoft platform.

Cheers,

++Alan
Wednesday, December 12, 2007 3:37:29 AM (GMT Standard Time, UTC+00:00)
> I second John Kordyback - I too want the next evolution in software development to come from .NET. Alt.NET is attempting to raise the bar high enough that this becomes reality.

Seriously dude, way to sum it up.
Wednesday, December 12, 2007 3:38:12 AM (GMT Standard Time, UTC+00:00)
> Second, the way to raise the bar in development shops is to raise the capabilities/skill/knowledge of the developer through a grounding in Agile practices such as TDD and best practices such as continuous integration. This is counter to adding slicker tools that drag and drop and perform magic that not all users understand and nobody can automatically test.

Ding!
Wednesday, December 12, 2007 3:39:40 AM (GMT Standard Time, UTC+00:00)
> It was also discussed that it's important to get that right and that you shouldn't be talking about XYZ topic unless you really and completely get it.

We ALL need to make peer review a cultural/universal thing.
Wednesday, December 12, 2007 5:41:20 AM (GMT Standard Time, UTC+00:00)
Jay,

You make a great point. I didn't emphasis the "how much leadership is needed" bit enough in the post. The guys that attended, Dave especially, centered around the idea that the "leadership" is mostly about what janitorial processes/people are needed to keep positive movement and to support the movement. I actually thought it was fascinating that the guys that were present, while thought leaders in their own right, didn't think that the community itself needed 'leadership" as much as it needed support. They are planning to continue "leading" through participation in the community and supporting by forming some of the structures that are needed, like conference support staff, helping fund a speakers bureau so that speakers can afford to travel to new user groups to spread the word and so on.
Wednesday, December 12, 2007 5:52:40 AM (GMT Standard Time, UTC+00:00)
Alan,

Good points. What I see with Alt.NET is that, although the majority of the points are not "new", it's a great step forward that we are publically having these discussions and people are realizing that they are not on an island in their following these best practices. Secondarily, you'd be shocked at how many of even the 20% are only consulting 1 source of knowledge for new learning. I know because I've been to a ton of different shops around the world as a trainer, consultant and now working for Microsoft. I'm excited to see people talking about reaching outside of the mainstream resources for sources of good information and knowledge.
Wednesday, December 12, 2007 2:23:57 PM (GMT Standard Time, UTC+00:00)
Josh

Great post and I had heard of the alt.net group but never looked too deeply into the movement. I agree with the foundations of the movement and the message. The point I would make is that the alt.net should not think of themselves as the first movement to go down this path. Like Alan I worked on the NTeam project and we had the same vision as alt.net but just around the TFS space. I would suggest that alt.net gather a lot of the old NTeam project members and discuss the history of the project. By learning from our mistakes and insights maybe alt.net can grow.

I also think that alt.net should not disregard all Microsoft tools without looking at each for what each is. One example is the VSTS DB Pro offering from Microsoft. I feel that this tool is overlooked by many developers and I have not found any tools that lends itself to applying Agile methodologies to database development like VSTS DB Pro offers.

Let's keep open minds for all work and think about not only small teams but larger teams in the enterprise space when we help grow alt.net.
Wednesday, December 12, 2007 3:52:02 PM (GMT Standard Time, UTC+00:00)
Chris,

Who all was on the NTeam?

Also, I don't think that any of the guys outright drop any of the Microsoft tools - but I don't know where they stand on VSTS DB Pro. I agree that it's got a lot of fantastic features but I haven't used it enough myself to really make a good personal value judgement on it. I trust your judgement here though.
Wednesday, December 12, 2007 7:15:33 PM (GMT Standard Time, UTC+00:00)
The thing that gets me about alt.net is that it appears to be a way for people who think the same way to talk to each other about the way they think. I think the need is for a much more evangelical group to go out and talk to the MS-only nine to fivers that look at software development as only a paycheck and nothing more. No desire to grow or adapt, /that's/ the problem, /that's/ why there's a negative perception of MS developers in the greater developer community. I mean we're all looking outside MS for great things, how come noone outside ever looks in? Exactly, the primary focus should be reaching out...
Comments are closed.