4 ms·
I don't think we have a software crisis. Millions of programmers are able to create more or less useful programs all over the word; everything including your to
by beryilma 2y ago
I don't think we have a software crisis. Millions of programmers are able to create more or less useful programs all over the word; everything including your toaster is running software on it succesfully enough; and the community was able to build programs that are accessible to all from a 5 year old kid all the way to your grandparents. Where is the crisis in it?
However, we have a project management crisis, which is not only limited to software, where people in charge of planning are distanced from people in charge of the delivery. And we don't seem to be able to bridge the gap. Agile, Scrum, whatever are indicators of this gap where "gurus" take all of us as fools and we are not able to produce anything better ourselves.
Commoditization of software development is also contributing to this mess because people of all skill levels can find a way to partake in this activity with results of varying success. This is not good or bad, but just the nature of ease of entry into the field. Not much different than food business where we have both Michelin star restaurants as well as MacDonalds of the world both of which have consumers. But we don't say we have a restaurant crisis.
- nicce 2y ago> I don't think we have a software crisis. Millions of programmers are able to create more or less useful programs all over the word; everything including your toaster is running software on it succesfully enough; and the community was able to build programs that are accessible to all from a 5 year old kid all the way to your grandparents. Where is the crisis in it? About that toaster point; this is the actual, real, concrete example of the software crisis. Your toaster runs bad code. Bad code that is not designed with resiliency or security in mind but is connected to internet. It reduces your toaster's lifetime. In the past, you might have had a toaster which lasted 10 years. Now, because of the bad software and maybe even mandated Wifi or Bluetooth connection, your toaster is garbage after 2 years because the vendor stopped pushing updates. Or maybe there were no updates at all. But because we might not always directly see it, or because the current hyper consumption and never-ending buying of new products, the crisis is not always that visible. We might be even okay that toaster stopped working after 2 years, and did not pay attention or knew why that happened. But maybe it was part of Mirai botnet https://www.cloudflare.com/learning/ddos/glossary/mirai-botnet/ https://www.cloudflare.com/learning/ddos/glossary/mirai-botn... Likely toaster was not part of that, as they use simpler chips, but who knows.
- bsoles 2y agoBut I wouldn't call a toaster running code an example of software crisis. Call it business crisis or crisis of capitalism/consumerism, but it is not software crisis. I agree wholeheartedly that an internet connected toaster is a very stupid idea, but our ability to build such a system shows, if anything, a triumph of software (and hardware), not a crisis. What is a crisis here is societal one; the fact that there is a demand, however artificially created, for such things. Software abstractions or layers of abstractions to be able to build such devices have nothing to do with this kind of crisis.
- nicce 2y ago> I agree wholeheartedly that an internet connected toaster is a very stupid idea, but our ability to build such a system shows, if anything, a triumph of software (and hardware), not a crisis We have managed to build systems with software that "triumph" for a very long time. Look no further than Voyager 1. A technical masterpiece which still works. But fundamentally, about the toaster; we see these things in toasters because there are so many abstractions and possibilities. It is easy to embed software for the toaster without having a legion of software developers from different fields. And it adds up and is the main issue of "unintended" usecases for toasters. Many from these cases are not depending from the developer. Developers do not even know about them or were not thinking about them because there were abstracted away. Overall system of the toaster can be so complex in these days, that no single person can understand it completely alone. But yes, the consumer part and that it is okay if toaster breaks, is indeed social problem. But likelihood of toasters breaking or doing something else than supposed to, could be originating or increasing from the software crisis.
- getpokedagain 2y agoThis is very close I think. In a way it is a business crisis, in that business directs software engineering not science or academia nor some physical constraint. A real estate developer would probably promise you a ten story building made of straw if you seemed willing to pay but a civil engineer will never go make it because they listen to the physics and ethical rules of the trade mostly. For some reason software engineers bend over and say yes sir when faced with a similar situation. Perhaps looking at Boeing the same is becoming true of other engineering specialties as well.
- vbezhenar 2y agoIs it really easy to enter the field nowadays? I feel that nowadays it's very hard to enter modern software development. So much knowledge is required.
- beryilma 2y agoYes, I would say it is still fairly easy to enter the software development field. It is worth remembering that software development is a very broad field ranging from changing size and color of buttons on a webpage (which is perfectly fine) to sending rockets to space. I don't know how true it is these days but people are/were able to find software jobs after a couple months of code camps.
- denton-scratch 2y ago> everything including your toaster is running software Doesn't that just support the author's claim that there's too much software? FTR, my Dualit toaster doesn't run software.
- pyth0 2y agoI don't see how, unless you start with the assumption that more software is inherently a bad thing.
- denton-scratch 2y agoI don't assume that; I simply observe that a toaster doesn't need software, that simple machines are more likely to be reliable than complex machines, and that the ability to run software makes a machine inherently more complex than (say) a clockwork timer. I have no opinion on how much is too much software. But perhaps if we are employing people to write software for toasters, then we have too many programmers.
- pyth0 2y agoThe existence of code in otherwise "dumb" toasters is due to it being cheaper than the analog alternative, simple as. I'm not sure why we're talking about all of these things as though they only exist to keep programmers employed.