Sí, no es broma. En 5 años, todos los desarrolladores codificarán en la nube. No sólo codificarán allí sino que también compilarán*, testearán, correrán, depurarán y desplegarán las aplicaciones en la nube. Es inevitable, aunque no sea muy obvio todavía. De hecho, los proyectos IDE basados en la nube están saliendo al mercado como los jugadores más importantes con serias intenciones y visiones claras y estratégicas. Sí, es imposible hacer una predicción del 100% sobre cómo se comportará el mercado en 1-2 años. Las nuevas tendencias en la industria del desarrollo de software hablan de la necesidad de una forma más productiva de codificar. Hay un largo incremento en el número de aplicaciones desarrolladas en todo el mundo, mientras que el número de desarrolladores se mantiene bastante igual. ¿Qué significa esto? Significa que los desarrolladores tienen que volverse más productivos. Al margen de los limites que existen en la resistencia y productividad del ser humano, es posible ganar algo de tiempo optimizando los procesos de codificación, compilación, testeo, ejecución y despliegue. Aquí es exactamente cuando un IDE ubicado en la nube entra en juego como un serio rival para las herramientas offline. Algunas de las ventajas más obvias de los IDEs online incluyen:



Índice

 Mayor productividad y fácil integración

¿Cuánto tiempo lleva instalar y configurar el entorno, VM y plugins para probar, ejecutar e implementar una simple aplicación Java? ¿Cuáles son tus estimaciones más conservadoras? ¿Una hora? ¡Piensa un poco mejor! Son cuatro largas horas, mínimo. Una máquina limpia necesitará Java, Maven (o cualquier otro administrador de construcción de proyectos), Tomcat, Eclipse, plug-in para su PaaS elegido (nombrando herramientas de forma aleatoria). ¿No es mucho para una simple aplicación Spring? Bueno, un IDE en la nube ya está configurado y listo para empezar en cualquier momento. Eso es como un automóvil con un conductor que nunca apaga el motor. Un desarrollador puede utilizar cualquier máquina, ejecutar cualquier Sistema Operativo. No hay necesidad de descargar y configurar el entorno y buscar los plugins necesarios. Aquí está la forma de crear una simple aplicación Spring en Codenvy e implementarla en CloudFoundry:

Construir, probar y ejecutar un proyecto en la nube

Un IDE situado en la nube aloja todos los servicios necesarios juntos de forma tal que están inmediatamente disponibles cuando se los solicita. Los proyectos son construidos en máquinas poderosas, las cuales desplazarán a las computadoras de los desarrolladores. En otras palabras, es posible usar laptops y máquinas de escritorio de características mediocres. Las construcciones son más rápidas y no requieren muchos recursos (los desarrolladores pueden realizar otras tareas mientras se están construyendo los proyectos).

Ejecutar y depurar aplicaciones en la nube es otra caracteristica fundamental de un buen IDE ubicado en la web. Una vez que el proyecto está construido, está listo para ser ejecutado o depurado. Aún más, es posible actualizar aplicaciones en tiempo de ejecución, por ejemplo, usando el plugin JRebel. Con cualquier cambio hecho al código fuente, los desarrolladores pueden, de hecho, revisarlos en las aplicaciones corriendo. Lo mismo aplica para el modo de depuración. La aplicación está levantada en el servidor IDE, mientras que un desarrollador puede jugar con ella configurándole breakpoints, inspeccionando y cambiando variables, evaluando expresiones, sentencia por sentencia, etc.

Compartir y colaborar

Tal vez esta es una de las razones principales por las cuales los IDEs de la nube avanzarán. En el mundo actual de las redes sociales, es totalmente inaceptable no tener la posibilidad de compartir un proyecto online. Los IDEs de la nube van mucho más allá. Además de funcionalidades de compartición (simplemente enviando un hipervínculo a un proyecto es suficiente para un desarrollador o un equipo para unirse al proyecto), incluye el modo de colaboración en tiempo real. Sí, esto significa que dos desarrolladores ubicados en partes opuestas del mundo pueden trabajar en el mismo archivo o trozo de código simultáneamente. ¿Y qué podemos decir respecto a chatear directamente en el editor? Esto es completamente posible en el modo colaborativo que los principales IDEs de la nube del mercado tienen en su caja de herramientas (Cloud9 tiene colaboración en tiempo real mientras que Codenvy está planeando incluirlo pronto). Aquí puedes ver la funcionalidad de colaboración en Codenvy.

Control administrativo y conformidad

Los supervisores de los equipos de desarrollo (especialmente cuando son tercerizados) definitivamente apreciarán tener un mecanismo simple de control y monitoreo para ver cuánto código ha sido escrito y prevenir pérdidas de código. Un proyecto, un entorno, muchos espacios de trabajo virtualizados y un panel de administración.

En conclusión

Es cierto que a los IDEs de la web actualmente les faltan características de vanguardia y capacidades que los IDEs offline tienen, por ejemplo, el tan popular Eclipse. De todos modos, yendo a gran velocidad, los proyectos de IDEs de la nube están mejorando y progresando día a día, liberando a los desarrolladores de instalaciones aburridas y de los problemas inherentes a la configuración del entorno de desarrollo.

Referencias

DZone »» 5 Reasons Why in 5 Years Desktop IDEs Will Be Dead