Menú de navegaciónMenú
Categorías

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

1036 artículos publicados

Conceptos esenciales sobre compilación e interpretación

Si programas habitualmente en unos pocos lenguajes, tendrás la costumbre de seguir siempre los mismos pasos para ejecutar los programas que escribas. Según el lenguaje, eso involucrará utilizar un intérprete, transformar tu código a ejecutable mediante un compilador, o incluso utilizar herramientas de automatización para pasar de un punto a otro. En este artículo nos interesa estudiar cuál es realmente la tarea que cumplen todos estos sistemas y qué los diferencia. [Más]

GAMBADAS: imágenes maliciosas subidas a Docker Hub minaban criptomonedas en tu servidor

Al igual que no debes descargar de Internet un ejecutable cualquiera y ponerlo a andar en tu máquina o, mucho menos, en tu servidor, tampoco deberías descargar una imagen cualquiera de Docker, usarla como base para una aplicación tuya y dejarla funcionando en tu servidor. En cualquiera de los dos casos, si lo haces, puede que acabes "donando" tu tiempo de CPU y tus recursos para que alguien se haga de oro minando criptomonedas. Esto es lo que ocurrió hace poco con Docker Hub. Lo peor no fue eso, sino la poca agilidad a la hora de responder que demostró la empresa. Te lo contamos... [Más]

¿Qué son los archivos .gitkeep en Git?

Seguro que has visto mil veces el archivo .gitignore en la raíz de proyectos gestionados con Git. Sin embargo existe un archivo menos conocido llamado .gitkeep que tiene un propósito completamente diferente y que, si no lo conoces, puede dejarte un tanto sorprendido, porque encima siempre suele estar vacío. A continuación te contamos qué es este archivo y para qué se utiliza. [Más]

Cómo Microsoft hizo que me volvieran a gustar otra vez .NET y C#

"¿Por qué diablos querrías usar ASP.NET? ¿Te has quedado atrapado en los 90?". Estas son las palabras que salían de la boca de un viejo compañero de trabajo mío cuando se me ocurrió la posibilidad de utilizar ASP.NET para un proyecto que estábamos a punto de empezar hace un par de años. Siempre estaba de acuerdo con él la mayoría de las veces. Microsoft había desarrollado un gran lenguaje, un potente framework web y un gran conjunto de herramientas en torno al mismo, y aún así había muchas personas que no estaban contentas. Pero las cosas han cambiado mucho desde entonces, Microsoft ha subido mucho el nivel y le ha dado la vuelta a la situación. ASP.NET ha pasado de ser algo que estabas "obligado" a utilizar porque lo usaban en tu empresa, a algo que quieres usar, por muy desarrollador hípster y moderno que seas... [Más]

FRIKADAS: Objetos impresos en 3D que se conectan a WiFi sin electrónica alguna

Imagínate un bote de detergente líquido para la ropa que puede detectar cuándo se está quedando sin jabón y se conecta automáticamente a Internet para pedir uno nuevo. Lo que es más: imagínate que para hacerlo no necesite incorporar electrónica: que sea el propio plástico el que lo haga. Parece ciencia-ficción, pero los estudiantes de doctorado e investigadores Vikram Iyer, Shyam Gollakota y Justin Chan, de la Universidad de Washington han sido los primeros en hacer que esto sea una realidad gracias a la impresión en 3D de objetos y sensores de plástico que pueden recopilar datos útiles y comunicarse por sí mismos con otros dispositivos conectados a WiFi. No solo eso: han puesto a disposición de todo el mundo los modelos 3D que permiten conseguirlo. Te lo contamos... [Más]

¿Qué diferencia hay entre Docker (Contenedores) y Máquinas virtuales (VMWare, VirtualBox...)?

Mucha gente, cuando oye hablar de Docker y de lo que hace, lo primero que piensa es en máquinas virtuales. Al fin y al cabo, una máquina virtual es un software que permite aislarse del sistema operativo subyacente y compartirlo entre varias aplicaciones. Sin embargo las diferencias entre las tecnologías de contenedores como Docker y las máquinas virtuales son enormes, tanto conceptualmente como en la práctica. En este artículo vamos a repasar brevemente ambas tecnologías para ver cómo trabajan y entender bien sus diferencias. No volverás a tener dudas al respecto 😉 [Más]

Mezclando colores y creando efectos fotográficos en CSS mediante el uso de "blend modes"

Pensemos en un píxel de un objeto o imagen como una terna (r, g, b) donde los valores r, g y b representan la cantidad de color rojo, verde y azul. Estos valores se encuentran en el rango de 0 a 1, siendo 1 la máxima cantidad posible, es decir, (1, 1, 1) sería el color blanco y (0, 0, 0) el negro. Ahora, cuando dos objetos se superponen, habrá uno de ellos que esté por encima (o en el frente), y generalmente su color se impondrá, sustituyendo al que esté debajo (o en el fondo). Sin embargo, los colores de frente y de fondo se pueden mezclar de otras formas, produciendo un color final distinto a ambos. Esto es de uso común en programas de ilustración y diseño gráfico, que nos permiten dibujar utilizando operaciones sobre los colores: desde aritmética básica como sumar y restar hasta otras operaciones más complejas, la combinación de colores invertidos o los cálculos en otros espacios de color. En este artículo vamos a aprender a hacer algunas de estas operaciones con CSS, y a estudiar algunas aplicaciones interesantes. [Más]

Qué es SVG y cómo usarlo para cambiar el color a bullets de listas

Puede que ahora parezca una perogrullada, pero una de las características que contribuyó a la popularización de la web y de HTML (junto a los enlaces de hipertexto) fue la posibilidad de insertar imágenes. Al principio eran simplemente imágenes de mapas de bits, donde reinaban los gif y los jpg por su relación calidad/peso, en función de las características de la imagen. Pero pronto apareció la necesidad de buscar un formato estándar vectorial y así nació SVG (Scalable Vector Graphics) entre 1998 y 2001. [Más]

Ya está disponible .NET Core 2.1

Como ya os comentamos en directo durante la pasada DotNet2018, Microsoft ha anunciado la disponibilidad de .NET Core 2.1. Esta nueva versión incluye mejoras en el rendimiento, el runtime y las herramientas. También incluye una nueva forma de implementar herramientas como paquetes NuGet. Se agrega un nuevo e interesante tipo primitivo llamado Span que opera en datos sin asignaciones de memoria adicionales. Hay muchas otras nuevas API, centradas en la criptografía, la compresión y la compatibilidad de Windows. Es la primera versión que admite chips Alpine Linux y ARM32. En este extenso artículo te contamos las principales novedades. [Más]

"Geek Chic" o cómo los frikis pasaron a dominar el mundo

Quizá ahora te parezca mentira, pero no hace tantos años, ser "geek" no era nada "cool", sino más bien todo lo contrario. En los años 80 y 90, ser el empollón de la clase y que te gustase la tecnología no era precisamente popular. Gracias a la actual presencia de la tecnología en la sociedad y a figuras como Bill Gates, Steve Jobs o Mark Zuckerberg, en los últimos años esto ha cambiado mucho. En este artículo Manuel Lores nos comenta esta evolución además desde el prisma privilegiado que tiene el haber sido un "nerd" en EEUU durante aquella época. [Más]