Home of Doug Gibson, full life cycle ColdFusion web/application developer

Latest Articles and Blog Entries

IE Doesn't Save Cookies For Domains w/ Underscores

posted Feb 15, 2012 at 07:48:40 PM by Doug Gibson.

After many hours of working with securing my cookies on a Mura CMS site for work, clearing cookies, closing the browser, repeat - I could not get Internet Explorer to log in to the staging site. The login form just reloaded, starting a new session each time. This behavior is something I've experienced before when my laptop is low on resources, but it didn't clear up even after closing other apps and finally rebooting.

The temporary production site did not have this problem, however, so I synced up the latest secure cookies code and the production site and everything worked as expected in IE. IE is very developer unfriendly for viewing cookies and headers, and I was recommended a tool called Fiddler for debugging the cookies in IE. Upon viewing the cookies in Fiddler, the software itself threw up a warning that read:

Continue reading "IE Doesn't Save Cookies For Domains w/ Underscores."

SXSWi Day 5

posted Mar 24, 2011 at 11:25:23 AM by Doug Gibson.

Tuesday, March 15th marked the last day of SXSW Interactive. I got up bright and early to catch “Long After The Thrill: Sustaining Passionate Users” with Stephen Anderson was by far the highlight of SXSWi for me and I took more notes during that session than the previous four days combined. The gist of his talk centered around engaging users and sustaining users’ interests by intrinsic rewards instead of extrinsic rewards. Psychology was central to much of this talk and made it that much more interesting. The talk was actually a followup to last year’s talk that focused on making a game out of goals, which can easily lead down the path of focusing on extrinsic benefits.

Mr. Anderson's slide show presentation used some cards from getmentalnotes.com and he gave away sampler packs at the end of the session. They look like a great resource that I'd never heard of prior to this talk.

Continue reading "SXSWi Day 5."

SXSWi Day 4

posted Mar 22, 2011 at 11:47:32 PM by Doug Gibson.

After being out the previous night, I decided to sleep in and didn’t head out to any talks until 11am. The shuttles seemed scarce and I came into “5 Steps To Bulletproof UX Strategy” a little late. It was an interesting talk though, discussing how to create a user experience strategy via audit, define, plan, implement, measure (repeat). The example of the Vision Onesheet seemed like a useful addition to the design process as well.

Continue reading "SXSWi Day 4."

SXSWi Day 3

posted Mar 13, 2011 at 08:05:52 PM by Doug Gibson.

Day three (Sunday, March 13th) at SXSWi would be a long one. The days are hectic enough and I’d been pacing myself to last all ten days of SXSW by avoiding the night life thus far, but I decided to finally check out the famous 6th Street tonight. But until then, I had a slew of panels and talks to attend starting at 9:30am.

“Death of the Relational Database” was admittedly a sensational title (like many here) by Hank Williams of Kloudshare, but it was one of many talks relating to the newer distributed databases in the cloud. He admitted that relational databases are not dead, but perhaps “dying” slowly as the newer technologies become more viable and take hold in an area that has been the sole property of relational databases for 30+ years.

Continue reading "SXSWi Day 3."

SXSWi Day 2

posted Mar 12, 2011 at 11:52:27 PM by Doug Gibson.

Day two at SXSWi started with the unpleasant realization that the official SXSW shuttle service was entirely incapable of handling the capacity it needed to. Waiting for 40 minutes for the shuttle, there were already enough people to fill two vans by the time one arrived. They always say “there’s another one coming” to appease those waiting, but it’s not coming for another 30+ minutes in reality. But I was glad to have gotten on that shuttle and made it to the convention center a mere five minutes before the first session began.

“How Print Design is the Future of Interaction” was an interesting talk by Microsoft Creative Director Mike Kruzeniski that covered past trends in desktop, web and print design and how we can draw more from the principles of print design going forward.

Continue reading "SXSWi Day 2."

SXSWi Day 1

posted Mar 11, 2011 at 11:00:42 PM by Doug Gibson.

Having wanted to attend South by Southwest (SXSW) for more than two years, this year, I finally made it happen. I’ll be reporting on each day of the interactive, film, and music conference. I’m actually only attending the interactive and music portions, so I’ll blog the interactive experiences here on my personal blog, and the music experiences over on Metal Underground.com.

I arrived in Austin Thursday evening and the interactive and film portions of the conference officially kicked off on Friday, March 11th. With no talks scheduled before 2pm, I figured I’d go pick up my badge and check out the expo/tradeshow area until lunch time.

I got my badge and “swag bag” and headed off to explore the massive Austin Convention center. The swag bag contained only the basics this year: a SXSW pocket schedule and map (essential), the SXSW Interactive book, and the SXSW edition of the Austin Chronicle. It was commented by a few conference goers that it was lighter on swag than in previous years.

Continue reading "SXSWi Day 1."

A History of CSS Resets

posted Dec 22, 2010 at 12:05:10 PM by Doug Gibson.

Michael Tuck at Six Revisions has posted an excellent "History of CSS Resets article." The article not only discusses the history of CSS resets and techniques, but gives them some context for when and how to ues them. Even better, it's part 1 of 3, so there's more coming.

I ran across it after noticing a small spike in traffic due to a link to my blog noting some issues with Eric Meyer's reset.css and table striping in IE. You can read further discussion of this problem and solutions in my follow-up post.

Obligatory "Why I Haven't Been Posting" Blog Post

