Emprendimientos Digitales 21
La verdadera educación Tecnologica
Cita de la semana:
La tecnología es un Lienzo, no una plataforma o una herramienta.
David Droga
Esta es una idea que ya he discutido en posts anteriores, cuando se dice que la tecnología es un canvas, se refiere a que es un lienzo en blanco, para dibujar como queramos, para utilizarlo como base para construir cosas nuevas.
Es pobre e ineficiente una educación tecnológica relegada al uso de dispositivos electrónicos o programas creados por otros, con el único fin de facilitar tareas. La verdadera educación tecnológica consiste no en enseñar a utilizar herramientas existentes sino en dar el espacio para construir las herramientas del futuro.
Kit Digital del gobierno de Chile
El Kit Digital consiste de una serie de herramientas de comunicación digital, diseño y desarrollo para facilitar la creación y mejora de los productos oficiales de Gobierno.
El contenido se actualizará de forma periódica, agregando nuevos componentes para el diseño y desarrollo de productos digitales e impresos por parte de instituciones públicas.
Los recursos los puedes encontrar en la página oficial
ASESINANDO TU STARTUP CON JAVASCRIPT.
Par ser más preciso la culpa no es realmente de javascript sino de quienes toman las decisiones tecnológicas dentro de la empresa, como por ejemplo que frameworks y lenguaje de programación deben ser ocupados para desarrollar un proyecto.
Tomar las decisiones ya no es tan fácil como hace 10 años, El boom de los frameworks, especialmente los de javascript ha sido impresionante, en estos últimos 2 años hemos visto aparecer cientos de lenguajes y frameworks, casi todos los emprendedores tecnológicos estamos ocupando al menos algunos de ellos dentro de nuestras empresas.
El problema es que nos estamos haciendo dependientes de tecnologías altamente cambiantes, y el costo de estos cambios podría costarle la vida a nuestra StartUp.
Un caso particular es Angular, este novedoso framework que está muy de moda lleva anunciando hace ya un tiempo que la nueva versión (Angular 2.0) romperá compatibilidad con las versiones anteriores, no sólo porque introducirá una sintaxis distinta sino porque ocupará un paradigma distinto, en otras palabras habrá que aprender muchas cosas nuevas y olvidar muchas antiguas.
El costo de actualizar toda la plataforma en la que está construido tu trabajo es altísimo pero además es difícil de explicar, pocas personas son lo suficientemente adeptas en tecnología como para entender que los desarrolladores de la empresa ocuparán un mes (o, dependiendo de la cantidad de trabajo hecho, mucho más tiempo) únicamente en actualizar la plataforma, especialmente dado que estas tecnologías son recientes.
Trata de convencer al inversionista, o jefe, de por que si algo es nuevo hay que gastar millones en actualizarlo.
Otra opción es simplemente quedarse atrás, pero cuando un framework queda abandonado también queda abandonado todo el trabajo en seguridad y mantención, lo que quiere decir que si encuentras una falla difícilmente encontrarás a alguien dispuesto a arreglarla.
La tasa de abandono de los frameworks en javascript es y seguirá siendo demasiado alta, esto no quiere decir que no haya que ocuparlos, pero quiere decir que a la hora de escogerlos como herramientas en tu empresa tengas en consideración el costo del cambio.
A la hora de escoger un framework para un proyecto chico y experimental te recomiendo que juegues con la tecnología más nueva e interesante que haya, pero para construir la plataforma y/o herramientas clave de tu empresa deberías considerar lenguajes y frameworks más convencionales, considerando siempre factores como tamaño de la comunidad, curva de aprendizaje, mano de obra disponible, licencias y que sea un lenguaje pensado en la felicidad de los programadores.
Aquí hay otra historia que podría interesarte.http://blog.en1mes.com/2014/10/las-razones-de-por-que-elegimos-rails/
7 Juegos Para Aprender a Programar
Si los niños y animales aprenden jugando, entonces por que no podemos aprender a programar jugando?
Con esta misma idea en mente, diversas empresas han presentado distintas propuesta para preparar a los programadores de la próxima generación con simples juegos para aprender a programar.
Aquí hay un listado de algunos que he probado y encuentro interesante.
1.- Ruby warrior
Un juego para aprender más sobre ruby (ahora con nuevos niveles y explosiones)
Ruby Warrior2.- CodeCombat
Aprende sobre javascript mientras recolectas cristales, subes de nivel, construyes empalizadas, coordinas un ejercito y salvas al mundo.
Code Combat3.- Flappy Bird
Introducción a la creación de juegos y respuesta de eventos con Flappy Bird
Flappy Bird4.- Robocode
Combates de Robots en JAVA
En este juego he gastado más horas de mi vida de las que me gustaría confesar, en el programas a un tanque para que compita contra otros tanques, el mejor programa gana.
Alerta, las estrategias que funciona contra algunos tanques no funcionarán contra otros, la dificultad no es ganar una batalla, es ganarlas todas.
RoboCode5.- Coding Game:
Desafío entretenidos en todos los lenguajes
Controla robots, detecta a tus enemigos antes de tiempo y dispárales (no es para principiantes)
Ultra Bonus Track: Hay modo multiplayer
Coding Game6.- Python Challenge
Este juego no es muy dinámico, pero es sumamente entretenido, consiste en 33 acertijos que sólo se pueden resolver con python, si eres aunque sea ligeramente obsesivo vas a estar decenas de horas resolviendo los diferentes desafíos de este juego y definitivamente aprenderás mucho de python.
Python Challenge7.- Angry Zombies (The Maze)
Este juego para principiantes en el mundo de la programación te enseñará a ocupar los bucles if y while con divertidas etapas utilizando personajes de Angry Birds y Plants vs Zombies.
Ruby Una Apuesta De 212 Millones De Dólares
Cualquiera que haya visitado el sitio de Heroku frecuentemente se ha dado cuenta de que en la página web agregaron el logo de Salesforce dentro del sitio, la pregunta es ¿Cuál es la relación de estas dos empresas?
Gracias a San Google no me demoré mucho en descubrir que Salesforce había comprado a Heroku por 212 millones de dólares, de hecho me sorprendí al enterarme de que esto había pasado hace ya un par de años, la pregunta compleja es por qué una empresa como Salesforce que en términos sencillos es un CRM, compraría una plataforma que principalmente sirve para alojar aplicaciones web hechas en ruby on rails.
¿Qué opinan otros emprendedores?
Conversé el tema con muchas personas entendidas en el mundo del emprendimiento para que me dieran su opinión de cual era el motivo detrás de la compra y la mejores aproximaciones iban desde la adquisición de talento en el área de ruby on rails hasta el almacenamiento masivo en la nube, y la verdad por más increíble que suene la respuesta a por qué Heroku fue comprado tiene mucho más que ver con que Salesforce tiene una bola de cristal para adivinar el futuro.
El plan secreto (no tan secreto) de Salesforce
La persona que encontró la respuesta a todas estas interrogantes fue Dan Woods quien entrevistó a Ariel Kelman, VP de Product Marketing de Salesforce y Byron Sebastian, CEO de Heroku y logró una explicación interesante que justifica el gasto de 212 millones dólares.
En resumen tanto Kelman como Sebastian aclaran que los departamentos de IT de muchas de las grandes empresas en el mediano plazo reconocerán el poder de Ruby, comenzarán usarlo y cuando lo hagan Salesforce estará listo para ofrecerles un entorno amistoso y maduro para hostear sus aplicaciones y conectarlo a componentes poderosas como Chatter, Force.com y Database.com
Las ventajas de Heroku
Las razones para hostear aplicaciones en Heroku son múltiples, van desde la facilidad y velocidad para levantar una aplicación nueva, una buena relación precio / costo oportunidad, debido a que no se necesitan conocimientos en infraestructura ni conocimientos avanzados en linux para escalar una aplicación o protegerla contra ataques y como se mencionó previamente la capacidad de conexión con potentes plugins de terceras partes.
Finalmente me gustaría aclarar que ésta es una de las razones por la que tanto En1mes y Desafiolatam se enseña principalmente ruby on rails, por que al igual que Salesforce creemos que será uno de los lenguajes de programación predominantes en el futuro y uno de los pocos impedimentos que existen actualmente es la gran escasez de programadores que existen.