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?
to design complicated software, CLICK HERE
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 don't really get the point of this post. Kids to make Facebook apps aren't going to be immediately allowed to start writing car OS's, it's a way of encouraging kids to try programming and some of them will love it and become programmers!
I started off typing out code from magazines, that got me in to programming and now look at me! I'm producing code that... ahh, OK, I just got the point of this post...
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!)
yeah — learning code should be hard and arcane and locked up in air conditioned rooms full of punched card readers, and the only way you're going to get to programme a computer is if you solder a CPU to a motherboard and your name is WOZ — like its such a horrible thing for a good elegant language to exist that finally replaces god-awful basic with line numbers, and is able to compile a mach kernal and the whole OS using the same language. — who wants a good easy deep language (or be stuck with java and objectiveC for the next 20 years!?) — the nerve of those folks, making good tools like this available for free.
we've been in a desert for so long, and now you grow up with good compilers and plenty of RAM — and i just dont get it — why the author is complaining!?!?
you can be handed good tools and still not know how to draw — but you may be drawn into the art and craft and learn and get better.
by the same logic — should we ban typewriters!?!? — because millions of people might now be enabled to write crappy literature!?
please dear author of this post — wtf!?
If a head and a book come into collision and the resulting sound is hollow,
the fault need not necessarily be that of the book! (Lichtenberg)
These 'zOMG, everyone should STEM up and become an app entrepreneur!!!' stories aren't really about the desirability of everyone having a career in software development. They are more a reflection of the fact that plucky optimists looking for what kids should do to be successful when they grow up are...not exactly...swimming in options. Yes, they are also letting the fascination with shiny trendy things distort their perception of the options, hence the fascination with who will make the next Social Twitfriend app, rather than who will write unbelievably dull line of business stuff; but in broader strokes they aren't pushing this because it's a good idea, they are pushing it because it's an idea, and they don't have another one.
The pronouncement that 'software is eating the world' may have been a bit hyperbolic; but it sure isn't doing the life chances of people without advanced qualifications any favors. "Everyone writing apps" sounds slightly better than "Everyone selling each other securitized bullshit", so it gets more face time.
I run a P4 3.8GHz single core system as my main desktop, even though I do development with it. Switching to a newer Core i5 system will make it run 10 times as fast, but as the runtime on my huge (tuned) code base is under 5 minutes already, it really won't save me *that* much time compared to *editing* the code. It will save on build time, which is a boon to me, but even that savings is only due to the nature of my build process -- I do full instead of incremental builds.
I do plan on buying a new machine in a few months when I've saved the money, but my main point is that the hardware we use has been "good enough" for a good decade. It is the crappy software the people shovel out that drives hardware upgrades nowadays, not the actual need for faster hardware.
So it is to the hardware manufacturer's benefit that as much software as possible be absolutely incompetently written crap so that people will buy the latest shiny-shiny because their old one is "too slow."
I do not fail; I succeed at finding out what does not work.
As far as I can tell from the summary, it's not about people learning code. Totally it would make the world a better place if everyone who uses a computer regularly could at least write a simple shell script. (Impractical to spend the time to learn or just plain out of reach for a lot of folks, but whatever, it's a dream.) Instead, the objection looks like it's about lowering the barrier to make marketable things for an app store or whatever.
"With this toolkit, anyone can make furniture and sell it!" Learning carpentry is good, opening up the market is good, but if you're going to distribute to the wider world, maybe you should know enough about engineering principles to build a chair that won't collapse after a couple months.
A car analogy would just be gratuitous.
This is really just Apple, Microsoft et al trying to get cheap programmers. Not everyone can code the Linux kernel, but anyone without a learning disability can be a rank and file coder banging out data driven apps. Right now Apple has to pay $100k+ for some of those guys. The H1-B program helps, but it's never enough, is it? How 'bout $50k? $20? $15? How low can you go. All you need is enough food and drink to keep 'em going long enough. And so long as they get to look down on all those "non-Coders" (sorta like you're doing right now...) they'll be a-ok with this.
Screw that. Let's get back to Unions, worker solidarity and high minimum wages.
Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/
With the widespread availability of cheap electric power tools, now everybody can build bridges and sky scrapers!
And before SQL, there was COBOL (COmmon Business Oriented Language), which was meant for regular people to program computers instead of requiring programmers writing in assembler ...
2bits.com, Inc: Drupal, WordPress, and LAMP performance tuning.