Incling
Incling se especializa en la creación de comunidades en línea para resolver retos de marketing, innovación y comunicación.
Todos los clientesCódigo heredado
Incling acudió a nosotros con un applet Java desarrollado para la grabación de screencasts, que necesitaba actualizarse a una aplicación independiente multiplataforma.
Más informaciónStartups e innovación
Además de Incling, Redwerk ha ayudado a muchas empresas innovadoras a desarrollar y mejorar sus productos.
Más informaciónProyecto
Incling ayuda a las marcas a probar sus productos y adaptarlos al mundo real. Este proceso implica permitir que los usuarios prueben sus productos y compartan sus opiniones y experiencias. Al principio, se utilizaba un applet de Java para grabar un screencast con las acciones y comentarios del usuario, pero cuando los navegadores empezaron a dejar de soportar el plugin de Java, se decidió buscar un equipo de desarrollo externo que ejecutara el plan de renovación. En la búsqueda del mejor proveedor de externalización de Java en Europa del Este, muchos clientes acaban en Redwerk, ya que nuestra empresa de desarrollo Java se enorgullece del trabajo que realizamos para desarrollar aplicaciones de escritorio. Así pues, Redwerk fue contratada como empresa de desarrollo de software de Microsoft astuta para idear una solución y este proyecto pasó a engrosar la lista de proyectos Java de éxito de Redwerk.
Desafío
- Corto plazo del proyecto: sólo teníamos 2-3 semanas para entregar la solución, así que tuvimos que trabajar rápido.
- La solución debía tener un impacto mínimo en la experiencia del usuario (abre la página web, pulsa el botón e inicia la grabación de pantalla). No podíamos introducir ninguna molestia adicional, como instalar Java manualmente, descargar actualizaciones, reiniciar, etc.
- La aplicación debía funcionar en Windows, Mac y Linux (tanto en distribuciones DEB como RPM).
- También tuvimos que solucionar problemas de localización para que la aplicación fuera totalmente traducible.
Solución
Lo primero que hicimos fue revisar detalladamente el código del applet existente. Algunos problemas se hicieron evidentes casi de inmediato: la base de código tenía una serie de componentes heredados, y no había sistemas de construcción o gestores de dependencias en su lugar. En Redwerk, nos gusta automatizar nuestras compilaciones y mantener nuestro código limpio y minimalista: menos líneas significan menos errores. Por lo tanto, nuestro siguiente paso obvio fue implementar scripts de compilación basados en Gradle y utilizar repositorios de Maven para obtener dependencias. Con unas pocas horas de limpieza, pudimos reducir la base de código en casi 15.000 líneas. Esto también nos permitió ejecutar todo el proceso de compilación con un único comando de consola.
Tras la configuración inicial, nuestros desarrolladores de Java empezaron a trabajar en la creación de la aplicación, la escritura de los scripts de instalación y el arreglo de la infraestructura de traducción, todo simultáneamente. Como el applet ya estaba escrito en Java, no tardamos casi nada en transformar el código existente en una aplicación independiente. Escribimos nuestros scripts de paquete e instalador utilizando NSIS, launch4j, fpm, pkgbuild y packr. Nuestra solución instala automáticamente Java en la máquina del usuario si es necesario y registra un gestor de URI personalizado que permite a los usuarios iniciar la aplicación haciendo clic en un enlace de la página web.
También hemos implementado una forma de proporcionar actualizaciones de versión a los usuarios: cada vez que un usuario inicia un nuevo screencast, la aplicación se comunica con el backend para comprobar si hay actualizaciones disponibles y se actualiza a sí misma en segundo plano si es necesario.
Resultado
La aplicación se entregó a tiempo, totalmente probada y lista para su uso en el mundo real.
El proceso de creación se automatizó y documentó por completo para que los futuros programadores pudieran incorporarse al proceso de desarrollo en tan solo 10 minutos.
¿Busca servicios de desarrollo de calidad?
ContactoTecnologías
Comentario del equipo Redwerk
Ilya
Desarrollador
Fue emocionante implementar la lógica del applet Java en una aplicación Java de escritorio. Con la ayuda de Gradle + Bash, hemos diseñado una herramienta cómoda y flexible para crear instaladores para cualquier sistema operativo. La interfaz de usuario basada en Swing fue un buen reto para mejorar también.
¿Impresionado?
ContrátenosOtros casos prácticos
Adfectious
Desarrollo de un sistema de publicidad móvil inspirado en AdMob de Google y utilizado en medios de comunicación rumanos populares como meteoromania.ro
Cleanagents
Creamos esta aplicación para Android que ayuda a los limpiadores autónomos de Alemania y Austria. La aplicación fue adquirida rápidamente por Helping.de.