Webinar “Accesibilidad de documentos electrónicos”

El pasado viernes 5 de junio participé en el webinar “Accesibilidad de documentos electrónicos” organizado por la Universidad Católica de Cuenca (Ecuador).

El webinar se transmitió en vivo a través de Zoom y Facebook, por lo que está disponible en Facebook (afortunadamente en abierto) a través de Accesibilidad de documentos electrónicos.

 

¿Por qué no me das el código?

Hace unos días recibí este correo:

Buenas tardes Sergio

Lo primero, esperar que estés bien en estos tiempos que corren, y también los tuyos.

Mi nombre es AAA MMM, y, a tenor de precisamente las circunstancias que actuaLmente vivímos, he aprovechado para intentar iniciar, a mis 30 años, la andadura del desarrollo web.

Esto supone para mí un cambio de sector, ya que provengo del legal, pero he de reconocer que la profesión no me llena igual que antes, y que me fascina el mundo digital, al que cada vez nos avocamos de forma mayor, y del cual se ha puesto de manifiesto la necesidad de invertir y confiar en el mismo para desarrollar no sólo la web, sino también nuestro propio sistema.

Reflexiones aparte, darte las gracias por el trabajo que habéis puesto a disposición gratuita de los usuarios, y comentarte una duda acerca del curso.

Mi problema, como quizás ha sido ya el de otros alumnos, es que aunque considero que el curso explica bastante bien los conceptos, a la hora de llevarlos a la práctica es farragoso, no porque el contenido no sea útil, sino porque al distribuirse el material didáctico en formato vídeo, es más complicado de transcribir.

No sé si sería posible acceder directamente al material didáctico de ambas partes del curso desde alguna url, a fin de facilitar la realización de ejercicios y de ahorrar tiempo de transcripción de ciertos comandos y propiedades, con los que recién empiezo a familiarizarme.

Muchísimas gracias a tí y a tus compañeros por el curso, y muchas gracias de antemano

Atentamente,

AAA MMM

Y mi respuesta fue:

Hola AAA.

Muchas gracias por tu correo.

Entiendo muy bien lo que pides, no eres el primero que lo pide. Pero hay un aspecto importante del proceso de aprendizaje que no tienes en cuenta.

Aquí puedes consultar una revista antigua de informática, del año 1985:

https://www.dropbox.com/s/3ukd4wasqg34r6o/Commodore_Soft_Magazine_1.pdf?dl=0

Es similar a las que yo tenía, en ese mismo año, cuando empecé a programar. Puedes ver que costaba 495 pesetas, 3 € al cambio. Según una calculadora de inflación que he empleado, eso equivale a 9 € actuales. Dudo mucho que haya gente hoy en día que pagase eso por una revista de 32 páginas. Pero eso no es lo más importante.

Si ojeas la revista, verás cosas como esto:

O esto:

Son fragmentos de código que tenía que copiar para hacer un programa. Código muy difícil de entender y que, a diferencia del HTML y CSS, el más mínimo error produce que no funcione.

¿Incómodo tener que copiar todo eso?

¿Pérdida de tiempo? Quizás, pero también un entrenamiento para pasar horas delante del ordenador, concentrado en una tarea monótona, que requiere una gran concentración. Y cuando me equivocaba, que por supuesto me pasaba muchas veces, debía entrenar la vista para encontrar el más mínimo error lo antes posible.

Claro, hay gente que dirá que estoy equivocado, que esto que cuento es de la prehistoria, que hoy no es necesario teclear… Si te dan el código listo para copiar y pegar, eso es lo que haces, lo copias, lo pegas y lo pruebas, pero realmente no aprendes. Como dices, recién empiezas a familiarizarte; solo lograrás familiarizarte escribiendo lo mismo, y equivocándote, muchas veces.

Por cierto, aquí puedes encontrar ejercicios sobre HTML y CSS:

http://desarrolloweb.dlsi.ua.es/libros/html-css/ejercicios

Puedes incluso encontrar la solución, por si quieres ahorrar tiempo 🙂

Te deseo mucha suerte en tu transformación.

Un saludo.

Los monstruos que crea JavaScript

Muy graciosas las respuestas que se han publicado en Quora a la pregunta Why is VSCode nearly 300 megabytes while Sublime Text is just 16 megabytes?:

Because Visual Studio Code is based on Electron, which is a horribly, horribly bloated framework that combines the Chromium rendering engine with the Node.js runtime. Writing an application to execute in a web browser is the worst imaginable way to develop software. It’s way over-engineered and overly complicated. And Node.js (JavaScript) is typically 2–6X slower than C++.


Visual Studio Code is a web browser with a code editor glued onto the side using expired epoxy.

VSCode is built on the Chromium rendering engine, which is made to render webpages, and is likely rendering this answer right now. The entire application is written using the duct tape monster that is Javascript. It’s a surprise that it is just 300 megabytes.


Using bloated web based frameworks to implement a desktop application does not make much sense, but .. anyway…

 

Uso de null y undefined en JavaScript

Los valores null y undefined suelen dar muchos dolores de cabeza a los programadores. En el artículo Handling null and undefined in JavaScript se explica cómo se deben usar en JavaScript:

One aspect of JavaScript development that many developers struggle with is dealing with optional values. What are the best strategies to minimize errors caused by values that could be null, undefined, or otherwise uninitialized at runtime?

Some languages have built-in affordances for those circumstances. In some statically typed languages, you can say that null and undefined are illegal values, and let your programming language throw a TypeError at compile time, but even in those languages, that can’t prevent null inputs from flowing into the program at runtime.

To get a better handle on this problem, we need to understand where these values can come from. Here are some of the most common sources:

  • User input

  • Database/network records

  • Uninitialized state

  • Functions which could return nothing