The circle is complete

SensibleUnits.com can now be used as a traditional unit converter, albeit with a much simpler interface than most available unit conversion utilities.

You will notice the addition of two tabs to the top of the results box, which enable a choice between results expressed in terms of "objects" or "units". The (default) former option offers the site's normal behaviour, while the latter converts the input to scientific units. This was a logical step following on from the previous big change, which allowed objects to be used as inputs. It also represents the final major development of the site that I plan to make.

The mental image of the site's ultimate incarnation that I had while developing the initial concept is remarkably similar to its current state. There will no doubt be further tweaks and new units added, but in terms of the most basic functionality I now consider SensibleUnits.com to be pretty much complete.

I've had great fun over the past three weeks, watching the site take off, communicating with lots of interesting people and generally being amazed at the amount of enthusiasm that exists for this kind of thing. The site has been featured on Lifehacker, Webware, the front page of del.icio.us and hundreds of other blogs and message boards. Over 1000 people have bookmarked it on del.icio.us, and there have been 150000 visits so far.

I intend to keep running the site for as long as the ad revenue allows, so thank you to everyone who has visited, made suggestions or simply expressed support. I can only hope that future projects progress in a similar fashion. :-)

New dimensions: data and volume

SensibleUnits.com can now convert units of volume, such as litres, tablespoons, barrels, cups and cubic miles.

This is fortunate, because if one more person had asked me why it didn't convert litres, I may have gone insane.

Additionally, the site now understands units of data, like gigabytes or megabits. It converts them to things like DVDs, MP3s, Bibles and libraries of congress. Thanks to all the Americans who wrote in to make sure I included that last one.

Other recent changes:

  • A few larger-scale distances (e.g. 1 parsec) have been added.
  • When no results are given, a suggestion box now appears.
  • The auto-suggest list disappears and results are immediately calculated when any unit symbol is entered (e.g. "m" or "kg").

A excellent suggestion

SensibleUnits.com now features a very comprehensive auto-suggest feature, which makes specifying a unit even easier.

As soon as you start typing a unit, a list will pop up showing all matching results. You can then select something from the list or continue typing to narrow it down further.

An exciting additional feature of the list is that it will suggest units and objects that match what you type. This massively enhances the object input capability I hinted at in the previous post, as you no longer need to guess the full (and probably plural) expression. So for example, if you type "cat", the list will suggest "average domestic cats" as a unit. Comparing countries or planets is now much easier too.

Developing the auto-suggest feature was a time-consuming challenge, but now that it's out of the way I should be able to add more units to the site relatively rapidly.

Other minor changes:

  • Most inputs will give a maximum of 4 results, rather than 3.
  • A new "reload" button lets you get different output units when they're available.
  • Values that previously produced no results will convert to less similar units in order to increase the chances of giving an output.
  • Units can now be case sensitive.

How many Luxembourgs is Wales?

Another new dimension - area - has been added to SensibleUnits.com.

This means you can now put in quantities of hectares or square miles and get answers in terms of football pitches, postage stamps and, of course, Belgiums. I'm reliably informed that there are journalists dying for this functionality.

A nifty new feature to go along with this is that you may now use objects as an input (e.g. "8 cows"). This allows you to express one object (or certain countries) in terms of another, and therefore answer the crucial question: just how many Luxembourgs is Wales anyway?

All input objects have to be expressed in plural right now (except ones that are difficult to pluralise, like Wales), but I'll be working to make it more user-friendly. In the meantime, try typing "2 belgiums", "8 cows" or "1 wales".

Other minor additions:

  • Exponential notation can be used for input numbers, e.g. "4e8 kg".
  • Very large or small numbers are shown in standard form under the input box, e.g. "1.2 x 10-8 feet".
  • Decimal values may be entered with no leading zero, e.g. ".03 sq mi".

New dimension: mass

SensibleUnits.com can now convert units of mass, in addition to length.

There are some fun new Sensible units: domestic cats, cans of baked beans, Harry Potter books, the Titanic, and many more.

I've also added a few more units of length as per various requests.

Wow

The number of visitors to SensibleUnits.com has increased significantly over the past 48 hours.

Thanks to everyone who took the time to send feedback, and for all the kind words.

The most common request has been for the site to be able to convert dimensions other than distance. This is something I was eager to do anyway, so it's good to see there's demand for it.

In order to add new dimensions the site's code needs to be modified fairly significantly, but hopefully this won't take too long. In the meantime, suggestions for "sensible" units of mass, area and volume are welcome!

Finally, I hope the person who wanted to know how many squirrel testicles were in an inch finds what they're looking for.

More sense

The list of "sensible" units that SensibleUnits.com will convert to has, with help from my endearingly geek-tolerant girlfriend, been considerably expanded.

Any input with a magnitude equivalent to a distance between 0.1 mm and 10 million km will now produce at least one result, and there are even some values outside that range that will work too.

There may be some debate over whether "five month old human fetuses end to end" can really be counted as a sensible unit, or if such a unit is an ethical basis of measurement, but I won't change anything until the complaints and abuse begin to hamper the efficiency of my work.

A simpler interface

SensibleUnits.com can now read any number and unit that you type into the input box. So you can just type "200 m" and results will appear. This is exciting because:

  • the drop-down list is no longer necessary.
  • lots more input units (an infinite amount, in fact) can be added without cluttering the interface.
  • users will save valuable milliseconds now they don't have to switch between keyboard and mouse to get a result.
More exciting developments coming soon.

Introducing SensibleUnits.com

Today I'm launching my first project: SensibleUnits.com.

The purpose of SensibleUnits.com is to make units of measurement understandable.

It takes a quantity with a scientific unit and turns it into several quantities with sensible units, like elephants, buses and Great Walls of China.

It is based on the principle that users should be allowed to be lazy. This means:

  • having a single, large, friendly input box and no buttons, tickboxes or (heaven forbid!) drop-down lists.
  • giving answers while the user is typing, without loading new files.
  • not expecting the user to say what output units they want, which spoils the fun anyway.
All feedback is welcome.

Cutting the ribbon

Hi, my name is Arf. This blog isn't really about me, though.

Which is lucky, because I'm quite dull.

Online Odyssey is, rather, the hub of a web development journey. Its purpose is two-fold:

  • To follow the development of any websites I create.
  • To share things I learn in all areas of web development, for the benefit of other developing developers (so to speak).
That's pretty much all there is to it. You can contact me using the links at the bottom of the right hand column. Wipe your feet before you come in, don't break anything and enjoy your stay!