The GNOME-Microsoft Connection
ejbst25 writes: "I haven't seen it mentioned ... but check out this IBM site about GNOME and MS similiarities if you haven't seen it." There's no secret that for good or for ill, "acts like Microsoft" is the standard by which many desktops are judged. The GNOME project, derided by some as "too idealistic," is notably pragmatic on this point: "I didn't know much about spreadsheets, I just copied every single thing from [Microsoft] Excel," says Miguel of the look of the spreadsheet he's added to GNOME. It's a well-written article, and includes a list of handy links at the bottom if you're interested in programming GNOME aps. It raises the question, though, how long till GNOME or another open-source desktop is the recognized leader?
Are you kidding? M$ changes the windows look constantly. Let's go over it :
3D The 3D effects have changed constantly, from the original 95 always more flatter(especially in the toolbars and menu's). The latest incarnations look more like bas-relief then buttons.
Start The placement of items within the start menu has changed with every bug patch. Items have risen and fallen. The taskbar itself has changed functionality more than once, with, for example, the addition of those little buttons next to your start button to launch everything you never wanted to launch that way.
Menu functionality The latest menu's are even viruslike, really spooky. Every time you look at them something has changed in them. I'd like to punch the guy who invented that in the nose. It's easier to find a needle in a haystack then to find the ever-shifting menu items in the latest incarnation of Office.
And to make it worse, whenver they decide to change standards, and release documents stating that, they never stick to what they say themselves. Toolbars are the major example of this. M$ has never, ever, made their toolbars as their own UI docs prescribed. And they've also never made two subsequent releases of an application with the same inherent toolbar design.
IMHO, m$ need to standardize at least as much in the UI field as *nix.
I always feel ill when I hear the phrase "Limit user options", but then I have to remind myself we're not talking about long time Unix users, or people that are using Unix for its features and benefits. The target audience for the much ballyhood Linux Desktop is, for all intents and purposes, converts from MacOS and Windows. This is certainly an interesting challenge, and probably a good goal for the community. But I hope it doesn't become a primary goal. IMHO, there is more to life than catering to the end users. After all, it's been done, and done again. A more interesting challenge is interoperating with those systems. Samba and Wine for example. Projects that, rather than replace or extend user environments, work to make what environment you use less important.
And to quickly address the Gnome/Enlightenment dig.. Those two were never a good mix, and the story behind why RedHat brought them together is a long one that doesn't really belong here. The short story is making E the Gnome window manager was misguided, because a desktop environment needs a minimalistic window manager like KWin or Sawmill.
I hardly think sacrifice is necessary. Both desktops have a lot of great ideas, and both desktops have their share of bad ideas. I don't think a convergance of desktops is necessary, simply the ability to use pieces of both transparently, or at least without much effort. Then let the user decide which is more intuitive to him or her.
Interesting.. I certainly agree. Windows desktops are simply unsightly. Can't stand them. I actually get a headache after using Windows for too long (It's been suggested this is due to a poor refresh rate setting, but I'd rather believe it's Windows' fault
Not a waste of time if you want to add webbrowser capabilities to your application without writing your own. Not if you want to add a video clip into your powerpoint application.
JUST RUN IT IN THE WINDOW.
In X you can just make a window and run some program in it, talking with that program through pipes, or not talking with it at all. This is how gv and ghostview run ghostscript, this is how plugger runs shitloads of players, and this is how gnome panel (or fvwm panel, or a lot of other panels) runs applications. There is no equivalent in your Windows world because in Windows window system (irony!) is poorly developed, and users need to make shared libraries to do the work that is already done in X by window system and window manager.
Contrary to the popular belief, there indeed is no God.
Run it in a Window? WTF? Controls DO HAVE THEIR OWN WINDOW. But the window is embedded in another window as a control (or widget for unix guys).
TummyX, you don't know what I am talking about because you never seen a window manager, or plugger, or probably any other unix application. I don't think, you are intelligent enough to understand what I will explain in the following sentences, so please stop reading. For everyone else who still thinks that TummyX said something about Unix programs that is not false, explanation:
In X windows can be anywhere, even inside other windows, but a lot of applications also can be run in existing windows, being managed by other applications instead of window managers. Windows IDs are global for X servers, and have nothing to do with process contexts -- if some program wants to do everything in some window, that window is inside a window that belongs to another program, and X security does not prevent the access to the display, it just happens. This is how ghostview and gv work. If a process insists on creating its own window, other application can "capture" the window after it's created and put it inside another window that was created just to keep it there. This is how and a shitload of "panel-type" applications work. For this trivial goal there is absolutely no need to invade the context of one application with another, if the goal is just to "embed" one window in another. It was done so often and so easily, no other solution ever was necessary -- and for the slowest readers I repeat again: placing one window into another and running another program in it is NOT AN APPLICATION OF ANY OBJECT MODEL, EVEN THOUGH IT'S POSSIBLE TO MAKE A SYSTEM THAT WILL DEMAND AN "OBJECT MODEL" FOR IT. There are other, completely different cases where object models and OO interfaces are applicable, but they are much more complex, and in most of cases far beyond TummyX's level of intellect.
Contrary to the popular belief, there indeed is no God.
Creating a new language with different syntax every time you need a configuration file, or something as pithy verges on being ridiculous. And what better way of documenting a file spec, than listing (or referencing) its DTD ? XML is not let lex/yacc, and for many situations, I think (at least) it is a superior solution (in terms of allowing the programmer to do real work, not write another config parser).
DTD contains information that is already known to the programmer if he is implementing something using that model, so it's redundant for all purposes except validity checking (what is a pointless exercise in itself because no one guarantees that the data is correct after that). If XML solved a real problem -- how to describe semantics of the data as well as the structure -- it would be very valuable, but since it doesn't, in the end it's still the same programmer writing code that implements semantics. Same job minus a tiny, microscopic piece of it that non-XML programmer will spend on trivial operation of describing a structure -- however after describing a structure non-XML programmer immediately can add semantics-dependent code to his parser (and the result will be distributable and portable, as it will contain both syntax and base semantics) while XML programmer will write separate semantics-dependent code and attach it to a standard XML parser (what most likely will be too coupled with application logic and therefore won't be distributable). Same effort, more encouragements to pollute the code.
Contrary to the popular belief, there indeed is no God.
I had a dubious pleasure to implement a class that talks to IE on Windows and to Netscrap 4 on *nix platforms. The IE bit is about 40 lines to implement the class whereas the Netscape one is well over 600! And all it does is opens a browser and sends it a URL and tells it which frame to use. The Windows implementation is inherently more robust because of the simpler, more standard way of doing things.
Ever heard of
system("netscape -remote <whatever>");
? Yes, it will be faster than starting the first copy of netscape, and no, I won't tell you why. I will however tell you, why it uses more complex procedure of _finding_ Netscape -- it's possible that Netscape exists in multiple copies, and possibly is run by multiple users.
Contrary to the popular belief, there indeed is no God.
You think, netscape -remote will duplicate anything? It will create short-lived process that shares all code pages with original netscape, and just enough data to pass the request through X. Then original netscape process starts executing the request, and second process dies with almost no resources consumed.
Contrary to the popular belief, there indeed is no God.
Only works one way.
You need more one-liners to solve your nonexistent problems? (hint: netscape can manage frames using javascript in other frames)
Contrary to the popular belief, there indeed is no God.
What should I do access the DOM inside netscape as I would have if I were a javascript inside netscape?
Method 1: Write everything you want to do in javascript, put it into a file, feed the file into a new frame of netscape, using -remote, don't forget to close new frame from javascript wnen done.
Method 2 (what I always do): Use Netscape as your primary user interface, keep all your application logic in the HTTP server (possibly running on the same box, just for this application), use Netscape-specific "multipart-replace" server push of HTML to perform application-initiated actions without user input (ex: http://phobos.illtel.denver.co.us/hh?update=server push -- try to access that from multiple copies of Netscape, and don't press "Stop" -- it will update table in all clients when devices physically change their status).
Contrary to the popular belief, there indeed is no God.
That's a horrible way to do it. That's not what I want at all.
This is your problem. You never used Unix, so you can't imagine that things like this can be more efficient than masochism used in Windows. That's your loss.
Like the way I'd be able to control netscape would be different form the way I'd be able to control xemacs.
[x]emacs is in lisp -- this is why it has more complex interface. However you have guessed wrong again -- while interface is different, running gnuclient with a command line isn't any different from running netscape -remote, except that gnuclient can wait until editing is finished (what makes sense considering the purpose of [x]emacs).
Ofcourse, I was talking about inprocess embedding which is something you can't do with netscape at all.
In-process embedding of completely different application is a blasphemy to efficient, secure and reliable software design. Only such a horribly designed system as Windows could require or benefit from such a thing in user-interface programs. Only idiocy of unprotected memory and cooperative multitasking in early versions of Windows could cause that monstrosity to be born.
I wish, Netscape used plugger-like interfce as the only way to load plugins instead of shared libraries model, made for compatibility reasons -- it weakened the security model and decreased the efficiency of resources manageent. But no, they have made shared libraries primary, and plugger was written later to correct their mistake.
Contrary to the popular belief, there indeed is no God.
Don't waste the bandwidth -- I know all about those interfaces already, it's kinda hard to miss things that are repeated over and over by every "genius" that "discovers" requests-based OO interfaces. The problem is, you don't uderstand that they are simply not useful in situation, you are describing, with them and without them the task is equally simple (or complex) for the programmer or user if the rest of the system is properly designed. The complex interface that they add therefore is a waste of resources and possible source of reliability and security problems -- and in my experience most of time it shown itself to be exactly that. There are cases when such iterface can be useful, however they demand much more than what existing architectures provide.
Contrary to the popular belief, there indeed is no God.
You forget your history. That is how Compaq managed to copy the IBM PC Bios without getting sued. They got a "virgin", somebody who had never studied the inner workings of the Bios, to study its functionality and write it all down. Then Compaq took that info and made sure that their Bios did the same stuff.
At least that's what Cringely's book Accidental Empires said.
Not to get offtopic, but that's a cool book. I especially liked his classification of programmers that enjoy the high stress of pre-IPO companies as "stormtroopers". It's weak point is the Bill Gates bashing--go figure.
Keep it up! We've needed somebody to fill sengan's shoes for a while. I'm not sure why he posted so often so late, but it was cool to see tech news posted at midnight. Sorta like a bowl of Captain Crunch before you hit the sack (with ice cold milk--yum.)
This worries me.
I don't usually care much for the distributions fork, the BSD/Linux fork or other forks in the OSS world, but I think the GNOME/KDE one is different, it is extremely harmful. Different GNU/Linux distributions are based on the same code; BSD and Linux share the same design down to the details; but GNOME and KDE do not necesseraly even have the same paradigms. Interoperability and compatibility do not end in the toolkit level -- we see them now with the desktops' API, for example, and we will soon see them with Office suit file formats and protocols. Each day that passes adds more layers of incompatibility into the world, and the split is widening in spite of all the good efforts.
In a normal OSS world the two DE's would agree on a single design direction, or one of them would be willingly be merged into the other, but this is not pure OSS development: GNOME is funded heavily by Red Hat, and KDE by Mandrake/Corel, for example, and commercial interests are involved too. I don't mean by this that KDE/GNOME developers are more concerned with the interests of their sponsors than the community's; it's just that when your project is funded so heavily into developing all the cool stuff you always wanted, you'd be even less inclined than usual to abondon your project and help the other guy's work, for the sake of compatibility and interoperability.
I really hope I'm wrong here.
IMHO, Gnome would be better off 'lifting' ideas from OS/2 instead of Microsoft. The day I can right-click on a shortcut (shadow :)) and pull up the settings of the actual program and not the shortcut, set each window individually, and have links that know where you moved a program, I'll be a happy man
.
-- I care not for your foolish signatures.
I'm using the Enlightenment that comes with Red Hat 6.1, and I think it's the best Linux user interface by far. The Enlightenment folks know how to make things pretty, and usability isn't half bad. True, I still prefer the sleekness of my SGI box, but the Linux desktop has come a long way, and I'm no longer embarassed to show it to my friends. Now I tell them, "Look how cool this looks on my new 1280x1024 ThinkPad(tm)!"
Certainly it's far more elegant than KDE, which strikes me as "more Windows than Windows". I appreciate the effort that went into KDE, but its slavish imitation of Windows scares me.
I suspect that those who prefer KDE do so mainly because it's been around longer, and early versions of Gnome were horribly crashy. The Gnome I'm using now seems pretty stable - it's still not as rock-solid as KDE, but it's not half bad, and you can usually recover from problems without rebooting.
D
----
I don't think UNIX folks will ever be weened from a command line interface. I know I feel somehow constrained if I can't start typing in commands. It just allows so much more expression and power than a GUI ever could.
That said however I know there are sometimes that a GUI is more convenient, especially when just learning an app. I know many people start out in AutoCAD using the buttons & menus but then move to the command line as they become more familiar with it.
Until GNOME & KDE apps are completely decoupled from their interface and allow plugging in scheme or perl to control them I won't be satisfied.
One interesting thing is several groups attempting to apply XML to UNIX. Somehow I am intrigued by an app that combines Bash with Windows Explorer
Scuttlemonkey is a troll
There's also other key features of COM which make building HUGE operating systems like Windows 2000 and Office possible.
:-)
This isn't a flame, but frankly I'd rather go slowly, get it right, and NOT wind up with a huge operating system like Windows 200. ***But Still*** have all the functionality. In fact, have more functionality, and more reliable by virtue of being built on a more solid, tighter base.
For me, this means one thing: build it on XML. Toss both COM *and* CORBA: both of these are first-attempt kinds of thingies. One suffers from various kinds of tumours and the other suffers from terminal bloat. Time to back up, do it over and do it right. Gnome ppl: listen up - CORBA just isn't appropriate for client-based componentization. KDE ppl: listen up too - kparts is an ok concept and DCOP is a more lightweight transport than IIOP (*grunt* *groan*) but XML-based interface definition and XML-based interapp communication is going to make both of them obsolete. What that means is... be prepared to rewrite the component/interapp layer yet again for KDE 3.
Sometimes it takes a few tries, but when you get it right, it's right. COM isn't right. Neither is CORBA. When something in an OS is not right, you're morally bound to toss it (really). XML is (((probably right))) so let's get some prototypes happening, um, yesterday.
Life's a bitch but somebody's gotta do it.
This should NOT be a suprise to anyone who read the Halloween documents.
There's nothing wrong with copying the best features of commercial software into a free (beer/speech) product. If you've actually bothered to read the story on ibm's site, it only quotes Miguel de Icaza saying that he simply copied Excel's best features, when he wrote gnumeric.
Microsoft itself has commented (in the aforementioned halloween docs) how open source projects tend to copy the best features of commercial products. This is not news.
--
The problem is that we are trying to hide the complexity ("you the user are too stupid to learn so we won't ever give you the chance to"), where instead we should be making the parts more clear.
The GUI could be made to be a MAP, designed from the point of viewof a traveller arriving in a big, foreign city.
The first thing a traveller does is buy a map. We should make the GUI like a map... you can see the major features at a glance, and find where to go. And it should be a fully detailed map -- maps can be very big and complex, and still make sence!
GUI has been a misleading term which has steered our thinking in one direction, ie. that little coloured buttons means 'graphical'. Think instead of MUI or "Mapping UI", which, like all maps, uses graphics to give you a good general picture with clear and easily identifyable detail.
Maps are drawn at different scales, showing continents, countries, cities, streets, and individual buildings... do we not find similar hierarchies in computing? For example, one difficulty with CLI is that boot scripts, device driver source code files, theme files and the Gimp are all just files on the disk. There is no sence of depth.. not idea that you, as a beginner, will not be interested in init scripts, and no idea what they are when you do want to know.
If you're typing, why would you want to reach for the mouse just to copy/cut/paste something? I'm not saying that there's not a workaround under X, but I don't think yours is it.
Cheers,
ZicoKnows@hotmail.com
But windows IS UNIX. At leats with cygwin (It is UNIX certified, and it is GPLed).
SysV-init for NT. The dream for an admin.
--The knowledge that you are an idiot, is what distinguishes you from one.
--The knowledge that you are an idiot, is what distinguishes you from one.
> ...at 1:22 AM and the next morning one at 8:42 AM. That's more than 8 hrs...
Yeah, whatever. I'm glad you are not building nuclear power plants...
Later, Jens.
I am German but my email isn't...
Of course, it goes almost without saying that even better than designing an office suite with an improved UI is something better than an office suite, period. I only lament that, if a radical new system not unlike Cyberdog were to be developed within the bazaar of the free-software world, it would take years-- perhaps decades-- for it to reach mainstream use. Hence the dilemma.
." ;-)
Regarding Tog or Nielson's help: All I intended to suggest in the way of assistance was minimal commentary, probably critiques on proposed interface designs. Of course it's assumed that whoever is doing the bulk of such designs will be well read up on the literature of the field. (So that way, the UI gurus can't just say, "All this is covered in my book . .
It's all a matter of perspective. Just imagine: the coders writing these new interfaces are probably going to be using Emacs. And of course it works fine for them, but . . . you can see how there's a wee bit of a disconnect there as far as UI design paradigms are concerned. And that's why some sage words of advice from someone outside the coding trenches (and that covers most of "the community") would be invaluable.
Additionally, the Cyberdog tale really pointed out: it would be very helpful to the development of Gnome/KDE for the top architects to actually see some of the state-of-the-art technologies out there. I mean, half the features in Gnumeric are there because Miguel happened to have a copy of Windows and Excel. If he were to have a Macintosh running Cyberdog, or a PC running OS/2, or whatever, is there any reason to believe some of the good ideas in those systems would not find their way into Gnome?
iSKUNK!
but I haven't seen much UI innovation recently
That's because you didn't go look for it.
Morphic
Native Oberon
Bricks
Merlin
Photon
There's more...
To the editors: your English is as bad as your Perl. Please go back to grade school.
You're right to say that no GUI will solve the lack of an appropriate computing paradigm. You're wrong to say that it hasn't been invented yet. It has - look at Squeak, Native Oberon, Self, and many other computing systems (yes, even those that have been traditionally shunned by engineers as "mere research projects"). In particular, look at the Review subproject of Tunes. There's a lot of new stuff out there, and much of it is great. Just because it's not mainstream doesn't mean it's not better. (Just look at Lisp...)
To the editors: your English is as bad as your Perl. Please go back to grade school.
But there's one thing that I would like to comment, you said:
I have two problems with this sentence. First, I don't think unix was a hack, it cleary was not designed for solving the same problems as win32. There are many things which are more hackish in nt than in unix, mostly the bluring between kernel-level, UI-level and "server"-level (IIS etc.).
The remote managment capabilites of nt-servers are _bad_ and everything microsoft has done to ease that situation was very hackish IMO. And from my experience the urge to have good benchmarks seems to have negativly affected the stability of the whole system.
In my opinion a server should have a cli which is capable of configuring the whole server, so I am able to manage it remotly through a slow link and to ease automating of tasks. For example adding 1000 users with a generated password in nt seems to need more skills than in unix/linux, at least I didn't find a way to do it. I believe it's possible, but the way to achieve this is highly non-intuive IMO.
And there's my second point, more fundamental.
Things like ActiveX, COM etc. shouldn't be seen as part of the OS. They should be OS-independant (yeah, nice dream). It also seems to have a very negative impact on the overall security if this very complicated and code intensive infrastructure is tied to every service reachable through the internet. Take a look at bugtraq/nt-bugtraq for the exploits which habe emerged in the last months (rain forest puppies posts are very informative).
Well, neither me nor dufke said anything which goes so far as you tried to picure it.
;-).
And - nt cannot *be* unix, if it could we had apache final on nt for a long time. NT *pretends* to be posix compliant, but it isn't.
I'm also not saying that something like iis should use COM. I just get the feeling that COM/ActiveX isn't mature and stable enough to be used to tie servers (and client-software!) so closely to the underlying OS.
And I assume IIS *is* implemented very low-level into NT and IIS is designed for speed and pays a tradeoff in overall stability.
For example I administer an nt-server with IIS sitting next to a linux server with apache.
Both combos seem to have problems, there seems to be some bug in my apache which sometime causes one apache process to consume 99% of the cpu time without doing anything (and without being shot down). What happens is the system gets slow but still works, and killing the offending process cures the problem. OTOH IIS (or some software we use with it) has some problems too, but IIS manages to render the whole system unusable when this occurs, it fails to serve any website at all, one service after the other dies a painfull death and in the end we have to call the provider to reboot the machine manually.
Bugs occure in _every_ software, but MS seems to have choosen a design where a small bug more often leads to heavy problems.
BTW: AOE II starts to crawl on my system after half an hour of gameplay
(evil being subjective to my own libetarian views) Just because someone is evil doesn't mean that they can not make a good concept. Microsoft is one way of looking at it, but then again so is AT&T - anyone remember Bell? Microsoft did make Excel a standard... whooptie. To say that the entire gnome project will go the same way is quite extensive Microsoft may have good ideas, eg the libraries for IE and cross compatability makes it easier to deploy desktop shit on the win platform. Miguel de Icaza has made such a thing possible on the Linux/X11 platform. Unfortunately this never could happen under *nix because old proprietary sets of libs were just a pain, and expensive. Anyone remember motif? Microsoft has a good idea, shitty implementation (what else is new) - but this is not a new concept. Dynamically linked libraries have been around since *thinks* I can't even remember when. Don't worry, GNOME is still fighting for 'good' in the 'good vs. evil' battle.
No, not B2/KDE! At least when I compiled it the default was Platinum, hardly perfect, but more "generic" than B2. The problem with B2 is that they've hardcoded colors into it. This may look okay with the default color scheme, but its radio buttons look like crap with the Desert scheme. kStep is okay, but mosfet needs to fix the slider widths, then it will be perfect. Marble and System are pretty cool if you like pixmapped themes, but they still look funky when using something other than the system color scheme.
A Government Is a Body of People, Usually Notably Ungoverned
One must admit that Microsoft have it going on when it comes to ease-of-use and app consistency. If you want to make Linux easy-to-use, make it work like Windows.
I recently installed Corel Linux on my desktop computer at work. What a charm to work with! I was raised on Slackware back in 1996 and have been using Slack and RH ever since, so just clicking on Windows Network and seeing all my servers in the point-and-click-and-poof-its-mounted interface was a relief. But all that ease-of-use comes at a price: the computer it runs on only (!!) has 32MB, and Corel makes it swap _a lot_. Just opening a telnet window and using Netscape seems painful.
Windows has an outstanding app consistency too. Always CTRL+C to copy and CTRL+V to paste. Thats just an example, but it's more than I can say for Linux.
Now if only M$ could design an easy-to-use, consistent web site. Have you browsed their website lately? Very difficult finding stuff in there!
Please explain to me how I can run NT/2000 with none of the GDI/GUI stuff. Lets say I have an computer with minimal resources and don't want to waste any overhead with any GUI stuff (since in the case of a server it's pretty much a complete waste). How can I run NT (his modular-well-designed OS) without the gui ?
***How long till GNOME or another open-source desktop is the recognized leader?***
***Um.. until they start being original (and good as well). If you think about it, Gnome is copied from MS is copied from Apple is copied from Xerox... each company has just added a little piece, and many of those pieces were crap****
Hmmmmm... Ths one always puzzles me... lets see.. when will Ford be recognized as a leader in the automotive industry.. when they start building something original...yeah... that old stodgy way of building cars with 4 tires and an engine in the front has to go... they need to build cars with big ballons as tires and put the engine on the roof...then invert the seats...yeah...that'll rock...
Maybe some ideas are just plain sound enough that it's okay to use them..sure you can always IMPROVE them... but why does something have to be original for it to be good... heck.. Linux is a Unix clone for petes sake.. nothing original there.. (I'm not talking about the development process... just the OS)
I would ask everyone who claims that we need something original to feel free to expound, in detail, with their ideas. It's easy to throw around these statements, how about backing them up with concrete ideas.
I have friends that have been hired by MSFT and they've described the component based architecture and the reasoning behind COM, COM+ and DCOM, and it was rather interesting. I was also surprised at how long it was taking *nix developers to create significant component based applications especially since most of COM (at least originally) was copied from or inspired by CORBA. Pity that COM predates CORBA by at least a year then... COM = OLE, or didn't you know that? Simon
Coming soon - pyrogyra
You haven't been paying attention, have you?
As with anything modeled after MS products, it is feature-rich enough to do both simultaneously!
"It is almost complete," said the dark figure in his leather office chair.
"Soon those open source fanatics will be drawn to GNOME, and we will control them, just like we control the masses, this open source thing will cease, and once again Microsoft, in all its closed source glory, will rule the world! MUHAHAHA!"
The Balmer clenched his fist and gnashed his teeth as he thought about invading the open source community. Breaking them down and making them use Microsoft sanctioned software and user interfaces, this Linux thing was getting to be bad for business and it had to be stopped, quickly.
"With Miguel de Icaza safely under our control from that thought research project we did a while back and having him copy Microsoft style interfaces, we can begin expanding the project to other leaders in the open source community."
"Sir," one of the millitarily dressed officers spoke up, "we have confirmed Linus Torvalds is also under our control, getting him to work for a proprietary company was the test, and it was successful."
"Soon, RMS will have quite a change of philosophy and that General Public License will become the Microsoft Public License," The Balmer continued "ESR's Geeks with Guns will mysteriously transform into Wierdos with Windows, there will be no stopping us!"
Will Microsoft rule the world? More importantly what will happen to RMS's singing career? Tune in tomorrow, same world domination time, same world domination channel!
-- iCEBaLM
You're right, but these are really just niggling application-specific things. All in all, the Windows interface is pretty straightforward. As far as WIMP (Window Icon Mouse Pointer), you "ain't" going to get anything really novel. Sure, shuffle around icons and textual labels...but it's still all WIMP, whether it's Microsoft doing it or GNOME. Actually, I think that the start menu and taskbar were designed somewhat cluefully. The edges of the screen are visual hotspots that are very easy to navigate to. What would you suggest instead of a start menu? Launch folder with icons or something? That was Program Manager in 3.1. There really isn't going to be any novel in WIMP. It's been pretty much explored to death.
It's 10 PM. Do you know if you're un-American?
I bring this up with miguel every chance I get. Their "inspiration" from MS is one of the reasons why I stay away from gnome when I can. It would be really cool if a group of people who KNEW about good UI design could get together and do something original. I would be happy to help with both programming and design.
All day every day.
I used KDE as my promary environment during early 1999, becuase it gave very convenient access to applications, although WM would have done a very similar job.
Recently I have switched to Gnome for both my home and work machines, mainly for the ability to swallow a graphical pager and task list on the panel. I didn't have the real-estate for KDE's separate task list. A pop-up task list on the desktop is not bad, but I don't find it quite as convenient.
Of course give me a machine with only 16 or 32M RAM and I'll be back to WM straight away. Both the others really need 48, or the paging gets annoying.
I subscribe to the Gtk mailing list Redhat provides and I've overheard a large number of conversations to the effect of... if Swing (part of java 1.2) has a certain widget or feel Gtk will soon follow suit. It is my impression that Gtk authors seem to hold Java in very high regard. I'm not sure if this is because Java is OO or the GUI is clean/nice. Gtk GUIs may be like Windows, but they really want to be like Java/Swing.
You have to use KDE in Mandrake? Since when? And what's that huge drop-down list of desktops for on the KDM login screen?
--
Win dain a lotica, en vai tu ri silota
I think it's great he posts some articles late at night. For those of us who work night shifts, or fro the overwhelming % of the planets population for whom it is not late at night.
But then it's not new !!
Shortly after going managerial for a large company, I recieved the product release schedule. Not believing my eyes, I asked my supervisor, the lead engineer, when I was supposed to sleep. He looked at me, and with a perfectly straight face, said "What, you were lucky enough to get sleep in your job description? I had to fight for over a year to get bathroom privledges! Davis, the guy with the huge pile of half empty Mountain Dew bottles in his cube, has been whizzing in his empties during compile cycles for a month! You don't even want to know why his filing cabinet is sealed with duct tape.'
.sig: Now legally binding!
last comment about NT being one exe
;-)
No, no, no, no! That is not what I meant!! I meant that there is one KERNEL executable. The end-user can't recompile it. And I was wondering whether it was the same for the server and the client versions. I do indeed lack knowledge of the deeper internals of NT - I have mainly coded for the 'consumer' versions (3.1, 9x). When I think windows kernel, I think 'kernel32.exe' - but maybe it is organized differently on NT. In that case, forgive my cluelessness. And anyway, even on win9x, it is separated into kernel, drivers, gdi, user, shell and apps - the shell being explorer or a replacement. I am well aware of this. (And aside: Crashing the GDI on win9x in general has the same effect - from the users point of view, as crashing the kernel. Is this different on NT? Real question, not rhetorical).
COM is in the kernel.
I never claimed it is currently in the kernel of winNT. I was talking about a possible UNIX implementation of it. Perhaps I should have made that clearer.
See, whenever you can't explain why something microsoft makes is fast and works well, you make excuses. Hey, microsoft shoved it in the kernel! microsoft makes secret calls to MakeThisFast** APIs.
Wait a moment. I use windows. I like it. I'm posting from it. I code in it. I openly claim MSVC to be the best IDE. Yes, a lot of the comments in this thread were just ms-bashing, but I did not intend mine as one. I agree with the greater parts of your posts in this thread, they are very insightfull and a refreshing break from the "l1nux r00lz" stuff. I just thought platypus reply to calling Unix a hack was justified.
As for the other myths... I hope that wasn't meant as a reply to the content in MY post. Age of Empires would be nice though... eh nevermind.
dufke
-
__
Comment submitted. There will be a delay before you understand what you posted.
I think the truth is that Windows was designed for the desktop, and Unix was designed for servers (and cli clients). Pain results when people try to cross the line, that is windows as server, and unix as gui client.
;-)
However, I'm not saying that unix can't be good on the desktop. The kernels (Linux, *BSD, solaris etc.) are a strong foundation, and it is certainly very highly possible to build a nice, functional, well-performing GUI on top of a Unix kernel. Some of the low-level graphics work might have to be done in the kernel, but it should be optional! I don't think a GUI belongs on a server. There is nothing wrong with graphical server management (like NT), but the gui should be on a client.
This is win2k's problem - it tries to combine server OS and GUI client, not just in one codebase, but in one executable (correct me if I'm wrong... are the Enterprise Server executables different, or is it just config, like in NT4?).
I have no problem with things like COM (support for it) in the kernel of the client, if it needs to be there to improve performance, and the kernel parts are kept simple enough to be kept bug-free (ha!).
Unix is not a hack, it is a good design. But most current Unix GUIs are Uglyhacks(tm). Windows is not a hack, it is a good design. But using it as a server is an Uglyhack(tm). (Maybe it could work as well, if they used some more BSD code.
dufke
PS. To the guys preparing to flame me for saying Windows is good: Drop it. You will only prove that your mind is as closed as your source is open. DS.
-
__
Comment submitted. There will be a delay before you understand what you posted.
I think we're all firmly entrenched in the Windows paradigm. We're in a 10 year rut. There may be a better method of working sitting right under our noses and no one will spot it because they're blinded by the windows.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Um.. until they start being original (and good as well). If you think about it, Gnome is copied from MS is copied from Apple is copied from Xerox... each company has just added a little piece, and many of those pieces were crap.
The GNOME desktop is great, but it seems when it is finished we will just have windows running on a more stable platform - with a couple of extra bits (I'll have to try Nautilus before passing final judgement, however).
IMHO, they really need to put some originality and creativity into the project. Some of the Linux apps out there spring to mind - LyX and Screem are the only ones I can think of at the moment.
I guess they're still trying to make Gnome a stable base at the moment. I would really like to see it turn into the hacker's GUI - configurable and extensible, but easy to use. Things like the integration of all the powerful Unix file utilities would be nice, it's a shame to have such powerful tools but have to be a hacker to use them.
OTOH, Gnome may not wish to be the "recognised leader" (and all the configurability and power in the world may not put it there). After all, a bunch of hackers is writing Gnome, any original bits are probably going to be good for them - but not necessarily for the average user. How does the Gnome team define good? Easy to learn? Easy to use? Flexible and powerful? Do they care if it's the most popular? Or if it works well?
I know which I'd prefer.
...don't confuse being better than X with being good. Don't confuse the fact that you are already familiar with it to being easy to use for those who are not. I love X, but from a useability standpoint it's the bottom of the pile, and only that fact, and the fact that many of us got used to MSWin before we switched to linux (even a bad UI seems good once you get used to it) could possibly make MSWin look like a good UI.
The Interface Hall of Shame
=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Friends don't let friends enable ecmascript.
Linux promotes diversity due to its open-sourcedness. There is not and ought not to be any "standard desktop" system but, rather, a standard desktop protocol whereby any desktop system my interoperate with another. Also, to anybody who should complain about GNOME offering tools too similar to Microsoft's: what is the problem with copying features? Linux copied many of the features of UNIX, CORRECT?. All creative and new (or old) ideas are based on even older ones. Is "Computer" another word for super-calculator? of course not -- a computer can do more. I encourage such projects to do more not only by copying but adding their own unique features -- of which others may copy from. If we did not copy there would be many non-standard protocols. I certainly subscribe to the idea that if something works -- leave it; if something doesn't work -- fix it up yourself: something open source licenses promote.
To me, the whole point of GNU/Linux is that it is basically the same as all of the commercial options. It's just that we get to change stuff if we want to and that it's cheaper to obtain.
Will GNU/Linux ever come out with stuff that's different from that of it's competitors?
Maybe.
Will it copy stuff from it's competitors?
Yes.
It's easier/cheaper to let someone else design something and then design a product that works just like it. That's why PCs are so popular (and everywhere - you don't even call them IBM Clones anymore..just PCs). IBM designed an architecture and then there were copies made of it.
Welcome to Slashdot. Please do not feed the trolls.
Withdrawal before climax is very ineffective and those who try this are usually called "parents."
Hey, now that's a cool idea! To some extent, the organisation of directories creates a sense of depth (i.e. config scripts are in /etc, so if you're a beginner, you don't go there) However, that sense of depth tends to show up to experienced users, pretty much defeating the purpose.
Part of the problem, as near as I can see, is that Windows (particularly, but also *ix) creates a user's "home" in the middle of the file system. In other words, your top-down view is from the middle of the stack. It's particularly bad in Windows, where your desktop, which appears to be _above_ the file system, is actually stored in the middle of it.
But a true mapping-style interface, that has potential.
"People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
Simplicity Limit user options, eliminate fat. Don't give users 10 ways to close a window, for example. I've always been annoyed by the fact that you can close a window that many ways. Another example: On a GNOME/Enlightenment desktop; there are too many ways to launch a GUI program.
Huh? Why?
This sounds like a personal issue rather than something that has any reason behind it.
Are you also annoyed that you can choose from well over ten different ways to get to work each morning? Do the dozens of lunchtime dining options you face each day cause you to lose sleep? Is it time for a jihad against Heinz's 57 Varieties?
If you do indeed have a good argument to support your statement I'd be very interested in hearing it.
UNIX IS NOT FUCKING WINDOWS
I sure hope not... It's gonna catch a nasty cold if it is.
You should never take life too seriously - You'll never get out of it alive.
- read his books, at least Tog On Interface
- THINK. What does all this mean? Why was he testing on smart, clued people who'd never seen a computer before? Is this really 'design for idiots' or is it actually 'finding what conclusions are typically drawn by an untutored user'?
- USE it.
I'd like to see more X apps use Mac/Win mouse text selection behavior, particularly Mac type drag and drop of selections with the little visual cues to what's happening. Not because this is 'like what I already know': I'm equally willing to learn other rules, but Tog-ized text selection behavior is just better thought out, and quicker to understand, due to smart assumptions about what happens when you do things.This is a way Tog can help immensely without even paying attention directly. I wonder, if the wish is for Tog to actively help out with UI, what is he expected to do? "Help make three-button X text handling more intuitive!" "Help make our Excel-type button bar more intuitive!" Sometimes the answer is "You can't."
I've personally had experience with advanced UI and seen what happens. It was a couple years ago, and I began using the now-abandoned-by-MS-pressure Apple internet suite, 'Cyberdog'. This was revolutionary in several ways- it was massively object-oriented, using OpenDoc (and many parts were released for it, too- few _containers_ tho) but what I am referring to is specifically the interface aspects of it, and what they meant.
Cyberdog let you abstract all sorts of internet resources into an iconlike object. Email addresses would, when doubleclicked, make a 'To:' email to the address, or could be dragged into text or a header field and write the required text- basically everytime you did something that seemed plausible, it did what you wanted. FTP site addresses could open on the desktop like a Finder window to a remote site, or could be dragged to browser windows etc etc. Web bookmarks, likewise- telnet never quite got debugged but tried to open a terminal window- and all of these could exist as a simple bookmark file anywhere on your HD, complete with distinctive icon- or it could be dragged into a container object, the Notebook, a yellow-lined window with a sort of tree-view structure where you could store _lots_ of these references, or indeed aliases to anything else on your HD you wanted.
The Notebook container could also be used as an object- and this is where the user interface started to become unexpectedly powerful.
You _could_ convince notebooks to hold links to other notebooks- but this isn't what I mean, it's more of a top-level organizing tool. Go back with me to the peak of Cyberdog community- people were interacting on a special Apple Usenet server where you could post binaries, including Cyberdog rich text. What that meant was this: you could drag images etc. into your message and they'd be displayed inline. You could make a rich-text stationery file to use. People developed interesting sigs with nicely crafted graphic elements. The bandwidth issue was confronted and basic guidelines evolved- all nice but relatively unimportant, until one day someone asked whether anyone had links to Cyberdog resources. No such resource existed. Within 48 hours, a huge resource had emerged from the community without effort or any significant intent to collaborate. It was a Notebook containing hundreds of K of links, and no one person had to do all the work. Here's how it happened.
Notebooks can be dragged into rich-text messages, you see. This one fact, combined with the existing behaviors of drag-and-drop and the ability to squirrel away internet links in all sorts of places with just an easy mouse drag-and-drop, created an environment where this Cyberdog resource _exploded_ into existence. One person, I forget who, answered the request by saying just "I don't have one, but here are some links" and dragging a few related links into a fresh Notebook- and dragging that onto his message and sending it out to the newsgroup. Suddenly everyone had a copy of the Notebook (see any parallels with the Linux 'many eyes make debugging shallow' concept?), and several people added what links _they_ had handy, and dragged their resulting notebooks onto their reply messages, and sent those to the newsgroup. Everyone got those, and several more people pitched in, adding still more links, and one person took all the notebooks and dragged the contents of all onto one notebook, and spent a couple minutes making a folder arrangement to organize the data a bit, and (you guessed it) posted the result to the newsgroup...
The interesting thing about this is not the scope of the resulting data- any one person could put in a few weeks of not-so-hard work and track down all that, or most of it. It's not even the fact that all this happened in days. It's the undeniable fact that all this happened _effortlessly_, it just sort of happened without anyone intending it. Parallel, OSS-like free collaboration over the Net happened _unthinkingly_ because of specific interface features of this particular software, and I was there to see it and recognize what was happening. I'll never forget that. UI can MAKE THINGS HAPPEN, even enable things that won't happen otherwise.
I'm posting this in Netscape. Bill Gates cut a deal with Jobs to endorse IE and kill the Cyberdog/OpenDoc projects. With OpenDoc killed, the companies trying to write parts for it couldn't survive and had to completely redesign their products or die- I don't know how many are left. It's said that one of the reasons OpenDoc was killed was that, despite its flaws (slow and unwieldy and beta-quality) it was a full-on attempt to entirely replace the Office Suite paradigm with a 'building blocks' object oriented paradigm- and Certain People couldn't allow that to happen. Apart from that, it _was_ different though curiously easy to understand and work with- it was always puzzling people until they 'got it', in a flash of intuition, and started to work with the new paradigm instead of against it. You were never in a mode, really- instead of being in 'PowerPoint Mode' you might be drawing a picture or writing a letter and then decide to drag in a movie or something, and suddenly your letter contained Multimedia, without your ever having to run a 'Multimedia App' per se. This freedom was hard for people to get used to- at any moment you could do whatever, and you don't _think_ in terms of that without a bit of enlightenment. What Office user would think of sending someone a chart which, when the recipient looked at it, would show current data live off the Internet- dynamic, in other words? What Outlook Express user would think of sending someone, not a note saying 'Please meet me on server XYZ' but a window containing a telnet link to that server, ready to log in from the message window?
All this existed _years_ ago. It existed in OpenDoc, in Cyberdog, it was all available to the sufficiently ingenious hacker, or indeed to Joe Average half the time (the more spectacular stuff, as always, would require a bit of effort). And it was killed, by Bill Gates and his people- because in many ways it was BETTER than Office- and, perhaps, because it was just too far ahead of its time. Sure, it still used text and radio buttons and pushbuttons and checkboxes- in fact one of the most successful OpenDoc parts ever made _was_ a button, 'Rapid-I Button', that contained its own little interface builder to help people link it to actions and events- but it was so far beyond Office that few people ever made the conceptual jump to realise, "Why couldn't I just have everything available to me all the time, but totally made up of component software so I have complete random access to whatever functionality I want, and never bother with anything I'm not actually using?"
I'd love to see a Slashdot poll on "Do you know what OpenDoc is/was?". There are some areas that are _so_ open to grow into, things which only Linux could do because only Linux is not completely run remotely by Microsoft. Damn it, Cyberdog/OpenDoc _existed_ and it was killed off because Jobs needed to cut a deal with Gates and endorse IE to start Apple's turnaround. I know it worked and am not arguing with Jobs' decision (except to loathe it forever), but it is wrong to allow Microsoft to define computing forever, wrong to allow them to shut off anything that might change the computing paradigm, and I might even suggest it is wrong to mimic them and further proliferate what they have wrought- except that what else is there? Monopoly power works.
Nothing lasts forever, and I can only echo Elvis Costello's bitter lyrics:
The whole point of a GUI is this: I start up an application I've never used before, and it works the way I expect it to; it looks familiar, little guess work, I can quickly begin using the application in the way it was intended. Keyboard, mouse, file access, printing, all the same. Mac has this, Windows has this. Linux? The user is at the mercy of the developer. The value of choice associated with the Linux desktop is a complete facade. If the app was written using the GTK, it will only interact with the Gnome desktop, Gnome File access, Gnome help browser, and it will only listen to the Gnome configuration. If it was written using QT, I'm most likely forced to interact with KDE File manager, KDE Help browser, KDE configuration etc... I have NO choice. And if it was not written in either? I'm screwed. Each new application is a whole new set of problems for the user.
It's funny that if people need a good example of an Intuitive and mouse friendly desktop, they need look no further than WindowMaker. In fact, the state of the Linux Desktop would be downright pathetic if it was not for the wonderful work coming out of the WindowMaker and GNUstep camps. (That config util is a work of art! And the file manager, sexy! Now there's the compelling reason I need to get my Mom to switch to Linux)
Perhaps if the Gnome and KDE developers had to eat their own dog food and not be allowed to use the command line for ANYTHING, we might start to see some of Linux's desktop problems solved; less theme support, and more functionality. I know that they don't, because of the little things; you can't search through list boxes, list views, and tree views by typing the first few letters of the thing you're looking for. Such a simple yet vital feature, completely overlooked. How about screen corners and edges for optimized mouse use? Hardly utilized (Gnome not at all, KDE a little) Sure, these things are trivial to implement, but that fact that these things were overlooked in the first place means that we've got a long way to go before we see a usable Linux Desktop.
...
(I don't mean to come down so hard on KDE and Gnome, they both have many great features. I just think that some basic, fundamental functionality has been overlooked. A single point of configuration for starters...)
ENDUT! HOCH HECH!
Xerox invents an interface, Apple improves it, IBM and NeXT sit down and creates variants on that, Microsoft takes the IBM CUA, tosses in some NeXTisms, and spends millions of dollars on interface testing to make it easy to use.
Guess what? Nobody's set up usability testing labs for KDE or Gnome yet, and depending on people comfortable using Unix to improve a UI is insane. We don't think like J. Random Luser, and we can't afford to hire a bunch of them to usability test. And remember logic and consistency are not always optimal for UIs -- see the jargon file entry for "miswart".
So even if the result is that we add nonoptimal features, it makes sense to copy Microsoft's UI for now -- it means we won't do anything to make it harder to use than Microsoft, and will at least have an easy learning curve for people switching.
Steven E. Ehrbar
Lessse -- Close button. Double-click on control menu. Control menu + Close. Alt+F4. Alt+Space then C. Right-click on taskbar + Close. Ctrl+W. Right-click on titlebar + Close. Task Manager.
That's nine ways to close a window in Windows, and there's probably one more. I have to admit that I've used all of them at one point or another. Which is not to say that we shouldn't have "simplicity", just that when it collides with "uniformity" or "elegance", or just "logical", one of the latter choices should probably win.
--
Business. Numbers. Money. People. Computer World.
It doesn't matter if there are 100 of ways to do something. But a user shouldn't be presented all of them and all of the 4711 other features as toolbuttons and 100s of other GUI thingies. Until now, desktops has looked like rooms from the 16th cenury. Clouded with small widgets. Simplicity in look together with ortogonality in function will give a much more user-friendly user interface.
The MS user interfcae is clouded with new graphical features and toolbars. It is NOT user friendly. It is viewd as such only because of the _huge_ user base who can help newcomers learn the howto's and hownotto's. The Mac UI is very user friendly. Unfortunately, it is in fact expert hostile.
The realy hard thing is to develope a user interface that is both newbie, user, power user and expert friendly. And, very little research have been done about merging those requerements...
Happy hacking you UI hackers! And remember - simplicity in functionality is much more important than good-looking widgets!
--The knowledge that you are an idiot, is what distinguishes you from one.
--The knowledge that you are an idiot, is what distinguishes you from one.
It's a really bad fix to be in. It's kind of like asking yourself, at what point in the last century did it become too late to replace the now-ubiquitous and not-very-wrist-friendly QWERTY keyboard layout with a better one (Dvorak or otherwise?)
Perhaps the answer might be to develop two completely different UI designs, one chosen at compile time. One for MSOffice veterans, and one for those who want something better. I really think it would be a shame to make people who have never used MSOffice basically learn the MSOffice interface (or a sufficiently MSOffice-like interface) to get up to speed on their new cutting-edge free-software office suite.
iSKUNK!
Limit user options, eliminate fat.
Aaargh! No, no, no! You can eliminate fat without eliminating choice for the user! If your goal is to lose 40 pounds, you can go on a sensible diet and lose 40 pounds of fat, or you can go on a fad diet and lose 10 pounds of fat and 30 pounds of muscle.
If you look at the camera market, you'll see that most cameras are simplistic one-button affairs. But complex cameras are still available where the user has every option available. The poster seems to be advocating making professional photographers use disposable Kodak boxes.
Sure, there are dozens of ways to close a window. Just last night I had a program freeze up on me. "alt-f->x" didn't close it. So I clicked the close button. It didn't work either. So I used xkill, that worked. The point is, if there was only one way to close the window, I would have had to shut down the computer. Hardly a user-friendly approach.
Some groups just have to sacrifice for the common good.
But Linux/Unix/X/Gnome/KDE is not a collectivist utopia. There is no benevolent dictator omniscient enough to know which products get the axe and which don't. Like it or not, users and developers are individuals. And like individuals they each have their own wants, desires and goals. Your ideas are no more important than theirs.
Funny thing is, those who announce "some groups just have to sacrifice for the common good" never offer themselves up as the sacrificial lamb, which always leads me to speculate that they think themselves worthier than everyone else.
A Government Is a Body of People, Usually Notably Ungoverned
Am I the only one who thinks that "copying" some of these GUI concepts is acceptable in the case where one "construct" (for lack of a better name) is noticably better than any other?
It seems that we have a fairly efficient contruct for every type of data necessary. Radio buttons and list boxes work well when one is to chose one choice out of many, checkboxes work great for simply toggling a yes/no value, and a button is. . . well, a button. These seem to work perfectly for every situtation I can conceive.
Someone posted in a patent article a while back that IBM owns a patent on pressing a "more" button to scroll to another page of text, and Microsoft owns one on scrollbars themselves. What would we do if we were unable to use either of these? There are certainly situations in which one solution is more effective than all the rest, and this is certainly one of them. It's a good thing that those are all held as defensive patents.
It seems pretty rare that these aren't suitable for the job. The only innovative control I've seen recently is IE 5's address bar (where auto-complete drops down), but that just seems to be a logical progression from the combo box.
I've also heard many people complain that "drop down and expand to the right" type menus - like the windows start menu, which pops up and selected categories are displayed to the right - are a poor way to handle such an event (many comments in the interview with the UI guy ranted about this). Then will someone tell me what's been proposed as an alternative to such?
Maybe I'm just too closed-minded, but I haven't seen much UI innovation recently and I think the Gnome - and any other desktop for that matter - is perfectly justified in copying.
-- Imagine how much more advanced our technology would be if we had eight fingers per hand.
Thing is, though, that the GNOME and KDE people are frequently copying *bad* things from Microsoft. Something may be completely trashed at the User Interface Hall of Shame--and rightfully so--and then it shows up in a Linux desktop environment.
I know that everyone has probably heard this a thousand times by now but...
You don't have to run the Gnome desktop to run Gnome apps. Gnome is more than just a desktop environment, but an suite of libraries and applications which (hopefully) make a programmer's job easier and tries to enforce some uniformness in user-interfaces. Same with KDE. There is *nothing* stopping anyone from using Gnome apps under KDE or any other WM or desktop.
As for copying the look, feel, and functionality of Excel or Word, etc.. I think that this is a good thing. These are very full-featured programs. Plus, if we want secretaries and our parents to someday use a free-unix, we'll need for them to make a painless transition. By 'cloning' these apps we're doing a great service to the free-software community. Plus, if there's ever a Linux port of Microsoft Office (as rumored), will people want to pay $500 or use the free(beer) clone?
Rant....
In Unix COM wasn't necessary? LOL. Well maybe. Just like it's prolly not neccesary to have computers to type up letters (what are pen & paper or typewriters for?). The point is it is FASTER and more EFFICIENT to use compoenent based models like COM. With COM you're basically calling functions to do stuff for you and you're working at a 'lower' level than piping output into new processes which in turn go and do their own bloated stuff. It's MUCH slower. With COM, you can reuse components. You can export a function that dials up the internet by creating the object, aquireing the interface pointer and function pointer then calling it. With ActiveX Scripting languages or programming languages like VB/C++ATL/J++ it's easy. With Unix, you'd create a new process to that involves chat pppd etc etc...all bloated stuff. You're creating a new process, you're running applications and then parsing the output as strings into something meaningful. Why do you think Unix lacks so much of the advanced UI modularity (Controls anyone?) componentization, IPC, interapp interoperability etc that Windows had? Cause it's hard. Cause there's no standard way to do things. Explain to me how I'll be able to copy an image into a clipboard from Gimp and then paste it into XPaint. Or howabout formatted HTML from netscape and then paste it (still formatted - including images and applets) into KEdit. You can't. There's no good mechanism, and usually what mechanism there are aren't standard. Windows has standards for clipboards, for IPC, for component sharing etc. They're defacto windows standards, but that's so much better than no standards at all. With ActiveX scripting languaes, Microsoft have basically created a scripting language that acts very much like the way javascript works in browsers. You've got a COMPONENT based scripting language (you create and call objects), unlike unix where you execute programs and parse their output (ugh). Ofcourse there's 'nice' languages like Perl which offer neat packages, but then, can I use Perl packages easily from TCL? No. In Windows, I can use any ActiveX Scripting language to script, because Microsoft's technologies are all componentised and 'reuse' on each other. As an example, ASP (Active Server Pages) uses ActiveX scripting, so I can script ASP pages with VBScript, JavaScript for PerlScript (or any other activex scripting language someone might write in the future). I can also use VBScript, JavaScript and PerlScript to write scripts in HTML files, or Windows Scripting files. Different languages, same object model. The kit to both write ActiveX Scripting languages of your own, and also implement the engine in your own applications is ofcourse free. There's also other key features of COM which make building HUGE operating systems like Windows 2000 and Office possible. Abstraction through COM interfaces. Microsoft can define some interfaces you have to implement if you want to, for example, add a shell extension tha adds a new Start->Search->Process menu on the start menu. All you need to do is create a COM object that implements those interfaces and register them in the right place in the registry and explorer will find them and add the menu dynamically for you. These same 'abstraction' ideas are used for ActiveX controls, Explorer Bands etc etc etc. That's how that guy managed to create an implmentation of Mozilla that would work in applications that 'embedd' internet explorer. You just go and implement the IWebBrowser interface! Oh well, enough rant. Final word. COMponentization is GOOD and needed for any large style OS or application. Especially if it involves user interfaces or you are concerned about binary reusability (not simply running small tools and parsing output).
I know the world has become a terrible place when Microsoft's GUI "innovations" are being used as the benchmark of quality. So far, Linux window managers have forgone innovation by providing emulating a well-established conventions, it is a failed endeavor. The result usually ends up being a poor copy of a poorly thought out design.
I believe there is reason to worry if the intention is to simply (more or less) reproduce the most popular elements, not the most useful ones.
However, if the ultimate goal is be better than preexisting designs, than perhaps the GNOME team, and others should invest their time in creating their, dare is say it.....own user interface, free of implementations of legacy features.
Is the goal to copy what already exists, fully aware of the design failures, just because it's safe and well tested? Just because it is a free alternative to what is already available? Perhaps, at least, they should spend some time investigating the original inspiration and concepts behind Microsoft's GUI, or else they risk diluting whatever thought was placed into the original work. Of which Microsoft has done little of.
Don't copy it because it exists, copy it because it is a solid design.
Throwing in things without having justification or an overall idea of how it will improve the rest of the system is stupid. Giving the user choice is good, but choice is meaningless without direction. New features should be added not after deciding a programming schedule, but after careful consideration of the pros and cons with a stong emphasis on the effect it will have over the rest of the UI and if it is worth it.
For example, upon viewing the demo of Aqua the leader of the GNOME team said that "the next revision will have [real] transparency". Uhhh.....ok, but why? How will this benefit the user? Is it just a bit of useless eye candy, or does it have a purpose? Will its presence be simply for the sake of having it because someone else does too?
The key is to introduce a compatibility between the two desktops that allows them to interoperate as close to seamlessly as possible. This means:
I'm sure I'm leaving things out. Does anybody else see a need here, or am I just spouting nonsense?
Timothy!
/. all night!
Go to bed! This is not a request, mister. Because of you, I'm going to be spending the next hour reading/posting to Slashdot, instead of sleeping. I really should be sleeping. I have to hear the disappointing results of a IS meeting in the morning, and I am far better equipped to do so if I'm not up reading
So for God's sake Timothy, and the sake of all those employed individuals operating on EST, please go to bed!
.sig: Now legally binding!
I have friends that have been hired by MSFT and they've described the component based architecture and the reasoning behind COM, COM+ and DCOM, and it was rather interesting. I was also surprised at how long it was taking *nix developers to create significant component based applications especially since most of COM (at least originally) was copied from or inspired by CORBA.
I only hope more of us can put aside our religous differences and make comments like this
- The birth of GNOME happened about two and a half years ago," explains de Icaza, "when Microsoft showed me a component-based application [Internet Explorer] which, instead of a huge bloated single-component application, was a huge application bloated with small components. Unix had no component system, the project [to develop one having fallen] down until Qt appeared. But Qt needed a proprietary toolkit, so the freedom was not really there."
which indicate that instead of assuming MSFT or Sun or whoever is this week's enemy of Open Source Software is the devil and keeping away from everything and anything they do we should learn from them and use their good ideas the same way they use ours. Software development should be a massive symbiotic relationship instead of the the them vs. us mentality most OSS developers take with it. Remember a couple of them are also OSS developers as well and hack Linux in their spare time. This post to the Darwin Development mailing list brings up that interesting fact by indicating that MSFT may own a lot of the kernel due to all those non-compete clauses signed by MSFT developers.PS: Basically the message of this rambling post is that we should Open Our Minds as well as our source code.
Enough braindead thinking.
Unix is not Windows. Unix is not Windows. UNIX IS NOT FUCKING WINDOWS!
There is a vast community of people working to make MS Windows and the other 400 or so assorted MS products better every day, and they're bound together by money, the most powerful social force imaginable. We're talking MCPs, MCSEs, developers, tech support networks, curriculum resale networks, documentation constructs, EVERYTHING. Plus highly centralized news and documentation delivery machines.
Open source unix development doesn't have that same financial weight behind it. In certain areas yes, but not nearly with the same reach as the MS machine.
And wouldn't things be so much easier if we'd stop talking about the difficult-to-define Linux Community and start talking about the computing enthusiast/developer community as a whole? As in, people who use computers to know how they work and synthesize new solutions from them? As in, not end users?
A vast majority of end-users rarely discover the other button on the mouse. They will NEVER NEVER NEVER be interested in all the wondrous things that Unix can do, no matter how gracefully they are introduced into the system of software they have at their disposal.
And let's shut the fuck up about "bad interfaces". If I have to read another "Gnome has a bad rehashed interface" line or "KDE looks too much like windows" bitch, I will murder.
GNOME and KDE are NOT PROGRAMS. They are collections of programs and libraries and APIs and engines and object managers that enable certain UI niceties like toolbars, common themings, mail delivery, window management, and a BILLION different things. If you're going to complain about something, complain about 'panel' or 'kwm' or 'ghex' or 'gmc' or the stock GTK color selector or gnumeric's plugin menu or the refresh rate of some kgame. Not "It totally works the same as windows so it sucks." If it works it works.
Complain about the behavior of a particular widget, or the mechanism for installing new software, or how themes are packaged or SOMETHING. Don't just bitch to be a little zealot.
Oh and get with the times. 32MB of ram on a win32 box is painful. 32MB of ram on an X11 box is just as miserable. If you don't like 'bloated' software, then stick with console. No-ones making you choose. But unless you have a better idea of how the basic architecture of X and GTK and QT should work to be more memory-efficient or what have you, then be quiet.
This is the most unfocused filth I have ever written. It sucks but I am out of time. I hope you find it irritating.
-troll taker
OK, now we say that everybody's copying on Micro$oft... Don't forget that they've copied most their stuff from someone else. Not that there's anything wrong with that. You can't (and shouldn't) always reinvent the wheel.
This is how it goes. A invents something, B starts doing the same, as well as C... then Micro$oft copies it, then when GNOME does the same, they've been copying microsoft. That's simply because they're the ones you see the most.
Opus: the Swiss army knife of audio codec
OK, lots of things come to mind here.
First of all, how long before Gnome or some other OSS interface get recognised as the 'leader in the field?' Likely never, and good riddance! Someone pointed out that OSS doesn't have the research backing to really evolve a good interface. Someone else asked why should we even consider (or hope for) a 'winner'?
More to the point, why is the open source movement, a group supposedly excited about individualism and so forth, be so hyped about winning and (implicitly) taking over the world?
Lots of other good comments have already been made, but no one has specificly addressed one that's been nagging me lately. Consider this if you will:
I'm beginning to come to the conclusion that a useful and intuitive GUI is ***impossible***.
Impossible. Not Possible. Undoable. Forget it. Wasted effort.
Why would I say such a heretical thing? A few weeks ago, I watched a cyber-illiterate couple struggle with their brand new computer, running Win98. After a few days, I realised a few things.
1) No matter how pretty the interface, the guts of the system are still files in a hereditary hierarchy. (i.e. directories, subdirectories, and eventually files)
2) The GUI can disguise, but not _change_ the fact in (1).
3) The GUI, by making the file system structure less apparent, makes understanding the computer itself HARDER, not easier!
Summary: Because of (3) (which comes from (1) and (2)), the GUI is doomed to fall vastly short of what it should be (and in many ways be a hinderance) until A WHOLE NEW DATA PARADIGM IS CREATED!
I used Windows as an example, but Unix (and company), with its similar file structure, inherently suffers the same faults with any attempt at imposing a GUI on it, as long as that GUI works to hide or minimise the inherent file structure.
In other words, Gnome, Enlighten, KDE, Windows, BeOS, CDE, and so forth all FAIL in major ways, at what they were created to do! Worse, no amount of redesign or patching will fix that failure.
So maybe it's time to quit trying to make Gnome (or whatever) the king of a crumbling castle, and rewrite computing from the ground on up. No preconceived notions, no borrowing from everyone else (which is normally the most efficient way to develop things), but something as revolutionary as the original idea at Xerox, of a graphical environment.
"People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
What are the principles by which a desktop can be good to regular users? I'm speaking from personal prejudice only.