The GNOME Roadmap
glockenspieler writes "Recently on the the Gnome Foundation mailing list, Dave Camp posted a draft Gnome Roadmap for versions 2.8 and Beyond. Issues up for discussion are Mozilla/Epiphany, incorportation of peer to peer filesharing, blogging, addition of more media widgets, and many others. Time for Gnome users to weigh in on what improvements that you would like to see. If that's not enough, then there's always the the C# versus Java versus ? discussion."
Personally I use KDE, but I used to use gnome. Not as pretty, but its faster and lighter than KDE. Take out C/C++ (forget which they right it in), and use Java or C#, they just made it bulkier and much slower. That would be their main opinion IMO. Gnome doesn't look bad, but most people I've talked to think KDE looks better. Take away Gnome's advantage in this situation, and they don't have much going for them.
Help Fight SPAM today!
Can't people just install their own peer-to-peer and blogging apps?
Why not make an installation system that works as simply as clicking setuppackage.msi is in Windows and let the other problems solve themselves?
Why not just make a working desktop first?
Sheesh. Yeah, this year will be the year of linux-on-the-desktop now that we have integrated blogging. That was sure the barrier for entry to me.
I don't need no instructions to know how to rock!!!!
Do we really want blogging software, p2p software, etc included with gnome? Is gnome so perfect in other respects to justify adding features that 0.01% of people are going to use? I think a better use of resources would be improving and debugging the current Gnome programs before adding this -- someone else can always program p2p apps and blogging software.
After reading this roadmap, I'm left with nothing but warm feelings of loveliness.
:) Looks like all those Sun corporate installations helped a little bit! Also, the close work the Gnome community is putting in alongside freedesktop.org is a *very* good thing. Integrating the desktop with the hardware is something Windows has been able to (alledgedly) do since '95, and it's about time we had that too! New users certainly need to be able to plug their digicam in and have it "just work", and if this can all be incorporated with Nautilus and the CD burner module, transferring pictures could be as easy as insert camera, insert blank CD and click Go. Gnome could fast be approaching Apple levels of usability!
First off, working with Mozilla Firebird is a stroke of genius. There are a heck of a lot of man hours being put in on that project, we should utilise them rather than recovering ground already trod upon by the lizard.
Secondly, integrating both Ximian, Gnome-DB, calendering and address book tightly into Gnome could be a great leap towards a working Dashboard project. This alone looks like propelling Gnome into pole position - it's a genuinely innovative feature, not yet seen on any other desktop, and only hinted at by Microsoft so far. Beating Microsoft to the punch would certainly be a coup.
The other really encouraging thing is the following paragraph:
--
One area in which GNOME has lagged behind other desktop operating
systems like Windows and Mac OS X is tight integration with hardware.
GNOME is working with the freedesktop.org community to make
plug-and-play hardware management just work.
--
For me this highlights that Gnome has moved well into position as the premier Linux desktop, and rather than concentrating on what KDE are doing, they are focusing on bigger fish
I want my 2.8!
Sunday you're Thinking Different, Monday you're a huge tool, paying too much and waiting to think like everyone else.
not implementing any of those? actually, how about taking it a step further and getting rid of a lot of stuff in there already?
... if anyone knows why Unix should be simple, it's him
i don't understand why windowmanagers need to do everything under the sun. the footprint of freebsd's gnome port is damn near 1GB. perhaps if the gnome and kde camps could focus on simplicity instead of features, things would be farther ahead than they are now. maybe we could all agree on a unified copy/paste for once for pete's sake.
Unix is very simple, but it takes a genius to understand the simplicity. Dennis Ritchie said that
vodka, straight up, thank you!
C# versus Java versus ?
Real men use Assembly. They should code it in assembly.
Evolution or ID?
I think they should really move on to use ?. It's the most superior language of the three, after all it's based on the earlier Jeopardy language where all statements are expressed as questions.
For example the familiar Hello, World! application is written in ? as follows:
what is the procedure the OS calls first?
{
what is the output of the most common small example program?
}
John.
Basically gnome is great, but it lacks attention to detail IMO. I think future versions should focus more on detailed quality and not on expanding featureset.
1. The Menus should be much more customizable; treated like folders that you can click and drag into (I hate to say this, but "Like Windows").
2. Better Video control properties; take advantage of XFree's extended features and have options like TV switching and such.
3. Better preferences; the control panels are quite lacking.
4. Other aesthetic enhancements that will make gnome pretty enough to compete with other window environments (like win XP's or OSX's). Smooth scrolling, the zoom-on-hover icons in OSX are sweet, and _drop shadows on windows_ would be real nice.
5. Some kind of Linux-version-of-Active-Desktop would be real nice, so I could have an IRC session running as part of my wallpaper,anchor the weather channel radar map to the background, etcetera.
Good to see D-BUS and HAL integration on the roadmap for 2.8. Just set them up on 2.6 last night, and they're quite fancy.
ATM, all they do (in conjunction with gnome-volume-manager) is automount/unmount/run removable media. Pretty much what you got with autorun for years on Windows, but more extensible in that you can tell the daemon what program to run, etc. Its also setup to detect/play dvds, and import photos from a digital camera automagically. Long overdue perhaps, but still very nice to have.
I suspect the best improvements are coming in the future once this is all integrated. Basically it gives the system a queryable, extensible device manager. In the future, I would expect all software that does hardware interaction will interface with this layer, for detection, hotplug, identification, and so forth. Long story short, its an absolutely critical piece of Linux on the desktop.
Also, using Python paves the way for universally integrated scripting, somewhat like the VB script possibilities in MS-Windows (and, despite waht MicroSoft did, that is a good thing).
Why not make an installation system that works as simply as clicking setuppackage.msi is in Windows and let the other problems solve themselves?
Oh man, you just opened the floodgates with this one. Prepare to be lectured on why the 37 different packaging standards make software installations easier than with Windows. Of course, the reality of the situation is that it's a crapshoot as to whether or not a package will work with whichever one of the 10,000 Linux distributions you happen to be running (chances are it won't), but hey.
Why not just make a working desktop first?
That would require setting aside this childish "Linux has to do every single thing that every single person on the planet could want it to do, and then some" attitude that plagues the community. No one wants to sit down and say "OK, let's mandate that all distributions have, at minimum, THESE particular packages that operate in THESE particular ways." No, no. That stifles choice somehow. Of course, everyone conveniently ignores the fact that some amount of standardization has to occur before Linux can be accepted on the desktop.
Yeah, this year will be the year of linux-on-the-desktop
You must have missed how the zealots are spinning this one now. See, there's no particular "year of Linux on the desktop" anymore, now it's "EVERY year that Linux gains popularity it's getting closer to the desktop!" Some clever guy came up with that one after everyone pointed out that Slashdot has been proclaiming every year since 1998 as the "year of Linux on the desktop."
It's especially amazing, considering that Gnome is an important part of GNU. What's up, Gnome foundation? Don't you care about documentation freedom?
With regard to the plans for new media and networking features in GNOME, I hope that the GNOME team leverages efforts from the x.org project to work towards a common implementation of those features. In particular, I think that the Media Application Server looks very promising. Since future versions of GNOME will likely be running on x.org anyways, the wheel should not be re-invented with respect to advanced media features.
It seems to me that with this roadmap, Gnome is planning on becoming the swiss army knife that KDE is. That is the exact reason why I do *not* use KDE. Gnome in its current incarnation (2.6) as well as the last several versions have appealed to me because they provide just the right amount of eye candy.
I am not particularly an X fan. I don't go for the shiny point and click thing because its just another layer separating the user from the system. Hence, I often have maybe a dozen terminal windows upen spanned across my 4 desktops.
That's not to say that X doesn't have its virtues. I wouldn't want to use Lynx as my sole browser, for the Web really does have some neat interactive and graphical content. However, things like IRC, News, and even P2P filesharing really don't need a GUI. Oh sure, I use X-Chat, but that doesn't mean I don't appreciate Epic. And I actually really like Pine.
How would you like it if you could do realtime management of email on your computer from anywhere? And I mean anywhere. Run the email client you use at home from school, work, your mobile phone, etc? To do that, you need a client that can run in a terminal. This includes Mutt and Pine (amongst others). Hell, I even use (http://www.idokorro.com) idokorro mobile ssh to access my box from my car!
That said, everything has its place. But making Gnome into KDE is not the right way to go. If this happens, I will probably keep a backup of version 2.6 on CD somewhere and downgrade any new version from that my distro ships.
Ads? What ads?
oh, and 4 should be possible with Cairo and the new X servers. 2 sounds interesting, but I don't agree with 1 and 3.
What about the vector graphics plans?
Is a SVG based window manager so far away?
Disorganized series of thoughts follow.
Make everything as simple as possible, and no simpler.
It seems the Gnome architects often forget the important second part of that goal. Or they are, frankly, deluded into thinking that there is no limit to how simple and appliance-like they can make the computer. There is a limit, and that's when I can no longer adjust it to fit me.
In contrast, this is Microsoft's lofty goal, which is good enough as it stands, but they too still forget the nuances in that goal.
Make the easy things effortless, and the hard things possible.
Desktop designers can't just cherry-pick a few simple problems and write a few lines to make it easy. While it's noble to strip out the rarely used options, or the options that "confuse" the newcomer, it is NOT ACCEPTABLE to bury the familiar power interface behind a gconf/registry setting, or to make the familiar power interface unreachable. (You hear me, Nautilus?)
Allow configurability. Allow personalization beyond just the stupid passive things like wallpaper and skins. Let a user choose their favorite way of presenting information, and be smart about it.
Commit to finishing the features you start. How long has a Gnome-Menu editor been promised, but neglected? Ever since Gnome 2.0, they've said, "well, real soon now." We thought it just barely missed the deadlines for the first distros with Gnome 2.0, but I still can't edit my launcher menu. If obvious features aren't usable, then don't go announcing major X.0 version releases.
[
Ditch metacity as the windows manager. Please. Also, after installing both the latest Gnome and KDE I can say without any doubt (at least on my machine and configuration, etc) that KDE is *much* faster than GNOME as almost everything now. It's now GNOME that feels bloated and out of touch.
*Fortitudo, aequitas, fidelitas.*
One of the highlights of KDE as far as making it usable for grandma is being able to search through the installation and find applications that aren't in the menu that could be incorporated into the menu.
If gnome is truly about usability, putting programs into the menu should be a piece of cake. I'm not sure if KDE has the end-all solution on menu management, but it could be improved in gnome.
On the other hand, gnome has done a nice job at being able to modify the menu directly from the menu (where it makes sense).
Some drag and drop capabilities in the menu would also be nice.
Free Ipod here
Here is my take. Linux will succeed on the desktop when more developers and ISVs jump on board. This won't happen until GNOME is a better development platform. How can you make it better? Well, I'll share my opinion (even if you didn't ask.)
Developers want to quickly build applications. Right now, a lot of the development focus for GNOME apps is using C. That's a generalization, but a fairly accurate one. They have bindings for many other languages, but they usually don't get the spotlight. Fold the bindings projects into the main project. For example, fold Gtkmm (C++ bindings) into the bigger GTK effort. Likewise for other language bindings and other libraries. Make sure these bindings are as identical as possible accross target languages, so the learning curve from one language to the next isn't so great. Right now its easy for a newcoming developer to find the main project (ie Gtk), but no so easy to find information on how to use it with his/her preferred language.
Once that has happened, stress the fact that using GNOME you can develop apps in a wide variety of languages. Lay the whole Java/C# thing to rest and support both. Linux has an opportunity to become the premier development platform (which should rest nicely with geek and open source ideals). Everyone says choice is key, but then they try to rope you into a development methodology. This isn't necessary. Build incredible libraries (likely in C) and then bind them to as many higher languages as possible, and always keep these bindings current with the mainline. Developmers will come in droves, and make great applications, if they can pick and choose the most appropriate technology rather than having it dictated to them.
-- Fighting mediocrity one bad post at a time.
You know what I'd like to see? Real virtual desktops. The current "virtual desktops" are really just virtual screens, not desktops. Full virtual desktops should act as completely separate desktops, with their own set of icons, etc. Obviously this would not be for everyone, but I would love to see it as a user-selectable option.
This is related to a problem I have with Gnome 2.4 (I don't know if it's been fixed in 2.6): when I double-click a desktop icon, I expect that program to launch on the desktop where I clicked the icon. But if I switch desktops before the program window shows up, it opens in that desktop instead. Maddening, especially on a slow computer such as mine! Also, dragging items between virtual desktops needs to be made easier (again, apologies if this has improved in 2.6).
I also have to second the idea of a sound server replacement, though I'm not thrilled that it's in the "Long Term" section of the roadmap. The current situation is frankly an embarrassment for a desktop environment of Gnome's stature.
In the pie-in-the-sky department, I would love to see options for a Mac-style menu bar, and Acorn-style file choosing via drag-and-drop rather than with a file selector dialog.
Mike
It wasn't mentioned in the article at all. Neither was the word "speed" or the word "faster".
I guess Gnome is destined to remain the slowpoke of the GUI world. Who would have thought KDE would be the quick one.
Deleted
Exactly. Package management is a distro issue, *not* a desktop problem.
.NET for people to develop for. Until then, GNOME and KDE are exactly what they were when they first came out--hacky desktop emulators stuck on top of X to make it look like Linux is in the same league as Apple and Microsoft in the desktop market. "Look, we have an integrated browser too! Look, a taskbar! 7 second app startup time? Ignore that, here are more screenshots!"
Absolutely, 100% wrong. Your abitrary mindset is the primary problem. "I've randomly decided that application installation should be handled by the distro!" No reason or proof or logic is given.
How will you ever have a seamless, professional, sane desktop environment that doesn't even have an installation/uninstallation API? The very idea is so backwards and laughable, I fully expect Linux to take another 10 years to reach the level XP and OS X are at now.
Since Linux crunchies are absolutely dead-set on never replacing the interface failures that are taskbars and start menus, I want to at least be able to have applications install their links on the menu and give me shortcuts to their uninstallers automatically.
I want to be able to just download an installer for an app onto my desktop and double-click it. A desktop environment should keep track of the desktop applications it has installed. Forgive me, but I want my desktop to be self-aware of what the hell it has installed and how to uninstall them. We're trying to compete with OS X and Windows here!
You have two options:
Do it in "bundles" like OS X, where applications install to folders in an Applications directory, and you can remove the program just by dragging the folder to the trash.
Do it like Windows does, where applications register their locations, tell Windows how to uninstall itself, and adds appropriate shortcuts and entries in the start menu and "Add/Remove Programs" dialog.
High school Linux zealot: "B-but we have a hundred possible external package managers to run all that!" Yeah, good luck remaining 15 years behind everyone in the GUI department just because nobody can be arsed to stop working on new sidebar buttons and integrated blogging functions in order to create a sane API in the vein of Cocoa and
You want a litmus test? The day someone can buy a printer that comes with a CD, stick the CD into the drive, a menu comes up to install the binary driver, and afterward the printer works. All done in a Linux desktop. Then it would truly be the "year of the Linux desktop (tm)". At the current pace, that is definitely not going to ever happen with either KDE or GNOME. They both are horrible desktops, and people overlook it because they don't want to admit that Microsoft still gets this part right. To Linux guys, it's a penis length test of shoving in as much pointless crap as possible to compensate for the lack of very basic functionality.
"Sufferin' succotash."
I like Firefox just fine but it has one gigantic mis-feature that keeps me using Epiphany: profiles. I hate 'em. They really don't make much sense on a mutli-user OS anyway (individual user preferences are handled at that level, where they belong). Most of the time when you open up another instance of Mozilla/Firefox, all you *really* want is another window. It's high time they killed profiles!
I really hope GNOME sticks with Epiphany, or fixes Firefox's wart(s).
How appropriate. You fight like a cow.
One additional point.
Linux _has_ standardization. Choose a distribution, and stick with it.
For example, Mandrake Linux + kde:
One method of installing software - CHECK
One interface and widget set - CHECK
One set of 'canonical' programs - CHECK
Well, looks like it has everything you want right there. Perhaps you'd like to use the Mandrake Linux standard?
Or maybe not.. maybe you'd prefer the RedHat Fedora Core standard:
One method of installing software - CHECK
One interface and widget set - CHECK
One set of 'canonical' programs - CHECK
Or maybe you would like to choose the Debian standard? Or perhaps the S.u.S.E standard?
"But wait!", you say, "There are too many standards! There should be only one!".
Perhaps.. maybe there should be a Linux standard. But then, how are you going to choose between the Linux standard and the Windows standard and the Apple standard? How are you going to handle that choice?
We should roll that in to one standard too. The OS standard. But shit.. we're not home free yet. How are you going to choose between all the different competing hardware on which the OS standard runs? Honestly, why should you be expected to invest time and effort finding the one that's right for you when you could make one that FITS ALL SIZES?
But hey, no chance of that ever happening. So I guess for now, the world remains complicated.. and we remain forced to make choices.
What a travesty!
-Laxitive
Even on MacOS X that's not true. NeXTSTEP had a far more functional Installer.app which would install, uninstall, and archive packages based on the bill of materials (essentially a list of files that belonged to the package) and this was more useful than the current MacOS X strategy (except that the NS Installer didn't handle conflicts at all).
On MacOS X you can't be sure that a package's content are only in the .app directory because some apps are installed with an installer program that does who-knows-what to your system. Programs that come with the OS are not always desired and don't come with uninstallers (how does one properly uninstall Microsoft Internet Explorer and be sure that all of its parts are gone; how can we know all the parts are in the .app folder? Why can't the installer let you tell it what not to install if you are reinstalling the OS and you know you don't want some program?). Many MacOS X users commonly run their machines as administrative users where they have the ability to write to system directories. Therefore it's possible for a program to see that some file isn't installed somewhere else (like a system dir) and then place a file there. Also the .app directory grants virtually no dependency tracking (modulo that which is built into an application). If program A depends on program B and B is removed, there ought to be a complaint and some kind of extra effort required to break program A but none will occur. As a result, programmers are implicitly urged to not reuse code in this way.
Then there's the inconsistent uninstall procedure -- uninstalling the developer packages appears to have somehow messed up a friend's ability to use Software Update on his iBook running MacOS X. He was lucky there happened to be a Perl script to do this job in the first place -- the developer packages install a lot of stuff in a lot of different places. Software Update complained of a permissions error on a /tmp subdir it was trying to write to. A reinstall of the OS fixed this (and also forced making a backup of personal data which was needed anyhow, so this wasn't a complete waste of time) but it sure seemed like overkill. Depending on each program to supply its own uninstall seems problematic and unnecessary particularly when you have the installer "receipt" which lists what files belong to which package and you could let packagers run a pre- and post-uninstall script to do things that aren't strictly file-based.
Making all of this worse is that so many programs on MacOS X are non-free software; inspecting the program's source code to see what the program really does is not possible. In the end, I think Apple sacrificed a lot for perceived simplicity that ended up not being so simple after all. I think MacOS X has some important user interface improvements other systems would be wise to build upon, but this way of doing package management is not one of them.
As for making a printer (and, for that matter, a scanner) work, I prefer the approach I've used in Fedora Core GNU/Linux: plug in the USB printer and run the printer manager program wizard. The wizard could be improved to automatically sense the new printer and configure itself (or the desktop could do this), but no additional software was needed. Scanning was even easier for me with my Epson scanner -- plug in the USB scanner, start the scanner program, scan. OS X required additional non-free software to do both of these tasks and that means another dependency I have no ability to share, modify, or inspect. I'm not willing to give up my software freedom for user interface enhancements and I don't think I should have to. Looking at how things used to be, history suggests I don't have to either.
Digital Citizen