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 ?

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState