Based on some conversations with Nicolas, Quentin and Banlu, I had some comments about the project to spark some discussion. Mostly interface stuff, a few marketing things, and some creative dreaming... :)

Regarding the name Étoilé, I think it looks pretty, and I like the symbolism behind it. I have only two concerns: pronunciation and accents. People who do not speak French will have a very difficult time with how to say the name of the project. I personally am still not completely certain (I would guess (long)A-twal -- correct me please!). Some people might see it as (long)E-toy-il-ee, which sounds like "toil" (meaning to labour continuously or work strenuously), or, as mentioned earlier, like E-Toilet. Neither are good connotations. In addition, as Banlu and others have mentioned, the accents can be a pain to try to work in. That said, I think it's great as a working name, but as we start to grow the project and want to market it, we should strongly consider something that uses easily type-able characters and that is a bit more phonetic. I don't want to start another debate on this... just offering my 2¢ since joining the list. Let's worry about it later.


Okay, to the good stuff...

============================================
THE DISTRO
============================================

I asked Nicolas, Quentin and Banlu about their ideas on developing Étoilé as a full operating system (on top of Linux or *BSD or Hurd (one day... maybe...)). All three mentioned being in favor of doing a desktop environment instead. I personally am interested in a full distro, and here's why:

- Complete control. By deciding on an official kernel/userland to sit on top of, you can optimize the environment for that specification. We _could_ then rely on things like using ReiserFS for metadata support, or inodes rather than file paths to refer to files (for shortcuts/aliases). This wouldn't prevent people from porting it to work on other OSs, but having a clearly defined target platform seems like a great way to stay focused, to prevent from spreading our (already small) resources too thin, and to give us more control over how all the pieces fit together, for a better user experience.

- Eases installation and testing. You (you the developer or you the user) don't have to worry "will this work on System XYZ?" If you're the user, you simply download the ISO, burn it, boot and install. As long as your hardware is supported, you have no problems. If you're the developer, you simply do all of your testing on the target platform, and, if it works, great. No need to worry about variances between the potential host systems. There are an infinite number of combinations of software out there, and trying to snap into that seems like a hell of a lot of work for what a small group we are.

- Out-of-the-box solution. If you want someone to try your software, you don't have to first check whether they're running Windows, Linux or *BSD. You simply give them the disk and they can use it. No configuration, no compiling. Usable, right away.

I would say some kind of a LiveCD would be a great solution. I'm in favor of either Linux or a BSD; Linux because it's got a larger developer community and the name "Linux" is better for marketing, *BSD because it's got a more cleanly integrated base system and a smaller development team which might be easier to coordinate with.

Maybe a good conversation for this is to think "if we had only one target platform, what kind of things could be possible that we couldn't do otherwise?" Additionally, let's ask "what extra work will go into supporting a full OS instead of just a DE?"


============================================
THE INTERFACE
============================================

Here are some things that I want in an interface and some counterpoints to things I've read in the archives and on the wiki. Everything that I said here < https://mail.gna.org/public/gnustep-ui/2005-02/msg00050.html > still applies, except for maybe the desktop being used as the home folder. Here's some more stuff and more fleshed out stuff (since this is probably a more appropriate place :)

- A buffer or visual pasteboard / quick launcher. I want a spot where I can drag snippets of text, or images, or URLs, or email addresses, or color swatches, or folders, or network locations or whatever. Anything I think I might use in the near future, I can drop here. Clicking on said snippet will launch the appropriate application for content (text will launch a text editor's window, URLs will launch a browser, folders will launch the workspace manager, etc). Dragging the snippet into another application will act as if I had that snippet as the current item in the pasteboard (text, including URLs and email addresses, will paste as text, images will paste as images, folders could paste the path or copy or move the folder, depending on the target of the drop, etc).

 - Annotations are a brilliant idea!

- Spacial interfaces can be extremely painful and lead to a lot of windows on the screen. I do like 1 window for 1 folder -- that's a good idea, as is keeping the location and view of a specific folder consistent. Browser navigation is really slick for deep hierarchies -- we just need to find a way to unify the two concepts. Or...

- Ditch the ability for regular users to create folders altogether and put all files in one spot (probably their home folder merged with a Shared folder for all system users). Make the workspace manager an awesome searching and filtering tool. Add buttons to the workspace manager for "Music" or "Photos" or "Letters to my boss since last Tuesday" or whatever, and just make those shortcuts for queries (live search folders). Never use a Save dialog again -- when you make a new file, just give it a name and it's automatically added to the user's home folder, ready to be searched on.


============================================
THE TECHNOLOGY
============================================

Here are some random bits of other technologies or ideas that might be inspiring.

I told the guys I've been reading Jef Raskin's _The Human Interface_ lately. Not all of his ideas are great, but some of them are stellar (< that's a pun) and really resonated (< and so is that) with me and with what I read about Étoilé. What was really the trigger is he is all about productivity and workflow -- exactly the same concepts this project is trying to find a better solution to. Where I think Raskin goes wrong is that he tends to favor a more command line approach, instead of the more intuitive approach of direct manipulation. He also tends to look at files as textual elements when, for me, the majority of what I manipulate every day is graphic. Some of his good points:

- Eliminate model interfaces as much as possible. Different applications (tend to) mean different modes (different key commands, different interaction methods). By breaking applications down to services that can be summoned and combined as needed, Étoilé seems to be working on making this idea more of a reality.

- Build a history of selections. If I make a selection in a body of text, that is selection 0. If I make a new selection, the new selection is numbered 0 and the previous one is numbered 1. This goes on for as many selections as we can technically handle. All the selections might be badged by their historical number (or some other visual method). Swapping two pieces of text now becomes insanely easy: just have a menu item labeled "Swap". This is far superior to "select, cut, paste, select, cut, find previous insertion point, paste".

- Make alerts that don't require interaction to show up, then fade out, and keep track of all alerts. You know the JavaScript alert() function? Horrible. It pops up with some text and an OK button, and forces the user to disrupt what they're doing to get rid of it. I'm using Growl < http://www.growl.info/ > now for alerts on downloads and new emails, and it is exactly how alerts should work: it shows up, it stays for a bit, it fades away. Elegant, informative and unobtrusive. Now if only we could build a simple way to pull up old alerts when you're busy doing something else and the alert fades before you get a chance to read it, it would be perfect.

- Everything is undoable. Everything. Forgiveness is a virtue... and a requirement for a friendly system.

- Incremental search. Like OS X is using everywhere, like Filie has, like Google Suggest < http://www.google.com/webhp?complete=1&hl=en >. Good idea -- let's make that type of search really easy for developers to implement.


On a different note, the Google Gmail mantra "Search, don't sort" seems like a really good thing to keep in mind. You're already going down that route with Lucene; here are some other links with ideas:
 - http://www.mozilla.org/blue-sky/misc/199805/intertwingle.html
- http://logicaldesktop.sourceforge.net/screenshots.html (a variation on sorting using task selection and searching)




Okay -- that's probably enough for now... time to get some sleep.


J.


PS -- I would like a wiki account, if someone wants to set one up for me :)


Reply via email to