The reason we concentrate on ``dead white Europeans'' is because they had a method of writing their compositions on paper that allowed us to reasonably re-create what they did. That same kind of notation also made study of music theory more convenient because musical ideas could be expressed on paper with some accuracy. I realize there are notations in other cultures, but the European style of notation comes very close to what a musician would actually play therefore making analysis much easier. You could enter it into a computer through notation software (like Finale or Lilypond) and have it play the music back without need of a musician interpreting it and the music makes perfect sense.
As for for your music professor friends, they sound kind o' different. I don't know if they would be representative of academicians in that field. On the other hand, maybe they would be. I've met some squirrelly music academicians who left me wondering what the blazes they teach (and learn) in colleges. Heck, I'd have been happy if they were stuck in the early 1900's---one of 'em was a great big Andrew Lloyd Weber fan. Egads.
Opportunities like Vista don't come along every day of the week.
But they do come along: Windows 98, Windows Me...
Certainly Linux (as a kernel) isn't the problem, nor are the GNU API and CLI. The problem is with the choices made by the people who put together the Linux distributions. When I talk to Linux fanboys, they absolutely refuse to acknowledge the problems non-technical people have with the feature-centric design-lacking GUIs of Gnome and KDE (that's feature-centric as in ``feeping creaturism''). I'm pretty darned sure MS Windows Vista is much easier for non-technical people to work with than any of the Linux distributions. Even though ports from the Mac to Linux could be made a lot easier and the GUI cleaned up if GNUstep was developed, none of the people who put together Linux distributions are in the least interested.
The upside is that Linux will always be able to get in a position to gain desktop market share, just not with the current attitude favoring the technical users who want more features and are willing to spend countless hours to find and learn these features, and dismissing the non-technical people who just want something that's quick and easy to use so they can get off the machine and get on with their lives.
To me, it doesn't look like he was saying that C++ should be taught instead of Java, it seems to me he was saying he opposed teaching Java as a first language. He also believed that no language should be taught as an ``only'' language, and points out that many schools do that nowadays with Java. And actually he seemed to favor teaching C as a first language, rather than C++.
He never says there's anything wrong with Java as language teaching Java, he just prefers programming to be taught first from a lower level language like C. In C style programming, memory addressing is generally handled quite differently than from within Java, for example, I don't I've ever heard the phrase ``pointer arithmetic'' associated with standard Java programming. If there's some way to do that, it's still not typical and would probably get students into unusual Java programming practices to get them to think that way in Java instead of just using C which is made for it.
As for low level programming being appropriate for only system level coding, I think that precludes what an understanding of what low level programming is good for. No less than Donald Knuth has discussed the importance of understanding things at a lower lever in order for a programmer to avoid writing what he calls ``weird code''. By that, I'm only guessing that he means a programmer could develop a disregard for what's happening with the machine and write needlessly inefficient code. He even developed his own pseudo assembler for presenting his algorithms. This doesn't mean he doesn't believe in thinking and programming at a higher level in a higher level programming language, it just means he believes that some understanding of what's going on with the machinery is beneficial to a programmer's coding.
Then there's the idea of Java and C++ being essentially the same language. I just can't see it that way. To me there's an important difference between the simpler single inheritance model of Java and the more complicated multiple inheritance model of C++. I know you can force your code between the two to look the same, but I think your code will be much more readable and maintainable if you try to find an approach more appropriate to the language. I learned that back when starting as programmer I tried make C code look like Pascal code, and C and Pascal are a lot closer to each other than C++ and Java.
The joke is about someone with absurdly specific interests. It's no different than the classified ad by the maritally inclined bachelor farmer seeking ``a lady with a tractor. Please send picture of tractor.''
``He is a boy'' or ``she is a girl'' are figures of speech used in the context of pointing out mistaken gender in a humorous way. Again to be fair, it is not meant as a term of disrespect toward the person whose gender has been incorrectly assumed, but rather it is meant to poke fun at the person who made the incorrect assumption.
The typical feminine form of the name Noel is Noelle. To be fair, the mistake is no more grievous than referring to a man named Susan as ``she'' in print without really knowing who the person is.
There are an awful lot of free software applications installable on the Mac through Fink or MacPorts. MacPorts even has some graphical applications under its aqua and gnustep categories and has other categories under which there are even more graphical applications usable under X11. I believe MacPorts even has a GUI available somewhere, but I prefer a terminal interface so I don't know about setting up or using the GUI. Also, Fink provides many applications usable under X11.
Just out of curiosity, are there any applications in particular you're getting through Synaptic that aren't available to the Mac through Fink or MacPorts?
For what it's worth (and I honestly do not know what it's worth), upon clicking on the help button near the upper right hand corner of the graphic, one should find this somewhere in the pop-up:
This report lists the market share of the top operating systems in use for browsing (not servers). This data is derived by aggregating the traffic across our network of websites that use our service.
The right designer-developer-packager-distributor group for Linux with a usable desktop just hasn't been formed yet. The Linux culture itself probably won't be able to design the package in a way to make it easy to use for the average non-technical person. It's definitely going to take an ``outsider''. With the right stuff, Linux or other free operating systems should do quite well.
I've spoken to someone here who was trying to explain to me why Ubuntu is far easier to use than Mac OS X. He was definitely someone I consider to be within the technical Linux culture. I'm a software support person so what I think about the Ubuntu desktop is meaningless. If he could have convinced one of the secretaries that Ubuntu was easier than MS Windows or the graphics designer upstairs that it was easier to use than Mac OS X, that would have meant something. If he failed in his effort to convince them and considered the problem may actually be that Ubuntu isn't that easy for non-technical people to use and that non-technical people aren't necessarily idiots, then that would have meant something. The point is that, like other Linux fans, he was speaking to someone familiar with Unix flavored operating systems and free software instead of speaking to a typical user of desktop PCs. Rather than looking for a different perspective, he was looking for a confirmation of what he already believed.
If a Linux developer wants to make something useful to people in other fields, then they're going to have to work with designers who are going to care more about the users than the developers themselves. That's right, I said ``designers''. The concept of design in the Linux oriented slashdot world is too often greeted with contempt. Design is not just a pretty or impressive interface, nor is it the kind of spontaneous feature accumulation loved by so many people on slashdot. If you want Linux to be accepted on the desktop, y'all are going to have get over your animosity toward design and designers, and you're especially going to have to get over your animosity towards non-technical end users.
It was pointed out in one of the responses that the writer of the article did exactly what Secunia advised people not to do. From Secunia's Mac OS X vulnerability report:
The statistics provided should NOT be used to compare the overall security of products against one another.
So it seems there are three reasonable conclusions to draw here. The first is that the author is incompetent and should be disregarded. The second is that the author is dishonest and manipulative and should be disregarded. The third is both the first and the second.
I was going to say that they hate everything and try to prove it by pointing out that Apple got hit twice until I actually read their comments on iPhone and Leopard. Dang it. I'm an Apple fan, but I've got to admit the articles are honest, fair, and accurate. Apple, get with it, man, you're embarrassing your fans.
UNIX 03 is a standard specification for operating system interfaces, it is not an operating system itself. The designation of an OS as being UNIX 03 is controlled by the Open Group. The operating system's source code or its history has absolutely nothing to do with that OS being UNIX 03.
Leopard is UNIX 03 because Apple fixed its API, CLI, and whatever other interfaces to pass requirements stipulated by the Open Group and then paid them to test it and to allow them to certify it as such. Without much difficulty, a Linux distribution probably could be UNIX 03, but no one wants to bother tweaking it into the Open Group's specifications and then pay them for passing it. And considering that so many developers nowadays generally make sure their programs compile, link and run on Linux platforms, there's nothing to gain from having a Linux distribution certified for UNIX 03 compatibility anyway.
Concerning the compatibility with the interfaces allowing people to use source between platforms, the Linux distributions and Leopard are true to the spirit of the original Unix, though you can accuse anything of anything if you want. As for the openness of the OS source code, don't forget the original Unix by Ken Thompson et al. was proprietary code even though people snuck the source around. The license of Darwin which is at the core of Leopard is much more liberal than AT&T's license for Unix whose source was open to only educational institutions. As for the rest of Leopard, the GUI standard is openly defined in NextStep and the preferred programming format for lower level graphics is OpenGL. If GNUstep had enough support, many applications could easily be portable between Linux and Mac OS X/Leopard.
Re:I don't use vim for the fancy features....
on
Hacking VIM
·
· Score: 1
I stand corrected. I should have read your.vimrc more carefully. Because of my past experiences, I get really spastic when I see a vi tabstop reset.
Re:I don't use vim for the fancy features....
on
Hacking VIM
·
· Score: 1
Sorry, no offense intended if my reply seemed curt.
Vim has a way around resetting tabstops by using what they call softtabs. I've run into serious problems with code where many different coders had edited the same source with different tabstops---there was no tabstop I could pick to make the code readable. Not resetting tabstops is just being considerate to the next person.
As for traditional vi, as opposed to vim, you would only set the shiftwidth, but not the tabstop. Then in insert mode you would use control-t to move up to the next indent, control-d to move back to the previous indent, and ^control-d to go to the beginning of the line. Since your.vimrc has shiftwidth set, I'm assuming you know its effect in command mode.
Am I misreading what he's saying about Ruby? It looks like he's saying that because Ruby doesn't explicitly declare the kind of scoping with which a variable is associated, the scopes of its variables are difficult to understand (it's ``asking for trouble''). And then he says declaring your variables as ``my'', ``our'', and ``local'' makes things much simpler. Am I crazy or does this make absolutely no sense at all? Where I work, I've personally seen struggles taking hours understanding and untangling the effects of those declarations in Perl 5. I have seen few difficulties concerning scoping in Ruby, and those I've seen had been resolved without that much trouble or time.
Maybe I just need this explained to me because I'm having difficulty conceptualizing this: how do you separate the idea of good interface design from the idea of ease of use? Maybe you might have some example to help me see this because I can't think of one piece of software that's easy to use whose facility didn't have everything to do with the interface.
I've decided to make it even easier for you to understand design as being as applicable to functionality as it is to beauty, if not more so. Here is a link to projects by the Rhode Island School of Design. Please inform yourself so as not to spread and perpetuate misunderstanding.
I mentioned ease of use through design, not beauty through design. The original article made the same point but you either missed or chose to ignore it. Please read more carefully and try to be fair. The idea of ``invention'' usually applies to two thing---making things possible, or making things easier. When design applies to those things, it certainly qualifies to be thought of as invention.
If design may not be considered invention, then what may be? What forms of creativity may or may not be ``invention''? Or maybe your next argument is that design is not creativity, or invention is not creativity or whatever manipulation of words makes you feel like a clever person. Your argument is just downright silly.
``The only thing going for it is that it looks nice''? I don't know if you bothered reading the article at all, they not only anticipated people with attitudes like yours, but defended their decision by illustrating that Apple achieved an ease of use of the product through the kind of design that not only took time, effort and talent, but is highly likely to have a profound influence on future design by other manufacturers. If you think they were flip and just don't know what else is out there, then how would you explain the rest of the inventions on list? Do you have list of great inventions that rivals theirs? I didn't think so. I'm sorry, but you obviously don't have any insight into the concept of design at all.
It sounds to me your reporting of the situation is likely to be quite accurate but your apparent logical disconnect seems to completely elude you. Your friend's argument for why he liked vinyl was ``that vinyl retained a certain warmth and depth of sound that was lost in digital recordings.'' Your evidence that he was incorrect was that the ``vinyl recording, even on his ultra high-end turntable and component stereo system, still audibly popped and crackled.'' Your proof, as it is, does not address what he originally claimed, which was *not* that it did not pop and crackle, but that it retained a certain warmth and depth lost in digital recordings. I'm sure he was aware of the pops and crackles---how could he not? But that probably doesn't bother him as much as it does you. It sounds like while you were listening for pops and crackles, he was listening to the music and comparing the recorded sound rather than the incidental noise.
My point is that it's a subjective thing and your friend wasn't lying to you when he said that vinyl sounded better to him anymore than you were lying when you said digital sounded better to you. You don't have to agree on the same thing for the both of you to be correct about what you like. I've heard Nakamichi CD players and Linn turntables and they both sound absolutely fabulous, and you're both really lucky, and you both have excellent taste. Just enjoy what you've got, for Pete's sake.
What I've seen happen in the open source world of GUI software is that they start off imitating Microsoft software. The redesigns are superficial (usually eye candy) and they see improvement as adding features instead of simplifying the design. Unfortunately, if a project does not imitate Microsoft, it doesn't get much support because it's so foreign to Linux people who, as I've mentioned, are comfortable with the Microsoft software they grew up with. An example of something that should be promising for its IDE is the GNUStep development environment based on the published NeXT/OpenStep standards. However, that's not getting much support because it's something that the open source world isn't comfortable with so it's not going to have the full functionality of the other IDEs.
The fact that GNUStep uses Objective-C to interface with the GUI isn't a big deal because you can still do most of the programming in C or C++, it's just that it uses Objective-C for calling the GUIs. Of course, it wouldn't be a bad idea to get familiar with Objective-C. It's simpler than C++ and just as powerful. In any case, for as desperate as you've said you are, it sounds like you didn't even think to look at GNUStep which illustrates how foreign non-Microsoft flavored software is to the open source world nowadays. That's pretty sad. If you want some idea of how the GNU development environment would work if it got support, try sitting down with XCode on a Mac. By the way, Apple doesn't charge anything extra for their IDE---it comes with the machine on the install disk and it's also what Apple uses for development so it's complete. It uses gcc but you can buy a compiler for it from Intel for faster running binaries. By making XCode and all the documentation available for no extra charge, to me this makes Apple far friendlier to the developer than Microsoft.
The reason we concentrate on ``dead white Europeans'' is because they had a method of writing their compositions on paper that allowed us to reasonably re-create what they did. That same kind of notation also made study of music theory more convenient because musical ideas could be expressed on paper with some accuracy. I realize there are notations in other cultures, but the European style of notation comes very close to what a musician would actually play therefore making analysis much easier. You could enter it into a computer through notation software (like Finale or Lilypond) and have it play the music back without need of a musician interpreting it and the music makes perfect sense.
As for for your music professor friends, they sound kind o' different. I don't know if they would be representative of academicians in that field. On the other hand, maybe they would be. I've met some squirrelly music academicians who left me wondering what the blazes they teach (and learn) in colleges. Heck, I'd have been happy if they were stuck in the early 1900's---one of 'em was a great big Andrew Lloyd Weber fan. Egads.
The reason why Linux doesn't spread is reflected in the attitude of this article.
Certainly Linux (as a kernel) isn't the problem, nor are the GNU API and CLI. The problem is with the choices made by the people who put together the Linux distributions. When I talk to Linux fanboys, they absolutely refuse to acknowledge the problems non-technical people have with the feature-centric design-lacking GUIs of Gnome and KDE (that's feature-centric as in ``feeping creaturism''). I'm pretty darned sure MS Windows Vista is much easier for non-technical people to work with than any of the Linux distributions. Even though ports from the Mac to Linux could be made a lot easier and the GUI cleaned up if GNUstep was developed, none of the people who put together Linux distributions are in the least interested.
The upside is that Linux will always be able to get in a position to gain desktop market share, just not with the current attitude favoring the technical users who want more features and are willing to spend countless hours to find and learn these features, and dismissing the non-technical people who just want something that's quick and easy to use so they can get off the machine and get on with their lives.
To me, it doesn't look like he was saying that C++ should be taught instead of Java, it seems to me he was saying he opposed teaching Java as a first language. He also believed that no language should be taught as an ``only'' language, and points out that many schools do that nowadays with Java. And actually he seemed to favor teaching C as a first language, rather than C++.
He never says there's anything wrong with Java as language teaching Java, he just prefers programming to be taught first from a lower level language like C. In C style programming, memory addressing is generally handled quite differently than from within Java, for example, I don't I've ever heard the phrase ``pointer arithmetic'' associated with standard Java programming. If there's some way to do that, it's still not typical and would probably get students into unusual Java programming practices to get them to think that way in Java instead of just using C which is made for it.
As for low level programming being appropriate for only system level coding, I think that precludes what an understanding of what low level programming is good for. No less than Donald Knuth has discussed the importance of understanding things at a lower lever in order for a programmer to avoid writing what he calls ``weird code''. By that, I'm only guessing that he means a programmer could develop a disregard for what's happening with the machine and write needlessly inefficient code. He even developed his own pseudo assembler for presenting his algorithms. This doesn't mean he doesn't believe in thinking and programming at a higher level in a higher level programming language, it just means he believes that some understanding of what's going on with the machinery is beneficial to a programmer's coding.
Then there's the idea of Java and C++ being essentially the same language. I just can't see it that way. To me there's an important difference between the simpler single inheritance model of Java and the more complicated multiple inheritance model of C++. I know you can force your code between the two to look the same, but I think your code will be much more readable and maintainable if you try to find an approach more appropriate to the language. I learned that back when starting as programmer I tried make C code look like Pascal code, and C and Pascal are a lot closer to each other than C++ and Java.
The joke is about someone with absurdly specific interests. It's no different than the classified ad by the maritally inclined bachelor farmer seeking ``a lady with a tractor. Please send picture of tractor.''
``He is a boy'' or ``she is a girl'' are figures of speech used in the context of pointing out mistaken gender in a humorous way. Again to be fair, it is not meant as a term of disrespect toward the person whose gender has been incorrectly assumed, but rather it is meant to poke fun at the person who made the incorrect assumption.
The typical feminine form of the name Noel is Noelle. To be fair, the mistake is no more grievous than referring to a man named Susan as ``she'' in print without really knowing who the person is.
There are an awful lot of free software applications installable on the Mac through Fink or MacPorts. MacPorts even has some graphical applications under its aqua and gnustep categories and has other categories under which there are even more graphical applications usable under X11. I believe MacPorts even has a GUI available somewhere, but I prefer a terminal interface so I don't know about setting up or using the GUI. Also, Fink provides many applications usable under X11.
Just out of curiosity, are there any applications in particular you're getting through Synaptic that aren't available to the Mac through Fink or MacPorts?
The right designer-developer-packager-distributor group for Linux with a usable desktop just hasn't been formed yet. The Linux culture itself probably won't be able to design the package in a way to make it easy to use for the average non-technical person. It's definitely going to take an ``outsider''. With the right stuff, Linux or other free operating systems should do quite well.
I've spoken to someone here who was trying to explain to me why Ubuntu is far easier to use than Mac OS X. He was definitely someone I consider to be within the technical Linux culture. I'm a software support person so what I think about the Ubuntu desktop is meaningless. If he could have convinced one of the secretaries that Ubuntu was easier than MS Windows or the graphics designer upstairs that it was easier to use than Mac OS X, that would have meant something. If he failed in his effort to convince them and considered the problem may actually be that Ubuntu isn't that easy for non-technical people to use and that non-technical people aren't necessarily idiots, then that would have meant something. The point is that, like other Linux fans, he was speaking to someone familiar with Unix flavored operating systems and free software instead of speaking to a typical user of desktop PCs. Rather than looking for a different perspective, he was looking for a confirmation of what he already believed.
If a Linux developer wants to make something useful to people in other fields, then they're going to have to work with designers who are going to care more about the users than the developers themselves. That's right, I said ``designers''. The concept of design in the Linux oriented slashdot world is too often greeted with contempt. Design is not just a pretty or impressive interface, nor is it the kind of spontaneous feature accumulation loved by so many people on slashdot. If you want Linux to be accepted on the desktop, y'all are going to have get over your animosity toward design and designers, and you're especially going to have to get over your animosity towards non-technical end users.
I was going to say that they hate everything and try to prove it by pointing out that Apple got hit twice until I actually read their comments on iPhone and Leopard. Dang it. I'm an Apple fan, but I've got to admit the articles are honest, fair, and accurate. Apple, get with it, man, you're embarrassing your fans.
UNIX 03 is a standard specification for operating system interfaces, it is not an operating system itself. The designation of an OS as being UNIX 03 is controlled by the Open Group. The operating system's source code or its history has absolutely nothing to do with that OS being UNIX 03.
Leopard is UNIX 03 because Apple fixed its API, CLI, and whatever other interfaces to pass requirements stipulated by the Open Group and then paid them to test it and to allow them to certify it as such. Without much difficulty, a Linux distribution probably could be UNIX 03, but no one wants to bother tweaking it into the Open Group's specifications and then pay them for passing it. And considering that so many developers nowadays generally make sure their programs compile, link and run on Linux platforms, there's nothing to gain from having a Linux distribution certified for UNIX 03 compatibility anyway.
Concerning the compatibility with the interfaces allowing people to use source between platforms, the Linux distributions and Leopard are true to the spirit of the original Unix, though you can accuse anything of anything if you want. As for the openness of the OS source code, don't forget the original Unix by Ken Thompson et al. was proprietary code even though people snuck the source around. The license of Darwin which is at the core of Leopard is much more liberal than AT&T's license for Unix whose source was open to only educational institutions. As for the rest of Leopard, the GUI standard is openly defined in NextStep and the preferred programming format for lower level graphics is OpenGL. If GNUstep had enough support, many applications could easily be portable between Linux and Mac OS X/Leopard.
I stand corrected. I should have read your .vimrc more carefully. Because of my past experiences, I get really spastic when I see a vi tabstop reset.
Sorry, no offense intended if my reply seemed curt.
.vimrc has shiftwidth set, I'm assuming you know its effect in command mode.
Vim has a way around resetting tabstops by using what they call softtabs. I've run into serious problems with code where many different coders had edited the same source with different tabstops---there was no tabstop I could pick to make the code readable. Not resetting tabstops is just being considerate to the next person.
As for traditional vi, as opposed to vim, you would only set the shiftwidth, but not the tabstop. Then in insert mode you would use control-t to move up to the next indent, control-d to move back to the previous indent, and ^control-d to go to the beginning of the line. Since your
You would have to be assuming we were talking about vi vs. emacs. Maybe the real issue should be vim vs. vi. I prefer vi.
Am I misreading what he's saying about Ruby? It looks like he's saying that because Ruby doesn't explicitly declare the kind of scoping with which a variable is associated, the scopes of its variables are difficult to understand (it's ``asking for trouble''). And then he says declaring your variables as ``my'', ``our'', and ``local'' makes things much simpler. Am I crazy or does this make absolutely no sense at all? Where I work, I've personally seen struggles taking hours understanding and untangling the effects of those declarations in Perl 5. I have seen few difficulties concerning scoping in Ruby, and those I've seen had been resolved without that much trouble or time.
Maybe I just need this explained to me because I'm having difficulty conceptualizing this: how do you separate the idea of good interface design from the idea of ease of use? Maybe you might have some example to help me see this because I can't think of one piece of software that's easy to use whose facility didn't have everything to do with the interface.
I've decided to make it even easier for you to understand design as being as applicable to functionality as it is to beauty, if not more so. Here is a link to projects by the Rhode Island School of Design. Please inform yourself so as not to spread and perpetuate misunderstanding.
I mentioned ease of use through design, not beauty through design. The original article made the same point but you either missed or chose to ignore it. Please read more carefully and try to be fair. The idea of ``invention'' usually applies to two thing---making things possible, or making things easier. When design applies to those things, it certainly qualifies to be thought of as invention.
If design may not be considered invention, then what may be? What forms of creativity may or may not be ``invention''? Or maybe your next argument is that design is not creativity, or invention is not creativity or whatever manipulation of words makes you feel like a clever person. Your argument is just downright silly.
``The only thing going for it is that it looks nice''? I don't know if you bothered reading the article at all, they not only anticipated people with attitudes like yours, but defended their decision by illustrating that Apple achieved an ease of use of the product through the kind of design that not only took time, effort and talent, but is highly likely to have a profound influence on future design by other manufacturers. If you think they were flip and just don't know what else is out there, then how would you explain the rest of the inventions on list? Do you have list of great inventions that rivals theirs? I didn't think so. I'm sorry, but you obviously don't have any insight into the concept of design at all.
It sounds to me your reporting of the situation is likely to be quite accurate but your apparent logical disconnect seems to completely elude you. Your friend's argument for why he liked vinyl was ``that vinyl retained a certain warmth and depth of sound that was lost in digital recordings.'' Your evidence that he was incorrect was that the ``vinyl recording, even on his ultra high-end turntable and component stereo system, still audibly popped and crackled.'' Your proof, as it is, does not address what he originally claimed, which was *not* that it did not pop and crackle, but that it retained a certain warmth and depth lost in digital recordings. I'm sure he was aware of the pops and crackles---how could he not? But that probably doesn't bother him as much as it does you. It sounds like while you were listening for pops and crackles, he was listening to the music and comparing the recorded sound rather than the incidental noise.
My point is that it's a subjective thing and your friend wasn't lying to you when he said that vinyl sounded better to him anymore than you were lying when you said digital sounded better to you. You don't have to agree on the same thing for the both of you to be correct about what you like. I've heard Nakamichi CD players and Linn turntables and they both sound absolutely fabulous, and you're both really lucky, and you both have excellent taste. Just enjoy what you've got, for Pete's sake.
No, c'mon guys, I think he means it. I know *I* do.
What I've seen happen in the open source world of GUI software is that they start off imitating Microsoft software. The redesigns are superficial (usually eye candy) and they see improvement as adding features instead of simplifying the design. Unfortunately, if a project does not imitate Microsoft, it doesn't get much support because it's so foreign to Linux people who, as I've mentioned, are comfortable with the Microsoft software they grew up with. An example of something that should be promising for its IDE is the GNUStep development environment based on the published NeXT/OpenStep standards. However, that's not getting much support because it's something that the open source world isn't comfortable with so it's not going to have the full functionality of the other IDEs.
The fact that GNUStep uses Objective-C to interface with the GUI isn't a big deal because you can still do most of the programming in C or C++, it's just that it uses Objective-C for calling the GUIs. Of course, it wouldn't be a bad idea to get familiar with Objective-C. It's simpler than C++ and just as powerful. In any case, for as desperate as you've said you are, it sounds like you didn't even think to look at GNUStep which illustrates how foreign non-Microsoft flavored software is to the open source world nowadays. That's pretty sad. If you want some idea of how the GNU development environment would work if it got support, try sitting down with XCode on a Mac. By the way, Apple doesn't charge anything extra for their IDE---it comes with the machine on the install disk and it's also what Apple uses for development so it's complete. It uses gcc but you can buy a compiler for it from Intel for faster running binaries. By making XCode and all the documentation available for no extra charge, to me this makes Apple far friendlier to the developer than Microsoft.