From the Editor: March 2005 - View Source

LAMP is great, but the first Web development trick you learned is still one of the most important.

This issue is going to give you a bunch of Web development knowledge. Please use it to help understand the next site or Web application you build. Don't just download a bunch of open-source Web code and mangle it. Clean, valid HTML makes the difference between a Web application that works like an application and one that works like a slow-loading Web site. Make your software do HTML right, and you can do more with the Web.

When the Web was new, we all learned HTML, and it was good. Then the browser wars, WYSIWYG HTML editors and the Internet boom came along. When a Web designer gets squashed between short deadlines, pixel-for-pixel “make it look like that” requirements and buggy inconsistent browsers, the result is bloated pages full of invalid HTML that tricks broken browsers into doing the right thing.

Meanwhile, on the development side, we learned the bad habit of treating HTML like PostScript—something we don't write ourselves. We gave the designers a template directory and faithfully threw their incomprehensible HTML out to the users.

But now it's time to “View Source” again and care about HTML. The Mozilla Project trashed the old Netscape 4 code and released standards-compliant versions. Konqueror got good. Even the proprietary browser vendors got up to speed with Cascading Style Sheets. All of a sudden, a Web application that was used to spewing out tons of <td valign=“top” bgcolor=“#ffffaa”> could simply apply a class to the element and let the stylesheet fill in the details. Life is good again.

At least, it would be, if we would just clean up our sites and Web-based applications. One Linux site I just visited served up a page with a nice stylesheet imported in the page head, then ruined it with a bunch of unnecessary spacer images and tag attributes that override the CSS. Unfortunately, that's typical.

We can't blame the flaky browsers or the pixel-pushing designers anymore. And, it's not like we don't know HTML—we just don't care about it enough. The cause of awful Linux Web sites these days is steaming piles of code that we download, install and don't understand—then clot up with garbage tags until the site looks kind of like how we want. In order to make the Web work, you must understand the software you deploy. If you can't figure out what template or script is responsible for an element you want to change, rm -rf the steaming pile and start over.

When you're testing a Web application locally, or on a fast network next door to the server, it looks like it doesn't matter, and a lean, mean 12kB page seems as fast as a bloated 32kB monster. When you demo the new Web app to Management, all you get is “great job”. When the application goes live, that changes. Even if it's “internal”, other employees will be using it over a VPN from home or a café. Then it all falls apart.

You don't have to be an HTML guru, though you could do a lot worse than to read Jeffrey Zeldman's Designing with Web Standards. But if you want to be a Webmaster, you have to justify the “master” part by keeping site bloat under control. Save the bytes and enjoy the issue.

Don Marti is editor in chief of Linux Journal.

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Web development

Anonymous's picture

When i code php i use nedit, but when i'm lazy i use a wysiwyg editor.
And i'm not the only one. I've searched the net for a wysiwyg editor that makes clean code, but i still sit here and use aolpress !
If i want to i can edit the html code directly and aolpress doesn't produce a lot of garbidge. And that's the solution. People use wysiwyg editors, and the code should be easy to edit. Abiword and OO Writer should really produce good html instead of garbidge!
Why must it be harder to make a web page than a word document ?

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix