Wednesday, July 30, 2008

I Wish I Could Write Better

I wish I could write better. Don't you?

See what I mean? What am I asking, there? Am I being cute, and asking "don't you wish I could write better?" or am I asking if you, yourself, also wish that you could write better? The two simple sentences are just vague enough together that if we walk away from them and move on, some people can reasonably be expected to explain it either way.

I have been writing a long time. I have never come up with anything anyone would remember, probably. I'm kind of proud of a paper I did in college. I got a kick out of a few commercials I did when I was involved in radio. I am very proud of my father's eulogy. I did well with a few articles and reviews for Computer Shopper and some other magazines. But nothing I have written has ever been immortalized on a T-shirt. Nothing is in danger of appearing in Bartlett's Quotations. Still, I have always been a fan of good writing, wherever I may find it.

Have you ever wondered how some people can tell a story in a dozen words, while others need an afternoon? Have you noticed which story is generally better? Brevity is always a goal, but never, as we see above, at the expense of actually conveying an idea correctly.

Some of the best writing being done today is in advertising. Some of the very best work is in single-panel comics. Think of it—you have only the time it takes to turn a page to convince someone they need an entirely new car. You have only thirty seconds to convince someone they need to change the toothpaste they use. An enormous amount of work is brought to bear on the task, when skillions of dollars are at stake.

There are different types of writing. Writing a book is different from writing for a magazine. Magazine writing is different from writing for radio. And of course, writing for the Web is different from everything else. Please try to keep it short.

Online, we don't have the pressure to complete an idea or an argument by the bottom of a page. We don't know how big our "page" might even be. So there is a tendency to put too much on the page. Most people online don't really read the information they seek, they skim what's available, looking for bold or emphasized text, sidebars and lists:
  • Strong, bold text
  • Emphasized text
  • Lists of key items


