Archive for category Google Summer of Code
Getting Things GNOME! — GSoC review (#3)
Posted by Luca Invernizzi in Getting Thing GNOME!, Google Summer of Code on June 10, 2010
I’m pleased to announce the first two new backends for “Getting Things Gnome!”: a twitter and an identi.ca backend.
Those are import backends, meaning that your dents/tweets will appear in your GTG tasks. In particular, the message will be parsed like this:
“this will be the task title, this will be the task description #sometag @alsoatag”.
There is no support for start/due dates yet.
Obviously you will not want every dent/tweet in your GTG tasks, so you can choose to just import direct messages/@ replies/your own messages, and select only messages with one or more tags matching the a set of tags.
Screenshots time!
Adding a backend:
Configuring it:
If you type your password incorrectly, you will be notified:
If the connection cannot be established, you will be notified in a similar way only if network-manager reports that at least one of your network devices is connected (otherwise, GTG assumes you know you’re offline ). Passwords are stored in the gnome-keyring.
Apart from the new backends, this week has seen improvements in the backend framework and fixes, as always.
Next week will be quite busy for me, as the deadline for my thesis is approaching. I’m planning to work on read/write backend support. I’m currently developing a directory-based backend (each file in the directory is a task) for testing purposes, but I’d like to start working on a Tomboy backend: notes in Tomboy having a particular tag (like @importfromtomboy) will be automatically imported in GTG.
Getting Things GNOME! — GSoC review (#2)
Posted by Luca Invernizzi in Getting Thing GNOME!, Google Summer of Code on June 4, 2010
Aloha again, planet Gnome!
This has been a nice week for my Google Summer of Code project on Getting Things GNOME, featuring:
- A great speedup (via the refactoring of how the file containing all the tasks is handled): the time for adding 1000 tasks in GTG has been reduced from 30 to 5 seconds!
- A new testing class, which helped me find-n-fix a few bugs (ehi! testing works!)
- The first request to merge of part of my code (~3600 lines). I have to thank my mentor Lionel Dricot, who has found the time to go through it.
- A new twitter backend. It still misses the UI to configure the username and password, but the basic functionality is there. Currently, it adds to GTG any direct message matching a set of chosen tags (e.g., #todo).
I’m still working on twitter authentication. I’m currently doing it via the userid/password combo, but the correct way to go should be Oauth. Unfortunately, python-twitter does not support this. I’ve found a few libraries around the web, but none seem to work so far. Any hint will be welcome.
Next week I’m planning to finish the twitter backend, expanding the framework as I go. A nice thing is that, thanks to the framework, the twitter backend (which is all a developer should write to add a new backend) is less than 100 lines long.
Getting Things GNOME! — GSoC review (#1)
Posted by Luca Invernizzi in Getting Thing GNOME!, Google Summer of Code on May 28, 2010
news dispatch:
I’ve just been informed that a Getting Things GNOME! plugin is being added to Kupfer! That’s great.
The real post:
For the Google Summer of Code, the time to start coding has officially arrived.
My work is about adding yet another feature to the personal organizer software Getting Things GNOME!, that will let you synchronize your tasks in a variety of online and offline backends (Remember the milk, Launchpad...). Details are here.
This week, I’ve been working in:
- how backends are enabled and disabled
- a signaling framework for backends changes
- a nice ui for managing backends (which took most of the time)
Here’s how you add a backend:
And here’s how you configure it (yes, a lot of things are missing):
I think the UI is coming up pretty well: you can see which tags are associated with each backend and edit them, rename the backend, add and delete any number of backends...
Next week, I’ll focus on hunting bugs down and writing the ui for a series of backends parameters (filenames, authentication via web pages, passwords stored in the gnome-keyring).
The UI needs a lot of makup still (images, alignments etc..): they will come in due time ^_^
Getting Things GNOME! — GSoC review (#0)
Posted by Luca Invernizzi in Getting Thing GNOME!, Google Summer of Code on May 23, 2010
Hello again, dear Planet!
This one has been a busy week in both GTG mailing list(s) and my little branch. I have one thing I would like your opinion on, which is clearly marked, so you can skip some parts.
You may not know that in the last month GTG lied on the surgeon table to undergo a huge refactoring, mostly by Lionel Dricot. That made GTG faster and asynchronous in task loading. Just for a measure of the improvements, we’ve lowered the time taken to load 1000 tasks from 40 to less than 30 seconds, and we haven’t even started profiling yet. The feels way faster than before, and we have lowered our startup time. We have also gained a strong division between our core and our UI, which makes it possible to write new UIs for GTG (that what Karlo Jez is doing for his GSoc, writing a GTG web service). KDE UI, anyone?
Last Wednesday has been declared “Getting Bugs Done” day, so we worked in fixing all the regressions introduced in the trunk after the refactoring. We have now a trunk that can be used normally (if you don’t mind the occasional glitch). A few minor bugs are still unresolved, but the only “big” bug remaining is the breakage of the plugin API.
Anyway, my branch, which is about having the support for multiple backends (Remember the milk, CouchDb (ubuntuone), lauchpad, zeitgeist, twitter...), has seen a complete refactoring of backends loading and storing, with the addition of a backend Factory. We can support multiple instances of the same backend, so right now you can save/load your tasks on multiple files at the same time. You can “attach” to each backend some tags, and the backend will sync only those (say, you want on your work computer only the tasks marked @work).
I’ve also worked on laying out a well documented base class that each new backend should derive, in order to make the creation of new backends easier.
The more eye-catching part is that we are currently discussing a mockup for the UI to add and edit backend. The current design is this one (Empathy inspired). I’d like to hear your opinions on that, whether you like it or not.
Getting Things GNOME, supercharging procrastination since 2008. Now in the Cloud!
Posted by Luca Invernizzi in Getting Thing GNOME!, Google Summer of Code on May 16, 2010
Hello there, Planet GNOME! I’m Luca, one of the developers of Getting Things GNOME!. I’m taking this little empty space between posts in your RSS reader of choice to present you to some of the awesome things that will be featured in the next major version of GTG (due next fall). Preorder your copy now!
In the Cloud
In the near future, GTG will free your task from the cage of your hard disk. I know that some of you are already using the plugin for synchronization with Remember The Milk (that’s one of my most popular plugins :-D), but we are talking about more serious business here.
In short, you will be able to import/export/synchronize automatically all or part of your tasks into a variety of Back-ends. On top of that there will be an easy UI to rule them all.
Back-ends will include:
- Remember the milk (full synchronization with notes, tags ...)
- Evolution Tasks
- Launchpad (automatic import of bugs assigned to you / all bugs in a project / all bugs with a certain tag..)
- Zeitgeist (exporting completed tasks — have you seen that Zeitgeist now supports hamster?)
- Ubuntu one support (CouchDB)
- Twitter/Identi.ca (automatic import of direct messages tagged with #TODO — or something of your choice)
- Xml (for backups)
- ...
You will choose what to export and where, by “attaching” tags to a back-end. That is, if you want all your work tasks to be on your Remember The Milk account, just tag them @Work and add a RTM back-end synchronizing only the @Work tags.
Therefore, be joyful! You will have your TODO list everywhere, even on your Windows machine we all know you’re keeping in your basement.
All of this will be done thanks to the the “Google Summer of Code”, which kindly changes my “I should be working instead” thoughts to “hell, I’m working!”.
Not a big fun of commercial online services, even if they are (beer) free? We have the FLOSS!
Snowy-like web service for GTG
This will be a child of Karlo Jez, as another GSoC project. We’ll soon be having our web interface! A mock-up to whet your appetite
Speed
Big chunks of GTG have been rewritten to make you feel like your computer is getting more powerful as it gets old. Now you can procrastinate thousands of tasks!
UDS-inspired improvements
Projects: We heard your requests for a way to add “projects” to better categorize tasks! Nothing is decided yet, but we’re working on it :). We’ll be also working on the indicator icon, ... oh, too much work! Where is my beer?
Call For Ideas!
If you’ve read so far then, congratulations, you can tick off “Read Luca’s GTG post” off your TODO List. You could add another task, though. Some of you have told us that GTG icon set is too similar to a clipboard. We are thinking about renovating it, and it would be nice to see some proposals. So, sketch up, and post here there results!