Ten things to retire in 2009

This year, 2008, was a year that saw many a new term or expression get ingrained in the minds of us .NET developers.  Quite a few I’d rather not see in the next year, as they’ve overstayed their welcome.  Some are catch-phrases, some are misapplied concepts, and others fall into the “make my brain hurt” category.  Regardless of where they came from, here are ten .NET things I’d like to see make a graceful exit in the new year:

1) Open Spaces

I love me some open spaces, as I’ve had some great experiences with both the Austin ALT.NET Open Space and the recent KaizenConf open space.  But somewhere along the way, a great idea got usurped, strangled, mangled and mass-produced into some kind of buzz-word hippie-fest where we sit around in circles and sing kum-by-ya.  There’s a book on the subject, yet, just like Agile, a non-agenda for a conference became associated with Open Spaces.  CowboyConf != Open Space.  What comes after FooBar Conf?  Wait, I know, it’s ScheißenConf.

2) Any MS ORM

First was the EF Vote of No Confidence, then the realization that EF was worse than we thought it was, then a little LINQ2SQL love, then a sad realization that L2S was going away.  A popular, widely used, commercially supported ORM for .NET already exists.  It just doesn’t come from the left coast.

3) Gloryhounds

Speaking of MS ORMs, has anyone else noticed the breeze blowing from all the hot air surrounding the new “experts” in the nascent technologies coming out of Redmond?  If it’s not in Beta yet, you can’t be an expert unless you’re on the dev team.  Being an expert in a product doesn’t mean you’re an expert in the field, that’s two entirely different purviews.  Any time a new acronym rears its ugly head, you can bet there are several book deals, speaking engagements, articles and consulting gigs lined up to take advantage of a yet-to-be-proven technology.  It would be amusing, if it didn’t drown out the useful conversations.

4) LINQ 2 Your mom

LINQ query expressions (not just the extension method operators) opened a whole new world of internal DSLs for .NET developers.  Unfortunately, the compiler hooks to open up the “from…where…select” goodness were not made public, so the really interesting boo-like applications were left in the dark.  Instead, we get treated to weirdness like LINQ 2 Amazon and LINQ 2 WoW.  What was that Jurassic Park line?  “You were so preoccupied with whether or not you could, you didn’t stop to you if you should.”  Unless you really understand what the LINQ operators are doing under the covers, and what the underlying IQueryProvider object is doing underneath the covers, you’re just creating a hot mess.

5) FooDD

We have enough acronyms driving our design.  DDD, TDD, BDD, SausageDD, let’s call the whole thing off.  Unless you can define what these concepts/architectural styles describe, imply, infer in one volume, let’s just not talk about it.   Underscores in a method name don’t count as a sea change, paradigm shift, quantum leap or revolution.  The only caveat is if there is a Big Blue Book on the subject, which means it’s a game changer.  Cherish that bible.

6) Feeding the trolls

Productive: (adj) Yielding favorable or useful results; constructive.  There are certain folks in our community that, when provoked, will actually respond to your inanity.  Do us all a favor, just shut up, and don’t provoke.

7) Fluent interfaces

Yes, you found the magical mystical extension method!  It’s a miracle!  Now put that hammer down, my face is not a nail.  Just like #4 in this list, we’ve taken a useful idea in internal DSLs, and fouled it up just like you knew we would.  You know what’s a great DSL?  HTML.  If I have to have two dozen characters, parentheses, angle brackets and percent signs to create “<form>” tag, something went awry.  Clever is rarely simple, and unless that fluent baloney improves the situation, you’re a glorified code-sturbater.

8) The BCS

Nothing to do with coding, except that computers help decide who is in the NCAAF championship, where millions of dollars are at stake.  One thing can be certain, Mizzou will never, ever vie for the title.  Ever.

Nor Texas Tech.

Just thought I’d throw it out there, as I know someone reading this has the pull to make it happen.

9) Fear

It’s no coincidence that one of the XP values is Courage.  Though we pride ourselves in pushing the envelope and branching out, why are we the quickest to bash a new concept?  If you signed the EF VoNC without even looking at EF, you’re subtracting, not adding.  Walk a bit in those other shoes before dismissing the framework, tool, concept or idea.  Courage is trying something new despite all your inclinations not to.  Think TFS is garbage?  Try it out.  Think SVN is for pinko FSF weirdos?  Give it a week.  Funny how the loudest protests come from those with the most ignorance.

10) Bold typeface in blog posts

One of my bigger pet peeves is anything in bold.  It’s a cheap trick to grab attention, yet it always works.  Yes, Atwood does it all the time and although it grabs attention, it’s the blogger equivalent of that dork that “quotes” “all” “his” “words”.  The last thing we need is another cookie-cutter Atwood knockoff.

11) Top ten blog posters that can’t count

The worst offenders of all are those morons that create top-ten lists to grab attention and readers, yet can’t count.  Oh wait…

Related Articles:

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

About Jimmy Bogard

I'm a technical architect with Headspring in Austin, TX. I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology. I created AutoMapper and am a co-author of the ASP.NET MVC in Action books.
This entry was posted in Rant. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • charoco

    so let me focus on the non-programming entry in the list: Mizzou and TT *did* vie for the title. Missouri, already with a loss, would have been in the BCS title game last year if they had beaten OK in the Big 12 Championship Game.

    A loss to Oklahoma is all that kept TT from being in the BCS this year.

    Replace Mizzou and TT with Utah and Boise State and you’ve got a point.

  • http://haacked.com/ Haacked

    Ha! I’m guilty of #11!

    #4 Kills me. That’s going to be my new insult at conferences. “Oh yeah!? Well I Linq’d 2 Your Mom last night. Ohhhh Snap!”

  • http://www.managed-world.com Jason Olson

    LOL, “code-sturbation.” Gotta love that word :) . Great list! Though I’m sadly guilty of breaking a few of those items :( . I guess it will be my New Year’s Resolution to not break them!

  • http://www.lostechies.com/members/bogardj/default.aspx bogardj

    @charoco

    I think you’re missing my larger point – no matter how close TT and Mizzou get, they’ll always choke. It’s science.

  • RETIRE NOW

    How about you retire before you say anything else this stupid ever agian?

  • http://www.lostechies.com/members/bogardj/default.aspx bogardj

    @Retire Now

    Your mom’s stupid.

    BURN

  • Jeff

    Come on, quoting and bolding for emphasis are not nearly the same. Quoting words for emphasis is completely wrong. Bolding for emphasis is the entire purpose of bolding…

  • Doug

    Sorry to be pedantic, shouldn’t you use emphasis for emphasis? :p Bold is just shouting.

  • http://www.lostechies.com/members/bogardj/default.aspx bogardj

    @Doug

    Yes, I agree. I write these posts in Live Writer, which probably doesn’t use all the right semantic markup, for as well too.

  • http://codebetter.com/blogs/jeremy.miller Jeremy D. Miller

    Wow Jimmy, quite a bit of attitude. I’ll take part of the blame for #3 (but we’re not stopping until there’s a DSL for everything that required Xml 2 years ago), but let me be the first person to point out the very obvious fact that your boss was the original inspiration for “Gloryhound.” Ironic.

  • http://lunaverse.wordpress.com Tim Scott

    Hey, why you hatin’ on fluent interfaces? By “fluent interfaces” you mean method chaining? If so, I don’t get your example. Can you give another example of what you don’t like? It is the the extensiblity? You prefer lots of method parameters and many overloads? Maybe Ayende will read this and Rhino Mocks 4 will abandon the fluent interface model. :)