Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

791 artículos publicados

Los beneficios de utilizar Docker y contenedores a la hora de programar

El desarrollo con instancias de Docker está cada vez más extendido entre los equipos de desarrollo de software porque simplifica el proceso de programación, despliegue y entrega de aplicaciones. Si alguna vez te has preguntado por qué, la respuesta principal es por el valor que los contenedores y el desarrollo con instancias de Docker aporta tanto a los programadores como a los administradores de software, y especialmente a aquellos que hayan adoptado un flujo de trabajo centrado en DevOps. En este artículo intentaremos explicar por qué las instancias de Docker han resultado tener un grado de aceptación tan grande entre los equipos de desarrollo de software y cómo los contenedores aportan ventajas a los desarrolladores que no pueden obtener usando máquinas virtuales de toda la vida. [Más]

GAMBADAS: Troyano bancario en Android con decenas de miles de descargas

Hay que tener mucho (pero mucho) cuidado con cualquier cosa que instales en tu teléfono móvil, especialmente en el caso de Android, el sistema operativo más extendido, con una cuota de mercado de más del 80% mundial. Parece una obviedad, pero no lo es en absoluto, al menos si nos atenemos a los hechos. Y es que, en muchas ocasiones, solo por el mero hecho de que una aplicación esté disponible en la tienda de Google y tenga muchas descargas es motivo suficiente para fiarnos e instalarla. ¡Error! El último ejemplo: un troyano disfrazado de app para grabar llamadas que reconocía qué banco estabas usando para hackear tu cuenta 😱😱😱 [Más]

Java 11 ya está aquí: te toca pagar a Oracle o cambiarte a otras opciones

Con el lanzamiento de Java 11 y su JDK hace unos días se han lanzado también unos cambios radicales en la plataforma. Y no, no se trata de cambios técnicos sino de cambios de licencia. A partir de ahora si quieres usar el JDK oficial de Oracle y poner una aplicación en producción, tendrás que pagar. Y si quieres soporte a largo plazo tendrás que pagar también. Por suerte todo tiene solución. En este artículo te contamos los cambios y novedades y cómo evitar pagar por desarrollar en Java. ¡Allá vamos! [Más]

Conviértete en un desarrollador con trabajo en menos de un año (no sin esfuerzo)

¿Alguna vez te has planteado la posibilidad de convertirte en un desarrollador de software? ¿Estás buscando alguna forma de reorientar tu carrera profesional? En este artículo te propondré algunas ideas para que puedas empezar en el desarrollo de software y algunos consejos para que encuentres tu primer empleo en el sector en menos de un año. [Más]

Guía básica para la personalización de la shell de Linux y Mac

El intérprete de comandos más popular en Linux es Bash (acrónimo de Bourne-again shell), pero no sólo está presente en el sistema del pingüino, sino que también es la shell por defecto en macOS y se puede instalar en Windows 10, aprovechando la funcionalidad del Subsistema Linux. Su utilidad principal es que nos permite acceder a los servicios del sistema mediante comandos, pero nos pueden pasar inadvertidas las funcionalidades extra que facilitan su uso. En particular, una de sus funciones más interesantes es que Bash siempre carga una serie de archivos en el momento de su ejecución, siendo uno de ellos el archivo .bashrc. Vamos a aprender a incluir nuestras personalizaciones en ese archivo, para que se apliquen al lanzar una nueva terminal. [Más]

Instaladores en Windows y qué diferencia existe entre un instalador .exe y uno .msi

En Windows existen fundamentalmente dos maneras de instalar un programa en el sistema: descargándose un archivo ejecutable (.exe) que es un programa de instalación específico, o bien descargándose un archivo .msi. Estos últimos se ofrecen en muchos casos para "instalaciones empresariales", pero no parece haber gran diferencia entre estos y los anteriores. Realmente ¿las hay? ¿Cuál nos conviene más? ¿Qué programas podemos utilizar para crear un paquete de instalación para nuestras aplicaciones? Te lo contamos a continuación... [Más]

Fundamentos de JavaScript: por qué deberías saber cómo funciona el motor

Los actuales motores de JavaScript están súper-optimizados. Combinan un intérprete para poder ejecutar el código lo antes posible, con un compilador para optimizar el código y convertirlo a código máquina de modo que en muchas ocasiones JavaScript puede ser tan rápido como C++ (o más). Pero conocer su funcionamiento interno nos puede ayudar a evitar posibles problemas que causen una caída de rendimiento espectacular. En este artículo se explica una de las cuestiones a tener en cuenta que permite mejorar el rendimiento entre 7 y 10 veces en algunas ocasiones. [Más]

Cómo hacer un ribbon destacado usando solo CSS y el pseudoelemento ::before

En este post vamos a aprender una técnica muy sencilla pero resultona para simular una cinta (ribbon, en inglés) con un texto superpuesta con CSS sobre un elemento del contenido. La aplicación práctica más habitual para esta técnica es la clásica cinta que pone "Nuevo" por encima de un producto (o cualquier otra característica que se quiera destacar) en un e-commerce, pero realmente se puede aplicar en muchos otros casos, como posts de un blog, imágenes o vídeos de una galería, un listado de usuarios… [Más]

Cómo configurar ASP.NET Core 2.1 en Linux en menos de 10 minutos

Me sorprendió gratamente lo fácil que resultó configurar e instalar ASP.NET Core 2.1 en Linux. La primera vez lo hice en 15 minutos, sin experiencia previa con .NET Core en Linux. La segunda vez, en producción, me llevó 5 minutos siguiendo estas instrucciones. En este artículo, muestro cómo instalar .NET Core runtime en CentOS, cómo poner en marcha el proyecto de ejemplo de ASP.NET Core ejecutándose en Kestrel, y cómo configurar tanto el código como el firewall para habilitar el acceso remoto a la aplicación. Finalmente, comento qué haría de manera diferente para el uso real de la aplicación en producción. [Más]

Desarrollo Web móvil: ¿Qué diferencia existe entre el Viewport y la resolución de pantalla de un dispositivo?

El viewport de un dispositivo es el tamaño teórico que tiene la pantalla de dicho dispositivo, el cual no tiene por qué coincidir con la resolución real de la pantalla (de hecho no coincide casi nunca en dispositivos modernos). La resolución se refiere al número de píxeles que puede mostrar dicha pantalla. Estos dos conceptos a pesar de ser tan sencillos tienen un gran potencial y es la base del funcionamiento de los navegadores móviles. Te contamos qué son, en qué se diferencian y cómo gestionarlos. Y te hablamos del concepto "píxeles CSS". [Más]