The other day, after hearing on a TV show a song which I liked, I spent some time trying to find it on the Internet, so that I could decide if I liked it in order to buy it (Beck, Sissyneck, I think was the song, but I wanted to be sure.)
It would have been nice if it was possible for me to listen to the song, and then even buy it with my credit card online. But apparently no such service exists, despite the technology being available for quite some years now. I searched for two hours and in that time did not manage to find a single site that could either let me listen to the song, or buy it (other than buying the entire CD, which I explicitly did *not* want to do, buying ten songs I DONT like to get one nice song is a dumb dumb dumb concept.)
I even attempted to locate the song illegally, but failed to come up with any site that would let me download before uploading first, a nasty proposition with my 33.6 modem in an African country. I even tried Napster, but failed to get connected to the server every time, I don't know why.
It is no bloody wonder that music piracy is rife on the Net - there *is* practically no way to buy legitimate mp3's online.
"How can a person like me really help the underdeveloped nations of the world?"
I live in a developing country (South Africa) and have been wondering myself what I can do to help give our local "previously disadvanted" people some sort of leg-up into technology (long-term solutions are absolutely the only way to go, i.e. educating people.)
Basically I was thinking about devoting a few hours per week to teaching programming, since that is my field of expertise, and as skills go, its going to be a basic requirement for some time still for any country that wants to prosper.
Not sure where I could go though or how to go about it.
It would be nice if they could set up some sort of index of "how to contact a Geekcorps near you" type of thing. (Mebbe there is one, haven't clicked the link yet..)
"Don't people think that preventing starvation in 3rd world countries would be more important than bringing the internet the 2nd world countries?!?"
A million times no. I see this argument dragged up on/. every single time an article has anything to do with developing countries, and it is quite simply saying that it is better to give people fish than to teach them how to catch fish, which will never get anyone anywhere.
Yes, there are people starving *right now*. And yes, sending them food will help prevent them from starving *right now*. But then five, ten, fifteen, twenty years from now they will *still* be starving, and then their children will be too.
There is only one way to solve the problem and that is to focus on long-term solutions for empowerment: that means precisely two things: education, and technology.
I'm sorry if that proposal does not give you the immediate gratification/satisfaction that somebody somewhere will not starve *today*, but you will just have to learn how to think long-term, rather think about those people's kids, grandkids etc.
By just sending food you achieve nothing other than to perpetuate the problem.
We had a logo (remember that turtle thingy?) course back in Std. 5, in primary school (South African schooling system) thats about 12 years old, that was over ten years ago, on some ancient microcomputers. Looking back that was damn ahead of it's time. Now they have "computer literacy" in the syllabus and I suspect its just learning how to click a link in a browser and type a document in Word and useless crap like that. Heck, there was even a weekly television program for kids where they showed you how to do stuff in Logo, and they had a bunch of kids there on a variety of early computers (commodore's, spectrums, vic20's etc) all doing Logo. In a 3rd world country. Over 10 years ago. I guess the current, sad trend has been towards the stupidification of computing, a very dangerous trend for a third-world country that should be embracing technology if it wants to survive and progress. Personally I think Logo is a really good beginner language for, say, the 6 to 12 age group. BASIC is also good. I really learned to program in QBasic. Now I do fulltime C++. What bothers me most, the way I remember it, the majority of kids were more than capable of understanding how to use Logo. Nowadays we treat kids as if they're generally too fucking stupid to handle that stuff, and we isolate a small percentage of "bright" kids, decide that only they're capable of doing "heavy" stuff like programming, and box everyone into "roles" that usually define the course of their careers before they even hit puberty. "Sorry you're doomed to be a Word "user" for the rest of your life but Johnny over there is clever so he can do programming, guess you'll have to try athletics" type of thing.
Very true. Its the same with software, I think. Now that I'm working and not studying any more I find that I now buy games that I play instead of pirate, I can afford to. And I prefer it. I also believe that if record companies had developed something similar to Napster, but just had a "buy this song" button that allowed you to click-purchase and then "own" the mp3, they would be raking in tons of money now. The main reason I buy very few CD's is that I get forced to buy like ten songs for each song that I like. If I could buy just the songs I wanted (and for that matter songs you just don't find for sale in CD shops anymore) I would buy much more music. Napster could have been an incredibly ideal platform for selling music in a try-before-you-buy fashion. This would also have another effect - raising the general quality of mp3's. I've heard many badly recorded mp3's - parts of songs - songs named incorrectly or attributed to wrong bands, or the title is wrong, or there is noise in the mp3, or its been saved through a crappy sound card mixer and you can't turn the volume up without distortion etc etc etc . If the record company selled "reputable" mp3's, this would be nearly eliminated.
.. but sadly (and disturbingly), the majority of sheeple walking around cannot tell the difference. A fair percentage of people will read the damn thing and walk away thinking Napster is evil. Similarly the US government (and/or petroleum companies) just places one or two "scientists" on prime-time TV in global warming interviews to claim that there is still debate about whether or not it exists. This leaves 90% of the American populace in doubt, and allows the US to continue being the worlds #1 producer of greenhouse gases, without protest. (Also you US ppl have no idea how stupid it makes you guys look internationally - it looks like the rest of the world is trying to figure out *what to do about it*, while the US is still trying to figure out if it exists.) Its the same sort of thing with Microsoft's "freedom to innovate" "lobby". Most people just need one or two fuzzy-heartwarming TV ads to be "given" an opinion on the subject. The education system has to be revamped to teach people critical thought.
I'm afraid I haven't got the experience to comment on Borland's stuff. Basically my boss has a "standardize on MS software" approach, which has its advantages and its disadvantages.
Regarding winsock; there is a fair amount of documentation in MSDN library that is just plain outright incorrect - does not work, e.g. there are docs for IP Multicast that tell you can "setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char*)&mreq, sizeof(mreq))" when the mreq struct does not exist at all and that option isn't an option in "setsockopt".
There are hundreds of things like this in MS documentation. The DirectX docs are riddled with stuff like this. My sockets example was really just an arbitrary example. The WinCE docs that come with the toolkit tell you very explicitly that you can use standard C calls like "fopen" and "fprintf", and even the header files in the SDK refer to stuff like this. Yet they are not supported (they were supported in a later version, but the fact remains that the documentation does not reflect the SDK. There is also some MFC functionality for WinCE that is documented as supported, yet clearly isn't.
DX is exceptionally messy, yes. I don't know if there are wrappers on Borland, but our company has anyway now written our own wrappers (which include transparent OpenGL or DirectX support.)
MFC also has some socket abstraction classes; but I decided against them, since we may have to be portable with Unix/Linux sometime in the near future, plus I wanted to actually know and understand the stuff. It wasn't all that painful (compared to some other MS API's), but it was more painful than it could have been with better documentation.
"The existence of C++ wrappers (MFC, VCL) makes it even easier for newbie programmers to break into GUI programming"
You have clearly either had a fairly limited amount of experience with MFC and/or Win32 and/or DirectX programming, or you have never really used any other API's for UI and gaming, or both.
If its a case of the former, give it a few more years. MFC is one of the most poorly designed hideous UI API messes ever to hit the earth.
If its a case of the latter, then perhaps you just don't know any better.
MFC helps if you write simple applications. Likewise, the documentation (for all of the above) *seems* OK - when you're writing simple applications.
I say give it a few more years experience - try to do some more advanced things with MFC. Write some multithreaded DirectX MFC applications. Throw a couple other API's like sockets and maybe some COM or DCOM stuff into the mix. I think then you may agree with me that MS documentation is up to shit. Its outdated, its incomplete, and in many many cases its just plain *wrong*.
Yes, they have lots of samples. But the samples seldom or never attempt to do anything vaguely non-standard. Try to create applications with dockable dialogs (arbitrary example here) (CDialogBar) and you'll probably give up. How many professional windows apps use these controls? Answer: none. Reason: They are incomplete, unflexible, broken, and don't integrate properly with the classwizard. How about trying to create a CToolBar with more than 256 colors on the bitmaps? (This is the 21st century. 16-color toolbars come rocketing straight out of 1992. MS is waay behind in interface stuff, and always has been.) MFC classes are incredibly unflexible. They only work well and work easily if you stick rigidly within the narrow confines of the limited viewpoint from which they were "designed". People I know who worked at MS on Visual Studio have even told me that when they pushed MFC 1 out the door they knew it was a fat balls-up, but once it was out they were stuck with it.
Try get hold of the WindowsCE toolkit and write some CE apps - ha - then you'll truly know the meaning of incomplete, inconsistent and just plain wrong documentation. Or try to write some networked applications with DCOM.
I've done Unix/Linux programming as well, and I've found the documentation to be far more complete and consistent than on Windows. Heck, I had to use the Linux sockets man pages recently just to figure out windows sockets programming, their sockets documentation is so vague and outdated, and their examples of how to do IP Multicast are completely wrong, just doesn't work.
Don't even get me started on DirectX.
At first I thought your comments were sarcastic, but I suspect perhaps you just haven't gone deep enough yet into the joys of programming with MS API's.
If you've experienced the pain of programming in any of these you will know what I mean. No matter how you look at them they are terrible API's. I would rather there were completely new/different cross-platform API's for GUI and for games development. Something well-designed.
If the system freezes while playing Q3 and you have a GeForce, it might be the motherboard - apparently some motherboards (specifically cheaper ones) do this. Its not the driver and its not nVidia's fault either. We have that problem where I work (we do 3D graphics apps.)
We suspect that the cheaper motherboards cut some corners and can't handle the power requirements of the GeForce (16W).. the GeForce2 uses less power, 9W, so it is quite possible the problem won't exist on the GeForce2.
I don't know if this is the prob you are referring to, but it sounded like it might be.
Sorry to go offtopic here, but I would much appreciate it if you could answer a question for me. The display brightness slider in Q3A seems to work differently in NT, I find the optimum brightness is at around 40% of the way (all the way and it gets pretty dark) but its still not as bright as it should be. This is with TNT, TNT2 and GeForce, so it might be an nvidia thing, or it might be an NT thing, but if you have a "fix" for this problem I'd appreciate it.
Hmm.. I program because it's fun. Been doing it for about 8 years now, and I've never really considered any long-term goals. Just to be good at it, and to have fun.
Since you feel so strongly about the point, clearly I have missed something basic, which I am hoping you could answer for me, which is:
Where do you draw the line?
If you could be so kind as to provide me with a definition that will satisfactorily categorize file transfer tools into the two categories "legal" and "illegal" then I will agree with your point and forever be on your side.
But if you fail to provide that definition, then I consider your argument null and void, since there would be no clear way of determining which file transfer tools are "OK" and which are not (in which case we would either have to ban all of them (remove the Internet, in other words), or none of them.)
No matter how you look at it, Napster can be used to trade mp3 (and other) files legally. And no matter how you look at it, http, ftp, nfs, smb, gopher, nntp and smtp/pop (I've probably left out dozens) can all be used as a conduit for illegal trade of copyrighted material (and in fact are on a daily basis all over the world). So please tell me where the line is drawn (a concrete definition plz, not just something vague). Since you seem so sure of yourself I am assuming you have an answer.
"In what way did they do the right thing ? deCSS is only illegal in the US."
What makes this worse is that the site didn't have deCSS on it anyway, just some spoof software. They just saw a scary looking lawyer letter and killed the site without even checking the site, presumable in order to avoid the controversy of a possible lawsuit (nobody has the guts to fight anything these days.) The irony is that this action brought just as much, if not more controversy. Idiots.
Students attend Oxford for free? Thats pretty cool.. in my country we have to pay to attend University - and pay and pay and pay. We pay thousands and thousands to attend courses - students pay in the region of half of the University's expenses. Only half of the Univ's expenses are covered by taxes over here.
"Microsoft's implementation does intero perate with other implementations. You just can only get the PAC data from a Windows 2000 KDC, which requires you to have a Windows 2000 KDC in addition to your non-Windows TGS"
So what you are saying is that Microsoft's implemention does interoperate, except that it doesn't.
Unless you use a different definition of "interoperate" to the rest of the world.
On the other hand it was impossible to not have heard of Amazon (and I live in South Africa, not in Europe or in the US)
I can only assume that they had a rather weak advertising campaign, in which case it is no wonder they went down. A lot of people seem to think that these days you can just put up a web site selling some goods and suddenly you'll be rich. Hardly. All the same old business principles apply to ecommerce.
"I harldy ever use graphical environments, and don't see how it adds a huge amount to my work..."
Try (for just a few seconds) to look outside of your own personal sphere of computing experience, which you say requires very little, if anything, in the way of a graphical environment. Consider for a moment that there may be other people who perform tasks on computers totally unrelated to your line of work, that do require a graphical environment. Like photo-editting for example (I challenge you to name any popular magazine published in the last 5 years that does not use computers to (at the very least) touch up photos). Video-editting is another. CAD and 3D Design are more examples. How about architectural design programs? Virtual Reality? Games?
Humans naturally process information visually, so it makes sense to build tools that take advantage of that. It is far more useful for an architect, for example, to be able to see a graphical depiction of his design than a bunch of numbers in a text file. Photo editors may be able to do a lot of cool stuff with scripts - but with nothing graphical to display the results on, those scripts are useless.
Even in programming there are many possibilities for visualizing information in a useful way that would be much harder (or impossible) to do with just a CLI. For example, a profiler can use graphs to make it easy for a programmer doing optimizations to spot the trouble-spots in his code extremely quickly. Graphical tree or graph widgets can be used to help visualize the dependencies within modules in an application - allowing a newcomer to learn the overall layout of the source code in seconds, rather than hours.
Of course, the mere ability to display numerical data graphically is useful in almost any industry. E.g. by graphing a stock price over time you can glean information about the trends in a couple of seconds; that would take you hours to do manually by trying to stare at the numbers. Yes, you could draw a bar graph on a CLI - but you simply don't have quite the same sampling resolution. Neither do you have the ability to draw other types of graphs very well, such as pie charts. A CLI absolutely sucks when it comes to displaying mathematical formulas - or even simple superscript/subscript text for that matter.
Games are another technology driver that scream for cool graphics. The industry of computer games (and more generally, entertainment) form a large part of the economy and create many jobs. This industry would not be possible if we all used CLI's. I'm sure that a text mode Quake3Arena would just not have quite the same feel.
Virtual Reality applications absolutely have to have the best possible graphics. VR applications are immeasurably useful as industrial training tools that can be used to train workers to not only be more productive, but to be better equipped to handle emergency situations, and thus save lives (e.g. a coal-mining training simulator.) Can't do it with just a CLI.
I'm sure that sound mixing and editting could potentially be done using just a CLI; but just by using some more advanced visualization methods for sound (even a simple waveform for example) helps a sound editor immeasurably in getting his/her job done quicker and easier.
There are hundreds more potential applications for computers that have graphical environment.
Considering that a CLI can exist as a subset of a graphical environment (eg xterms) I don't see any reason not to build computers to support *both*.
If computers did not have graphic environments then they, as tools, would not be general-purpose enough to be very useful or popular.
You stick to your xterms (or DOS boxes if thats your thing) if you like, but open your mind a bit. Not only sysadmins and programmers sit behind computers.
"They are trying to make their public relations nightmare worse then it already is"
I have to wonder to myself whether MS really believes it has "done nothing wrong" (unlikely, but thats what they keep trying to tell the mainstream), or if they know they're guilty as sin but just don't care. Either way, it seems like its "business as usual" at Microsoft. Arrogance, perhaps? A misguided sense of immortality? The only thing that will save MS from disappearing altogether during the next ten years is a complete change of "business culture". That means pulling out the people at the top, including BG.
The other day, after hearing on a TV show a song which I liked, I spent some time trying to find it on the Internet, so that I could decide if I liked it in order to buy it (Beck, Sissyneck, I think was the song, but I wanted to be sure.)
It would have been nice if it was possible for me to listen to the song, and then even buy it with my credit card online. But apparently no such service exists, despite the technology being available for quite some years now. I searched for two hours and in that time did not manage to find a single site that could either let me listen to the song, or buy it (other than buying the entire CD, which I explicitly did *not* want to do, buying ten songs I DONT like to get one nice song is a dumb dumb dumb concept.)
I even attempted to locate the song illegally, but failed to come up with any site that would let me download before uploading first, a nasty proposition with my 33.6 modem in an African country. I even tried Napster, but failed to get connected to the server every time, I don't know why.
It is no bloody wonder that music piracy is rife on the Net - there *is* practically no way to buy legitimate mp3's online.
"How can a person like me really help the underdeveloped nations of the world?"
I live in a developing country (South Africa) and have been wondering myself what I can do to help give our local "previously disadvanted" people some sort of leg-up into technology (long-term solutions are absolutely the only way to go, i.e. educating people.)
Basically I was thinking about devoting a few hours per week to teaching programming, since that is my field of expertise, and as skills go, its going to be a basic requirement for some time still for any country that wants to prosper.
Not sure where I could go though or how to go about it.
It would be nice if they could set up some sort of index of "how to contact a Geekcorps near you" type of thing. (Mebbe there is one, haven't clicked the link yet ..)
"Don't people think that preventing starvation in 3rd world countries would be more important than bringing the internet the 2nd world countries?!?"
A million times no. I see this argument dragged up on /. every single time an article has anything to do with developing countries, and it is quite simply saying that it is better to give people fish than to teach them how to catch fish, which will never get anyone anywhere.
Yes, there are people starving *right now*. And yes, sending them food will help prevent them from starving *right now*. But then five, ten, fifteen, twenty years from now they will *still* be starving, and then their children will be too.
There is only one way to solve the problem and that is to focus on long-term solutions for empowerment: that means precisely two things: education, and technology.
I'm sorry if that proposal does not give you the immediate gratification/satisfaction that somebody somewhere will not starve *today*, but you will just have to learn how to think long-term, rather think about those people's kids, grandkids etc.
By just sending food you achieve nothing other than to perpetuate the problem.
We had a logo (remember that turtle thingy?) course back in Std. 5, in primary school (South African schooling system) thats about 12 years old, that was over ten years ago, on some ancient microcomputers. Looking back that was damn ahead of it's time. Now they have "computer literacy" in the syllabus and I suspect its just learning how to click a link in a browser and type a document in Word and useless crap like that. Heck, there was even a weekly television program for kids where they showed you how to do stuff in Logo, and they had a bunch of kids there on a variety of early computers (commodore's, spectrums, vic20's etc) all doing Logo. In a 3rd world country. Over 10 years ago. I guess the current, sad trend has been towards the stupidification of computing, a very dangerous trend for a third-world country that should be embracing technology if it wants to survive and progress. Personally I think Logo is a really good beginner language for, say, the 6 to 12 age group. BASIC is also good. I really learned to program in QBasic. Now I do fulltime C++. What bothers me most, the way I remember it, the majority of kids were more than capable of understanding how to use Logo. Nowadays we treat kids as if they're generally too fucking stupid to handle that stuff, and we isolate a small percentage of "bright" kids, decide that only they're capable of doing "heavy" stuff like programming, and box everyone into "roles" that usually define the course of their careers before they even hit puberty. "Sorry you're doomed to be a Word "user" for the rest of your life but Johnny over there is clever so he can do programming, guess you'll have to try athletics" type of thing.
Very true. Its the same with software, I think. Now that I'm working and not studying any more I find that I now buy games that I play instead of pirate, I can afford to. And I prefer it. I also believe that if record companies had developed something similar to Napster, but just had a "buy this song" button that allowed you to click-purchase and then "own" the mp3, they would be raking in tons of money now. The main reason I buy very few CD's is that I get forced to buy like ten songs for each song that I like. If I could buy just the songs I wanted (and for that matter songs you just don't find for sale in CD shops anymore) I would buy much more music. Napster could have been an incredibly ideal platform for selling music in a try-before-you-buy fashion. This would also have another effect - raising the general quality of mp3's. I've heard many badly recorded mp3's - parts of songs - songs named incorrectly or attributed to wrong bands, or the title is wrong, or there is noise in the mp3, or its been saved through a crappy sound card mixer and you can't turn the volume up without distortion etc etc etc . If the record company selled "reputable" mp3's, this would be nearly eliminated.
I'm afraid I haven't got the experience to comment on Borland's stuff. Basically my boss has a "standardize on MS software" approach, which has its advantages and its disadvantages.
Regarding winsock; there is a fair amount of documentation in MSDN library that is just plain outright incorrect - does not work, e.g. there are docs for IP Multicast that tell you can "setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char*)&mreq, sizeof(mreq))" when the mreq struct does not exist at all and that option isn't an option in "setsockopt".
There are hundreds of things like this in MS documentation. The DirectX docs are riddled with stuff like this. My sockets example was really just an arbitrary example. The WinCE docs that come with the toolkit tell you very explicitly that you can use standard C calls like "fopen" and "fprintf", and even the header files in the SDK refer to stuff like this. Yet they are not supported (they were supported in a later version, but the fact remains that the documentation does not reflect the SDK. There is also some MFC functionality for WinCE that is documented as supported, yet clearly isn't.
DX is exceptionally messy, yes. I don't know if there are wrappers on Borland, but our company has anyway now written our own wrappers (which include transparent OpenGL or DirectX support.)
MFC also has some socket abstraction classes; but I decided against them, since we may have to be portable with Unix/Linux sometime in the near future, plus I wanted to actually know and understand the stuff. It wasn't all that painful (compared to some other MS API's), but it was more painful than it could have been with better documentation.
"The existence of C++ wrappers (MFC, VCL) makes it even easier for newbie programmers to break into GUI programming"
You have clearly either had a fairly limited amount of experience with MFC and/or Win32 and/or DirectX programming, or you have never really used any other API's for UI and gaming, or both.
If its a case of the former, give it a few more years. MFC is one of the most poorly designed hideous UI API messes ever to hit the earth.
If its a case of the latter, then perhaps you just don't know any better.
MFC helps if you write simple applications. Likewise, the documentation (for all of the above) *seems* OK - when you're writing simple applications.
I say give it a few more years experience - try to do some more advanced things with MFC. Write some multithreaded DirectX MFC applications. Throw a couple other API's like sockets and maybe some COM or DCOM stuff into the mix. I think then you may agree with me that MS documentation is up to shit. Its outdated, its incomplete, and in many many cases its just plain *wrong*.
Yes, they have lots of samples. But the samples seldom or never attempt to do anything vaguely non-standard. Try to create applications with dockable dialogs (arbitrary example here) (CDialogBar) and you'll probably give up. How many professional windows apps use these controls? Answer: none. Reason: They are incomplete, unflexible, broken, and don't integrate properly with the classwizard. How about trying to create a CToolBar with more than 256 colors on the bitmaps? (This is the 21st century. 16-color toolbars come rocketing straight out of 1992. MS is waay behind in interface stuff, and always has been.) MFC classes are incredibly unflexible. They only work well and work easily if you stick rigidly within the narrow confines of the limited viewpoint from which they were "designed". People I know who worked at MS on Visual Studio have even told me that when they pushed MFC 1 out the door they knew it was a fat balls-up, but once it was out they were stuck with it.
Try get hold of the WindowsCE toolkit and write some CE apps - ha - then you'll truly know the meaning of incomplete, inconsistent and just plain wrong documentation. Or try to write some networked applications with DCOM.
I've done Unix/Linux programming as well, and I've found the documentation to be far more complete and consistent than on Windows. Heck, I had to use the Linux sockets man pages recently just to figure out windows sockets programming, their sockets documentation is so vague and outdated, and their examples of how to do IP Multicast are completely wrong, just doesn't work.
Don't even get me started on DirectX.
At first I thought your comments were sarcastic, but I suspect perhaps you just haven't gone deep enough yet into the joys of programming with MS API's.
If you've experienced the pain of programming in any of these you will know what I mean. No matter how you look at them they are terrible API's. I would rather there were completely new/different cross-platform API's for GUI and for games development. Something well-designed.
"Supposedly, there is still an occasional crash"
If the system freezes while playing Q3 and you have a GeForce, it might be the motherboard - apparently some motherboards (specifically cheaper ones) do this. Its not the driver and its not nVidia's fault either. We have that problem where I work (we do 3D graphics apps.)
We suspect that the cheaper motherboards cut some corners and can't handle the power requirements of the GeForce (16W) .. the GeForce2 uses less power, 9W, so it is quite possible the problem won't exist on the GeForce2.
I don't know if this is the prob you are referring to, but it sounded like it might be.
Sorry to go offtopic here, but I would much appreciate it if you could answer a question for me. The display brightness slider in Q3A seems to work differently in NT, I find the optimum brightness is at around 40% of the way (all the way and it gets pretty dark) but its still not as bright as it should be. This is with TNT, TNT2 and GeForce, so it might be an nvidia thing, or it might be an NT thing, but if you have a "fix" for this problem I'd appreciate it.
Hmm .. I program because it's fun. Been doing it for about 8 years now, and I've never really considered any long-term goals. Just to be good at it, and to have fun.
Since you feel so strongly about the point, clearly I have missed something basic, which I am hoping you could answer for me, which is:
Where do you draw the line?
If you could be so kind as to provide me with a definition that will satisfactorily categorize file transfer tools into the two categories "legal" and "illegal" then I will agree with your point and forever be on your side.
But if you fail to provide that definition, then I consider your argument null and void, since there would be no clear way of determining which file transfer tools are "OK" and which are not (in which case we would either have to ban all of them (remove the Internet, in other words), or none of them.)
No matter how you look at it, Napster can be used to trade mp3 (and other) files legally. And no matter how you look at it, http, ftp, nfs, smb, gopher, nntp and smtp/pop (I've probably left out dozens) can all be used as a conduit for illegal trade of copyrighted material (and in fact are on a daily basis all over the world). So please tell me where the line is drawn (a concrete definition plz, not just something vague). Since you seem so sure of yourself I am assuming you have an answer.
"In what way did they do the right thing ? deCSS is only illegal in the US."
What makes this worse is that the site didn't have deCSS on it anyway, just some spoof software. They just saw a scary looking lawyer letter and killed the site without even checking the site, presumable in order to avoid the controversy of a possible lawsuit (nobody has the guts to fight anything these days.) The irony is that this action brought just as much, if not more controversy. Idiots.
"The students don't pay for their access"
Students attend Oxford for free? Thats pretty cool .. in my country we have to pay to attend University - and pay and pay and pay. We pay thousands and thousands to attend courses - students pay in the region of half of the University's expenses. Only half of the Univ's expenses are covered by taxes over here.
.. how is this different to the US?
"Microsoft's implementation does intero perate with other implementations. You just can only get the PAC data from a Windows 2000 KDC, which requires you to have a Windows 2000 KDC in addition to your non-Windows TGS"
So what you are saying is that Microsoft's implemention does interoperate, except that it doesn't.
Unless you use a different definition of "interoperate" to the rest of the world.
On the other hand it was impossible to not have heard of Amazon (and I live in South Africa, not in Europe or in the US)
I can only assume that they had a rather weak advertising campaign, in which case it is no wonder they went down. A lot of people seem to think that these days you can just put up a web site selling some goods and suddenly you'll be rich. Hardly. All the same old business principles apply to ecommerce.
"replenticize, and gastrosize"
Seriously, did you make those up, or do they really exist?
"I harldy ever use graphical environments, and don't see how it adds a huge amount to my work..."
Try (for just a few seconds) to look outside of your own personal sphere of computing experience, which you say requires very little, if anything, in the way of a graphical environment. Consider for a moment that there may be other people who perform tasks on computers totally unrelated to your line of work, that do require a graphical environment. Like photo-editting for example (I challenge you to name any popular magazine published in the last 5 years that does not use computers to (at the very least) touch up photos). Video-editting is another. CAD and 3D Design are more examples. How about architectural design programs? Virtual Reality? Games?
Humans naturally process information visually, so it makes sense to build tools that take advantage of that. It is far more useful for an architect, for example, to be able to see a graphical depiction of his design than a bunch of numbers in a text file. Photo editors may be able to do a lot of cool stuff with scripts - but with nothing graphical to display the results on, those scripts are useless.
Even in programming there are many possibilities for visualizing information in a useful way that would be much harder (or impossible) to do with just a CLI. For example, a profiler can use graphs to make it easy for a programmer doing optimizations to spot the trouble-spots in his code extremely quickly. Graphical tree or graph widgets can be used to help visualize the dependencies within modules in an application - allowing a newcomer to learn the overall layout of the source code in seconds, rather than hours.
Of course, the mere ability to display numerical data graphically is useful in almost any industry. E.g. by graphing a stock price over time you can glean information about the trends in a couple of seconds; that would take you hours to do manually by trying to stare at the numbers. Yes, you could draw a bar graph on a CLI - but you simply don't have quite the same sampling resolution. Neither do you have the ability to draw other types of graphs very well, such as pie charts. A CLI absolutely sucks when it comes to displaying mathematical formulas - or even simple superscript/subscript text for that matter.
Games are another technology driver that scream for cool graphics. The industry of computer games (and more generally, entertainment) form a large part of the economy and create many jobs. This industry would not be possible if we all used CLI's. I'm sure that a text mode Quake3Arena would just not have quite the same feel.
Virtual Reality applications absolutely have to have the best possible graphics. VR applications are immeasurably useful as industrial training tools that can be used to train workers to not only be more productive, but to be better equipped to handle emergency situations, and thus save lives (e.g. a coal-mining training simulator.) Can't do it with just a CLI.
I'm sure that sound mixing and editting could potentially be done using just a CLI; but just by using some more advanced visualization methods for sound (even a simple waveform for example) helps a sound editor immeasurably in getting his/her job done quicker and easier.
There are hundreds more potential applications for computers that have graphical environment.
Considering that a CLI can exist as a subset of a graphical environment (eg xterms) I don't see any reason not to build computers to support *both*.
If computers did not have graphic environments then they, as tools, would not be general-purpose enough to be very useful or popular.
You stick to your xterms (or DOS boxes if thats your thing) if you like, but open your mind a bit. Not only sysadmins and programmers sit behind computers.
Spoiler: somewhat off-topic
"They are trying to make their public relations nightmare worse then it already is"
I have to wonder to myself whether MS really believes it has "done nothing wrong" (unlikely, but thats what they keep trying to tell the mainstream), or if they know they're guilty as sin but just don't care. Either way, it seems like its "business as usual" at Microsoft. Arrogance, perhaps? A misguided sense of immortality? The only thing that will save MS from disappearing altogether during the next ten years is a complete change of "business culture". That means pulling out the people at the top, including BG.
"if you made a computer out of molecules"
Hmm .. my computer is already made out of molecules ..