JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

Utilidad de PowerShell para listar y exportar archivos de vídeo con sus tamaños

Hoy he tenido la necesidad de clasificar cientos de archivos de vídeo en función de su duración. En campusMVP manejamos literalmente miles de archivos de vídeo en formato MP4/H2.64 para nuestros cursos, y eso que también tienen en conjunto miles de páginas de teoría y otros recursos, que no solo de vídeo vive el hombre... Bien, el caso es que la tarea no se antojaba fácil, ya que tenía que sacar un listado con todos esos archivos (eso es fácil) pero obteniendo además su duración en minutos y segundos. Por suerte, Windows cuenta de serie con uno de los shells más potentes que existen: PowerShell. Así que me puse manos a la obra y en un rato de pegarme con ello y con un poco de ayuda, llegué a algo que creo que te resultará interesante. Te lo cuento. [Más]

Cómo cambiar el idioma de la interfaz de Visual Studio

Cuando instalas Visual Studio, por defecto se instala con el idioma que tengas en el sistema operativo. Si Windows lo tienes en español, Visual Studio se instala en español. Pero eso no significa que debas conformarte y trabajar en ese idioma. Por suerte instalar y seleccionar un nuevo paquete de idioma es muy sencillo. En este post rápido te cuento cómo hacerlo. [Más]

Buscar y reemplazar en Visual Studio Code cambiando mayúsculas por minúsculas

Visual Studio Code, como casi todos los editores potentes que hay por ahí, permite hacer búsqueda y reemplazo de cadenas utilizando expresiones regulares, tanto en el archivo que estamos editando, como de manera global. Aunque la funcionalidad es muy potente, tiene algunas limitaciones. Una de estas limitaciones es que no permite sustituir por los mismos contenidos pero transformados a mayúsculas o minúsculas. Vamos a ver cómo solventar esta limitación... [Más]

Cómo sacar partido en tus aplicaciones al modo de ahorro de datos de los navegadores

La característica de ahorro de datos de los navegadores todavía no está muy extendida, pero en los casos que de verdad es necesaria (usuarios con restricción de datos, malas conexiones o costes muy elevados de conexión) que nuestra aplicación responda automáticamente a este modo es un plus muy grande que nos puede ayudar a satisfacer a estos usuarios y ganar puntos ante ellos, además de demostrar calidad. Por supuesto, si trabajas para usuarios que van a tener probablemente estas restricciones, como gente de países menos desarrollados o personal que trabaja en zonas remotas (como obras de ingeniería grandes), es algo que puede resultar muy útil. En este artículo te explico en qué consiste, cómo activarla y cómo detectarla para responder ante ella y mejorar la navegación en estos casos. [Más]

Cómo hacer hablar a tu navegador: la API de síntesis de voz

La síntesis de voz por parte de las computadoras siempre ha sido una de las cosas más llamativas que se podían hacer. En la era de los asistentes personales por voz como Siri, Alexa o Google Home, parece una cosa trivial y que casi hemos dado por sentada, pero no era así hace tan solo unos pocos años. Por suerte ahora están tan presentes que es posible incluso implementar síntesis de voz natural (muy realista) en cualquier navegador Web moderno usando unas pocas líneas de JavaScript y peleándonos un poco con algunos pequeños detalles. En este artículo te cuento cómo conseguirlo... [Más]

Carga diferida de imágenes en el navegador (lazy loading) de manera nativa

El tamaño y la cantidad de los recursos asociados a las páginas influye mucho sobre diversos factores de nuestro sitio web. Desde la velocidad de carga de la página, hasta el ancho de banda consumido. Por eso, muchos sitios web, especialmente los que hacen uso intensivo de imágenes, implementan técnicas para que sólo se cargue lo estrictamente necesario en cada momento. A estas técnicas se les suele denominar de "lazy loading" y hasta ahora había que usar JavaScript para conseguirlo. Por suerte ahora existe un atributo HTML que nos permite conseguir el mismo efecto sin programar. Vamos a verlo... [Más]

line-height sin unidades en CSS: ¿para qué se utiliza?

La propiedad CSS llamada line-height, tiene un "truco" importante que afecta a los elementos que heredan el valor de esta propiedad y que, si no lo conoces, puede hacer que obtengas resultados inesperados o que tengas que estar ajustando a mano individualmente la altura de las líneas y retocándolo en varios sitios cada vez que cambies este valor. Te cuento por qué pasa esto y cómo puedes sacarle partido. [Más]

Azure: cómo cambiar la zona horaria de una WebApp

Dependiendo del tipo de aplicación que albergues en un servidor, la zona horaria puede llegar a ser muy importante. Por defecto, todas las WebApps de Azure tienen la zona horaria GMT, independientemente de la zona del mundo en la que estén alojadas. En este post te cuento cómo puedes cambiar la zona horaria para que se ajuste a la que necesites, tanto en Azure WebApps con Windows como con Linux. ¡Allá vamos! [Más]

Personalizar Emmet en Visual Studio Code y librarse del meta "X-UA-Compatible ie=edge"

Emmet es un inventazo. Si no lo conoces ya estás tardando en aprenderlo. Visual Studio Code lo tiene integrado y puedes ahorrar mucho tiempo haciendo tus páginas Web. Sin embargo una de las abreviaturas más importantes, html:5, genera un código un poco "chungo" que estaría genial poder cambiar a voluntad y meter lo que realmente usemos nosotros casi siempre. En este post te explico cómo lograrlo y cómo puedes crear más abreviaturas para acelerar más el trabajo todavía. [Más]

Cómo usar una hoja de cálculo de Google como backend JSON

Hoy te voy a contar cómo puedes montar en un minuto un "backend" de pruebas para cualquier desarrollo utilizando tan solo una hoja de cálculo de Google Drive (Google Sheets). Imagina que tienes que crear un prototipo para un cliente y que no tienes un backend público montado contra el que trabajar para obtener datos. O quizá quieres mostrar una serie de datos en tu web que pueden cambiar con cierta frecuencia y no se justifica montar una base de datos para mantenerlos... Puede haber muchos casos por el estilo. Existen diversas maneras de crear un backend de prueba, pero pocas cosas hay tan sencillas para guardar datos como una simple hoja de cálculo ¿verdad? Vamos a ver dos métodos de hacerlo. [Más]