Time Management for Ubuntu's

    dropbox logo

    Many Khabrovsk citizens are interested in the question of Time Management. This explains the high ratings of articles describing various techniques and technical tools associated with them. I’ll also try to make my contribution by talking about how, on the basis of several Linux machines (3 x Ubuntu 9.10), I have implemented and used the last six months a planning and task list system ( Getting Things Gnome! 0.2.3 aka GTG ), timing ( Time Tracker 2.29.92 aka Project Hamster ) and synchronization of configuration and database files using Dropbox for Linux v.0.7.110, so much beloved on open spaces The first two applications are written in python, which makes them even more attractive, because allows you to quickly figure out the code yourself and tweak them (applications) for yourself. Although in the standard configuration, they cope with the tasks very well.


    Let's start with a visual description of the programs, i.e. from the screenshots.

    Getting Things Gnome!


    An example of my real postgraduate task list:



    • A new task can be added via the “quick entry” line
    • Each task can be opened as a separate window for editing, with the ability to add subtasks and tags in this window
    • Tasks are combined into a tree structure. Those. any task can be divided into subtasks.
    • There are a number of plugins available. Of the most interesting interaction with RememderTheMilk and Hamster Project
    • The "Work view" button will show only the ends of the branches, i.e. precisely those tasks that must be completed first.
    • The presence of tags allows you to quickly find the necessary tasks.
    • Each task can be assigned two dates: the beginning of the task and the end. This will determine whether the task gets into the Work View or not.


    The features of the program listed above do not make the application too rollicking. The authors tried to adhere to the principles of minimalism when writing this application. But this does not interfere with decorating the tags in different colors, for quick visual orientation in an sometimes huge list of possible tasks (if you set them yourself).

    Project hamster


    Functionality and stunning design are the main features of this program. What is even more amazing is the fact that the whole project is led and supported by a single person: Toms Bauģis. Although he is happy to accept changes from other developers.

    Here is a report on my chromatography for a couple of months:
    Project hamster

    Reports are what the whole timing is for. It is from the reports that you can find out what was spent how much time. I can say that it was Hamster that taught me not to spend hours on shootings. You will be surprised how much time is wasted on such seemingly harmless things as reading news, toys or going out with friends for coffee. I do not urge you to stop doing this, I just advise you to get acquainted with the number of hours spent on various activities. These data are thought-provoking.

    For example, it turns out that I have been spending more than two hours writing this article:

    Project hamster

    • Hamster is a GNOME Applet that hangs on a gnome panel
    • You can assign shortcuts to an application
    • It also maintains a list of categories, tasks, and labels that were previously entered.
    • As a result, registering a new task takes only a couple of seconds
    • You can also enter completed tasks that for some reason have not been recorded
    • Sampling when viewing statistics by day, week, month or even year.
    • Sample statistics by category and / or tag


    Dropbox


    Dropbox needs no introduction. But still, if you heard about it for the first time, then you should know that this is an instant folder synchronization program written not only for Linux, but you won’t believe the same for Window and Mac. A free account allows you to sync folders up to 2GB in size.

    • Web-based interface with the ability to manipulate files (rollback versions, view, etc.)
    • Excellent integration with the operating system. Those. for you it will be just a folder in your home directory.
    • One-click ability to get a link to a file that can be sent to another person. A good way to share photos.
    • A folder or file can be shared between several accounts at once. Those. several people will simultaneously have access and the ability to change a file or directory
    • The referral system allows you to increase the space on the virtual disk up to 10GB, or you can buy it.


    Here is a list of features. Well, now to integrated glabolization! global integration.

    File


    The idea is that when installing Dropbox, it asks you to specify which folder will be synchronized. It is in this folder that we are going to place our configuration files for GTG and Hamster. And then just link to these files in those places where programs try to find them.

    GTG stores its files in the ~ / .local / share / gtg folder . Hamster stores the SQLite database in ~ / .local / share / hamster-applet / hamster.db . Let's say that we agreed with the default settings, and put the Dropbox folder in ~ / Dropbox /, then the sequence of actions is as follows:

    1. Create a working folder inside Dropbox, for example ~ / Dropbox / work /
    2. Copy the folders ~ / .local / share / gtg / and ~ / .local / share / hamster-applet / to the
      working folder ~ / Dropbox / work /
    3. Now we delete the folders according to their original location (the programs are
      better at the same time let them be turned off)
    4. Create a symbliic link to the folders in the right place:
      ln -s ~/Dropbox/work/gtg/ ~/.local/share/gtg
      ln -s ~/Dropbox/work/hamster-applet/ ~/.local/share/hamster-applet
    5. Enjoying the fruits of civilization


    A couple of '' BUT '' :
    • GTG writes its files after each key pressed (authors are paranoid), so you can not be afraid - synchronization will happen 100%
    • Hamster starts earlier (when loading GNOME) and therefore synchronization may not be in time. And then the old data will be used. This is treated by restarting Hamster. For example, the following command:

      /bin/kill $(/bin/ps axfv | /bin/grep hamster-applet | /bin/grep python | /usr/bin/head -c 6)

      The command was written to a script file and laid out for quick launch on the very same GNOME panel
    • After the article itself was published on a hub, I received a letter from Toms Bauģis himself in the mail. He said that starting with Hamster 2.29+ added support for auto-updating the database if it changed its size. But it turned out that these changes are not fixed if the actual file is not specified, but the softlink, as is the case with Dropbox. On this occasion, we have already opened a bug report here: https://bugzilla.gnome.org/show_bug.cgi?id=614779 But there is still a way.


    1. You need to leave the Hamster Project files where they are (this is when installing on the first machine). Softlink organize in the opposite direction, i.e. for example like this:

      ln -s ~/.local/share/hamster-applet/ ~/Dropbox/work/hamster-applet

      Dropbox already knows how to follow links and synchronize folders and files to which these links point
    2. The connection of the second, third, etc., looks a little strange. machines, but this is only because we want to point Dropbox to a file that, as it were, is already listed in its directory. Let’s consistently - it will be easier. Installed on another Hamster computer. We go to ~ / .local / share / hamster-applet / and naturally we see that both the folder and the database file already exist.
    3. Copy the file from the Dropbox directory to the Hamster folder
    4. Hamster will detect a database change and open a new database (more precisely the old one, i.e. the one in which there were records from the first computer)
    5. Now you need to make a softlink from the Hamster folder to the Dropbox folder. But this cannot be done, because the file at the destination already exists. Therefore, we simply delete it. Those. if we decided to make a softlink to the whole directory, then just delete this entire folder

      rm -r ~/Dropbox/work/hamster-applet

    6. Well, the last step is to restore the file in the Dropbox folder.

      ln -s ~/.local/share/hamster-applet/ ~/Dropbox/work/hamster-applet

      Now we have two machines synchronized, and Hamster will update the database itself if it sees that something has been brought in from another machine.


    That’s all for me. Thanks for attention.

    PS: It has become a tradition for me to lay out a graph showing activity in a written article:
    image

    Also popular now: