Friday, January 30, 2009

Small Victories

When I got home from work this evening, there was an envelope sitting on my side of the bed. I asked my wife, who was sitting on her side of the bed working on her laptop, "What's this?"

In a thoroughly confused voice she replied, "It's a check."

Oddly enough, getting a check in the mail lately has not been good news. A particular group managed to screw up some insurance coverage I had and sent our premiums back. (long story that's not worth telling) So I carefully peered into the envelope thinking to myself, "what now?" As I slid the paper out, I read the word "Google" on the top and, for a brief instant, became extremely confused as to why Google would be sending me a check. When I actually looked at the amount of the check it hit me as to what it was and I just had to laugh.

In October of 2004, I signed up for Google AdWords. You know those relatively unobtrusive and easily ignorable "ads by Google" ad banners you see spread around on quite a few web pages? Those are Google AdWords. The site creator chooses to put those on his/her page and each time you or someone else clicks on one of those ads, he/she gets a credit. If enough clicks happen in a specified period of time during which there have been a particular number of impressions (displays of ads), those credits translate into real money. The month after your account credit reaches $100.00 or more, Google cuts you a check. Unless you have an imensely popular page, the credits don't rack up very quickly but they do add up. I got my first Google AdWords check today! To understand why I started laughing when I realized what the check was, I refer you back to the first sentence of this paragraph that mentions that I signed up for AdWords four years and three months ago!

Now, I told you that story to tell you this one.

If you've been following along, you know I am migrating my sound archive to a different management system. The sound archive has been the only one of my sites that has contained the AdWords banners. I have been debating whether or not to place them on the new site and receipt of the check closed the deal.

Not knowing enough about CSS (Cascading Style Sheets) or the CMS (Content Management System) I'm using and how it is structured, I knew that placing those banners where I wanted them to be on a page would be a challenge. Think of it this way. If you've been to the site, there is a menu that appears on the left side of pretty much everything but the home page and a few select others. I have had no idea what piece of the puzzle told it to be on the left and allow the page content to be just to the right of it.

You see, the only web technology I really ever learned was HTML. Programming and scripting languages are much like spoken languages in that, once you learn one, you can use it to relate to the others. In other words, if you know what the 'print' command does in language A, you know it's very similar to the 'write' command in language B which is similar to the 'echo' command in language C, etc. HTML is pretty specific about page layout. You [can] basically tell an element (text, picture, whatever) exactly where it is going to be on the page and how it should relate to the elements around it. When you're using CSS, you tell your HTML code to go ask the style sheet how things should look, where they should be placed, and how they should relate to the elements around it.

With that in mind, I went trudging through the CSS looking for the part that said 'the menu goes on the left, give a little bit of space, then put the page content to the right of it.' I couldn't find it. In HTML, you might use a table to accomplish this so I was looking for something similar. Finding the section that specified how the menu should look/act was easy enough but it didn't contain any code I could recognize for positioning.

After a couple hours of pulling my hair out (and those of you who know me are aware that I ain't got all that much left), it finally clicked. When it did, I began to understand how the CSS and the HTML related to each other. I built a little piece of code to to tell the provided AdWords script how it should display then told the core page types to utilize it. After a bit of fiddling with positioning in the layout and positioning of the command within the page, I had it right where I wanted it! Since I understood how it worked now, I made a coule of other minor changes to the layout while I was at it.

I'm not ashamed to say I'm proud of myself. I've been able to build this CMS from the ground up (you have to) and have managed to get it acting the way I want it to. And, given historical data, I should be receiving another $100 check in April of 2013.

No comments: