Thoughts on the Semantic Nature of HTML5

Old No Comments on Thoughts on the Semantic Nature of HTML5 12

Before I begin let me make a slight disclaimer. HTML5 is not the newest thing in the world. I believe the W3C began recommending its usage somewhere around 2012, so it is certainly not the cutting edge. The point of this brief document is to explain my thinking on both the HTML5 semantic tags and how it relates to application development in general.

Web development has reached a new stage in its lifespan. Modern web applications allow us to place stream video, buy insurance, contribute to anti-malaria campaigns, host our own content and do virtually anything we can imagine with relative ease. While it is equal parts overdramatic and flat out incorrect to attribute these changes to the newest version of HTML, when I was first beginning my journey as a technology professional the new concept of ‘semantic’ elements intrigued me greatly. What I came to find out, however, is that these new tags basically serve as nothing more than a way to force lazy developers to document their code.

My technology education began with me learning simple visual basic for applications. The basic programming concepts of ifs, loops, etc. Then, as I began my computer science and information systems education I started learning java. Needless to say the understanding of procedural languages did not necessarily help me when I started trying to learning markup languages like HTML and XML. My experience with HTML began with a brief overview course I took on static web development. This class was as boring as it sounds. Most of class time was spent explaining stuff that I, as a more technically oriented student, found very dull like how to market your website and how to engage visitors once they are at it. I certainly do not devalue these things as they are essential to getting web content noticed in the vast ocean of garbage that is the world wide web, but all I really wanted to know how to do was to build the web sites themselves. I started my web development education late enough that HTML5 is the only HTML I have ever known.

Now college textbooks are notorious for being excessively wordy, but, being a total newbie to the web development world, I feel into the trap that is believing what I read to be true. The book I was assigned portrayed the new tags as a salvation sent by the overlords of the web development community to save us from our own misguided code. Coming from a procedural programming language background, I understood the pains of poorly documented code. The number of times I had run into a code fragments like this:

// calculate the value
int x = Math.abs(y-y*2*(DumbClass.madeupfunction(“YoloSwagMoney”)+12);

was more than I care to count. Such poor documentation often leads to countless hours spent simply trying to figure out what a code block even does. Semantic tags that, supposedly, self-identify their purpose seemed like a good solution. As I found out later, however, programmers do not like to change the way they do things.

Now part of the problem that I have run into is a lack of willingness from management to allow developers ample time to review, refactor and document their code. If a dev is only allocated 80 hours to build his/her application, it’s not really his/her concern if some other guy two years in the future is going to be able to read and effectively alter the code.  This also applies in the education world, but that’s a topic for an entierly different post. That permitted, I have also found that developers hate doing things they view as unnecessary. If it works why change it? Don’t fix it if it ain’t broke right? Well to that I would say definitely not. The fact that an app passes validation and does what it is supposed to does NOT mean that it is written well. If a dev were writing a simple java application to log a message to the console,

String message = “herpity derp”;
Message.toUpperCase();
System.out.println(message);

Would not be nearly as effective as simply writing

System.out.println(“HERPITY DERP”);

Why then do web developers think that it is ok to have superfluous content that makes their pages more difficult to read? If you can use a <Section> tag why would you instead use a <Div> tag with a id attribute. That does the same thing, its just harder to read. It doesn’t make any sense. Now the counter argument I can already feel rising in the stomachs of the opposing side, is that developers who  are familiar with the old ways are going to find it easier to read HTML documents with the old styles. Point conceded. However, the fact that something is easier for the older developers to understand is often bad for the new wave of developers. Try explaining manual memory management to someone who is only familiar with languages that automate garbage collection. I get it, but The whole point of HTML5 as far as I can tell is to make things easier. Let things be easier. A time has been reached in the technological community such that the focus no longer needs to be entirely on computer efficiency. HTML5 gives the development community an easy way to write code that is easy for a new team member to come in and jump into much faster.

So to get back to the whole point of it all, what do I think about the new ‘semantic’ tags. To be perfectly honest, I don’t really care. It’s all I’ve ever known so I use them. Do I buy into the hype that HTML5 is going to completely change the way web development is done, boost Search Engine Optimization and all the other media nonsense? Of course not. Ultimately, however, I do view the new tags as beneficial so I choose to use them. I view anything that makes my job easier to do as a good thing and I would encourage my colleges to do the same.

Take care my technology friends.

C:\ > EXIT_

John Rolf

Author

John Rolf

Greetings all. My name is John Rolf, and I am an aspiring IT professional, student and all around technology lover. I currently work as an intern at Aegon, the Dutch owned asset management company. I am also a student of Computer Science and Management Information Systems (think business with computers) at Iowa State University of Science and Technology. I have been a long time fan of Eli's content and ultimately decided that this blogging thing was worth a try. Feel free to check out my stuff! Keep it cool geeks!

Related Articles

Leave a comment

Back to Top