How Web 2.0 Is Killing Software Development
by
on May 31, 2008,
It may seem like I'm awfully negative about Web 2.0, which isn't the case. I'm generally very excited about a lot of apps and a lot of companies, but lately, it's been the dumb things that really bother me enough to write about. Today, it's the realization that the entire set-up is killing the software development process.
Sure, it's been almost 10 years since I did any serious development other than poking around in things, but I know that the main tenets of programming haven't changed that much. An alpha should still be an alpha. A beta should still be a beta (sorry, Nick Bradbury). There should still be this silly little idea of a staging environment so that you don't push out an update only to find that it doesn't work. And scalability isn't something you should have to hire a separate person for.
Web 2.0 has lowered the bar for starting a company. When it took a huge amount of capital to get something off the ground, investors would push for someone with experience to be the CTO, and would push companies to hire proven software architects. With Web 2.0, two people can get together and bootstrap a company long before they ever contemplate taking on investors, and retain lofty titles like CEO and CTO based on the company's initial successes.
The problem is that when all you've ever been is a CTO or a co-founder, you are missing something crucial: life experience. If you've never worked for someone who's built an enterprise system that scales over millions of transactions, you are reinventing the wheel each and every time. There's a reason why the people in CTO positions in huge software companies usually are older, and have been around the industry for a while: they have experience. They've learned from others as well as their own mistakes, and can apply that experience to not creating problems in the first place.
There is no need for a company to hire a "scaling engineer." No such person actually exists. What they need to be hiring is a CTO who has the skills and the experience to have built something right the first time. Software best practices shouldn't be implemented after the fact.
If you enjoyed this post, make sure you subscribe to profy RSS feed!









I have to agree with you here, Cynda. Back in the day, when dinosaurs roamed the earth and I was an active developer, I lived on the bleeding edge because I could help make things work. Mind you, most of these projects were not even being done for money. Even that being the case, the general public of geeks didn’t start using things until they had an official 1.0 release or at least something that wasn’t alpha or beta.
These days, I can pretty much throw something together real quick that seems to work, start a company, put up a website, and away I go.
This is a double-edged sword. It allows for creative people to start making money doing something they like and fast. The other side is it allows start-ups to hang themselves pretty fast.
Web2.0 will not kill software development. It will just
make software development much more interesting and much better.
@James
Ahahahahahahahahahahahahahahahahahahahahahahahahahahaha!
Thanks for the laugh!
The fact that scaling Twitter is considered to be such a monumentally difficult task by the Web 2.0 crowd tells me all I need to know about Web 2.0 software “engineering”. One VC said there’s only a couple companies in the world that have to deal with that kind of load… Uh…. Like every search engine, every IM platform, every financial services company, etc? Yeah, just a couple.
If you want to say that Twitter is unique in trying to scale a platform to high volume after tying its hand behind its back by letting an inexperienced twit design it, then yes, I’d agree that that was a poor decision.
The fact is, Web 2.0 “apps” are little more than ancillary features compared to what was being built in Web 1.0, and that’s the reason things can be turned around so much faster.
hmm.. It’s Cyndy second post in a row that i can only nod my head and say :”yup.. exactly”.
@james - hmm…interesting is for sure, you never know where it’ll hit you
@Rahsheen, exactly
It’s just 2 cents of my points.
Web1.0 has made software development better and more interesting.
Web2.0 is making software development much better and more interesting.
Web3.0 will make software development much much better and more interesting.
So on so forth.
Here, Here.
One of the reasons Enterprise software is so complicated and so hard to develop is that is HAS TO WORK. My customers (resources, financial, banking etc) can not afford downtime, can not afford to ‘hope’ the messages get through, can not afford to wait for teh data centre to be rebuilt after a fire. Even if the product is free, you need an internal SLA to measure yourself against.
How many of these ‘indispensable’ web 2.0 products even have a DR plan, let alone internal metrics ?
Web2.0 can also make Enterprise Software to work.
Actually Web2.0 is already a part of Enterprise Software.
I think Web2.0 is not just “hope” message, do you think so?
Iterative development is simply the way to go, period, and that’s what these public betas are — early iterations. Don’t like it? Don’t participate.
It is software development? I like it!
And just want to particiate.