chrome Google

Chrome: New “Press Tab to Search” Feature

Google Chrome, Developer version 4.0.302.2 includes a new way to easily search a website.  When typing a URL into the address bar, an option comes up to “Press Tab to search”.  Have a look below:

Press tab to search

The feature looks great to me.  My only question is how Chrome decides which sites are available to search and which ones to omit.  I have yet to see another site come up with this option other than Tomshardware.  Now let’s take a look at what happens when you press tab:

After Pressing Tab

Chrome maintains a smooth transition to the new search option and it is clearly visible within the url bar.  Now let’s try to search Tom’s Hardware for the Radeon 5770 card.  I search “5770”:

Google Finds Articles Related to 5770

It appears that those results coming in from the dropdown list are things that I have already visited.  It appears Google is searching my browser history, rather than Google search results.  While this is still useful, I’d look forward to an option to see live search results right from the dropdown box.

What do you guys think?

Google SEO

Google’s Rich Snippets Event Possibilities

Today Google announced another new feature of Rich Snippets called Events.  Of course it is a great idea to provide more markup to better track events of concerts, sporting events, movies, etc.  However, what if Rich Snippets could be used for a slightly different reason?  News updates on events or people.  Let me show you what I mean with a real world example. . .

As I’ve mentioned tons of times before, I run a site called FantasySP which is a news aggregator for fantasy player news.  What if for each player page, I add event data for each update?  That way, when someone Google’s “Tim Lincecum”, they can at a glance quickly see his 3 latest updates right within the Google search page!  I know this isn’t how Google intended it to be, but the results speak for themselves.  Have a look:

Snippets in action

Appearing right in the Google SERPS would be the 3 latest updates, including when they came in, giving the searcher a clear indication how fresh the content is.  I would love to hear everyone’s thoughts and comments on utilizing Rich Event Snippets in this manner.

browser wars

SunSpider Javascript test, Chrome Vs Firefox 3.6

Everyone must of heard the news that Firefox 3.6 has finally come out. There is a video mentioning all of the new changes in 3.6.  Mike Beltzner made mention of a benchmark called SunSpider and said that 3.6 had increased speed to 995 ms, down from 1188 ms.  I thought to myself, now that sounds like an interesting thing to put to the test to compare Chrome and Firefox.  Here are my own tests.

Firefox 3.6 with SunSpider:

873.8ms +/- 1.9%

Chrome Dev with SunSpider:

408.2ms +/- 1.5%

It turns out that I got a faster rating with Firefox.  However, Chrome is still more than twice as fast as Firefox.  So tell me, why are you still using Firefox as your primary browser?


Top Sports Websites Analyzed for Speed

Have you ever stopped to wonder how some of the biggest sports websites compare when it comes to speed and modern optimizations?  A lot of todays websites are using cutting edge features and embracing new technology, whether it be modern Javascript frameworks or a mesh of flash and embedded videos.  While it’s great to use these things to make each site appealing to visitors, it can also lead to increased load and rendering time.

For this post I will be analyzing top sports websites using Firefox’s YSlow 1.5 and PageSpeed extensions to figure out where each site stands in terms of performance to the end user.  Each site’s main homepage is loaded without being logged in and the browser cache will be empty.  For optimum load time for an end user, I will be using the Google Chrome browser Development builds because of it’s ability to load websites faster than other web browsers.

In terms of what I am looking for to make sure a website is properly optimized are things that every web developer should be looking at.  I am checking each website for gzip compression with javascript, css, and html.  I am checking each website for the caching of images, css, and javascript.  I am also checking to see if it uses ETags, the percentage of files cached, and the length of time each file stays cached.  I am also looking at how many HTTP requests per page load, end user page load time via Chrome, and size of the page upon first load / cached loads.

I will break up the listing of websites into two categories.

The first category of websites are the top tier major media outlet sites including: ESPNCBSSportsSports Illustrated, and FoxSports.

The second category of websites I will include at fantasy sports and social media websites including: RotoworldFanballRotowireKfflYardbarker,Bleacherreport, and FantasySP .  (This will be in its own follow up post)


As you may remember, ESPN is among the few websites that has undergone a complete overhaul within about a year.  This should result in better optimizations than the other sites.  It may also be the most visually appealing website in the entire bunch.

Page Size Cached Size HTTP Requests Server YSlow PageSpeed Chrome Load Time
473.7k 61.0k 54 /  13 Microsoft-IIS/6. 61 74 4.54

The overall size of the page is quite good at under 500k and the HTTP requests number is great at just over 50.  The lack of HTTP requests is a remarkable number considering what is going on with the page.  The fewer the requests, the faster the page load.  This is a great benchmark that the other sites in the category should strive to match or come close to.  In terms of website optimizations, ESPN hits just about every optimization that’s possible for the website. They support gzip compression on javascript, css, and html.  Their javascript and css is minified.  Their images, css, and images are all cached with the majority in a future date.

Overall ESPN has done a great job optimizing their website.  While it’s final load time says 4.54 seconds, its readable much sooner than that.  The speed at which it loads is phenomenal considering that the site is rich in video.

2. CBSSports

CBSSports has had their classic blue tinted website for years now. The question is if they have been able to update things behind the scenes to take advantage of modern browser optimizations.

Page Size Cached Size HTTP Requests Server YSlow PageSpeed Chrome Load Time
335.8k 174.5k 96 / 89 Apache 56 74 5.697

Page size for an initial load is an astoundingly small 335.8k, which is even better than ESPN.  Unfortunately this does not carry over to a primed cache, and the size is a little high at 174.5k with 89 requests.  CBSSports utilizes GZip compression for HTML, CSS, and Javascript.  They also minify CSS and Javascript, but they could have combined the Javascript into one file instead of several smaller files to reduce HTTP requests.  They also have quite a few images to load on every page load which accounts for an increased HTTP request count.  Some images have a cache time of today, while others have a cache time of 24hrs.  I would suggest changing all cached times to a date further into the future to reduce HTTP requests and decrease the size of a cached page load.

Overall I give CBSSports a very good rating, but could been great with a few minor tweaks.

3. FoxSports

Foxsports has a slightly different layout than the previous two sites because it has a much bigger flash app to showcase today’s top stories.

Page Size Cached Size HTTP Requests Server YSlow PageSpeed Chrome Load Time
906.8k 241.8k 91 / 89 Apache-Coyote/1.1 57 65 5.72

As you can see, the page size is the biggest yet at 906.8k, and the cached size is nearly 250k.  Any time page size is close to 1,000k for a news oriented site I consider that a bad job in optimizations unless they are offering a media rich experience that is far better than the other sites.  As we can see from the YSlow! chart, the majority of page size is taken up by CSS images, followed by regular images.  Weird huh?

It turns out that the majority of CSS Image size is due to the header image (at 62k) which can be reduced to 53k and the foxsports logo at 28.2k.  While the foxsports logo size can’t be reduced on my end, there are several pictures on the site that can be redused in size simply by using  The big image shown in the flash app weighs in at 230k, which can be shrunk to 218k with  Keep in mind there are 5 stories in rotation that need to be loaded.  The other 4 images aren’t factored into the initial page load time, but they still add up quick to people on slower connections.

When it comes to caching, the expiration dates for images, css, and js are today instead of far into the future.  As a result, cached page load requests are much higher than they should be.  It’s also important to note that they are using gizp compression.  They also decided to use ETags, which some say it’s better to omit them all together and just include far into the future expiration dates to lessen HTTP requests.  I agree with this mindset.

Overall I give foxsports a bad rating and they are in dire need for some optimizations.

4. Sports Illustrated

Sports Illustrated uses a similar style story spotlight app that Foxsports uses, but are they able to do a better job at the page size?

Page Size Cached Size HTTP Requests Server YSlow PageSpeed Chrome Load Time
887.8k 338.7k 108 / 59 Apache 57 65 5.72

Page load size is what I feared, just about on par with FoxSports at 887.8k.  On the bright side, SI was able to create pictures that are much smaller in size for their featured stories.  So where does all the pagesize go?  The majority are images and javascript files.  Oddly enough, their biggest javascript file at 108k is not gzipped!  Many of their images have expiration dates of today or tomorrow, which results in the large cached load size.  They do have gzip compression enabled for javascript, html, but NOT CSS.  Interesting.  They also have too many separate javascript files that are not cached far into the future and should be combined if at all possible.

Overall Sports Illustrated gets a below average rating because they have some glaring errors that need to be fixed.


As you can see, many of the websites have done a great job optimizing their sites.   ESPN and CBSSports get tops in this category, with ESPN holding the top spot.  This is likely due to the fact that it has gotten a recent redesign, and foruntately for us they’ve done an excellent job all around.  I suspect CBS won’t be far behind when their redesign launches.

SI and FoxSports are a distant 3rd and 4th in terms of optimizations. As I previously mentioned they have a few glaring problems which result in slowdowns for the end user.

Hopefully this post shed some light on how the top sports websites go about their optimizations.  I look forward to any criticism of my critiques or things I might have missed.


5 Reasons Why Mashable is a Bad Influence for the Web

Very recently Mashable created a post on their site indicating 5 more reasons why “Internet Explorer 6 Must Die“.  (Yeah, no shit!)  I was so inspired by their post that I decided to create 5 reasons Mashable is bad for the Web.  Mashable has so many bad habits incorporated into it’s site that I fear the rest of the web industry will think it’s okay to follow their footsteps.

It’s unfortunate that no industry leaders have stepped up to say how much their site blows the big ones. (Or perhaps I’ve missed them?) I implore everyone to post any site that rips on Mashable in the comments section below.

Now, onto my top 5 reasons . . .

1. It takes Over 30 Seconds to Load

For those of you unfortunate enough to have been linked to a Mashable story (my apologies), you’ll notice that it takes a LONG time to load.  Precisely 38.98 seconds according to Google Chrome’s developer tools.

Speed Kills. As in kill me now.

Keep in mind that I am using the fastest browser possible at rendering javascript and web pages in general.  Also keep in mind that my internet connection is Optimum Online Ultra, which is 101mbps and my CPU is a quad core.  If my computer has trouble rendering this website, then I fear for our little ones.

2. Mashable Loves Advertisements

In case you haven’t noticed, Mashable has 15 advertisements on their homepage.  I have never come across a website with more advertisements than this, and I hardly even leave my house folks.  I’ve tried!…(To find a similar banner ridden site.)  Basically what Mashable is telling people is that it’s perfectly fine to have this many advertisements and completely kill the end user’s experience.

According to their traffic numbers and apparent influence on the modern web, you don’t give a shit.

3.  They Report Funny Videos Too, LOLZ

If you thought all Mashable did was work hard to uncover stories about Google’s security breach in Gmail and the drama in China, then you are sadly mistaken.  Lucky for us all that they are able to uncover recent gems such as “Ninjas Perform Most Deadly Nexus One Unboxing Of All Time” or “Hilarious FarmVille Parody Ad Tells It Like It Is [VIDEO]” and, of course, “Nosy Boyfriend or Girlfriend? There’s an App for That“.

This is the hard hitting journalism we expect from a website that reports the latest trends and news from social networking and social media sites.

4. Digg, Tweet, And Facebook THAT ONE!

Just when you thought the advertisements on Mashable were the worst thing about, they totally redeem themselves by including a Tweet button, Digg button, and Facebook button.  Not those small crappy ones either, Ohhh no.  We are talking those oversized ones that take up way too much room than they should.  But just in case that didn’t get in your way, as a backup plan they have a “share” button and an “email” button just underneath.  And, JUST TO BE ON THE SAFE side, they included a “Become a fan of Mashable on facebook” widget and a “Google Connect widget” on the right column of their site.

Mashable, Just Trying to Spread their plague.

That’s Mashable for ya, going the extra mile every time.  All for us.

5.  Google is Happy, Internet Explorer is Sad

You may find yourself reading an article and all of a sudden you encounter some ridiculous smiley face.  It’s like when I mention things like Apple or Google these faces randomly appear so you know what your supposed to think about them.  What the fuck.  How did the faces start popping up here?!?!  Vista , iPhone , Mashable .

Though I have to admit, it totally works when I mentioned their site.


And please people, for the love of all that is holy.  If you absolutely HAVE to go to their site, use their mobile version instead.


Configuring the Linksys WRT610 Router for Dual Band

If you need a router with dual band support that is also gigabit, then the Linksys WRT610 is your best option. I have seen a lot of user reviews about dropped connections.  This was mostly due to a lousy firmware, but users were also at fault for improperly setting up dual band.  If you do not set up dual band support correctly, you will see connection dropouts.  I recommend NOT installing the Linksys software it comes with.  Please configure it manually with the following settings:

Set up Page

I have had this router for roughly 6 months or so and have never had a dropped connection using the configuration above.  I also have seen Wireless N speeds at 90mbps and wired speeds at 100mbps.  I am one of the few people fortunate to have Optimum Online Ultra, and I highly recommend to have it paired with the WRT610.

This router is as good as it gets folks, so don’t be discouraged by poor reviews by users from a year ago.

Google SEO

How Banner Advertisements Affect Google’s “Site Performance”

As you may have heard a while ago, Google decided to incorporate load time into where sites rank in terms of search results. The faster the load time, the more of a bonus they should get in SERPs. One of the things that slows down page loads more than anything are site advertisements. In this blog post we are going to look at what advertisements can do to load time, according to Google’s “Site Performance” chart in Webmaster tools.

For this analysis, we are going to look at FantasySP.  FantasySP is a fantasy sports news aggregator that makes managing a fantasy team and tracking player’s much easier.  I will show site performance when it had several ad networks compared to when it has just one ad network (Google Adsense).

Below you will see a chart of the performance of the site with about 3 to 4 different ad networks.  The more ad networks should result in worse performance.  The site load-time PRIOR to January of 2010 shows load-time with several ad networks.  After January, just one ad network is used: Google Adsense.

Google says: On average, pages in your site take 3.9 seconds to load (updated on Jan 10, 2010). This is slower than 63% of sites. These estimates are of medium accuracy (between 100 and 1000 data points)

Quite a dramatic improvement isn’t it?  The more ad networks, the worse your load time is, no surprise there.  But let’s take this a step further. . .should we disable ads  for Googlebot to artificially inflate load times in your favor? With no ads shown, FantasySP should load a lot faster.  But we’ll get back to this in a bit.

Next up, I’ll show site performance for the mobile FantasySP website, which is geared towards super fast load times.

Google says: “On average, pages in your site take 0.4 seconds to load (updated on Dec 7, 2009). This is faster than 97% of sites. These estimates are of low accuracy (less than 100 data points).”

The moral of the story is obvious, watch what ad networks you use for your website because it is killing your site’s load time.  Not only for Googlebot’s site performance numbers, but your actual real life visitors as well.  Why not offer a membership option for users to browse your site advertisement free, which is what FantasySP does.


As of 1/19/2010 I realized that the Site performance numbers are based on Google toolbar users load times.  This means that while removing banner ads and unnecessary code snippets for Googlebot may be good because it can crawl faster, it won’t benefit you in any way when it comes to Site Performance numbers.  Total bummer.

apache php

How to restart Apache with PHP

If you ever need to restart Apache via PHP, you’ll notice that the “passthru” command doesn’t quite work out like you thought it would. For those of you who have cpanel and WHM installed, this will be an easy solution.  cpanelmatt at the cpanel forums created an XML-API PHP class to be able to handle situations like this.

First download the XML-API PHP class.

Next, follow the code example below:


$ip = "";
$root_pass = "somepass";

$xmlapi = new xmlapi($ip);


print $xmlapi->restartsrv('httpd');
site news

Finally Using WordPress

After 5 long years using my own blog script, now uses wordpress.  This means that my old blog is still alive and can be accessed (via google searches), but I won’t be spending the time to convert it to wordpress.  From this point on it’s all new content.

The change to wordpress means that I will be able to make better postings and more frequently due to how easy it is.  My first post on wordpress will touch on how to use EasyApache with WHM.

Stay tuned!