2007-07-24
15:23
Cult Pens PenFinder
The project I’ve been working on for quite a while now at work has just been completed, and it’s now live for you to play with…
PenFinder lets you find pens and other products by a whole lot of different methods. You could find, for example(s)…
- All ballpoints
- All refillable fountain pens
- All rollerballs with red ink
- All markers available with both green and orange ink
- The cheapest pen with a big grip
- All pens with triangular grips suitable for children
- All products suitable for calligraphy
- All pens with brush tips
…or pretty much any other combination you fancy.
The Code
I won’t go into much detail, because it would probably be tedious for you, but PenFinder is full of Web 2.0 stuff, using AJAX to keep the page updated without all that tedious time spent submitting the page and waiting for it to come back with your results. For users, it just means that everything feels a bit more responsive than such a page otherwise would.
Usually, though, that brings one big problem with it – the URL never changes, so you can’t bookmark the page, and people couldn’t email a link to the search results to a friend. Since that’s how a lot of our customers get to us, that would be a Bad Thing. So, I used a neat little trick I found. Each time you update the list of options you’ve picked, or change the sort order, the code doesn’t actually regenerate the list – it just modifies the bit after the hash symbol on the URL. Another bit of code is running every second, and it finds the changed URL, and uses that information to rebuild the list of products for you.
The upshot of that, though, is that if someone sends you a link to the page for the sort of pens they think you’d be interested in, you can click the link. The page will first load up just as if nothing had been selected, but within a second, it will notice the URL, update the selected options, and rebuild the product list. You’ll see it happen if you watch carefully as you go to any of the links above – the boxes all load blank, with no list of pens, but after a second it all changes.
There are still a few things we know we need to improve, but it’s pretty usable as it is – give it a go, and have fun.
Actually, according to Wikipedia, a rollerball is a pen with either liquid or gel ink. I think that means one of my articles over here on PigPog is wrong – so I’ll have to correct that one. All gel pens are rollerballs, but all rollerballs are not gel pens.
Pilot and Uni-ball both certainly call their gel pens “gel rollerballs”.
If you search for “Rollerball” only, you get many gel pens as well. You might want to change the descriptions/keywords to liquid ink vs. gel ink as appropriate. Probably confusion for historical reasons, with gel pens originally being seen as a special case of rollerballs, and only now becoming a species of their own?
Looks nice, works well. I didn’t spot the “sort by price option until I directly clicked your “The cheapest pen with a big grip” link above, but I know it’s there now. Very useful! (thinks) there goes random browsing…
OK, but you might want to add an extra item in PenFinder to distinguish between liquid and gel inks.
PenFinder has a category for “waterproof” inks, but not for “permanent” inks.
Is there a difference? “Waterproof” means what it says, but is maybe most appropriate for paper. I tend to think of “permanent” as meaning able to mark reliably on non-porous substrates such as plastics and glass without being too easy to remove. I suppose, though, it should include laundry markers for porous textiles as well.
If you search PenFinder for “Waterproof inks” only, it finds the Pilot BegreeN PermaBall pen, but not the “non-BegreeN” version. Needs a keyword updated somewhere?
Permanent is kind of a tricky term – it means different things to different people. For some people, it’s just a matter of not fading with time. Some people expect anything permanent to withstand water, and other people would equate it with ‘fraud-resistance’, and expect it to hold up well against bleaching.
If you just want it to last a long time without fading, for example, pencil is about as permanent as you can get. Someone with an eraser can get rid of it in a few seconds, though. I suspect whatever definition of permanent we went with, at least half the people using PenFinder would think we’d got it completely wrong!
The non-BegreeN Permaball probably should have that waterproof keyword, though – we’ll catch that one in the next update – thanks for pointing it out.
The whole issue of permanence could be the subject of another article – maybe a future one for Pencyclopedia, but there’s a bit of a queue.