
Accepting the "I could do that in a weekend" challenge - jonathanberger
http://www.thetimezoneconverter.com/weekend-challenge.html
======
dkersten
Apparently _9:31 AM_ in Dublin time is _NaN:aN PM_ in Dubai time...

Besides that, its a nice app.

EDIT: Since I got downvoted for this, let me rephrase in terms of a bug
report: My local time is Dublin, Ireland (so UTC) and I entered _9:30 AM_ as
the local time. Then I changed _Greenwich_ to _Dubai_. The _updating_ was
pretty slow, so before it completed, I changed the local time to _9:31_ and
the output I got was _NaN:aN PM_. I'm able to reproduce it by following the
same steps (though the actual local time entered doesn't seem to matter - just
that its changed before the "updating..." text disappears).

~~~
jonathanberger
I don't agree with the downvote - thanks for the bug report. I saw this a
while back and was having trouble reproducing so this is helpful. I'll look
into it.

------
fhub
I suggest you add more country names to your incremental search e.g. England,
Canada, Australia. If the country has more than one timezone, list them.

Worth logging all the things people type that get zero auto-completions.

Otherwise spot on.

~~~
jonathanberger
Thanks. As a shortcut I left out countries with multiple timezones, but as you
say they should be in there still just multiple times and delineated somehow.

Nothing gets by the HN crowd. :)

~~~
wallflower
Nice work. For visual dressing up, show the wikimedia timezone map and
visually highlight the two zones.

------
tjogin
Great, but if remaking Basecamp or StackOverflow also just takes a weekend,
you should have been able to do this in about an hour.

~~~
cookiecaper
Yeah, this isn't really comparable. This is a one-off utility. It performs one
function. StackOverflow and Basecamp are full-fledged applications that
incorporate thousands of functions.

------
whalesalad
I don't mean to jack the thread here, but I did something similar over the
weekend that was a lot of fun. I cloned and then built upon a local system
here in Honolulu that lets you see when buses are coming to a stop. I
originally wanted to build an Android app but realized that I could do the
same thing faster with my current skill set (web apps) thanks to some of the
Geolocation features of HTML5. Plus, both me and my girlfriend can use it
(she's on an iphone)!

Here it is - <http://thebus.ws/about/>

For those not familiar with Hawaii... try some street names like King, Queen,
Bishop, Kapiolani. If you're on island the locate button will find your
location thru browser api's and then load stops near you. Stops right by my
place would be 2088, 306, and 405 (you can search for those numbers).

 __BTW, I really like what you did :) It's very simple and looks pretty good
to boot. I have a client in Sweden right now, so this comes in handy!

------
voidpointer
Very nice. Here's a feature suggestion: allow me to specify the two locations
in the URL so I can create bookmarks to pairs that I use all the time (e.g.
Hamburg/NewYork, Hamburg/SanFrancisco...).

~~~
patio11
Psst: this can help you for SEO if you do it right. (Though you'd have to add
a bit of content/links to have a hope of getting all of them indexed.)

~~~
jonathanberger
Interesting ideas - I was trying to think about creative but still useful SEO
techniques... something Yelp-like. This might be it.

------
vishaldpatel
I'd add a date to the timezone converter. For example - if it is 10pm in
Toronto on the 1st, then it is 8am somewhere in India on the 2nd.

~~~
jonathanberger
Thanks for the suggestion. It's true omitting dates can affect some
conversions. I left them out for speed/simplicity but might have be the wrong
tradeoff.

~~~
Huppie
I was about to suggest adding a 'previous/next day' somewhere but I see you
already did that :)

Nicely fixed.

------
duhprey
After the game jam (An event where everyone tries make a game in one weekend,
hence the correlation to topic) wrap up, one of the guys there said something
very interesting: they thought it was such a good idea to pound on a concept
for the weekend to see if it was viable, they were going to do it for every
idea including those in the business that weren't game related (not sure if
that meant software or what...)

So while I see the simplifying assumption that says "I could do that in one
weekend" and that it's really not that simple. There's the other side of the
coin. Maybe some ideas don't need to be so complicated. We evolved our game
idea three times that weekend as we completed something we saw what was boring
or was failing and modified it.

In both our case and the guy above, we aren't planning to continue the game. I
know I tend to sit and idle on ideas for months or years at a time. This is a
terrible thing to do. Why not, for the cost of one weekend decide to throw it
in the trash and never think of it again. One weekend is _way_ less than
months and months of planning and task lists and bug trackers and code
repositories... etc etc.

Edit: In case anyone is interested you can find our game on
<http://globalgamejam.com> called "Maid of Dishonor" or on our site,
<http://tosos.com> under the "Unity Games" page.

------
yatsyk
Nice tool. Bookmarked.

Small feature request: It would be nice to enter IATA airport code instead of
city name.

~~~
jonathanberger
Ah, another input method I hadn't thought of. Thanks, will consider.

------
waxpancake
This is the best timezone converter I've ever seen. Nice work.

Though really, I'm surprised Google hasn't added timezone conversion to their
various measurement converters. I really just want a single text field that
takes input in the format "[time/date] in [location/timezone]." For example,
"1:30am PST in UTC" or "Tuesday 5pm in Paris."

~~~
yannis
Google's Closure javascript library has a lot of timezone related routines.
Worth taking a look.

------
jazzychad
This is awesome. One suggestion/request? If I enter the time in 24hr mode, can
it please be left that way? Right now it converts it to am/pm... I don't know
why, but my brain only functions in 24hr mode and seeing 14:45 change to 2:45
made me think there was a bug before I noticed the PM next to it.

Otherwise this is immensely useful!

I think "smart parsing textboxes" are the best things ever. I really like the
one on letsfreckle.com for time interval entry. Letting users just type in a
format that is comfortable to them is so nice.

~~~
jonathanberger
Third request here for different 24h behavior. I remember hearing the advice
"listen to your users" somewhere... so I'll prioritize that. Thanks.

~~~
eru
I was going to suggest something along those lines after reading your post.
But I was pleasantly surprised that your application already handles 24hr
times gracefully, when I checked it.

------
megamark16
Everyone should go to google and search for "time zone converter", than go to
the bottom and choose "Add a result", and paste in the url for this page :-)
It couldn't hurt.

~~~
jonathanberger
Haha - I wouldn't complain... I've got a few ideas around SEO and a few more
popped up here, so I'll see what I can do to make the site easy to find with
Google again later on.

------
augustl
Wolfram Alpha has an _awesome_ time zone converter,

<http://www.wolframalpha.com/input/?i=10+am+EST>

~~~
delackner
Is that a joke? I tried about 5 different ways of getting it to answer what
the current time in _my_ time zone is in another timezone, and it failed for
all variations.

------
alanthonyc
It works correctly. It works as expected. I think it's great.

A shorter domain name would have been nice though.

Also - does it automatically take daylight savings time into account?

~~~
jonathanberger
It does. For example, right now Australian times properly incorporate DST.

The domain name was optimized for Google queries where it's important to have
exact search terms in the name itself. Agreed that it's annoyingly long but I
expect people to find it through Google with something close to that query.

~~~
pgr
Wow, that's great - how did you go about getting daylight saving time to work
properly?

------
10ren
As a programmer, I find it very satisfying - you type in the name, it auto-
completes; you change the time on either side, and it maintains the relation.
Nice :-) And love the clean simplicity - it's like the google of timezone
converters. :-)

\- But it wasn't obvious that it would autocomplete - nice to have _a_ drop-
down even before typing, just to show the user. Or maybe just a couple of
e.gs. (like google calendar's "breakfast at tiffany's").

\- Also not obvious that you can change both times (I mean, it _should_ work
that way, but software _never_ does, apart from languages - and I think that
it wouldn't even occur to ordinary folk that it might).

Might be worth doing some user-testing (where you watch them, like "Step 2.
Validate" in <http://news.ycombinator.com/item?id=1132980>).

You can probably get some adwords revenue. And without spoiling it, by doing
what the chatoulette guy said he did - just 4 words at the bottom.

~~~
jonathanberger
Great ideas. I've been collecting electronic feedback like this from friends,
but agreed that some "over the shoulder" user testing could help. Hearing
these "x was not obvious" from you is helpful as I'm too deep in it now for
any of these to occur anymore.

A big gripe (I didn't mention in the blog) of the other sites were massive
amounts of confusing AdSense, so I was almost thinking a single cleanly
branded "sponsor" to pay for the server costs if it gets enough traffic.

------
there
a quick timezone converter is on your command line

    
    
        $> env TZ=US/Eastern date
        Thu Feb 18 11:15:01 EST 2010
    
        $> env TZ=GMT date
        Thu Feb 18 16:15:41 GMT 2010

------
bigiain
Another feature request...

Can you give it some "add another city" ability? I've had much more grief
trying to do the mental arithmetic scheduling phone conferences involving
people in Sydney, London, and Dallas than I've ever had working out just one
other city in my head...

------
ComSubVie
That's great! Your are absolutely correct, most sites seem to originate in
pre-2000.

Just two additional ideas:

For the problem you specified I did find a interface which gives you a day
view of both destinations with the corresponding times on both sides, and
colored backgrounds (green for good meeting times, yellow for too early or too
late or midday and red for night) so that you can easily find out an optimal
meeting time (I guess it was possible to add more timezones to it), however I
cannot remember the site.

For the interface you created I guess it would be nice to add an analog clock
over the input, which can be changed via dragging the hands to the specified
time and the other clock updates it's time in real-time.

~~~
jonathanberger
Thanks, appreciate the compliment and ideas. I do remembering coming across
that other site too.

I've been looking for a fun graphic or animation to jazz up the UI (I believe
in making products "fun") so maybe the analog clock idea is it.

~~~
anthonyb
It's here: <http://www.timeanddate.com/worldclock/meeting.html>

Very useful app, when you have people in several timezones.

------
aw3c2
It does not seem to do anything without Javascript and times are always
displayed in the (to me) awkward AM/PM format instead of 24 hour. The first is
probably of no matter to you but how about a toggle button for the latter?

~~~
jonathanberger
I do examine the browser's accept-language preferences and attempt to
correctly do locale appropriate time formats. I've considered a toggle but am
trying to keep the UI really simple. Are you from outside the US, and if so
could you tell me your browser accept-lang settings (handy tool below)?
<http://www.cs.tut.fi/cgi-bin/run/~jkorpela/lang.cgi>

~~~
aw3c2
I am in Germany but I use "Accept-Language: en-US,en;q=0.9". :(

------
scscsc
While I half agree with what you did, I think you're a step away from
perfectness (see bellow) :)

I actually had the exact same problem and I was recently speaking to a friend
from google and asked him to implement this as part of their search engine
(i.e. just like the calculator, but for time zones) -- he didn't see the need
for such a thing.

Here is my use case which doesn't work: conference deadlines. Please tell me
what this:

Thursday, February 4, 2010, 11:59pm Eastern Standard Time (GMT −5:00)

translates to in my local time. Note that entering the date in your app does
nothing, even if you split EST from the rest.

~~~
thenduks
Why doesn't this app work for you in that scenario?

Say you're in PST: put on the right hand side 11:59pm and EST --> 8:59pm that
same day.

Say you're in, oh I don't know, Nagoya: same thing on the right hand side -->
1:59pm the next day (the 5th)

------
Pahalial
First reactions: tab field-switching and/or JS execution order. Time is on
top, so I'll input that first, then want to set the TZ. Tab goes
time1->time2->tz1->tz2, which is unintuitive to me at least. In addition,
filling in the dominant origin field first (time) is counter-productive as
changing the TZ afterwards then auto-modifies the origin time - clearly not as
I intended. This absolutely makes sense from a programmatic reload-free page
outlook upon reflection, but not at all going purely on intuitive UI use.

~~~
jonathanberger
Thanks for giving it a close look. I debated these points and came up with
arguments on both sides of how updating should work.

I agree more with your tab ordering point. As far as JS execution (deciding
which time to update when city changes) I saw arguments both ways and in the
end decided to copy the behavior of a unit conversion dashboard widget from
Apple. Not a good reason but it served as my starting point.

------
liquidben
FYI: Google does have a limited 'command line' tool for time zone differences.
If you search for "London time", it will return the current time in London UK
in bold, along with London, Ontario and London, Arkansas.

This obviously is only for the current time, and you'll find that it doesn't
work for everywhere. Also I've encountered occasional 'outages' where the time
results for reliable locations aren't posted in your search results. I guess
the applet gets disengaged occasionally due to back-end business.

------
kalid
Really cool! Minor nits:

* Multiple equivalent GMTs (GMT, GMT (Greenwich Mean Time), GMT + 0)...

* GMT+n would ideally be in numeric order [but alpha sort doesn't make this easy, just something to think about]

* Include country name for cities: "Seattle (USA)" ... just gives you that warm fuzzy that you're in the right country.

* Instead of "next day" it might be nice to say "next morning/afternoon/evening/night" or whatever it happens to be. Less mental parsing ("12:30am next day... means really early in the morning right?")

Anyway, great job!

~~~
jonathanberger
Thanks - I need an "accept all" button for these suggestions. On the multiple
equivalents though, that was intentional to handle multiple ways people might
want to type it in. Perhaps it's confusingly redundant.

------
thepsi
Nice work - bookmarked. Minor things:

* support for alternate names (e.g. The Hague vs. Den Haag)

* some way of knowing when a city _wasn't_ found - right now if I type the name of an unrecognised place then it isn't clear that the time displayed is no longer valid

* optional vertical layout for phones, and (to go with that) offline support? Perhaps not quite so minor, I'll admit ;)

Oh, and re. the "programmer-friendly" comment in your article - I'm one and I
don't find those sites at all friendly...

~~~
tim_church
> * some way of knowing when a city wasn't found - right now if I type the
> name of an unrecognised place then it isn't clear that the time displayed is
> no longer valid

I second this. I tried to type in Zurich at first but the time didn't change
and there was no error message either.

Great job though. Very useful tool. Bookmarked.

------
gus_massa
There is a problem with Argentina. For example see the hour at the capital
city "Buenos Aires" and compare it with some of the local newspapers
(<http://www.clarin.com.ar> or <http://www.lanacion.com.ar>).

I think that the problem is that we skipped the "Daylight saving time" this
year (2009-2010), so we are at GMT-03:00.

------
asnyder
Even if you're not using PHP I highly recommend reading Derick Rethans's
slides on Date and Time. There's lots of good information there, especially
about all the various quirks with timezones.
<http://derickrethans.nl/talks/time-zendcon9.pdf>, you may even be able to
find a video of him presenting this.

~~~
jonathanberger
Started to skim it... fascinating. Very cool.

------
sumeeta
Good job, this is really nice.

Like you mentioned in your announcement, this tool seems like it's primarily
useful for (important) business. Is there anything you can do that would make
me feel assured that the conversion is accurate? I'm 90% sure that everything
is perfect, but that's not really good enough. I'd be much more inclined to
use the tool if I knew I could trust it.

------
absolutez
There's also a nifty iPhone App for that: GlobeTrotter

[http://itunes.apple.com/app/globetrotter-timezone-
calculator...](http://itunes.apple.com/app/globetrotter-timezone-
calculator/id355140639)

Using it all the time because I've had similar problems. And it allows to
calculate the differences for more than 2 cities.

------
nopal
I was looking for a site this simple just yesterday. Thanks for building it!

One suggestion would be to have the colon automatically inserted at the third
position from the right. I'd like to be able to type 930 or 1425 without
having to take my hand off of the number pad.

~~~
neeleshs
Or just be able to type 930pm/1035am without worrying about the colon

~~~
jonathanberger
Hm, interesting requests. I had other similar requests via e-mail for auto-
colon-insertion so might prioritize this.

------
cookiecaper
Have you looked at the library date.js? It might be helpful for you here. It
seems unmaintained now but is still useful sometimes; not sure if it will help
in this specific case, but might be worth a look.

~~~
jonathanberger
GMTA - already using it with a few tweaks.

------
smiler
I couldn't find any of the major Swiss cities in your city list. Any reason?

~~~
jonathanberger
I used GeoNames to make sure all countries are in there. Cities, I sorted by
population and took the top 1000.

Looking more closely now... Zurich at least should have made the cutoff. I'll
take a look. Thanks.

------
andrewcooke
since it starts with the current time i was surprised that it does not appear
to update. it would be nice if the clock worked "like a real clock", changing
to reflect the current time. of course, that's not what you want _if_ someone
enters a time, so you'd need to track whether that has happened (and perhaps
provide some subtle feedback to indicate that it's not "ticking" - the best
thing i can think of is that you flash the ":" between numbers if it's running
as a clock, and leave it steady if the time has been altered).

------
Psyonic
Nicely done. I've needed this countless times. This looks like it'd be a
perfect fit for the mac dashboard... do you know if something like this
exists, or how hard it'd be to make?

------
synnik
Nice.

But once again, building a widget in a weekend is very different than building
a full product, in particular if you include an actual business model or
community surrounding that product.

------
chrischen
This made me want want to release my syllable counter on it's own domain
because it beats the top google results. Only problem is whether or not
there's any utility to it.

~~~
liamkf
I'd find it fun to play with (good for settling haiku disputes), but even
after a few specific google searches I couldn't find it... maybe a domain
would help?

------
fadr
Exactly what I was always looking for. Have often thought about doing
something like this myself. So simple and so useful. Thanks!

But ... tables? Really? Just kidding. Whatever works ^-^

------
rimantas
a) AM/PM vs. 24 hours clock. I'd suggest switching to 24 hours mode if input
hours are > 12\. There should also be a toggle for this. Remembering the
setting (and possibly timezones) would be great.

b) Dates. These are redundant, but they can be shown if different in chosen TZ
(or maybe just show something along the lines "already the next day/still
yesterday" :)

~~~
jonathanberger
I like (a). I've been trying to avoid a toggle to keep things simple but
noticing input behavior and switching automatically + storing in a cookie
would work.

I need to update the blog screenshot, but (b) is incorporated almost exactly
as you were thinking (see the light gray "next day" / "previous day" text).

------
jonathanberger
Thanks in advance for any feedback on the site.

~~~
chrischen
Can you make this a dashboard widget?

~~~
jonathanberger
Not a bad idea. It would be handy to have it a keypress away but the benefits
from my point of view (the developer's) are almost too great in keeping it a
webpage: easier to update, ability to add ads, wider audience, etc.

~~~
chrischen
Frankly making it a webpage is a pretty big inconvenience to me (and I'm sure
many others too) because my bookmarks bar is pretty full, as well as my
bookmarks. This just seems like a natural dashboard widget. Doesn't windows 7
support widgets too now?

------
petewailes
Make it obvious you can type place names. People are stupid. They'll expect a
dropdown, not typing.

~~~
jonathanberger
Second time this was mentioned so I'll definitely give it some thought.

~~~
delackner
Hrm... Some text right next to the field perhaps?

Alternately, simply showing a world map graphic would work quite simply. There
aren't that many time zones.

------
betageek
very nice indeed, a lot better than the previous entries, well done for a
taking a pretty standard idea and making a much more usable version, hopefully
you can start a trend!

I'd agree that you definitely need to take into account date/time adjustments
like British Summer Time etc.

------
patio11
My entire family thanks you for this. Mostly me at the moment, but the rest of
them eventually.

------
franck
Very nice web application, I'm going to use this a lot.

