In tepid defense of…

Hey all, I’ve been swamped at work and haven’t had any bandwidth or energy for blogging, but I’ve actually been working up ideas for a new blog series. I’m going to call it “In tepid defense of [XYZ]”, where XYZ is some kind of software development tool or technique that’s:

  • Gotten a bad name from folks overusing it, or using it in some kind of dogmatic way that isn’t useful
  • Is disparaged by a certain type of elitist, hipster developer
  • Might still have some significant value if used judiciously

My list of topics so far is:

  • IoC Containers — I’m going to focus on where, when, and how they’re still useful — but with a huge dose of what I think are the keys to using them successfully in real projects. Which is more or less gonna amount to using them very simply and not making them do too much weird runtime switcheroo.
  • S.O.L.I.D. — Talking about the principles as a heuristic to think through designing code internals, but most definitely not throwing this out there as any kind of hard and fast programming laws. This will be completely divorced from any discussion about you know who.
  • UML — I’m honestly using UML more now than I had been for years and it’s worth reevaluating UML diagramming after years of the backlash to silly things like “Executable UML”
  • Don’t Repeat Yourself (DRY) — I think folks bash this instead of thinking more about when and how they eliminate duplication in their code without going into some kind of really harmful architecture astronaut mode

I probably don’t have the energy or guts to tackle OOP in general or design patterns in specific, but we’ll see.

Anything interesting to anybody?

2 thoughts on “In tepid defense of…

  1. This sounds really great: I am working with a lot of developers now that have never picked up the “IoC crack pipe”, to pick on just one of these topics. I’ve observed two very different reactions: “that makes my brain hurt, let’s go back to singletons” and “where can I sell my mom’s tv to buy more of this” leaving no room for discussing the subtleties. I obviously see a lot of value in these things used appropriately. Having a fresh, thoughtful treatment of these subjects would be very productive.

  2. I think this is a great idea and I like the UML topic in particular. I’ve gotten a lot of use out of UML over the years. I feel like the two main problems were that some wanted to formalize more than it should have been and that there was too much process put around it.

Leave a comment