Skip to main content

Google Web Tookit is awesome!

So I have used a few "Getting Things Done" (see my previous blog) softwares / applications / services or what ever you want to call them. They are generally pretty good at what they are supposed to do. I liked some of them for their simple design and ease of use and liked a few others for their control. But overall none of the ones I tested met my specific needs.

Basically I want an extremely simple tasks > projects > tags hierarchy. The tags are like the big pieces of the pie. I have a few tags like "Personal", "Work" and "Fun". So all my work related projects should have the "work" tag, similarly all personal projects like buy groceries or clean house or free up space on hard drives should go into the "personal" bin, and so on for other tags. Well you get the picture.

Then projects are high level tasks. You know you have to do several smaller tasks to get it done. But overall you just want to track projects. How much of a project you completed. For example take the case of the high level task such as free up disk space. The smaller tasks involved are
  1. Do some accounting of all the files that are needed now vs need on use basis.
  2. Remove /tmp and unnecessary files.
  3. Tar / BZip all the files that are not needed now and remove them.
Simple. I need to track what % of the task is complete. Another example is when I am playing Need for Speed Most Wanted. Where am I in the blacklist? Each blacklisted player can be a small task of the big task of winning the game. Not only that but I need an RSS feed which will report what % of the project I completed. It will be fun to get the graph later to see the progress over all the projects and individual projects.

Next comes the individual tasks of course. So basically a task is a subset of project and a project is a subset of a tag. I want to maintain that hierarchy.

Google Web Toolkit
Since I did not find any of the GTDs useful I decided to write one myself that I will use locally on my laptop which will maintain the state on a locally run server. Then I will run a RSS server which will give the RSS feed to be used in my blog or somewhere. Initially I thought of writing a simple swing java app. But then I thought why not learn something while I am working on this task? I have been wanting to write an application using Google Web Toolkit, so this may be a good use case :).

I downloaded GWT and installed it. Following the simple introduction page, I am already on my way to creating a professionally looking web app by just coding in java! I have some knowledge of JavaScript but as far as my knowledge regarding CSS or DOM goes, it is close to nothing. Yet here I was happily editing CSS and creating elements for my Getting Things Done project. GWT is extremely cool and easy to use. The documentation is pretty good and easy to follow. Once I understood all the widgets and how they get their look, I simply started coding. I already had a design in mind and just went about implementing it. With in a few hours I have done the "Tags" part. Here is a snapshot of the app.


Google Pages is not for me
I will be going on vacation for the next 3 weeks so I know I won't be able to get much more progress on it. Yet I wanted to show off. I wanted to host it somewhere. Initially I planned on using Google Pages. I have not used it for almost a year. Unfortunately for me Google Pages still does not let me edit HTML in the way that I want. It only lets content creation using the product itself. You can edit HTML but it is very limited (title and body). Moreover all the files that I upload go to just one place. I want a more directory hierarchy to put files from various projects into different directories. Also I wanted some kind of ftp access.

Enter MyHosting247
So I Googled of course and found this really neat web hosting service called MyHosting247. It has a very simple interface and was very responsive (unlike geocities that I used a long time ago). Anyway it has a nice file manager to create directories, upload files and manage your website. Even better it has ftp access. Cool! I created a directory and pushed all my files. Now my app is hosted here. Go give it a try at http://chandan7.myhosting247.com/yagtd/ChandanGtd.html and see how a few hours with GWT can get a professional looking app. I was only able to complete the Tags tab. The other 2 tabs are just place holders for now. I will complete it after my vacation.

What can you do with the app
You can add new tags with a tag name and description and clicking on the "Add Tag" button. The description can be empty but the tag name cannot be empty. If it is empty, you will see a message indicating the problem.


Also you cannot add a tag name that already exists. Tag names are not case-sensitive. When I try to add "work" again, I get this:


You can of course delete the tags using the "Delete" button. But in my view the most interesting feature of this app is that you can edit tags and descriptions right in the table by clicking on the tag name or description. You simply get a text box with the text and you edit it. Pressing enter updates the table. Here is a snapshot where I am editing the tag "Work" and description of "Personal" by simply clicking on the text.


That's all for now folks. 4 weeks until next update :) when I will complete projects and tasks tabs.

Comments

Popular posts from this blog

Attesting General Power of Attorney in SF

Recently I had to go through the motions of getting a General Power of Attorney (GPA) document attested in San Francisco. I am an Indian by birth. My parents were trying to buy a house back in India for me. Since I did not want to travel to India they needed a GPA so that they can act on my behalf to sign all the documents required to buy the house. The problem however is that they needed it urgently because the seller lives in UK and wants to get all the things done quickly so he can go back. My parents send me a GPA document that they obtained from a lawyer. This is a document that will give the power to my parents to buy the said property in the document on my behalf. The lawyer said that I will have to get the document attested at an Indian Consulate in USA. The closest one for me is in SF and I can drive there in about an hour from where I live. So I though it will be like a day's work to get all the things done. I looked up at their  website  for the procedure t...

XBMC / Boxee remote control android app

I have been writing a few android apps over weekends at home and during 20% time at Google. However I never actually released any of them in the android market mainly because they were quick and dirty apps that fit my needs but perhaps would not be appealing to the general public. One such app that I quickly wrote over a couple of weekends is a XBMC remote. The media center that I use at home is XBMC and I have always wanted to have more control and faster access to my media. Using my remote to navigate through the menus is not as fast. Especially when I wanted to queue a lot of music it is very slow. So I wrote this nice little app called "XBMC remote" for my android phone to control XBMC from anywhere :). Give it a try. Search for "xbmc" in android market and install it if you use XBMC as your media center. When you first launch the app you will start with this screen. You will have to setup your web server address, username and password (if required) by ...

gtkdocize not found

If you are ever configuring an app and see the message "gtkdocize not found" in Gentoo, then you need to emerge gtk-doc. I had some hard time figuring this out so I am writing it in my blog for the next time. When I saw that error message I did an "emerge -s gtkdocize". Usually it is that simple in Gentoo. But not this time. The emerge command returned no results at all. Then I searched for gtkdoc and still no luck. After searching in Google, I still did not have a solution. After thinking for a while I decided to try to search for gtk-doc. Bingo! That worked! Interestingly, this is my first post from my Virtual machine :-)