Mebot

From Openmoko

Revision as of 15:57, 18 July 2007 by Emreturkay (Talk | contribs)

Jump to: navigation, search

Contents

ABSTRACT

Mind workers of today's world have heavy workload and a lot of things in their minds, be it work related, personal improvement, etc. Therefore a need for planning tools, scheduling tools and utilities in the form of plain paper and computer software and various methods for using these tools in the right way has emerged.

We think that, there are many useful applications dealing with different aspects of this problem, however, there is no one-in-all package. Therefore, we decided to build a plug-in based architecture interconnecting the various productivity and office tools of our daily life.

USE CASES

Imagine an application showing an action to do. There are three buttons, "done" (I've done it delete from the queue), "defer" (defer it to a later time), "cancel" (there is no need to do this anymore, or it requires further thinking). When any one of these buttons is clicked the next action item brought forward.

Now, imagine, combining this with GPS. In this case, it shows me stuff I should do at home, when I'm home and stuff I should do at work, when I'm at work. Pop up my feed-reader when I'm traveling, etc.

Consider there is a simple market-list application, in which I note the stuff I need to buy from market, time to time. When I approach to the market moko starts an audio alert and tells me to stop by the market to buy stuff. When I enter the market automatically pops up my market list.

I'm thinking about a plug-in architecture so you can extend this idea as far as it goes, bugzilla integration, mail client integration, web browser integration, integration with an outliner/mindmapper, project planner, tomboy, etc. Every new plug-in will open a door to another cool idea.

USAGE

The fundamental idea is simplicity and we provide it as follows;

  • There are actions in queue, which is shown to the person one by one.
  • The person can choose one of three options;
    1. Done: Which means, I've done it.
    2. Defer: Save it for later, not an appropriate job for now.
    3. Cancel: For some reason there is no need to do this anymore.
  • There are spatial and temporal constraints of these actions.
    1. Spatial constraints can be "home", "work", "market", etc.
    2. Temporal constraints are duration and the earliest date/time to show.
  • Although it is possible to define actions taking up to one whole day, the recommended duration is max. 15 minutes.
  • The prioritization will generally won't be necessary.
  • The dependency management will be as easy as possible.
  • Integration with email client, project planner, todo software, even maybe bugzilla, etc., is on the roadmap.
  • One of the main purpose is to put Mebot onto open source mobile platforms like openmoko.

TECHNICAL DESCRIPTION

  • The programming language is C++.
  • Open source libraries such as boost, xerces, etc. will be used, wherever possible.
  • The main development platform is Linux.
  • The code will be written with portability in mind.
  • For the plugin architecture, IPC is gonna be built on dbus.
  • For platforms not supporting dbus, options are DCOM or CORBA (TAO is pretty much supported everywhere).
  • The data storage format is XML.
  • The sourceforge.net web page is at http://mebot.sourceforge.net
Personal tools

ABSTRACT

Mind workers of today's world have heavy workload and a lot of things in their minds, be it work related, personal improvement, etc. Therefore a need for planning tools, scheduling tools and utilities in the form of plain paper and computer software and various methods for using these tools in the right way has emerged.

We think that, there are many useful applications dealing with different aspects of this problem, however, there is no one-in-all package. Therefore, we decided to build a plug-in based architecture interconnecting the various productivity and office tools of our daily life.

USE CASES

Imagine an application showing an action to do. There are three buttons, "done" (I've done it delete from the queue), "defer" (defer it to a later time), "cancel" (there is no need to do this anymore, or it requires further thinking). When any one of these buttons is clicked the next action item brought forward.

Now, imagine, combining this with GPS. In this case, it shows me stuff I should do at home, when I'm home and stuff I should do at work, when I'm at work. Pop up my feed-reader when I'm traveling, etc.

Consider there is a simple market-list application, in which I note the stuff I need to buy from market, time to time. When I approach to the market moko starts an audio alert and tells me to stop by the market to buy stuff. When I enter the market automatically pops up my market list.

I'm thinking about a plug-in architecture so you can extend this idea as far as it goes, bugzilla integration, mail client integration, web browser integration, integration with an outliner/mindmapper, project planner, tomboy, etc. Every new plug-in will open a door to another cool idea.

USAGE

The fundamental idea is simplicity and we provide it as follows;

  • There are actions in queue, which is shown to the person one by one.
  • The person can choose one of three options;
    1. Done: Which means, I've done it.
    2. Defer: Save it for later, not an appropriate job for now.
    3. Cancel: For some reason there is no need to do this anymore.
  • There are spatial and temporal constraints of these actions.
    1. Spatial constraints can be "home", "work", "market", etc.
    2. Temporal constraints are duration and the earliest date/time to show.
  • Although it is possible to define actions taking up to one whole day, the recommended duration is max. 15 minutes.
  • The prioritization will generally won't be necessary.
  • The dependency management will be as easy as possible.
  • Integration with email client, project planner, todo software, even maybe bugzilla, etc., is on the roadmap.
  • One of the main purpose is to put Mebot onto open source mobile platforms like openmoko.

TECHNICAL DESCRIPTION

  • The programming language is C++.
  • Open source libraries such as boost, xerces, etc. will be used, wherever possible.
  • The main development platform is Linux.
  • The code will be written with portability in mind.
  • For the plugin architecture, IPC is gonna be built on dbus.
  • For platforms not supporting dbus, options are DCOM or CORBA (TAO is pretty much supported everywhere).
  • The data storage format is XML.
  • The sourceforge.net web page is at http://mebot.sourceforge.net