Jenkins: tutorial para esta herramienta de CI

La integración continua puede mejorar el trabajo del desarrollo de software: disminuyen los errores y la integración es más eficiente y continuada. Para ello se requiere una herramienta sencilla y completa, como Jenkins. Este softwareagiliza el trabajo gracias a builds automáticas y pipelines individuales. En el tutorial de Jenkins encontrarás los pasos que seguir al principio, para no verte solo...

GraphQL: la alternativa flexible a REST para programar API

Las aplicaciones web necesitan interfaces para intercambiar datos. Por eso, cuando se gestiona un proyecto web y se quiere otorgar acceso a otros programas a las bases de datos, es indispensable integrar una API (Application Programming Interface). En el mundo del desarrollo web se suele recurrir a conceptos ya establecidos como REST o SOAP. Sin embargo, existen alternativas, tal y como demuestra...

Hackathon: acortar distancias entre programadores

¿Qué es una y qué importancia tiene? Pocas horas de sueño, ideas locas, intercambio fructífero de conocimientos y mucho trabajo productivo. Estas reuniones entre desarrolladores de software tienen lugar en todo el mundo y, por supuesto, también en España. Te explicamos lo que significa una hackatón y cómo funciona, además de algunos ejemplos que están teniendo un gran auge en nuestro país.

Unit testing: la prueba de calidad para software

Los unit tests son uno de los métodos más eficaces para identificar el mayor número de errores en el código fuente durante las primeras etapas de desarrollo del software. La característica más especial consiste en aislar a los componentes en un entorno de prueba neutral para realizar el test. Así, en caso de que se presenten errores, estos se pueden atribuir fácilmente al módulo que está bajo...

Cómo aprender a programar: fundamentos básicos

Bienvenidos a la era digital: un consumidor medio pasa varias horas sentado frente a su ordenador o revisando la pantalla de su smartphone. Contar con conocimientos adicionales sobre el funcionamiento de los programas que utilizamos a diario y, que muchas veces facilitan nuestro día a día, nunca está de más. Afortunadamente, la oferta de recursos para aprender a programar es cada vez más amplia....

Agile development: ¡así funciona!

Si alguna vez has tratado con técnicas de trabajo modernas, seguro que ya te has topado con el agile development. No obstante, una amplia mayoría no entiende realmente lo que hay detrás. Esto también se debe al hecho de que el desarrollo ágil de software en sí no tiene una definición establecida, sino que se utiliza más bien como término genérico. ¿En qué consiste este método de trabajo?

Editores de código: las mejores aplicaciones para sistemas como Windows o Mac

Existe una gran variedad de editores de código y son una de las herramientas más utilizadas por los programadores. Estos editores facilitan mucho la escritura de código mediante una gran variedad de funciones como, por ejemplo, resaltar en color los parámetros sintácticos o autocompletar palabras y secciones, ahorrando mucho trabajo a los programadores.

Scrum master: mediador para equipos ágiles

El método Scrum sirve para que los equipos puedan trabajar de manera más eficiente y creativa. A cada miembro del equipo se le asigna un rol fijo con sus funciones y obligaciones. Uno de estos roles es el Scrum master, sin embargo, a menudo no se tiene claro cuáles son sus funciones y hasta dónde llegan sus competencias. Aquí respondemos a la pregunta clave: ¿qué es un Scrum master?

El modelo en cascada: desarrollo secuencial de software

El modelo en cascada se incluye dentro de los procedimientos clásicos de la gestión de procesos. Este método se caracteriza principalmente por la ejecución estructurada de las diversas fases de un proyecto y se utiliza, sobre todo, en el desarrollo de software, donde se ha impuesto a modelos más flexibles. Conoce a fondo la metodología en cascada y sus aplicaciones, así como sus limitaciones en el...

Conceptos básicos: definición de web app y ejemplos

Tan variados son los tipos de aplicaciones que existen como los usos a los que estas se destinan. Además de las desarrolladas para sistemas operativos especiales y que, en su mayoría, se usan en dispositivos móviles, también existe una gran oferta de web apps. ¿Qué significan exactamente?, y ¿en qué se diferencian de las aplicaciones clásicas o de las páginas web convencionales?