Doing some thinking about what it would take to create a slick "1.0
beta" experience included in distributions and as a jhbuild target. The
point is to illustrate the whole "online desktop" not just big board as
an extra app you can run, but at the same time not be too ambitious
(keep it to say 6 months' work)
Please pile on with any major items I'm missing. I'll try to build a
primitive project plan on developer.mugshot.org based on this.
Some important work tracks might be -
Initial Login
===
- On a clean install, walk through the steps of choosing online desktop
mode, creating or logging in to an account, having gnome-session start
the right stuff, etc.
- Set up the distinct defaults for e.g. gnome-panel, such as dropping
top panel and moving icon tray to bottom panel
Packaging Online Apps
===
- swap out the local apps defaults with e.g. Google Apps and web mail;
packaging a web app would include e.g.
- the storyboard of what happens if you launch the app and aren't
logged in or have no account
- any locally-running component such as mail notification tray icon
- listed in mugshot.org/applications
- protocol handlers e.g. mailto: and mime type handlers
- apps to "package" might include:
- several major webmail
- several major RSS reader thingies
- Google Apps and perhaps one of the others
- flickr and picasa
Big Board
===
- should be polished enough / not feel flaky
- should have the "people" and "documents" stocks in addition to what it
has already (photos, apps, personal/self)
- plan not to fully replace panel; keep a bottom panel for the clock,
task list, status icon tray
- plan to fully replace distribution package tools with the social app
browsing
- plan to have good search across friends' web stuff (search modules for
e.g. flickr, del.icio.us, etc.)
- spend some time making it very easy for third parties to drop in 1)
stocks and 2) search modules - have decent docs and API on both
- consider an RSS reader stock? (frontend for an online reader showing
latest items)
("stock" = "applet" in big board jargon)
Mugshot Stacker Notification
===
- suggest we keep the tray icon client about the same as it is, overall,
but consider factoring out the "proxy desktop to xmpp" service
separately from the UI - perhaps even moving the UI to a separate
process? (facilitated by
http://developer.mugshot.org/wiki/Extensible_Server_API)
- consider adding explicit notification when your rss reader (e.g.
google reader) gets new stuff, so people don't have to abuse mugshot
proper for this
Server
===
- proactive cleaning up and deleting old gunk; this will be important as
we work on further scalability; some quick ideas here
- mop up the various "async tasks" (post-commit actions, periodic
polling tasks, etc.) and make the system for this a clusterwide
work queue all nodes can pull from
- reorganize and split up the java packages
- implement http://developer.mugshot.org/wiki/Extensible_Server_API
- clean up the two remaining "orange" pages (/sharelink and /visit)
and delete associated javascript and css
- get the logs clean of errors again
- adjust /account page per the old mockup to support a much larger list
of services
- add OpenID support
IM Client Integration
===
- when signed on, merge buddy lists into the "people" stock in big board
- show presence info in big board and have an "IM this person" button
Local Discovery
===
- using Avahi, show who is on the local network and allow chatting or
file sharing with them; merge local person list just as we merge IM
buddy lists
GNOME Integration
===
- make available APIs to interested apps (D-Bus for sure and possibly C
convenience lib?)
- file sharing feature?
- use to enhance gnome-games networking or AbiWord collab?
- create jhbuild target to compile the online desktop mode
Fedora (or other distribution) Integration
===
- make the packages we need
- create a Live CD that defaults to our mode
- integrate with installer or first boot as appropriate
Havoc
looks like a cool plan! I tried Bigboard for the first time yesterday
and it seems very stable and a very cool app; I'll keep testing but
I'm afraid I don't have any coding skills to help with the things
you've talked about below. One thing I wondered though:
> Packaging Online Apps
> ===
>
> - swap out the local apps defaults with e.g. Google Apps and web mail;
> packaging a web app would include e.g.
> - the storyboard of what happens if you launch the app and aren't
> logged in or have no account
> - any locally-running component such as mail notification tray icon
> - listed in mugshot.org/applications
> - protocol handlers e.g. mailto: and mime type handlers
> - apps to "package" might include:
> - several major webmail
> - several major RSS reader thingies
> - Google Apps and perhaps one of the others
> - flickr and picasa
Realising this is coming from a Redhat/Fedora direction: Google Apps
etc are not Free (or open source) software. I realise the irony that
this e-mail is coming from an @googlemail direction but it was just a
thought.
Cool work though :D
Jon
Jonathan Roberts wrote:
> Realising this is coming from a Redhat/Fedora direction: Google Apps
> etc are not Free (or open source) software. I realise the irony that
> this e-mail is coming from an @googlemail direction but it was just a
> thought.
>
True, I have no idea what the Fedora policy on this would be - my
personal view is that the free software and open source communities are
failing to think enough about how open source principles should be
applied and evolve as stuff moves to "software as a service" and
web-based and so forth.
By the literal current open source definition or GNU freedoms, something
like GMail is fine because the code is never distributed, so there is
never a license anyway.
But it seems to me that the spirit of open source would imply some
guidelines such as the ability to get one's own data out of a web-hosted
service for transfer elsewhere.
My hope is that the stuff we're working on will start to raise these
issues and over time we'll figure them out.
Havoc
OK, rearranged and wiki-fied:
http://developer.mugshot.org/wiki/Online_Desktop_Project
The question of the moment is, what do we pick for this week.
Another question I like is what should we plan to demo at GUADEC (around
8 weeks out)?
Havoc