Calendars for netbooks!!

Over the last weekend, I was bored and previous friday I had a talk my with nice mentor Michael on calendars for the netbooks. All that triggered me to spend some time during the weekend on this new stuff.  Basically I just hacked Evolution, to make it possible to write an external calendar application to fit well into a netbook space. Then I wrote some code to reuse that library and create this. Some screenshots below.

It has a very minimal UI. I have a working *lite*  calendar editor for creating/viewing meetings. I haven’t posted the code publicly yet. I would do that in the next week or so, once I get this to a better shape. Currently I can view, create meetings etc,  work/week/month/day views. Support for evo’s plugins/exchange calendars needs to be fixed.  The design approach is same as Anjal. Break Evolution’s calendar to reusable libraries. Don’t depend on any obsolete stuffs. No bonobo etc etc. Im planning to spend a night some time to commit of the patches that Evo needs before it is branched for 3.0. As of now, this is just 2500 lines of code. The UI is very new, and  It might change, once UI guys do a review. But the idea would remain the same.

This gets you Evolution’s calendar (CalDAV/Google, Exchange, Exchange MAPI(2007), webcal, etc etc) support,  very much usable on a netbook. Defaulted to a size 750×500, it can fit well to any good netbook available today. I’m hoping to spend good time on this, very soon, to make it in production quality to the  netbooks segment.

Oh, btw, I haven’t named it yet. Suggestions ? 😉

