Iniciar un startup es 99% suerte 1% conocimiento tecnico

Ok, el titulo es una mentira a medias, iniciar un startup y conseguir a esos “inversionistas ángeles” que todos deseamos no es suerte, pero definitivamente NO es talento para programar.  Para iniciar una startup necesitas, contactos, saber vender la idea, hablar ingles, estar en la ciudad correcta, y un producto que parezca terminado en su forma mas sencilla (un Mínimo producto viable, como comúnmente dicen los amos y señores del entorno entrepreneur.)

La ciudad es muy importante, de alguna forma tienes que ir a esa gran ciudad a buscar inversionistas para tu proyecto, y una vez los tengas puedes mudar tu operación a donde se te de la gana. Pero los contactos  y saber vender la idea son  la parte aun mas importante, necesitas transmitir la idea, una y otra vez, en tantos eventos sean posibles hasta que un inversor con poco conocimiento técnico caiga. Y esta es la parte mas importante, tu producto no tiene por que funcionar realmente en un ambiente real de producción. Podríamos hacer el  siguiente  “uber de enchiladas” (que por cierto la idea gano el tercer lugar del Startup Weekend World en Guadalajara (¡maman!) ) podría ser que nuestra aplicación cubra bien todo el proceso de pedir unas deliciosas enchiladas potosinas  y estas serán entregadas en la puerta de la casa en menos de 30 minutos…   y con esto, podríamos atender a 10 usuarios y decirle al inversionista.. “oh si…. el modelo esta probado y solo necesitamos inyectar publicidad para tener tracción”.

Pero sobre todo, podría ser que nuestra aplicación no soporte un ambiente real de producción con 1000 usuarios, menos con 10,000. Nuestra aplicación podría estar llena de mala programación que causan cuellos de botella en funciones criticas para que el sistema atienda la mayor cantidad posible de usuarios  con la menor cantidad de escaladas en hardware…  pero en realidad, esto no importa para conseguir 2 millones de dolares como fondo inicial.

… lo que liquidó a la mayoría de los startups en el negocio e-business de los 90s fueron los malos programadores. Muchas de estas compañías se fundaron por gente de negocio pensando que la manera en que funciona un startup consistía en tener una idea ingeniosa y luego contratar a programadores para implementarla. En realidad esto es más difícil de lo que suena – de hecho, casi imposiblemente difícil – porque la gente de negocios no puede identificar a los buenos programadores. Ni siquiera tienen la oportunidad de encontrar a los mejores, porque ningún programador realmente bueno quiere implementar la visión de un hombre de negocios.
En la práctica lo que ocurre es que la gente de negocios selecciona a quienes creen que son buenos programadores (dice aquí en su currículum que es un Microsoft Certified Developer), pero no lo son. Entonces se quedan perplejos al darse cuenta que su nueva empresa avanza lenta y pesadamente como un bombardero de la Segunda Guerra Mundial mientras sus competidores rugen como aviones caza. Este tipo de startup está en la misma posición de una compañía grande, pero sin las mismas ventajas.

Así que, ¿cómo seleccionas buenos programadores si no eres un programador? No creo que exista una respuesta. Iba a decir que buscaras un buen programador para ayudarte a contratar a la gente. Pero si ni siquiera puedes reconocer a los buenos programadores, ¿cómo podrías hacer esto?

— Paul Graham. The 18 things that kill startups.

 

Soy de la idea de que si sabes hacerlo bien entonces tienes que programar bien desde las primeras versiones, te evitara muchos problemas a futuro y podrás crecer mas rápido, pero siendo realistas es perfectamente probable que una persona que tomara un curso de 4 meses en vídeo de ruby on rails pueda diseñar este primer producto con todos los bugs y memory leaks posibles.

Tristemente el mundo no es perfecto, y como buen programador no siempre  llegas a la etapa pre-inicial de una startup para no cometer pendejadas. Sin perder de vista  que tienes que hacer un MVP no te pones a resolver el problema para soportar 10 millones de usuarios. Sencillamente no te pones a optimizar todo, pero no la cages de forma monumental por mantenerlo simple.

Llegado a este punto, ¿cual es el motivo de esta publicación? bueno, tenia unas enormes ganas de decir:

¡No mamen! que X programador levante fondos para un startup, no significa que sea buen programador.  —Martin Quinta autor de este blog.


veamos algunos ejemplos de startups  que me tome la molestia de usar y que detectas errores  tan absurdos que piensas… “wey, ¿de verdad levantaron todo este fondo? que hicieron con ese dinero  para que este pequeño detalle no esta corregido u optimizado”

Voxfeed: es una empresa que me encanta en concepto (son como la versión 3.0 de los paytoclicks). La idea es “yo tengo muchos amigos en facebook/twitter, pos pongo anuncios y cuando un we le haga click unos centavos para mi bolsillo!” pero que en cuanto empezaron a crecer su sistema no dio la talla, hacías click sobre uno de sus enlaces y en lugar de llevarme a la publicidad me mostraba una bonita pagina de error. Voxfeed me encanta, por que es una empresa que se puso las pilas y busco buenos programadores para resolver el problema y su proceso de contratación es el mas genial que e vivido. (no, lo pase… ellos aman javascript yo lo odio. pero fue genial, las mejores pruebas remotas que me han aplicado).

No se cual sea el problema original, a mi parecer fue elegir mongo, o mas mejor dicho: “usar una mala estructura sobre mongo”. Mongo no es transaccional, la lectura escritura de un archivo es bloqueante y como dije, no se.. pero si decidieron guardar en un archivo algo como {… ‘link’:’xyzcmakwjejr’, ‘contador’:’300’…} era lógico que si mil usuarios intentaban acceder a la vez el bloqueo del archivo para incrementar el contador  también impediría que los usuarios pudieran visualizar la url.

Como dije, no se si ese era el problema, pero un aplauso de mi parte para voxfeed por retomar el camino.

dadaRoom:  consiguió 300,000 dolares de inversión, no es una cifra nada despreciable. y aunque el problema lo corrigieron hace unas semanas me parece realmente raro que durara “tanto tiempo” siendo un problema taaaaaan ridículo.  algunos enlaces de su web no funcionaban. por ejemplo te llegaba un mensaje de chat, querías ver el perfil de la persona y no tenia nada… entonces decías, bueno.. quiero ver los anuncios que ha publicado… “ah, mira… el enlace tiene una almohadilla #  en lugar de la url real de la publicación”

de verdad, en mi cabeza no concibo que enlaces rotos  persistan en la web durante meses.

Busuu: me encanta, y no la dejo de usar a pesar de que me duele la cabeza el problema técnico que tienen. Es una plataforma donde uno de sus atractivos es chatear con otros usuarios de busuu (usuarios del idioma que aprendes).  pero el chat es tan, tan, tan, tan malo que  no puedes iniciar una conversación por que a menos que tengas la ventana de busuu visible no te das cuenta de la notificación de chat.

osea, consiguieron 6 millones de euros…. implementen websockets ¿no?, usen las notificaciones de html5 del navegador, o saquen una app, no se..  6 millones de euros fácil paga la reimplementación de las cosas que técnicamente no funcionan bien. **creo que usan websockets.. no estoy seguro ¬¬ y me da flojera abrir las herramientas de chrome para asegurarme

 

Martin Quinta

Crecí con una computadora desde el kinder. Empece a programar a los 14 y hoy, mas de una década después… realmente odio estar frente a una computadora. Pero programar es en lo que soy bueno, por lo tanto me desahogo en este blog mientras bebo cerveza artesanal y pienso en un mundo bonito donde Java no existe.

Facebook Twitter LinkedIn  

Entradas relacionadas:

Leave a Reply

Your email address will not be published. Required fields are marked *