In defense of XHTML [en]

July 29th, 2009

Lasts weeks there has been a wide discussion about standards, mainly originated by the recent discontinuation of XHTML 2 in favour of HTML 5.

Suddenly, lots of XHTML detractors have emerged from their hideouts, most of them, as some realized, like saying “I told you”.

For all those, and some others, I have to say the following:

XHTML has failed in several points.

That’s true.

Has failed mainly in widespreading. It took like 7 or 8 years to reach a point where we could say that most developers were using XHTML.

Has failed also in acomplishing its implicit step-to-XML aim. Lots of people complaint that the whole XHTML thing was a lie because XHTML is mainly served to user agents like html/text.

But.

First. If XHTML widespreading has failed it’s not because the standard itself. It’s because we are working in a profession that moves too fast, with an absolute lack of higher and any other kind of education, and with plenty of new people starting every day to learn web programming with no basis at all, with nowhere to go to learn (did I already say that?), everyone coming from very different fields (graphic design, computing, programming). Everyone self-learning from each other codes, not necesary good examples, in a very anarchic way. An absolute chaos.

Elemental HTML was very easy to understand for everybody. Tags were a few easy “codes” to assign aspect to a content, even far easier with a WYSIWYG tools. Ta-da! Your own web site! That easyness was an open invitation for many to join a new and exciting profession.

But then, new concepts, like separation of content (semantic content), design and functionality arrived. Order arrived. “Huh!”, too much for those who were used to the old way. What happenend then? Plenty of “proffesionals” who arrived precisely because this programming-websites thing was such an affordable task (a bit of photoshoping and a bit of code copy-pasting) were suddenly in a hard position. Now, they should start learning something, really. Did they start looking for a new job? No, not really, well maybe some, but most of them kept doing more or less the same thing for ages. And, as I said before, many more continued arriving to the proffesion and learning from those who already were in it.

To be fair, it was not only inexperienced developers fault. Market was claiming for more and more web designers. Every single company was needing a website. The train was in motion, it couldn’t stop for people to learn so many weird new things. That new stuff could always wait for another day. After all, oldie HTML worked pretty well. Don’t cha think? Where was the problem?

In a so distressing scene, it took what it took for XHTML to take off. XHTML’s fault? Not at all.

But yes, some still claim that the problem is that XHTML is very complex. Well, I find that a huge fallacy. First of all, complex for whom? For non proffesional use there are, and always there will be, tools to easily publish contents in the internet, for everybody. But, for proffesional use, I defend that HTML, or whatever any other script or programming language, has to be as complex as needed to acomplish its goals. Obviously that doesn’t mean that we have to complicate it more than strictly necessary. But we are speaking about a task that is part of a qualified proffesion. If you are not able to understand XHTML or CSS, I’m sorry but then you are trying in the wrong proffesion.

Second. I find the step-to-XML failure argument a bad excuse to generate controversy. It’s true that the final goal of XHTML was supposed to be that. But it’s very demagogic to say that XHTML was a lie just because of that. Because …

… thanks heaven XHTML arrived …

… and broght so many essential things:

Semantics. XHTML was the first standard that deprecated non semantic tags, like b or i. You can consideer that an unimportant detail, but it’s a whole change of vision. Once a developer could understand why b and i old friends were now forbbiden, it could start understanding what semantic means, afterward that understanding he/she could never see code like it used to see it before.

That new vision changed everything. Because, althought HTML 4.01 was pretty close of semantics in intention, it was not 100% semantic. XHTML broke with that. Then, everything started, layouts without tables, spread use of CSS, accesibility, unintrusive javascript, and so on. There was a whole change in the air and everything started growing together. Not only because the arrive of XHTML, of course, but we have to admit that XHTML was in the middle of that huge change.

Order. XHTML brought order in every sense. HTML was permissive with the use of single quotes, double quotes, or no quotes at all for attribute values. That mess ended with the arrive of XHTML. The same happened with lower and capital letters. Lower letters were established for elements and attributes in XHTML. – Oh, come on, Jeremy, how can you say that the indistinct use of lower or capital letters is a question of personal choice? You mean a question of tastes? Please! Remember how code used to be with that permissivity?!

Code is not always for your own personal use. Other people, not just user agents, should be able to read your code. Other people can continue mantaining your work. The same way that safety belt use is compulsory when you drive your own personal car, a minimun strictness in syntax, even for your own personal safety, must be established.

Now again, will we step backwards to that age? Shall we be lenient when, for the first time, things seem to be improving a little bit?

Oh, no! They are coming back!

Some developers that rejected XHTML from the begging, some of them those pseudo-proffesionals I mentioned before (some others of course not), feel now like very brave to proudly claim “I was right, not XHTML, but HTML always was the real way!”? That frightens me a lot. It’s like they were all hidden in caves waiting an oportunity like this to come out with their nasty code.

For those, for whom the important thing was never the code but its result (understanding result as “what is shown in the screen”), what I have to say is: You were wrong before and you are wrong now.

Finally.

It’s true that HTML 5 is supposed to be a continuation of XHTML, removing the X of the XML failed experiment, and adding plenty of new and exciting things, but I find too many gaps in this new way to be happy with that.

I know that most web developers have complaint of the standards development slowness. But, forgetting the fact that standards developers could, in the same way, also complaint of the the standards adoption slowness by web developers, my point is that, after all, good things always need time.

And if we have waited so much for the last brand-new standard, it should be perfect, or almost perfect. But I find so many imperfections so far, specially in semantics and in syntax, that I really can’t hard believe it.

As I said before in my Spanish post about HTML 5: We can’t forget that we are speaking about the standard that will rule in the most important communication enviroment for humanity in the next decades.

It shouldn’t be mistreated, in any aspect, like a trivial thing. And with statements like this I find evident proves that in HTML 5 philosophy there is a bit of slackness in favour of immeadiacy.

For the time being, long live XHTML!

Note: I wrote this article in English in order to reach more people, but as you had already realized I’m not English speaker, my excuses.

Some articles and discussions you should not lose (updated 3/8/2009):

Este artículo tiene 7 comentarios.

Categorizado en: Desarrollo Web, Estándares, Opinión.

Tags: , , ,

Hay 7 comentarios en “In defense of XHTML [en]”

  1. mini-d dijo:

    30 de July de 2009

    “but I find too many gaps in this new way to be happy with that.”

    ¿Qué cosa no te convence a nivel código de HTML5? Escribir <div class=”cabecera”&rt; de 20 mil formas o mejor <header> o mejor escribirlo así? No sé, yo tengo mis dudas.

  2. Julio Loayza dijo:

    30 de July de 2009

    @mini-d:

    Sí, a priori suena muy bien: Etiquetas “estructurales” en base a la estructura habitual (actualmente) en los sitios web. Suena bien, y como dices, semánticamente es en apariencia mucho mejor que la pseudo-semántica actual definida con ids y clases. Sin embargo, a poco que lo examines con detenimiento, te darás cuenta que esa nueva propuesta, que se ve bonita desde lejos, hace aguas por todas partes.

    Y, de hecho, no solo hace aguas, si no que además, en la propuesta actual de HTML 5 está terriblemente mal planteada.

    Te recomiendo que leas mi artículo sobre semántica en HTML 5, donde pongo algunos de los ejemplos que se han estado comentando últimamente. Seguro que lo verás claro.

  3. Juanlu001 dijo:

    10 de January de 2010

    Vaya, llevo toda la mañana leyendo reseñas felices y entusiasmadas sobre HTML 5 y tanto tu artículo sobre semántica como este me han dado muchas cosas en las que pensar… Y me han abierto los ojos en cierto sentido.

    Supongo que una de las claves de todo este asunto es que hay muchas personas a las que el hecho de tener que estudiar para desarrollar sitios web (cosa muy normal) les huele a elitismo o algo así (tal vez tengan problemas nasales), y eso es lo que hace que se pongan de uñas. Pero estoy perfectamente de acuerdo contigo en que hay cosas que no todo el mundo tiene porqué poder ni saber hacer, y no por ello se va a morir nadie.

    Desgraciadamente, cuando empecé en esto tenía 15 años y al leer eso de “Everyone self-learning from each other codes, not necesary good examples, in a very anarchic way”, me he sentido un poco identificado. Espero equivocarme o, al menos, no estar cometiendo barbaridades a diario sin saberlo XD

    En cualquier caso, te acabas de ganar un seguidor.

    ¡Un saludo y felicidades por el blog y por los artículos!

  4. Julio Loayza dijo:

    12 de January de 2010

    @Juanlu001: Muchas gracias por tu comentario. La verdad es que el debate está muy candente.

    Hay un cierto entusiasmo exagerado y desmedido sobre HTML5. Lo peor del entusiasmo es que en es una situación en la que la gente no es capaz de ser crítica con aquello que tiene entre manos. El HTML5 aparece de una situación más que atípica. Un grupo de trabajo ajeno al w3c, que finalmente es “aceptado” por el w3c, que a su vez crea un grupo de trabajo paralelo para no quedarse al margen. Un poco a lo república bananera.

    Como mínimo hay que desconfiar de una situación así. Y no es deseable que esa sea la base sobre la que se construyan los estándares con los que va a funcionar el medio de comunicación más importante de las próximas décadas.

  5. Leonardo Molina dijo:

    12 de February de 2010

    Cuando supe de html5 me pregunté ¿y xhtml2?
    He andado con cautela este tiempo y no me he planteado para nada hacer un sitio html5. Siento que en cualquier momento caerá por su propio peso y que para 2012 andarán en html6 o 5.5

    Google le dio mucha credibilidad al asunto (es Google) pero eso no cambia que sea una empresa que como cualquier otra busca un interés.

    y si, el debate está muy bueno 😀

  6. Chekelin dijo:

    11 de March de 2011

    Es cierto que los resultados que puede dar el código son bonitos, pero también hay quienes pensamos que el mismo código debe ser bonito ¿no creen?

    Por otro lado, muy interesante esta serie de articulos, creo que el blog va directito a mi ‘reader’ xD

  7. 2 de August de 2014

    Hello there! I know this is kinda off topic however , I’d figured I’d ask.
    Would you be interested in trading links or maybe guest authoring a blog post or vice-versa?

    My blog addresses a lot of the same subjects
    as yours and I feel we could greatly benefit from each other.
    If you happen to be interested feel free to shoot me an e-mail.

    I look forward to hearing from you! Terrific blog by the way!

Haz un comentario

Artículos más recientes

Más recientes