Esta librería JavaScript te permite crear animaciones con casillas de verificación HTML (o usarlas para convertir imagen y vídeo)

17/10/2021
Artículo original

Esta librería JavaScript te permite crear animaciones con casillas de verificación HTML (o usarlas para convertir imagen y vídeo)

Bryan Braun es un desarrollador web frontend que, hace dos años, tuvo un momento de inspiración al ver un 'letrero de píxeles mecánicos en blanco y negro' cerca de su oficina: decidió que podía y debía hacer algo parecido… pero en HTML, usando casillas de verificación a modo de píxeles:

"Después de tres horas, teníamos un reloj digital en funcionamiento […] pero mi cerebro siguió dando vueltas al tema: un reloj está bien, pero teóricamente, podrías crear cualquier cosa de esta manera. ¿O no?".

Pero, a pesar del potencial de la idea, Braun reconoce que resultaba difícil mostrar tantas casillas de manera correcta y consistente en varios navegadores web.

"Las casillas de verificación no fueron diseñadas exactamente para esto. […] 'Si al menos hubiera una biblioteca que pudiera ayudar a hacer esto', pensaba".

De modo que, unos meses más tarde, Braun convirtió esa idea en Checkboxland, una librería JavaScript que permite "representar texto, animaciones y casi cualquier cosa utilizando únicamente casillas de verificación HTML":

Cuando Braun presentó Checkboxland al mundo, en verano de 2020, aclaraba que "en el futuro, espero dedicar mi tiempo a actividades más valiosas, pero […] a veces el mundo necesita cosas raras y divertidas". Y claramente, esta última reflexión he pesado más que la primera, porque un año más tarde, ha sorprendido a Internet mostrando varios ejemplos de lo que había logrado mejorando su biblioteca

usando matemáticas para lograr animaciones con patrones regulares

…o implementando animaciones interactivas que reaccionan a los clics del usuario (que puedes probar aquí), lo cual le hizo darse cuenta de que estaba en su mano crear juegos como el Pong, el Tetris o Snake.

Un paso más allá: imagen y vídeo

Pero antes de empezar a hacer progresos en el desarrollo de videojuegos mediante casillas de verificación, otra idea le empezó a rondar por la mente:

"Si pudiera mostrar cualquier imagen, entonces no tendría que pasar por el laborioso proceso de definir cada casilla de verificación manualmente o crear un algoritmo para la escena que quería".

Cbl Apple

Y así, recurriendo a documentación disponible sobre la conversión de imágenes en texto ASCII, Braun logró usar su biblioteca JavaScript para convertir imágenes simples en casillas de verificación. Y claro, el siguiente paso era inevitable:

"Pronto me di cuenta de que convertir imágenes supone recorrer el 90% del camino hacia la conversión de vídeo, así que esa se convirtió en mi próxima tarea".

Muy pronto eso se tradujo en nuevos cambios en la API de Checkboxland para poder "cargar cualquier vídeo y generar instantáneamente una versión con casillas de verificación". De hecho, podemos probar en su web esta funcionalidad, usándola para convertir cualquier vídeo que subamos.

Y, por si esto no fuera suficiente, también ha creado un filtro de webcam para convertir sobre la marcha la señal de vídeo de la misma en —sí, efectivamente— más casillas de verificación. Aquí la prueba:

I made a webcam filter out of html checkboxes.

Try it out here: https://t.co/1lBHfEgmhw pic.twitter.com/tZrFOg3PWl

