Slashdot Mirror


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?

15 of 365 comments (clear)

  1. Swift by phantomfive · · Score: 5, Insightful

    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."
    1. Re:Swift by JazzXP · · Score: 4, Insightful

      I was about to write exactly this. Syntax is easily learnt, the mindset of HOW to program is the hard bit.

    2. Re:Swift by Dutch+Gun · · Score: 4, Insightful

      Agreed. Swift makes it easier to program, but the notion that "anyone" can write apps is definitely a laugh. There are a lot of programmers who don't understand that some people have a really hard time with the core concepts and skills involved in creating software. It reminds me of math teachers who don't seem to understand that some people have a fairly difficult time with advanced mathematical subjects. People have different areas of competence, and not all are suited to be programmers. It's not just logic... you need to do some creative problem solving in formulating that logic, and you need to keep a LOT of complex things in your head all at the same time to get them to all mesh together at the end.

      Still, I have no problems with the efforts to make programming easier. Anything that helps will not only make it easier for novices, but will also aid professional programmers. If you don't have to worry about the fiddly bits of the language (for instance, low-level memory management in C), then your attention can be directed to more important parts of your task. There's a reason higher-level languages are considered to be more productive for programmers.

      I think some programmers get a bit defensive at the idea of novices stumbling into our professional domain. I honestly don't see it as a problem. We're nowhere near that magical "anyone can program" threshold, even with the "friendliest" languages people have tried to invent.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    3. Re:Swift by Darinbob · · Score: 5, Insightful

      Any fool can write buggy programs, but it takes a Senior Solutions Architect to really fuck things up.

    4. Re:Swift by Dutch+Gun · · Score: 3, Insightful

      I'm presuming there are no second graders here. Don't overthink it... it was just an example. Calculus, differential equations, etc. Even basic algebra is quite difficult for some. For others, it's logical, intuitive, and even beautiful. Math instructors would obviously tend to be of the latter group, and as such, might have trouble empathizing with students who "just don't get it".

      Similarly, I've seen a lot of programmers who are convinced that *anyone* could easily learn to program, because *they* happen to find it easy.

      I'm just not convinced that's the case. Not everyone finds the same things intuitive.

      --
      Irony: Agile development has too much intertia to be abandoned now.
  2. Why is this even a story? by Puls4r · · Score: 2, Insightful

    I'm struggling to find the point in this story. Are you really asking if anyone who wants to shouldn't be able to learn to code?

    And it took you half a page of text to ask the question? A huge number of the 'advances' in technology have been made by people working out of their garage. People who would never have been allowed to program given this ridiculous elitist attitude.

    Oh. Right. I forgot to check who posted the story.

    1. Re:Why is this even a story? by Sowelu · · Score: 3, Insightful

      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.

  3. Yes it is what we need by SuperKendall · · Score: 4, Insightful

    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
  4. Let me rephrase that quesion by marciot · · Score: 5, Insightful

    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!)

  5. electric power tools by NostalgiaForInfinity · · Score: 4, Insightful

    With the widespread availability of cheap electric power tools, now everybody can build bridges and sky scrapers!

  6. Re:Um... you're not nearly cynical enough by jcr · · Score: 1, Insightful

    Let's get back to Unions, worker solidarity and high minimum wages.

    Fuck you. I don't need gangsters taking another slice of my paycheck.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
  7. Re:use this one neat trick by fyngyrz · · Score: 4, Insightful

    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.
  8. COBOL too ... by kbahey · · Score: 3, Insightful

    SQL was originally intended for non-programmers.

    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 ...

  9. Re:Um... you're not nearly cynical enough by Bing+Tsher+E · · Score: 3, Insightful

    That Union Steward isn't one of my coworkers. He works for the International Union. He is part of the mechanism to siphon off my union dues to pay for the politicians the International can afford to buy and/or the ones that the Union Bosses like the most for whatever reason they choose.

  10. Re:use this one neat trick by thesandtiger · · Score: 3, Insightful

    Pretty much exactly that.

    In my experience, people learning a little bit about programming tend to also learn to respect the fact that there's a ton of stuff they don't know. Yeah, I've run into some who think a single run through of some "Learn X in 24 Hours" book makes them a developer, but they're the minority.

    What's really valuable about "everyone" being exposed to programming is that it helps them learn to think about problem solving in a usually different way. Where I work, we had our entire product management team go through a week long programming bootcamp and it's been AMAZING in improving the quality of the specs they write. They aren't under the impression that they're developers but they definitely have a better appreciation for what we do.

    And, we developers went through a product bootcamp as well so that we had a better understanding of what they do and more insight into what is driving some of the things they ask for.

    More knowledge and understanding is very rarely a bad thing.

    --
    Since I can't tell them apart, I treat all ACs as the same person.