Perché Linux è usato principalmente per lo sviluppo di software?

Il principale impiego di Linux non è come workstation per sviluppatori, ma come sistema operativo per server. È certamente il sistema operativo più dominante per i server, e non sarei sorpreso di apprendere che è più ampiamente utilizzato lì di tutti gli altri sistemi operativi messi insieme, anche se non ho i numeri per sostenerlo. Linux domina anche su mobile, grazie ad Android, ed è il principale OS usato per i super computer.

Tuttavia, Linux è più ben rappresentato sui computer desktop come workstation per sviluppatori che per qualsiasi altro tipo di lavoro desktop, e ci sono probabilmente poche ragioni per questo.

  • Unix è stato originariamente progettato come un ambiente di programmazione, e i sistemi con quel patrimonio offrono ancora un piacevole flusso di lavoro di sviluppo. La chiave è pensare all'intero sistema operativo come all'IDE, piuttosto che a un singolo programma. È vero che anche macOS offre un flusso di lavoro Unix ragionevolmente buono per i programmatori.
  • Assumendo che stai distribuendo il tuo codice in un ambiente Linux di qualche tipo (cioè virtualmente tutto il software di backend), usare Linux per lo sviluppo significa che il tuo ambiente locale può essere più vicino all'ambiente di produzione in termini di come il software si comporterà.
  • Linux è una buona "corrispondenza culturale" per la maggior parte dei programmatori e penso che questa potrebbe essere la ragione più importante. I programmatori sono quasi universalmente degli armeggiatori, e Linux è il sistema operativo per armeggiare. Puoi aprire tutto e vedere cosa c'è dentro, puoi personalizzare tutto, e puoi adattare tutto alle tue preferenze o al tuo caso d'uso. Questa qualità non è strettamente necessaria per lo sviluppo, ma è qualcosa che gli sviluppatori di solito apprezzano più della maggior parte degli utenti.