|
|
|
Back to newsletter 149 contents
Listening to Martin Thompson's interesting talk (see the articles listed below), Martin said something as an aside about software engineering that made me stop and think. Martin was talking about when to do performance testing, and said "you wouldn't go ahead and build a bridge and test the bridge by just driving something heavy over it and be finished ... but we do that in software". I've often thought about the term "software engineering" and had similar thoughts to what Martin so clearly enunciated with his analogy: that in comparison to "engineering", software engineering seems very immature. Not really all that surprising, we're a much younger profession.
But that analogy actually made me reconsider. If engineers could build a bridge, and for not very much cost could test it to destruction by driving something heavy over it but with no casualties and leaving no debris; and, finding that it didn't handle the heavy vehicle, could just work on buttressing some aspect of the bridge, and for not very much cost a couple of days later put the next version of the bridge up for testing, it wouldn't surprise me to see bridges developed in just that way. And finally I realised that software engineering differs from most other types of engineering in a very specific way. We have a cost model that mostly encourages us to build incomplete constructs, because it's relatively cheap to fix. Where this doesn't apply (nuclear power plant management, aircraft fly-by-wire systems, etc), development times are much longer and much more expensive (for the equivalent amount of software).
Is this good or bad? I make no judgement. But I will observe that in the last 20 years the way people live in large chunks of the world has dramatically changed from all the half built continually buttressed software engineering projects that make up the web, the world of apps, and all that we can find in cyberspace, on our laptops, desktops and phones. I guess you can make your own judgement on whether you preferred the lifestyle 20 years ago, or now - which I guess comes down to whether or not you would be willing to disconnect yourself from the web permanently.
Now on to all our usual links, including new tools, news, articles and, as ever, all the extracted tips from all of this month's referenced articles.
Java performance tuning related news.
Java performance tuning related tools.
Back to newsletter 149 contents