Stackoverflow viene eseguito in .Net . Quindi niente di male sulla tecnologia C # .Net o Windows.
Il mio primo avvio è stato in C # .net perché a) tutti i fondatori hanno familiarità con C #. b) Visual Studio era ed è ancora molto adatto agli sviluppatori per il debug, ecc.
L'avvio è stato un enorme fallimento per motivi di business e tecnologia.
Qualunque tecnologia scegliate, è necessario considerare se si è abbastanza abili / abbastanza bravi da usare quella tecnologia per lanciarsi in X anni.
Come puoi vedere, i criteri di cui sopra non erano abbastanza rigidi. Non avevamo idea di quanto tempo ci sarebbe voluto per costruire la cosa. Abbiamo solo familiarità con C # .Net che è tutto.
Nessuno di noi ha esperienza nella costruzione di qualcosa di simile a ciò che volevamo costruire.
Dopo un po ', i costi del server, ecc. Ci fanno abbandonare C # e riscrivere il tutto in php. Questa è un'altra storia e un altro errore dal punto di vista commerciale.
Il punto è questa tecnologia che stai per usare, NON deve essere bella, spigolosa. Vuoi creare una webapp. Quindi scegline uno che ti dia la migliore possibilità . Cosa ti dà le migliori possibilità?
Scegli la tecnologia che le persone che eseguono la maggior parte della programmazione hanno ATTUALE esperienza nella costruzione di un'applicazione altrettanto complessa PRIMA
Si prega di leggere le 10 precedenti.
Se dovessi rivolgermi al mio io più giovane di 3-4 anni fa, e lui direbbe: "Ma non ho esperienza facendo nulla della complessità che ho in mente IN QUALSIASI LINGUA. Quindi, come faccio a scegliere?"
La risposta di $ 50.000 dollari è (sì, questo è quanto ho sprecato a imparare dai miei errori):
Scegli quello che è più tollerante per il tuo sviluppo dell'apprendimento.
Come definiamo il perdono ?
Ad esempio .Net si affida al server Windows. E i server Windows sono più costosi dei server Linux. Questo è un dato di fatto. Anche se disponi delle licenze di Bizspark, assicurati di dover considerare la possibilità di portare denaro una volta scadute le licenze.
NON dare per scontato che sarai in grado di imparare C # .net in 3 anni. È difficile da dire. Per me, semplicemente non ha funzionato.
Ho provato RoR prima. Una volta ho letto un articolo su 2 investment banker con esperienza di programmazione ZERO riuscito con alcune webapp sui viaggi nel programma Techstars.
Usano RoR.
Ho esperienza di programmazione. Ma RoR non ha funzionato per me.
Ho comprato libri da Amazon, ecc. Ci ho provato. Seriamente, ho dato il massimo.
Alla fine ho optato per Cakephp. È abbastanza buono per me avere le migliori possibilità di riavviare un'altra webapp. Perdonami abbastanza per imparare al mio ritmo.
Inoltre, proprio come hai trovato ragazze migliori non perché sono migliori, ma perché sei una persona migliore dopo più esperienza, forse sono anche migliorato come programmatore
Quindi non si tratta di qual è un framework / linguaggio migliore. O che Cakephp è il migliore che abbia mai usato. Forse sono finalmente diventato un programmatore abbastanza bravo da creare la webapp che avevo in mente.
Si tratta di ciò che funziona meglio per te per avvicinarti al lancio.
Oh ecco un omaggio.
Dopo 6 mesi, quando fai il debutto con una beta alfa o privata e ricevi il feedback dei clienti e hai voglia di riscrivere il tutto in una nuova lingua, dovresti?
Risposta:
MAI. MAI. MAI.
C'è un articolo di JoelOnSoftware sulla riscrittura del software rispetto al software di refactoring. Sono troppo pigro per trovarlo.
Suggerisce lo stesso.
Prendilo da qualcuno che ha scelto la tecnologia sbagliata e poi ha riscritto il tutto in php (senza framework) e poi ha scaricato l'avvio alla fine. E abbiamo speso $ 50.000 nel processo.
È come il matrimonio. Scegli una tecnologia e fino alla morte fai la tua startup e la parte tecnologica.
Ok, esagero, ma solo perché è fin troppo facile pensare che tutte le tue situazioni di programmazione possano essere risolte da un altro linguaggio / framework. Proprio come pensare che avresti un matrimonio migliore cambiando un'altra persona. È molto meglio però lavorare di più su te stesso o sulle tue pratiche di programmazione .
In bocca al lupo. E continua ad imparare. Per favore, per la tua sanità mentale, togli le funzionalità al minimo indispensabile. Vai su Google per il prodotto minimo redditizio (MVP).
Questo è più importante della tecnologia che scegli.
Quindi dedica del tempo adeguato alla pianificazione / progettazione di questo MVP.
La pianificazione è importante. I piani non lo sono. Potrebbe essere necessario abbandonare i tuoi piani dopo aver trascorso 4 mesi a pianificare questo MVP perché devi reagire alle circostanze mutevoli o alla concorrenza.
Va bene. La pianificazione di 4 mesi non è andata sprecata.
Ora avresti più conoscenza del dominio rispetto a prima dei 4 mesi.
Quindi, anche se in questa fase è un piano ridisegnato in fretta, dovrebbe essere nettamente migliore della tua prima bozza 4 mesi fa.
In bocca al lupo!