Comments working again

So in my zeal to get our new theme launched, I failed to remember to update some code on the comments page that is in place to keep us spam free.  The end result of this was that Yawasp, our anti-spam plugin, was identifying every comment as spam and rejecting them outright. Anyone that tried to post a comment over the last few days, I apologize profusely and encourage you to come back and post it now.

Special thanks to Ivo Jansch for taking the time to contact us and report the problem!

Posted in: Announcements

Book Review: php|architect’s Guide to Enterprise PHP Development

Our office purchased a copy of php|architect’s Guide to Enterprise PHP Development (TOC) by Ivo Jansch last week, and I called dibs on the review. In it, Jansch sets out to identify tools and methodologies PHP developers can use (and have traditionally not used) to increase their chances of success. Jansch points out that PHP rapidly went from a tool used mainly to develop Personal Home Pages (I don’t know why I capitalized that… so weird) to an increasingly well-regarded enterprise-level platform. Unfortunately, while the open source community surrounding PHP is one of the most active and vibrant ones around, it has been reluctant to pick up some of the more formal development processes that the .NET and J2EE platforms are known for. We’ll dive deeper into the book in about 20 pixels. (You might have to click on a link or something, just a heads-up.)

Read More »

Posted in: Reviews

ICANN Kills Domain Tasting, Opens Up Any TLD (.*)

ICANN (the internet domain name people) concluded their meeting in Paris today and decided to kill domain tasting and open up top-level domains.

Domain Tasting
Any time you’ve ended up at a domain name that just appeared to be a bunch of similar search terms and ads, chances are, it’s held by a squatter. Squatters are people who register thousands of domain names just to run those pages and make money on the ad revenue.

Unfortunately, ICANN has up until now allowed users to register a domain name and hold it for the five day grace period that exists on domain registrations. During this period, they can publish their ads and see if it generates any sort of traffic. If it’s viable, they register it. Otherwise, they drop it. They voted to squash the practice today and open up TLD registration. Check the jump for figures on tasting and more on the TLDs.

Read More »

Posted in: Tech News

Usability & Bill Gates: An Email Rant By Bill

Usability is an extraordinarily powerful characteristic of an application, tool or piece of equipment. (Or, for that matter, anything you “use” at all.) You can build an absolutely amazingly powerful product, but if no one can determine how to use the features you’ve built into it, you might as well not code them at all.

The Seattle PI has a great piece featuring an email that they unearthed from Bill Gates to some of the top engineers at Microsoft. Gates tried to download and install Windows Movie Maker 2 when it was first released in 2003. He documents the trials and tribulations he, a pretty-damn-experienced user, encountered as he tried to do what should’ve been a very simple task.

The full content of his email after the jump and what we do to make sure our applications are usable without driving the end-user absolutely insane.

Read More »

Posted in: Cool Stuff, Rants

The Problem With Rating Systems

Recently, we needed to implement a rating system for a client’s application.  The decision came after the client agreed that the results would effectively be useless due to the potential for manipulation by users but the end goal of giving warm fuzzies to visitors is what was more important.  Unfortunately, since transactions aren’t processed or recorded through the site, we can’t limit who posts the feedback to actual, relevant purchasers. (Imagine if Craigslist provided user feedback profiles.)

The unfortunate “solution” we landed on involved having registered users fire an email to their customers.  Their customers would follow a link with a unique hash that allowed them to leave feedback about their transaction with the user.  Clearly, this has plenty of room for abuse.  Savvy users would simply create several throw-away email addresses and send themselves links.  Less savvy users would email their friends and have them give glowing reviews.  Either way, it would take an honest user to send to actual clients and even then, no user is going to send a review request to someone they just pissed off. And again, since the transaction isn’t completed on our side, we can’t simply trigger a feedback request. So you’re looking at about a 0% usefulness factor, either way you slice it. We’ll get into some of the pitfalls with ratings systems and a great piece on this by Boxes and Arrows, after the jump.

Read More »

Posted in: Design, Development gets a new look

As you have probably noticed, we recently unveiled the new and independent look for  We wanted to establish an identity separate from our web development company so I took it upon myself to get the ball rolling last weekend and decided on a layout that I felt would work well for what we are trying to do here.  We found a great free theme over at TopWPThemes and used that as a starting point. Since then, we’ve been enhancing it bit by bit.  We hope you like it and we’re interested in hearing your feedback about likes and dislikes of the new design.  You may notice the site altering slightly over the next week or so as battles continue to rage within the office on some points of contention surrounding a few design aspects. (No more “slashdot green” for instance.)

Additionally, we look forward to releasing a couple new blogs into our blog network over the course of the next month.  We have some really exciting ideas (not to mention domain names as sexy as HTMList to deliver them on).  More on that soon, so keep your eyes to the site (or feed) for further updates.

Posted in: Announcements

Enterprise Patterns: A Look At Application Service

Today we’re going to talk about PHP enterprise patterns and all the fun they bring to the party. We’ll get into front controllers and take a close look at MVC as well.

Towns, Buildings, Construction

So let’s talk about patterns. Specifically, I’d like to talk about the MVC architecture pattern, and some thoughts I’ve had recently regarding its application. Let’s first clear the air a bit, make sure everyone is limber, and define our terms. It may be unknown to some that the seminal work in patterns, A Pattern Language: Towns, Buildings, Construction, was actually about architecture (the kind with buildings) and urban planning, not software design. One of the key observations the author makes in the book is that many cities which are laid out in a practical and attractive manner follow a similar pattern, which was varied depending on the exact situation. This is exactly how patterns in software architecture work; Patterns are elegant solutions to common problems that are flexible enough to be applied to differing scenarios.

Read More »

Posted in: Articles, Development

Incoherent Ramblings & Buzzword Science: The Steve Gillmor Story

This is admittedly a bit off topic for our normal look at all things code, but I couldn’t let this slide and HTMList represents the best place to publish my rant. With that said, I’ve tried, with great focus and much medication, to read through Steve Gillmor’s incoherent ramblings on TechCrunch. I’m clearly on the wrong stuff. Just the opening paragraph alone from today’s post is enough to make me wonder which psychotropics do it for him:

Who controls TinyURL controls the high ground in the battle for the Internet platform. Here’s why: Our brains are wired to protect ourselves from threats to our food, oxygen, and water sources. Most attacks on our supply chains come from those closest to us, our families, friends, business associates, and combinations of those groups.

The hell? So clearly, the logical conclusion to draw is that a commoditized, simple service which I could create myself in 5 minutes and teach you to create in 10 has any bearing on the “battle for the internet platform”? Let’s start with “most attacks on our supply chains come from those closest to us.” I don’t personally recall the last legitimate “attack” on my food, oxygen or water supply chain from either friends, family or coworkers. Or my internet service, electricity or cell service for that matter. Let’s get into it full on, after the jump.

Read More »

Posted in: Rants

When dynamic keyword insertion goes wrong: Are *you* craving puppies?

Craving PuppiesI mentioned dynamic keyword insertion in my blog post earlier this week. Basically, it allows you to target a whole swath of keywords on Google AdWords with the same ad and simply have the keyword inserted directly into the ad. This works well for some things, like, say, shoes, or inkjet cartridges where you just need to replace a brand name or model number in an otherwise good ad.

It takes on a whole new level of creepiness, however, when a Honda ad asks me “Are you craving puppies?” No, Google. No, Honda. I’m not. I’m not even sure what that means. Am I craving puppy blood? The tender flesh of puppies? I mean, seriously, what the hell? Honda’s ad campaign for their CR-V suggests “whatever you’re craving, the Crave Reader can guess.” (It’s actually a stylized version of the cool 20Q game you’ve probably seen in stores.)

Now I’m sure that they applied a dictionary set to their keyword campaign but some of those words just aren’t going to pair well when you ask me if I’m craving them. “Are you craving small children?” “Are you craving prison?” What a strange campaign. The moral of the story? Sometimes, you should check your dictionary lists. If you’re at all concerned with appearing creepy. But maybe I am in the mood for a puppy ringtone after all.

Posted in: Rants

Create Favicons for your Website with Free Utilities for Fun and Profit

Favicons Favicons started as a helpful icon identifier for websites back when you’d peruse your bookmarks and track down your favorites. Nowadays, they serve a much more useful purpose: they help brand your site both in browser tabs and in the address bar. Further, if you make use of Firefox’s Bookmarks Toolbar folder like I do, (called the “Links” folder on IE; it usually appears beneath the address bar) you can reduce each of the bookmarks to display just the favicon, allowing you to cram a bunch up there.

Favicon is short for “favorites icon”. A favicon is essentially a resource file in the Windows icon (.ico) format that is associated with a website. Even though the ICO filetype is Windows-based, Linux and Mac systems can still edit and serve them. Favicons are displayed by your browser as a 16×16 pixel image, but should be rendered as a 32×32 image that is then scaled down, as ICOs are scalable to 32×32 in some cases.

[It should be noted that 16x16 is an incredibly small canvas to work with. Chances are, you're going to need to abandon whatever supercool idea you have for a favicon—you're not going to be able to have a mythical dragon slaying a knight guided by a fairie. You might be able to get the dragon's eye. I'm just sayin'.—Ed]

The Windows icon format allows you to embed multiple files into one, so your favicon file should contain both sizes. Fortunately, there are great tools available to create these favicons, and they don’t cost a thing. Take a look at exactly how to make your favicon and links to the necessary tools after the jump.

Read More »

Posted in: Design, How To