posted Mar 14, 2010 at 11:41:42 AM by Doug Gibson.

After many years of not updating my personal site, I finally relaunched this site as a home grown blog in 2008 when I had some time on my hands after being laid off from my job. For about a year I faithfully updated this blog a couple times a month.

I'm quite happy to see that my blog posts have been helpful to people. My "CSS: Overcoming 'background: transparent' In IE" has been read more than 10,000 times and I've seen it quoted on random forums in response to people encountering this particularly annoying issue with Internet Explorer.

...And then the project from hell hit and I was pressed for time to do anything for six months. Here we are almost a year since my last post.

To be honest, this blog has always taken a back seat to my main site, Metal Underground.com, and it always will. Metalunderground.com is my creative outlet on so many levels and has the potential to grow beyond anything I initially imagined.

That said, I've had more opportunities at work to explore the front end of web development once again as well as work with different frameworks and CMSes. I've got a bunch of draft blog posts built up here and hope to return to exploring and discussing web development from front end to the Coldfusion back end stuff soon.

I'll be back.

Held Hostage By Craptastic Comcast Service

posted Apr 2, 2009 at 04:09:49 PM by Doug Gibson.

Sometimes life just throws all sorts of crap at you. I haven't updated this blog in months because work has been insane. On top of the laundry list of challenges in addition to the heavy work schedule since the start of this year, my Internet went down on Sunday, March 26. I had some issues with it dropping a week or so previous, but on this Sunday when I called Comcast customer service (twice, once that went on for half an hour to no avail), they claimed they had known outages and were working on it. When my service was still not restored on Monday the 27th, I called again and set up a service appointment. The earliest they could give me was Thursday, which I was pretty pissed off about already, but grudgingly accepted. A scheduling conflict became apparent and the next day I rescheduled for the later time slot (11-2) on that same Thursday.

Wednesday evening I got the confirmation call, which stated the correct time of the appointment for the following day. Late Wednesday night, Internet connectivity was restored, but I didn't trust it (because it had come and gone a few times in a matter of 15 minutes) and still planned for a technician to come out.

On Thursday my connection seemed ok until around lunch time. This would be perfect since the tech was supposed to arrive between 11am and 2pm - and for once, they could actually witness the problem instead of everything mysteriously working during that time...if they actually arrived. At five 'til two, I called Comcast to make sure they were coming, and it turns out they were not. They proceeded to tell me that a technician was out on Wednesday, and then changed the story to "I have no appointment in the system for you." So the lady whose voice is in the confirmation recordings must have called me up personally as an April fools gag, right? The service rep then proceeded to tell me that they have no openings and the earliest appointment they can give me is Sunday! Talking to a "supervisor" made no difference, and I suspected they just did the age old trick of passing the phone to the person next to them, who doesn't give a damn about you or Comcast service either. They are drones and talking to them only reinforced that, as claims of the ridiculousness of the situation and why I have to pay the price (in time wasted/lost) for the screw-up were dismissed in a monotonous droning voice over and over. Meanwhile I will be waiting a full week with mostly no Internet and substandard TV service (it's been breaking up and dropping sound on and off) before anyone will even come out and look at our issues. And chances are that they won't even be able to fix the problem, since my neighbors have been experiencing similar issues as well.

What more could I expect but the usual Craptastic service from Comcast? Don't even get me started on the number of times I was told that if I had upgraded to a business account I would have next-day service. Let's put this into perspective: if I were running a small office on a business account (as it's intended) and had 5-10 people lose a day of work due to a Comcast outage, that would still be unacceptable and I'd be paying much more for the service. There is no way to dress it up - Comcast's service sucks. If they did not have a monopoly in our area, I would drop them in a second - and I plan to the day Verizon gets FIOS service in here.

The bottom line is that - yes, losing Internet access sucks, especially when you telecommute and own a website that you need to maintain - but it's excrutiatingly frustrating when other people's incompetence makes life harder on you. And to top it off, they were unwilling to lift a finger to make things right. If there was any competition, Comcast would be gone. The service that we pay for from Comcast - both TV and Internet - is already obscenely overpriced. The customer service that they provide is a disgrace and completely unacceptable even if the service was free. To top it off, no one is accountable. If they were even accountable for their actions or serving customers, then the drone-like attitudes would be gone. In retrospect, it's pretty clear they don't care about a damn thing from "Hello." I guess I should have seen the rest coming then.

Comcast is a dinosaur that has long outlasted its time and deserves to be extinct. The more I read about Comcast's strong arm lobbying tactics as well as other underhanded tactics used in court, the more I realize that's the only reason they are still around - they spend all their effort protecting their monopoly, not pleasing their customers or tending to their network.

A Guide To On-Page Search Engine Optimization

posted Nov 30, 2008 at 01:43:19 PM by Doug Gibson.

Search Engine Optimization (SEO) is comprised of several facets, and new facets are being added often as the search algorithms get more advanced and smarter. As new layers of complexity get added to these algoritms, the older factets often get forgotten or talked about less because they are not the hot topics any more. But the fact is that often those older facets are still important to the core strategy, and a newcomer entering the web arena who discounts them may have a harder time succeeding. The facets of Search Engine Optimization right now are:

  • On-page optimization: was most important in the early days of search (along with meta-tags) but has waned in importance over the years as other factors for ranking have been introduced. However, on-page optimization is still central to any SEO strategy, especially for long-tail searches (the abundance of lower competition search phrases and their frequency of searches based on power laws), as noted here.

  • Link Building: Google made the link the currency of the web by factoring it so heavily into their pagerank algorithm. After link buying became widespread via link brokers, paid reviews and paid directories, Google has steadily reduced the importance of links alone. Links are still an indication of authority, however, and quality and diversity of links and link text are still important trust/authority indicators, moreso than just total number of backlinks.

  • Trust/Authority Ranking?: Factors to validate a site's authority, such as who links to them, age of the domain, and temporal analysis of content creation and link building are thought to be weighed more heavily now, making social marketing a very effective marketing and SEO strategy currently.

Start with the basics and make sure you're doing things right for on-page optimization. On-page optimization alone will not earn you great rankings for any competitive keywords, but doing it properly means that you're not handicapping yourself down the road, and it can get you ranked for some low-competition long-tail phrases that accumulate over time to become a significant source of traffic. On-page optimization also cascades over to your link building campaign, since poorly crafted titles or headings can sabotage your efforts to build quality links from social media and other bloggers. On-page optimization is often overlooked these days, as it is not the controlling factor to get ranked on the search engines, but it is, in fact, an important foundation that should not be overlooked or neglected. On-page optimization should not drive content creation to the detriment of making content interesting for human consumption, but should be applied in an intelligent manner to make content work best for both humans and search engines.

Continue reading "A Guide To On-Page Search Engine Optimization."

How Much Can you Trust Google With Your Email?

posted Oct 28, 2008 at 10:19:38 AM by Doug Gibson.

Like many people, I've been using Google's hosted email solution for some time. Google is pretty good at filtering spam, so (again) like many others, I let my email go to Google, have them filter the spam, and then pull it down via Thunderbird. When I notice a lull in email, I usually think something is up, and today upon logging in to the hosted email account directly, I see dozens of legitimate emails in the spam folder, including my Google Analytics report from Google themselves. Wonderful.

Now my spam folder is thousands of messages large, so it's not really a good use of time to go through them all looking for false positives, but I'll have to sample the last few days at least.

Conspiracy threories aside (I've never bought into any of the Google conspiracy theories I've heard), the question that has to be asked is at what point does a free service like this become a liability to your busniness? It's definitely made me think twice about hosting any more domain email accounts with them.

I just thought I'd warn some of you about my experience and I'd be interested in hearing if you've experience the same issue lately.

Content Is King, But Marketing Is Queen...

posted Oct 7, 2008 at 11:01:11 PM by Doug Gibson.

Problogger.com recently posted 13 Tips on Building a Profitable Blog, derived from Gary Vaynerchuk's Blog World Expo keynote. In this article, one line in particular struct a chord with me:

content is king but marketing is queen and the queen runs the household.

I really like this and I obviously could not have said it better. This statement concisely summarizes what I was trying to say in my recent post, entitled "Debunking The 'Build It And They Will Come' Myth For Websites, and Is Content Really King?."

In non-analogy terms, content creation alone is usually not enough to create a hugely successful blog or web site, and the content you do create should be part of and integrate with your SEO and marketing efforts. Marketing is usually what really puts a site over the top in success. Sometimes the marketing and content are one in the same (e.g. linkbait, controversial articles, viral content) and other times the marketing is totally separate.

Continue reading "Content Is King, But Marketing Is Queen...."

Miss Teen USA 2007 South Carolina For V.P.?

posted Oct 2, 2008 at 10:52:14 PM by Doug Gibson.

Is it just me or does this:

remind you of this?:

Oh wait, I just noticed someone actually posted the latter as a response to the former on YouTube, so I guess it's not just me.

I really don't care for politics on any level, but Palin sure isn't doing her party any favors with a number of comments I've heard.

P.S. 45 minutes of tonight's debate is about all I could take.

More Tips To Improve Web Site Performance

posted Sep 6, 2008 at 04:21:47 PM by Doug Gibson.

I was catching up on reading one of my favorite web development/performance related sites this weekend, High Scalability, and read some more gems on improving performance (perceived speed) of your web site. There's this massive article about latency to start, in which they state:

Latency matters. Amazon found every 100ms of latency cost them 1% in sales. Google found an extra .5 seconds in search page generation time dropped traffic by 20%. A broker could lose $4 million in revenues per millisecond if their electronic trading platform is 5 milliseconds behind the competition.

That will get your attention. I think the quote itself confuses the matter of latency with load time, and one must wonder how perceived load time of partial page rendering fits into the equation as well.

The article goes on to define latency and touch on a number of related topics and links to articles that go more in depth on various facets.

Many of these points are related to and boil down to Yahoo's Best Practices for Speeding Up Your Web Site, of which they've added another 20 to the original set of 14.

Continue reading "More Tips To Improve Web Site Performance."

Web Typography and Fonts Still Being Discussed

posted Aug 27, 2008 at 11:23:08 PM by Doug Gibson.

With all the recent activity around typography on the web and font embedding, this College Humor video (after the jump) was timed perfectly (or at least my friend sending me the link the other day week). I can't believe that someone would put this amount of effort into a video about fonts, but it is very well done and chock full of geek humor.

Continue reading "Web Typography and Fonts Still Being Discussed."

On Coldfusion And SQL Injection Attacks

posted Aug 19, 2008 at 10:35:35 PM by Doug Gibson.

To follow up on my previous message about my site, Metalunderground.com, being "hacked," I thought I'd go into more detail on the attack and what web developers and site owners can do against it. To clarify, I put quotes around "hacked" because it's not really so much hacking as it is a scripted attack, perpetrated by some script kiddie in China, not a "real hacker."

If I wasn't so busy of late, I'd have noticed the many blog posts about SQL Injection attacks hitting ColdFusion sites.
It seems a similar attack swept through MySQL-powered sites earlier in the year, but the recent bout of attacks affecting ColdFusion sites using MS SQL Server hit hard in July with a few as early as June from what I have read. There's a particularly nasty version of the attack (seemingly largely perpetrated by a botnet)
that appends a cross-site scripting exploit (XSS) into EVERY varchar, nvarchar, text and ntext column in your database. Doing so not only corrupts your data, but can result in data loss beyond cleanup.

Fortunately, the attack on Metalunderground.com appears to be more targeted. The attacker injected a 24KB payload of XSS and spam links into each of nearly 40,000 news records. The focus of the injection actually made finding the problem very difficult.

To reiterate what's been said around the Coldfusion development community, absolutely make sure you use CFQUERYPARAM on EVERY variable going into your queries - especially URL, FORM, SESSION and COOKIE and CGI variables, which can all be corrupted. You might as well just make it standard practice, because often variables in the local, request, or other scopes are often dumped from cookies or sessions as well (in application code, that is), meaning any tampering could trickle down into those scopes.

Also, do not rely on the CFADMIN checkbox for "Global script protection" or any other built-in security. I've always been very skeptical of the built-in protection in ColdFusion or any other black-box code like this, and for good reason. This particular attack uses a DECLARE statement and encoded SQL and payload, failing to trigger the catch-words to invoke the protection.

Read on to learn from my experience gained from this attack.

Continue reading "On Coldfusion And SQL Injection Attacks."

Metalunderground.com Gets "Hacked"

posted Aug 4, 2008 at 09:27:13 AM by Doug Gibson.

If you were visiting Metalunderground.com and you're seeing this message on my personal/web development blog, it's because I'm working on cleaning the corrupted data from a SQL injection attack. Some of the data in our database was corrupted, but Metalunderground.com will be restored and back online today, Monday, August 4. More details soon.

Thanks for your patience.

Debunking The "Build It And They Will Come" Myth

posted Jul 30, 2008 at 12:35:32 AM by Doug Gibson.

One thing that's slowly been beaten into me from recent reading (books and blogs) is the importance of marketing.

As a developer, I've had bad experiences with marketing and sales people. They have been the ones who make promises, whether related to features or delivery deadlines, that the developer has to deliver. Often, they don't even have a clue about the technical aspects of a project and are often talking out of their ass. Not to mention these people just seem to talk too much for an introverted developer's (such as myself) taste. So perhaps I ignored those skills and marketing and sales as a whole for some time as a result.

But as a freelancer or web entreprenuer, there's really no choice but to learn how to market - market yourself, your services, your products, your web properties, etc.

Continue reading "Debunking The "Build It And They Will Come" Myth."

Just Say No To Kirby's Free Carpet Shampoo

posted Jul 6, 2008 at 04:33:21 PM by Doug Gibson.

I got a call a week or so ago offering a free carpet shampoo for one of my rooms. I usually do not deal with these marketing people or listen to their offers at all. But this seemed simple enough and didn't require much of a committment on my part, especially since I work from home. I realized I would probably have to sit through a sales pitch, but that wouldn't be a big deal since the appointment was set near lunch time.

The person on the phone who set this up did not elaborate any further than confirm that I would have to listen to a sales pitch. I had no idea what the company did, but assumed that they were a service company.

Kirby Sells VERY Expensive Vacuum Cleaners

When the appointment came, I learned they were selling Kirby vacuum cleaners. I knew they would be expensive as well, but it wasn't until the end that I learned that these were $1,600 vacuum cleaners! If you aren't interested in a $1,600 vacuum cleaner, then take my advice and don't ever set up one of these appointments. The two and a half hours-plus that was wasted on this demo was not worth the free carpet shampoo by any means.

Continue reading "Just Say No To Kirby's Free Carpet Shampoo."

Sitepoint's "Web Site Revenue Maximizer" - Why?

posted Jul 1, 2008 at 06:14:56 PM by Doug Gibson.

As I've previously mentioned, I've become a fan of some of Sitepoint's development books lately. However, they've been mailing me about their special promo price for their latest "kit" (book+CD-ROM) called "The Web Site Revenue Maximizer." Their special price (ends today) is $149, and it will soon be nearly $200. For a split second, I thought about ordering before the special expired just to be able to fill in any gaps in my knowledge on this subject. But upon checking out the table of contents and sample chapters, I was left wondering "why bother?" Sure, price positioning is a decision everyone has to make for products, and Sitepoint's kits are priced fairly high, targetting professionals. Sitepoint can sell a few hundred or thousand of these kits promising that readers will make the money back and make some serious cash. But with the other excellent free resources out there, I don't see the point in buying into this kit in the first place.

Continue reading "Sitepoint's "Web Site Revenue Maximizer" - Why?."

Leveraging CSS is 75% Markup and 25% CSS

posted Jun 29, 2008 at 12:17:14 PM by Doug Gibson.

I really planned to do more ColdFusion blogging, but I find myself more intrigued by CSS lately. After all these years there still seems to be some mystique about CSS to some developers and designers alike.

Over the past couple of years I've been refining my process for creating site layouts and modular CSS. During that time, most of the refactoring involved has been reworking parts of the markup to be more modular or to use markup that meets my (now) more strict semantic requirements (than when I first started using CSS) and provides all of the hooks for the techniques I may want to apply with CSS. I'm still refining some smaller things here and there, as I discover new techniques.

I recently returned to working on the application that I did my very first table-less CSS layout on, and looking at the markup, I can see what a difference semantic markup makes!

I've been using CSS since 1998 (more heavily in 1999), but didn't really know the best practices in markup until the last few years, making my initial efforts at CSS layouts frustrating attempts of trial and error - not unlike the experience of using CSS in Netscape 4! I actually abandoned my first attempt at redesigning Metalunderground.com in CSS because the layout was too complex for me to pull off. I finally opted for a wrapper table and minimally nested table layout. (Note: Metalunderground.com has since been redesigned twice, first using CSS and then a recent underlying code cleanup, which helped immensely for general coding and CSS-specific techniques).

As many developers and designers can attest, learning CSS itself isn't as hard as knowing which techniques to use in various scenarios, the drawbacks to certain techniques, and how to work around browser-related bugs. Some techniques such as floats versus absolute positioning are purely CSS, but a number of other techniques are based on how you've chosen to mark up your document.

Compound that with the sad truth that many web designers and developers - even experienced ones - don't really know proper HTML or XHTML, much less the best practices of semantic markup, and you can see why CSS still appears difficult after all these years. I was in the same position about five years ago, having used CSS for several years, but still struggling with CSS layout due to not using the best practices for the underlying markup or knowing the proper techniques to use.

So why is it that many developers don't know proper HTML or XHTML? I've encountered all sorts of reasons for this - legitamate and not - over the years. Here are some of the reason that web developers and designers may not know basic proper (X)HTML markup and therefore may have trouble with CSS layout:

Continue reading "Leveraging CSS is 75% Markup and 25% CSS."

Get Sitepoint's Photoshop Book As A Free PDF

posted May 31, 2008 at 09:28:48 PM by Doug Gibson.

I've recently become a fan of Sitepoint's web development books - especially their front-end (CSS and JavaScript) and design books. They don't usually offer much ground-breaking material, but they are good at getting one up to speed on current practices and qualifing the benfits and drawbacks of various techniques.

Sitepoint recently offered up their 278 page book, "The Photoshop Anthology: 101 Web Design Tips, Tricks & Techniques," for a limited time free PDF download. I passed on buying this one simply because I don't have a recent version of Photoshop, and unfortunately all the good tutorials and resources are for Adobe Photoshop CS1 (many are CS3 now) and up.

It could be that Sitepoint is planning to update this book to a new edition, as Adobe CS4 is around the corner. Sitepoint previously release a Rails 1.0 book for free download as well, but sent out an email about the Rails 2.0 book and upgrade options. They could be using a similar tactic for this PhotoShop book, but free is still free, so go download it.

Web Developer, Web Designer, or Graphic Designer?

posted Apr 24, 2008 at 08:52:48 PM by Doug Gibson.

Apart from the disturbing statements I heard about ColdFusion while job hunting earlier this year, another thing that I found interesting was the terminology used for front-end work.

Since I was also looking for CSS work, among other things, I was called for quite a few interface design and web designer positions. It's been a while since I had been job hunting prior to this, so I hadn't really given much thought as to my position title. Afterall, I don't usually pay attention to my title at the places I work even, as they are often made up by Human Resources or other people who don't know the technology much less have any rhyme or reason to them. So "web developer," "software developer," "software engineer," "programmer," etc., (with an optional designation of 1-4 or 1-5) - it doesn't matter to me as long as I am getting paid according to my experience and doing what I like to do, which basically comes down to utilizing my array of skills and having some input into the decision making process on the project.

Back to the topic at hand though. I usually just refer to myself as a "web/application developer." Six years ago I would never have considered myself a "web designer" or a designer at all. Sure, I've been using CSS since the early days (Netscape 4) and Photoshop since version 3, when it came on floppy disks, and have an art background, but I do not have the raw artistic talent and I am generally just not creative on demand (in the artistic sense).

Yet, after hearing all of the types of jobs I was being contacted about, and was actually qualified for, I began to accept the title of web designer for two reasons. First, CSS is how you implement design these days, afterall, and I've gotten pretty good with my CSS layout skills and making them extremely modular. Second, a web designer is simply someone who designs sites and who understands (and respects, IMO) the medium. It has always peeved me when "designers" - who, in light of this discussion, I would now call "graphic designers" instead of "web designers" - push the boundaries without considering the web as a medium and the consequences of their actions on that medium or the landscape of users out there.

In broad terms, considering the web as a medium means understanding the basics of usability and accessibility. These areas span designing for different people and different devices (with different resolutions and various levels of support for underlying web technoligies such as HTML, JavaScript, Flash and more). Wow, those are some broad qualifications for a web designer, who several years ago was traditionally focused on making the site look pretty with graphics. But in reality, a web designer needs to be well-rounded and versed in these areas as well as capable of implementing a design in modern standards-based methods. Without those skills, the person is merely a graphic designer, or perhaps less than spectacular web designer.

Continue reading "Web Developer, Web Designer, or Graphic Designer?."

dgibson.net Going On Another 7-Year Hiatus

posted Apr 1, 2008 at 04:11:32 PM by Doug Gibson.

Dgibson.net going on another 7-year hiatus? Nah. There really aren't any good April Fools pranks that I can play here, on my personal blog. However, I thoroughly enjoy this time of year and creating ficticious stories for posting on my other site,

You can check out the stories we ran today as well as in previous years with the links below:

Some of the better April Fools I've seen done today are as follows:

I'll update as I find some more really good ones. I wasn't really impressed with Google's attempt this year, but they've had some great ones in the past.

Tagging vs Categories, and Hybrids Thereof

posted Mar 27, 2008 at 10:07:46 PM by Doug Gibson.

After tweaking my CSS (still in progress on some minor things such as code displays and the comment form), and implementing SES URLs, the next thing I planned to implement is a tagging system. This sounds pretty simple, but as I debate the best way to go about it, I've become paralyzed in thought over it.

The flexibility of tagging is a strong point and the primary reason that tagging caught on several years ago. The many-to-many relationship of tags to the items being tagged make tagging work where hierarchical categories simply do not.

It's great for the general user to label things however they want without restriction. But as any seasoned user of del.icio.us (I have nearly 2500 bookmarks at the time of writing this article) knows, this flexibility eventually turns into chaos. Inconsistencies become apparent as you find that some of your items were tagged singularly and some plurally. People make their own compound tags differently, using dashes, underscores, or dot notation - and some people are inconsistent in that as well. If you start out simple, you may find the need to add more tags later on for greater descriptiveness.

I'm not necessarily seeking a system that will address all of the above issues. Rather, I am looking for a way to create some more order within a flexible tagging system. I could come up with some simple solutions like adding a parent key to each tag's database entry, which would allow for some hierarchy (however messy it would be to take advantage of on SQL 2000 right now). Thinking of some other projects I'd like to use this codebase for, I would also like to be able to have groups of tags that are not in a hierarchy. I.e., the tag group is not selectable as a tag. For example, perhaps I am writing tutorials and want to tag them by technologies used as well as difficulty level (beginner, intermediate, advanced). I could use a flexible tagging system for this, but interface-wise it makes sense to have these tags grouped rather than be free-form entry tags.

While I could certainly construct my own ad-hoc system, I'm wondering if anyone has any experience or has read about more robust taxonomies that may address my needs and could point me to some articles or examples.

Implementing Search Engine-Safe (SES) URLs

posted Mar 14, 2008 at 04:40:38 PM by Doug Gibson.

I recently implemented SES (Search Engine Safe) URLs here on my blog for the first time ever. I read a number of posts about it. Techniques range widely from using Apache's mod_rewrite, which I initially favored, to using a Java servelet, to using ColdFusion to parse out the URL (similar to what Ray Camden does on Blog.cfc), to using 404 and missing template handlers.

Continue reading "Implementing Search Engine-Safe (SES) URLs."

SES URLs To Blame For Duplicate Feed Items

posted Mar 13, 2008 at 10:15:43 PM by Doug Gibson.

My latest article, CSS: Overcoming "background: transparent" In IE seems to have shown up in my RSS reader at least four times. It looks like this is one of the down-sides to my implementation of Search Engine Safe (SES) URLs, which I plan to discuss in more detail at a later date.

Because I tweaked the headline, the actual link to the article has changed as well, and therefore the GUID in my RSS feed is changed, making it look like a new, unique article. Some systems generate a unique GUID based on a hash of the content, so any change would trigger duplicates.

I just thought I'd mention that as a caveat. I'll definitely have to consider my headlines more carefully before publishing an article in the future. Sorry 'bout that.

CSS: Overcoming "background: transparent" In IE

posted Mar 11, 2008 at 11:33:49 PM by Doug Gibson.

Following up on my previous blog about the bug I encountered when upgrading to Eric Meyer's latest reset.css v1.0, I thought I'd share some thoughts and a possible solution to the problem.

To backtrack a bit, reset.css is a special CSS file created solely for the purpose of eliminating browser default issues and cross-browser compatibility problems by explicitly setting the styles of elements to be the same in all browsers.

When applying the latest version of Eric Meyer's reset.css, all of my table row striping disappeared due to the introduction of background:transparent; into the main declaration.

Thanks to Eric's explanation, I now understand the issue to be a bug in Internet Explorer, affecting even version 7. He commented on the previous post:

What's happening is that in order to make it look like the 'tr' has a background, IE copies that value to the 'td' elements in the row. It's a visual sleight-of-hand to cover the fact that IE can't actually style 'tr' background. The reset changes the 'td's back to transparent.

The simple solution is to remove the offending background:transparent; from the main reset declaration.

But there is a simple enough CSS solution as well, requiring just a few more declarations or more selectors to the existing declarations. Using the descendant selector, I can keep the reset.css as-is and keep the exact same classes on my 'tr's in tact and make the CSS work even in Internet Explorer with some additional rules.

Here's a sample of my old CSS that was affected:

Continue reading "CSS: Overcoming "background: transparent" In IE."

Meyer's CSS Reset v1.0 Doesn't Play Well With IE

posted Mar 8, 2008 at 02:24:34 PM by Doug Gibson.

Building this new blog/site with all of the best practices in mind that I can think of has been an adventure. I had planned to blog more in-depth on some CSS-specific things (and will), but this issue popped up and I thought I'd share it.

When I saw that CSS-god Eric Meyer had updated his CSS Reset file to version 1.0 and given it a permanent home, I immediately checked it out and integrated the changes into my reset.css file. Granted, it's still mostly Meyer's file, but with some small tweaks.

By way of some background - a reset.css is a special CSS file created solely for the purpose of eliminating browser default issues and cross-browser compatibility problems by explicitly setting the styles of elements to be the same in all browsers.

It wasn't until I had posted the changes live - yes I did test locally first - that I noticed something was amiss with the CSS in Internet Explorer. Upon further testing, both IE 6 and 7 were affected. The main area that seems to be affected are my tables in the admin area, which no one can see of course. In particular the table row striping and highlighting of inactive/draft records was gone. Yet everything looked just fine in Firefox.

The way I stripe my table rows is fairly common inline ColdFusion inside of a query loop - not ideal in some ways, but effective.

<tr <CFIF currentrow MOD 2>class="greybar"</CFIF>>

I changed all sorts of stuff in my main CSS, added greater specificity to the rule in question, added !important, all to no avail. I gutted my table of recently added col and colgroup tags. Nothing.

I removed the reset.css from the header and *poof* it worked again. Finally I noticed a new line of code in the global reset:

Continue reading "Meyer's CSS Reset v1.0 Doesn't Play Well With IE."


posted Mar 4, 2008 at 10:05:04 PM by Doug Gibson.

...is sitting down and watching The Biggest Loser with a big ol' bowl of ice cream :-) Or is that foreshadowing? Maybe if I was in a movie myself.

For the record I don't watch those reality shows - my wife does. I was just there for the ice cream!

URL/Query String Spam - Poor Man's Referer Spam?

posted Feb 29, 2008 at 05:33:49 PM by Doug Gibson.

It hasn't been two full months since I re-lanched this site as a blog using ColdFusion and I am seeing a new form a spam. I was tipped off by some error emails that my error handling kicked off.

What is happening is that I am seeing a number of requests error out because someone is inserting URLs (all foreign, e.g, .it, .ch, .ru, and a couple .com's so far) in place of my articleid query string parameter.


Continue reading "URL/Query String Spam - Poor Man's Referer Spam?."

Metalunderground.com Linked To National News Story

posted Feb 24, 2008 at 03:28:28 PM by Doug Gibson.

For those who do not follow heavy metal news daily, my site, Metalunderground.com, got a little publicity recently when it was linked to the arrest of a man for making death threats to the nu-metal band Korn. Ultimately he was arrested for making death threats on the FBI's web site (who threatens bands on the FBI's web site?), but apparently this guy was one of my site readers (abusers and trolls) that I banned in 2006, linking Metal Underground to a national news story.

You can read my supporting evidence and commentary in full, here on Metal Underground.com.

This is not really the kind of publicity I want for the site or for heavy metal. But the incident has sparked a good deal of support for the job done in moderating the site, from comments to emails. Being a heavy metal site, I try very hard not to be a heavy-handed moderator and I let a LOT of stuff slide (except for personal attacks). After all, metalheads are often rebellious and don't want to be censored. I have a bad language filter on the comments just to keep the language from getting out of hand (and getting the site banned from every search engine and parental watch software under the sun), and new readers often complain about that when they first encounter it!

I just thought I'd share that to say "hey look at me, my site's on the news" as well as point out some stuff that people might not think of when talking about online communities and moderation, etc. - the rules are not the same for all types of communities by far. This isn't something you'll always think about when reading blogs on site building and blogging unless you are one of the exceptions.

Gainfully Employed Once Again

posted Feb 10, 2008 at 01:04:25 AM by Doug Gibson.

I am gainfully employed once again. Thanks to all who sent me leads and forwarded my info on to anyone else in an effort to help me find work.

After having about half a dozen things fall through at once in the week my severance ended, I decided it was time to give up the pursuit of freelance/contract work (as a means to make a living) and get a real/full time job once again. Despite the freelance thing not working out, it was an eye-opening learning experience and I now have a much better idea of what that entails should I go that route in the future. Had I known it would not work out, however, I would have definitely spent a bit more time on my other web site ideas and redesigns.

I'm happy to be back at my former job - the one before the recent one who laid me off - now as a full-time telecommuter. With all of the familiar faces there, I feel like I've been gone 6 months instead of 2 years! I won't mention my employer by name, because I have no intention of blogging about my job and do not want my thoughts expressed here associated with them in any way.

Disturbing Statements Regarding ColdFusion Hiring

posted Feb 5, 2008 at 12:00:00 PM by Doug Gibson.

In my recent job search, I heard two separate statements that don't bode well for ColdFusion as a whole. On one occasion, a recruiter at a large staffing firm mentioned that there are a lot of ColdFusion developers, but not a lot of experienced or senior ColdFusion developers (in the Baltimore/Maryland area specifically). Who knows why that might be the case. Obviously, that's good for me, having 8 years experience in ColdFusion and a broad and deep knowledge of its capabilities, but it is somewhat disturbing to hear overall.

In another instance, I was interviewing for a position and I inquired as to why the job posting did not mention ColdFusion specifically, yet the company's flagship application was built on ColdFusion. The interviewer proceeded to tell me that in the past if they include ColdFusion in the requirements, they get inundated with poor quality resumes and developers. So the company had included a number of requirements in the job posting, but omitted ColdFusion. The interviewer also commented that they don't necessarily need a CF developer, as they would consider hiring someone with other server-side programming experience since ColdFusion is easy to learn.

Poor quality of resumes/developers is nothing new. I assumed it is par for the course in hiring, but I have heard similar statements from past employers as well as companies that friends work at regarding ColdFusion positions. I've just never heard of outright not listing ColdFusion as a requirement in the job posting as an alternative or remedy to the situation.

Now I've banked my future on ColdFusion. There are too many other technologies and facets of web development to learn and I'd rather focus on learning those than learning a new back-end language and the ins and outs enough to become truly proficient. Plus I believe in the direction ColdFusion has been headed, even if I don't totally buy into the Flash and Flex stuff. But hearing these statements from people in hiring positions does raise some concerns for me over the future of CF. Certainly there are a lot of talented CF developers out there, but it sounds as if the talent pool is not large enough to support the infrastructure of clients who use ColdFusion. Or perhaps it's simply "watered down" substantially with inexperienced developers. It's definitely food for thought.

Why Turning Pro-Blogger In January Is A Bad Idea

posted Jan 18, 2008 at 12:00:00 PM by Doug Gibson.

As mentioned previously, I have been looking for short term contract and freelance work since being laid off. I have aspirations of becoming a "pro blogger" one day, or at least to supplement my freelance income with a decent blogging income. However, seeing the sad state of online advertising in January, I've decided to pour 90% of my efforts into looking for freelance work.

The seasonal aspect of online advertising is something I've always kept in the back of my mind with respect to when I could potentially attempt to do blogging full time. For anyone out there with similar thoughts, I don't recommend quitting your job in January to become a pro blogger!

In general, advertising revenues are a bit low at the start of each quarter and require some ramp-up time. However, at the start of the new year, which is also after the advertisers' big holiday spend, online advertising is horrific. Ad networks' fill rates are low and CPMs are roughly cut in half or worse. It is normal for things to not start ramping up until mid-February, and even then the CPMs and fill rate - and therefore overall earnings - may be a bit "off" until well into Q2.

So when is the best time to turn pro blogger? It really depends on the type of site(s) you run. Like advertising, many niches have seasonal trends as well. Looking at the advertising trends alone, and assuming you have an existing blog or three, I would advocate watching your earnings trends through April and May and if all looks well, consider making the jump in June. The more preparation and traffic building you can do leading up to that point, the better. I would not make the jump any later than October, however, because then your window for building traffic before the holiday season is over is very small and you'll be facing the the first quarter draught of the next year very soon afterwards.

What the earnings threshold is for an individual to feel comfortable leaving his or her day job to go pro blogger is another question entirely.

Looking For A Job Is A Full-Time Job

posted Jan 15, 2008 at 12:00:00 PM by Doug Gibson.

Looking for a job can be hard work and very time consuming! This is especially the case when you are looking for short term contract and freelance work, and being fairly selective about which opportunities you'll take. I could take a job in Washington, DC in a second, but I'd really rather not commute 2-3+ hours a day if I can help it. I've been telecommuting the past two years and had a 15 minute commute (and part-time telecommute) for three years before that.

But back to the actual topic I was meaning to discuss. Looking for work is hard work. I've been busier than ever the past few weeks and not even working (much). One of the most time consuming parts of starting a job search is posting your resume on various job sites and recruiter/staffing firms' sites. I've been talking to a lot of staffing firms (Aquent, Robert Half, TEKSystems, KForce, etc.) and most of them have their own proprietary site that you need an account on to be considered for their positions, even though I see most of their positions from job aggregator Indeed.com.

The time consuming part is that it's not just enough to upload your resume. Most of these sites then try to parse the information out into data fields, and you need to go through each of your job entries and clean this data up. I've been in the computer industry for almost 14 years now, so their are a fair number of entries there. I probably spent the better part of two or three days just getting my information in to these various online systems. Then, of course, you talk to the recruiters, and many require an interview with them before they will really consider you. This is all expected, but I was just shocked at how tedious the online process has become.

The other aspect of looking for freelance work is researching and discovering the best venues (sites) to find freelance work on in the first place.

Luckily most sites have RSS feeds now and many, such as Indeed.com, have RSS feeds for specific search results. RSS has been the real life saver once I got everything going in my job hunt. I don't know when I would find the time to visit all of the individual job boards I've responded to jobs on if I wasn't finding those postings via RSS.

Happy New Year, Find A New Job!

posted Jan 5, 2008 at 12:00:00 PM by Doug Gibson.

I was laying on my couch on New Year's day, half dozing off with a headache, when I got the vague but ominous call. The next day I was officially laid off from my current job as part of a company downsizing effort. I took some solace in the fact that 9 other people were in the same boat and the Maryland office was being closed entirely in the next few months but it was still quite a shock as I'd never been on this end of the layoffs. I also heard from a number of other people who I know or correspond with online who had been laid off at the beginning of the year and apparently this is a fairly common occurrence.

I already had plans to relaunch dgibson.net as a blog, but now I've pushed that effort ahead so that I can begin blogging and use this site to leverage my chances of landing some freelance work. Dgibson.net had not been updated for close to 7 years, sometime after I got married, so the redevelopment is much overdue anyway.

In the meantime, I'll be doing some house-cleaning and rounding out the template design and populating it with information, and likely blogging about my job hunt and other web development topics as well.