Who's to say that you can't write good software in Java?
Absolutely you can write good software in Java. I've seen it done, although I admit that I don't have the mad Java skillz to do it much myself.
But you can't write good software with Swing. Swing may be a fine user interface toolkit on UNIX, where there are no superior alternatives, but on a Mac, a Swing application-- unless it's specifically tweaked to use the Aqua look and feel-- is kind of an embarrassment. Java Swing apps run on OS X just fine, but they're unpleasant to use.
this post just makes me angry
I'm sorry. You get angry at strange things. Must have missed my post in another discussion about how disappointed I am that Mozilla is irrelevant; that post made lots of people angry.
Many things are easier to prototype and get your initial code up and running in Cocoa, but like an OO framework, you must design your object hierarchy well ahead of time.
Of course you're right-- who would know better, right?-- but you'd be surprised how many nontrivial Cocoa programs out there have only one class: Controller. They're basically straight procedural C programs with the Controller class in place of the main() function.
Uhhh... dude, are we talking about the same thing? The C programming language is incredibly simple. Hell, it only has 32 reserved words! (Plus or minus a few depending on your compiler of choice.) Any reasonably intelligent person who already understands programming concepts like functions and variables should be able to learn the entire C language in a day, maybe two.
Now, if you're talking about the C standard library, or the various POSIX APIs, that's a different story. The various standard C APIs are numerous and bewildering. But the same can be said of any language/API combination.
A well-designed application will separate logic from presentation, at least to some extent. Because the Cocoa API is most easily called from Objective C, programmers are free to write their logic in straight ANSI C, and use Cocoa user interfaces for the presentation layer.
The same is true of Java; in fact, many programmers may prefer this. You can write all your application logic in pure Java, and use Cocoa/Java code for the user interface. If the need ever arises to implement a different user interface toolkit, you can just replace the Cocoa/Java code-- which will probably be only a small fraction of your total code base-- with Swing/Java or whatever you please.
The important thing to remember, here, is that, on the Mac platform, native GUI applications are always-- always-- superior to non-native GUI applications. If you don't use native APIs for the interface, you're crippling yourself from the outset.
Cocoa is alright, except that it uses Objective C. Objective C is a bastard child of C and C++, and it doesn't really mesh too well.
Spoken like a true C++ programmer. Objective C is not a "bastard child of C and C++;" in fact, Objective C and C++ share nothing in common at all except for the C language, of which both are supersets.
Objective C is a much simpler language than C++. Oft-troublesome C++ features like templates, overloading, multiple inheritance, virtual functions, and "friends" aren't implemented in Objective C. Mastering C++ can take years, while mastering Objective C is a task for a couple of afternoons.
Now Nextstep, that's a whole different ballgame.;)
To learn Objective C, start by learning C. Objective C is just a superset of C; most of what you'll be writing will be pure C code.
Once you've mastered C-- which takes about two days, using nothing more complex than a copy of The C Programming Language by Kernighan and Ritchie-- you can learn Objective C using Apple's language reference, which is available for free on the web at this link. (Warning: 1.7 MB PDF) Apple also has a number of tutorials on Cocoa programming available on developer.apple.com that make for a nice, gentle introduction. You'll know Currency Converter inside and out in a matter of hours.
how easy is it to connect front end cocoa stuff like drawers, services access, etc to java backend services
Trivial. There's a full Java language binding for the Cocoa API. You can, in fact, write an entire graphical application in Java with the Cocoa API (using Interface Builder for the GUI, naturally).
As for your other questions, I'll defer to people with more experience than I have.
Um... no, "everybody else" doesn't use Carbon. The Carbon and Cocoa APIs are both used pretty widely. Older applications that were written for the pre-OS X Mac OS Toolbox are usually ported to straight Carbon, because it's easy on the developers. But new applications often use a combination of Carbon and Cocoa to implement different OS features.
There was a session on this at this spring's developer conference. Even applications like TextEdit, which you'd assume would be pure Cocoa, considering the source, use a combination of Cocoa and Carbon code in them.
You're missing the idea of diminishing returns. Let's say it costs $10 to build a site that works perfectly in IE. That covers 95% (let's say) of your potential visitors.
To modify the site to make it compatible with Mozilla will cost you $2.50. Is it worth spending 25% of your budget to make your site work with about 3% of your potential vistors? No, it's not.
Again, remember that we're talking about what actually happens in the real world, here, not what should or could happen. You have to be practical.
display: Most Tvs are not of sufficient quality for displaying text clearly which makes them unsuitable for general computing.
Keep in mind, though, that this is gradually changing. Mine is a 34" HDTV that can resolve 1280x720 very nicely. (I can drive it at 1920x1080 as well, but only interlaced, and interlaced makes for unpleasant viewing of static material like text.)
I paid out the ass for my TV earlier this year, but smaller televisions with similar capabilities are getting cheaper and cheaper. As the deadline for various FCC mandates approaches, expect TVs with 800-or-more lines of resolution to be the rule, rather than the exception.
They're both examples of legislation that was proposed, and that was opposed with great outrage and uproar. Ultimately the first-cousin marriage bill was defeated, and it simply evaporated with no ill effects. My point-- which really was pretty clearly made, I think-- is that proposed legislation is nothing to get excited about. The system works, and bills that shouldn't make it into law usually don't.
I think you got a little too caught up in the details to understand the thrust of my argument. Give it another try, okay?
Matter of fact, I just happen to have my paperback copy here on the shelf. It's the 1993 printing, with 613 pages.
Twirlip makes his first appearance on page 226, in chapter 18. (Then on page 247 there's the creepy message from Hanse that begins, "I have obtained specimens from the human worlds in our volume." Shudder.) He then shows up again on 398 (chapter 32), and finally on 484 (chapter 35).
You argument is normative: this is how things should be, you say. My argument is practical: this is how things are.
Most of the world uses IE. Hardly anybody-- as a fraction of total surfers-- uses Mozilla. Therefore web sites will continue to be built exclusively for IE, because there's just no point in wasting the time to make them work in Mozilla, or any of the other "fringe" browsers. If the designer of the site gets lucky and the pages render identically in IE and Mozilla-- which they probably will, if he sticks to old-school techniques like table-based layouts-- then that's fine and good. But if Mozilla renders the pages incorrectly, that's just too bad.
The Mozilla guys could have nipped this problem in the bud if they'd made their browser rendering engine compatible with IE. There should be a button on the Mozilla interface someplace-- prefs, probably-- that controls whether the engine renders pages according to the paper standard, or whether it renders pages according to the de facto standard. This button should default to IE compatibility.
Since there is no such button, Mozilla is effectively a novelty. Despite what some feature-fetishists may think, the sole and only purpose of a web browser is to render web pages they way the designers intended them to be rendered. If Mozilla can't do that, it's kind of a failure.
Incidentally, your comment that there are "7-10" other web browsers out there seems like a bit of an exaggeration to me. IE and Netscape 4 cover something like 95% of all users, I believe. Mozilla, Opera, iCab, and OmniWeb are all fairly well-known, but a big web site-- like a bank, or a corporate site-- can reasonably expect to go its whole life without ever getting a hit off of any of those browsers. The last site I administered was getting more hits from GoogleBot than it got from all four of those browsers combined.
Actually, he's saying that his tuition was inflated some $100 minimum to pay for that "deal."
There's no evidence of this. My girlfriend just graduated from a UT graduate school this past June; she'd been there since before the cheap-Windows-licensing program started. Her tuition didn't change in any meaningful way during her time there. There's no "Microsoft licensing spike" in the tuition curve.
Everything you said is true-- I assume. I won't bother fact-checking you, because the facts of your post aren't relevant.
Saying "IE does it wrong" is kind of like choosing only to speak Esperanto. You may be technically right, but your solution isn't a practical one.
I think Mozilla would be a more useful browser if it could render pages the same way IE renders them. This isn't the case now; pages that render perfectly well in IE fail to render correctly in Mozilla. (I'm too lazy to find an example for you; finding one for yourself shouldn't be difficult, if you're interested in trying.) If I'm looking at a page in Mozilla that doesn't render correctly, I can sit back in my chair and say to myself, with satisfaction, "Well, that's another web site that's written incorrectly. Shame on them!"
And then I close Mozilla and fire up IE, so I can see the page I was looking for. And, since there aren't really any pages that fail to render correctly in IE, I don't see much reason to ever go back to Mozilla. See, because in this example Mozilla has failed to perform its one and only function: rendering web pages.
I've said this before, and I'll say it again: web standards are relevant only to the extent that they reflect the real world. If the page renders correctly in 90% of the world's browser instances, but is in violation of the standard, then it seems to me that the standard-- or at least an up-and-coming implementation of the standard-- needs to be reevaluated.
Any "Educator" who teaches a programming classes and requires a specific compiler is an incompetent idiot and you should not believe a word he says.
I'm not sure I care for your tone, and I certainly don't agree with what you have to say.
Can we agree, for sake of discussion, that it's impossible to teach a programming language without letting the students get in there and program with it? I mean, you can read K&R from start to finish as many times as you like, but you need practical experience writing programs, screwing them up, and fixing them to really understand the language.
So in order to learn, students have to program. And, obviously, their efforts have to be evaluated by the teacher, right? So it's not just a student sitting at his desk writing programs, and compiling and running them, all by himself. There's a feedback loop, and the teacher is an important part of it.
Students in an introductory class are there to learn a language, or an API, or a set of basic concepts. They're not there to learn how to use a particular editor, or compiler, or debugger. The tools they need to use are just... necessary evils, I guess. You can't compile without a compiler, but using the compiler is secondary to your purpose. So the tools-- the editor, compiler, debugger-- should get in the way as little as possible. If you're thinking about how to use the tool, you're not thinking about what you're really there to learn.
The same goes for the teacher. Nobody can be expert in every editor, every compiler, every debugger. If a student has a problem with one of his tools, the teacher needs to be able to get in there, solve the problem quickly, and get the student back on track. In order to do that, the teacher needs to be an expert on the tools used by the students, so he can spend as little time on them as possible.
You see, I think I disagree with you completely. A teacher is responsible for creating an environment in which students can learn what they came to learn, and a good teacher will do what it takes to make that happen. If that means telling the students to write their programs with Visual C++, then good for him.
So, in conclusion, I think the truth is almost the complete opposite of what you said. I think any educator who teaches a programming class and doesn't require each student to use the same compiler and platform probably isn't making a good enough effort to keep the students focused on the material at hand.
Aw, crud. I didn't want to start anything. At least you didn't flame me or moderate me down or any of the other typical Slashdot responses to criticism of RMS.;-)
My problem with RMS is that he uses the word "freedom" in a fuzzy, high-minded, and confusing way. When he talks about "free software," he's thinking of the software as an animate thing, and granting the software itself certain guarantees. To me, this is counter-intuitive and makes no sense. I think the idea of "freedom" applies to people, not to software, or furniture, or elevators, or other inanimate things.
The net result is that RMS talks about "freedom" in terms of what people aren't or shouldn't be allowed to do. The GPL, for example, is a laundry list of restrictions. His efforts to change the name of the Linux operating system-- without the approval or cooperation of the holder of the Linux trademark, of course-- is another example of his trying to tell people what they should and shouldn't do.
Since you brought up political analogies-- no offense, but yours really wasn't clear to me-- I'll use one of my own. If RMS were a historical figure, I think he'd be Mussolini. Mussolini wasn't an evil man-- not in the sense that Hitler or Stalin were evil-- and his motivations were entirely good. He made the trains run on time, and he did a lot of good for Italy and for the Italian people in the 1920's and 1930's. But behind it all, Mussolini was a totalitarian, ruling with an iron fist. His intentions were good, but his methods were nasty and brutish, and ultimately doomed.
RMS is kind of like that, in some ways. His intentions are evidently good-- I'm suspicious, but I'll offer the benefit of the doubt for now-- but his methods reek of totalitarianism. For RMS, it's his way or the highway; discussion or moderation are unknown to him, and he sees the world very clearly in terms of black-and-white. You're either with RMS or you're against RMS. And he obviously cares more about advancing his own agenda-- which, again, he appears to sincerely believe in-- than he does about people.
I'm sure the world needs RMS. After all, the world needs cockroaches and bubonic plague and those little spiny things you step on at the beach that sting. It's all part of the great circle of life.
Twirlip of the Mists is one of the posters on the galactic Net. He comes across as either being kind of a newbie, or as communicating in a language so far away from English as to make meaningful translation almost impossible. His big catchphrase is, "Hexapodia is the key insight," and he talks about what humans' having six legs means in the grand scheme of things.
Of course, toward the end of the book a certain revelation is made that puts Twirlip's comments into an entirely different light. Vinge has been overheard saying that, in fact, Twirlip was the only character in the book to really understand what was going on. He was being mistranslated, but only slightly, and not at all in the way that the other characters thought.
The Business School, however, uses Microsoft products. They won't buy any of "powerpoint/word/excel is proprietary" arguments -- they'll just smile and tell you that they are the standards.
Can you really argue with them? Take the whole population of Earth. Now sift out everybody that doesn't use a computer (that's most of 'em). You're left with, what, a couple hundred million people? Something like nine out of ten of 'em use Windows.
For editable documents, Word is absolutely the standard. For spreadsheets, there's not even a contest; it's Excel in a walk. And while there are certainly other ways to do viewgraph-style presentations, virtually everybody uses Powerpoint.
Nobody cares that these things are proprietary. They're ubiquitous. That's enough to be called the standard.
If you want to send somebody out into the world to be a salesman-- or any other job in business-- not teaching him how to use Excel would be like not teaching him how to dress himself or eat with utensils.
Windows for $6? How did it get so cheap? Your tuition that could have been spent elsewhere...
So... let me get this straight. You're suggesting that the OP choose a different university because the one in question offers deep student discounts on Microsoft software?
I think you might've left your sense of proportion in your other pants.
Who's to say that you can't write good software in Java?
Absolutely you can write good software in Java. I've seen it done, although I admit that I don't have the mad Java skillz to do it much myself.
But you can't write good software with Swing. Swing may be a fine user interface toolkit on UNIX, where there are no superior alternatives, but on a Mac, a Swing application-- unless it's specifically tweaked to use the Aqua look and feel-- is kind of an embarrassment. Java Swing apps run on OS X just fine, but they're unpleasant to use.
this post just makes me angry
I'm sorry. You get angry at strange things. Must have missed my post in another discussion about how disappointed I am that Mozilla is irrelevant; that post made lots of people angry.
Way, way off-topic, but your sig is wrong. You wrote:
"It's fuzzy-minded liberal thinking like that that gets you eaten." - Principal Snyder
The actual quote-- which is priceless-- is, "That's the sort of fuzzy-headed liberal thinking that leads to being eaten."
Just FYI. Please don't tell anybody that I watch "Buffy."
Many things are easier to prototype and get your initial code up and running in Cocoa, but like an OO framework, you must design your object hierarchy well ahead of time.
Of course you're right-- who would know better, right?-- but you'd be surprised how many nontrivial Cocoa programs out there have only one class: Controller. They're basically straight procedural C programs with the Controller class in place of the main() function.
Uhhh... dude, are we talking about the same thing? The C programming language is incredibly simple. Hell, it only has 32 reserved words! (Plus or minus a few depending on your compiler of choice.) Any reasonably intelligent person who already understands programming concepts like functions and variables should be able to learn the entire C language in a day, maybe two.
Now, if you're talking about the C standard library, or the various POSIX APIs, that's a different story. The various standard C APIs are numerous and bewildering. But the same can be said of any language/API combination.
A well-designed application will separate logic from presentation, at least to some extent. Because the Cocoa API is most easily called from Objective C, programmers are free to write their logic in straight ANSI C, and use Cocoa user interfaces for the presentation layer.
The same is true of Java; in fact, many programmers may prefer this. You can write all your application logic in pure Java, and use Cocoa/Java code for the user interface. If the need ever arises to implement a different user interface toolkit, you can just replace the Cocoa/Java code-- which will probably be only a small fraction of your total code base-- with Swing/Java or whatever you please.
The important thing to remember, here, is that, on the Mac platform, native GUI applications are always-- always-- superior to non-native GUI applications. If you don't use native APIs for the interface, you're crippling yourself from the outset.
Cocoa is alright, except that it uses Objective C. Objective C is a bastard child of C and C++, and it doesn't really mesh too well.
;)
Spoken like a true C++ programmer. Objective C is not a "bastard child of C and C++;" in fact, Objective C and C++ share nothing in common at all except for the C language, of which both are supersets.
Objective C is a much simpler language than C++. Oft-troublesome C++ features like templates, overloading, multiple inheritance, virtual functions, and "friends" aren't implemented in Objective C. Mastering C++ can take years, while mastering Objective C is a task for a couple of afternoons.
Now Nextstep, that's a whole different ballgame.
No, it's not. Cocoa is essentially NextStep.
Dude, you have got to be kidding, right?
Yeah, after all, there's no reason to write good software when you can just write portable software.
Least-common-denominator approaches are good for nothing-- except grade-school arithmetic exercises.
To learn Objective C, start by learning C. Objective C is just a superset of C; most of what you'll be writing will be pure C code.
Once you've mastered C-- which takes about two days, using nothing more complex than a copy of The C Programming Language by Kernighan and Ritchie-- you can learn Objective C using Apple's language reference, which is available for free on the web at this link. (Warning: 1.7 MB PDF) Apple also has a number of tutorials on Cocoa programming available on developer.apple.com that make for a nice, gentle introduction. You'll know Currency Converter inside and out in a matter of hours.
how easy is it to connect front end cocoa stuff like drawers, services access, etc to java backend services
Trivial. There's a full Java language binding for the Cocoa API. You can, in fact, write an entire graphical application in Java with the Cocoa API (using Interface Builder for the GUI, naturally).
As for your other questions, I'll defer to people with more experience than I have.
Um... no, "everybody else" doesn't use Carbon. The Carbon and Cocoa APIs are both used pretty widely. Older applications that were written for the pre-OS X Mac OS Toolbox are usually ported to straight Carbon, because it's easy on the developers. But new applications often use a combination of Carbon and Cocoa to implement different OS features.
There was a session on this at this spring's developer conference. Even applications like TextEdit, which you'd assume would be pure Cocoa, considering the source, use a combination of Cocoa and Carbon code in them.
Your generalization is wrong, sorry.
You're missing the idea of diminishing returns. Let's say it costs $10 to build a site that works perfectly in IE. That covers 95% (let's say) of your potential visitors.
To modify the site to make it compatible with Mozilla will cost you $2.50. Is it worth spending 25% of your budget to make your site work with about 3% of your potential vistors? No, it's not.
Again, remember that we're talking about what actually happens in the real world, here, not what should or could happen. You have to be practical.
So I guess we're talking about the difference between theoretical web design and applied web design.
I disagree with your premise. If you're learning web design in school, you'll be better served with an eduction in applied web design.
display: Most Tvs are not of sufficient quality for displaying text clearly which makes them unsuitable for general computing.
Keep in mind, though, that this is gradually changing. Mine is a 34" HDTV that can resolve 1280x720 very nicely. (I can drive it at 1920x1080 as well, but only interlaced, and interlaced makes for unpleasant viewing of static material like text.)
I paid out the ass for my TV earlier this year, but smaller televisions with similar capabilities are getting cheaper and cheaper. As the deadline for various FCC mandates approaches, expect TVs with 800-or-more lines of resolution to be the rule, rather than the exception.
How are these two even remotely connected?
They're both examples of legislation that was proposed, and that was opposed with great outrage and uproar. Ultimately the first-cousin marriage bill was defeated, and it simply evaporated with no ill effects. My point-- which really was pretty clearly made, I think-- is that proposed legislation is nothing to get excited about. The system works, and bills that shouldn't make it into law usually don't.
I think you got a little too caught up in the details to understand the thrust of my argument. Give it another try, okay?
M$ SUX0RS D00D!
;-)
Matter of fact, I just happen to have my paperback copy here on the shelf. It's the 1993 printing, with 613 pages.
Twirlip makes his first appearance on page 226, in chapter 18. (Then on page 247 there's the creepy message from Hanse that begins, "I have obtained specimens from the human worlds in our volume." Shudder.) He then shows up again on 398 (chapter 32), and finally on 484 (chapter 35).
You argument is normative: this is how things should be, you say. My argument is practical: this is how things are.
Most of the world uses IE. Hardly anybody-- as a fraction of total surfers-- uses Mozilla. Therefore web sites will continue to be built exclusively for IE, because there's just no point in wasting the time to make them work in Mozilla, or any of the other "fringe" browsers. If the designer of the site gets lucky and the pages render identically in IE and Mozilla-- which they probably will, if he sticks to old-school techniques like table-based layouts-- then that's fine and good. But if Mozilla renders the pages incorrectly, that's just too bad.
The Mozilla guys could have nipped this problem in the bud if they'd made their browser rendering engine compatible with IE. There should be a button on the Mozilla interface someplace-- prefs, probably-- that controls whether the engine renders pages according to the paper standard, or whether it renders pages according to the de facto standard. This button should default to IE compatibility.
Since there is no such button, Mozilla is effectively a novelty. Despite what some feature-fetishists may think, the sole and only purpose of a web browser is to render web pages they way the designers intended them to be rendered. If Mozilla can't do that, it's kind of a failure.
Incidentally, your comment that there are "7-10" other web browsers out there seems like a bit of an exaggeration to me. IE and Netscape 4 cover something like 95% of all users, I believe. Mozilla, Opera, iCab, and OmniWeb are all fairly well-known, but a big web site-- like a bank, or a corporate site-- can reasonably expect to go its whole life without ever getting a hit off of any of those browsers. The last site I administered was getting more hits from GoogleBot than it got from all four of those browsers combined.
Just my two cents.
Actually, he's saying that his tuition was inflated some $100 minimum to pay for that "deal."
There's no evidence of this. My girlfriend just graduated from a UT graduate school this past June; she'd been there since before the cheap-Windows-licensing program started. Her tuition didn't change in any meaningful way during her time there. There's no "Microsoft licensing spike" in the tuition curve.
Everything you said is true-- I assume. I won't bother fact-checking you, because the facts of your post aren't relevant.
Saying "IE does it wrong" is kind of like choosing only to speak Esperanto. You may be technically right, but your solution isn't a practical one.
I think Mozilla would be a more useful browser if it could render pages the same way IE renders them. This isn't the case now; pages that render perfectly well in IE fail to render correctly in Mozilla. (I'm too lazy to find an example for you; finding one for yourself shouldn't be difficult, if you're interested in trying.) If I'm looking at a page in Mozilla that doesn't render correctly, I can sit back in my chair and say to myself, with satisfaction, "Well, that's another web site that's written incorrectly. Shame on them!"
And then I close Mozilla and fire up IE, so I can see the page I was looking for. And, since there aren't really any pages that fail to render correctly in IE, I don't see much reason to ever go back to Mozilla. See, because in this example Mozilla has failed to perform its one and only function: rendering web pages.
I've said this before, and I'll say it again: web standards are relevant only to the extent that they reflect the real world. If the page renders correctly in 90% of the world's browser instances, but is in violation of the standard, then it seems to me that the standard-- or at least an up-and-coming implementation of the standard-- needs to be reevaluated.
Any "Educator" who teaches a programming classes and requires a specific compiler is an incompetent idiot and you should not believe a word he says.
I'm not sure I care for your tone, and I certainly don't agree with what you have to say.
Can we agree, for sake of discussion, that it's impossible to teach a programming language without letting the students get in there and program with it? I mean, you can read K&R from start to finish as many times as you like, but you need practical experience writing programs, screwing them up, and fixing them to really understand the language.
So in order to learn, students have to program. And, obviously, their efforts have to be evaluated by the teacher, right? So it's not just a student sitting at his desk writing programs, and compiling and running them, all by himself. There's a feedback loop, and the teacher is an important part of it.
Students in an introductory class are there to learn a language, or an API, or a set of basic concepts. They're not there to learn how to use a particular editor, or compiler, or debugger. The tools they need to use are just... necessary evils, I guess. You can't compile without a compiler, but using the compiler is secondary to your purpose. So the tools-- the editor, compiler, debugger-- should get in the way as little as possible. If you're thinking about how to use the tool, you're not thinking about what you're really there to learn.
The same goes for the teacher. Nobody can be expert in every editor, every compiler, every debugger. If a student has a problem with one of his tools, the teacher needs to be able to get in there, solve the problem quickly, and get the student back on track. In order to do that, the teacher needs to be an expert on the tools used by the students, so he can spend as little time on them as possible.
You see, I think I disagree with you completely. A teacher is responsible for creating an environment in which students can learn what they came to learn, and a good teacher will do what it takes to make that happen. If that means telling the students to write their programs with Visual C++, then good for him.
So, in conclusion, I think the truth is almost the complete opposite of what you said. I think any educator who teaches a programming class and doesn't require each student to use the same compiler and platform probably isn't making a good enough effort to keep the students focused on the material at hand.
Aw, crud. I didn't want to start anything. At least you didn't flame me or moderate me down or any of the other typical Slashdot responses to criticism of RMS. ;-)
My problem with RMS is that he uses the word "freedom" in a fuzzy, high-minded, and confusing way. When he talks about "free software," he's thinking of the software as an animate thing, and granting the software itself certain guarantees. To me, this is counter-intuitive and makes no sense. I think the idea of "freedom" applies to people, not to software, or furniture, or elevators, or other inanimate things.
The net result is that RMS talks about "freedom" in terms of what people aren't or shouldn't be allowed to do. The GPL, for example, is a laundry list of restrictions. His efforts to change the name of the Linux operating system-- without the approval or cooperation of the holder of the Linux trademark, of course-- is another example of his trying to tell people what they should and shouldn't do.
Since you brought up political analogies-- no offense, but yours really wasn't clear to me-- I'll use one of my own. If RMS were a historical figure, I think he'd be Mussolini. Mussolini wasn't an evil man-- not in the sense that Hitler or Stalin were evil-- and his motivations were entirely good. He made the trains run on time, and he did a lot of good for Italy and for the Italian people in the 1920's and 1930's. But behind it all, Mussolini was a totalitarian, ruling with an iron fist. His intentions were good, but his methods were nasty and brutish, and ultimately doomed.
RMS is kind of like that, in some ways. His intentions are evidently good-- I'm suspicious, but I'll offer the benefit of the doubt for now-- but his methods reek of totalitarianism. For RMS, it's his way or the highway; discussion or moderation are unknown to him, and he sees the world very clearly in terms of black-and-white. You're either with RMS or you're against RMS. And he obviously cares more about advancing his own agenda-- which, again, he appears to sincerely believe in-- than he does about people.
I'm sure the world needs RMS. After all, the world needs cockroaches and bubonic plague and those little spiny things you step on at the beach that sting. It's all part of the great circle of life.
This person clearly is not competent enough to teach an intro to computers class...
Dude, where did this come from? Did you get up on the wrong side of the bed, or what?
I hope I never piss you off, BitGeek. "Clearly not competent?" Jeebus. I'd hate to hear what you'd call somebody you'd actually met.
Twirlip of the Mists is one of the posters on the galactic Net. He comes across as either being kind of a newbie, or as communicating in a language so far away from English as to make meaningful translation almost impossible. His big catchphrase is, "Hexapodia is the key insight," and he talks about what humans' having six legs means in the grand scheme of things.
;-)
Of course, toward the end of the book a certain revelation is made that puts Twirlip's comments into an entirely different light. Vinge has been overheard saying that, in fact, Twirlip was the only character in the book to really understand what was going on. He was being mistranslated, but only slightly, and not at all in the way that the other characters thought.
He's my hero.
The Business School, however, uses Microsoft products. They won't buy any of "powerpoint/word/excel is proprietary" arguments -- they'll just smile and tell you that they are the standards.
Can you really argue with them? Take the whole population of Earth. Now sift out everybody that doesn't use a computer (that's most of 'em). You're left with, what, a couple hundred million people? Something like nine out of ten of 'em use Windows.
For editable documents, Word is absolutely the standard. For spreadsheets, there's not even a contest; it's Excel in a walk. And while there are certainly other ways to do viewgraph-style presentations, virtually everybody uses Powerpoint.
Nobody cares that these things are proprietary. They're ubiquitous. That's enough to be called the standard.
If you want to send somebody out into the world to be a salesman-- or any other job in business-- not teaching him how to use Excel would be like not teaching him how to dress himself or eat with utensils.
Windows for $6? How did it get so cheap? Your tuition that could have been spent elsewhere...
So... let me get this straight. You're suggesting that the OP choose a different university because the one in question offers deep student discounts on Microsoft software?
I think you might've left your sense of proportion in your other pants.