The Omni Group Forums

The Omni Group Forums (http://forums.omnigroup.com/index.php)
-   OmniFocus 1 for Mac (http://forums.omnigroup.com/forumdisplay.php?f=38)
-   -   Smart Contexts (http://forums.omnigroup.com/showthread.php?t=8233)

sriggins 2008-06-19 12:42 PM

Smart Contexts
 
I would like to offer the concept of "Smart Contexts"

Use Case:

User has to research Flash integration, likely through google

* Create project for researching flash integration
* Context is Work
* Add a new concept, sub-context, which would be a Smart Context "Web"

Now, when I switch to any web browser, a widget will let me know I have things to do in the browser, either by showing contexts, or all, etc, similar to how the filtering works now. One example might be a menu widget that slides out, scrolls some text, and shrinks back to an icon.

Another example would be integrating with Growl to supply these notifications.

So I switch to Safari and I see "Research Flash Player"

MEP 2008-06-19 01:24 PM

[QUOTE=sriggins;38343]I would like to offer the concept of "Smart Contexts"

Use Case:

User has to research Flash integration, likely through google

* Create project for researching flash integration
* Context is Work
* Add a new concept, sub-context, which would be a Smart Context "Web"

Now, when I switch to any web browser, a widget will let me know I have things to do in the browser, either by showing contexts, or all, etc, similar to how the filtering works now. One example might be a menu widget that slides out, scrolls some text, and shrinks back to an icon.

Another example would be integrating with Growl to supply these notifications.

So I switch to Safari and I see "Research Flash Player"[/QUOTE]

There aren't exactly a ton of details about this yet, but it kind of sounds like this is at least partially implemented in OmniFocus for iPhone--the whole "GPS-enabled location-sensitive action lists" feature which is kind of a physical version of what you're proposing.

As far as doing that in software based on what apps are currently in focus, that's a lot harder than you might think to actually implement. Monitoring user activity at that level can be pretty resource intensive (run 'top' from the command line and take notice that 'top' tends to be one of the most processor intensive apps on the list). Having a background process that's constantly tracking what's in focus can cause problems. I'm not even sure that the OS X system architecture would allow a developer to do this without serious limitations.

Perhaps this idea would be better served with a plugin architecture for OF and a series of plugins for other applications--like a Safari plugin that can read the OF database and display things in your @Web context. I think that would be significantly easier to develop and probably have a much lower impact on system resource usage.

You could probably kluge up a quick and dirty version of this using OF's applescript support.

sriggins 2008-06-19 01:44 PM

[QUOTE=MEP;38349]There aren't exactly a ton of details about this yet, but it kind of sounds like this is at least partially implemented in OmniFocus for iPhone--the whole "GPS-enabled location-sensitive action lists" feature which is kind of a physical version of what you're proposing. [/quote]

I have not read much about the iPhone version, but I am sure I'l be buying it, if for no other reason than taking my errands actions with me.

[QUOTE=MEP;38349]

As far as doing that in software based on what apps are currently in focus, that's a lot harder than you might think to actually implement. Monitoring user activity at that level can be pretty resource intensive (run 'top' from the command line and take notice that 'top' tends to be one of the most processor intensive apps on the list). Having a background process that's constantly tracking what's in focus can cause problems. I'm not even sure that the OS X system architecture would allow a developer to do this without serious limitations.

Perhaps this idea would be better served with a plugin architecture for OF and a series of plugins for other applications--like a Safari plugin that can read the OF database and display things in your @Web context. I think that would be significantly easier to develop and probably have a much lower impact on system resource usage.

You could probably kluge up a quick and dirty version of this using OF's applescript support.[/QUOTE]

I am sure there are notifications for application switches. There would be no reason to poll for this. Polling died with OS 9 :)

MEP 2008-06-21 08:03 AM

[QUOTE=sriggins;38351]I am sure there are notifications for application switches. There would be no reason to poll for this. Polling died with OS 9 :)[/QUOTE]

It's not polling that's the issue really (I can see how the way I phrased that may make it sound like I was talking about polling though). There are plenty of really good reasons why an OS should not be telling applications what is and isn't currently active or running. Personally, if OS X does make this easy, I'd be pretty upset about it.

Typical event-driven systems only send event information to applications once they've determined that the application should receive info about the event. They don't send out global messages to all running applications about every event that occurs because the possible overhead and stability issues would multiply exponentially as the number of running applications increases.

So any app that wants to know what's currently active would have to register with the OS somehow to say that it wants event messages that don't directly concern its own operation or interface. I'm not sure OS X offers such a channel and, frankly, if it does it really shouldn't and I sincerely hope Apple changes that.

brianogilvie 2008-06-21 08:31 AM

[QUOTE=MEP;38500]It's not polling that's the issue really (I can see how the way I phrased that may make it sound like I was talking about polling though). There are plenty of really good reasons why an OS should not be telling applications what is and isn't currently active or running. Personally, if OS X does make this easy, I'd be pretty upset about it.[/QUOTE]

Not being a developer, I'm not sure how easy it is, but TimeLog 4 tracks the foreground application. I would suspect that other time logging software offers the feature. (TimeLog offers it as an option; it's not obligatory.)

sriggins 2008-06-21 04:32 PM

[QUOTE=MEP;38500]
So any app that wants to know what's currently active would have to register with the OS somehow to say that it wants event messages that don't directly concern its own operation or interface. I'm not sure OS X offers such a channel and, frankly, if it does it really shouldn't and I sincerely hope Apple changes that.[/QUOTE]

Yeah while you're at it, remove the ability to write addons and hooks into system, so control-space for quick entry in OF would go away, along with menu additions, and countless other OS utilities.

God forbid we have a OS that let's software work for us!

/shudder


All times are GMT -8. The time now is 03:22 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.