Publicado por
José Manuel Alarcón
el
Esto puede parecer una pregunta básica y tonta, sin apenas importancia. Pero en realidad tiene más fondo del que pueda parecer... Tradicionalmente en HTML, si queríamos poner un texto resaltado y que se viese en negrita, la forma de hacerlo era simplemente usando la etiqueta b. La cosa era muy sencilla. Sin embargo, en HTML5 tenemos muchas más opciones que parecen equivalentes. Podemos utilizar también la etiqueta strong, la etiqueta em o la propiedad CSS font-weight aplicada a una etiqueta que envuelva el texto que queremos en negrita. Realmente ¿no es todo lo mismo? ¿Existe una forma más correcta de hacerlo que otras? Pues lo cierto es que no es todo igual. Cada una tiene sus aplicaciones y sus implicaciones, por lo que no es correcto usarlas indistintamente. Vamos a verlo...
[Más]
Publicado por
José Manuel Alarcón
el
Seguro que te enteraste, porque salió en todos los medios del mundo, pero por si acaso: el pasado sábado día 13 de enero miles de hogares en las islas de Hawái se despertaron a las 8 de la mañana con una alerta de ataque nuclear desde Corea del Norte. Fue la metedura de pata de una persona, pero en este artículo nos preguntamos si realmente fue culpa de él o quizá la responsabilidad es de los que diseñaron y construyeron el sistema informático que hay detrás. De este episodio se pueden obtener enseñanzas interesantes para el desarrollo de cualquier sistema crítico.
[Más]
Publicado por
José Manuel Alarcón
el
Una de las cosas más habituales que hay que hacer en cualquier aplicación es gestionar datos relativos a fechas y horas. Sin embargo, existen muchos pequeños detalles que debemos tener en cuenta cuando manejamos datos de este tipo en nuestro código. Muchos de estos detalles se nos escapan a veces o directamente puede que no los conozcamos. Vamos a repasar a continuación algunos mitos y falsedades sobre el tiempo y las horas que muchos programadores desconocen pero que deberían saber. Puede que algunos los tengas claros, pero seguro que otros te sorprenden...
[Más]
Publicado por
José Manuel Alarcón
el
Una situación muy habitual en cualquier aplicación consiste en la necesidad de leer y escribir archivos con valores separados por comas (CSV, de su nombre en inglés: Comma Separated Values). Como su propio nombre indica, un archivo CSV consiste en una serie de valores separados por comas, y se usan constantemente para compartir información entre diferentes sistemas de una forma muy neutra. Aunque es posible leerlos y escribirlos "a pelo" con Java como cualquier archivo de texto, vamos a descubrir la mejor forma de hacerlo...
[Más]
Publicado por
José Manuel Alarcón
el
Toda tabla de una base de datos debería disponer de **una clave primaria**. Esta clave primaria identifica de manera única a cualquier registro dentro de dicha tabla. Una forma muy habitual de crear una clave primaria es utilizando **un campo numérico auto-incrementado**, también llamado simplemente **"auto-numérico"**. El típico campo "Id" que se traduce en nombres de campo de tipo `idEntidad`. Cada vez que insertemos un nuevo registro la base de datos se encarga de manera automática de asignarle un valor e ir incrementándolo a medida que se añaden más datos. Pero ¿qué pasa si necesitamos desactivar esta funcionalidad momentáneamente, por ejemplo para restaurar datos que se han perdido? En este artículo te contamos cómo lograrlo...
[Más]
Publicado por
José Manuel Alarcón
el
Los años comprendidos entre el lanzamiento de Space Invaders en 1978, y la aparición de las primeras consolas modernas, a finales de los '80, marcaron la que se conoce como la Edad de Oro de los Video-Juegos. No es de extrañar que muchos de los que crecimos en los años '80 sigamos enamorados de los juegos de entonces, y los juegos actuales, a pesar de su espectacularidad, no nos enganchen de la misma manera. Si tienes adición a los 8 bits y además programas, esto te va a interesar...
[Más]
Publicado por
José Manuel Alarcón
el
Una situación típica pero complicada de resolver es cuando tenemos registros en una base de datos que están relacionados con varios registros de otra tabla y lo que necesitamos es obtenerlos todos juntos, en un solo campo, en lugar de obtener un montón de filas con el mismo dato de origen repetido. Suena complicado, pero se entiende mejor con un ejemplo. imagina, por ejemplo, un producto que está en varias categorías, un post en un sistema de blogs que tiene asignadas varias etiquetas, y en general cualquier relación uno-a-muchos. Si quieres sacar toda esa información junta, en una cadena de texto lista para usar puede que no sepas ni por dónde empezar. En SQL Server hay una técnica muy útil para conseguirlo que es la que te vamos a explicar en este (largo) artículo...
[Más]
Publicado por
José Manuel Alarcón
el
Los lenguajes de programación de alto nivel como C, C++, Java o Python, por citar unos pocos, sirven para comunicarse con una computadora mediante algo más fácil de entender para un humano que el "lenguaje máquina" o el lenguaje ensamblador, que está muy cercano a la máquina. Estos lenguajes se llaman "de alto nivel" porque están en un nivel de abstracción mucho mayor que el que ofrece un ordenador: tienen bucles, condicionales, matrices, tipos de datos... Tradicionalmente, el compilador de un lenguaje de alto nivel se encargaba de traducir ese lenguaje "sencillo" en lenguaje máquina, directamente utilizable por el computador a través del sistema operativo. Sin embargo Java, C# y muchos otros lenguajes modernos usan otra técnica para conseguir ciertos beneficios. En este artículo te contamos cómo funciona y cómo se implementa en el caso concreto del lenguaje Java.
[Más]
Publicado por
José Manuel Alarcón
el
Si trabajas en desarrollo web, entonces casi seguro que has escuchado hablar de Webpack. Esta útil herramienta se vende como un "bundler", una herramienta capaz de empaquetar varios módulos JavaScript en un solo archivo .js para optimizar las descargas. Pero lo cierto es que es muchísimo más que eso. Es tan potente que hoy en día ha sustituido por completo a otras herramientas tradicionales de desarrollo web Front-End como Bower, Gulp o Grunt, e incluso a servidores web de desarrollo. En este artículo te explicamos qué es, para qué se usa y cuáles son sus ventajas e inconvenientes.
[Más]
Publicado por
José Manuel Alarcón
el
¿Qué unidad de medida de almacenamiento es un GiB? ¿Por qué aparece en las ofertas Cloud? ¿Y en los discos duros? ¿En qué se diferencia de 1GB? Todas las preguntas contestadas en este breve artículo...
[Más]