Always remember your audience. Are there many readers for whom English is a second language? Maybe you will want to lighten up on both idioms and cultural references. Lighten up? Under the weather? Over the hill? Is it possible two people discussing a Hot Car and a Cool Car are both discussing the same vehicle, and both in the same way? What would Maxwell Smart think of a situation like that (if you don't know who Maxwell Smart is?).

Put your stuff away for a day or so and re-read it before publishing. Seeing a page with new eyes is an easy way to catch mistakes. Sure, you meant to tell them A, B and C. But did you? Did you ever really get around to C at all? Make sure your true meaning is clear. Pass the work around and let others see it—and listen to their comments.

There was a Saturday Night Live skit where Ed Asner, as the manager of a nuclear power plant, had to leave a new crew in charge. He cautioned them on the way out, "Remember, you can't put too much water on the reactor core!"

Sure enough, as soon as he was gone, alarms started blaring and lights started flashing and the new guys had to respond. But were they supposed to put all of the water they had on the reactor core? Because, after all, you can't put too much water on the reactor? Or were they supposed to add it a gallon or two at a time, because you can't put too much water on the reactor? Hilarity ensued.

I wish I could write better. Don't you?

Wednesday, July 23, 2008

Where Do You Go For Help?

I'm a reader. Specifically, I absorb most of my information from reading books, magazines and Web sites. A selection of a few of my favorite books is at right. From the magazine rack, I enjoy .Net Magazine ("Dot-Net") and Web Designer, both from England (By the way, how is it that there are no USA-based Web magazines?). These are both expensive, but offer a fresher perspective than the books and most come with handy tutorials and even CD-ROM collections of fonts, utility software and templates for exercises detailed in the issue.

But what about online?

There may well be more good information available online, for free, than is available on a printed page, today.

You often hear me preaching about validating pages, and directing people to the World-Wide Web Consortium's Web site, http://www.w3c.org/. These are the people in charge of our various Web standards. These are the people who decided what should happen when you place a <p> tag on a page. They must know something, right? Well, yes and no. If I were to set about the task of writing a book on HTML, I would start here for my source material, but while the site is a great reference, it's not really a good source for learning things. Every page of the site just drips with committeeism and almost Dilbert-speak. Even that would be okay, but it's just so dry. Here's the W3C, on the subject of visited links. Now you know why I make the Big Bucks, huh?

There is a W3Schools Web site, not affiliated with the W3C, and there is a lot of free material there, but it is crowded with advertising.

So where do mere mortals go for help? Especially busy mortals? Back in the Olden Days, we had a resource that was fantastic, called WebMonkey. Plenty of mere mortals showed up here and, for a few years, learned the in's and out's of Web Design and Development, but it didn't last. Now, it's back, and off to a great start. You can read about all of the various tags, just as before, but the Web is bigger and more complicated than it was, and you can also find out about content management systems here, now. You can learn JavaScript. You can learn MySQL. You can learn PHP. You can learn blog publishing. You can learn RSS. You can learn more than you can learn, if that makes sense—and it's all free.

Microsoft maintains a lot of Web training and related resources. Unfortunately, I can never find what I'm looking for when I start at Microsoft.com. When I have been sent links via E-mail or stumbled upon a page in a Google search, I have been very impressed. I just can never find what I'm looking for there. Understand, please: It's not that it takes me twenty minutes or half an hour. I can never find what I am looking for, there.

Adobe, on the other hand, have a great site. Maintaining the terrific standards of the Macromedia folks, their Dreamweaver resources are outstanding. It's a Framed site, which is too bad. There was a time in the late 1990s, when we feared that one day every page might look and work like this. But at least this is a Framed site that works. You can learn some Dreamweaver here, folks. I know I sure have.

The Kewl Kids hang out at A List Apart. This is the crowd that is dragging the world, kicking and screaming, to the Promised Land of Web Standards. I don't care much for the earlier stuff, and the site has been around forever so there is some very early Early Stuff. But if you pick things up around ALA098 and work forward for a few issues, you will see how far we've come, and why (and who to thank). Articles on A List Apart come from authors you have heard speak at conferences and on podcasts, authors who have written many of the books on your own bookshelf. You won't find tutorials on which <HX> heading to use where. But you will find some wonderful discussions on how to best style your pages, or even parts of pages, like styling your Forms.

And of course, if you have any questions, you can always pop in here and ask me anything. As I say in many of my workshops, "If I don't know the answer, I'll make something up!"

Wednesday, July 16, 2008

Meet It Head On!

What is difficult for you? Tables? Columns in CSS? Adding Padding?

Maybe the better question is How do you deal with this difficulty? Do you just ignore it? Do you try to excuse it with a nervous chuckle "Hehe, I'm just not good at Tables?" Do you use other means to overcome the deficit?

Why not learn Tables? Why not learn columns in CSS? Why not learn about adding Padding?

I'm serious, why not? There aren't a dozen things to know about most tags and attributes and I can guarantee you that if you can drive a car or bake a cake or even order dinner from a menu, you probably have already mastered things that are much more difficult than whatever it is you lack in the world of HTML or CSS understanding.

Let's take tables, for example. Tables are our most common compound tag. Compound tags require two or more tags to "build" a page element. In the case of Tables, we have <table> tags indicating where in the document our Table begins and ends, but then we must describe the actual table itself. In a way, the <table> tags are no different from any other tags. <p> tags indicate the beginning and </p> tags indicate the ends of paragraphs. Whatever it is that a paragraph is and does, we know where it begins and where it ends. With Tables, it's no different. We use <table> and </table>.

So, we have indicated where the Table starts and ends. Now we have to describe the Table itself. This is done left-to-right, in rows. You cannot have anything in a table if it doesn't appear within a row. That is, there must always be at least one row. Table Rows, in keeping with HTML's easy-to-remember tag naming scheme, are put down as <tr> and </tr>.

Once again, while it is necessary that these tags occur within the original <table> tags, there really is nothing special about Table Rows. These tags indicate where on the page, and where within the Table, a Table Row begins and ends.

Finally, the Table Data cells need to be identified. Hmm… Table Data. Do you suppose that's how they arrived at <td> and </td> as the tags involved? And do you think, as straightforward as all of the other tags are, that things would suddenly get jumbled and complicated, now? Or do you suppose that <td> tags merely show where within each Table Row a Table Data cell begins and ends?

So what have we built, so far? Well, we have indicated where on the page our Table should begin and end. We have indicated where within the Table a Row should begin and end, and within that Row, where the Table Data begins and ends. So taking that knowledge, just that little bit of understanding, what kind of table do you think this creates?

<table>
<tr>
     <td></td>
     <td></td>
     <td></td>
</tr>

<tr>
     <td></td>
     <td></td>
     <td></td>
</tr>
</table>

If this looks to you like a single Table, with two Rows, each with three cells, you're correct. See? It's really not that difficult. Just a few simple rules need to be followed: The number of cells in each row must always be the same. And we should not use Tables for page layout.

You can create some very intricate designs on your page using Tables. Columns, headers, borders and so on can all be created and manipulated at will. Where two, three or more boxes need to be reduced into a single box, we can use attributes such as colspan="" or rowspan="" to get the numbers to balance. In our table example above, if we were using the entire first row as a heading or some other single-column entity, we could have added a colspan="3" attribute to our first <td> tag. This is saying that the first Table Data cell actually spans three columns. This balances the number of cells in every row. The first row includes a single Table Data cell that now spans three columns, while the second row actually includes three <td>'s. The two are equal, so everything is fine.

There are several attributes we can apply to Tables. Cellpadding, cellspacing, a border width for example. And of course Tables can be styled using CSS to a degree that Table attributes don't allow. You can elect to have all borders appear as a single pixel, by applying border="1" to the table. But using CSS, we could style the bottoms of the boxes one way and the sides another. We could even make the left-side different from the right-side border, alternate background colors in rows, etc. CSS rocks, remember!

There are many little things involved, but none of this is as hard as doing your own taxes or taking the training wheels off of your child's bicycle. If you can dedicate only fifteen minutes every day to the task of Learning About Tables, you can learn it all within a week, probably. And, once you know it, you can keep that knowledge for the rest of your life. That's a bargain, isn't it?

And then you can get on with the task of learning The Next Thing.