Preguntas técnicas más comunes para empresas emergentes en etapa inicial

A muchas personas les gusta elegir cosas técnicas relacionadas con las primeras etapas de las startups, por ejemplo, qué marco usar, cuánto tiempo llevará crear una aplicación o un sitio web, si debo contratar o subcontratar. Decidí organizar mis respuestas a las preguntas técnicas más comunes en esta publicación:

  • No subcontrate su producto principal . Subcontratar a una agencia digital es la mejor manera de gastar su dinero rápido y, por lo general, sin resultados.
  • Usar marcos , no escriba cosas triviales como analizadores de URL desde cero.
  • Use las soluciones disponibles para sus componentes secundarios. Cosas como:CMS, blog, análisis, página de destino, foro, control de versiones, seguimiento de errores/comentarios de clientes, gestión de proyectos, etc.
  • Utilice PaaS o IaaS. No use IaaS a menos que realmente lo necesite, por ejemplo, cuando el costo de PaaS sea prohibitivo;
  • Haga de los dispositivos móviles su primera iniciativa, siempre y cuando tenga sentido para su negocio; ¡ni siquiera construyas un sitio web si la aplicación móvil es tu pan y mantequilla!
  • Fragmento de código:Aprende a programar

  • Usar API de conexión social para una incorporación de usuarios sin problemas, la mayoría de los primeros usuarios probablemente tengan al menos cuentas de Facebook o Twitter; no les haga escribir sus correos electrónicos y recordar contraseñas.
  • Usar el lenguaje de programación más apropiado no confíe en el consejo de su amigo geek "gurú" de que el lenguaje de programación es una cuestión de preferencia personal, elegir PHP, o que Ruby on Rails y Node.js son solo una moda pasajera.
  • No confíes demasiado en los desarrolladores remotos. A menudo conduce a una falta de comunicación; sus equipos trabajarán más tiempo, tendrán que gastar más tiempo y dinero; Además, no todos tienen la disciplina suficiente para trabajar de forma remota sin interacción social y supervisión directa.
  • No confíes demasiado en los desarrolladores a tiempo parcial. Tomará más tiempo ejecutarlo, el código será menos eficiente debido a las distracciones y, como resultado, será más difícil de mantener y más costoso de ejecutar en el futuro.
  • Aprender programación. Los cofundadores de negocios sin ningún conocimiento de programación tendrán dificultades para comprender el equilibrio entre las características y los recursos disponibles; espere reuniones de sprint más largas y un salto de confianza entre los técnicos y los empresarios.
  • No tener más de un idioma para su producto central en una etapa de prototipo porque el código no es un activo, sino una responsabilidad y mantener una base de código fragmentada podría conducir a un desastre.
  • Comience desde cero para su producto principal o refactorice su código a menudo si usted o su equipo aún están aprendiendo un lenguaje o un marco; cuanto más tiempo conserves el antiguo código espagueti, más difícil será volver para arreglarlo más tarde.
  • Use el desarrollo basado en pruebas y la programación en pares.
  • Usar la ayuda o los comentarios de compañeros y mentores de compañeros fundadores, amigos programadores en reuniones y en la oficina.
  • Involucrar a los desarrolladores en el proceso de desarrollo de clientes. A la gente de la tecnología le encanta construir cosas por el simple hecho de construir algo complicado. Es muy difícil practicar la metodología Lean Startup, porque necesitas mucha autodisciplina. ¡Y es tan tentador ir a tu sótano durante 6 meses, a tu modo nirvana de hacker/codificación, en lugar de hacer interminables entrevistas con clientes, páginas de destino, maquetas, prototipos en papel y sitios web de rostros! El problema es que normalmente terminará con otra aplicación o sitio web inútil. Tuve un phat similar experiencia de inicio con lo que luego se convirtió en un proyecto de código abierto http://openList.co.

Lo mejor de las ventajas web para el desarrollo web ágil, las startups y las startups Lean Startup:

  • Frameworks de JavaScript:jQuery, Backbone.js, Ember.js, Knokout.js, SproutCore;
  • Lenguajes y marcos:Ruby on Rails, Express y Meteor para Node.js;
  • CMS:Drupal, WordPress;
  • Blogs:WordPress, Tumblr;
  • Páginas de destino:LaunchRock, KickoffLabs o Unbounce, más sobre esto en mi publicación LaunchRock vs KickoffLabs,
  • Foros:PHPBB;
  • Control de versiones:Git, GitHub, BitBucket;
  • Seguimiento de errores/comentarios de clientes:UserVoice, BugHerd;
  • Gestión de proyectos:Pivotal Tracker, Asana, JIRA, Basecamp;
  • CRM:Salesforce, Highrise;
  • PaaS:Heroku, Windows Azure, Nodejitsu;
  • IaaS:Amazon Web Service, Rackspace y Joyent.

Si le gusta esta publicación y desea obtener más información sobre cómo crear su aplicación web o móvil utilizando la última tecnología y prácticas ágiles, consulte mi nuevo libro sobre cómo llevar su idea a un prototipo con JavaScript, Node.js y MongoDB:creación rápida de prototipos con JS.