Live data from Hacker News

Hordes Of Novices

blog.8thlight.com

11–20 of 90 posts

Re: Hordes Of Novices

#11
I tend to view people who know the extreme basics of programming as tinkerers or "power users", not as miniature Fabrice Bellards.

I'd rather have a bunch of curious people who want to try their hand at some light automation than people who freak out when anything minor changes.

Re: Hordes Of Novices

#12
post #5

The overwhelming majority of bespoke software is a CRUD app in disguise (to a lesser or greater extent). You don't need to be an expert to develop things like that - a basic knowledge data structures, connecting to a database, and some UI and off you go. That isn't going to change. So I would argue that yes, we need the horde. We need more of the people at the "bottom" doing the boring stuff than we need at the top d…

I don't know about "overwhelming majority," but yes, there is a very large slice of software that is essentially CRUD.

In my recent experience, though, it's almost always attached to, part of, or feeding into or off of something else, whether that's a CMS, API's, satellite sites, or some sort of proprietary custom plumbing.

Many things can be done by novices, and the limited supply of experts means they can't do everything. But for many projects, that boring stuff at the bottom handles the data that's vital to everything else, and it's vital to be careful when using novices to work on the lifeblood of your business. Without careful management, you'd better hope they randomly fail to introduce any serious design flaws or security issues given only "basic knowledge data structures, connecting to a database, and some UI."

Re: Hordes Of Novices

#13
> Is our industry doing the equivalent of offering free rides to hopeful software developers, calling them pilots, and throwing them by the thousands into airplanes just to watch them crash and burn? The evidence is pretty compelling. There's a lot of crashing and burning out there. Is that because nobody is signing the log?

No, it's because some companies do a really bad job of interviewing and hiring developers. This could be for a few reasons:

1. Companies are so hungry to attract developers they make an offer to the first candidate that seems remotely competent, only to see him/her struggle when they get out of the bootcamp and into the trenches of day to day work.

2. Companies have clueless people interviewing candidates for technical positions, and just do a bad job evaluating them.

For all of those "novices" that these bootcamps and such produce, some will go on to fizzle out, but my guess is some of them are actually talented/hard working enough to stick with it and evolve into competent developers. At the end of the day, it's still the responsibility of the company doing the hiring to determine which is which.

The need for developers is only going to increase... so yes, we do need those hordes of novices, but with that need comes an increased responsibility to focus your hiring/recruiting efforts.

Re: Hordes Of Novices

#14

yes, Uncle Bob, we do need hordes of novices. Because in the days of yore only monks and priests knew how to read and write, and that was bad. Getting everyone to read and write is good. 90% of what they write will be crap, but that's better than not having them write at all. Obviously they're not going to be writing commercial or critical systems. Learning to code helps people deal with technology, but it doesn't ma…

> Opposing people learning things because what they might create with that knowledge is just wrong He doesn't oppose people learning things. > Obviously they're not going to be writing commercial or critical systems. No. That's exactly what he's talking about. The trend to hire more people rather than better people. FTA: "Do we really need to keep on recruiting and training cannon fodder to throw at software projects…

I had a big project failed once because at the beginning out rockstar programmer/ninja/free electron (and he was a genuine one) threw a temper tantrum and said - I am bored of working with Microchip Pics (don't worry if you are young and don't know what that is) I want to use something more powerful - so we switched vendors, the stack to keep him satisfied. It went downhill. Sometimes you need mediocre guy for a non demanding job.

A bored talented programmer can sink a project as good as incompetent one.

Re: Hordes Of Novices

#15
"Get off my lawn you damn kids!"

Today's novice is tomorrow's expert.

No matter how much of an expert you think you are, you are a novice to someone else.

If we go back and look at your code from X years ago (or even last week), are you going to be comfortable or are you going to squirm a little and want to make excuses for certain things?

Bad code making it into production and causing problems for users is not the fault of the novice developer, it's the fault of their team lead/manager. Who shouldn't be a novice. If they are then that's an organizational problem, and not one caused by the mere existence of novices.

Re: Hordes Of Novices

#16
If one doctor can transplant a heart in ten hours, can ten nurses transplant that heart in one hour? Can a hundred nursing assistants transplant that heart in six minutes? Can six hundred hospital receptionists transplant that heart in one minute?

All of the people involved have useful and important skills, but they are not appropriate or relevant for the operation in question. My only change here would have been to swap receptionists out for interns: The skills are still relevant, but the experience is not there and the expectation is still unreasonable.

No, development is not surgery (certainly not brain surgery, and usually not heart surgery). But it is often complex work that requires not just an understanding of what to do, but also how to do it, why to do it that way, what alternatives are available and how they might benefit the work in the future, how requirements tend to change, the difference between what clients/bosses say and what clients/bosses mean...

It's vital that we have new developers. But the point of having new developers is that they become experienced developers; a swarm of n00bs is not, in and of itself, valuable. Treating it as such is dangerous, as many, many rescue projects painfully illustrate.

Re: Hordes Of Novices

#17
There is a definite argument to made for putting in-place more rigorous standards for developer education. My wife is a nurse, and there are very strict standards for getting a nursing license and graduating with a BSN degree. After all, she deals with human lives, and mistakes could be deadly. I believe such systems help ensure consistent behavior, and I agree that such a thing might be useful in certain areas of the developer world.

However, we have to be careful, because a big part of software development involves inspiration and creative work. If people aren't interested and encouraged to pursue development as a hobby or career path, where will the masters of the future come from? Think of the amateur, but not so great, photographer hobbyist who grows up to become a legend in their field.

I also have to disagree with Uncle Bob on the use of the term "hordes" to describe "many people interested in a craft". The negative connotation is indicative of the kind of snobbery that people as the top of their field may be entitled to, but certainly doesn't win people over when trying to make a convincing argument. It smacks of somebody looking down from the Ivory Tower of Enlightenment and sneering at the ignorance of the perceived mobs below...

Re: Hordes Of Novices

#18

> Is our industry doing the equivalent of offering free rides to hopeful software developers, calling them pilots, and throwing them by the thousands into airplanes just to watch them crash and burn? The evidence is pretty compelling. There's a lot of crashing and burning out there. Is that because nobody is signing the log? No, it's because some companies do a really bad job of interviewing and hiring developers. Th…

No it's because the industry and schools do a bad job of training novice programmers.

Re: Hordes Of Novices

#19
While I enjoyed and partly agreed with Uncle Bob's equivalent of "Get off my lawn", it would be excellent if he also proposed something that resembled a solution to the problem. I struggled at my first dev job because school only taught me the basics, not modern full-stack agile software engineering. I worked with a team that had everything from testing to deployment polished and near perfect. However, some of them gave me a chance, and today, I suck a lot less at writing good, clean, tested code. Our industry will need to continue to do things like that if we hope to improve over time. Otherwise, history will just repeat itself.

Re: Hordes Of Novices

#20
Is our industry doing the equivalent of offering free rides to hopeful software developers, calling them pilots, and throwing them by the thousands into airplanes just to watch them crash and burn?

With some exceptions, it's less dangerous when a novice programmer writes ugly code than when a pilot crashes a plane.

So we shouldn't require as much caution around letting people program as we do in letting them fly an airplane.

Post reply on HN