Skip to main content

Posts

Showing posts from 2011

Kindle Fire: Year-End Clearance

I got a Kindle Fire earlier in the month, mainly because it seemed like the best value you could get for an Android-based tablet and it would be useful for some HTML app testing. After a few weeks of playing with it, though, I've decided to return it.

The device itself doesn't inspire a lot of passion. It's just about half an inch too wide and much too heavy to be held comfortably in one hand--at least for me; perhaps Joe Flacco could palm the thing. That discomfort is compounded by the rather angular edges of the device. Now if you're going to want to hold it with two hands and/or prop it up against something, the tiny screen becomes a liability more than a benefit.

The Fire's ecosystem annoyed me right out of the box. To get started I figured I'd try some of the free books. When I tried to download them I got an incomprehensible message. Turns out you absolutely must have a credit card saved to your Amazon account, even for the "purchase" of free …

This Hover Cruft is Full of Ills

Recently I spent time refactoring much of the event system in jQuery for version 1.7. Since we added some new event methods as well, I took another pass at the event-related documentation. It was an opportunity to rewrite the pages in a way that make more sense (at least, to me) and eliminate things that were important five years ago but not so much today. Just like code, documentation accumulates its own cruft over time. I also find that when things get ugly or inconsistent in the code, they often get ugly or inconsistent in the documentation as well.

Here's an example: In jQuery 1.4.2 we started allowing people to use the "hover" event name for the .live() and .delegate() methods. This is the equivalent of attaching a "mouseenter" and "mouseleave" event to an element. Really. That is all it does. If you said $("button").bind("mouseover mouseleave", myFunc) you can now say $("button").bind("hover", myFunc) and …

Steve Jobs

By all accounts, Steve Jobs was the kind of guy who you didn't want to work with. To put it bluntly, he was a perfectionistic pain in the butt, the Boss from Hell for whom good was never good enough. Yet that intensity was driven by a vision that has transformed technology in the past decade.

Many successful businesses make their fortune by carefully calculating how much people can spend and squeezing every bit from them via tricks, gimmicks, and sometimes even outright lies. Advertising and marketing create demand for a product that is often much different than it appears to be. When people find out that the reality doesn't match what they were promised, the outcome is bitterness and anger towards the company that deceived them.

Jobs was different in that he figured out what people really wanted--so often in sync with what he really wanted--and gave it to them. He seemed to figure it out not by focus groups or statistical analysis of consumer trends, but by a gut feeling that…

Running out of Lipstick

Over the past several months, I've spent some time fixing lots of jQuery event bugs related to Internet Explorer 6, 7, and 8 in preparation for the upcoming jQuery 1.7 release. Most of these were jQuery bugs in the sense that we didn't put enough extra lipstick on the pig to make it seem as attractive and standards-compatible as modern browsers. One phenomenon that interested me about these bugs was that they had all been reported in the past 18 months, but had been in jQuery for several years. So if that is the case, why were they just being reported now? I have a theory.

If you were a web developer five years ago, you had to really know the quirks and inconsistencies of the major browsers of the day, primarily Internet Explorer 6/7, Firefox 2/3, and Safari 2/3. Libraries like jQuery were created to help developers deal with those problems, but nearly all developers were well aware of the issues that were being normalized within the library. That usually meant their own battl…

Wake from Hibernate

Google knows me better than I know myself. While setting up my Google+ account a few weeks back, Google sorta "found" this old Blogger thing I created more than five years ago. Instead of trying to wipe those old posts off the face of the map, I decided to move back in and post some occasional updates here related to whatever I might feel like saying. Let's see how it goes.