We will all code, but few will be professional software engineers: Disagree with Quartz
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.