Ask Slashdot: Everyone Building Software -- Is This the Future We Need?
An anonymous reader writes: I recently stumbled upon Apple's headline for version 2 of its Swift programming language: "Now everyone can build amazing apps." My question: is this what we really need? Tech giants (not just Apple, but Microsoft, Facebook, and more) are encouraging kids and adults to become developers, adding to an already-troubled IT landscape. While many software engineering positions are focused only on a business's internal concerns, many others can dramatically affect other people's lives. People write software for the cars we drive; our finances are in the hands of software, and even the medical industry is replete with new software these days. Poor code here can legitimately mess up somebody's life. Compare this to other high-influence professions: can you become surgeon just because you bought a state-of-art turbo laser knife? Of course not. Back to Swift: the app ecosystem is already chaotic, without solid quality control and responsibility from most developers. If you want simple to-do app, you'll get never-ending list of software artifacts that will drain your battery, eat memory, freeze the OS and disappoint you in every possible way. So, should we really be focusing on quantity, rather than quality?
Swift isn't going to make it so "anybody can write apps." That is something that's been tried for decades, with things like drag-and-drop programming. SQL was originally intended for non-programmers. It doesn't work, because the difficulty of programming isn't the syntax. The difficulty of programming is logic. You have to learn to think like a programmer, describe a sequence of steps, ask "what will happen in the user does.....X." You have to reasonably understand the if several things in a row are true, but the next one is false, then all of them are false (if anded together, but not if or'd together).
The logic of programming is why it's good for everyone to learn programming. If it helps people learn to think a little more formally, then it's worth it.
"First they came for the slanderers and i said nothing."
Think of the countless small ways in which knowing some code, or scripting has been useful over your life - sorting simple lists, renaming things in batch, formulas in a spreadsheet... etc. etc.
Even if most people will not be doing code professionally, it will help them do little things for themselves. It will also help them understand to some extent why software driven things behave the way they do, and even to make more informed choices as to software driven hardware they buy (and that is the future).
It's not like a flood of really bad programmers will get through most hiring barricades, already famously difficult to storm. They will go on to do things besides programming, where light programming can help them.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I think the question is whether everyone should be writing software AND then attempting to sell it to others via the app store. The answer to that, IMHO is no, as making software for others requires a level of professionalism and quality not everyone can reach.
But it would be nice if we could somehow rewind back to the 80s in which every computer came with a simple programming language so that if I wanted to throw together some code to do a simple task for my own benefit, I could do so quickly and easily.
(Note to Apple: Bring back HyperCard, please!)
With the widespread availability of cheap electric power tools, now everybody can build bridges and sky scrapers!
Back in the day, we called this concept the "Software Preisthood"
It wasn't complementary.
1) I am not threatened by "everyone" learning to program
2) don't buy a bunch of stupid apps, and,
3) Apparently, you're a programmer, so write your own apps. :)
I've fallen off your lawn, and I can't get up.