Ci sono molte complicazioni con lo switching stack, ma non sono insormontabili. Ecco cosa penso (il mio lavoro giornaliero è .NET, tutto il resto è open source).
Costo
Questo è il motivo per cui la maggior parte delle persone desidera passare all'open source o almeno a .NET. Quasi sempre costa di più configurare un'infrastruttura server decente per ospitare .NET. Se si utilizza un'infrastruttura cloud standard, la maggior parte delle società di hosting addebiterà da 3 a 10 volte di più al mese per i piani di base.
Dove diventa difficile misurare i costi di sviluppo a lungo termine su uno stack che non conosci ancora rispetto al costo opportunità di sviluppo su uno che fai. Tuttavia, se sei come un sacco di bootstrap, non hai molti soldi da spendere per l'hosting del server, e deve essere il più economico possibile.
Ad esempio, ho speso circa $ 150 il mio primo anno in hosting e le spese per la larghezza di banda per 1 piccolo server mentre stavo lavorando per impostare la mia attività. Se avessi scelto di andare con un server Microsoft, sarebbe costato di più perché semplicemente non consentono un numero limitato di server. E, SQL Server è super costoso. Sarebbe costato quasi $ 2000. Un server Ubuntu comparabile può costare circa $ 500.
Molto dipende dalla tua capacità di adattarsi e imparare un nuovo stack. Non è facile, perché come startup è molto più che imparare un linguaggio di programmazione. Devi configurare i server, gestire l'infrastruttura, i database, tutto. Ci sono servizi là fuori che offrono Platform as a Service e possono estorcere molta di questa gestione per te, ma spesso sono più soldi. Dovrai determinare se ne vale la pena.
Trasferimento di conoscenze
Dici che speri di adottare le migliori pratiche che hai imparato da .NET e trasferirle in un altro stack. La mia esperienza è che oltre alle tattiche di altissimo livello, stai praticamente buttando via qualsiasi cosa tu sappia su .NET Web Dev quando passi a qualcos'altro. Ci sono troppi pezzi, culture diverse e approcci diversi per ottenere davvero tanto riutilizzo.
Questa non è una brutta cosa però. Dovresti davvero imparare altri stack, poiché metteranno alla prova qualsiasi cosa tu sappia attualmente e ti renderanno un programmatore migliore.
Sommario
La mia opinione è che se sei disposto a scambiare un inizio più lento per uno stack che è più facile da gestire e scalare, e ad un prezzo inferiore, dovresti scegliere uno stack alternativo. Altre persone potrebbero dire che i costi del software non sono realmente il grosso costo, ma a meno che tu non abbia un finanziamento, un sacco di soldi risparmiati o sei disposto a prendere in prestito molti soldi, questo non è proprio vero per niente. È costoso acquistare tutto il software e l'infrastruttura server in anticipo, e se non hai i soldi, non puoi pagare per questo.