Esempio:
Quando ho iniziato a programmare con Ruby on Rails, dopo tre settimane ho avuto il mio primo piccolo sito Web, dopo altre tre settimane un prototipo per un cliente, dopo altre sei settimane un sito Web completamente funzionante online. Durante questo periodo gli sviluppatori di Rails con esperienza presso la società che ho lavorato sono stati di grande aiuto per sistemare le cose. Sebbene l'apprendimento della lingua e del framework fosse la parte più piccola.
Dopo alcuni mesi di esperienza con Rails e contatti permanenti con la community di Rails (mailing list, forum ...) conoscevo Rails al suo interno. Conoscevo tutte le "migliori pratiche", sapevo qual è il modo migliore di fare le cose, non solo come farlo funzionare. Conoscevo tutti gli strumenti che sono importanti e sono stato in grado di confrontare vantaggi e svantaggi di tali strumenti in determinate circostanze. Ciò includeva esperienze con varie aree della programmazione web, come ricerca full text in database, sicurezza, sistemi di pagamento online, REST, CRUD, controllo della versione e tutte le altre parole d'ordine del business web.
Quindi, quando un cliente ha chiesto, se potessimo implementare una determinata funzionalità, sono stato in grado di dirgli cosa potevamo fare al riguardo, dicendogli invece che devo vedere se è possibile. Sapevo quali strumenti potevo usare e quanto mi sarei dovuto permettere di scrivere il mio codice.
Se un nuovo programmatore implementasse qualcosa, avrei potuto segnalare rischi per la sicurezza come le iniezioni di SQL. Se volesse implementare una funzione, avrei potuto dirgli quali strumenti utilizzare e se altri sviluppatori nella community di Rails li consideravano attendibili o se avrebbe dovuto aspettarsi dei problemi.