3 ms·
I think you're always going to see that. When a system is pioneered, it is very, very, very hard to get any kind of traction. To extend the car analogy. Karl B
by iofj 11y ago
I think you're always going to see that. When a system is pioneered, it is very, very, very hard to get any kind of traction.
To extend the car analogy. Karl Benz spent more than 3 years trying to find an engine configuration that worked and did not blow up. Then, again, he spent years to get an engine of the correct size to provide the correct amount of force for his horseless carriage, and things like transmission, gearshifters, ... Designing the first automobile, start to finish, took one man, going through 3 companies because they wouldn't let him, from 1871 to 1885, 14 years total. And keep in mind that the 1885 version was extremely unreliable, hard to control. It got out of control during a demonstration and crashed it into a wall 3 months after it's construction. It took until late 1888 for a "usable" model to get onto the market (and this is using a flexible definition of the word usable : his wife made 3 design changes on her first trip with the car, one because the brakes didn't work downhill, another to the ignition and something about the fuel line)
But 2 things change for today : building a working car, is much easier. Anybody can do it in a week. Building a car that people might want to buy ... 2-3 years at least. Building a car with a new engine (the only way you're going to really improve performance), or any large difference (e.g. hybrid-electric) 6-10 years at least. Building a fundamentally different car like the tesla took barely less time than Karl Benz needed : 2000 (real work on Tzero started) to 2009 (working prototype presented) to late 2012 when the first model S rolled of the assembly line. This happens because the standards have gone up a lot.
Yes writing software is easier. But writing software that qualifies as "good" has much higher standards, which makes things take longer. I would argue that these 2 are in competition. Some years the tools win, and you can write software faster. Other years people introduce the web and "standard" 5 middleware layers (javascript client-side, load balancing, web server, business logic server, database server) and it takes a lot longer. Other years people demand that a local bakery's webpage is "scalable" and it takes a LOT longer.
If the car industry is a good example, the time and effort required to write software will effectively not go down by more than 20-30%, unless you compromise on quality.