Inexperience Generates Success

Contrary to the comments on InexperienceGeneratesFailure, there ARE situations where InexperienceGeneratesSuccess. Here are a some examples:

Elusive Bug: Many times, when I am really unable to find the cause of a bug, the best thing to do is bring in someone who has no prior experience with the code that I am trying to fix. Often, they immediately see the thing that I have been overlooking because of everything I know.

Customs Agent: According to a customs agent that I once met, the agents who find the most contraband are often new to the job. His theory about why it worked that way was that new customs agents didn't have enough experience to start looking for patterns so they just randomly checked luggage. It turns out that this is a very good strategy when looking for people who are trying to blend in. Don't ask me how this applies to programming though.


Fresh viewpoints often help bypass thinking "ruts". Another way to escape from ruts without having to first give up experience is to employ FuturePerfectThinking.


I certainly agree that the proposition InexperienceGeneratesSuccess sometimes holds. But there are a few possible confusions here.

Firstly, the inexperience described in Elusive Bug is of the particular system, not of software development generally. A worthwhile point is being made here, but strictly nothing to do with the InexperienceGeneratesFailure point made originally by Joshua.

Here we see the risk of multiple branch points. In creating this page I was completing a link in InexperienceGeneratesFailure (now sadly no more) with a couple of weak examples. I was hoping to flush out any strong examples which others may have. --JeffShelby

Secondly Customs Agent refers to non-software success. I believe it. I don't believe though that the effects of having a "newbie" (or more often lots of newbies) around in a software team have always been that good. The advent of XP as a new "brand" with genuinely different ideas though could make a big difference to that for a while - until seasoned XP experts with 10-15 years XP project experience become the vogue (I can see the resumes now!). PairProgramming especially has lots of good things to offer in skills transfer. But either way, much better skills transfer is badly needed in software, maybe a lot more than in customs.

As for ruts, well I have to agree the RutsRunDeep? in software. (Nice "going with the grain of analogy" there huh?) Having so many young programmers everywhere I have been over the last 20 years should have been a real help with that. So why do I see that HistoryRepeatsItself in software everywhere I seem to look? Except for XP, which came from people how old exactly? (I meant to say of course how experienced exactly?)

--RichardDrake

It's a fine line between being in the groove and being in a rut. -- BillBarnett

For Elusive Bugs, go take a walk. To understand how InexperienceGeneratesFailure, you might try observing junior programmers writing something non-trivial - like a Medical Billing system. I watched some junior programmers write a Medical Billing system. What an expensive, awful fiasco! --JoshuaKerievsky


In my previous life as a technology lead we had some rather hairy code to invent for a multimedia engine. Convention wisdom said it was impossible to do in the time frame we had. We hired a small group of great but inexperienced programmers, explained the basic architecture of clocks and interrupts that would drive the program.

They didn't know enough to believe it couldn't be done. They wrote some incredibly tight code, used the more experienced programmers to solve some of the algorithm needs.

In the end the code worked after less than 4 months and continued to evolve into an engine that did what we needed it to do.

-- AndrewNicholson


EditText of this page (last edited April 16, 2000) or FindPage with title or text search