Jeremy D. Miller -- The Shade Tree Developer

Sponsors

The Lounge

Syndication

News

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
ALT.NET isn't completely baked and there's nothing new here...

 

...and I'm fine with that.  I want the ALT.NET mission statement and credo to remain up for debate for a while longer.  I wanted to try to respond to Frans Bouma's comments on ALT.NET, but I don't have all of the answers to his questions yet.  What ALT.NET is, other than a perfectly transparent excuse to get together, is still being defined.  We're having a long running argument over a mission statement that's not particularly going anywhere.  We're not the successors to the Agile movement because most of us are Agilists of one stripe or another.  Despite publishing HOT/NOT HOT lists we're not necessarily pushing any particular set of specific tools so much as a set of values -- which will of course lead to some bias in tool selection.  We're passionate about software, and that drives the participation in and usage of open source tools.  In the end, I hope ALT.NET is mostly about actually doing what we already think is best, constantly refining those ideas, bringing in the best ideas from software development, and finding a way to teach others as well. 

One of the negative comments this weekend went something like this:  "ALT.NET isn't any kind of new revelation," to which I'd reply "exactly!" and add that noone ever said that it was.  Another blogger said that ALT.NET was just a repackaging of the Pragmatic Programmers.  If all we did was raise the awareness and understanding of the ideas in the Pragmatic Programmer book to .Net developers at large I'd call ALT.NET a success.  I think of ALT.NET more as a means to mainstream existing techniques, thought, and tools into the larger .Net community.  ALT.NET didn't invent Domain Driven Design, Behavior Driven Development, or Design Patterns, but we can help more people apply all of these things successfully and advance their usage in .Net.  It's not entirely altruism either.  All this stuff that I want to use on my projects will go down a lot easier if you know how to do it too.

If you're foolish enough to ask, any ex-Smalltalker will tell you that they knew everything we're discovering about OOP or literate programming back in the eighties.  Yet all the same, most code that I see in the wild is messy procedural code with classes because basic OOP knowledge and best practices hasn't been mainstreamed.  The SmallTalkers knew everything then, but many developers today don't.  Something didn't happen correctly to pass the lessons of a previous generation down to the next.  If the original developers of the messy procedural code understood twenty year old best practices about OOP that code could be much better and they could have worked faster as well by writing less code and avoiding the sphaghetti code problems. 

Sure, I'd like to see innovation being piped through ALT.NET, and I saw a lot of material on the cutting edge of software development at the conference.  However, the main goal of ALT.NET for me is to democratize better software engineering practices that might not be well known yet throughout the larger .Net community.  Software development as a profession isn't very good at disseminating the lessons that we've already learned.  I'm almost completely self taught, and I know that made some of the lessons I learned go down much harder than they might if I'd had effective mentoring along the way.  Advancing the art of software develoment never ends, but there's a lot to gain simply by learning and teaching more about what we've already discovered. 

And Frans, writing a full fledged competitor to LBLGen is definitely not in the works for me.  That sounds like a great recipe for having no life.  I'm perfectly content to use what's already out there, assuming that I ever get to do anything but write Xml configuration for a tiny bit of Java on the server side ever again.


Posted Thu, Oct 11 2007 10:03 PM by Jeremy D. Miller
Filed under:

[Advertisement]

Comments

David wrote re: ALT.NET isn't completely baked and there's nothing new here...
on Thu, Oct 11 2007 10:59 PM

Hi Jeremy,

I think you hit the nail on the head when you wrote:

"If all we did was raise the awareness and understanding of the ideas ... to .Net developers at large I'd call ALT.NET a success.  I think of ALT.NET more as a means to mainstream existing techniques, thought, and tools into the larger .Net community."

Was just reading this article about the 80% of developers that have no idea about Monorail and are content just doing 9-5: codeclimber.net.nz/.../Yet-another-ALT.net-opinion.aspx

How many of these people slaving over the WebForm page life-cycle would choose that if they had been given a choice from the start?

To me ALT.NET is addressing just this point: raising awareness of alternatives to a level where "mainstream" developers have a choice. At present the choice isn't there. It shouldn't be about pro-this or anti-that, it should be exposing the community at large to all the options, and getting enough information out there to support the choice that teams and developers make.

Vladan Strigo's website - Vladan.Strigo.NET wrote What's all the fuss around ALT.NET?
on Fri, Oct 12 2007 4:37 AM
Jeremy D. Miller -- The Shade Tree Developer wrote My Official Recap of ALT.NET
on Sun, Oct 14 2007 7:09 PM

It took a week, but I finally got around to finishing my recap of the ALT.NET Open Spaces event from

Jeremy D. Miller -- The Shade Tree Developer wrote My Official ALT.NET Recap
on Sun, Oct 14 2007 8:41 PM

It took a week, but I finally got around to finishing my recap of the ALT.NET Open Spaces event from

Chris R. Chapman wrote re: ALT.NET isn't completely baked and there's nothing new here...
on Mon, Oct 15 2007 7:51 PM

Jeremy - Great post;  I have an observation to add in response to what you say here:

"Something didn't happen correctly to pass the lessons of a previous generation down to the next.  If the original developers of the messy procedural code understood twenty year old best practices about OOP that code could be much better and they could have worked faster as well by writing less code and avoiding the sphaghetti code problems."

I couldn't agree more - that's why I looked at one particular piece of the puzzle:  University CS departments.  I did a rough analysis on schools in Canada[1] and Ontario[2] to understand the extent of "best practices" instruction for undergrads.  It's been my experience from working with interns from some prestigious schools that they haven't a clue about proper OOD, unit testing, design patterns, refactoring, orthogonality, or a host of other topics that aren't anything new and should be standard courseware.

It's cool and sad that we actually need an Alt.NET conference in this regard:  Cool because we can get together and share knowledge, sad because it is needed to undo the damage CS schools are wreaking on the new blood coming into the industry.

[1] blog.chapmanconsulting.ca/.../Reviewing+Canadian+CompSci+Schools+Whos+Teaching+Best+Practices+Part+II.aspx

[2] blog.chapmanconsulting.ca/.../Reviewing+Ontario+CompSci+Schools+Whos+Teaching+Best+Practices.aspx

Add a Comment

(required)  
(optional)
(required)  
Remember Me?