27 thoughts on “Calendars for netbooks!!”

  1. Very cool! YAY! For naming, is there a way to continue down the anjal naming theme. I like it!

  2. This is absolutely viewtiful. I haven’t yet thought of a nice name. Well, maybe “Smallendar”? 🙂

    But I still can’t use it, unless it’s completely separate from Evolution’s share of calendar usability bugs (ie: actually support drag and drop and click events correctly)

    Namely, would your application be affected by the following bugs?:

    http://bugzilla.gnome.org/show_bug.cgi?id=328633
    http://bugzilla.gnome.org/show_bug.cgi?id=516943

    If yes, I think you must fix them, no matter what. They completely destroy the experience of using a calendar when you have lots of fluctuating events.

    Also, while we’re on the topic of screen efficiency for netbook, http://bugzilla.gnome.org/show_bug.cgi?id=517598 may become increasingly relevant.

    Still in the netbook vein, this one may be relevant for performance/power consumption reasons:
    http://bugzilla.gnome.org/show_bug.cgi?id=578764

    A lightweight calendaring app that does all those things correctly is sorely needed on the gnome desktop (the only thing I’ve seen coming close is Sunbird. And it is like swatting flies with a nuclear warhead railgun).

  3. damn nice. i’ve been waiting for something like this since i’ve been introduced to ical at work on os x!
    maybe you could look into using libjana, which looks a bit nicer than evolution’s calendar widgets. i’m not sure how complete it is though.
    i’m really looking forward to this, great stuff, thanks!

  4. Hey,

    Very good job!!

    But why make it more complicated? As Mike said, just name it “Calendar”. Why would the user have to learn an extra vocabulary just to know it’s the calendar? Sure, feel free to use a codename, like “Dates” or, something abstract – and use that name for development and not to confuse it with other calendar apps. But for the end user, just keep it simple – Calendar. Especially since it’s for a netbook, simplicity is important: think about all the new Linux/Gnome users who just switched from Windows. They’re gonna be scared if they get buried under an avalanche of meaningless (for them) names for simple programs. Just like the “Eye of Gnome” is aliased to “Image Viewer”, do the same here. Have two names, one for dev and the pros, and “Calendar” for the average Joe.

    Furthermore, as much as i REALLY LIKE how your mockup/design looks – let’s be honest: look at screenshot #2. You can barely read the first three letters of the actual NAME of the event. The time and reminder icon are taking up most of the space. Really? Are you gonna copy this from all the old-school calendars out there? Why not be the leading power and invent something more user-friendly.

    For example, and the emphasis is on EXAMPLE: We’re obviously working here on limited space. Therefore, don’t waste the 10 or something pixels every time on the left side of a “day”, but make the time (e.g. 4:30pm) start almost totally on the left side (of course while still making it look good). Then, drop the “m”!! Just as Google did with their calendar, make it 4:30p or 4:30a, saving one character EVERY TIME!

    Then, drop the reminder icon. Let the user know in a different way that he has set a reminder for that particular event, don’t waste almost 1/3 of the whole line just for an icon that’s in almost every event!

    Then, allow events to use more than a line. If there is only one event on a particular day, why not let it use the complete “day-box” if it has a long name? Always try to fill up a complete day-box instead of cutting of events. Now if you HAVE to cut an event, let’s add this little eye-candy: fade the text out a little instead of just cutting it off like that.

    Also think about making e.g. the time light gray and leave the text/description black – would make it look cooler plus adding readability.

    Then, I just realized, in screenshot #1, look at the “Some test meeting” event. Don’t you think it would be better if the “5:50” would be white? Try to create an algorithm that makes the text color lighter – or darker – based on the background color.

    It’s always just these little things that add up and make software top or flop. You’re writing an application for netbooks, the latest fashion when it comes to functionality with limited resources – in form of processors, RAMs and HDDs, but also displays. We have to cope with the little screen, so let’s try to make the best out of it!

    Contact me if you need help with something. Thanks.

  5. That looks great!

    How about « cality » ? (a quality calendar)

    Actually, with Anjal and now this, it looks like the days of the Evolution UI are counted (and not only on netbooks) 😀

  6. Looks good… much better suited to netbook screens than standard Evolution.

    I do agree with Jakub’s comments though – entries in the month view are very crowded. I’d move the reminder icon into some kind of on-hover panel, where there’s room for a little extra info. As far as AM/PM indicators are concerned, I’d prefer 24-hr time anyway, which takes up a bit less space already.

  7. Wow, nice work! Well, that pretty much kills any inclination I had to write Dates 2 🙂 May I suggest ‘Better than Dates’ as a name? Seriously though, I like ‘Calendar’ as a name…

  8. Great job, just wondering if the Evolution merge the Bonono-free branch, would your app affected?

  9. That looks great! But why not adjust the default size to work on the 7″ Eee?

    I am fully aware that the netbooks have moved away from the original 800×480 resolution of the Eee 700 series, but your default size of 750×500 seems to be close enough to justify a adjustment.

    Tablets, MIDs, and smart phones are devices that might be using the lower 800×480 resolution. Nokia tablets such as N810, Eee 700 series, and the MID platforms are examples of such devices.

  10. I need this baby! This would be awesome for zeitgeist! Contact me as soon as you got time! As for a name call it something sexy or catchy “Mica” (Made in India Calendar)
    but since its so hot i would call it FOXY 😛

  11. Nice work. Hope that you get bored more often.

    It would be nice if you could make a video showing the difference between using stock-evolution on netbook and anjal+this-unnamed-calendar on netbook. It would be really cool similar to those videos comparing PS3 and Wii versions of a game. 🙂

  12. Jeff: I should be looking at those surely.

    Baze: I have seen a bit of jana widgets. But currently, my first goal is to get a Evoluion’s calendar to be a usable thing on Netbooks, then enhance it with various things, like Jana, Clutter, etc.

    Jacub/Simon: Very valid point. Thanks, I will look at those, once I have a base project up and running. Right that even the small icon space make huge difference on the netbook screen.

    Jones Lee: A bit yes, but I merge my code with Evo, and adjust them accordingly. It hardly should be a day/two effort to get it up with Bonobo-less Evo. Btw, I dont depend on the bonobo interface, instead make use of the widgets directly, so I should be harly affected by it.

    Martin: I just default to 750×500, but It can be shrunk even smaller, the look and feel remains the same.

    John Doe, Im fully aware of Dates. But its good, but lacks quite a lot things, and duplicates a bit of Evolution’s calendar. One of may main goal is to have as less dupes as possible and strive all the energy towards one goal. IMHO Its very important for the success for GNOME.

    Eric: Those colors are user chosen colors. But I can give the Tango! palette for the user to choose. Sure.

    All: Thanks a lot for the encouragement and feedback. I would get back here with more updates. Thanks again everyone.

  13. I also would like to see this working for the maemo platform (Nokia Internet Tablet), which has a screen resolution of 800×480.

  14. Hello,

    I had news about this by the pimlico mailing list.

    Great job thanks for doing it ! That’s the sort of calendar many people including myself have been awaiting for. I hope to see it in my distribution as soon as you will have published it.

  15. Wow this looks supercool. Right now I use pimlico-dates as my gnome desktop calender, but this project also looks nice. I hope this is a small step towards splitting evolution up in small applications.

    BTW: I think that some of Jakubs ideas would help the original evolution-calendar as well.

  16. Srini,
    Great work!

    Observations:
    1. Calendar as well as journal and notes should be part of the same program or at least be interconnected (i.e. task->email contact->appointment email->task journal->e-mail)

    2. FULL-SCREEN button is a MUST!!! for text entry and calendar/task viewing

    3. Maemo port is a MUST!!!

Leave a Reply

Your email address will not be published. Required fields are marked *