Debate - Hand Coding: the Ultimate Freedom

It’s another SitePoint Debate! Today, two experienced developers argue whether it’s better to hand code your HTML, or create Web pages in a WYSIWYG editor. Don’t miss the opposition’s arguments — they might just change your opinion on this controversy…

When it comes time to sit down and write the HTML code for your new site’s layout, you have two choices: to use a WYSIWYG (what-you-see-is-what-you-get) editor, or to write the code by hand in a text editor like Notepad.

Both methods have a learning curve. Herein lies the decision all developers must make: to use a WYSIWYG editor to generate your html code, or to invest considerably more time to learn to "hand code" your HTML.

For those of you who don’t already know, the basic selling point of a WYSIWYG editor is that it’s easy to use. You can create your whole Website without writing any code. Instead of writing out <img src="images/main.jpg">, you simply choose Insert > Image and the code is produced for you. This is much more advantageous when using tables, not just inserting images. Instead of many lines of seemingly complicated HTML, you just tell the editor how many rows and columns you want, and it does the work for you.

Dreamweaver, the most popular editor costs $399 on Macromedia.com. Crimson Editor (a great notepad replacement) is $0.

HTML is NOT for Everyone

While using a WYSIWYG editor to generate the code for you may be an attractive option, in the long run it is will not give you the best end result.

Coding layouts can become very confusing. The most difficult part of html is using tables, and most layouts use well over a dozen tables (sometimes many more) to achieve the correct look. You need to spend a lot of time working with html to become comfortable with the coding for layouts like that. Learning the code to do it by hand is a much greater time investment than using an editor.

Let me make this point clear: for people who are only going to make one or two Websites, it may not be worth their time to learn HTML (not to the extent to be able to code complicated layouts). For these people, using an editor is probably the better choice. However, for those who are in the business of creating Websites, if you hand code, you will be better off than, and have an advantage over the people who use WYSIWYG editors to write their code.

To say hand coding is better because using an editor is "cheating" is just ignorant.

The Learning Curve

You really don’t feel the full benefits of learning HTML until you are comfortable coding complicated layouts and have spent a considerable amount of time working with code. This means it takes more time to get started making sites.

Now this doesn’t mean that you’re going to just waste this time. If you have no prior HTML experience, learning to use an editor can be quite a task, maybe even comparable to learning to hand code. In practically any book store these days, you will be able to find several 500+ page books about Dreamweaver and Frontpage, not to mention the tons of tutorials that come with each. Going through all these would take a full day or two, at the very least.

The standard way to code is to use many tables to position the elements on your site. Yahoo.com uses approximately 35 tables on their homepage, while SitePoint.com only uses about 15. Coding a layout like this can get quite complicated.

However, HTML is markup — it’s not as complex as most programming languages. Learning to code tables is achievable for anyone, regardless of their experience with computers or other languages. As long as they have the desire, anyone can learn to code tables by hand in a few weeks — or less — with some routine practice, and a little patience.

However, now this time-tested method of using tables is becoming superceded by CSS Positioning. This is a new way to position elements on your page without using tables at all. Instead of coding a table to force an element into the spot where you want it, you can tell the browser where to put it (for example, 100 pixels below the top margin and 250 pixels away from the left margin). This is and will continue to make things much easier for Web developers, and specifically much easier for those who hand code. There are many other added benefits of using CSS-P, such as having a smaller file size for your page, making your content easier for search engines to index (resulting in a higher rating in the search engines), and being accessible to devices besides computers such as screen readers and PDA’s. To learn more about CSS-P, I recommend the following two articles: CSS Positioning and HTML Utopia — Designing Without Tables.

People often like to brag that they "hand code in notepad", as if it makes them a better developer somehow. But there are other options for hand coders. I recommend using the free Crimson Editor or some other nice text editor. It has syntax highlighting (a.k.a. color-coding) and can open many files at once, as well as some other neat things. It’s designed to help developers write code (but not just html). It does not, however, fill in tags or attributes for you.

Advantages of Learning to Hand Code

Once you’ve invested the time to learn to hand code proficiently, you’ll enjoy some cool options and freedoms that those who are restricted to editors don’t.

Time and Control

Once you can hand code confidently and proficiently, creating a new layout will take less time than it would if you used an editor. Controlling extremely small details, and getting the layout to look just right becomes much easier.

Working with Server Side Code

Working with any server side language becomes much easier. If you had very limited knowledge of html, it would become extremely difficult — if not impossible — to work with PHP or ASP. Again, the better you are with html, the easier things become. I actually look forward to the opportunity to write some good ol’ tables when I’m working with PHP! It is also worth mentioning that there are currently no editors for Linux, so should you ever be in a situation where you needed to use a Linux machine to write some code, you’d have to do it by hand.

Layout Maintenance and Updates

When you need to make changes to the layout of the site, it’s very easy if you’re familiar with its code, and this can save time, and provide you more control over the change you’re making (without messing up anything else).

Editors have their place, and they are good at what they do. I’ve used Dreamweaver a lot, and I even teach it, but in the end, if the developer makes the decision not to use it, he or she will be much better off. Knowing HTML makes many things that could otherwise be a real hassle, a real cinch. I’m glad I spent the hours I did learning to hand-code, instead of using an editor.

What do you think? Don’t miss the opposition’s arguments — they might just change your opinion on the hand coding controversy…

Replay

Category: html Time: 2002-12-17 Views: 1
Tags:

Related post

  • AdaptiveBlue Announces Glue: The Ultimate Vertical Social Network 2008-10-29

    At a time when most companies are slimming down operations in order to lower their burn rate and stretch the cash they currently have on hand as far as possible, New Jersey-based AdaptiveBlue is in the lucky position to be announcing a large Series B

  • In TestComplete 8, what tasks are best suited for keyword tests and which ones are best suited for "hand coded" scripts? 2011-05-13

    With version 8 of the automated testing tool TestComplete, the vendor has introduced a new feature called "Keyword Tests" that provides a visual interface for creating automated UI tests without needing to be knowledgeable about writing code (or

  • What is the origin and meaning of the phrase "Lambda the ultimate?" 2011-09-12

    I've been messing around with functional programming languages for a few years, and I keep encountering this phrase. For example, it is a chapter of "The Little Schemer, which certainly predates the blog by this name. (No, the chapter doesn't help an

  • Is touch the ultimate device? 2011-09-27

    Apple has fallen in love with it, all the smartphone-vendors use it, Microsoft is aiming for it with Windows 8. But is touch the ultimate device? Some people will probably answer this question with gestures Kinect-style as a better approach, but gest

  • The Ultimate Writing Toolkit: 22 Awesome Writing Tools 2015-06-01

    "I'm not a writer." I hear some version of this statement nearly everyday, and my answer is always, "You have to be." Whether you're a designer, developer, whoever, you need to be able to write well in a world where so much communicati

  • Win $5,000 in the Ultimate 80s Movie Poster Contest! 2015-11-02

    So you fancy yourself an 80s buff? You know crane kicks and flux capacitors and Apollo Creed like the back of your hand. You nicknamed your oldest son "Chunk". You fear rodents of unusual size. You call your home "The Thunderdome". Now

  • Introducing: The Ultimate CSS Survey 2016-02-10

    As many of you are aware, CSS can be a controversial topic. There are many different syntax preferences, workflow options, and tools – and these kinds of things are often debated and discussed at length in books, blog posts, and forums. As SitePoint'

  • The Ultimate Testing Checklist 2006-07-26

    Testing plays a critical role in the development of your web site and its long-term maintenance. While smaller web sites – especially those with more limited budgets – may not need to follow the formal testing procedures that are required for large-s

  • The Ultimate CSS Reference! 2008-02-27

    Regular readers will no doubt have heard of the new SitePoint CSS Reference site that we launched a few weeks ago. We're pleased to announce that a limited stock of The Ultimate CSS Reference - the hard cover print version of this indispensable refer

  • When using Apache with SSL, does the entire certificate specified with "SSLCertificateFile" directive get handed to the client? 2010-08-13

    When using Apache with SSL, does the entire certificate specified with "SSLCertificateFile" directive get handed to the client? If so, does it contain the private key as well as the public key? --------------Solutions------------- Only the certi

  • what can be done to improve the ultimate insane real time strategy game AI? 2010-09-03

    I had this chat with a friend of mine about whether an AI can be created or not that could beat any human without resource cheating in a real time strategy game. An AI that would play almost perfectly. The AI of today's games have many areas that can

  • What would the ultimate developer training class look like? 2011-03-09

    I think today's typical/traditional 3-5 days developer training classes aren't so great, as you tend to forget half of it shortly after. It's too much one way communication and not enough interaction. Also brain research has shown that this kind of s

  • How do I run a macro in the selenium IDE without having to take my hands off the keyboard? 2011-04-11

    I am looking for some form of utility that can be run from the command line in Ubuntu that will click a button in a specific window. What I want to do is run a macro in the selenium IDE without having to take my hands off the keyboard. --------------

  • Forcing SSL in Apache without hard-coding the hostname 2012-01-16

    I think that I have this sorted (thanks mainly to the question How to redirect non-www to www without hardcoding using .htaccess?), but I still don't entirely understand a couple of things. I would like to force all non-SSL connections to my server t

  • How do I get the Ultimate Ubuntu Home System? 2012-03-04

    Good Day, I am relatively new the Ubuntu world but I am loving it. I am a huge supporter of open source software, open access, and anything that can relate to these concepts. I am tired of paying big industry boodles of money for stuff that I cannot

  • How do you construct a definition query to return only those features in the current month without hard coding the date? 2012-05-09

    I have a feature class containing a date field within a 9.3.1 File Geodatabase. There are "duplicate" features contained within this layer, one feature for each month over the past few months. However, the final dataset may contain dates for the

  • Keep coding the wrong way to remain consistent? 2012-07-03

    Possible Duplicate: Code maintenance: keeping a bad pattern when extending new code for being consistent, or not? To keep things simple let's say I am responsible for maintaining two applications, AwesomeApp and BadApp (I am responsible for more and

  • How can I send a tweet without taking my hands off the keyboard? 2012-07-27

    If I'm typing a tweet in Mountain Lion's new Notification Center panel, is there a way to send the tweet without moving my hands to the trackpad to click the "send" button? I've tried return, enter, ⌘return, and other key combinations, but nothi

  • Is it safe to hand over the admin rights? 2013-11-08

    I have a shared web hosting account where I have several different websites running on WordPress. I want to hand over the admin rights for one of my WordPress installs to someone and I am wondering how secure this is. Can this person having admin rig

iOS development

Android development

Python development

JAVA development

Development language

PHP development

Ruby development

search

Front-end development

Database

development tools

Open Platform

Javascript development

.NET development

cloud computing

server

Copyright (C) avrocks.com, All Rights Reserved.

processed in 1.702 (s). 13 q(s)