Browsing speed boost

Eye2_5
I’ve added a “Show Next Result” button to the search page. This moves the preview forward to the next link in the results, and if you’re at the end of a results page, it fetches the next one. The beauty of this is that you can go through links very quickly without having to hunt through the results page.

I was also hoping to get the up and down keys to also cycle through results, but this looks like a cross-browser minefield. I had it working in Safari, but only after you manually set the focus by clicking in the window, I couldn’t get it working with Firefox, and I haven’t even looked at IE yet!

Another addition I want is some indication of which link is being previewed. I’m thinking about setting the table border of the snippet below the result to 1, so you get a selection box.

One disturbing thing I noticed while testing my latest changes on the PC is that youtube links in the results seem to hang IE when they’re previewed. This seems to be new, I’m worried there’s been some flash changes, and it might affect a lot of sites. Firefox and Safari still seem fine, but I’ll be trying to work out what’s happening tomorrow. It’s filed as Previewing YouTube sites hangs IE.

A relaxing intermission

Fallbig

Robert Seidel creates some of the most mesmerizing work, and he’s just put out another video online. Try to check out the really high-rez version if you’ve got the bandwidth, you’ll be rewarded, though there is a youtube version if you can’t face an 80 mb download.

There’s something about the movement and distortion in his animation, it’s twisted and disturbing, but very appealing. I love the mess and organic gunk that’s all over everything he does. My years programming 3D graphics have taught me to appreciate how much depth that dirt and imperfection can add to an image. I’m tired of hygenic abstraction.

If you like that video, check out Grau, my first introduction to him.

HTTP socket code fixes

Wires

I was chasing up the cause of the bug Socket based fetches can fail, and I tracked it down to an error in the way I was forming my initial HTTP GET request. I was putting the full URL as the argument on the first line, rather than just the path part. Interestingly, most servers accepted this, but typepad.com didn’t. I’ve updated the applet to do the right thing in this case, and also added some logging code that helped me track down the problem.

Something else that was really useful was the LiveHTTPHeader addon for Firefox. It gives you a full dump of the header information that’s passed back and forth between Firefox and the hosts it contacts. I’ve tried to absorb the RFC, but nothing beats being able to see a working example. I was also impressed by how easy it was to install, it makes me wonder how hard it would be to create a Firefox plugin version of SearchMash in the future.

I also fixed another bug that would sometimes prevent pages from loading, and removed the seperate status request check I did before, that used URLConnection. Now I just make a single socket connection for every page, that should be faster and easier to maintain.

Added a firefox search plugin

Firefox

I just finished a plugin for Firefox, so you can now add SearchMash to your search toolbar, just like the standard Yahoo, Google and EBay ones. To install it, go to http://mashproxy.com/search/previewframe.html, and click on the “Add SearchMash to Firefox’s toolbar” link.

Once it’s there, you can do searches with SearchMash by clicking on the top right toolbar, that shows a ‘G’ and does Google searches by default, and select ‘S’ for SearchMash instead.

StumbleUpon

Crowd

I noticed a lot of traffic after the Programmable Web listing. Some of it was directly from there but mostly from stumbleupon.com. Welcome to everyone who discovered SearchMash through that, and thanks to ChaseLightning and DaBug for the recommendation.

I hadn’t heard of StumbleUpon before, which probably shows my ignorance, but I’m very impressed by what I’ve learnt. I’ve added myself as petewarden, and I’ll be having some fun with it. On a business model note, it was very slick that the referring URL in my logs directed me to a customized page asking me if I wanted to create an ad campaign through StumbleUpon. If I was a commercial organization it would be very tempting, since they’ve already proved they can send traffic to you. From seeing that, I’d bet that SU has a profitable future ahead, and I’m happy for them since they also provide such a neat service for users.

You may also like… (aka the competition!)

Grin

ask.com and snap.com both offer preview images of some websites in their search results. Unlike SearchMash, these are pre-rendered thumbnails, so you can’t click on them, they only have them for the most popular sites, and they may be out of date.

Google Preview is a free Firefox plugin that provides similar functionality to ask and snap’s thumbnails, but pulling the images from thumbshots.com and alexa rather than a proprietary database.

Browster is an ad supported browser plugin, and the only other one that does give you a live preview of web pages. As a browser plugin, it does require an install, doesn’t do any search term checking, and is only available for the PC. The upside is that as a plugin, the integration is tighter than SearchMash.

For more mashups, ProgrammableWeb has a great directory, and recently gave SearchMash four stars.

Avoiding cloaking – big upgrade

Magnifyingglass

One of my main goals with SearchMash has been to save search time by skipping pages that don’t actually have the terms I want, despite what they tell Google. Typically, these are subscription sites that require registration and login to see the information Google’s indexed, and that’s normally too big a barrier for me.
To avoid those pages, SearchMash now checks the web pages it gets for the search terms, and tells you if it doesn’t find some of the terms.
I also upgraded the status display of results over the weekend, so you’ll see a clearer indication of any problems getting the page. I now draw a line through pages that couldn’t be fetched, and color any links that had errors as red.