Stackoverflow se realiza en .Net . Entonces, nada malo sobre C # .Net o la tecnología de Windows.
Mi primer inicio fue en C # .net porque a) todos los fundadores están familiarizados con C #. b) Visual Studio fue y sigue siendo muy amigable para el desarrollador para la depuración, etc.
El inicio fue un fracaso masivo por razones comerciales y tecnológicas.
Independientemente de la tecnología que elija, debe considerar si es hábil / lo suficientemente bueno como para usar esa tecnología para lanzarla en X años.
Como puede ver, el criterio que teníamos arriba no era lo suficientemente estricto. No teníamos idea de cuánto tiempo necesitamos para construir la cosa. Simplemente estamos familiarizados con C # .Net, eso es todo.
Ninguno de nosotros tiene experiencia en construir algo cercano a lo que queríamos construir.
Después de un tiempo, las tarifas del servidor, etc., nos hacen deshacernos de C # y reescribir todo en php. Esa es otra historia y otro error en cuanto a negocios.
El punto es que esta tecnología que vas a usar, NO tiene que ser genial, vanguardista. Quieres construir una aplicación web. Así que elige uno que te de la mejor oportunidad . ¿Qué te da la mejor oportunidad?
Elija la tecnología que las personas que realizan la mayor parte de la programación tienen experiencia REAL construyendo una aplicación igualmente compleja ANTES
Por favor lea lo anterior 10 veces.
Si tuviera que dirigirme a mi yo más joven de hace 3-4 años, y él diría: "Pero no tengo experiencia en hacer nada de la complejidad que tengo en mente EN CUALQUIER IDIOMA. Entonces, ¿cómo elijo?"
La respuesta de $ 50,000 dólares es (sí, eso es lo que desperdicié aprendiendo de mis errores):
Elija uno que sea más indulgente con su desarrollo de aprendizaje.
¿Cómo definimos perdonar ?
Por ejemplo, .Net depende del servidor de Windows. Y los servidores de Windows son más caros que los servidores de Linux. Eso es un hecho. Incluso si tiene las licencias de Bizspark, es mejor que se asegure de tener en cuenta el ingreso de dinero una vez que expiren sus licencias.
NO asuma que podría aprender C # .net en 3 años. Es difícil de decir. Para mí, simplemente no funcionó.
Intenté RoR antes. Una vez leí un artículo sobre 2 banqueros de inversión con experiencia en programación CERO que tuvo éxito con alguna aplicación web sobre viajar en el programa Techstars.
Ellos usan RoR.
Tengo experiencia en programación. Pero RoR simplemente no funcionó para mí.
Compré libros de Amazon, etc. Lo intenté. En serio, di lo mejor de mí.
Finalmente me decidí por Cakephp. Es lo suficientemente bueno para mí tener la mejor oportunidad de relanzar otra aplicación web. Perdonando lo suficiente como para aprender a mi propio ritmo.
Además, al igual que encontraste mejores novias no porque sean mejores, sino porque eres una mejor persona después de más experiencia, quizás, también había mejorado como programador
Así que no se trata de un mejor marco / lenguaje. O que Cakephp es el mejor que he usado. Tal vez, finalmente, me he convertido en un programador lo suficientemente bueno como para construir la aplicación web que tenía en mente.
Se trata de lo que funciona mejor para que te acerques más al lanzamiento.
Oh, aquí hay un regalo de promoción.
Después de 6 meses, cuando debuta con una versión alfa o beta privada y recibe comentarios de los clientes, y tiene ganas de reescribir todo en un nuevo idioma, ¿debería?
Responder:
NUNCA. NUNCA. NUNCA.
Hay un artículo de JoelOnSoftware sobre la reescritura de software versus el software de refactorización. Soy demasiado vago para encontrarlo.
Él sugiere lo mismo.
Tómelo de alguien que eligió la tecnología incorrecta y luego reescribió todo en php (sin marco) y luego volcó el inicio al final. Y gastó $ 50,000 en el proceso.
Es como el matrimonio. Elija una tecnología y hasta la muerte haga su inicio y la parte de tecnología.
Bien, exagero, pero solo porque es demasiado fácil pensar que todas sus situaciones de programación pueden resolverse con otro lenguaje / marco. Al igual que pensar que tendrías un mejor matrimonio al cambiar a otra persona. Es mucho mejor, aunque más trabajo trabajar en usted o en sus prácticas de programación .
Buena suerte. Y sigue aprendiendo. Por el bien de tu cordura, elimina las características al mínimo absoluto. Vaya a google para un producto mínimo viable (MVP).
Eso es más importante que la tecnología que elijas.
Así que dedique el tiempo adecuado a la planificación / diseño de este MVP.
La planificación es importante. Los planes no lo son. Es posible que deba deshacerse de sus planes después de pasar 4 meses planificando este MVP porque necesita reaccionar ante las circunstancias cambiantes o la competencia.
Esta bien. Los 4 meses de planificación no se desperdiciaron.
Ahora tendría más conocimiento de dominio del que tenía antes de los 4 meses.
Por lo tanto, incluso si se trata de un plan rediseñado rápidamente en esta etapa, debería ser notablemente mejor que su primer borrador hace 4 meses.
¡Buena suerte!