Tutorial de React JS. Introducción

Hoy me toca escribir sobre otra de las tecnologías que uso en varios de los proyectos en los que trabajo, ReactJS. Se que existe muchísima información en la red sobre esta librería, aunque en muchos casos inconexa. El objetivo de este artículo es tratar de organizar y condensar los conceptos fundamentales para comenzar a utilizar esta tecnología desarrollando un ejemplo práctico (demo). ¿Qué […]

aprende python

Principios SOLID en Python

El objetivo de este artículo es que el lector aprenda aplicar los principios SOLID con el lenguaje Python. SOLID es un acrónimo creado por Michael Feathers para los principios publicados por Robert C. Martin, en su libro Agile Software Development: Principles, Patterns, and Practices. Se trata de cinco principios de diseño orientado a objetos que nos ayudarán a crear mejor código, más estructurado, […]

El patrón MVVM en Xamarin Forms

En el anterior artículo vimos una breve introducción al patrón de diseño MVVM. Tal como decía en ese post, está considerado una buena práctica el uso de dicho patrón a la hora de desarrollar un proyecto, tanto con Xamarin tradicional, como con Xamarin Forms. El objetivo de esta entrada es continuar profundizando en el desarrollo con Xamarin Forms aplicando MVVM. Los orígenes de […]

Xamarin Forms, apps nativas multiplataforma. Introducción

Hoy en día, crear aplicaciones móviles para múltiples plataformas supone todo un reto para los desarrolladores. Tratar de abordar un desarrollo usando los toolkits nativos de cada sistema requiere de una cantidad enorme de conocimientos específicos para cada uno de ellos. Nos encontraremos con un panorama enormemente complejo, con múltiples lenguajes, varios entornos de desarrollo y APIs de todos los colores. Xamarin trata de poner solución a esta problemática ofreciéndonos un conjunto […]

aprende python

Tutorial de Python. Introducción, los fundamentos en 10 minutos

Antes de empezar tengo que advertirte que ningún lenguaje de programación, por simple que sea, puede aprenderse en profundidad en tan poco tiempo, a no ser que se requiera de experiencia previa en otros lenguajes. Dominar la programación precisa de experiencia, lo cual a su vez requiere de un tiempo mínimo que permita afianzar las estructuras mentales necesarias para […]

django vagrant ansible

Servidor de desarrollo Django con Vagrant y Ansible (parte 1)

Vagrant es una de esas herramientas que a priori parece que no tiene cabida en tu stack, pero una vez que comienzas a utilizarla se vuelve indispensable. En una entrada anterior vimos como hacer uso de la misma con el driver de Digital Ocean, en ese caso para desplegar Droplets, aunque el objetivo principal de esta herramienta es crear entornos de desarrollo aislados. Vagrant permite […]

docker swarm digital ocean

Cluster de servidores con Docker Swarm en Digital Ocean

Docker Swarm es una herramienta integrada en el ecosistema de Docker que permite la gestión de un cluster de servidores. Pone a nuestra disposición una API con la que podemos administrar las  tareas y asignación de recursos de cada contenedor dentro de cada una de las máquinas. Dicha API nos permite gestionar el cluster como si se tratase de […]

Testing de modelos en Django, buenas prácticas.

El testing es una de las partes más importantes de cualquier proyecto de software, ya que aporta calidad y seguridad a nuestro código.  En esta entrada voy a tratar de exponer algunas prácticas muy recomendables para testear modelos en Django de forma eficiente y segura.

<Tip/> Configurar un servidor HTTPS con Nginx

Dudaba sobre si hacer esta entrada o no, ya que hay mucha documentación al respecto en la red (aunque algo desordenada a mi entender), pero la principal motivación del blog es que las entradas me sirvan a mi mismo, así que prefiero publicarlo a que quede perdido en una nota de Evernote. Bueno vamos a […]

Desplegando instancias de DigitalOcean con Vagrant

Vagrant es una potente herramienta open source para la configuración y despliegue de múltiples entornos, tanto de desarrollo, como de producción. Está diseñado para funcionar en Linux, Mac OS X o Windows. Por defecto utiliza VirtualBox para la capa de virtualización, se puede utilizar también con otros proveedores como VMware o AWS. En esta entrada vamos a configurarlo utilizando el driver de DigitalOcean […]