SMACSS – Scalable and Modular Architecture for CSS

SMACSS Book Cover - Taken from smacss.comMany of you may already be aware of it, but in case not, I thought I’d point out that Jonathan Snook has released a site/ebook called Scalable and Modular Architecture for CSS or SMACSS (pronounced “smacks”). If you’ve read any of his previous stuff or had a chance to meet him at past events like South by Southwest Interactive, you know he’s a smart cookie, and nice to boot.

SMACSS is an interesting look into Jonathan’s process and structure, and as he puts it “a way to examine your design process and as a way to fit those rigid frameworks into a flexible thought process. It’s an attempt to document a consistent approach to site development when using CSS.”

I’ve personally spent a lot of time thinking about how I organize my CSS, so I love the opportunity to see the path that Jonathan has followed. We follow different practices in some cases (organization of attributes for example), but at a minimum, reading through his choices has caused me to think about the patterns I have set for myself.

Beyond the content, I love the fact that he’s sharing it publicly on the Web, in ebook format and via a third “Full Membership” option, so the information is freely available but he’s still able to profit from his efforts. I’ve signed up for that last option, in part to support him, but also because I’m excited to see what he’ll release to those members.

Image from the SMACSS site

All That’s Programmed is Not Code

We’re all programmers now. We all have to decide what to post next, what to point to next, what to launch next. Is there a skill in dreaming up Must-See Thursday nights, or in establishing a season of Shakespeare or even in deciding what’s on the special list at the restaurant? I think there is.

Seth Godin

This is one of the most important lessons I’ve learned over these last few years working at a high-tech media company. Crafting, combining and scheduling content is just as important as, and not that different from, writing code and designing interfaces.

If your work hits the screen, you’re programming at some level.

Being Geek, a Review

Book Cover of Being Geek by Michael Lopp

Michael Lopp, one of my favorite bloggers, has a couple of books out. The first, Managing Humans (Kindle), is a compendium of his blog posts about geeks and software engineering stories. It’s a great read. The second, Being Geek (Kindle), is fresh and insightful material focusing on the career of software engineers, and given the close similarity, I’d say web developers as well. If you’re an engineer, developer or coder, you should buy and enjoy this book.

I’ve read 42% of the book (I love the Kindle for surfacing that info) and I’m taking my time to allow my brain to apply the lessons to my world. I’ve been a geek my entire life, and I’ve managed geeks for over a decade, but I still have a lot to learn. Being Geek has made me better at my job already and I fully expect I will start it over as soon as I’ve finished it to catch details or angles I missed the first time through.

Not a Geek, but You Work or Live with One?

Read his post The Nerd Handbook. I think that’ll show the value of his perspective and provide enough encouragement to pick up a copy of the book. A deeper understanding of your colleagues worldview and motivation is never a bad thing right? Right.

From Chapter 15, “A Deep Breath”:

I admit it. I love it when the sky is falling. There is no more delicious a state of being than the imminent threat of disaster.

During these times, I’ve done great work. I’ve taken teams from “We’re fucked” to “We made it.” Yeah, we had to cancel Christmas that one time, and there was that other time I didn’t leave the building for three days straight, but it was worth it because there’s no more exhilarating place to hang than the edge of chaos. We’re wired to escape danger.

There’s a reputation you get after successfully performing the diving saves. You’re “the Fixer.” You’re the one they call when hope is lost, and while that’s a great merit badge to have, it’s a cover story. It’s spin. See, someone upstream from you fucked up badly. When the sky falls, it means someone, somewhere underestimated the project, didn’t make a decision, or let a small miss turn into a colossal disaster, and while fixing a disaster feels great, you’re not actually fixing anything.

Management by crisis is exhilarating, but it values velocity over completeness; it sacrifices creativity for the illusion of progress.

Michael Lopp, Being Geek

It isn’t easy to choose from the passages I’ve highlighted in the book, but I believe that should provide a glimpse at the content focus and writing style that you’ll find if you pick up a copy of Being Geek. I hope you do. You and your team will be better for it.

Switching to Chrome: Essential Extensions

The Web browser is the most important tool to my profession, yet I continued to use a memory-intensive and often times, slow browser day in and day out. Firefox is great for many reasons, but it’s no longer good enough.

Enter Chrome

In the last two years Google Chrome has matured quickly and the community has ported all of the functionality I need. So for the last couple of weeks I’ve put Chrome through its paces, using it as my default browser at work and home. I’m very happy with the results.

For those of you contemplating the move, here are the extensions I’ve installed, and some quick notes on the browser.

Extensions

One quick note – given how young the platform is and the size of the community compared to that of Firefox, there are a lot of rough edges. I expect these will be taken care of with time.

1Password

1Password support is a requirement for me given the amount of sites I use on a daily basis. The great people at Agile Web Solutions have us covered though. The extension is new and not as full featured as that available for Firefox and Safari, but it covers about 90% of what I need.

AdBlock

While I don’t run AdBlock on every site (I like to support content creators), there are some sites where the ads are so distracting it makes it hard to read their content, which is where AdBlock (as well as the excellent Readability bookmarklet) shine. The Chrome version functions just like its Firefox sibling.

After the Deadline

Automattic’s spelling and grammar checker is amazing and should be baked into every browser. Perhaps then the writing quality of the Web as a whole would improve.

Awesome Screenshot: Capture & Annotate

A great utility for grabbing the entire page or a selected portion. A must-have for anyone who reports bugs or keeps bits of great design for future inspiration. I do both.

Chromicious (Delicious Bookmarks)

I prefer this extension over the official (beta) Delicious version for one important reason – the save dialog is a separate window, allowing me to copy and paste snippets of the page into the description. The official version uses a drop-down drawer, which is wiped as soon as you click anywhere else.

Neither extension includes the handy bookmarks sidebar that’s available in Firefox.

Clip to Evernote

I use Evernote as a repository for interesting designs and products on the Web in addition to a general note tacking app. The plugin makes it simple for me to quickly import the current page and it also provides quick access to my other notes.

While it uses the same drop-down drawer as the one I dislike for the official Delicious extension, it doesn’t wipe the content when you click elsewhere.

Eye Dropper

A useful color picker. This functionality is already baked into the Web Developer Extension (below), but I like the quick access that the separate extension provides.

Firebug Lite for Google Chrome

I go back and forth on Firebug List as so much of its functionality is already available in Chrome’s Developer Tools. Luckily it doesn’t noticeably increase memory usage, so I’ll keep it around until I make a decision.

RSS Subscription Extension (by Google)

This should be baked into the browser. The entire purpose of the extension is to add the small RSS notified to the address bar, simplifying the process of subscribing to a feed.

Web Developer

Another great tool ported from Firefox to Chrome. The extension includes many utilities that make the life of a Web Developer much easier – everything from a color picker, guides and a ruler to the ability to enable and disable CSS and JavaScript on a page

Syncing

I love the fact that I’m able to keep extensions in sync across computers. If you aren’t aware of this feature, open the app’s Preferences, select Personal Stuff and follow the directions to enable syncing. It saves a lot of time and effort.

Rough Edges

  • Some sites seem to forget that I’m logged in when I use Chrome, though they will remember me for weeks while using Firefox. There aren’t many, but the fact that our bug tracking system (Jira) at work forgets me is very frustrating when I’m attempting to file a ticket.
  • I find it odd that Chrome didn’t adopt the long-standing View Source keyboard shortcut (CMD/CTRL-U). I remapped it in my OS given my muscle-memory automatically hits those keys when I’m debugging a page.
  • Another keyboard annoyance is that the F5 key isn’t mapped to reload a page. Again, my fingers are used to hitting CMD-R and F5 to reload a page. While it’s not a requirement to have two different ways to force a reload, it can be very convenient.
  • I hit an odd issue with fonts on my home machine recently, the cause of which I still don’t understand. While I resolved it, I’ve noticed other font rendering issues since, even after cleaning up my font installs on this machine.

Random Bits that Make Me Happy

Here’s a quick brain dump of little touches that I love about Chrome:

  • Chrome makes it easy to resize textareas, making long-form input easier in apps and forms.
  • The unified address/search bar works beautifully. The Firefox implementation is pretty good, but Chrome is noticeably better in terms of ease of use and recognizing my intent to search over my intent to navigate straight to a URL.
  • Chrome is fast. Very very fast.
  • Extensions are written with JavaScript, making them very easy to create and modify. This also widens the scope of extension-developers.

Do You Use Chrome?

If so, what cool things am I missing? If not, what’s holding you back?

Change the Thesis Doctype and Add Meta Tags

I love using Thesis because it lets me focus on content, while providing all of the design and development hooks I need to tweak the theme as I see fit. I’ve dug in a good bit, and while I’m far from an expert, I’m confident that anything and everything I want to do is available to me.

One thing I discovered early is that the default doctype is XHTML Strict, which is great in many respects, but can add some complexity given enough design changes and external data sources.

In 1.6 I was able to add some custom code to change the doctype to XHTML Transitional, simplifying some issues I was having with IE 8. Those same reasons necessitated that I include a new meta tag as well. Thesis 1.7 changed the implementation methods, so I’m documenting the new, right way to modify the doctype and add items to the page head in the hope that others might find it useful.

Credit: I learned about of this from girlie, who was kind enough to point me in the right direction on the Thesis forums.

Modify the Thesis Doctype

Simply add this to custom_functions.php in your Thesis directory:

/* !Custom Doctype */
function custom_doctype() {
    return '< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">';
}
add_filter('thesis_doctype','custom_doctype'); 

Adding Meta Tags or Conditional Comments

This hadn’t occurred to me as I’m used to placing these directly in the code, but once girlie pointed me in the right direction I found it is a simpler solution.

  1. Go to the WordPress Dashboard
  2. Click Thesis in the sidebar – this should open the Site Options page. If it doesn’t, click the Site Options link
  3. Click the plus icon for the Additional Scripts box under Document Head
  4. Paste your tags, conditional comments and or anything else you’d like included in the <head>
  5. Click the save button and verify that it worked on your site

Thinking About Thesis?

How smart is your Theme?  How good is your support? Check out ThesisTheme for WordPress. If you’re thinking about purchasing Thesis, and I highly recommend you do, I’d appreciate it if you follow this link when you want to learn more or are ready to buy the theme.

jQuery Enlightenment, A Review

jQuery Enlightenment by Cody LindleyA few months ago Cody Lindley asked if I would review his new book, jQuery Enlightenment after he saw me tweet about it. I jumped at the chance, but due to many other projects, this review has seen many delays. My apologies to Cody and to you for not posting this review sooner. That said, I’m very happy to share my thoughts now that time permits and I think you’ll find it useful.

The Short Review

jQuery Enlightenment is great for anyone who has some experience with jQuery and wants to step up their game or is familiar with another JavaScript framework like Prototype or Dojo and wants to ramp up on the increasingly popular jQuery framework. The book is not for complete beginners, but if you have a foundation, you’ll be able to jump right in and learn.

At $15 for the PDF ebook, it’s a no-brainer. Buy a copy.

Two Quick Notes

First: when Cody released this book, jQuery was at 1.3.2. Between then and the time of this writing, jQuery 1.4 has been released. While there are some key differences introduced in 1.4, I don’t think they detract from Cody’s work.

Second: Cody gave me a copy of the book in return for this review. Luckily, I really like the book, so I feel confident in staking my reputation on the recommendation. I’m not receiving any form of affiliate payment for encouraging you to buy the book.

A Longer Review

So, obviously I like it. Here’s why.

It’s Accessible

Cody’s writing style is friendly and he has a knack for transforming complex concepts into understandable knowledge that you can quickly apply. He’s included a wealth of code, even better, he’s posted all the samples on JS Bin for easy access.

Additionally, as the file is a PDF, it is easy to take it with you on your phone, or using my favorite method – DropBox, which maintains the file across multiple machines. Keeping your copy open makes it easy to search for a particular event, effect or method while you’re working.

It Covers What You Need to Know

jQuery Enlightenment starts by explaining core jQuery concepts, quickly moving into more detailed and advanced topics. While I won’t reiterate everything (check out the table of contents on the site), I think it’s important to list some of the key concepts he does cover to show the breadth of the book:

  • Traversing the DOM
  • HTML manipulation, including a chapter on forms
  • Events and Effects
  • AJAX
  • Performance Best Practices
  • Writing a jQuery plugin

Yeah, Cody covers a lot in this book. While I’m by no means an expert, I’m comfortable with jQuery and I learned a lot. For example, I had somehow missed the existence of preventDefault() and stopPropogation(), so I’ve relied on return: false. This works most of the time, but now I know that there’s extra granularity available to me should I need it. Nice.

Oh and don’t miss the gems in Chapter 12 (Miscellaneous Concepts) as he’s thrown in some very useful knowledge there at the end.

Wrapping Up

So, as I noted at the beginning, I think this is a great book and an easy purchase decision if you are familiar with JavaScript and are interested in jQuery.

Grab a Copy and Tell Us What You Think

I’d love to hear your opinion on the book. Would you recommend it too? Let me know in the comments.

Quick « » in OS X

I accidentally inserted a double left angle quote («) this morning, which lead me to discover that OS X provides a handy way to insert it and of course it’s match, the double right angle quote (»). This may not sound like much, but given how often I use these characters (especially ») in my wire frames and other docs, these shortcuts will noticeably improve my efficiency.

Here are the keyboard shortcuts to use in OS X:
Double Left Angle Quote («) – ALT \ (hold the ALT key and press the backward slash key)
Double Right Angle Quote (») – ALT SHIFT \ (hold the ALT and SHIFT keys, then press the backward slash key)

Note 1: this doesn’t insert the HTML equivalent of either character (&laquo; and &raquo; respectively), it inserts the actual character as if you were to cut and paste it from the character palette.

Note 2: the ALT and OPTION keys are equivalent. so if you don’t have an ALT key, use OPTION instead.

Burning Chrome

Google Chrome Comic

Google Chrome Comic

Google plans to release a new browser soon, based on Webkit, but with a new JavaScript engine, which is expected to be significantly faster than most browsers and will be sandboxed to ensure that a crash in one tab doesn’t take out the rest of the browser.

In addition to the blog post, they’ve created an introduction to the browser in comic book form.

While there are a lot of questions about it and some interesting discussion points, I am curious to see how, or if it changes the way we design and develop Web apps. It will also be interesting to see how they design the interface and flows within the browser, having stated that one major goal is to streamline and simplify the UI. The beta Windows version is to be released today, with Mac and Linux versions coming soon.

I am also very curious about the privacy implications inherent in this release. Google has reached a point where they have an insane level of information about the interests (Google search, AdSense), browsing habits (Google Analytics, DoubleClick), events (Google Calendar), personal and business plans and finances (Google Apps) and personal connections (gMail, gTalk) of nearly everyone who uses the Web. While I love their motto of “Do No Evil”, I can’t bring myself to trust that it will always hold true, whether by internal decisions, or by outside pressure from stock holders or governments (wow, now I’m starting to sound like the other Alex Jones).

I will definitely test the browser, and I look forward to the concepts they are introducing. A shakeup in the market will be useful, even if it reignites the browser wars, and causes consternation amongst those of us who build Web apps and sites. We’re pushing forward, which is a good thing, but we need to temper our excitement (or annoyance) with the impact this will have on the Web and be wary of what we as consumers and users trade for the new browser.

MacGDBp: A Remote PHP Debugger for OS X

Blue Static has released MacGDBp, “a native Cocoa application that allows Web developers to debug their PHP applications.” The tool utilizes the Xdebug PHP extension to connect to the running PHP app so the developer can step through their code, add breakpoints and see the local variables and function call stacks all within an OS X interface.

I can’t wait to try the app, though I do wish they would have chosen a name that is a bit more pronounceable.

SproutCore: Apple's Flanking Move?

SproutCore LogoI wasn’t all that familiar with Sproutcore, Apple’s JavaScript framework prior to reading this article, but after thinking the arguments over, I think Apple has been flanking the other players in the application marketplace (both online and desktop) for a while. The article Cocoa for Windows + Flash Killer = SproutCore provides some very good reasons for Apple’s moves onto Windows with Safari and other apps; I highly recommend you read it if you’re the least bit interested in development on the Web, the iPhone and/or Rich Internet Applications (RIAs).

Being based on open web standards and being open source itself means SproutCore will enable developers to develop cross platform applications without being tied to either a plugin architecture or its vendor.

Sitting on top of web standards will also make it easy for Apple and the community to push SproutCore ahead without worrying about incompatible changes to the underlying layers of Windows, a significant problem for the old Yellow Box or some new Cocoa analog. SproutCore also lives in a well known security context, preventing worries about unknown holes being opened up by a new runtime layer.

Daniel Eran Dilger – Roughly Drafted

These developments are exciting for oru industry, but also for the world as a whole – a solid platform that can be as portable and accessible as the Web, yet have the power of the desktop has long been sought. We may finally have it in our grasp.

Portable Privacy Experiences

When you think about it, online social applications are bad places to put things that are meant to go unseen, and it makes the notion of privacy start to feel like the wrong idea. This brings us back to the words we choose, because I think we interact online not to keep stuff private, but to share it selectively. Setting up a privacy framework works as a force in opposition to the goal of sharing something. If instead we think about streaming shared actions (or gestures, if you like) and content to the right people and less about exception frameworks, things should work more smoothly and, I think, bring us closer to models that can cross networks without exploding.

Todd Sieling: Portable Profiles and Privacy: Choppy Ux Ahead

Todd’s insightful article has me thinking about privacy, expectations of and experience within our social media tools, online and off.

Creative Bridges, Coworking & Communities

This started as a quick comment on Alex Hillman’s post Creative Agency, which quickly grew so long that I realized that I had begun writing a post of my own, so I’ve shifted it to my site so I don’t hijack Alex’s discussion (plus I don’t post often enough).

Please read Alex’s post prior to reading this one.

So, Alex’s ideas set my mind-gears a’spinnin’. He covers several aspects of building a community that is beneficial to its members but also to its clients, uniting several concepts that drive me personally, and I believe drive communities around the globe.

A couple of coworking initiatives (LaunchPad, Conjunctured) are growing here in Central Texas, which I think will mesh well with our various Web and creative groups like Refresh Austin, which in turn play a large part in sharing knowledge and connecting members of the professional creative and Web communities. That said, we’re a disparate community, which can be both good (an abundance of creativity and different perceptions and solutions of challenges) and bad (harder to spread the word and unify), and often times the individuals, whether they work for themselves or sit amongst hundreds in large enterprises aren’t able to rely on each other to augment their strengths.

Some love design, others front-end development, or back-end coding. Some dig deep into the perfect turn of phrase, while others concentrate on the most effective way to monetize a product or service. Some of us like to translate between the various cultures. We’re different, which is very good. But we could do more to help each other.

Alex highlights some of the most glaring gaps amongst our profession:

  • Creatives who don’t take responsibility for “leading the client just as much as we are leading the project and the result that the end user experiences”
  • Independent creatives who may not have the business background, the time or the personality to look out for themselves on the business front

These are large gaps, but they are addressable by the right communities, some of which exist, others of which we need to being forming.

Bridges

So, we need to connect these communities:

  • Independents and corporate designers/developers – it’s amazing how different these experiences can be, and both groups will benefit from the sharing of knowledge
  • Experienced and new professionals – connect the energy, vigor and will-not-stop drive with experience and knowledge (business, and yes some political). We have to tap into the excited professionals – no cynicism
  • Business professionals and creative professionals – business folks would love to tap into the fountain of ideas that make up a creative world and the designers and developers will gain valuable skills from their counterparts making it much easier to navigate the world of contracts, time lines and expectations
  • Open source developers/communities and businesses – As Alex notes, “being an open source software developer does not, and should not, condemn ones self to a life of poverty”, which follows up on Whurley’s Opensville post.

Chief among my questions to the community is to learn what are the first steps we should take to move forward building this new creative agency platform and the other pieces required to move our communities forward? CitizenAgency and Indy Hall have an edge as established, physical spaces with strong communities, but I think Austin is an ideal setting for this as well and could quickly contribute.

So where to?

Searching for Findability

Everyone seemed to have their place in the project life-cycle at the web design agency; everyone but little Findability. Occasionally someone would notice his value to a project, but instead of giving him the care he deserved, they’d just fork over copious amounts of cash to ship him off to his sketchy uncle SEO, who tied him up and fed him keywords all day long. He spent so much time at uncle SEO’s that everyone started to think Findability was SEO, and subsequently became a little dubious of his importance.

Aarron Walter

Aaron’s article, Findability, Orphan of the Web Design Industry is a great reminder that we should not overlook the importance of findability, nor confuse it with SEO and usability as we create our designs and interfaces.

Internet Explorer 8 Readiness Toolkit

Microsoft has posted the Internet Explorer 8 Readiness Toolkit page. While the links don’t work quite yet, odds are good that an announcement will be made at MIX. Hat tip to Jonathan Snook for the link.

There’s some interesting information available on the site, including how to make your site “light up” on IE8:

  • Site-specific contextual menus called Activities
  • Web Slices, which provide individual feeds of information from parts of a Web page. This seems to be akin to the capabilities added to the most recent version of Safari on OS X
  • CSS 2.1 Compliance and “some of the most requested CSS3 features by web developers and designers.”
  • Developer Tools for debugging JavaScript, CSS and markup
  • And more

We’re on the precipice of another major phase in Web development, and given the recent arguments and outrage around IE8, which ended nicely, it is likely to be contentious at best, and outright nasty at worst.

Here’s to hoping that we as an industry have progressed a bit and embrace meaningful debate and dialog over diatribes and partisanship.

A Good Day for the Web – IE8 to Properly Support Standards

The IE team announced a change from their previously stated plan for IE 8 ‘involved showing pages requesting “Standards” mode in an IE7’s “Standards” mode, and requiring developers to ask for IE8’s actual “Standards” mode separately’ via a specific bit of meta information delivered per page or at the server level. After a lot of discussion in the community, some of it quite heated, Microsoft has relented. IE8 will now ‘show pages requesting “Standards” mode in IE8’s Standards mode. Developers who want their pages shown using IE8’s “IE7 Standards mode” will need to request that explicitly (using the http header/meta tag approach described here).’

Microsoft is notorious amongst the Web development community for past decisions, some, like their initial decision on this issue, made with the best of intentions; so it is great to see that they are willing to step back, re-evaluate and change their direction when the community speaks up. It is a change from the old days, and alongside their shift regarding open source, I truly hope it is an indicator of the future.

Revising My Thoughts of the Future

Having spent some time digging into the various arguments around IE 8’s plan to address compatibility concerns since my first post on the subject, I’ve shifted away from my initial embrace of the plan. While I’m not as deeply entrenched as many on the Net, I see this as a major problem. Microsoft will implement this change no matter what, and many developers will make use of it. It may start with bits and pieces – a quick fix to address one incompatibility, but in time we’ll see it crop up in corporate-wide, multi-site environments – like your bank. In time this will drag down the Web as innovation won’t be as important without the looming threat of browser changes. If a corporation can stick with an IE 6 Web application design for five years, they will – it could make a lot of sense economically, but I think it will hamper the interesting changes to user experience and usability practices that come with the new technologies inherit with spec and browser updates. This concept isn’t too well formed in my head yet, so I’ll have to post more later, but until then, I recommend reading the quotes from folks who have thought about the issue far more than I have, and provide much more articulate responses this post: Opera, Mozilla and Safari react to IE’s solution for browser compatibility issues

The Future of Compatibility

A List Apart has ignited a discussion around future-proofing our sites and targeting specific browser version. Read Aaron Gustafson’s Beyond DOCTYPE: Web Standards, Forward Compatibility, and IE8 and Eric Meyer’s From Switches to Targets: A Standardista’s Journey to learn what has sparked the renewed discussions and arguments.

After an initial reading, I rather like the idea. If we can get Firefox, Safari and Opera to implement the same method as recommended in Aaron’s article, the Web development industry, and all those it serves (including the vast majority of business, education, government and blogging sites – i.e. the entire Web) would benefit.

Ugly sites will still exist, but they’ll at least stay the same shade of ugly as their creator intended.

Reset Your Style

Eric Meyer has updated his reset style sheet, outlining the reasons for his change in the post Resetting Again. The modifications, while small, are logical and affirm how important the Reset sheet has become to Web professionals and amateurs alike. As Eric notes “this is more than just a throwaway development tool. It really is the beginning of a baseline style sheet. (Or can be.) Things like boldfacing and italics are some of the most obvious textual effects readers will see, and to have reset styles that treat them inconsistently across browsers doesn’t make sense.”

I use a variant of the reset style sheet in every site I build; the majority of those variants are now accounted for, making my life a bit easier. As always, Eric helps our profession move forward in a realistic way that is accessible to developers of all skill levels.

Straight Talk on Accessibility

If we can make the effort to care about cross-browser compatibility then we can make the effort to care about cross-person compatibility.

Jonathan Snook

That is one of the simplest, yet most effective points ever made about Accessibility in the realm of Web development. If you are in the least bit involved in any aspect of Web design or development, you should read What does Accessibility mean? It’s long, but well worth your time.

If you’re a believer, Jonathon provides a couple more rounds of ammunition, including a concise breakdown of the accessibility lawsuit (PDF) against Target.com. If you are unsure, or feel that accessibility isn’t important, you’ll learn a lot from his post.

This is important. I recently agreed to join the advisory board for AIR Interactive & Access U to lend my efforts to this extremely important cause. Every site on the Web should be accessible to all visitors. Yes, a balance must be struck, but right now the balance is tipped in the wrong direction. The effort to implement sites properly, ensuring everyone can access them is small.

Read the article. Think about how you work. Change what should be changed.

IE to Eliminate the Click to Activate Requirement for Flash & ActiveX

About six months back, Microsoft was forced to hobble the usability of Internet Explorer as a tactic in their legal battles with Eolas. This lead to much consternation within the Web development community and too much time and money spent implementing a JavaScript workaround that ensured that user’s aren’t forced to click every bit of Flash they encounter in order to use the functionality. Without the workaround embedded Flash apps that perform an action when the user hovers over the app do not work in Internet Explorer until the user clicks the app to “enable” it. Dumb, but not really Microsoft’s fault. While some clever quickly built a JavaScript workaround, too much time and money was wasted on something that shouldn’t have been an issue.

Well, good news has come today in the form of Microsoft’s announcement that they have licensed the “technology” required to (re)enable this functionality! Great news, though oddly enough it will take another six months to roll out!? This is a feature that was in the app, taken out against everyone’s wishes, including Microsoft, and now, when they have the go-ahead to re-add the feature they are prolonging the rollout until April of 2008. Microsoft is missing out on an opportunity to make the dev community very happy while simultaneously making the Web a better place for everyone. Here is their plan:

The first chance will be with an optional preview release, called the Internet Explorer Automatic Component Activation Preview, available in December 2007 via the Microsoft Download Center. Additionally this change will be made part of the next pre-release versions of Windows Vista SP1 and Windows XP SP3. After giving people enough time to prepare for this change, we’ll roll this behavior into the IE Cumulative Update in April 2008, and all customers who install the update will get the change.

Well, that said, this is a good thing, even if it means bad patents are being rewarded. This is yet another example as to why our patent system needs a major overhaul.