Select a country…Åland IslandsAfghanistanAlbaniaAlgeriaAndorraAngolaAnguillaAntarcticaAntigua and BarbudaArgentinaArmeniaArubaAustraliaAustriaAzerbaijanBahamasBahrainBangladeshBarbadosBelarusBelauBelgiumBelizeBeninBermudaBhutanBoliviaBonaire, Saint Eustatius and SabaBosnia and HerzegovinaBotswanaBouvet IslandBrazilBritish Indian Ocean TerritoryBritish Virgin IslandsBruneiBulgariaBurkina FasoBurundiCambodiaCameroonCanadaCape VerdeCayman IslandsCentral African RepublicChadChileChinaChristmas IslandCocos (Keeling) IslandsColombiaComorosCongo (Brazzaville)Congo (Kinshasa)Cook IslandsCosta RicaCroatiaCubaCuraÇaoCyprusCzech RepublicDenmarkDjiboutiDominicaDominican RepublicEcuadorEgyptEl SalvadorEquatorial GuineaEritreaEstoniaEthiopiaFalkland IslandsFaroe IslandsFijiFinlandFranceFrench GuianaFrench PolynesiaFrench Southern TerritoriesGabonGambiaGeorgiaGermanyGhanaGibraltarGreeceGreenlandGrenadaGuadeloupeGuatemalaGuernseyGuineaGuinea-BissauGuyanaHaitiHeard Island and McDonald IslandsHondurasHong KongHungaryIcelandIndiaIndonesiaIranIraqIsle of ManIsraelItalyIvory CoastJamaicaJapanJerseyJordanKazakhstanKenyaKiribatiKuwaitKyrgyzstanLaosLatviaLebanonLesothoLiberiaLibyaLiechtensteinLithuaniaLuxembourgMacao S.A.R., ChinaMacedoniaMadagascarMalawiMalaysiaMaldivesMaliMaltaMarshall IslandsMartiniqueMauritaniaMauritiusMayotteMexicoMicronesiaMoldovaMonacoMongoliaMontenegroMontserratMoroccoMozambiqueMyanmarNamibiaNauruNepalNetherlandsNetherlands AntillesNew CaledoniaNew ZealandNicaraguaNigerNigeriaNiueNorfolk IslandNorth KoreaNorwayOmanPakistanPalestinian TerritoryPanamaPapua New GuineaParaguayPeruPhilippinesPitcairnPolandPortugalQatarRepublic of IrelandReunionRomaniaRussiaRwandaSão Tomé and PríncipeSaint BarthélemySaint HelenaSaint Kitts and NevisSaint LuciaSaint Martin (Dutch part)Saint Martin (French part)Saint Pierre and MiquelonSaint Vincent and the GrenadinesSan MarinoSaudi ArabiaSenegalSerbiaSeychellesSierra LeoneSingaporeSlovakiaSloveniaSolomon IslandsSomaliaSouth AfricaSouth Georgia/Sandwich IslandsSouth KoreaSouth SudanSpainSri LankaSudanSurinameSvalbard and Jan MayenSwazilandSwedenSwitzerlandSyriaTaiwanTajikistanTanzaniaThailandTimor-LesteTogoTokelauTongaTrinidad and TobagoTunisiaTurkeyTurkmenistanTurks and Caicos IslandsTuvaluUgandaUkraineUnited Arab EmiratesUnited Kingdom (UK)United States (US)UruguayUzbekistanVanuatuVaticanVenezuelaVietnamWallis and FutunaWestern SaharaWestern SamoaYemenZambiaZimbabwe
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Originally Answered: How do I know when I have a good programmer?
It’s actually quite difficult as even “experienced” programmers can remain deluded for years about how much they suck. But here are a few good signs and bad signs that may help you:
S/he reads a lot of programming books and blogs.
S/he has a number of completed and actively maintained projects.
S/he actively contributes to one or more open source projects.
S/he knows more than one non-markup/stylesheet language.
S/he is frequently playing with new technologies, e.g. new languages, new libraries/frameworks, new datastores, new messaging systems, etc.
S/he is active in the programming community, either by participating in conferences, contests, hackathons, meetup/user groups, or online communities or perhaps even operates hir own programming blog.
S/he spends at least as much time reasoning through a problem on paper or whiteboard as actually typing and implementing the solution.
S/he makes effective use of build automation and other time-saving techniques.
Messy, poorly formatted/commented code
Doesn’t use a version control system
Never reuses code
Uses a single programming language or solution stack for every single problem
Has never heard of testing
Doesn’t have a single project up on Github, SourceForge, Google Code or any other public repository
Views programming purely as work and doesn’t do any programming-related activities outside of work
Writes very long single functions (stuffs all code into index.php or main()) often comprised of long series of if/elseif statements
Poorly named functions/variables
Has never heard of or used architectural patterns like MVC, MVP, MVVM, and the like
Always has to “roll-hir-own” and refuses to ever use pre-existing solutions
Though, ultimately, it still takes a skilled programmer to be able to accurately evaluate another programmer, which is why it’s so important to get that first good programmer on your team.
You must login or register to add a new answer.