Slashdot Mirror


APIs, Not Apps: What the Future Will Be Like When Everyone Can Code

An anonymous reader writes: There's been a huge push over the last few years to make programming part of the core academic curriculum. Hype or not, software developer Al Sweigart takes a shot at predicting what this will be in a future where some degree of coding skill is commonplace and he has an interesting take on it: "More programmers doesn't just mean more apps in app stores or clones of existing websites. Universal coding literacy doesn't increase the supply of web services so much as increase the sophistication in how web services are used. Programming—by which I mean being able to direct a computer to access data, organize it, and then make decisions based on it— will open up not only a popular ability to make more of online services, but also to demand more.

Almost every major website has an Application Program Interface (API), a formal specification for software to retrieve data and make requests similar to human-directed browsers. ... The vast majority of users don't use these APIs—or even know what an API is—because programming is something that they've left to the professionals. But when coding becomes universal, so will the expectation that websites become accessible to more than just browsers."

14 of 255 comments (clear)

  1. "When everyone can code . . . " by PolygamousRanchKid+ · · Score: 5, Insightful

    . . . everyone will just think that they can code.

    Hey, I have a Black & Decker cordless drill! And a can of Spackle . . . I guess that makes me a dentist!

    --
    Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    1. Re:"When everyone can code . . . " by Krishnoid · · Score: 3, Funny

      Sure, but it's better if you have some practical experience first.

    2. Re:"When everyone can code . . . " by Dutch+Gun · · Score: 5, Insightful

      The trend is actually reversing in some ways. Many kids are no longer interested in tinkering with PCs - which used to be a near requirement just to get them to work. They just see them as appliances now, about as interesting or exciting as their refrigerator, except for what it can DO for them. And it's often easier and more convenient for them to simply use their iPad.

      So, no, I just don't see a world in which everyone is a programmer. There will certainly be a lot MORE programmers than ever, but it will still be viewed as something of a black art by the rest of the population. It's no different than an auto mechanic in that regard. The average person nowadays opens the hood of their cars and their eyes glaze over. They have no idea how to fix anything in there, and they don't want to know. There are people who do that for a living, and it's far more efficient to simply pay someone else to fix it.

      Seriously, can you imagine an average person wanting to program something for themselves to scratch some itch, or do you think they'll just find a $5 app to take care of it for them? The second scenario sounds a hell of a lot more likely to me.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    3. Re:"When everyone can code . . . " by hawguy · · Score: 5, Insightful

      . . . everyone will just think that they can code.

      Hey, I have a Black & Decker cordless drill! And a can of Spackle . . . I guess that makes me a dentist!

      I don't understand the big push to get everyone to code -- not everyone *wants* to code, nor should they have to. Not everyone knows how to grow their own food, fix their own car, build their own house, and they don't need to - there are specialists for all of those that are better trained and more skilled at it and will do a much better job. Some people may grow a small garden or tinker with cars as a hobby, but few people are capable of effectively growing food for their family or overhauling an engine. Just some people may enjoy creating small (or even large) software projects for fun, but not everyone wants to.

    4. Re:"When everyone can code . . . " by Junta · · Score: 5, Interesting

      Exactly, *everyone* being able to code flies in the face of pretty much every other industry.

      Decades ago, everyone knew how to work on cars. In part because cars were more straightforward, but *mostly* because cars were so unreliable, you pretty much had to know how to work on it to be able to own one without going nuts. Nowadays a typical car maintenance schedule has a a recommended oil change every 8,000 miles or so and otherwise very little maintenance that hits a *typical* car. Tires and brakes wear out over a long period of time, but generally there's plenty of warning. A car suddenly not starting or general misbehavior is no longer that commonplace, so most people just leave it to a mechanic. Even things as dead simple as changing oil or even the air filter is perceived as a black art by most folks.

      Same for computing. If you had a system in the 70s or 80s, you essentially had to know how to program to be productive. As the software ecosystem has matured with canned applications targeting the use case of more and more and more usual situations, people just don't need to know that stuff anymore. As a portion of the computing population, programmers are less represented now than they were in the past. To imagine a reversal of that trend is silly.

      Some view programming as a sort of 'literacy', but that's more of the misnomer of programming as 'languages'. It's really not a form of literacy at all.

      --
      XML is like violence. If it doesn't solve the problem, use more.
    5. Re:"When everyone can code . . . " by mjwx · · Score: 3, Insightful

      The trend is actually reversing in some ways. Many kids are no longer interested in tinkering with PCs - which used to be a near requirement just to get them to work. They just see them as appliances now, about as interesting or exciting as their refrigerator, except for what it can DO for them. And it's often easier and more convenient for them to simply use their iPad.

      This.

      Computers are seen as appliances these days. In the future there will be fewer computer users who can program, not more.

      The same happened with everything we consider appliances now from refrigerators to cars. Not so long ago, being able to fix a washing machine or perform rudimentary maintenance on a car was almost mandatory for owning one, now these skills are rapidly disappearing as people need to call the AA (roadside assistance) to change a tyre.

      --
      Calling someone a "hater" only means you can not rationally rebut their argument.
    6. Re:"When everyone can code . . . " by Dutch+Gun · · Score: 5, Interesting

      In part because cars were more straightforward

      I grew up with a Honda Civic and an old Ford van in my family. As a youngster, whenever I looked under the hood, I marveled that people used to be able to work on cars themselves. I eventually got a chance to peek under the hood of some older car from the 60's (I forget the make/model), and I finally understood. Wow, cars engines were a LOT simpler back then, and what's more, the engine compartment wasn't nearly so cluttered. There was actually enough room to get in and work on things, and you could clearly see all the critical components of the engine and figure out how they worked for the most part.

      Early computers were a bit like this as well. Think about how simple and minimalist a command-line interface (when that's ALL you had) was compared to the layers and layers of abstraction you have in the OS today. There's no doubt both the hardware and software is vastly more powerful today, but I'd imagine it's actually quite a bit harder for a student today to get a real grasp on what the computer is actually doing at a fundamental level. There's simply a hell of a lot more to learn, so programmers are necessarily becoming specialists.

      I don't see this as a bad thing, because it simply means computers are reaching an appropriate level of maturity as devices intended for use by lay-persons, rather than exclusively by and for specialists. We "specialists" occasionally grumble about attempts to "dumb down" computers, but by and large, I think it's a good thing that computing is now ubiquitous, as it's added a tremendous amount of convenience to everyone's lives. And besides, the broader that market is, the more opportunity we have to earn a living writing software for the benefit of the masses.

      --
      Irony: Agile development has too much intertia to be abandoned now.
  2. Where have I heard this before? by Frnknstn · · Score: 5, Insightful

    So with this API stuff, what you are proposing is that all systems should be divided up into functional blocks, where every block has a single logical purpose, and that savvy users are able to chain these functions together however they see fit to suit their purposes?

    Where have I heard this idea before? Oh yeah... it's called The Unix Philosophy.

    --
    If it's in you sig, it's in your post.
    1. Re:Where have I heard this before? by CRCulver · · Score: 4, Insightful

      Where have I heard this idea before? Oh yeah... it's called The Unix Philosophy.

      Indeed. I've been using Linux since the turn of the millennium, but in the last couple of years I've been trying to gain a more proficient command of Unix standard utils and piping commands with tutorials like O'Reilly's Classic Shell Scripting . I feel like a computing god, and friends and relatives are baffled at how I can so quickly solve computing needs that, they believed, would have to take minutes or hours of laborious pointing and clicking.

      And that's why I find the premise of this article so odd. The average public does not seem to me on the cusp of a programming revolution. I might as well link here to Philip Guo's essay The Two Cultures of Computing, a.k.a. "How Ya Gonna Get 'Em Down on UNIX After They've Seen Spotify?". The interfaces ordinary people use so hide hackability that they generally forget it even exists.* Plus, with people in the developing world starting to do more and more of their computing on their phone, a device without a real keyboard, they are hardly able to do all the typing that coding requires.

      (Perversely, this might be something that millions of people should be thankful for: that ignorance is why they still have jobs. So much time-consuming work could be done in a much shorter time were the Unix philosophy applied. If scripting were something that managers keen on every possible costsaving measure were strongly aware of, even more jobs would be automated away.)

  3. Basic understanding doesn't equate to daily use by ravenscar · · Score: 4, Insightful

    The fact that a primary education provides a basic understanding of a thing doesn't mean that your're suddenly proficient to the point that you use it, in depth, in your daily life. Even if you could, it doesn't mean you'd want to.

    Maybe I'm wrong.
    People get a basic understanding of Biology so they don't need doctors.
    People get a basic understanding of Chemistry so they just purchase elements and make their own chemical compounds (who buys soap when you can make it?).
    People (might) get a basic understanding of music so they simply put on their own performances.
    Right?

  4. Re:No. by alexhs · · Score: 3, Insightful

    you won't have ads. You'll just pay directly for the services you want to access.

    I thought that if American cable TV ever taught us anything, it is that you will end up paying for the service and have ads.

    --
    I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
  5. APIs and business models by Anonymous Coward · · Score: 3, Insightful

    Website and services have been moving *away* from giving away API access for free. Twitter doesn't want third-party devs to write Twitter clients; they want to control the experience end-to-end. There's a few reasons off the top of my head:

    • Companies can break private APIs at any time; public APIs are expected to remain stable and maintained
    • Companies that rely on advertising want to be able to insert ads, or prevent clients from stripping out ads (e.g. promoted tweets)
    • Companies don't want to dilute the value of their service. It'd be cool if I could build my own traffic alert system using the same data as Google Now, even if I have to pay for it, but Google would rather have you stick solely to Google devices, apps, and websites

    In short, companies like Apple and Google and others would frequently rather build their own apps rather than allow third parties to "mash up" or build innovative new apps using their services and data (which in many cases is really the user's data).

  6. Re:Maintainability is THE Bottleneck by Darinbob · · Score: 3, Funny

    We had the problem back when Visual Basic came out, where every non-coding manager learned that coding was simple and that all the programmers were sandbagging and overpaid.

  7. Oh for christ's sake by JustAnotherOldGuy · · Score: 5, Interesting

    "What the Future Will Be Like When Everyone Can Code"

    This is NEVER going to happen. Stop trying to make it happen. It doesn't NEED to happen. FFS, not everyone needs to know how to "code".

    Replace the word "Code" in the title with nearly any activity and you'll immediately see how fucking stupid it is. For example:

    What the Future Will Be Like When Everyone Can Wire A House
    What the Future Will Be Like When Everyone Can Ride A Unicycle
    What the Future Will Be Like When Everyone Can Crochet
    What the Future Will Be Like When Everyone Can Mow The Lawn
    What the Future Will Be Like When Everyone Can Adjust A Carburetor
    What the Future Will Be Like When Everyone Can Solder
    What the Future Will Be Like When Everyone Can Read An X-Ray

    Enough already. Please stop with this delusion that everyone needs to code or even wants to.

    --
    Just cruising through this digital world at 33 1/3 rpm...