We will all code, but few will be professional software engineers: Disagree with Quartz

November 14, 2016 at 7:35 am 4 comments

I disagree with the claim below “In the future, everyone is going to be a software engineer, but only a few will learn how to code,” but we need a better definition of what it means to “code” and to “program” (as discussed with respect to recent ITICSE 2016 papers).  If you’re using tools like Hypercard (“low-code” platforms), isn’t that still programming?  It’s certainly more than the no loops, conditionals, or variables that’s often seen in elementary school students’ use of Scratch. Those tools are not software engineering tools. Just because you’re developing software doesn’t mean that you’re doing software engineering.

We need a range of tools from no-code to low-code to software engineering support. It’s an insult to those who carefully engineer software to say that anyone who assembles software is an engineer.

A new industry is emerging to serve the Morts of the world by designing and selling what are called no-code or low-code platforms. Companies like Caspio, QuickBase, Appian, and Mendix are creating visual interfaces that enable people to essentially snap together blocks of software, and bypass the actual lines of code underlying those blocks (skilled developers can also dive into the code). With basic training, a non-technical employee can rapidly assemble software tools that solve business problems ranging from simple database queries to applications lashing together multiple legacy enterprise applications.

Forrester reports the sector earned $1.7 billion in 2015 and is on track to bring in $15 billion by 2020 as the majority of large companies adopt “Citizen Development” policies similar to the bring-your-own-device rules. Employees will be empowered to choose tools, and even partially assemble software, to solve their own business problems without IT approval.

Source: In the future, everyone is going to be a software engineer, but only a few will learn how to code. — Quartz

Entry filed under: Uncategorized. Tags: , , .

The role of higher education in reducing inequity: Using tuition, drop-out rates, and opportunity hoarding OMS CS graduates a different kind of student: Work from Harvard Graduate School of Education

4 Comments Add your own

  • 1. Alfred Thompson (@alfredtwo)  |  November 14, 2016 at 8:08 am

    I think the article itself if better than the title. I wonder if the author wrote the title or if someone else did?

  • 2. David Young  |  November 14, 2016 at 9:37 pm

    If a financial analyst produces a low-code solution that works as well as the software engineer’s, only it is more intelligible and less expensive than the solution built in JavaScript or in C, then hasn’t the software engineer something to answer for?

    Maybe the financial analyst, with his successful app, has no legitimate claim to be an engineer. Then again, maybe the software engineer has no legit claim, either. An article by Ian Bogost in The Atlantic last year considered the question:


    • 3. gasstationwithoutpumps  |  November 15, 2016 at 10:21 am

      The software engineer is the one who designs and builds the “low-code” platform that allows the financial analyst to put together a simple solution. Making the platform robust, maintainable, and easy to use requires a lot of engineering. Using it, not so much.

  • 4. Guy Haas  |  November 15, 2016 at 11:33 am

    Just as Mark references Hypercard, most financial analysts became programmers with the introduction of spreadsheets. And use of spreadsheets is not limited to financial analysts; my nephew puts together complex spreadsheets to support his work as a mechanical engineer. Bonnie Nardi covers spreadsheets as a programming platform in her book A Small Matter of Programming (1993).

    Another platform my nephew uses daily is Ansys. The way he describes his interaction in it is both through what sounds to me like a blocks-based system and a lower-level (?macro?) authoring facility. I’m going to have to get him to demo it to me.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,184 other subscribers


Recent Posts

Blog Stats

  • 2,049,108 hits
November 2016

CS Teaching Tips

%d bloggers like this: