Category Archives: Web

The Next Internet Revolution – Coming Very Very Soon

For years browsers have included options for “User Defined Styles”, allowing users to define a custom style sheet. But recently there has been massive innovation in allowing website users to customize the underlying sites.

The core of this innovation is XML and CSS, which has succeeded in finally separating the content from the presentation of websites. This is for practical purposes fully realized. Now for the next revolution.

The Revolution: User Scripting Websites

When we visit YouTube, Google, NY Times, or any other website, we’re never quite satisfied. The site always could have been better. It could have been easier to navigate. It could have been less cluttered. It could have included some key feature that would have made the site so much more useful. Like every engineering problem, the solution has always been possible – but the cost has outweighed the value, so modification of websites has not been wide spread.

Greasemonkey/Userscripts are leading the way into a new future. It can be commercialized. This will be bigger than Peer-to-Peer. Bigger than BitTorrent. Once this is integrated into every frequently used browser (IE, Firefox, Safari, Opera) UserScripts will become as important as XML RPC is to the modern internet.

User Scripts allow users to customize the look of any given website to match their preferences. Moreover, User Scripts allow the customization of the way that the given website actually works! For example, want Google Reader to look more like iTunes?

Default Google Reader in Safari

Google Reader Customized with “Mac OS X Snow Leopard” User Skin

Want to download .MPEG4 videos directly from YouTube?

Default YouTube in Safari

YouTube Customized with YouTube Perfect

Not only does this provide the ability to download FLV or MPG4 videos directly from Safari, it provides the ability to automatically select “HD”, to turn off the “Auto-Start” and even to change the color of the buttons!

Want to get rid of all the adds on the page you’re reading and focus only the content in a big, pleasant to read font? Usually the only rescue is to hit the “Print” button and try getting a reasonable page.

However, thanks to the “Readability” experiment, you can save yourself from any website and just focus on what you want to read – in a style that is most comfortable on your eyes.

Consider how many people enjoy “tuning” cars? Adjusting the suspension, the exhaust system, the interior, the lighting. Look at how much people customize their icons, their desktops. Once you can customize the software that you use, online, in an easy way, it’s going to unleash a revolution unlike any that have been seen in traditional software development to date.

  1. Some customizations can be very efficient, saving users time or bandwidth
  2. Customizations can change the feel to match the needs of certain groups of users (teens, employees of a specific company, seniors, students at a specific university)
  3. The “cost” of customization will be much lower than what’s ever been seen in software because the changes are done automatically on the client side at runtime
  4. The scale of such customizations will be vast. Imagine if Windows, Office, and Internet Explorer were released as Free Open Source software in 2000 – we would have hundreds of different versions of each. This will be even bigger!

Geeking out again… :-(

Got all geeked out about two things today… One was a really strange bug on my Mac’s version of Rails… Had to patch the rails time.rb and conversions.rb to get it all worked out. If get an error that looks something like:

NoMethodError: private method `to_date’ called for Sun Jun 22 21:02:51 +0800 2008:Time

Then, you’ll need to patch Rails (or upgrade) in Rails Changeset 6099.

Second, I’ve been wanting to improve the way online times/dates are handled, and known this can be done via Javascript and storing times in UTC, but hadn’t see how easy this is. Just take a look at’s “scribbish.js” file. The functions you’re interested in are:

  • show_dates_as_local_time
  • get_local_time_for_date
  • distance_of_time_in_words


第一次我看过这个“twitter”的网站认为是很土,但是越看越喜欢。twitter 说他的用处是回答常问的问题:“你在干什么?”。对我来说,twitter 最大的有点是发布消息很灵活。自己已经用几个办法发布留言:

  • Twitteriffic:”super lightweight” Mac OS X desktop Twitter Client
  • SMS/Text Message: just text in any language to: +44 7624 801423
  • Twinkle: iPhone geo-localized twitter client – who’s twittering near you.
  • Web ( Of course, you can post directly via the website
  • 也能通过IM留言,但是没有支持QQ或MSN。现在只有:GTalk,LiveJournal,和 Jabber


Online Project Management: Revisited

Back in November I wrote about different Project Management systems that I’ve been experimenting with, primarily Wrike – at the time I noted several areas where Wrike was seriously deficient:

  1. Safari Support
  2. Time Tracking (by Task, by Resource, by Hour)
  3. Chinese and Japanese support in Input Boxes
  4. Homespun looking website with aliased graphics

Not only has the Wrike team provided me with timely courteous responses to all communication, they’ve delivered on each of these issues.

Quote me here: “TODAY, Wrike has become a better Project Management solution than BaseCamp or GoPlan – Wrike’s got everything they’ve got, along with excellent Email integration that they don’t!”

Web Browser Color Management Tutorial

Web Browser Color Management Tutorial: Did you know that Safari, OmniWeb and Mac IE are the only browsers on the planet with “Color Management”. Do you know what color management does?

Basically, you can optionally attach an “ICC Color Profile” to your JPEGS. If your viewing application (usually your web browser) supports Color Profiles, that profile will be used to render the image on your screen.

Unfortunately, none of this matters much because even Apple advises that

Printers using RA-4 will almost always advise working in sRGB IEC61966-2.1, which is also the preferred colorspace for the Internet.

Of course, there’s one more wrinkle to watch out for. Photoshop’s default “Save for the Web” (Image Ready) feature defaults to the AdobeRGB profile, which isn’t really the color space for online. Whether or not you use Save for the Web, in Photoshop:

Photoshop> Image> Mode> Convert To Profile: sRGB IEC61966-2.1 BEFORE Saving for the Web, or going to ImageReady, or posting on the web

Why color changes when Save for Web, ImageReady, and or the internet?







Apache WordPress Rewrite Rules…

Picture 2-1Thanks to the PerishablePress site for helping me with the correct rewrite rules to get my WordPress configuration running…. The htaccess Rules for all WordPress Permalinks. This will make your Permalinks as well as other content links all function properly. Works great!

[ #1 ] If WordPress installed in the root directory »

# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress

[ #2 ] If WordPress installed in a subdirectory called “foo” »

# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /foo/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /foo/index.php [L] </IfModule> # END WordPress