Home > Design > blogs
When is good is a minimalist web app designed to help you schedule meetings. As the meeting organizer, you pick a set of times you'd like to meet and then email others asking for their availability. As users select times they're available the possible meeting time is paired down.
Screen grabs:
Starting a meeting is a simple and easy process:
This is what attendees see when they visit my meeting's URL:
Our first attendee selects their availability:
Now the interface is updated for all future attendees:
After four attendees have entered their meeting times, the available time has diminished to a very small portion of the original area. This is the time we should probably have our meeting:
A final user visits the meeting's url and enters their availability. Unfortunately, it doesn't match up with any other user's available time! Our meeting will never happen!
Things I like:
This application is best for what it doesn't do - it doesn't let you edit attendee comments, remove attendee's information, send emails to the group, or just about anything other than schedule a meeting. It takes scheduling and pares the task down to the bare minimum, leaving an intuitive and simple interface that feels incredibly clean and focused.
The application is easy to use and focuses on common simple metaphors like seeing dates and times displayed in a grid and highlighting them to select. The interface has so few elements that it's almost impossible to get lost or spend time searching for a feature that isn't there - if the interaction want isn't staring you in the face, it's probably not in this application.
The application also doesn't require any of the normal login/password stuff that belabor most Web 2.0 apps. As the meeting organizer you provide an email address where you're sent a URL for your meeting - that's it. You send that URL out to anyone and everyone who you're interested in having attend, and you're emailed periodic updates about their availability.
Things I don't like:
In general, this application requires too much interaction to get the information I want out of it. It's nice that everything is so simple, but this application is fundamentally about conveying information and not about manipulating it, so getting that information shouldn't require rolling and clicking.
More specifically, the application currently makes it difficult to sort availability by user. The interface only shows the combined availability of every attendee at once, so it's difficult to discern who has what problems with the meeting time. The application allows you to see individual availablility on roll over, but this makes it hard to compare user's schedules. Rather than giving you the information you need to answer the question "when else is good?", Whenisgood makes you start over again from square one.
If a user correctly chose every possible available time when setting up the meeting it seems like this use case might not be as prevalent, but it's still an issue - we all know some person who's schedule is always full, and this guy can easily make it look like no time works for your entire group (as in the case of "sandbagger!" in my above example.) If they're one of 50 invitees, it'd be nice to easily filter them out.
The "drag+select" feature also seems a little broken. In the main interface I can drag and select multiple rows and columns at once, but rolling back over a selected time doesn't unselect it - unselecting requires a re-click. For responders, dragging to select works across multiple columns but not multiple rows when the rows and columns aren't contiguous. This doesn't make it unusable, but it breaks the normal drag-to-select metaphor.
The comment area could also stand to be a little bigger. Giving only a single line with maybe 200 visible characters for the comment area nicely constrains the interface, but a user who wanted to give more feedback to the group would be impaired.
Lastly, I hate to say it, but this application really didn't need to be done in Flex. Flex has one big maturity problem: the loading screen. If this application were done in AJAX, users would have more or less the same interface without having to wait for a loading screen. This application doesn't require or use any of the rich features Flex provides so Flex really offers no advantages here - correct me if I'm wrong.
Final thoughts:
"When is good" is a great step in the right direction. By staying focused only on the important task at hand, it removes a lot of the unnecessary clutter. The application needs some minor tweaking and possibly an expanded view set, but otherwise it's refreshingly clean and clear.










Great analysis, I agree with every word. Try www.scheduleonce.com for an application that correctly addresses some of the pitfalls you mentioned.
Developer of WhenIsGood here. Thanks very much for the review. Some very interesting observations.
One quick thing to clarify. It may not be clear enough in the interface but there is indeed a way to deal with the 'sandbagger' situation without starting over. Just click the name of any participant to temporarily exclude them from the analysis. (I'll add an alert when viewing such results to make this clearer. And perhaps we need something to show which respondents are most flexible.)
Flex - point taken completely. The main driver originally was avoiding browser differences (like a lot of people, I've spent oh-too-many hours fixing a web application for IE only to find that it broke it in Firefox) but, sadly, discovered the thing still renders in subtly different ways across Windows/OSX/Linux anyway. May well switch the whole thing back to HTML at some point.
Josh, I have to admit I've only just spotted your app - my (limited) research only uncovered a couple of others (like doodle and timetomeet.info). Looks like you have a great utility there - lots of great features, but somehow not too cluttered. I guess that is the contradiction we face: people want all the functionality, but at the same they want it to stay super simple. All of the sophistication, none of the complexity. Quite a challenge.
Keith - thanks very much for stopping by. The "click to exclude" feature is great - maybe even just providing two lines of text at the bottom of your app on the main viewing screen ("roll over to see a user's availability; click a user's name to toggle their exclusion") or something like that would help. I actually didn't find even the roll-over feature until my second time using the app. :)
Flex is great - I love Flex, and it certainly does cut down on the development time. I just think it's important to think about when it shines and when it doesn't, and without making use of it's rich feature set you ask users to accept a loading screen so that you can build it faster. That's not in and of itself wrong, but it seems like a mature industry ready app shouldn't have a loading screen unless the features it requires force one on us - that's all.
Balancing features with simplicity is always tough. I think your approach of getting the core functionality out the door as quickly as possible is the right one though, and I look forward to seeing how this app matures. If you make any big improvements feel free to drop me a line at rj [dot] owen [at] effecitiveui [dot] com.
Great - I agree - congratulations.