5 stages of programmer incompetence _ yield thought
DESCRIPTION
dfsfTRANSCRIPT
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 1/40
yieldthought
itsnotashardasyouthink
5StagesofProgrammerIncompetence
with169comments
EverynowandagainIseeglimpsesofmyselfinyoungerprogrammersastheystrugglewiththesameconceptsIdid,fallintothesamementaltrapsandgenerallymakesimilarmistakes.Writingthe4wrongwayspostmademewonderhowcommonthesephasesreallyareandwhetherwecouldcategorizethem.
Youtoo?Wellwondernolonger,forIhavecompletedthisherculeantask!Ivefoundmyselfineachofthesetrapsatleastoncesomeofthemseveraltimesandhaveseentheminotherstoo.Aretheremoreoutthere?
TheEnthusiasticNewbie
Thenewbieisfullofpassionandexcitementforheroneandonlylanguage,whichisundoubtedlyVB,PHPoractionscript.Havingfinallygottogripswiththesyntaxofsaidlanguageshefeelsshescompletelymastereditinallitsforms.Thenewbiewritesastonishinglyquickly,buteverythingendsupinonebigfilefullofglobalvariables.Thisisaveryproductivestage,iflittlewormgamesandrandomutilities/replacementshellsarewhatyouwantproduced.
Distinguishingcodefeatures:Eachprogramisexactlyonefile,containingahundredglobalvariables,noneofwhichhasmorethanfourlettersinthename.Mistakenbelief:Programmingsprettyeasy,really.Mostendearingquality:HerlittleshiverofexcitementeverytimesheopensherIDEandgazesatablankproject,fullofpotential.Reads:Fireflyfanfics.Mostlikelytosay:ComeandlookatthiscoolflashgameIjustfinished!
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 2/40
TheBuddingGenius
Havingprogrammedforafewyearsandlearntasecondlanguage,thebuddinggeniusisfirmlyconvincedthatheistheMessiahoftheprogrammingworld.Hereinforcesthisworldviewwithhisconvictionthatanythinghedoesntunderstand(i.e.almosteverything)ispointless,oldfashionedandawasteoftime.
Distinguishingcodefeatures:Useshisownvectorclassimplementation.Alwaysstartsclassnameswithhisowninitial.Mistakenbelief:Theprogrammingworldhasmoretolearnfromhimthanhedoesfromit.Mostendearingquality:Howeasyitistomakehimdefensiveandhuffybymentioninganythingoutsidehiscabbagepatchofexperience.Reads:Hisownblog.Mostlikelytosay:Huh,yeahwelleveryoneknowsfunctionallanguagesarenousefor*real*programming*anyhow*
TheAbstractionFreak
Afterawhileallnewprogrammersbeingtorealizetheystarteachnewflashgamebycopying90%oftheoldone.Suddenlyitoccurstothemthattheycouldwriteonesupergameenginetomakewritinganewgameassimpleasfindingthespritesandwritingaconfigfilecontainingtherules!Flushedwiththissuccess,thewannabeabstractionfreakbeginstobelieveallprogramsshouldbegeneralized,generalized,generalizedunfortunately,holdingontothisbelieftoolongturnsthemintotheAbstractionFreak.
Distinguishingcodefeatures:Addsfivenewclasseseverytimeheimplementsanewfeature,allofwhicharenamedafterdesignpatternsandgivenocluewhatsoeverastothefeaturetheyresupposedtoimplement.Anyactualbusinesslogicishiddeninanxmlbasedconfigfilesomewhereelseintherepository.Mistakenbelief:Writingaprogramtointerpretasetofconfigfilescontaininganawkwardlyphrased,buggydescriptionoftheprogramhewantstowriteisbetterthanwritingtheprogramhewantstowrite.Mostendearingquality:Theexpressionofpainfulconcentrationonhisfacewhilebattlinghisanalysisparalysisbeforestartingtoreimplementtheloginfeatureforthefourthtimethatmonth.Reads:DesignPatterns,covertocover,duringhislunchbreakeveryday.Mostlikelytosay:SoIthinkweshouldstartthenewtimeschedulingprojectbywritingagenericapplicationframework
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 3/40
TheVeteran
Anyprogrammerexposedtothebitterrealitiesofworkinginasoullesscommercialsoftwarecompany,shufflingbitsonaharddiskforthesamesalaryeverymontheventuallydevelopsacertainprotectiveshell.Neitherspeednorgeniusarerewarded,sooftenaprofessionaldeveloperbegintodevelopaverycareful,measuredstylethatensureshesnevercaughtoutbyeitherbugsormanagement,whichheconsiderstobeprettymuchthesamething.
Distinguishingcodefeatures:Thefirsttenlinesofanyfunction,evenanaccessor,areallassertstatements.Alltheerrorconditionsforeachfunctionaredutifullycheckedandhandledandcommentsareliberallyscatteredthroughout.Mistakenbelief:Doingthingsproperlyisthesameasgettingthingsdone,butbetter.Mostendearingquality:Hisauraofmeasured,unflappablecalmthatmakesitclearthateventhedirestemergencywontmakehimworkanyfaster,leavingonewiththeimpressionhemightbebettersuitedtoacareerinthebonsaiindustry.Reads:joelonsoftware.com(yes,eventhoughJoelsstoppedposting)Mostlikelytosay:Well,Iwontbeabletosayuntildoingaproperestimatenextweek,butitsgoingtobeatleast*sucksairinthroughpursedlips*atleastfourmanmonthstoaddaprintpreview,plustestinganddocumentationofcourse.
TheGuru
Afteradecadeorsoofbouncingfromonestereotypetothenext,ournewbieisallgrownup,yetshefeelslikeahollowshelloftheenthusiastsheoncewas.Onemorning,shewakesupandrealizesthattheunwieldycrustofunittests,assertions,errorcheckingandclassdesignthathavebuiltuparoundherprogrammingstylearejustcrutches,crutchesthataredraggingherdownandthatshenolongerneeds!Shecaststhemoffandbeginswritingthesimplest,barestcodeshecanthinkoftodowhatsheneeds!Freethefeatures!Freethecode!Freedom!
Distinguishingcodefeatures:Onlywritesindynamicallytypedlanguageswithastrongfunctionalcomponent.Atfirstglancehercodelooksremarkablysimilartothenewbies,exceptthereslessofitandthevariablenamesmakesense.Mistakenbelief:Thatherenlightenmentmakesheraguruwithoutthequotationmarks.Mostendearingquality:Herlittleshiverofexcitementeverytimesheseesaninterestingproblemshecouldsolvewithjusthalfadozenlinesofcode.Reads:news.ycombinator.com/newestMostlikelytosay:Youknow,polymorphicinheritanceisreallyjustapoormanssubstituteforfirstclassfunctionsanddynamictyping
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 4/40
And
Sothereyouhaveit,mycareerasaprogrammerlaidbare.Imcurious;doeseveryonegothroughthesephases?
Polldaddy.com
Whichstagesofprogrammerincompetencehaveyoubeenthrough?
Vote ViewResults
IfIvemissedanygreatones,addyourowninthecommentsandIlleitherupdatethearticleorcollectthemforaPartII
Note:YieldThoughthasmovedtohttp://yieldthought.comcheckthereforthelatestposts!
Writtenbycoderoom
March19,2010at3:25pm
PostedinUncategorized
169Responses
SubscribetocommentswithRSS.
Spoton.Ijustrepliedmybosswith*sucksairin*estimateandwantedtocheckoutwhatsthefussabouthackernewswebsite.
kl
March19,2010at4:48pm
Replyyep..thatprettymuchsumsitupforme.
tony
March19,2010at6:01pm
TheEnthusiasticNewbieTheBuddingGeniusTheAbstractionFreakTheVeteranTheGuru
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 5/40
ReplyAnyonewhohasbeeninthisbusinessover10yearsWORKING,havelived,practicedandsuffer.
Ninel
ninelconde
July6,2010at2:16am
ReplyIcheckedallthecheckboxes.Assumingyoumean,Whichstagesofprogrammerincompetencehaveyoubeenthroughtoday?
Neebat
March19,2010at6:05pm
ReplyImbecomingaveteran NOMOREBUGSFORYOU
droope
March21,2010at11:14pm
ReplyHeresagreatcommentfromknight666intheredditcommentthread,itsacrimeifmorepeopledontseeit:
Atschool(gameprogramming),wehavethreeprogrammingteachers:
JaccotheexdemoscenerDefiningfeatures:Doesntlikeabstraction.Everythingshouldbecrammedinasinglefileifpossible.Codeshouldbefast.Providesaframework,butitsabsolutelybarebones(rendersabuffertoawindow,providesavector2,vector3andmatrix4x4class)Mayorannoyance:Lackofabstractioncausesinflexiblecode.Singlelettervariablenames.
DinotheveteranabstractionistDefiningfeatures:Abstracteverythiiiiiiing.Memberdatashouldbeinpimps.Hatesheadersandconsidersthemarchaic.Alwayscodesplatformagnostic.Becauseofhisabundanceofabstraction,theprogramcodeisseparatedfromtherenderingcode.Mayorannoyance:Putseverythingin.cppsinsteadofheaders,whichcauseslinkingnightmares.Ridiculouslyconvulatedcodingstyleandvariablenaming.Abstractionwherenoneisrequired(ImprettysuremyVec3isalwaysgoingtouseeitherfloatsorfixedpoint,IhavenoneedforaVec3)
Nilsthechilledoutdude
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 6/40
NilsthechilledoutdudeDefiningfeatures:Featuresbeforespeed.Getitrunning,thengetitfast.Abstractthingsonlywhenrequired.Getsshitdone.Mayorannoyance:Nonereally.
Thepastyear,IvebeenagreeingwithJacco,thenwithDinoandnowwithNils.However,itsabalance.Whenyoucodeforspeed,yourshitwillbreakwhenyouwanttoaddnewstuff.Whenyouabstracteverything,nothingwillevergetdone!Itsaveeeeerydelicatebalance.HowmuchabstractiondoIreallyneedandhowimportantisspeedrightnow?
coderoom
March19,2010at6:11pm
Replysmallworld,thosearemyteachers(knightbeingmysenior)
Andthatabsolutelysumsthemup!
awesomearticle
zeroZshadow
June24,2010at11:08am
ReplyAfterpoundingoutcodefor25years,Guruisthebestfit.
Jeff
March19,2010at6:23pm
ReplyAndthisiswhyyouarenotone.Itaskedyouwhichstagesyouwentthrough,notwhichoneyouthinkyouare.
Linegod
March21,2010at11:48pm
ReplyAlso,heputquotesaroundguru.
Yep
April19,2010at2:00pm
ThiswouldexplainwhysomanypeopleiconsiderGuruprogrammershavefalleninlove
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 7/40
ThiswouldexplainwhysomanypeopleiconsiderGuruprogrammershavefalleninlovewithHaskellandProlog
Dustin
March19,2010at6:33pm
ReplyGreatread,lotsoftruth,butswitchinggendersoftheprogrammereveryparagraphistremendouslyannoying.
Brian
March19,2010at6:35pm
ReplyMaybeyourerightaboutthat.They/their/themislessimmediate,lesspersonal.Perhapsonesheandtheresthewouldvebeenmorerepresentative(althoughallhewouldvebeenevenmoreso).Wellsee.
coderoom
March19,2010at7:15pm
ReplyGenderdoesntmatter.Chooseheorsheandstickwithit.Idontthinkanyoneiskeepingscoreofyourpronouns,andiftheyare,thentheyreprobablyworthpissingoff.
decadeCoder
March25,2010at9:50pm
Sogenderabstractionisnowrequired?
Pete
March19,2010at9:09pm
Replytheauthorsaidhe/shehasexperiencedallthosestages,perhapschanginggenderbetweeneachofthem?
bse
March20,2010at1:02am
Reply
Iagree.WhenIreadashemyinstinctisthatIhavemissedsomethingandIstartlooking
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 8/40
Iagree.WhenIreadashemyinstinctisthatIhavemissedsomethingandIstartlookingbacktofindoutwhothissheis.Pleasepeople,hecanbeusedtomeanheorshe.
Ben
March20,2010at12:58pm
ReplyIactuallyenjoyedthegenderswitching.Madeitlessaboutthespecificperson.
zachaysan
March20,2010at2:10pm
ReplyOfthefivetypes,theguruistheonemostlikelytobeashe.Sheprobablystartedhercareerintheearly1980s,whichwasthelasttimetherewassomethingapproachinggenderequality.
BTW,Imustbereadyforsometranscendentstageofprogrammerincompetence,becausetheonlycodethatdoesntseemfussyandprecioustomethesedaysisassemblylanguage.
Webar
March20,2010at8:39pm
Thatsbecausethearticlehasdynamicgendering.
Angel
March21,2010at6:23am
Reply
Greta
September20,2010at9:54pm
Firstclassfunctionsareagoodsubstituteforasinglepolymorphicfunction,untilyouneedtopass/returnmultiplepolymorphicfunctionsandsomedataallatonceandthenyouhaveanADTagain.
Colin
March19,2010at6:39pm
Reply
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 9/40
ThisblogpostfollowsapatternIhavebeennoticinglatelyinprogrammerblogs.Ibelievethatonecouldabstractoutseveralpiecesofittocreatearudimentaryframework
Merritt
March19,2010at6:39pm
ReplyTherewasanexcellentpostonHNalongthoselinesamonthorsoago,somethinglikeThisisthetitleofagenericblogpost.Itriedsearchingforitbutfoundsomanythatitdidntseemfunnyanymore
coderoom
March19,2010at7:11pm
ReplyHitthenailontheheadandhammeredhome.
FarazAli
March19,2010at6:40pm
ReplyThisisbrilliantitsnotonlyfunny,itssimplythetruth,andfunnybecauseitsthetruth
Thanks,itmademyday
RolandBouman
March19,2010at6:50pm
ReplyAwesome,itwasmypleasure
coderoom
March19,2010at7:10pm
ReplyHilariousandsotrue.Bravo.
Braden
March19,2010at7:45pm
Reply[]5StagesofProgrammerIncompetenceyieldthought[]
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 10/40
StreamingcalcioPalermoInter20/03/2010
March19,2010at7:56pm
ReplyVeteren,sigh
Veryaccurate!
bgw
March19,2010at9:46pm
Replygurufornewprojects,veteranwhenmaintaining.
Butgurucouldntbemoreaptmylanguagechoice,thatIcheckedHN10timestoday,mybeliefthatthemostcrucialpartofprogrammingischoosingtherightnamesforthings,whatIwastalkingaboutlastweekendtheonlymischaracterizationisthatIthinkallmyprogramsareshit,andIdratherhaveaseizurethantrytoaddfeaturestoa10k+linepythonproject.
jhl
March19,2010at10:12pm
ReplyYourenotacompetentprogrammeruntilyoucaremoreaboutthesolutionthanthetools.Anyonethatproselytizesalanguageortooloutsidethecontextofaddressingaparticularproblemisnotyetacompetentprogrammer.
myarse
March19,2010at10:22pm
ReplyIlovethem!Itsjustwell,arentthesereallytheevolutionarystagesforadeveloper?Somanyofusidentifywiththem,Imnotsureitsfairtolabelthemasstagesofincompetence.Ithinkweallgothroughthem.Theyarestagesofgrowth.
vurcease
March19,2010at10:41pm
ReplyThisistrue,butasJeffAtwoodsays,recognizingourownincompetenceisthekeytogrowth
coderoom
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 11/40
March20,2010at7:26am
ReplySoWhatsafterguru?
Andwhileauthoringyourmemoirsofacareerincode,youveforgottenafewfriendsalongtheway
Remember:TheTechnicalProjectManagerforwhomthereisntanycodingproblemthataGanttchartcouldntfix,andwhohadsomemysticalunderstandingofwhatpercentcompletemeans.Thisguyleftthecodingpathsomewherebetweennewbieandabstractionist
AndRecall:TheUI/HFEngineerforwhomtheholygrailistheultimatehumanunderstandablerepresentationofsystemstate.Forwhomtheinventionofthedropdowncomboboxisamajorhistoricalmilestone
BrianMaso
March19,2010at10:48pm
ReplyHowniceforyouthatyouimagineyoureaguru.
Wontitbefunwhenyoumakethistableagain,assignyourcurrentpositiontobeingarelativenovice,andwhereveryouarethenisnowthegurustep?
Maybeyoushouldstopfellatingyourownskilllevelinpublic.
JohnHaugeland
March19,2010at11:10pm
ReplyHeh,aguruisntaguru.Theyjustthink,actandtalkasiftheyare
coderoom
March20,2010at7:27am
ReplyGurushouldbeindoublequotes(guru)asitisastringandnotachar,usuallyinsinglequotes.Justthrowingthatoutthere.
Vlad
March19,2010at11:12pm
Reply
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 12/40
Ah,butinpythonyoucanuseeither
coderoom
March20,2010at7:27am
ReplyAndinPHPaswell..
ThomasLukasik
March20,2010at6:55pm
WorksinC++toogivesyouanint
ReJ
June25,2010at7:12am
Whileeveryoneknowsthestepsinyour5stagesarespectrumsnotquantumjumps,theyareindeedveryfair.Anditsimportanttoremembertherearelittletidbitsofall5thatSHOULDbeanotherlevel.
Howeveronceyouworkforacompanywhosejobisittomakemoneysellingnotsupporting,youdoindeedgetbeatendown.Timetomarket,visualappeal,marketing,alltrump(mostofthetime),eleganceinsoftwareengineering.Stillyouhavetoadmit,itsnotabadwaytomakealivingifyouarestillenthusiasticaboutwritingcode.Evenifhastobeyourcode,notyouemployersyouareenthusiasticabout.
Jeff
March19,2010at11:36pm
Reply[]5StagesofProgrammerIncompetenceEverynowandagainIseeglimpsesofmyselfinyoungerprogrammersastheystrugglewiththesame[][]
TopPostsWordPress.com
March20,2010at12:06am
ReplyTheBuddingGeniusisthebest,notonlyforprogrammers Youarestillatthestagewhenyoudontknowifthoseareillusionsorpremonitions.
StephanaNikolova
March20,2010at12:12am
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 13/40
ReplyAnychanceyoucando5StagesofProgrammerCompetencynext?Ohandbtw,youcantradeobjectforclosure.(youcanbut,heylol)
gml
March20,2010at12:48am
ReplyIfIeverreachalevelofcompetencyinprogrammingIsurelyshall!
coderoom
March20,2010at7:28am
ReplyThepostseemstodescribefolkswhostartworkingat1820knowingonlyoneprogramminglanguage,asopposedtogrowinguplovingtheprogrammingexperiencewhilebeinglanguageagnostic.Theabstractionstepmakessense,buteventhatcanbejustifiedforpragmaticreasonswhenyouhavetodothesamethingbutconfigureddifferentlyforthe2ndor3rdtime.Idontconsideritastepinanaturalevolution.Whatreallystandsoutfromthispostisthelackofbusinesssenseandpragmatismfromthepersonalitiesdescribed.Isitwhatworkingassoftwareengineerinalargecorporationdoestoyou?Andwhatwiththeegodrivenneedtoaccomplishorshowcase,asopposedtosimplyperformthetaskathand,whetheritbeselfassignedorhandeddownmanymature(andsomeimmature)programmersdonthavesomuchanegoproblemthattheyshouldprovethemselvesbettersomehowviaoneofthedescribedidiosyncrasies.Finally,atrueprogramminginmyopinionisequallycomfortablewithassemblylanguageaswithLisporJava,hasnothingtoprovetheworldandjustenjoyswhathedoes.Hedoesntseemtofittheprofileslisted.Andtoboot,noneoftheseprofileshasmuchtodowithcompetencecompetenceisgettingtherightthingsdoneproperlyinasturdyandscalableway,thenbeingabletosmoothlyhanditoverandmoveon.Franklyalltheprofilesfitthenewbieattitudetome.
DreamT
March20,2010at1:12am
ReplyMythoughtsexactly.Greatprogrammers
*Seetheexpandedproblemspace,whichincludesorganisationalobjectives,culture,practice,existingcode,people,materialsandbudget,aswellasstatedobjectivesandtechnicalissues.
*Areusuallygeniuseswithloadsofexperience.Theyseekandfindmajortechnical
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 14/40
*Areusuallygeniuseswithloadsofexperience.Theyseekandfindmajortechnicalshortcutstodeliversolutionsacrosstheexpandedproblemlandscape.ThisistheGreatProgrammersXfactor.Youcantteachit.
*Improveprocesseswherepossible,butareneverprocessjunkies.Particularlytheyeschewthesemblanceofprocess.
*Areprobablyawareoftoolandlanguagetrends,butareneverfashionvictims.
Bill
March20,2010at8:25am
Replyrighton.thiscannotbesaidbetter.
c0der78
March7,2012at2:30am
YouleftoutmyprogrammingpositionTheGrunt.TheonethatisassignedtofinalizethegeniuscodeanddesigntheGuruhascreatedandbringittoproduction.InmyexperiencetheGurudoesthedesignaccordingtowhateverfancynewdesignpatternortechniquehislastconferencegothimtobelievein.Iasamultitaskingrobotamassignedtodeliverhisgenioustoproduction.WhatIgetisaproofofconceptthathasbeencarefullydemonstratedtothecompanymanagement.Thebigbossesbelievetheproductis90%readybutthetruthisthatitsbarely20%ready.SoinmythemanagementeyesIamalwaysunderperformingandtheGuruisoverperforming,hegetsthebigsalarycheckandIgetthescrapsforfinishinghisconstantlychangingdesignpatternsandwhimsydesignsandhavetosupportthestuffaswellandmeanwhiletheGurumovesontodesignsomenewstuffwithWindows7featureseverywherebutourcustomersarestillstickingtoWinXpandServer2000.IagreewithDreamTtheprofilesaredescribingnaivenewbieprogrammersandasfunasthispostingisitwouldbegreatgetamorethoroughanalysisofprogrammers,butIknowablogisnottheplace
Tobakstugga
March20,2010at2:48am
ReplyAh,thisissotrue!
coderoom
March20,2010at7:31am
Replystopbloggingandgobacktowork!
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 15/40
zero
March20,2010at2:56am
ReplyDistinguishingcodefeatures:
Mistakenbelief:
Mostendearingquality:
Reads:
Mostlikelytosay:
Mentifex
March20,2010at3:35am
ReplyTheMetamorphizedSolutionEngineer:
Thisperson,preferablypriortoGuru,butafterAbstractionist,decidestochangecareersandgointoEnterpriselevelSolutiondevelopment.
Thisguyremembersallhiscodekata,buthaslosttrackofmostlanguages,thinksinobjectsandERD,butalsospeakshardwareandnetwork.Hefailstorememberthepainthatgeneralprogrammingcausestheheartbuthasmasteredthetaskofcommunicatingbetweentheregularhumanandtheprogrammingteamusuallyusingthemostdangerousandpowerfullanguageofall:pseudocode.
Heisknownforwritingthingsontheboardlike:
if(datareturnsok)then(dosecondprocess)else(throwerror)
andthenconsiderthataviablespec.
Athisbest,thismangetsthebillspaidandkeepseveryonehappyinplushiesandnerfguns,athisworst,hepromisesthingstocustomersthatcantexistanywherebesidesthepliable4dimensionalfantasylandofhisownmindbutyouhavetocodeit.
Lovethisman,andfearhimheslikelyyourboss.
Distinguishingcodefeatures:completesitallindryerasemarker,andconsiderscolorcodingtheextentofhisresponsibility.
Mistakenbelief:ifhecandreamit,youwillbuildit
Mostendearingquality:willingtostandbetweenyouandthesuitsandactuallytrulygets
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 16/40
Mostendearingquality:willingtostandbetweenyouandthesuitsandactuallytrulygetsiteventhoughhedoesntcodeanymore
Reads:TheRobbReport(becausehesmakingmoremoneythanyouare)
Mostlikelytosay:Yes,wecandothatnoworries.
CPUnk
March20,2010at3:54am
ReplyThanksforthisone,itreallymademelaugh
coderoom
March20,2010at7:31am
Replyapropos++;
nolochemical
March20,2010at4:51pm
ReplyScriptkiddie?
davefar
March20,2010at5:39am
ReplyIhaverbeenthroughallofthemandIamnowinastateofenlightenedignorancewrtsoftwaredevelopment.
lee
March20,2010at6:07am
ReplyYouforgotoneofthemostimportantones:RealProgrammer.http://www.pbm.com/~lindahl/real.programmers.htmlhttp://www.pbm.com/~lindahl/mel.html
Distinguishingcodefeatures:Selfmodifyingcode.Nocommentsanywhere.Herefusestowritecodeinanythingotherthanassembly,CorFORTRANorusethewordswebandprogramminginthesamesentence.Hiscodeisimpossibleforanyotherprogrammertounderstand,afactthatensureshimjobsecurityforlife.
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 17/40
Mistakenbelief:Commentsareforsissies.Ifitwashardtowrite,saystheRealProgrammer,itshouldbehardtounderstand.
Mostendearingquality:Helikestoentertainotherprogrammersatpartiesbyrecitingthebinaryopcodesforeverymachinehehaseverprogrammed.
Reads:Intel64andIA32ArchitecturesSoftwareDevelopersManualVolume3B:SystemProgrammingGuidePart2.,opentoaparticularlyinterestingpageaboutthesubtlenuancesofVirtual8086Mode.
Mostlikelytosay:Ifaprogramcantrewriteitsowncode,whatgoodisit?
Alex
March20,2010at6:38am
ReplyNicearticle,thanksforthelink!
SinceMelknewthenumericalvalueofeveryoperationcode,andassignedhisowndrumaddresses,everyinstructionhewrotecouldalsobeconsideredanumericalconstant.Hecouldpickupanearlieraddinstruction,say,andmultiplybyit,ifithadtherightnumericvalue.Hiscodewasnoteasyforsomeoneelsetomodify.
Understatementmakecoderoomhappy!
coderoom
March20,2010at7:37am
ReplyHahagladyoulikeitTheStoryofMelsaclassicpieceofhackerfolklore
Kindoffascinatingtoo.MakesmewishIhadanoldmainframejusttoseewhatitwaslike
Alex
March20,2010at9:39am
DamngotmeatAbstractionFreak.Thanksfortheheadsup!
Scott
March20,2010at9:06am
Reply
IdbepossiblyanothersortofincompetentprogrammerMan(asinManual).Man
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 18/40
IdbepossiblyanothersortofincompetentprogrammerMan(asinManual).Manmakessurethateachandeveryprogrammerinhisteamcancodethewaytheywantandproduceresultsinthewaytheyprefer.EverysingleupdateneedstogothroughMansohecanmakesureitdoesntaffectanyotherdevswayoflife.Asaresultnooneeverimproves,Manistheonlyonewhoknowswhatsgoingonandis*litterally*themanual.IfManeverhappenstotakeadayoff,nothingwillhappenonthatday.
Notethatnooneelseknowswhatmandoes,orhowmandoesit.Notthatitmattersmuch,sincemancanonlywriteacouplelinesperdayduetoallthattimespentlisteningtootherpeopleandansweringquestions.
Damn,Idlooooovetofinddecentawayoutofit,helpmeplease
Tom
March20,2010at9:55am
ReplyIguessMandoesntmindbeingthecenterofattentionbutwouldliketobeabletogetsomeworkdone?
Hecouldtakefourweeksoffduringabusyperiod,thencomebackandtryhttps://coderoom.wordpress.com/2010/01/28/3simplerulesthatwillmakeyouasuperstardeveloper/(butdonttellanyoneIsaidthat)
coderoom
March20,2010at10:56am
Reply4weeksoffsuperstarcomebackyou,sir,arethedevilincarnate!
Tom
March20,2010at3:33pm
AfterspendingsometimeasVETERAN,IwentbacktoABSTRACTIONFREAKandbranchedtowardsmodelinginstead.
AMODELERisanABSTRACTIONFREAKinheaven!
modelpractice
March20,2010at10:30am
Replyhellyeah,spoton.ivebeeninthefirstandsecondstages,andnowimattheveteranstage
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 19/40
althoughtheidontgiveafuckmayvaryfrompersontoperson.youveseenyourshareofemergencies,andthisstageisaboutgettingshitdoneandcoveringyourass.also,havingabitofknowledgeallowsyoutoslack2daysandworkoneonathreedaydeadline
oneguy
March20,2010at10:52am
ReplyThisisfrighteninglygood.Iwouldliketoofferanewclassofprogramming
TheDelusionalAttentionDeficitProgrammer.DistinguishingCodefeature:Writesalotofnonreadablecodethatdoesalotstuff,butdoesntsolvetheactualproblem.Nocomments,thinksashe/shecodes.Noconceptofknowinghowtofocusonaspecifictaskatanyonetime.Constantlyflitteringbetweenminiprojects,leavingahalfdonesolutionthatarehardtopickup.
MistakenBelief:Thinksthattakingonafewproblemsatatimeisok.Falselybelievesthattheirapproachisagilinordertoquicklycodeanddesignontheflytogetresults.Butitsnot,justburyingthemselvesunderamountainofspagehtticodethatisunmaintainable.DoesntseethatitsreallythePITOOMAmethodology.(Pulleditoutofmya$$).
Mostendearingquality.Whinesaboutnothavingtimetotakeontasks,butistoobusyyabbering/procrastinatingtogetstuffdone.
Reads:whateveristhelatesttrick/techniqueindesign.
Mostlikelytosay:Imtoobusy,ImstretchedsooothinlyIdonthavetimetosleep.
Giulio
March20,2010at11:07am
ReplyOhyeah,Gurureadsnews.ycombinatorandthenclickingonlinkstheregetstothissite;D
jakubmal
March20,2010at11:46am
Reply[]fullpostonHackerNewsIfyouenjoyedthisarticle,pleaseconsidersharingit!Taggedwith:Incompetence[]
The5StagesofProgrammerIncompetence
March20,2010at12:09pm
Reply
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 20/40
Imconvincedthereareonly5peoplewritingcodeintheworld.TherestofusGoogleandcopyandpastereallywell.
AndImchangingmynametoNils.
Sam
March20,2010at1:19pm
ReplyDefinitelynot.Somepeoplejustfallinlovewithcomputers,thenfalloutoflovewithcomputers&fallinlovewithsomethingelse.Atsomepointtheyfalloutoflovewiththesomethingelse&fallinlovewithcomputersoncemore,thentheyfalloutoflovewithcomputersonemoretime&discoverthatmachinesingeneralarenice&justletitbe.
ahse
March20,2010at1:34pm
ReplyOuch.Thetruthhurts,man.
Chris
March20,2010at2:16pm
Reply
tokyohotelsonline
March20,2010at4:15pm
ReplyGoodOne
ittalentz
March20,2010at4:26pm
Replywonderful!sotrue!
HaroldShip
March20,2010at5:20pm
ReplyHaha,veryhumorous,Ilikeit.(:
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 21/40
fcukthat
March20,2010at5:57pm
ReplyThisishilariousbutverytrue.
SeifSallam
March20,2010at6:20pm
ReplyGreatarticle,funnybuttrue
JaneAdams
March20,2010at6:31pm
ReplyGreatpeiceofwriting.NotsurewhereIwouldsitastherearetimesabitofeachcomesintoplay.ButcertainlytheVerteranseemstofitthebestasthesucksinairhashappenedoftenbutIthinkthatismoreduetothefearthatmangementthinksitsahardtimelinenotablastedestimate.
KeithChadwick
March20,2010at6:33pm
ReplyThisissoFULLOFEPICWIN..IfiguredIwouldprobablybetheEnthusiasticNewbie,butafterreadingIfoundoutthatIwasacrossbetweenaVeteranandaGuru*COMMENTSANDFREEDOM!!*eventhoughIhaveZEROprogrammingexperienceinanactualjob.IwentO:O:O:
Butyeah,funnyentry..anditsprettyrealisticineveryway.YoudeservetheBadgeofEPICWIN.x3
MarxTaich0u
March20,2010at6:42pm
ReplyHahaGoodread!!
Anne
March20,2010at7:19pm
Reply
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 22/40
Veteran.
Mystuffships.Mystuffworks.Mycontractskeepgettingextended.
Javarocks!
Greatpost.Gonnaputitinthehallatwork.
JohnBannick
March20,2010at7:21pm
Reply[]5StagesofProgrammerIncompetenceyieldthought[]
jardenbergkommenterar20100320|jardenbergunedited
March20,2010at7:51pm
Replygetoveryourselves
smileylizard
March20,2010at9:09pm
Replyoutofscopeofthepost:WhyabstractusersandprogrammersinEnglishtextsmentionedasshepredominantly?Isitasomekindofcourtesy?Because,ifwespeakaboutprogrammersoutthere,20to1isagoodaproximationofsexproportioninourprofession(whateverthereasonforthat),andinsteadofpoliticalcorrectequalizationofsexes,usageofshejustaccentsthatdisproportioninastrangeway,no?
Iwasunabletofindanyethymologyofsuchatradition,butmaybeyouknow,why?
codesnik
March21,2010at1:31am
ReplyIthinkitmightbepartofsomeunspokenefforttohelpchangethatpredominanceinsomesmallway.Theresnophysiologicalreasontheratioshouldbesohigh,whichmeanstheprofessionismissingoutonalmost50%ofthepotentialvanRossums,Knuthsand,yes,SpolskysandGrahams.
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 23/40
Therearebetterwaysthanoccasionallyusingthepronounsheaswellashe,buthey,notalltechnicalwritersarepoliticalactivistsorrevolutionaries.
Personally,Ithrowitinthereforabitofvariety;Imsurpriseditbotheredsuchahighpercentageofyou,dearreaders.
coderoom
March21,2010at7:13am
ReplyAsafemaleprogrammer,Iagreewithcodenik.Itsniceforusgirlstobeincluded,butIfeelitsOKtotreatthenounprogrammerwiththemalegender.
Sam
March21,2010at2:50am
ReplyTheenlightenedone.thedayhegotinterestedinprogrammingandreadabook,herealizedhealreadyknewhowtoprogram,andquicklyputthebookaway.theonlyusehehasformanfilesistogetthecorrectargumentlistthatthepreviousenlightenedonecreated.thereisnocode,onlylanguage.
distinguishingcodefeatures:simple,elegant,easytoread.maybeabitcomplicatedforothers,butwithalittleinvestmentmostcanfigureitout.mistakenbelief:programmingiseasy,everyprogrammerislikehimself.mostendearingquality:thelittleeyebrowraisewhenanotherprogrammersays~itcantbedonereads:anythingnotrelatedtoprogramming.historyofrussia?thatsoundsinteresting.mostlikelytosay:Yes,itsfinished.
Boppity
March21,2010at3:01am
ReplyThiswouldbeanicestageofprogrammingcompetence SadlyIcouldnthonestlyclaimtohaveeverreachedorevenseenit!
coderoom
March21,2010at7:14am
ReplyThedescriptionforTheEnlightenedOnesoundsverymuchlikewhattheBuddingGeniuswouldsayifyouaskhimtodescribehimself.
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 24/40
lincolnboulevard
March21,2010at10:22pm
ReplyIagreewithcodenik
Sidra
March21,2010at5:32am
Replyitwasntarant.Itwasjustaquestion.Iveseenusageofshepronounintechdocsmanytimesbefore,Ijustwanttoknow,whyandwhenitstarted.
and,damn,itscodeSnik!
codesnik
March21,2010at5:35am
Reply[]camealongapostdescribingfivestagesofprogrammerincompetence.Ihighlyrecommendyoutogoreadthearticleandseeifyouidentifyyourselfwithanyofthesetongueinthecheek[]
Programmerincompetence|Smartengineeringpractises
March21,2010at9:46am
ReplyAgoodreadwithsomegoodcomments.Iaddedyourbloginmybookmarks.
John
March21,2010at9:54am
ReplySpoton!AndIlikedtheonecommentallinoneday!greatobservations.
DeciduousTree
March21,2010at11:29am
ReplyIhadtocheckallboxes!!Gotthefeelingthatsomehow,atsometime,Iwenttroughallstages.Nevernamedclasseswithmyinitialthough(dotheyexist??).
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 25/40
Fortherestyesyourhonor,IconfessIf,andafterhavereadthis,Iwouldstilldaretomakeanykindofselfevaluationonmycompetences,asixthstagewouldsurelyworthtobementioned:theprocrastinatortype.
Greatarticle.Greetings
flashopen
March21,2010at2:10pm
ReplyThisisfunnyIthinkIdontanylanguagebutbriefly20yearsagoworkedwithFocusandwasprettyproudofmyself.NowIjustdependonyoufolks..thankfully.
bzirkrants
March21,2010at5:56pm
ReplyImeant,ofcourse,Idontknowanylanguages
bzirkrants
March22,2010at1:19am
Reply[]5StagesofProgrammerIncompetenceAmusing[]
RandomLinks#156|YASDWyetanothersoftwaredeveloperweblog
March21,2010at7:16pm
ReplyGreatArticle!Lovedeverybitofit
AtulKash
March22,2010at1:47am
Replyuhaehuaeeayes,ihavefoundmyselfinallstagesbesidesthegurustagehahahaitisinteresting,idevelopmyownapplicationhttp://www.archiveclipboard.com/itisnotmorethanthebestClipboardtoolihavefound,believeme,itriedtousetheavailabletools,allofthemsuckanywaymyprojectsonlyhavegetoutofmyIDEtootherscomputersafteralmostwoyears,andnowitishappy,imhappy,peopleusingitarehappey,sincejan07,ihaveownedmorethan4kusers,itiscoolisnt??checkoutsoftpedia!softoxi!googleit=D
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 26/40
thisprojectshasfacedsomestagesheredescribed,untiligetmatureenoughtomakethisshitwork!huahahaha
hopeyouenjoy!
RafaelKarst
March22,2010at5:14am
ReplyGladyouenjoyeditandgoodluckwithArchiveClipboard!Yes,gettingthefirstusersisreallyexciting!Ihopeyoumeanownedasinhaveandnotasinwitharootkit
YoudgetevenmoreusersifyouaddedtwoorthreescreenshotstoyourhomepagetellingalittlestoryaboutwhatArchiveClipboarddoesandwhythatsawesome.Asinglesentencedescribingwhyavisitorshouldcare,inanicebigfont,andanicebigdownloadbuttonwouldhelp,too.Quotesfromhappyusers,too!
coderoom
March22,2010at9:01am
Replyyoudamnrightcoderoom,imlasyaboutthesite,basiclythemassivedownloadscomefromreviewsiteslike,softpediaredirectsandothersreviewersiguessimgoingtodosomethingthanksfortheadvice!
RafaelKarst
March22,2010at2:20pm
Iamattheveteranlevelandamshowingpromiseofgraduatingtothegurulevelverysoon
Verynicelyput.Andyes,Ithinkeveryonegoesthroughthesamecycle.YouforgotthelastphasethoughTheLead/Manager Ithinkyouhaveyettoreachthere,elseitwouldhavebeeninthelist!
Anonymous[Iamstillemployed:)]
March22,2010at10:27am
ReplyHmmmmAveryinterestingwaytolookathowonematuresasapragmaticprogrammer.
AchallengetotheprogrammerinU
TheMYSTERYSPIRAL
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 27/40
http://2600hertz.wordpress.com/2010/03/20/themysteryspiral/
canUcodeit??
cvs268
March22,2010at10:49am
ReplyWhatsthemystery?Thealgorithmisclear:makeanNxNarray,startinthetopleft,windintothemiddledecrementingasyougo,printsaidarray.
coderoom
March22,2010at11:26am
ReplyImatthemadmanstageforwhichyoukindlyleftoutanoption.Iseeprogrammingpatternsintheworldaroundus,insocialnetworks,andIseenaturalpatternsinprograms.
Juststartedlearningwebprogramminglanguagesinthesecondhalfoflastyear.Fromastrictdietofcfor13yearshittingthewallofacoupledozenlanguagesanddatabasesformatsatoncewasprettyradical.Ivejuststartedtogetcomfortablewithrubyonrails,andJavaScript.ImstillnotproficientbutIvelearnedenoughabouthowinformationflowsthroughrailsstructurestobecapableofbreakingourwebapp.Meandabettersuitedrailshackerareworkingonasocialreader/filterthatjustdoveintothedeepend(web)fromTwitterville.
MarkEssel
March22,2010at12:30pm
ReplyTheonlythingthatIwouldaddisthateveryBuddingGeniuswouldcategorizethemselvesasaGuruhavingmagicallyskippedtheVeteranstage.
Marshall
March22,2010at12:56pm
ReplyFirstupkudosforallowmetobeashe.WhenItweet/replyonforums,theassumptionthatImusthaveaychromosomeisprettymuchuniversal.Makesmerealisewhybitchwhocodeschosethatname
ImcringingatthewayIbehavedinstage2IrememberoncetellinganHTMLdevthatallsiteswouldbebuiltinflashoneday.ButasanewbieIsuregotalotdonebuiltsomeproperappsinAS1thattookforevertodebugbutwouldneverhavebeenattemptedbythestage3
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 28/40
me
CurrentlyImeasingintoVeteranmode.ThemoreItestthemoreIrealisehowfundamentallystupidIamthereisnolimittothesimplicityofthecodeIcanscrewup.TDDiscurrentlymysafetynetitsnotthatitsbetterfortheclient,itjustthatitsbetterformybrain.
Whatyourereallytalkingaboutthoughisthecyclefromunconsciousincompetence,throughconsciousincompetence,consciouscompetence,unconsciouscompetenceandallthewaybackaroundtobeginagain.Thegreatthingaboutthisindustryisthattheresonlythejourneythedestinationisonamovingplatform
Stray
March22,2010at2:44pm
ReplyYourewelcometheunconsciousincompetence=>unconsciouscompetencecycleisaninterestingwayoflookingatit,althoughinmyexperiencedespitebeingmuchmorecompetentthananewbie,theairquotedguruisstillalotlessenlightenedthanshelikestothinkmaybeitsaspiralofincompetence?
coderoom
March22,2010at3:16pm
ReplyAhyesthatsexactlywhatImeantbyandallthewaybackaroundtobeginagain.
Theresnostayingstillifyourenotlearningthenyouresimplyslidingbackwardswithyoureyesclosedbutchargingmoreperhourforeachcycleyouvecompleted!
Stray
March22,2010at4:54pm
InterestinglyIhaveseenthatsheistheprevalentterminprogrammingliterature(forbothusersanddevelopers)atleastliteraturewrittenbybetterprogrammers/writers(havealookatMSDNmagazinetoseewhatImean).
JonathanDickinson
March23,2010at7:36am
Reply[]5StatesofProgrammerIncompetence[]
SAPABAPdevelopersNEVERdothisWelcometoMyHead
March22,2010at4:07pm
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 29/40
ReplyQuiteinteresting,butIwouldntclassifyadynamiclanguageasmostdefinitelythetoolofchoicefortheGuru.
Shewouldratherusethecorrecttoolforthejob.
Writingasocketserverthatcanhandle100softhousandsofconnectionsuseastaticallytypedlanguage.Maybeevenwhatcouldbearguedastoomuchproceduralcode.
Writingadesktopclientfortwitter?Agarbagecollecteddynamiclanguagewouldbebest.HeavyOOPorfunctionalstyledependingonwhatisbeingaccomplished.
Theinternetisjustcurrentlygoingthroughadynamiclanguageforeverythingfad,theoldtools(OOPandstaticlanguage)stillworkjustaswell.
IworkwithoneofthesepeoplethetypeofpersonwhohasgonefarpastGuru(IwouldhappilyadmitthatIamstucksomewhereinbetweenAbstractionFreakandVeteran ).
JonathanDickinson
March22,2010at4:55pm
ReplyHaveyoumissedthesignificanceoftheairquotesaroundguru?Atrueguruwouldusewhateverworks,butthehyperfashionableguruismostdefinitelyadynamictypingconvert.Shethinksshesatrueguruandhastheanswertotheworldsprogramming,butsheisntandhasntnotyet,anyway.
coderoom
March22,2010at7:13pm
ReplyIguessIdid .
JonathanDickinson
March23,2010at7:29am
BTW,quiteimpressedonhowmanycommentsyourespondto.Youdontseethatkindoffollowthroughonblogsthesedays.
JonathanDickinson
March25,2010at1:14pm
^_^
coderoom
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 30/40
March25,2010at1:40pm
Thanksfortheexcellentpost.Itgavemeafewchuckles.Ifeltalittlecompelledtorespond,althoughIamnotsurewhy.Ithinkthemostimportantthingisrecognizingtheselevelsandhavingthehumilitytoacknowledgethatyoutravelinandoutofeachdependingonmultiplefactorsnotjustlengthoftimeintheprofession.
IvebeenprogrammingsinceIwas8,andworkingprofessionallyfor15years.Ihaveexperiencedeachlevel,butshyawayfromusingthetermguru.Tomeitsuggestsreachingsomeplateauofknowledge,andthenegativeconnotationofanegotogowithit.
Inreality,guruisfairlyaccurateforitsreferencetoattainmentofknowledgeandteachingothersbothkeysforprogrammingsuccessandlongevity.
Constant,rapidchangeisaforcetoreckonwithinthisindustryandmakesusallnewbiesatsomelevel,somemoreenthusiasticthanothers.Keepyoureyesopenandmouthshut,learnfromandteachthosearoundyou,usethemostappropriatetoolforthejob,andyouwillbehappyandsuccessful.
Nathan
March22,2010at9:11pm
Reply^lol@thepeoplewhowrotecommentstoassertthemselves.
goodreadthough,gavemeafewlaughswiththeguys,itwouldbefunnyifsomeoneprofiledmanagementstylesfromdeveloperperspective.
Dznuts
March23,2010at2:45am
ReplyAfterguru,youmightconsideredascendedmode,takendirectlyfromtheStargateseries.(AlsocalledDanielJacksonmode.)Ascendedprogrammersappearatoddmoments,smileknowingly,givehintsandthentellyoutheycanttellyoutheanswerbecausethenyouwouldntlearnthetruthofyourwork.
Thesepeoplecancausedincredibleofficerage.
Gene
March23,2010at1:15pm
Reply
ImindbequalifiedasGuru,butIpreferstaticallytypedlanguages,Haskellforinstance.
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 31/40
ImindbequalifiedasGuru,butIpreferstaticallytypedlanguages,Haskellforinstance.ProbablyImlazyveterantocarefultousedynamiclanguagesandlazytoputassertionsbyhand.
suigintou
March23,2010at1:47pm
ReplySpoton
AndImamazedathowseriouslysomepeopletakethisposttheressomecommentsonherethatIsweartheydidnthaveanysenseofhumoraboutthemselves/usingeneral.
MeImdefinitelyaguru!!lol
Ric
March24,2010at7:00am
ReplyNotaprogrammermyselfbutdogettositdownandspeakwiththemoften.AmazinghowwellyourcategoriesgenerallyfitthoseIvehadthechancetomeet.
Funread.
mattpagemgisinc
March24,2010at1:55pm
ReplyWellthisisquitecondescendingIthinkyoushouldnotcategorizewhatshouldnotbe.
Someprogrammersoutthere(asinotherjobs)arejusthumbleandtrytolearnandpractice,gettingbettereveryday.AndImproudofbeing(oratleasttryingtobe)oneofthem.
Ihaveneverbeenthroughoneofthesestages(exceptmaybethenewbie,butonlyfortheEnthusiasticpart).
Idontknowwhereyouwork,butifitisyourpointofviewforthisjob,Isurelydontwanttoworkthere
kronos85
March24,2010at3:49pm
Reply
Ireallyenjoyedthewhole.Thetext,thecomments
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 32/40
Ireallyenjoyedthewhole.Thetext,thecommentsAndwhatIfeeltobeveryimportantisactuallythatYourarticleandthismarvelousdiscussionareTEACHINGallofusofourindividualandcollectivemistakes.Justrecognisingyourselfinanyofthestagesisaneyeopeningexperience!!!
Imyselfprogramcomputersfor36years,so,fromthatpointofviewIamaveteran(IevenprogrammedtheLGP21,thelittlebrotherofLGP30!seeMELsstory),andyes,probably,inmyownidiom,passedmanyofthementionedstages.
However,itisalwayswisetobehumble.Itiseasieronyourself,andontheothers.
Zork
March24,2010at6:55pm
ReplyIwasonceworkingforacompanywhichwasFULLYintotheTheAbstractionFreakstage.Theyneverfinishedtheproject,thecompanygotbust,theinvestorslostmoney,IlostsomeearnedincomeandthejobHowever,Istill,20yearslater,haveaveryexpensiverobotmotorandencodertheywantedtotrowawaywiththerestofgarbish
Zork
March24,2010at7:05pm
Reply[]5StagesofProgrammerIncompetenceyieldthought.ShareandEnjoy:[]
forthoseofyoubeginingtobudinyourcodewritery.|Spacemadness
March24,2010at8:38pm
ReplySincewhenJavascriptandPHPareprogramminglanguages?
Justbeingmean,evenPHPisOOnow
remusdragos
March24,2010at9:12pm
ReplyAmazingpost!IwouldliketothinkIampastthenewbiephasebuteverynewbugsometimesmakesmescaredwhatifitallcomescrumblingdown?Butthenanewissuealsobringsupnewsolutions,newideasandnewthingslearnt.Iguessthephasesarentseparatedbywallsofstoneafterall.
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 33/40
Imgoingtobookmarkthisandcomebacktocheck
Debby
March25,2010at8:56am
ReplyILOLdatHisauraofmeasured,unflappablecalmthatmakesitclearthateventhedirestemergencywontmakehimworkanyfasterWow,thisisME!
zoxell
March25,2010at5:16pm
ReplyHavingreadallyourcomments,athoughtcomestomindProgrammersarethewindbeneathourwings.Sure,Iwantthebestvehicleonthemarket;butIjustwanttogetinit,driveit,andenjoyitwithouthavingtothinkaboutwhatallittooktobuilditthesamewaykidswanttoeattheirfavoritemealwithoutgivingthoughttowhatallwentintoitspreparation.SoIguessthismakesyalltheroadforourrubber?OrmasochisticperfectionistsoperatingonBloomssixlevelsallatonce,ifthatspossible?Octopusmodedoescometomind.Plus,yallsperceptionoftheworldissouniquethatyouuseyourownlanguagetocommunicate.Bottomline?Yourprogramminggeniusregardlessofthelevelyoureongivesmycreativityfreedomofexpression.Sothanks!
DeliLanoux,Ed.D.
March26,2010at11:56am
Reply[]IwaslearningtoprogramsomeonetoldmethatIshouldtrytoreadasmuchcodeaspossible.BuddinggeniusthatIwas,Ithoughtthiswasadviceforstupidpeoplewhoneededtolearnfromtheirbetters.I[]
OnTheFearofReadingCodeyieldthought
March26,2010at3:02pm
Reply[]FivestagesofprogrammerincompetenceInterviewswithaverageprogrammersSoftwareEngineeringRadioepisodeonClojure[]
WeekendmiscellanyTheEndeavour
March26,2010at5:33pm
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 34/40
ReplyAgoodbreakdown.Asopposedtoapurelylinearprogression,Ifindthesetobecyclical.IcomeroundbasedonthecompanythatIamat,learninganewlanguage,workingonanewprojectorjusttheseasons.Irecognizethattree
AmberShah
March26,2010at11:33pm
Reply[]5StagesofProgrammerIncompetence[]
Destillat#16|duetsch.infoOpenSource,Wet,Web,Software
March27,2010at11:00am
Replynicesite..veryinteresting!!ineedupdatesfromyou.
cahbagoes
March29,2010at8:54am
ReplyThankYou!!!
Imnotatprofi butimlearningtobesomekindof
whiteHacker
usuallyIknowwheremaybeerrorinthedeveloperstools
haveanicedays
D.A.B
dB
March29,2010at8:56am
Reply[]https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/[]
hackification.comRediscovertheJoyofCoding::WeeklyLinksMicrosoft,WindowsPhone7,GeneralCoding,andabitofhumour
March29,2010at8:24pm
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 35/40
ReplyLovedreadingitman!Goodwriteindeed.Sonomatterwhatstageyoureat,youstillremainincompetentinsomewayorother,thatisthebeautyofitbeingincompetentandworkingtowardscompetenceandthenrealizinganotherlevelofincompetenceinthemidstoffreshlyachievedcompetence!Abstract..hmm!?
UmeshAdtani
March30,2010at4:33am
Reply[]IwaslearningtoprogramsomeonetoldmethatIshouldtrytoreadasmuchcodeaspossible.BuddinggeniusthatIwas,Ithoughtthiswasadviceforstupidpeoplewhoneededtolearnfromtheirbetters.I[]
ProgrammerblogofsomekindSomesummarywhichintimatesthetoneandcontentoftheblog.
April1,2010at1:41am
Reply[]Thesearticleisobviouslyanalyzethesepeople.https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/[]
TheseProgrammersBrainstormonComputerScienceRelatedThings
April1,2010at6:54pm
Reply[]The5StagesofProgrammerIncompetencefrom:HackerNewson26Mar2010[]
SharedItemsonApril7,2010
April7,2010at9:02am
Reply[]}Thisdescriptionisntonlyaptforprogrammers,Iwouldapplyittoengineerswhoregularlywrite[]
TalesfromtheEngineeringFloor5StagesofProgrammerIncompetenceWataMalaysianOilandGasEngineer
April16,2010at10:03pm
Reply[]2010inProgramowanie,PrzemyleniaRegeditnaswoimblogunapisanotk,wktrejpodaadresciekawegoartykuunatematetapwprzejciowychdotyczcychkadego[]
Cojestnajwaniejszewprogramowaniu?MorituriussDevlog
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 36/40
June20,2010at7:21am
Reply[]5StagesofProgrammerIncompetenceyieldthought[]
linksfor20100319|Acervus
June20,2010at9:08pm
ReplyNodatall.
OlafDoschke
June24,2010at10:35am
Reply[]https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/vara2a_config=a2a_config||{};a2a_config.linkname=5StagesofProgrammerIncompetence;a2a_config.linkurl=http://aronze.com/2010/06/28/5stagesofprogrammerincompetence/";Filedunder:blahblah,devLeaveacommentComments(0)Trackbacks(0)(subscribetocommentsonthispost)[]
5StagesofProgrammerIncompetence|aronze
June28,2010at5:09am
ReplyThatsagreatbreakdown.Iamjustanewbie.=)
TomWelling
July6,2010at2:36am
Reply[]madeitrightwasmyinnocencebackwhenIknewnothingaboutprogramming(i.e.whenIthoughtIkneweverything)longerlivedprogramsstartedaccruingoddifstatementsandshoehornedadditionalfunctionality[]
MakeExceptionsyieldthought
July29,2010at2:37pm
ReplyAccordingtoyourdivisions,Ibelongtotheveteranclassrightnow.Iwentthroughtheenthusiasticnewbieandabstractionfreak.
KoutheirAttouchi
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 37/40
July30,2010at8:39am
Reply[]5StagesofProgrammerIncompetenceyieldthought[]
DailyDigestSeptember4th
September4,2010at6:11pm
ReplyWow!Realycool.ItmademeremembertheHowtokilladragonandsavethedamseltheprogrammersway.
Ifindthislinkwiththe(maybetheoriginalfromthebrazilianversionwastranslated)Englishversion:http://generalforums.com/t69877/
RCDMK
September12,2010at5:16pm
ReplyNicethanksforthelink!
coderoom
September21,2010at7:15am
ReplyYoualsoforgottheframeworkdude.
Distinguishingcodefeatures:Addslotsofframeworkstohis/herprojecttosolvesimpleproblems.Theprojectisoverloadedwithcoolopensourceprojectsdownloadedfromanopenrepositories.
Mistakenbelief:Youdonthavetospendyourtimecreatingownstuff;othersdidalreadycreatedthisandthosepeoplealwayscodebetter+moreoptimized.Hetriesthousandsofplugins,addonsandframeworks.Healsospendsextratimetofigureouthowtogetthemostoutoftheframework,evenifitisnotneededyet.Heneedtoreadthefulldocumentationbeforehecandecideiftheframeworkreallyfithisneeds.Afterhalfadaygoogling;hehasgotagreatnewframeworkwhichheprobablycoulduseinthefuturetoo,butforthenextprojectthereisanotherframeworkwaiting.
Mostlikelytosay:OhNoyoucreatethatcodeyourself?Everythingisalreadycreated.Theremustbeaframeworkforthat.Wait;letmeGooglethatforyou.
Mark
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 38/40
September20,2010at8:43pm
ReplyAworthyaddition
coderoom
September21,2010at7:15am
ReplyIrecallanotheraspectoftheBuddingGeniusstage(solongago):enthusiasticallystartingandrunninglunchnlearngroupstotacklenewlanguagesandtoolswewerediscouragedfromusinginourlegacyshopsuntilwewereabruptlylaidoffforbeingoldlanguagecodersandreplacedwithanewgeneration.Alwaysaslowlearner,Ididthatthreetimesatthreedifferentcompanies!heeheegoodtimes
Greta
September20,2010at10:04pm
ReplyArgh!Hopeyouvefoundaclassplacetoworknow,atlast!
coderoom
September21,2010at7:16am
Reply[]https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/[]
5StagesofProgrammerIncompetencearg3.net
January24,2011at3:58am
ReplyIdontthinkthatIpassedoneofthosestages.Coz,Ireallydontlikeprogrammingitsjustthat,Ireallyneedtoloveit,tochallengemyselfandtoprovethatIcanalsobeagoodprogrammeroneofthisdays.ImanOracleDeveloperbyprofessiontoday.Because,ProgrammingisaPRACTICE,notjustaJOBbadthing,theauthorofthatsayingisunknown.
faith
February25,2011at5:59am
ReplySotrue!Imonprogrammingforabout5years.HeadingtoVeteranaftergoingthroughnewbie,buddingandabstract
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 39/40
ThinH
July15,2011at4:21am
Reply[]theideathatbuildingthenextflashsiteshouldbeeasierandquicker.ThisprojectleadmetomyAbstractionFreakPhaseasaprogrammerasIwasquicklyoverwhelmedwithabstraction.ThelatestversionfoundonGitHub[]
WhatAS3Projecttofocusonnext?|DoesFlash?|AS3Blog
January17,2012at10:09pm
Replyivebeeninthismesssince1989whatidliketoknowiswhendidyouhityourburnouts?
RobinGist
September2,2012at4:31pm
ReplyIvebeenprogrammingforatouchover20years,professionallyformorethanadecade.Ihaventhitanyburnouts(yet!);Ithinkthatsaysmoreaboutmyemployerandenvironmentthanmepersonallythough.
coderoom
September8,2012at5:24am
Reply[]5StagesofProgrammerIncompetence[]
WeeklyInterestingFinding(08/27/201209/03/2012)Onthewaytobegreat
September6,2012at3:30am
Reply[]mostamazingiPhoneyet5StagesofProgrammerIncompetenceyieldthoughtCoilingUnattachedRope|HowtoCoilUnattachedRope|RopeCareKnotsTweet!function(d,s,[]
FridayLinks#219|BlueOnionSoftware*
September8,2012at12:22pm
ReplyVerysimilartotheHinduVedas.Ooops,IguessthatrevealswhichstageIamat.
SheltonSmith
-
6/29/2015 5StagesofProgrammerIncompetence|yieldthought
https://coderoom.wordpress.com/2010/03/19/5stagesofprogrammerincompetence/ 40/40
June6,2014at1:18pm
Reply[]heressomethingIcanrelateto:5StagesofProgrammerIncompetence.IdputmyselfintheVeteran[]
WhatStageAreYouIn?
May5,2015at3:53am
Reply
CreateafreewebsiteorblogatWordPress.com.TheJournalistv1.9Theme.