Technology
CSS Hacks Are Just A Way Of Life
I’ve been developing websites for many years and I’ve seen my share of ridiculous browser bugs. If you’re not familiar with developing websites for Internet Explorer, here are a few of the nastier bugs that creep up:
Elements disappearing, layouts borked, forms not working correctly, these are all things that occur within IE version 6. IE7 is far better in its handling of rendering issues, but the problem is that people still use IE6 and you have to worry about them. The IE6 version of 9rules.com is a little ragged but it is about 98% the same. The only reason I was able to do battle against IE6 somewhat successfully at 9rules is that I knew what to look for and I knew how to fix the issues, most likely with the underscore hack.
The underscore hack is called a hack for a reason, it invalidates your CSS. However on the other side of the argument is that it works. It easily allows you to make a website work in Internet Explorer 6 and, in the end, if it works then it’s fixed. At least in my world… the world where sites need to be made live on a schedule and IE6-wielding visitors come to your site in double-digit percentage hordes. It works but it’s not pretty.
Another option is to serve a completely different CSS file to various IE versions using conditional comments which only IE understands. This is a cleaner separation and is preferred by many (I’ve used it, it works nicely) but the thing to keep in mind is that it’s still a hack. It’s a non-standard way of sending style data to IE while ate the same time sending style data to other browsers.
Oli, one of our big users at Chawlk, posted this comment:
“There are few reasons to *need* to hack CSS. You can usually get around the problem by refactoring your XHTML.”
Now, I disagreed with that, mainly because I’ve worked on specific issues that I don’t think could be fixed by refactoring XHTML alone. It’s true that many designers think they need to hack their CSS to make something work cross-browser, when all they really need to do is use best practices in developing their CSS-based layout from the onset, but there are small cases when you have no choice. Sometimes you have to serve different CSS files, different rules, JPGs instead of PNGs, etc.
But hacking your code should be your last resort. My general rule is if I spend a solid 30 minutes trying to work around a rendering issue within CSS and still can’t make it work, then I’ll pull out the hacks. At the end of the day, I just don’t have time to be messing around with IE issues and I need to make it work. CSS hacks just work, and I use them, and will continue using them. You should too, but be smart.
Six Apart Drinks Your Milkshake
Six Apart has announced that they have acquired Apperceptive, a design and development firm focused on social-media sites and blogs, and that Apperceptive is now part of the new Six Apart Services segment of their company. Now, Six Apart isn’t just producing social software, they’re working with companies to plug it in. (Think: IBM selling WebSphere Portal to companies via IBM Global Services.)
I think it was a great move to acquire Apperceptive since they’re such a talented team, but I think this is bad news for many independent blog design and development firms. Anil Dash doesn’t think so and he said the following in an interview:
“We’re not aiming to compete with the amazing community of consultants we have today — we want to grow the entire market for consulting around our platforms. One way that can work is, for example, our team might join a third-party consultant on a pitch or proposal to a key client that they want to work with.”
How can Six Apart say that they’re not “aiming to compete” with current Movable Type consultants when they bought one of the largest MT-centric consulting firms out there, and are now offering their services under a branded Six Apart banner? Isn’t that the definition of “aiming to compete”?
In July 2002, Apple acquired Emagic, makers of Logic pro-audio software and then immediately discontinued the Windows version of the application. For two years Apple worked on creating Logic Pro which was a combination of many Emagic applications, and now Logic Pro is one of the best pro-audio software suites out for the Mac. Smaller audio software makers that competed with Emagic in the early 2000s were pushed out of the Mac market after the acquisition, since Logic Pro had a lot more money and engineers behind it, not to mention it was created by makers of the hardware is was to run on which is an obvious advantage (compare iPhone software slickness with the garbage that other cellphones have.) Now, Logic Pro is one of the few games in town for serious audio professionals using Mac OS X.
Apperceptive has put together some very solid social websites for a number of large clients, spearheaded by David Jacobs who has been a leader in the Movable Type consulting industry for many years. With the acquisition by Six Apart, all his large clients will now be Six Apart’s large clients, and there’s really no way to know how “small” of a company 6A will target since they now have a dedicated services arm. Six Apart is a company and companies need to make money, so if there’s an MT-focused project up for bidding, you know that they’ll be all over it.
When Anil Dash says that this acquisition will grow the market for Movable Type consulting, I believe him. However the acquisition of Apperceptive lets Six Apart reel in a larger part of those consulting projects, leaving less fish for everyone else to eat. Six Apart has been working hard on building their developer community up to match the one surrounding WordPress, and I really can’t see this as a something that developers would appreciate.
Anil, since you’re great at finding entries I write about MT, I’d appreciate if you could shed some light on what size projects Six Apart Services will be going after following this acquisition. Is it only major companies or will it drop down to medium-sized blogs that were within the realm of designers/developers like myself?
(Note: I designed and developed MT-powered websites from 2004-2007 for various sized clients, and have always preferred Movable Type to WordPress.)
Comments and RSS
Let’s have a conversation about comments. With the rise of third party sites like FriendFeed it is getting harder to keep up with comments. If you are unfamiliar with FriendFeed the site is an aggregator to aid you in following your friends. If I placed my blog feed in FriendFeed my friends using the site would see my entries but they would also be able to comment on my entries in FriendFeed. Those comments would stay in FriendFeed and would not be posted on my blog. This is why I haven’t put anything in my FriendFeed account - I don’t see the sense in having comments on my content on another site. That would mean there are multiple conversations going on. There is enough of that with sites like Digg and Reddit but at least there is a benefit those sites give you - traffic.
Going through my feeds I noticed Dave Winer has a solution to this problem. RSS has a comments element built in. If a feed reader supports the comments element it will show an icon that, when clicked on, will take you to the blog owner’s page to make a comment. I like that. Correction, I love that. I hope all feed readers begin to support the comments element, especially online aggregators. I really think FriendFeed should refer the reader to the writer’s site, not allow comments within their site, especially if the RSS feed has the comments element in it.
I realized there is another layer of recognition needed. My RSS reader supports the comments element. I have no idea how long it has been supporting it. Unfortunately, I’ve never used it. I never even paid attention to the icon. While looking to see if my RSS reader supported the comments element (and feeling like a dumb ass when I realized it did) I noticed other icons I never paid attention to, like the ability to see who else linked to an article. I think the reason why I never paid attention to them: the icons are gray so they blend in with the text. Fortunately the RSS reader I use makes it easy to switch up the icons and I just might to that to enhance my user experience. Ironically newer icons added to the program have color.
Familiarize yourself with the interface of the applications you use. You may realize the program has ways built in to make you more efficient. Now that I know I can click to comments easily I will comment more. I don’t think some site owners realize how inconvenient it is to comment on their site. Two extra clicks can be the breaking point for someone commenting.
Check and see if your feed has the comments element. It seems WordPress has it by default. I looked at the ExpressionEngine blog and theirs have the comment element in it so it might be in ExpressionEngine by default as well. I have no idea about the other blogging tools. Check if your feed reader supports the comment element. Online readers might have to get with the program and add the element.
I just noticed some of our feeds on 9rules/Chawlk do not support the comment element. I’m going to be a brave soul and suggest we add it. Pray for me ya’ll.
Stop Following Everybody, Stop Information Diarrhea, Start Being Interesting, Start Thinking For Yourself
This post is dedicated to people who feel that in order to be the most informed they can be, they need to hear all information from all parties at all times of the day across all mediums. It’s a fallacy. It makes you unproductive. It dilutes your opinions. Stop doing it. And stop perpetuating it.
FriendFeed and Socialthing are services that let you facilitate information overload and you should stay away from them. Yes, many people I know use these services, and I’m saying they’re bad for your mental health. The reason they are bad is because they trick you into thinking that each item you read is useful and important to understanding what your “friend” is currently thinking & doing when you don’t need to know everything that your “friend” is currently thinking & doing. Granted, posting your inner thought process as a human being into Twitter is the culprit for this type of informational diarrhea, so tell your friends (and yourself) to stop doing that as well. I don’t care what you’re thinking about at the moment, what you’re contemplating, when you’re done contemplating, what you’ve decided to do, any of that. None of that is interesting and the publication of such information furthers the trends of Twitter streams being uninteresting and annoying.
People that write blog entries — when they have nothing interesting to say — just so that they can say they blogged today are the same types of people who post random thoughts to Twitter just because they know those thoughts will get blasted out to all their followers. This is a horrible practice and it needs to stop. Push your ego and vanity aside and only publish things that are interesting. Remember that with the advent of FriendFeed and Socialthing, your posts are replicated to the screens of many others, so make sure your words matter.
Matt Linderman points out the words of Ricardo Semler on minimizing your information intake:
“I estimate that the ratio of useless to relevant reading material is about 20 to 1. With that in mind, my advice is to reduce the literary inflow to a maximum of two newspapers a day, two weekly magazines, and two publications in a specialized field. Start being proud of not being aware of everything. The reward will be an opportunity to THINK.”
Seeing words past by your head from 16,000 people you follow does not make you a more competent and thoughtful being. It makes your opinions blend into everyone else’s until you have no more real opinions, you just have 16,000 things you read and you picked one to agree with. Once this happens, posting original thought to your blog is nearly impossible and you resort to the easy way out of analyzing someone else’s viewpoint because it’s easier than writing your own good article. It’s almost unbelievable to me how little original thought is now posted to blogs (if you want good original thought, head to Tyme Said and Expert Idiot) because posting a well-written and original article to a blog now is almost as foreign as RSS feeds were a few years ago.
Dealing With Information
I am subscribed to 38 feeds in Bloglines, and 8 of those are feeds from 9rules or Chawlk. I follow 65 people on Twitter but 1) I don’t have Twitter updates sent to my phone, and 2) I only visit or post to Twitter once every couple days, so there’s little overload there. I don’t use Socialthing or FriendFeed or any other similar service. I do read a lot of websites, but the act of reading them is deliberate and I actually visit the site instead of plugging it into Bloglines and seeing the titles scroll by in the mash of all other titles. When I decide to read a blog entry that I find via my Bloglines subscriptions, I click over and read it on the site.
Everything I choose to absorb into my brain is deliberate. Every topic I read about I do so because I’m honestly interested in it, not because 16,000 of my “friends” posted about it and it entered my subconscious due to visual repetition. I’m careful about what I consider to be a good source of information, and don’t succumb to the informational spew that some crave.
In short, I pay attention to things that matter to me, and don’t pay attention to things that don’t. I only write about things I care about, and don’t write about things that I don’t. If you apply these principals to the information you output and the information you input, then you’re on your way to having a perspective that’s untarnished by the informational diarrhea outputted by the masses.
There Are 100 Million Web Designers
I’m a veteran in the web design industry, which is ridiculous to say at my ripe old age of 25 (just turned 2 weeks ago) except that it’s true.
I started blogging in July 2003, back when only a few companies used CSS and people like Jeffrey Zeldman were on the frontlines of the standards brigade. I remember the days when putting together a navigation element on a page didn’t automatically mean use an unordered list, which people didn’t really use until Fall/Winter of 2002 which was when the previously-linked A List Apart article was penned. I remember when CSS Zen Garden went live in May 2003 and how excited everyone was to put together a theme (I never did, but I sure did start-and-stop a half dozen). I remember the days when Doug Bowman was the design blog king, before he took his hiatus and returned only to go to Google. I was around when Dan Cederholm redesigned FastCompany’s website (their current design looks like ass, Dan’s was far superior and also 5 years older…) which put him on the path to design stardom. I distinctly remember how popular Movable Type was and how it dominated the blog world before WordPress made a run on them.
Do you remember any of these events?
The reason I’m taking a trip down memory lane is because I’ve been thinking recently just how many web designers there are now and how much the industry has grown in the past 3-5 years. When we launched Business Logs in early Summer 2004 the concept of a design firm that focused on blogs was unheard of. There were some other blog consulting sites out there, but none that really provided high-fidelity visual design. We were the first. Now I probably have 2 dozen blog design firms in my bookmarks folder alone, and could easily name another dozen individual designers who have put together some amazing blog-based website designs. In 2004, the playing field was so small that everything was new….
….but now in 2008, you hardly see anything completely brand new in the web design industry. My partner Paul Scrivens started the very first web design gallery at CSS Vault and now there are probably over 100. Every month I probably come across a half-dozen portfolio sites that I’d consider some of the best design sites I’ve ever seen, and this happens every month! The abundance of design talent in the world right now is unbelievable, but I see the following as some consequences of this abundance:
- It’s unbelievably hard to go from 0-60mph as a new designer just starting out. When I started I put together a blog and some great articles and I was well on my way. Now if you don’t have a blog and you don’t have a couple unbelievable articles (with equally unbelievable pageviews and linkbacks) then you’re already behind everyone else.
- Your portfolio has to be unreal to even get noticed. I can name a half-dozen designers right now that launched their careers with a homely portfolio but still took-off in the industry. Over time they honed their skills and are now putting out fantastic work, but when they started they were still in the learning stages so to speak. If you’re a new designer about to embark in the web design industry and you launch with a decent-but-not-amazing portfolio or blog, you’re already 5 steps behind.
- Competition for client work drives pricing down across the industry. When I designed blogs for medium-to-large sized clients in my past life, prices started at a couple thousand dollars and worked their way up. Now that there are thousands (tens of thousands?) of free WordPress themes available — and everybody uses WP now instead of Movable Type, sorry Anil — clients see that as the bargain basement and when looking for a “custom theme” (I fucking hate that term, it should die) designers have to prove their worth beyond a shadow of a doubt because at all stages of the process a client could pick a freebie design and tweak it up. I’ve been part of many threads in Notes where people ask for bids on a nice blog design and people start throwing out 3-digit quotes. Well, shit, good luck with that.
So what do you do?
You separate yourself from the pack.
Put together a nice portfolio and blog, but don’t get caught up with the one-upsmanship that all the CSS galleries perpetuate. Read more than you write (I suggest this entry to start) and absorb more than you spew out. Twitter and all the microblogging platforms give you the means to produce verbal meta-diarrhea at all times of the day but resist the urge. Pick a niche and put together a small web-based “product” that targets that niche… it doesn’t have to be anything fancy. It could be as simple as a small utility that does to-do tracking in a new way, or a nice iPhone Summerboard theme, but design the hell out of it and then blog about it. Put it in your portfolio, and then tuck it away and put together the next little product site. The successful designers I see out there now are the ones that experiment with these little types of sites, and building a site like this teaches you a lot more than you think it will.
There aren’t really 100 million web designers out there right now, but there are enough so that you’ll get drowned out unless you pick reachable goals and then execute the hell out of ‘em. Don’t try to be the next Smashing Magazine or Freelance Switch, carve out your own area and own it.
Glam Puts The Halt On Easy Payouts
Everyone loves getting paid for nothing, and up until this past week, Glam was paying between $3 and $5 CPM to its publishers on unsold inventory. This generated a nice, steady bit of cash for bloggers who weren’t big enough to warrant ad buyers looking their way, but not anymore:
But according to one large publisher partner to Glam, this is actually nothing more than a way for Glam to dramatically cut payments to partners. He said “While they’re spinning this as positive news, it sucks for publishers. Publishers were previously guaranteed $3 - $5 CPMs for house ads. By no longer running any house ads, that revenue dies. And, given Glam’s fill rates retwork wide are only 30%, that’s 70% of traffic (for most publishers) that’s no longer earning revenue from Glam…It’ll basically cause a 30 - 80% drop in revenue for publishers”
Paying publishers guaranteed amounts was cutting into Glam’s bottom-line in a deep way, and it was one of the causes of their $3.7M loss on $21M in revenue last year. Now that they’ve raised a bunch of new money, they’re tightening the ship and buckling down for the long haul, and that means cutting off the freebies. Giving out guaranteed payments was great at bringing the hordes of female-centric blogs into the Glam fold (and buttering them up to give good reviews whenever prodded) but now that they have the numbers and the cash, it’s time to get down to business.
This is bad news for Glam bloggers no matter how the Glam executives want to spin it. A commenter at TechCrunch echoes my opinions:
“This is a classic example of what happens when you build a network purely based on minimum revenue guarantees. Glam took on too many publishers too fast merely to get their comscore reach to the leading position in their vertical and it has become increasingly difficult for them to generate any profits with the high revenue guarantees in place.” - Link
To attract a high valuation they had to scale incredibly fast, and telling small bloggers who had previously made no income from their site that they’d get a check each month was an easy way to accomplish that feat. Now that they’ve scaled and they have the Comscore numbers, their tune has changed. It’s changed for the better for their investors, and for the worse for their smaller publishers. The medium- and larger-sized publishers won’t get hit as much because they know how to monetize their unsold Glam inventory but the smaller publishers either don’t have the know-how or the traffic, two things that led them to Glam in the first place (outsourcing ad sales to a knowledgeable third-party).
So for the smaller publishers who relied on Glam for guaranteed payments, what they do now? Do they go to another ad network (not likely) or do they enter the tough world of ad sales on their own? Now that Google click-through rates are plummeting, it puts smaller Glam publishers in a very tough spot.
Distribution, South Park and a sappy moment
I have been doing a lot of research lately. In my search for knowledge I found out that all of the South Park episodes are online. I couldn’t help but smile because the creators Matt Stone and Trey Parker understand their user base.
TV is great. VCR’s improved watching TV by adding the ability to record. Tivo improved it further by making it easier to record and follow shows. iTunes allows people do download shows on demand. However, digital media is still a step behind being able to get the content when a user would like it, for example past episodes. With blog entries, podcasts, online videos, etc. a simple search will find it in an archive. My favorite TV show, that probably isn’t on iTunes?
I better have Tivo.
In the case of the new South Park deal, the show’s creators and Comedy Central will split ad revenue 50-50 from the digital joint venture, a network official confirmed last week. Stone and Parker also will get an increase in their salaries and guaranteed advances from DVDs, merchandising, international sales and syndication, The New York Times reported last week.
The strategic alliance includes the formation of the new studio, South Park Digital Studios, at South Park headquarters in Los Angeles. It will serve as the new home for all digital extensions of the show’s franchise, as well as an incubator for new animated projects.
South Park will have new episodes on Comedy Central through 2011. They are even considering gaming platforms. Excellent example of diversifying a brand and keeping their users happy.
Although on a much smaller scale, while developing Chawlk the guys and I had to give thought to the content that will be on the site, the best way to present it, and how to properly integrate aggregation into the site. How do readers want to view the content? What content are they interested in? The answers aren’t always readily apparent and I will be honest in stating that the guys had to deal with this hurdle more than I did. The technical and visual end on how the content is distributed isn’t easy to determine and I have much respect for their determination in finding the optimal solutions in achieving our goals. I never take for granted that, what I used to consider a simple request like, “it sure would be nice to have…”, could mean days of programming and research to pull it off. I always have appreciation for their efforts.
/end sappy moment
Obviously Matt and Trey are on the right track because I’ve read nothing but positive reviews for putting all the episodes online. Users are happy. Hopefully this will start a trend for other networks to jump on board along with giving creators more control over the distribution of their content.
Halfway Through The Woods, You Still Have Another Half To Go
There’s an old paradox that goes something like this:
“To walk through the woods you first need to walk halfway through. Then once you’re in the middle, you need to walk half the remaining distance, then half the distance again, and then another half, and you can never successfully make it through the woods.”
This type of dichotomy paradox tries to insinuate that there are an infinite number of steps needed to get across a set distance. The 9rules team is currently deep within the woods on Chawlk (and other stuff) and the further we get in the more it appears trees are still in the way.
When you’re designing and developing a site that has many moving pieces, it’s not just about the code, architecture, and design, it’s about a lot more than that. Chawlk includes many social networking pieces (profiles, friends, private messages, etc.) and once the pages are designed and working the way we want, our job isn’t even close to finished. Everything needs scrutiny, and things that especially need attention include emails we send out and how they’re worded, the “blank slate” screens before actions have taken place or data is stored, the description text we have sprinkled in along the way, and many other things. Just like with a mechanical watch, there are hundreds of moving pieces that all play their part and if even one of the tiniest pieces is broken then the entire watch won’t work.
We’re working hard to get everything right in our latest endeavors because in the past we’ve gotten close to the edge of the woods — didn’t get through — but launched anyway. A lot of our past efforts have been 95% there, and 95% is pretty close to 100% but that 5% you’re missing will immediately creep up and tarnish the 95% you completed flawlessly. A lot of these pain points are high up on our “launch list” now instead of being buried down at the bottom. A coding bug ranks right up there with getting the wording on a notification email just right because they’re both slivers of land we need to traverse before we exit the woods. They both have to be understood and perfected before they can be crossed.
Don’t Have An Intel Machine But Want To Code For The iPhone Anyway? Follow These Steps
I’ve got an Intel iMac and an older iBook G4, and before I read the “fine print” about the SDK only working on Intel machines, I had already started the download to my iBook (gimme a break, I was in bed!) After it downloaded I opened the main iPhone SDK package and noticed that no iPhone-specific things were listed under what it was about to install. I let it run its course, opened up Xcode, and just as I thought, it didn’t list the iPhone anywhere under available platforms, no Cocoa Touch application templates, etc.After doing some quick folder surfing, I got it to work: the SDK lets me develop for the iPhone, the emulator runs flawlessly, and all the documentation is available. Here are the steps I took:
- Once you’ve installed all the packages you’re allowed to install, go back into the mounted DMG and go into the Packages folder.
- See all the Aspen packages at the top? Double-click on them and install them, one at a time.
- You should now have a Platforms folder in your default installation directory, which for these packages is probably at the root level of your hard drive. Make sure it’s there.
- In that Platforms folder is where all of the iPhone-related SDK stuff was installed. Take everything in that folder and put it into the /Developer/Platforms/ folder in your main Developer directory.
- Restart Xcode (if you had it open) and you should be greeted with new choices for iPhone applications as well as the AspenSimulator device to test your code on.
The only oddity I’ve encountered so far is that you get 1 Warning when you build, because the target architecture doesn’t match (PPC vs. i386) but that’s to be expected. Also I don’t know if the certificates that Apple hands out once you’ve paid your $99 fee will work perfectly with this system, so for now I’d simply use it as a development environment and plan to get an Intel box running with the SDK sometime between now and June’s AppStore launch. It should be noted that I’ve got Leopard running on the iBook. But, it works!

TED.com Doesn’t Care If You Hack Into Their Database
Two days ago I posted to Twitter that TED.com had a big problem. For some reason, much of the Symfony PHP code used to power their website was sitting in plaintext at the top of all pages on the domain. Most of it was Symfony code, but there was one line in the code that listed their database information (username and password) for anyone to see.
Before I posted to Twitter, I contacted the TED web team through the contact form on their website notifying them of the major breach. You’d think that a message saying “your database login information is X” might get their attention, but no, it didn’t. It’s now Monday and I haven’t heard anything from them. They quietly fixed the problem last night but that was after 48 hours of it being up and live for anyone to see. It was up so long that Google cached it and it can be seen in the top result.
When I think of TED (the conference, the company, the website) I think that it’s comprised of a lot of smart people. The brightest minds on the planet give presentations to an audience filled with the biggest movers and shakers of the tech and business world. It costs many thousands of dollars to attend, and there are a limited number of tickets. The entire concept screams exclusivity but on the other hand, they let their database login information sit on the top of their website for an entire weekend WHILE thousands were hitting the site watching recently posted TED presentation videos. It’s not like this happened 6 months after the conference was done with, it happened while the conference was just wrapping up.
It just shows that no matter how smart you’re perceived to be, your smarts are only as real as you can prove them to be.
