top | item 5508584

(no title)

jd | 13 years ago

What Siracusa describes as Technological Conservatism is probably more of a status-quo preference. I think this is because there are two opposing forces are work.

1. Innovation is often little more than a sequence of small incremental improvements. Improvements that -- when viewed individually -- don't really seem to matter much but when they accumulate you get a completely superior product.

2. Keeping up to date on the newest developments can be a chore. Things change, but for no apparent reason. APIs get refactored and break. Your favorite buttons in your favorite OS get removed. What was idomatic code last year is considered crummy today. This can be frustrating, because you just want to get your work done and not worry about all this stuff on the margins. Every hour you spend reading release notes and upgrading to the newest version of jQuery, Node or Go is time that would otherwise go into your product. And yet, by standing still you go backwards.

So this is where the comparison to politics breaks down a bit. In the short term being "conservative" and just sticking to whatever tools you know is optimal. It will get your product out the door the quickest and it can still be high quality and mostly bug free. From a short term business perspective it's often the right choice. In the medium term you run into bugs of frameworks that have already been fixed 6 months ago and the quality of your code base is slowly going to degrade as hacks pile on top of one another. The more out of date your technology stack is the more you lose out on great libraries and best practices. So for t → ∞ sticking to whatever you know today is clearly a poor strategy.

discuss

order

drakeandrews|13 years ago

Isn't a conservative outlook literally a status-quo preference, you wish to conserve what was instead of risking what might be?

pnathan|13 years ago

> The more out of date your technology stack is the more you lose out on great libraries and best practices.

Peculiarly, I don't feel this with Common Lisp (30 years old and counting). I think part of that is the fact that CL has been a standard: there are no out of date libraries due to age and drift, only libraries that are not useful for current problems or libraries that have been neglected.

I think that when you focus on technologies that have become stable and build your platform on them, you have a much more solid system than building on shifting technologies.

pixl97|13 years ago

So what you're saying is modular technology and modular politics would be the most optimal situation.

If one part of a system is outdated it makes more sense to replace that the broken part rather than an entire system.

Unfortunately both political and computer systems want us to be 'all in' on whatever current version is out.

jiggy2011|13 years ago

The problem is that interfaces will typically change over time. So really you are talking about maintaining backwards compatibility which means maintaining a bunch of old stuff riddled with technical debt.

If you are designing a new product to a tight deadline, it seems very attractive to leveridge all the features of "the new hotness".