Companies Are Developing More Apps With Fewer Developers (fortune.com)
Fortune reports that the "yawning gap in tech skills" has resulted in a surprising shift in supply and demand in the software industry. And in many companies now, a growing trend of developer jobs being given to non-developers can be seen. From the article: That's because a relatively new technology, known as low-code or no-code platforms, is now doing a big chunk of the work that high-priced human talent used to do. Low-code platforms are designed so that people with little or no coding or software engineering background -- known in the business as "citizen developers" -- can create apps, both for use in-house and for clients. Not surprisingly, the low-code platform industry, made up of about 40 small companies (so far), is growing like crazy. A recent Forrester Research report put its total revenues at about $1.7 billion in 2015, a figure that's projected to balloon to $15 billion in the next four years. Low-code-platform providers, notes Forrester, are typically seeing sales increases in excess of 50% a year.The report cites QuickBase, a company whose low-code platforms are used by half of the Fortune 500 companies, as an example. Its CEO Allison Mnookin says that almost any employee can now do most or all of the same work that developers used to do. Mnookin adds that there's a big advantage in this. "Opening an app's development to the non-techies who need the app removes misunderstandings between the IT department and other employees about what the end user needs."
Companies Are ______ With Fewer ______.
As more and more people do the job that previously was the exclusive domain of developers, the value of developers and their corresponding pay should drop.
.
For example, what I currently do in a LibreOffice spreadsheet used to require one or two developers to write the software to do the same thing.
Now I just open a spreadsheet, enter some numbers and do the analysis myself.
Does that include apps that simply involve invoking a browser and opening the website of the application in question? A tactic popular w/ Microsoft in Windows Phone/Mobile
Sharepoint and InfoPath. This has caused nothing but more problems for us.
Maybe it's because I don't live on the West Coast but I have yet to see or even hear about one of these platforms. Where I work, writing a SQL query flies over the heads of the majority of product managers and business analysts. QA requires a lot of hand-holding. I'm old enough to remember the days when the non-techies tried to write software platforms hacking VBA in Excel and Access and that turned out really well.
This is not a new promise. It's been made before and it seems this article is slanted towards one particular product the one I haven't heard of. I know people have been customizing CMS's with clever hacking to make them work for purposes they weren't intended like WordPress and Joomla and so forth but it's not anywhere near what it needs to be to meet real, ever increasing business needs. Heck, for all the progress that HTML5, CSS, Javascript/ECMAScript and all the MVC/MVVM tool stacks that sit on top of them, for most cutting edge companies, it still ain't good enough. They want the sun, the moon and the stars. If hard-core development tool stacks can't deliver it, these lo code/no code solutions sure as heck can't come close.
We'll make great pets
today's low-code shortcut is tomorrow's abandoned platform ... cold fusion ... delphi ... VB6 ... you name it, it's been abandoned ... placing bets on a fly by nite startup's platform is not a good idea ...
This'll work fine for very simple apps, ones that only require standardized functionality. But then, with an app like that, do you really need to develop a custom one for any reason other than branding/appearance? And it'll work for disposable apps, ones that do the current job but don't need to be maintained or enhanced down the road. That's been true forever, it's why spreadsheets and word processors had macro languages so secretaries and accountants could do simple operations and calculations without needing to have the programming team get involved. But the moment you start dealing with an app with complex functionality that has to be changed, enhanced and extended over time, that's when you'll discover that you need software engineers. It's the same reason anybody who can grab a hammer and saw can cobble together a sawhorse that'll work for one job, but you need someone who understands architecture and construction to build a house that's expected to last for decades.
“You don’t need to know how to code in order to use them, but you do need strong analytical skills,”
Um yep. Knowing how to read and write a programming language is the easy part. Having the analytical skills to achieve the task is why we get paid well.
"low-code platform" is just another buzzword unless there is a difference between "low-code platform" and SAP, OBI, Sharepoint, infopath, etc.
Our Sharepoint developer also codes in C#. Sharepoint is just a tool for him.
Just because you are not writing C or Java code does not mean your are not programming. Low-code/No-code is just new buzzwords for high level programming environments which have existed for 20+ years.
And yes, a not of problems can be fixed by non-devs in these kind of environment basically because these problems are not really that complex but there is an enormous problem trying to explain the problem from the "business" environment to the dev environment. These low-code/no-code environment simply provide a formal method of defining the problem. And as every dev knows, a formal definition of a problem is executable (i.e. a program).
No, we will not see "programming disappear". This same stuff has been predicted continuously for decades now. People skilled in the use of tools are many times more productive than those who are unskilled. As the tools themselves get more productive, the skilled users become more valuable. What I suspect we are seeing here is the temporary drop in the usefulness of software due to phones and tablets causing the unskilled to be able to produce "state of the art". This is a temporary phenomena that will end when software and computers become more useful again.
Again.. Next we will dig up the tapes of those CASE environment sources and try to integrate those into the fold.
VB, PHP(spit!), JavaScript... the commonality is the ease with which a neophyte can 'code' something, and in the process open some real nasty and easily-exploitable security holes with 'em (which reminds me... how does the TFA product avoid a lot of this?)
Quo usque tandem abutere, Nimbus, patientia nostra?
I work at a company that uses it. It takes a certain developer mindset to go beyond the rudimentary capabilities of QB. Then, the poor decisions and ad-hoc work-arounds become apparent, making upkeep and extensibility difficult, if not, impossible. Then, if you wanna do something more advanced, like copying data from one table to another OR automating tasks OR using external data, you run into the hard limits of the application (lotsa "quickbase doesn't support that" from QB support).
Then, you're either stuck with an application that doesn't do what you need OR an absolutely horrific migration to another platform OR a Frankensteining with 3rd party providers' solutions.
Looking at the links Google turns up for "low code". Marketing hype is all I'm seeing. This will be sold to CEOs the world over and it will fall short. Remember CASE? CORBA? 4GL? Visual Basic? Same smell.
If you post it, they will read.
Having people writing scripts to make their job easier can be great. Sometimes you don't need to actually know what you're doing to write software.
It only becomes a big problem when either a) it's exposed on the internet, where hacker bots hit it a thousand ties per day (headline: Acme Corp exposes 12 Million Credit Cards) or b) the data is actually important to your business. Example you write "rm $file", that's no problem until someone puts a * in a file name and it deletes everything in the folder.
If it's going to be on the internet, or deal with mission-critical data or resources, it's good to have it done by people who know what they're doing, who know what the common errors are and how to avoid them*.
* Not everyone with the word "developer" in their title is qualified. Does their education include systems development, or do they have a chemistry degree?
Search for Rapid Application Development from the 90's.
Powerbuilder is one such tool that started getting built in early 1990's. What is old is new again.
Multi user too.
Writing some macros that tie word and a spreadsheet together might work ok for the non developer that created it, but once multiple people start using it, the fact that the author didn't know anything about mutex or acid or race conditions will be a re-run of the mid to late 90s all over again.
I should use this sig to advertise my book ISBN-13 : 978-1501515132.
Back in the day, you had to move wires around to program and then someone had the bright idea of assembly. Then someone invented human readable code. And we've been programming like that for what? 60 years now? Programming hasn't changed much at all since then. We're basically writing code.
What nonsense.
I remember when "lines of code" was a widely-accepted measure of programmer productivity -- and the industry standard was single digit counts per programmer per day. That's less than ten lines per day per developer. And these were mostly programs for batch processing; some systems supported interactive use, where you'd type a command on a terminal, enter data in response to some prompts, and then see results. There was process-control stuff happening, too, but when a system executing thousands of instructions per second had to control a physical process, it wasn't very elaborate -- there wasn't time, never mind RAM, for much complexity. So, programmers thought really hard about each line that they wrote. (Are you old enough to have heard the term "desk checking"? Why waste valuable computer time trying to compile and run something, when it's got bugs that you should have caught with a few hours' review?)
By the standards of those days, most of today's code is profligate waste -- coddling the users, correcting their mistakes, presenting things in a way that's convenient to the user rather than the computer. But by the standards of those days, displaying streaming video or recognizing speech by comparing it against a multi-terabyte distributed archive of conversational snippets is bleeding magic.
And being able to invoke that power by calling a simple API? Oh, sure, that's exactly like duplicating your Quicksort card deck to add it into your current FORTRAN job.
No, we will not see "programming disappear". This same stuff has been predicted continuously for decades now. People skilled in the use of tools are many times more productive than those who are unskilled. As the tools themselves get more productive, the skilled users become more valuable. What I suspect we are seeing here is the temporary drop in the usefulness of software due to phones and tablets causing the unskilled to be able to produce "state of the art". This is a temporary phenomena that will end when software and computers become more useful again.
I don't think we will see programming disappear, but I think we will see the low hanging fruit moving away from professional developers and into a generic white collar worker. Think about the progression of clerical functions - years ago you had a pool of typists, because it was both a manual skill that most office workers did not have, and difficult enough that it was worthwhile to farm it out to specialists (though in this case the specialists were cheap). Then we had word processing come in, and initially it was done by clerical staff, but the bar was raised in terms of what constituted "professional looking" output. Then the software became easy enough, and the office workers sufficiently used to typing and using computers that word processing as a dedicated job function has moved into a publishing role.
Now we have a situation where everyone is expected to be able to use a word processor, and while anyone can type up a simple letter or paper, turning those same people loose on a multi-chapter book that is expected to use consistent styles and formatting rules is asking for trouble. Talk to any tech writer or publisher, and you will hear horror stories about documents in exactly the same way we talk about spaghetti code.
So that means we don't need any h1b's right?
_ _ _ Go for the eyes Boo! GO FOR THE EYES!
What? A disconnect between IT and the users.
That's what the two Bobs get for firing the requirements guy.
Of course in the old days, the SMEs just bit the bullet and changed the world anyways.
A Pirate and a Puritan look the same on a balance sheet.
The article appears to be just an ad for Quickbase, which is, as far as I can tell, some type of buzzword based database platform.
no skills coding, what could go wrong?
"“Almost any employee now can do most or all of the same work that developers used to do,” says Mnookin."
Yep, just like any employee can be trusted with the company's web site. Do you want your app to look like MySpace, because that's how you get an app that looks like MySpace.
When they came for the communists, I said "He's next door. Take him away. Goddam commies."
Instead of having data entry people transcribing a doctor's notes we can give the doc an EHR and let him/her enter the data directly.
Nobody cares if we replaced a fairly expensive resource with a very, very expensive resource.
automated so much that less developers are needed.
Wierd Al would like to have a word with you.
Socialism: a lie told by totalitarians and believed by fools.
I thought we need to teach EVERYONE how to code because..umm...something.
It's long been true that maintenance is a bigger cost than original coding and that doesn't appear to be changing. It's counter-intuitive, but true.
I've been asked to fix or change Excel-based "applications" built by non-techies, and they were a maintenance nightmare.
If it's a short-term project, that's fine. But in the longer run, roll-your-own-pasta for anything lasting will actually require more developers. Pay the piper now or triple later.
Table-ized A.I.
Let me guess: the author thinks readers would be pleased to hear that not even coders are immune to losing their high paying jobs so she comes up with a speculation about the future of software development based on minor blips on the tech landscape in very nichy areas, historical patterns be damned.
The trend is not entirely new. Microsoft has been building macros into Office many years ago to enable semi-technical people to better automate their work. With some success, but also some drawbacks such as some pretty shortsighted "software design" by people who never understood the theory of what they were doing.
Today, I still see the occasional job offer that calls for someone with VBA skills, but it has not wiped out software engineering. What I do see is that there is somewhat less demand for optimization, because often a half-assed program is "good enough" when running on modern hardware. That is something I find regrettable, but I can live with it.
C - the footgun of programming languages
For small-ish (non-enterprise) apps, the real problem with VB Classic was not really the language or IDE, but the deployment and DLL-Hell, especially if it used 3rd-party components. The installation and help-desk staff hated that aspect.
Table-ized A.I.
Choose 2
* More product
* Less overhead
* Better quality
Guess which one is losing out in many of these cases...
...but the price is not. They have no serious competitors as far as I can tell, the market is screaming for competition. If you need to build a network-accessible database driven application that runs in a browser, it's really, really slick.
I was involved with a project to build a type of customer database using QuckBase - it would track and follow a customer's project all the way to completion, and multiple people with different roles could interact with it in various ways. Imagine Filemaker Pro or MS Access on steroids and network enabled.
To earn our business, QBase reps basically built the bones of the program in realtime as we chatted on the phone and watched via webex, for free and gave us a month to play with it at no cost. After that it was around $300 per month, so out of range of individuals but fine for businesses that can justify it with revenue.
I think there is a huge future for this market that's waiting to be tapped further. Right now it's a bit of a monopoly.
Which is why i would eat 10 pizzas and buy 20 laptops, cars, houses, etc. if I only had the money.
Oh, wait... I wouldn't. I'm tired of that old chestnut of infinite wants, limited resources going unchallenged. The first is only true over time and the latter is generally true over a fixed period of time.
> fact that the author didn't know anything about mutex or acid or race conditions will be a re-run of the mid to late 90s
Some of the code I've dealt, it appears the author knew all about acid. And mushrooms. :)
Sure the first computers were 'simple' but they were only used on "simple" problems such as calculating artillery tables. The complexity we can handle at any point in computer history is bound by the physical limits of our hardware and our knowledge of maths. There is only one way for software to reduce complexity and that is the discovery of new maths. For instance an analytical solution to the Navier-Stokes equations would revolutionise computer modelling, in fact it would make it simple enough for a human to calculate it by hand.
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
I guess you, your siblings, and your cousins also share one car because your grandfather only had one. How about one house? How about the number of phone lines or TVs or PCs?
Maybe it isn't true for you but most of today's generation owns more cars, buys more than one car, and even more than one house compared to their forefathers. The number of TVs, PCs, cellphones, airline trips, etc have all increased per household. Demand has most certainly increased and more so than a static curve to population growth. In other countries, it's just different rungs on the same ladder. They eat more meat, have AC, color TVs, small cars, expensive rice, etc.
These demands are isolated. Another house being built because Larry wanted to move to something bigger means more food vending, gas buying, lumber, nails, sales guys, appliances, furniture, etc.
It doesn't have to be that the item gets cheaper to increase demand. We get bananas year around and almost any other fruit. We get different options in cars, produce, and fish from half a dozen countries. Most of the civilized world is barely a day's flight away. How many eat out options do you have within 10 miles? Thai, Chinese, Indian, Russian, or good old American?
Demand growth isn't infinite. Population growth has slowed and that has put a dent on demand growth. But it's still growing a lot. Let's not get tired of it before we even see the supposed edge of the world.
The dish washer, garage door openers, washer&dryer, lawn mowers, security systems, refrigerators, etc are all productivity increases in the home. People don't complain about them? Those things put entire industries out on the curb. It freed up labor resources that are reused for doing other things like entertainment, hobbies, socializing, or just plain sleeping. Why are we so hung up on this concept in other areas of life and society?
Productivity rises, quality rises, but now since the use of these tools is expected by default, the workers do not benefit, only the owners.
Eventually, "learn X to expand your ability to do Y", universally, results in no gain for the person considering making the effort.
That's when the system reaches truly broken status.
I'm calling you out on the "far higher quality standards" bluff. I've worked with big name, cheap labor shops, and it was far from high quality, but it was delivered quickly and cheaply. For proof of concept and quick market capture they're an excellent choice but you'll have to recreate your product later when the tech debt grinds your product to a halt and loses you customers due to service outages and inability to fulfill changing business requirements.
Think globally but act within local variable scope.
"[...] now doing a big chunk of the work that high-priced human talent used to do [...] people with little or no coding or software engineering background -- known in the business as "citizen developers" -- can create apps, both for use in-house and for clients."
And some people are wondering why general sw quality keeps getting lower. I have some popcorn set aside for the days when these citizen developers will "develop" with tools made by other citizen developers and we can all watch their house of cards rattle.
Here, a good source for getting goosebumps, some are genuinely proud of this feat, e.g.: "QuickBase prides itself in the extent to which business users can build applications all by themselves. "92% of QuickBase citizen developers have no coding background"" (http://www.forbes.com/sites/jasonbloomberg/2016/05/16/citizen-developers-low-code-is-now-enterprise-class/#4a654381ecfb)
I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
Actually, ColdFusion is still being sold, and has 2 or 3 open-source alternatives.
Its early selling point was easier web-page coding, and compared to what was available at the time, it was.
Then it became more known for making things simpler for HTML designers to integrate their markup templates with database data. And, it was and still is pretty good at that because you usually don't have to escape in and out of markup versus imperative code. In addition to the built-in CF tags, you can make custom tags for them also.
It's a tool that fits its niche pretty well.
Table-ized A.I.
Big fucking yawn, they trot this shit out every other year or so. These programs are severely limited in their functionality. Also I am not exactly worried about this impacting my job much, since I am in the space where I would be the one writing the fucking things. Anyone who believes you can hand over coding to someone who does not know how to code with a magical piece of software is an idiot. Someone mentioned further up that they can now do their own analysis using a spreadsheet program instead of asking IT. Well welcome to 2016, you are only a decade or so late to the spreadsheet party. Wait until your data exceeds the limits of your spreadsheet program and your PC craps bricks trying to process it, you'll be trotting off to IT. More than likely IT is who set up your worksheet in the first place, so that you can stop bugging them with inane requests for data for you to "analyze".
There are three kinds of falsehood: the first is a 'fib,' the second is a downright lie, and the third is statistics.
The entropy that builds up from clueless users tying their business processes into these low-code systems is staggering. I have a client that got setup with QuickBase years ago and has been using it to store data culled from their web site and generate reports based on it, sometimes with an interactive UI to sort and filter. Because nobody who created these QB "apps" has any technical training, including the mastermind who set it all up to begin with, these reports are horrendous monstrosities that over the years have built up into a pile of increasingly useless garbage. Instead of intelligently building an app with a sanely normalized data structure that can simply modify itself every year to report on the requested data set, the client has to create new apps every year, replicating last year's, to view the relevant data. The data structures look like they were cobbled together by, well, someone with no technical training. It's a big morass that their employees spend ridiculous amounts of time dealing with. If they had just hired a developer to build a simple web UI to view, filter, sort, and generate the occasional PDF, all tied into their web database, they could have saved tons of man hours and money.
But no. They were sold on "Build your own apps! You don't need to pay an expert! You're already all the expert you need!". Such bullshit. But then, I suppose it makes more work for those of us who are called in to build what should have been built in the first place, once the company can no longer function under the weight of empty promises.
"Molest me not with this pocket calculator stuff."
- Deep Thought
Low-hanging fruit has been going over the wall to non-developers for a long time. When I first got into the profession, creating a simple report from what we had instead of a database would take a few days of my valuable time. Nowadays, we have tools so non-developers can create simple reports, and I do more interesting things.
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
I wonder what the usage of Lazarus is.
Table-ized A.I.
http://qz.com/765902/ubi-would... will PREVENT https://en.m.wikipedia.org/wik...
Casteism