54 Horas y una Web App Móvil

programming

Quiero aprovechar la oportunidad de que hoy se está llevando a cabo el Startup Weekend Colombia para hablar un poco sobre un fenómeno interesante que he visto en diferentes hackathones y situaciones en las que es necesario construir productos de calidad contrarreloj.

Por alguna razón a cada hackathon que voy veo devs sufriendo a última hora porque deciden reinventar la rueda, y hacer todo desde cero, al inicio es ambicioso, pero puede terminar siendo frustrante. Con este artículo doy inicio a una miniserie sobre frameworks y herramientas que pretende ayudar a desarrolladores emprendedores que participan en este tipo de eventos.

Punto de partida:

Si tengo 54 horas para escribir una aplicación móvil ( Web App ), sea cual sea, mi principal preocupación debe ser  producir un producto con la mayor calidad en el menor tiempo posible, y que además tenga la menor funcionalidad necesaria para poder comunicar el problema que pretendo resolver.

Caja de herramientas

Frameworks de HTML

HTML5 Boiler-Plate

HTML5 BP es un esqueleto de HTML,CSS y JS con un sinnúmero de herramientas y scripts que permiten no empezar con un canvas vacio. Algunas de estas son:

  • normalize.css // Como lo dice su nombre, css reset normalize css normaliza los estilos manteniendo estándares predeterminados en diferentes browsers para escritorio y móvil.
  • respond.js // Asiste en la dirección de un enfoque progresivo, permitiendo el uso de media queries en diferentes browsers que no lo soportan basándose en los principios de Responsive Web Design
  • modernizr.js // Permite detectar si determinado cliente puede usar tecnologías web modernas (geolocación, border-shadow, etc) y actuar de diferente manera en casos contrarios.
  • build script // Un script de Apache Ant que automatiza la optimización (minificación y concatenación de scripts, etc) y construcción de applicaciones para diferentes ambientes, sea desarollo, pruebas o producción.

Cabe resaltar que HTML5 BP ha sido adapdado para diferentes frameworks como Rails, Django, CakePHP entre muchos más.

Twitter Bootstrap

Bootstrap es otro framework de HTML que permite la construcción rápida de productos o prototipos al proveer mucha funcionalidad sin escribir una sola linea de código.

Bootstrap trae un Grid predeterminado el cual puede ser personalizado. Contiene layouts, tipografía, placeholders para imágenes, y estilos para tablas, formularios, botones, índices, paginación, alertas y mensajes, popovers y tooltips.

Bootstrap es compatible con LESS, un preprocesador de CSS dinámico que permite el uso de variables, funciones (mixins), operaciones y definiciones anidadas.

Frameworks de JavaScript

No voy a entrar en mucho detalle sobre cada framework mobile de JavaScript, creo que lo único importante a resaltar es su existencia, y aquí les dejo algunos links.

Como estas, hay muchas más. Siempre tengan en cuenta que si tienen un problema, es muy alta la probabilidad de que alguien lo haya tenido antes que ustedes y haya escrito algo al respecto para ayudar a los que lo tienen. Busquen en GitHub y Stack Overflow o Google. El momento para escribir algo desde cero en estos casos es cuando los demás recursos se han agotado.

Después de tener la funcionalidad deseada es que uno debe pasar a preocuparse por la estética del producto y  agregar funcionalidades adicionales. Esa que uno dice “Uff, sería chévere si también hiciera esto, y esto”. Pero dudo que vayan a tener tiempo de sobra.

Recuerden también que un buen desarrollador sabe decir no y enfocarse en lo importante. El menú lo pueden volver rosado cuando el procesamiento de órdenes funcione a la perfección, y es esta la importancia del uso de herramientas y frameworks, pues permiten obtener un resultado que no se ve horrible pero funciona correctamente.

Se pueden dedicar a escribir su super-framework desde cero cuando estén en su casa, y después de haber dormido todo el día, concéntrense en el Premio Mayor.

Happy Hacking!

Acerca del autor

Juan Pablo Buritica

NYC-based Colombian Serial Entrepreneur, Software Engineer and Startup Tech Advisor. Founder of BogotaConf and senior engineer at Onswipe. Former Pharmaceutical Chemist and Chef.

Emprendedor Colombiano basado en NYC, Ingeniero de Software y Tech Advisor. Fundador de BogotaConf e Ingeniero Senior en Onswipe. En su pasado fue Quimico Farmaceutico y Chef.