¿Es HTML un lenguaje de programación?

Muy interesante el análisis que se presenta en HTML is Not a Programming Language?:

HTML is not a programming language.

I’ve heard that sentence so many times and it’s tiring. Normally, it is followed by something like, It doesn’t have logic, or, It is not Turing complete,.so… obviously it is not a programming language. Like it’s case-closed and should be the end of the conversation.

Should it be, though?

I want to look at typical arguments I hear used to belittle HTML and offer my own rebuttals to show how those claims are not completely correct.

My goal is not to prove that HTML is or is not a programming language, but to show that the three main arguments used for claiming it is not are flawed or incorrect, thus invalidating the conclusion from a logical point of view.

Herramientas para auditar CSS

Muy interesante lo que se explica en CSS Auditing Tools:

How large is your CSS? How repetitive is it? What about your CSS specificity score? Can you safely remove some declarations and vendor prefixes, and if so, how do you spot them quickly? Over the last few weeks, we’ve been working on refactoring and cleaning up our CSS, and as a result, we stumbled upon a couple of useful tools that helped us identify duplicates. So let’s review some of them.

Los datos URI

En el artículo Esquema de URI de datos de la Wikipedia podemos leer:

El esquema data: URI definido en las normas IETF RFC 2397 en un esquema URI que permite la inclusión de pequeños elementos de datos en línea, como si fueran referenciados hacia una fuente externa. Suelen ser mucho más simples que otros métodos de inclusión alternativos, como MIME con cid: o mid:. De acuerdo a la denominación en el RFC, los data: URI son, de hecho, URL.

Por ejemplo, si lo siguiente se copia en la barra de direcciones del navegador, mostrará una página web con el texto “Hola mundo!” en negrita:

data:text/html,<b>Hola mundo!</b>

O lo siguiente, si lo copias a la barra de direcciones, te mostrará un rectángulo rojo de 100×100 píxeles:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADrSURBVHhe7dChAYBAEMCwgzmQ7L8ZO2B+gKtPTH2v73mHnfuUBbMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCswKzArMCs9ZmfqufAfVgKhmhAAAAAElFTkSuQmCC

Más información en Datos URIs.