DEV Community

Richard Wood
Richard Wood

Posted on

The Future of Programming - Rejected!

Much admired software guru "Uncle" Bob Martin wants to take away all our fun and make us into responsible "disciplined" programmers.

I watched his talk The Future of Programming recently. His beef is that, if we carry on as we are, the authorities will regulate us. So we need to regulate ourselves, make software programming a profession, create and enforce standards, etc etc.

Coming from the 70s dark ages where perhaps most projects were for military, space exploration, or some big industry project you can speculate why he may think this way.

In essense coding requires mathematical nous, and a high level of discipline that older programmers had because they became programmers later in life. Now there are lots of youngsters who don't have the discipline yet and what we do can kill people.

Lol what low percentage of us actually work on software that could end up killing someone. FFS.

Of course there are airplane systems, factory controls, social media tools that encourage suicides and terrorism, etc etc.

However, most of us work in website development helping businesses look good and be more efficient. Even a fintech solution shuffling large amounts of money around needs to be kept in perspective. There are critical parts to the code where errors could make people bankcrupt and there are soft parts that are just about winning and keeping customers with a great UI.

On the other hand a modern take on coding is that it is like writing and should be taught as such in primary school. Some people literally think anyone can do it and everyone should be able to. The bootcamp I went through - New Zealand's Dev Academy - pretty much had this attitude. In retrospect I think they overstate it.

So we have two extremes and the problem is not that we all need to be regulated. Would you force a poet to use a particular style? Does every novel have to have 3 dramatic stages? No. Should an aircraft manual be structured, detailed and constantly updated? Yes.

The issue is that some software development needs more rigor and oversight than others. Where there is development of critical systems for likes of spacecraft and airlines then bring on the regulation. Even if it means people there have to program in last decades' languages when a modern language would be better. There are plenty of people who like the old languages and have the experience to make that code bulletproof.

Segregate that lot and leave the rest of us in peace. We are having fun creatively developing frameworks, languages and solutions at dramatic pace.

There's this idea that young developers are reinventing the wheel all the time because they dont understand enough yet. Is this a case of aging developers who may want to maintain their position in a fantasy heirachy. News flash - very few people care, they are having a ball.

Young people are experimenting, having fun, finding multitudes of ways to express themselves and solve problems with code. The best learning happens through play!

Ok. Let's face it, the amount of effort put into JS in recent years was stupid and unproductive. We ended up with the dueling nightmares of React and Angular. Node was like the warm up performance. We also got a crazy amount of other backend language options. It's all driven a hugely inefficent industy in learning and recruitment.

But for all that, this creative surge got people excited, interested and in my view it's all very healthy. The ease with which people could and can pump out libraries, frameworks and languages has democratised language development.

The lead has been well and truely wrested from the cohort who kicked off this industry so many years ago. Yes they should be respected for it, despite writing huge boring books about subjects such has how to keep your code clean and overcome the defiencies of OO. :)

Out of an apparently ridiculous situation will come better things and like many I'm putting a lot of faith in functional programming. Go on, check out Elm and Elixir if you haven't already. There is huge opportunty for evolution and revolution. Enough to keep young programmers excited for decades to come, and with a lot of the discipline built in!

Otherwise, the populace don't need nostalga buffs telling us what to do, warning that the sky is falling, and taking away our fun.

Top comments (41)

Collapse
 
codemouse92 profile image
Jason C. McDonald

I agree wholeheartedly! As Donald Knuth would be pointing out, programming is an art, not a science.

Our entire history is built on the shenanigans of the MIT AI Lab, hacker culture, and a general attitude of playful experimentation. That is what we are.

(Not that I ever take Uncle Bob too seriously to begin with; this just further reinforces that stance.)

Collapse
 
stereobooster profile image
stereobooster

I believe that it is much harder to answer the question "what is art", then the question "what is programming" (I mean in another way than Knuth said it). But I'm not gonna argue about that

Collapse
 
lucsan profile image
lucsan

