Nel nostro post precedente abbiamo visto come ogni lingua in un ambiente di sviluppo multilingue abbia una propria cultura e come questa cultura possa trascendere in altre lingue. Questo prestito di filosofia è un ottimo modo per migliorare sia le capacità di linguaggio parlato che quelle di programmazione.
L'uso del linguaggio di programmazione giusto per il compito giusto può essere una risorsa potente. Ogni linguaggio di programmazione è progettato per uno scopo specifico e presenta una serie di vantaggi. Noi di Syneto investite molto nella scelta della lingua giusta per il compito da svolgere.
Un aspetto molto importante, ma anche molto sfuggente, di qualsiasi strumento è la sua influenza sulle abitudini di chi si addestra al suo utilizzo. Se lo strumento è un linguaggio di programmazione, questa influenza è, volenti o nolenti, un'influenza sulle nostre abitudini di pensiero.
- Edsger Dijkstra
Quando dobbiamo manipolare catene di comandi UNIX, usiamo gli script di shell. Quando abbiamo bisogno di una complessa interazione tra client e sistema, usiamo PHP, Ruby o Python. Quando abbiamo bisogno di demoni scriptati di lunga durata, ci tuffiamo nel Perl. Quando abbiamo bisogno di manipolare l'hardware a un livello intimo, usiamo C o C++.
I nostri sviluppatori di software sono persone veramente poliglotte. Non solo parlano diverse lingue parlate, ma conoscono anche diversi linguaggi di programmazione. Ciò pone i linguaggi di programmazione in una prospettiva diversa. Non sono più percepiti come linguaggi, ma piuttosto come strumenti complessi per svolgere compiti specifici.
Siamo, e stiamo cercando, sviluppatori di software che possano diventare proattivi in qualsiasi linguaggio di programmazione in circa un mese. Non si tratta di uno sforzo particolare o di un QI richiesto per farlo. È solo un modo diverso di pensare alla programmazione, una prospettiva diversa sul proprio lavoro di sviluppatore di software.