— Bryan Braun (@BryanEBraun) September 9, 2021
(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Ocho cursos gratis para aprender Python desde cero

14/10/2021
Artículo original

Ocho cursos gratis para aprender Python desde cero

Por primera vez en más de 20 años, Python se ha proclamado como líder en los lenguajes de programación más populares de la actualidad, de acuerdo con el índice TIOBE, encargado día a día de monitorizar este sector.

Además, Stack Overflow ha realizado su encuesta mundial para conocer los lenguajes de programación favoritos de los desarrolladores. Como ya sucedió en la encuesta de 2020, Rust vuelve a triunfar en 2021 e incluso ha sido aún más valorado que en 2020, con un 86,69% de desarrolladores que eligieron Rust como el lenguaje que más "aman". Ahora bien, aunque Rust sea el lenguaje más "amado", hay otros dos en los que los programadores prefieren trabajar y son Python y Typescript.

Un listado de cursos gratuitos

python

Aquí tienes una lista con cursos gratuitos que existen y que te permitirán aprender el lenguaje de programación de Phyton desde cero, online y de forma gratuita.

  • Programación para todos (empezando con Python) de la Universidad de Michigan en edX. Este curso de Python tiene el objetivo de enseñar a todo el mundo lo básico de la programación de computadoras usando Python. Por ejemplo, puedes aprender a construir un programa de una serie de instrucciones simples en Python. No tiene prerrequisitos y cualquier persona con experiencia moderada con computadoras debe poder dominar los materiales en este curso.

  • Introducción a la programación con Python de la Universidad Austral en Coursera. Este curso muestra conceptos básicos de programación utilizando el lenguaje de programación Python en su versión 3.0. "Python tiene una sintaxis sencilla y compacta. Esto te permitirá aplicar rápidamente los conceptos aprendidos en los distintos aspectos de tu vida", dicen desde la universidad. El curso no requiere conocimientos previos de programación y utiliza sólo matemática básica. Este programa se desarrolla en 4 MOOCS de 4 semanas de duración cada uno

  • Curso básico de Python desde cero para principiantes en Udemy por Carlos Alfaro, desarrollar de aplicaciones web utilizando tecnologías como HTML5, CSS, JavaScript, Python,PHP, Ajax y MySQL. Este programa empieza en Udemy y sigue en el canal del informático. Entre el contenido hay formación para ejecutar o correr programas en Python; aprender para qué sirve el formato .pyw en Python; configurar Sublime Text y Visual Studio Code para programar en Python; o definir múltiples variables en una sola linea en Python, entre otros asuntos.

  • Análisis de datos con Python de IBM y disponible en Coursera. El objetivo en este caso es aprender a analizar datos con Python. Este curso va desde el aprendizaje de los conceptos básicos de Python hasta la exploración de muchos tipos diferentes de datos.

  • Crash Course on Python de Google en Coursera. Ofrece un Certificado profesional de Automatización de TI de Google con Python. Este curso es en inglés y dura 32 horas. Este curso está diseñado para enseñar los fundamentos para escribir programas sencillos en Python utilizando las estructuras más comunes. No es necesario tener conocimientos previos de programación. Al final de este curso podrás escribir programas sencillos usando Python y resolver un problema de programación complejo.

  • Python: aprender a programar de la Universidad Poelitécnica de Valencia en Coursera. Este curso empieza desde 0 para aprender a programar con Python, tratando los fundamentos de programación como son las variables y constantes, las condiciones, los bucles y los módulos y funciones. Al acabar el curso el alumno será capaz de realizar programas a la hora de procesar datos de diversas fuentes para obtener conclusiones. Enseña la plataforma Anaconda, los Jupyter Labs y el entorno de desarrollo Spyder.

{"videoId":"x80kt27","autoplay":true,"title":"La carrera de programador en 2017 y en el futuro (con Javier Santana)"}
  • Python for Absolute Beginners! en Udemy. Como su propio nombre indica, este curso es para super principantes, es decir, personas que no tengan ni idea de programación en absoluto. Es en inglés y arranca desde el momento en que aprendes a instalar Python.

  • CS50's Web Programming with Python and JavaScript de la Universidad de Harvard en edX. Es en inglés. Los temas que trata el curso incluyen el diseño de la base de datos, la escalabilidad, la seguridad y la experiencia del usuario. A través de proyectos prácticos, aprenderás a escribir y utilizar APIs, crear interfaces de usuario interactivas y aprovechar servicios en la nube como GitHub y Heroku**.

(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Microsoft y Nvidia lanzan Megatron-Turing, "el modelo de lenguaje más potente del mundo", con el triple de parámetros que GPT-3

13/10/2021
Artículo original

Microsoft y Nvidia lanzan Megatron-Turing,

Microsoft y NVIDIA acaban de anunciar el modelo de generación de lenguaje natural Megatron-Turing (MT-NLG), impulsado por sus tecnologías DeepSpeed y Megatron. Es un modelo monolítico de lenguaje transformado que, según las empresas fabricantes destaca por ser "el mayor y más potente modelo monolítico de lenguaje transformado entrenado hasta la fecha".

NVIDIA y Microsoft, han logrado una eficiencia de entrenamiento con su nuevo lenguaje. Entre sus puntos fuertes encontramos que se unen una infraestructura de entrenamiento acelerada por una GPU de última generación con una pila de software de aprendizaje distribuido. En el siguiente gráfico, las empresas han hecho una comparativa entre Megatron-Turing y otros modelos, como es el principal conocido hasta ahora, el GPT-3:

Model Size Graph 1024x661

Como sucesor de Turing NLG 17B y Megatron-LM, MT-NLG tiene el triple de parámetros que el mayor modelo existente de este tipo lo que le ofrece mayor precisión en un amplio conjunto de tareas de lenguaje natural. Tiene la capacidad de predicción para finalizar palabras, comprensión de lectura, razonamiento de sentido común, inferencias en lenguaje natural y desambiguación del sentido de las palabras.

Desde Nvidia explican que habrá que ver cómo la MT-NLG dará forma a los productos del futuro y motivará a la comunidad para ampliar los límites del procesamiento del lenguaje natural (PLN). Los modelos lingüísticos con un gran número de parámetros, más datos y más tiempo de entrenamiento adquieren una comprensión más rica y matizada del lenguaje, por ejemplo, adquiriendo la capacidad de resumir libros e incluso código de programación completo.

El software que se ha unido

De acuerdo con Nvidia, la colaboración unió el software de NVIDIA Megatron-LM y Microsoft DeepSpeed, para crear un sistema paralelo 3D eficiente y escalable capaz de combinar el paralelismo basado en datos, pipeline y tensor-slicing para resolver estos problemas.

El sistema utiliza el tensor-slicing de Megatron-LM para escalar el modelo dentro de un nodo y utiliza el paralelismo de tuberías de DeepSpeed para escalar el modelo entre nodos.

Por ejemplo, para el modelo de 530.000 millones, cada réplica del modelo abarca 280 GPUs NVIDIA A100, con tensor-slicing de 8 vías dentro de un nodo y paralelismo de pipeline de 35 vías entre nodos.

Para entrenar MT-NLG, Microsoft y Nvidia afirman haber creado un conjunto de datos de entrenamiento con 270 mil millones de tokens de sitios web en inglés. Los tokens, una forma de separar partes de texto en unidades más pequeñas en lenguaje natural, pueden ser palabras, caracteres o partes de palabras.

El conjunto de datos que se han usado para este desarrollo procede en gran medida de The Pile, una colección de 835 GB de 22 conjuntos de datos más pequeños creada gracias a la Inteligencia Artificial de código abierto EleutherAI. "The Pile" abarca fuentes académicas (como Arxiv, PubMed), comunidades (StackExchange, Wikipedia), repositorios de código (Github), etc.

Comparación con GPT-3

microsoft

Para hacernos una idea de su potencia, este modelo Megatron-Turing (MT-NLG), incluye 530.000 millones de parámetros, el triple que el mayor modelo existente hasta ahora, el GPT-3. Hay que recordar que el GPT-3 ha sido creado por OpenAI, la famosa organización sin ánimo de lucro enfocada en la investigación sobre inteligencia artificial fundada por Elon Musk, y en la que empresas como Microsoft han invertido cientos de millones de dólares.

El modelo de lenguaje llamado GPT-3 es capaz de programar, diseñar y hasta conversar sobre política y economía. La herramienta fue ofrecida al público como una API open source.

En su lanzaamiento el pasado año, GPT-3 supuso el modelo de lenguaje más poderoso creado hasta la fecha. Es una inteligencia artificial, un modelo de machine learning que analiza texto o datos para ofrecer predicciones de palabras en función de todas las palabras anteriores. Es lo que se usa en aplicaciones de procesamiento natural del lenguaje o PNL.

{"videoId":"x81q7ad","autoplay":true,"title":"Qué es la inteligencia artificial"}
(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Cómo crear usuarios locales en Windows 11 (evitar el uso de cuentas online de Microsoft)

08/10/2021
Artículo original

Esta semana se ha presentado la versión definitiva de Windows 11, la siguiente generación de sistemas operativos para escritorio de Microsoft. Esta versión ofrece una interfaz de usuario renovada bastante bonita y un nuevo menú de inicio y barra de herramientas. Esta última es más limitada que la de versiones anteriores, y puede que algunos usuarios avanzados la encuentren algo limitante. Y en el momento de escribir esto todavía no ha incorporado el subsistema de Android que nos va a permitir ejecutar aplicaciones de Android nativamente en Windows (y que va a ser la bomba).

Una de las cosas más molestas para algunos (por ejemplo, para mi) es que, con Windows 11, Microsoft ha tratado de tener bajo mayor control a sus usuarios, del mismo modo que hacen los móviles, donde sí o sí debes tener una cuenta de Google o de Apple para poder trabajar con ellos. Para ello fuerza a que la cuenta con la que accedas a Windows 11 sea una cuenta de Microsoft en la nube (o sea, una cuenta de Hotmail/Outlook o similar). Esto es así incluso en las ediciones Profesional o Empresarial del sistema, en donde debes loguearte con una cuenta de Office 365 o de Azure Active Directory.

Sin embargo, esto es muy molesto si lo único que quieres es tener un usuario aislado para trabajar, sin tener que estar controlado todo el rato por Microsoft.

Como Microsoft no quiere que crees usuarios locales, está todo bastante oculto y es muy poco intuitivo, pero enseguida te contaré cómo hacerlo. Hay más maneras de hacerlo, y tenemos algún software específico del que ya te he hablado, pero esta manera es la más amigable y sencilla con lo que trae el sistema de serie.

Vamos a verlo paso a paso y de manera visual...

Lo primero es abrir la configuración del sistema desde el menú de inicio o pulsando Windows+I. Dentro de la ventana de configuración hay que ir al apartado de Cuentas:

Pantalla de Configuración>Cuentas

Dentro de este apartado tenemos la opción de añadir nuevos usuarios, con el botón Agregar cuenta. Púlsalo. El problema es que te ofrecerá añadir una cuenta de Microsoft, no una cuenta local, y no hay rastro de esas palabras o similares en ningún lado. Como digo, no les interesa... Sin embargo, si te fijas, hay un pequeño enlace en la parte inferior que dice No tengo los datos de inicio de sesión de esta persona:

Agregar nueva cuenta, solo opción nube

En la siguiente pantalla te intentan llevar al huerto otra vez dándote opciones para incluir una cuenta de Microsoft,  como usar un teléfono o crear una nueva, pero ahí ya te ofrecen una tercera opción que es la buena: Agregar un usuario sin cuenta de Microsoft, ¡Yupi!:

La tercera opción, destacada

Ahora sí, te pedirá que introduzcas un nuevo usuario y una contraseña para este (y que la confirmes). Fíjate también en que, oculto por abajo (tendrás que hacer scroll) hay una serie de preguntas y respuestas para recuperar la cuenta que tendrás que rellenar obligatoriamente y que a mi personalmente me repatean. Pero si no las cubres no podrás seguir adelante:

Diálogo de creación de una nueva cuenta local

Bien, al cubrir todos estos campos y darle as siguiente ya nos habrá creado la cuenta local nueva y la veremos en el diálogo de cuentas del principio.

Pero hay una cosa importante respecto a la cuenta que se acaba de crear: es una cuenta local limitada. Es decir, no tiene capacidades de elevación de privilegios, por lo tanto no puede instalar programas ni realizar tareas de administración que requieran de elevación de privilegios. Esto puede ser lo ideal si queremos que la cuenta la utilice un usuario "convencional", que no requiera de estas cosas y tan solo use software que le demos instalado nosotros (por ejemplo, tus hijos), ya que serán cuentas más seguras pues cualquier virus o troyano que entre requerirá seguramente de elevación de privilegios para instalarse o para funcionar. Pero si es para nosotros o para un usuario avanzado, querremos que tenga la categoría de administrador.

Vamos a hacerlo. Despliega el usuario pulsando en la flechita que tiene a la derecha y verás una opción para Cambiar el tipo de cuenta:

La opción mencionada, seleccionada en la interfaz

Esto te lanzará un diálogo muy sencillo en el que simplemente hay un desplegable con dos tipos de usuario: Limitado y Administrador.

Diálogo de cambio de tipo de usuario

Elige el segundo y dale a Aceptar. Por supuesto, te pedirá elevación de privilegios para hacerlo, pero al aceptarlo tendrás un nuevo usuario local administrador.

Acceder al sistema con el nuevo usuario

Vale, ya tenemos el usuario. Ahora hace falta poder entrar con él. Es muy sencillo, pero es fácil que se te escapen un par de detalles, especialmente el segundo que te voy a contar.

Por defecto, cuando inicies de nuevo el equipo (o cierres la sesión original) te vas a encontrar con que te sale el usuario actual y te pide su clave. Pero, si te fijas, en la parte inferior izquierda de la pantalla te ofrece los otros usuarios con los que puedes acceder:

El usuario nuevo abajo a la izquierda en la pantalla de login del sistema

Pulsa sobre ese "Otro usuario" para cambiar la pantalla de login:

El diálogo con el usuario en blanco

Aquí hay una cosa muy importante: cuando te sale el diálogo para acceder con otra cuenta, ésta por defecto espera que sea una cuenta de Microsoft en la nube. Así que si metes el nombre de usuario y contraseña del usuario que acabas de crear, te va a dar un error todo el rato.

¿Cómo lo solucionas?

Muy sencillo poniendo el prefijo .\ (punto, barra inclinada a la izquierda) delante del nombre de usuario. Esto le indica al diálogo de login que el usuario que vas a utilizar es local, saltándose la restricción por defecto que tiene de utilizar solo cuentas en la nube. O sea, en el caso de mi usuario de pruebas que he creado que se llamaba jmaa, sería así:

El dialogo, ahora sí, con la cuenta local

Fíjate en cómo ahora te dice que la sesión se va a iniciar en el equipo local (en mi caso se llama Win11JOSE).

Con esto ya podrías acceder y a partir de ahora además te mostrará esa cuenta como cuenta por defecto, ya seleccionada, cuando entres.

¡Espero que te resulte útil!

El teclado para 'copiar y pegar' código de Stack Overflow, una inocentada convertida en gadget (y ya en preventa)

04/10/2021
Artículo original

El teclado para 'copiar y pegar' código de Stack Overflow, una inocentada convertida en gadget (y ya en preventa)

Stack Overflow es la mayor comunidad online sobre programación de software, y sobre sus usuarios circulan por Internet bromas recurrentes sobre su uso masivo del 'copia y pega' como método para sacar adelante sus propios proyectos.

Hasta tal punto, que durante el último April Fool's (el Día de los Inocentes anglosajón, celebrado el 1 de abril), Stack Overflow hizo la broma de publicar que los usuarios del sitio se verían sometidos a partir de ese momento a una limitación en el número de 'copia y pega' que podría llevar a cabo dentro del sitio web…

… y que la única forma de superar dicha limitación pasaba por comprar un nuevo miniteclado fabricado por ellos mismos y bautizado como 'The Key' (ver más arriba), dotado de sólo tres teclas enfocadas únicamente a la tarea de pegar (Ctrl + C) y pegar (Ctrl + V) código.

La tecla 'Control' del ingenioso producto, como se puede ver, había sido sustituida por el logotipo de Stack Overflow. O lo habría sido si el miniteclado en cuestión hubiera existido realmente en ese momento.

Por otro lado, tampoco era tan difícil darse cuenta de eso, dado el modo en que redactaron el anuncio de su 'lanzamiento', con maravillosos párrafos como éste:

"El volumen y el tono de nuestros clics se elaboraron sampleando el maravilloso canto natural de los pájaros cantores. Sometimos esos datos de audio a vanguardistas sistemas de deeep learning para producir un sonido optimizado para mejorar la productividad y el estado de ánimo".

Una broma tan exitosa que se hizo realidad

Pero los fans de Stack Overflow, una vez superado el susto del falso límite de copiados y pegados de código, se mostraron más bien decepcionados de no poder hacerse con un ejemplar de The Key. Tanto, que los responsables del portal empezaron a pensar que quizá sí habría mercado para lanzar un gadget tan 'geek' como éste.

De modo que, finalmente, se han lanzado a fabricarlo y distribuirlo. Cualquier usuario puede hacerse por uno en preventa, por sólo 29 dólares más gastos de envío, en la web de Drop. El primer lote, según Stack Overflow, se empezará a enviar el 13 de diciembre. A tiempo para las compras navideñas.

Stack
La broma del 1 de Abril de Stack Overflow.
"Los buenos artistas copian, los grandes artistas roban, pero los mejores artistas copian y luego pegan" (Ben Popper, director de contenido de Stack Overflow)

Se trata de un teclado mecánico, con switches Kailh Box Black y carcasa de aluminio metalizado, con tres soportes antideslizamiento y un conector USB-C.

Si no terminas de encontrarle un posible uso a The Key (bien porque no practiques el noble arte del copia y pega, bien porque hayas adquirido gran maestría a la hora de realizarlo con tu teclado habitual), sin duda te alegrará saber que estamos ante un miniteclado programable, de modo que podríamos asignarle cualquier tarea a cualquiera de estas nuevas teclas (o combinación de las mismas).

(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Cómo leer cualquier artículo de Internet sin publicidad, ni comentarios y sin aceptar cookies

24/09/2021
Artículo original

Imagen ornamentalBueno, este es un truco sencillo pero muy efectivo. En realidad son 3 trucos en uno ya que no son excluyentes y se puede usar una combinación de 3 cosas diferentes para lograr el objetivo. Lo más importante es que es algo muy cómodo y además con muchas posibilidades adicionales, según el caso... Vamos allá.

1. Modo lectura integrado de Chrome

En primer lugar, mucha gente no lo sabe porque lo ocultan mucho porque no les interesa, pero el navegador Google Chrome incluye de serie un lector de artículos integrado que básicamente lo que hace es generar versiones legibles de las páginas que visitas. Esto es muy útil porque, con un solo clic, puedes tener un artículo perfectamente legible en el que ha desparecido todo lo superfluo: publicidad, comentarios, avisos de cookies y toda esa porquería.

Para activarlo tienes que abrir una nueva pestaña y en la barra de dirección escribir: chrome://flags. Una vez dentro busca la palabra reader y activa el ajuste que se llama Enable Reader Mode:

El flag indicado, ya activado

Ahora tienes que reiniciar el navegador por completo (cerrar todas las ventanas y pestañas).

Al volver a arrancarlo ya te funcionará. A partir de ahora, cuando visites una página y se detecte que se puede convertir al modo de lectura, tendrás un nuevo icono a la derecha de la barra de direcciones para entrar en dicho modo:

El icono en cuestión, a la derecha de la barra, antes del icono de marcar como favorito

Sí, funciona en modo incógnito también.

Al pulsarlo, automáticamente detecta el contenido principal de la página y genera una versión legible del mismo. Funciona mejor en páginas de artículos que de portadas, tenlo en cuenta.

Por ejemplo, en este vídeo vemos un artículo del El País, que tiene muchísima publicidad por todas partes, cosas por el medio y más sugerencias grandes en la parte inferior, aparte de otros elementos que sobran por todos los lados. Al pulsar el botón verás cómo se convierte en un artículo perfectamente legible que tiene tan solo los contenidos interesantes, incluyendo imágenes y/o vídeos propios del artículo si es que los hubiese:

[youtube:lL4dT4WYcMs]

Como ves, se trata de algo espectacular.

Para mi gusto, por defecto, tiene una letra demasiado pequeña y es demasiado estrecho, pero por suerte, se puede personalizar con facilidad dándole a la letra "A" que tiene arriba a la derecha, así:

[youtube:Pp_ONpnFOeo]

La personalización es limitada, pero suficiente para la mayor parte de los casos.

2. Subiendo de nivel: extensión Reader View

Lo anterior la verdad es que está genial y vale para la mayoría de los casos. Además, lo bueno es que no es necesario instalar nada. Ahora bien, hay páginas que no las "pilla" bien y no le hace la vista previa apropiadamente, y además las opciones de personalización son muy limitadas.

Por eso, la segunda opción que uso es la excelente extensión Reader View.

Nota: aunque es una extensión para Chrome, te funcionará en cualquier navegador basado en Chromium como Edge, Brave, Opera o Vivaldi, si bien puede que tenga una versión específica para esos navegadores. También la hay para Firefox aquí.

Esta extensión es como lo que acabamos de ver nativo de Chrome, pero mucho más potente y con mayor calidad para captar la estructura de los artículos. No suele fallar casi nunca.

En este vídeo corto te comento sus capacidades que, como verás, son muy interesantes: poder cambiar con mucho más control el aspecto, imprimir, enviar por email, guardar a disco, ver a pantalla completa, editar el contenido, que te lo lea en voz alta, desactivar las imágenes, o ponerle notas. Como verás, mucho mejor que lo que trae Chrome:

[youtube:EqaEZsXZAQ0]

Puedes personalizar su vista como prefieras usando las instrucciones que tiene en su página. Suele sacar versiones con cierta frecuencia para ir mejorando. Llevo mucho tiempo usándola sin problema. Es altamente recomendable.

Nota: es gratuita pero, si la usas a menudo, te recomendaría que le donases algo a su creador para ayudar con el desarrollo futuro, porque está muy bien.

Dos consejos con Reader View antes de pasar al siguiente:

1.- Por si no te fías (yo nunca lo hago) y porque realmente es la mejor opción, debes activar la extensión para que sólo pueda actuar sobre las páginas cuando tú la pulses, y no siempre. Por suerte, esta extensión soporta esta capacidad. Así que pulsa con el botón derecho sobre su icono y en el menú que aparece elige la opción de que sólo pueda cambiar o acceder a los datos del sitio cuando pulses sobre ella, como muestra esta captura:

La captura muestra las opciones del menú secundario

2.- Permítele el acceso en las pestañas privadas y, opcionalmente, a archivos locales por si quieres aplicarlo a páginas HTML que tengas en disco. Para ello pulsa en Gestionar extensiones en el mismo menú secundario de antes y, en la página que aparece, marca estas dos opciones:

Opciones para permitir en incógnito y para permitir acceso a archivos locales

Así podrás usarla incluso cuando accedas en pestañas privadas, cosa muy útil a veces y que me lleva a la tercera parte de este post...

3. Deberías abrir muchas más cosas en pestañas privadas: te lo pongo fácil

Con lo explicado en los dos apartados anteriores deberías ser capaz de ver la mayor parte de las páginas incluso aunque tengan los avisos de cookies que te ocultan el contenido. Si son páginas que visitas a menudo, lo normal es que aceptes las cookies mínimas para poder entrar y listo. Pero yo, cuando me sale la típica página cuando busco algo a la que sé que probablemente no vaya a visitar nunca más, prefiero abrirla en modo incógnito (pestaña privada), aceptar todas las cookies ahí y leerlo sin problemas, porque al cerrar la pestaña es como si nunca hubieras estado: una cosa menos que ocupa espacio en tu disco.

Es cierto que si pulsas con el botón derecho en un enlace de tu navegador, una de las opciones que te da es la de abrirlo en una pestaña privada:

Las opciones en el botón derecho para un enlace

Pero, ami por lo menos, me gusta más abrirlos primero de la manera convencional para echarle un primer vistazo. Si veo que me interesa ver el contenido completo y que el diálogo de cookies es muy intrusivo o muy tedioso de gestionar (los hay infernales y muy lentos), entonces prefiero abrirlo en una pestaña privada.

Una extensión para Chrome muy cómo para esto es Incognito This Tab. Lo que hace es muy simple y directo: cuando la pulsas te abre lo que tengas en la pestaña actual en una nueva pestaña privada, en modo incógnito:

El botón de la extensión

Sencillo pero muy útil. No hace falta copiar la dirección, abrir una pestaña privada nueva (CTRL+MAYs+N, por cierto), pegarla y darle a ENTER. Con esto es hacer un clic y listo.

Si la combinas con el uso de las anteriores, puedes leer casi cualquier contenido, de manera más cómoda, sin publicidad, sin comentarios, sin aceptar (o sí) las cookies, y sin ningún elemento superfluo que te distraiga de lo importante: el contenido.

¡Espero que te resulte útil!

Conectividad, automatización flexible y datos, los 3 impulsores de la industria 4.0

24/09/2021
Artículo original

Línea de monatje - imagen CCO por Lenny Kuhne: https://unsplash.com/@lennykuhne?

La fabricación inteligente (SM, por sus siglas en inglés) es un concepto amplio; no es algo que pueda implementarse directamente de la noche a la mañana en un proceso de producción. Se trata de una combinación de varias tecnologías y soluciones que, colectivamente, si se implementan en un ecosistema de fabricación, se denomina fabricación inteligente. Esta "solución" se puede clasificar en tres categorías amplias que son conectividad, inteligencia y automatización flexible y, en general, se denomina tecnología habilitadora.

El término tecnología habilitadora o impulsora fue usado por primera vez en el informe publicado en 2019 de forma conjunta por el Foro Económico Mundial y la consultora McKinsey:

Impulsores de la industria 4.0: fuente WWF & McKinsey

FIGURA EXTRAÍDA DEL INFORME DEL FORO ECONÓMICO MUNDIAL DE 2019

Los datos son el epicentro del crecimiento de la fabricación inteligente, pues son los datos quienes decidirán qué hacer y cuándo hacerlo. El análisis de estos datos ayudará a que el proceso de producción sea eficiente.

Conectividad

Los límites horizontales de la empresa se identifican como el rango de cantidades y variedades de productos y servicios que produce una empresa; mientras que, los límites verticales se definen como todas las actividades que se encuentran a lo largo de su cadena de valor. Teniendo en cuenta esta definición, la integración horizontal y vertical, dos de los factores más importantes en una Smart Factory, implica una mayor conectividad y cooperación en todas las dimensiones de la empresa, no necesariamente limitadas al entorno de producción.

En una Smart Factory interconectada, la integración horizontal garantiza que la maquinaria, los dispositivos de IoT y los procesos de ingeniería funcionen juntos sin problemas. La integración vertical garantiza que los datos de producción se utilicen en niveles organizativos más altos (por encima de la planta de producción) al ser incluidos en la toma decisiones de marketing, compras, personal y otras.

Tecnología y conectividad

La capacidad de conectar dispositivos digitales con sistemas de TI a través de Internet de las cosas (IoT) brinda información relevante a las personas que deben tomar una decisión en el momento adecuado. IoT también permite el seguimiento de objetos a través de la línea de producción en tiempo real mediante la integración de dispositivos de identificación por radiofrecuencia (RFID) y otros sensores con Internet.

Por lo tanto, a través de IoT, se puede establecer un flujo continuo de información de los sistemas a las personas, de las máquinas a las máquinas y de los dispositivos a los componentes. La aplicación de IoT en un contexto industrial a menudo se denomina Internet industrial de las cosas (IIoT) o "Internet industrial".

Otras tecnologías que caen bajo la definición de conectividad son la realidad aumentada (AR) y la realidad virtual (VR). En el contexto de la Industria 4.0, la AR se puede implementar como sistemas de asistente, creando una interfaz visual que puede proporcionar información del sistema al usuario en un contexto en tiempo real. La AR puede potencialmente guiar a un usuario con tareas desconocidas mediante la visualización de información. Sin embargo, la realidad virtual permite la visualización de objetos a través de dispositivos semi o completamente inmersivos, como gafas de realidad virtual. Abre un entorno virtual interactivo que puede contener, por ejemplo, información visual sobre las condiciones operativas y modelos virtuales de productos completos, máquinas y fábricas.

Inteligencia

A medida que las máquinas comienzan a comunicarse y detectar su entorno a través de IoT y redes interactivas computacionales, tienen el potencial de volverse autónomas. Sin embargo, para procesar los datos de manera útil, aprender y actuar posteriormente sobre la gran cantidad de datos recopilados por sensores; se necesita inteligencia.

Aquí es donde entra en juego la inteligencia artificial (IA). Además, en el caso de la industria 4.0, cuando se habla de IA, el término "aprendizaje automático" (Machine Learning) es inevitable. ML se refiere a la ciencia de hacer que las máquinas aprendan y mejoren alimentándolas con datos de observaciones e interacciones para imitar el comportamiento humano.

Tecnología e inteligencia

Tal y como adelantamos en el párrafo anterior, la tecnología por excelencia impulsora de la inteligencia es el aprendizaje automático, que a su vez es un subcampo de la inteligencia artificial.

Si necesitas aclarar las diferencias entre los conceptos IA, ML, Big Data, Deep Learning y Ciencia de datos te aconsejo que leas este artículo.

A través de los algoritmos de ML combinados con la captura de datos en tiempo real, las máquinas pueden tomar sus propias decisiones. Por otro lado, dado que la IA tiene el potencial de dar sentido a los datos y actuar a partir de los mismos, puede permitir el mantenimiento predictivo, la previsión basada en simulaciones y otros beneficios de relacionados con la optimización de procesos.

Por último, está lo que se conoce como Analítica Avanzada (AA); se trata de un término genérico que engloba varios métodos utilizados a la hora de hacer predicciones (incluida la IA, Big Data, así como diversas técnicas de análisis estadístico y semántico). En esencia, la AA se conoce como análisis predictivo y se puede utilizar en la toma de decisiones.

Automatización flexible

La automatización flexible, también llamada automatización "suave", ofrece una conversión rápida y sin problemas del proceso o de la máquina, lo que permite a los fabricantes producir una variedad de productos utilizando, por ejemplo, una sola máquina adaptativa.

Tecnología y automatización flexible

Son 3 las tecnologías a destacar en relación con la automatización flexible: la fabricación aditiva (AM, por sus siglas en inglés), los robots autónomos y los robots colaborativos.

La fabricación aditiva (AM) o impresión 3D tiene la capacidad de reducir el desperdicio, permitir una producción personalizada y reducir el inventario. Es un método en el que el material se agrega capa por capa, a diferencia de los métodos de sustracción de material (como por ejemplo el mecanizado) donde la eliminación de material se realizada de una forma predefinida.

En los que se refiere a los robots colaborativos, también conocidos como "cobots", hay cuatro funciones de colaboración para estos: parada con control de seguridad, guía manual, control de velocidad y separación y limitación de potencia y fuerza. Esto implica que los cobots pueden sentir su entorno, pueden trabajar de forma segura en la proximidad de los humanos, detenerse automáticamente y reducir la velocidad cuando sea necesario, así como aprender, mientras se minimiza el impacto de los errores humanos.

Por último, tenemos los robots móviles autónomos. Dado de estos ya hemos hablado extensamente en un artículo que trataba ex profeso de la automatización flexible, ahora no ahondaremos en ello.

Hay más demanda que nunca para el talento open source: un nuevo informe de la Fundación Linux muestra que sobran ofertas de trabajo

22/09/2021
Artículo original

Hay más demanda que nunca para el talento open source: un nuevo informe de la Fundación Linux muestra que sobran ofertas de trabajo

En conjunto con la famosa plataforma de educación online edX, la Fundación Linux ha publicado le edición 2021 de su informe anual sobre trabajos open source, y todo apunta a que las empresas están cada vez más desesperadas por contratar especialistas en la materia.

No importa si eres desarrollador, administrador de sistemas, trabajas con DevOps o con Cloud Native, si tienes habilidades open source, es probable que haya un trabajo bien pagado esperándote ahí afuera.

...especialmente si eres experto en Kubernetes

Tecnologias Open Source Mas Buscadas
Las tecnologías más importantes para quienes contratan expertos en open source

Para su informe, en la Linux Foundation entrevistaron a 200 directores de contratación técnica y 750 profesionales del código abierto. Para el 97% de los empleadores, contratar talento open source es una prioridad, mientras que más del 50% dijeron que aumentarán las contrataciones este año.

La principal prioridad está en el desarrollo de aplicaciones nativas en la nube y las habilidades de operaciones. Cloud Native o 'la nube nativa' encabeza la lista de habilidades necesarias con más del 46% de los empleadores están buscando personas con conocimientos de Kubernetes.

Es tan alta la demanda, que por primera vez en historia de la encuesta, las habilidades de la tecnología de la nube y contenedores son más demandadas que las de Linux con bastante diferencia: 41% versus 32%. Esto no quiere decir que Linux no siga siendo una habilidad muy demandada, después de todo, sin Linux prácticamente no hay nube.

Por primera vez en la historia de este informe, hay más demanda para Kubernetes que para Linux

Al menos en EEUU, el salario medio anual de un experto en Kubernetes ha subido cerca de los 150.000 dólares anuales. Esto probablemente tenga que ve con otro dato del informe, y es que en el último año, 3 de cada 5 profesionales ha aumentado su uso de la nube.

Otro dato importante a tener en cuenta es que la inmensa mayoría de los empleadores le dan prioridad a los profesionales que tengan certificaciones y es más probable que te contraten si las tienes. Al mismo tiempo que están aumentando el tiempo de entrenamiento que ofrecen a los empleados y también la mayoría está dispuesta a pagar al talento por estas certificaciones.

Finalmente, poco menos de la mitad de los encargados de contratar empleados dicen que quieren talento que haya contribuido a algún proyecto open source.

{"videoId":"x7ziu8u","autoplay":true,"title":"Las matemáticas no se me dan mal, quiero aprender a programar CAPTCHA 2x04"}
(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Travis CI expuso las claves de miles de proyectos open source durante una semana: el líder de Ethereum recomienda buscar alternativas

16/09/2021
Artículo original

Travis CI expuso las claves de miles de proyectos open source durante una semana: el líder de Ethereum recomienda buscar alternativas

Entre los días 3 y 10 de septiembre, los repositorios públicos de código abierto que hicieron uso de la herramienta Travis CI estuvieron exponiendo sus contraseñas, credenciales y tokens a un posible robo. Felix Lange, desarrollador de Ethereum, descubrió la vulnerabilidad el día 7 y dio la voz de alarma a los responsables de la plataforma.

Y, si bien ésta ya ha quedado parcheada, el equipo de Ethereum afirma ahora que tuvieron que presionar a los responsables de Travis CI para que tomaran medidas, y que —tras hacerlo— no se explicó debidamente la situación al resto de usuarios afectados. Según afirmaron en Twitter,

"tras tres días siendo presionados por múltiples proyectos, @travisci parcheó silenciosamente el problema el día 10. [No se ha llevado a cabo] ningún análisis, ningún informe de seguridad, ninguna autopsia, ninguna advertencia a ninguno de sus usuarios de que sus secretos podrían haber sido robados".

Finalmente, Travis CI ha admitido públicamente la vulnerabilidad (clasificada como CVE-2021-41077), si bien ha minimizado su importancia:

"Según la información recibida, un repositorio público bifurcado a partir de otro podría presentar una solicitud de extracción y, al hacerlo, obtener acceso no autorizado a los datos secretos del repositorio original. En este escenario, dichos datos siguen cifrados en la base de datos de Travis CI. El problema sólo se aplica a repositorios públicos, no a repositorios privados".

El boletín de seguridad de Travis CI aprovecha para recordarnos que "cambiar cada cierto tiempo sus claves es algo que todos los usuarios deberían hacer"

Szilágyi, líder de Ethereum, señala en sendas declaraciones para The Register y Ars Technica que, por mucho que las claves secretas permanezcan encriptadas mientras permanecen en el disco en Travis,

"una vez da comienzo de compilación, Travis las desencripta y las inyecta en las compilaciones en forma de variables de entorno".

"[Pero] en el código externo, dichas las variables no deberían insertarse, ya que el mantenedor no tiene control sobre el código que envían las personas ajenas al proyecto. El problema fue que estropearon algo y terminaron inyectando las claves secretas en compilaciones que no eran fiables".

Szilágyi, decepcionado con la actitud de la plataforma, ya ha recomendado a los desarrolladores que consideren la opción de buscar una alternativa a Travis CI, para que "transfieran sus proyectos lejos de Travis de forma inmediata e indefinida".

{"videoId":"x811lis","autoplay":true,"title":"'Oh My Git!', el videojuego para aprender a usar Git"}

¿Qué ofrece exactamente Travis CI?

Travis CI es una plataforma distribuida de generación e integración continua, lo que significa que nos permite conectarnos con nuestro repositorio Git (alojado en Github o Bitbucket) y clonarlo para llevar a cabo pruebas en nuevos entornos virtuales, con diferentes configuraciones, tras cada 'push' realizado, regenerando el proyecto.

Si ninguna de las pruebas realizadas a través de Travis CI falla, se considera una compilación exitosa y queda lista para su implementación en el correspondiente host o servidor web.

Gran parte de la popularidad de Travis CI (desde 2019 ha sido usada por más de 600.000 usuarios para poner a prueba casi un millón de proyectos de código abierto) deriva del hecho de soportar más de una veintena de lenguajes de programación, desde los más populares como C/C++, Java, Python, Javascript y PHP hasta Clojure, D, Scala, Swift o F#.

Yml
Una búsqueda en GitHub del archivo de configuración travis.yml devuelve más de 35 millones de resultados.
(function() { window._JS_MODULES = window._JS_MODULES || {}; var headElement = document.getElementsByTagName('head')[0]; if (_JS_MODULES.instagram) { var instagramScript = document.createElement('script'); instagramScript.src = 'https://platform.instagram.com/en_US/embeds.js'; instagramScript.async = true; instagramScript.defer = true; headElement.appendChild(instagramScript); } })();

Concurso Galardón Ruby Fukuoka 2022 - Los programas participantes serán juzgados por Matz

14/09/2021
Artículo original

Estimado entusiasta Ruby

El Gobierno de Fukuoka, Japón junto con “Matz” Matsumoto quisieran invitarlo a participar en el siguiente concurso de Ruby. Si ha desarrollado un programa en Ruby interesante, por favor anímese a aplicar.

Concurso Galardón Ruby Fukuoka 2020 - Premio Mayor - 1 Millón de Yenes!

Fecha límite: 3 de diciembre de 2021

Fukuoka Ruby Award

Matz y un grupo de panelistas seleccionarán los ganadores del Concurso Fukuoka. El premio mayor del Concurso Fukuoka es de 1 millón de yenes. Los ganadores del premio mayor en versiones anteriores incluyen a Rhomobile (USA) y Centro de Clima APEC (Korea).

Los programas que ingresen al concurso no tienen que estar escritos enteramente en Ruby, pero deben aprovechar las características únicas de Ruby.

Los programas deben haber sido desarrollados o actualizados en el último año. Por favor visite el siguiente sitio web de Fukuoka para ingresar:

http://www.digitalfukuoka.jp/events/242

Por favor envie por correo electrónico el formulario de aplicación a award@f-ruby.com

“¡Matz estará probando y revisando su código fuente, así que aplicar es muy significativo! El ingreso al concurso es gratuito.”

Gracias!

Publicado por Fukuoka Ruby el 2021-08-03
Traducción de vtamara

Página Siguiente