Art is easily defined. Art is anything put in a frame which says, this frame contains art. For example, an art gallery is just such a frame. I highly recommend 'The Square' for reference:-en.wikipedia.org/wiki/The_Square_(...

Thread Thread
 
stereobooster profile image
stereobooster

I like the definition by Scott McCloud. Art is anything you do beyond surviving e.g. if you do something which is not required for your surviving this is art. ¯\_(ツ)_/¯

Thread Thread
 
codemouse92 profile image
Jason C. McDonald • Edited

And in all irony, we humans have survived without computers for centuries. So, by that definition, art.

(I'm being pretty solidly tongue-in-cheek now; I know there are computers that are needed for life-critical operations, and anyway, that was deliberately false deductive reasoning on my part just now.)

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

I believe that it is much harder to answer the question "what is art"...

Well said, actually.

I think the overall point is pretty simple: programming is entirely too wibbly-wobbly to be confined to a science. Too nebulous and resistant to solid quantification. There's science in it, like there's science in all art, but "science" doesn't quite define the whole thing.

Or maybe the problem is that we assume science is better defined than it is?

I do love a paradox.

Collapse
 
phlash profile image
Phil Ashby

IMO we are still discovering areas where regulation might be necessary to protect us from ourselves (or at least snake oil merchants) with software.

The physical world has been here before, and we have many many regulations about the things we make, obvious stuff like: building regulations for houses; safety tests for motor vehicles; seat belts; wiring regulations; etc. etc.

Almost all of these regulations have been created in the past 150 years, as we moved from trusted artisan craftspeople (eg: 'real' architects who designed/built magnificent cathedrals) to mass market, low cost production (eg: local builders who put up temporary housing in the bazaar), and all have been driven by failure, sometimes very big failures, which are still happening today (eg: Grenfell Tower), and we are still adjusting the rules.

Software is already following this pattern, the failures are accumulating in different fields, eg: direct fatalities from Boeing 737 Max deaths, Uber self-driving vehicle killing a pedestrian, Therac 25 medical overdoses; indirect fatalities from social media bullying, ransomware shutdowns of hospitals, digital currency crime, high speed trading making/breaking firms and the people in them (there are regular trader suicides) and the rise of automation pushing people to destruction (recent gunman in Texas). Expect regulation to follow, albeit slowly because the law is an ass (donkey! I'm English).

All that doom & gloom said, I wouldn't expect the fun to reduce, nobody stops people designing, building & indeed trying things themselves, unless it becomes a threat to life or limb (sorry Timmy, you can't pack explosives in your bedroom, and no you shouldn't be releasing malware either!), which is typically already covered by existing regulation :)

Collapse
 
cullophid profile image
Andreas Møller

Uncle Bob stopped being relevant many years ago.

Collapse
 
leob profile image
leob

Entertaining read ... I also think Uncle Bob's concerns are overblown and don't apply to 95% of software dev. How many of us are automating space rockets or nuclear plants, not that many.

Collapse
 
combinatorylogic profile image
combinatorylogic

Nobody would let uncle bob and his unhinged fanboys anywhere close to automating nuclear plants or space rockets.

Have a look at, say, MISRA-C, it is very much the opposite of all the crap uncle bob is preaching.

He's nothing but a fraud, preying on gullible untrained minds.

Collapse
 
leob profile image
leob • Edited

Thanks for making me chuckle, don't know if your statements are true but for sure they're entertaining :-)

Anyway I agree that we shouldn't take "our" Uncle too serious, reading his stuff is a waste of time that's spent better doing more productive things.

Collapse
 
lucsan profile image
lucsan

Wikipedia anyone?

"Some research results question the effectiveness of MISRA.

In a paper that compares earlier work on MISRA C:1998 with MISRA C:2004, Les Hatton comes to the conclusion that:[24]

In view of the apparent widening influence of the MISRA C standard, this paper attempts to assess whether important deficiencies in the original standard have been addressed satisfactorily. Unfortunately, they have not and the important real to false positive ratio is not much better in MISRA C 2004 than it was in MISRA C 1998 and it is unacceptably low in both."

en.wikipedia.org/wiki/MISRA_C

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

I had no idea he was so controversial, I liked watching his seminars and have to respect my elders. I am a bit shocked by the attack going on above this comment.

Collapse
 
rwoodnz profile image
Richard Wood

I wasn't aware of it either. Now reading about Type Wars blog it's quite extraordinary. We need to keep perspective and humour.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.