I don't want to rain on your parade -- I love Firewire, and I dream of the day that setting up a home theatre system is this easy -- but there's a possible downside: they'll put DRM in everything so being able to record off satellite isn't really that easy. Gah.
Well, look at the case with DVD and region codes... it will only take 1 device, produced by some chinese or taiwanese company, with a hidden "developer mode" which was "accidentally" left in the shipped products, and we'll be able to get the clear signal.
And, since it's all digital, it won't matter if it's some shady fly-by-night, even... Digital is digital, we'll get the true copy out, rather than complaining because only Hwang Sung's discount electronics has a device like this and it looks fuzzy on NTSC screens, or whatever.
I have seen people talking about Plan 9 before, and the way all communication is handled via pipes, but I still don't see the advantage...
First of all, I suspect that handling all interaction over pipes like this might be rather slower than binary interfaces, but I can ignore that for now.
The other concern is that it doesn't really matter that everything can be talked to as if it were a socket/file. Looking at your example:
echo 'connect slashdot.org!80' >/net/tcp/$n/ctl
First of all, being brand new to Plan 9, I wouldn't know that I have to access/net/tcp/$n/ctl for a new socket (I am assuming $n means "allocate a new one"?).
Secondly, not knowing how to use Plan 9 at all, I wouldn't know that the magic command is "connect slashdot.org!80" to open my connection. I would have to have a reference open to see which commands make sense.
So, what is the benefit?
As for programs compiled *before* you wrote yours, that is a standard concept for years now, interface-driven programming... In Linux, you can write your own filesystem driver, and then anything can use it just like any other filesystem, as long as you conform to the correct interface. You can do user-level filesystems in Linux, with the same results.
In Java and SmallTalk, I can use reflection capabilities to talk to everything as if it were an object. I can enumerate fields and methods, and invoke them dynamically.
Why is it better to talk to everything as a socket?
Re:What about ad-hoc cash transfers?
on
Cashless Society
·
· Score: 1
(4) How do you give the kids a few dollars to shop or grab a bite? How do you give them one dollar to grab candy before the movie starts?
You cheap bastard! I'd hate to be your kid. Around here, 1 dollar is enough to buy like 4 raisinets or 2 swedish fish.
This makes me wonder.... why bother with the Make-Work of moving to Linux in the first place? Why no keep working on the existing tuned kernels of AIX, IRIX, Tru64, etc?
Give me the url where I can download and compile the source for AIX or IRIX, and then maybe I'll understand how things are "the same".
Because Linux is GPL, all of their modifications will have to be GPL'ed as well. IBM has excellent stability, reduncancy, and scalability. SGI is known for having good graphics and scalability... When all of their modifications have to be opened under the GPL, everyone will benefit.
And, when IBM (and other giants) have invested lots of time, money, and code in Linux, if some shyster comes along and tries legal loophole tricks to keeping their code closed, they will be slapped down.
Ali estimates that for every e-mail Penn Media sends out, his firm wins one sale and retail stores win 20.
21 sales for every email sent???? Who the fuck is this guy trying to kid?????
They meant batches of emails, not individual emails. So when they send a spam batch to 100k email addresses (or however many they do), they result in 21 sales.
Well firstly your solution presumes that one's time is free: If you put a value on the hours you spend putting the system together, configuring all of the software, etc, suddenly it isn't economical.
We've all heard this argument before, but I still don't buy it. If, rather than vegetating in front of the TV, or playing counter-strike, or going out to eat, I can spend 2 nights figuring out and configuring XYZ, while saving myself a couple of hundred bucks and ending up with something *better* than just forking over my money, then it is economical, by quite a margin.
As a professional programmer, if I were to bill these hours spent, I would get $200-$600... But I haven't "lost" this money by spending my time doing it this way.
It might make a lot of sense for MS to give out the source to the windows 95 codebase, as it is old and decrepit and would cost more to understand than to reimplement.
Tell that to the WINE folks. I'm sure they will be pleased with this trivialization of their years of hard work.
Recently, I took a job at Home Depot, and during the "training", the teaching lady had some funny stories about product returns, all of which allegedly happened at our site (Portsmouth, NH). The best ones I can remember:
Somebody brought in 4 automobile tires to return. Home Depot doesn't sell tires, but they accepted them for store credit.
Some old woman brought in a half dozen muffins. Previously to Home Depot, a big supermarket wholesaler (CostCo or Sam's Club, can't remember which) was at that location... Several years before, the woman had bought the muffins at this store, then put them in her freezer. So, several years later, she pulled them out, thawed them, and realized that now they didn't taste very good at all, so she brought them back to the store, which accepted the return.
The best one: Some guy brought in a "shrubbery", a shriveled up plant/shrub thing, which was obviously dead, and which he had dug up and put in his truck. This was in the winter time. Its leaves were all shriveled and brown, etc... The manager asked him when he had gotten it, he said a few years before. The manager asked him why he was upset, the guy said because it had died. The manager asked him if he knew what kind of plant it was, he didn't... He asked him if he knew how much he paid for it, the guy said "I don't know, like $30 or $40"... So, the store accepted the return, and actually gave him cash... Later, the manager found out, that there was a nasty hole in parking lot, because apparently this guy had just dug up one of Home Depot's own plants right out of the parking lot and brought it in.
(All of these anecdotes, particularly the third, smack of urban legend, so take them with a grain of salt, but still funny)
My word, when will these overbearing government goofballs learn that having LOW taxes while surrounded by HIGH tax areas drives business AND revenues up for the low tax area?
Exactly. Here in New Hampshire, we have the highest alcohol purchase per capita of any of the states (and it's about twice as high as the next runner-up). This is because alcohol is really cheap here, and people drive over the border from the neighboring states to buy it.
Actually, New Hampshire's "taxes" on alcohol are "very high" (NH in fact makes more money per bottle than other states), but hard licquor is a state-owned monopoly, so we're still cheaper than everyplace else.
Also, NH has no sales tax, so we get lots of people driving in from that, too.
NH is a great example, in my opinion, of two concepts: The lower taxes (eq prices) thing you mentioned which attracts out of state commerce, and the concept of "state monopoly on vice" being very profitable.
I am not a smoker, and I am continually surprised at how expensive the habit is... I can only imagine how much the state would make if it controlled tobacco sales this way (especially, with tobacco being cheaper overall just like alcohol).
Would you be the first to turn in your friends and family, or are the people that made the tools responsible for bending and warping their puny little minds into acts of wonton piracy?
Arrr, me eye spots another trade ship from the orient! Ready the cannons, and pull hard to starboard! Wonton soup for everyone who lives through it boys, and if luck be with us, we'll score some crab rangoons and general tso's chicken!
Re:Any good compilers out there.
on
GCC 3.2 Released
·
· Score: 2, Insightful
On some areas, GCC is faster, while on other areas, GCC is slower than Intel C++. But all in all, GCC is quite good.
I'd like to see a real benchmark of this. The same exact thing is said about every language/compiler by its proponents (think java vs c/c++, etc)...
Quake for the blind is almost just like normal quake: The only difference is there are two new buttons, labelled "Marco" and "Polo", but I can't figure out what they're for.
I have thought of this myself, although I'm too lazy to implement it.
Chess is extremely parallelizable, since each of your N possible moves must be evaluated seperately, you can divide them among your K cpus which are participating... (Deep Blue had 256 CPUS, if I recall correctly)
The only major penalty for a distrubuted venture such as this that I can think of is that cached board information can't be shared across nodes... Most chess computers cache the results of evaluating different board positions, so that you don't need to (re-)evaluate everything for different move orders which end up with the same board position.
And depending on the formulas I used, this could confuse the simulated scientists in my universe, who would be wondering how electrons could pass through two slits simultaneously, but only when they weren't looking. Wait a minute...
Electrons don't pass through two slits simultaneously. Each electron goes through only 1 slit. The probability of each electron going through slit A vs slit B is described by the "wave equation"...
IE, for some physical configuration, it has a 20% chance of A and an 80% chance of B... But "all" of the particle passes through whichever slit is "chosen".
And chess can be played until infinity as far as I know, though I don't really involve myself with the game that much. Picture a board with only 2 kings and a rook on it; either player can keep it going on to infinity.
Yeah, I guess you don't involve yourself with the game much... This is an elementary forced win for the guy with the rook:)
Of course they can change the agreement. try to imagine dealing with Darth Vader in The Empire Strikes Back ("I have changed the conditions of our deal, pray that I do not change them again!") That's what all that fine print at the bottom of the contract is:) But seriously, you don't really believe any company adheres to its "privacy policy" do you?:)
In fact, every company does adhere to its "privacy policy"! It's just that if you do read all the fine print, the privacy policy is "you have none. bitch."
Check the mozilla source code for what's required for a browser... Even after you remove things that are more than just the browser (mail, news, etc), there is still quite a bit of work on top of an HTML renderer.
The net layer stuff for communication with servers, bookmarks, history, security, etc...
If the 'HTML component' does all of this, then I would argue its a part of IE.
PS: let's just consider the fact that everyone is already familiar with the 'mozilla bloat' jokes/comments and we don't need to rehash them:)
What you are missing here is that these terms only apply to the actual BSD-licensed source files. This is like the LGPL, in that I can take a BSD-licensed project Foo, and build my own project Bar which depends on Foo in some way (say, linking it in, or perhaps just grabbing its source files). I must maintain the proper copyright notice on any Foo source files which I modify or redistribute, and I must display the copyright notice in any binaries I distribute, but I don't have to license my own software under the BSD license.
With the GPL, I must license my own software under the GPL. This is why the GPL is considered "viral". The people who argue that the opponents of the GPL are "misinformed" when you say you can't use GPL software commercially are hiding behind a technicality, purposefully choosing the technical definition of the word "commercially". Since you can't really charge people $50/copy for GPL'd software (since they can demand the source and make as many copies as they want), you can't really license the software "commercially", in the normal meaning of the word. Whether licensing software "commercially" is immoral or not is beside the point.
The only way you can consider the BSD license "viral" is in that someone else, if they take my (open source licensed) project, and build off of it, must still include the copyright notices in source and binary, as long as parts of Foo are still being used.
In short, it is perfectly acceptable for me to take some BSD code and build some closed source, commercially licensed software off of it (perhaps I would call this software MacOSX?), as long as my software includes the proper notice that I depend on BSD licensed code.
Re:Best RTS ever in my not so humble opinion...
on
HIstory of RTS Games
·
· Score: 3, Interesting
Yes, I agree completely. I have long thought TA the best RTS game, and I have played a *lot* of games.
Bias in my thoughts: I have certainly played the games I like much more than the others, but the ones I profess to have experience in, I really have played and evaluated long enough that I consider my judgement valid. I love to play games, but I don't really enjoy single player games. If all my friends want to play StarCraft, then that's what I play, even if I consider it vastly inferior to TA. I have played War2, SC, AOE, AOE2, C&C, and several others. Each of these I have played for at least 50-100 hours... (TA I have played 1000s of hours worth).
In the TA community, I played on Kali and was known as 'Blade.java'.
Anyway, Total Annihilation:
To corroborate King_TJ, the worst part of the game was its network code. Strangely, it seemed to work better in the early days than the later ones (and later patch versions).
TA had lots of elements that were incredible, and some that still haven't been surpassed. The only good concept I can think of that another game had which TA lacked was random map generation.
The resource model was better than any other. I have read AOE2 fan sites that lambaste TA for its 'terrible resource management'. This is ludicrous, they must not have spent very long evaluating it. More resources doesn't equate to a better resource model. TA had only 2 resources, energy and metal. The most interesting aspect of TA's resource model was that your resource store was "continuum based": All of your resource income and expenditure was like "+2.3 metal/sec -1.5 energy/sec" from an individual mine, and maybe you have a vehicle construction unit building a laser tower for "-5.3 metal/sec -30.2 energy/sec" or something... The different construction units built at different speeds. The most important part was that you could start building anything you wanted regardless of resource cost. For example, it might cost 2000metal and a lot of energy (metal was far more important than energy) to build an advanced construction yard. Even if you only had 100 metal on you, you could start the construction immediately... Your construction unit might use up 10 metal/sec, so your metal will be used up quick, but you can still build. If you run out of metal, some building projects don't get built during that second (if you bring in 20 metal and try spend 30, some things don't get done)...
Also interesting about the resource model was "corpses"... If you attack me and fail to do much damage, there is a good chance you are in a lot worse position than you were, since your units die and leave behind "corpses" or "husks" which have lots of metal on them, and I can send out construction units to reclaim the metal (and then build my own army faster).
Also interesting is the concept of the Commander. Other games have this concept in varying degrees now, and perhaps TA wasn't the first, but it was the first to do it well. The commander, (your starting unit), is very powerful fighting and a very quick construction unit. Also interesting, is that the commander becomes a liability in lategame. He is not powerful enough on his own to be useful (his build speed is still useful), but if he is destroyed, depending on the game settings you either lose the game immediately, or, he explodes with the force of a nuclear missile (which basically destroys everything within a rather large radius).
One of the better aspects of TA is that just mindlessly churning out units and trying to overwhelm your enemy is not nearly so useful as in other games. (People who have played other games and then evaluate TA often say TA is bad *because* this is what happens, but that is typically due to their inexperience).
Some people attack TA because it has "too many units", and "they all look alike": I suppose this is just a matter of taste, and I agree it can be daunting to new users. However, I can say without exaggerating that except for a small handful (less than 5) of the 300+ units, every single unit has its uses, and they all get used by experienced players. Contrast this with other games, where they have maybe 50 units, and perhaps 5 or 10 see regular use.
My specific bitches about other RT"S" games typically come from the micromanagement factor. SC is by far the worst in this area, IMO, but the others commit the crime much more than TA. Examples from SC: the terran tanks, going out of siege mode, sneaking forward a tile, then going into siege mode. Also, how important the spellcasters are: A single spell can really spell(har har) the difference in the game, for example by taking out several 1000s worth of resource by killing a group of marines or zerglings... And every spell must be handled and cast manually! Another example: Look at the descriptions of "championship matches" involving SC or AOE and the like. Invariably they revolve around distracting your opponent and then surprise attacking another area. This is a high level tactic almost verging on actual strategy, which is commendable, but the fact remains that the units fight so terribly they must be handheld. TA has its own failures in this area, but they are not nearly so grevious as other ones.
A million factors make TA a much deeper game than most Realtime "Strategy" games. I put "Strategy" in quotes because I hold that there is very little strategy that goes into them, but rather tactics. This is not to say they aren't fun, I rather enjoy some of them, but I do maintain that they are named incorrectly. TA has both strategic and tactical levels.
OK, I suppose I have ranted enough. I don't even suppose people will care very much about an older game anyway.
For once, I feel slightly smarter after reading slashdot instead of feeling like someone has attempted a lobotamy on me with a vacuum cleaner.
I'd rather have a bottle in front of me!
(Than a frontal lobotomy).
I don't want to rain on your parade -- I love Firewire, and I dream of the day that setting up a home theatre system is this easy -- but there's a possible downside: they'll put DRM in everything so being able to record off satellite isn't really that easy. Gah.
Well, look at the case with DVD and region codes... it will only take 1 device, produced by some chinese or taiwanese company, with a hidden "developer mode" which was "accidentally" left in the shipped products, and we'll be able to get the clear signal.
And, since it's all digital, it won't matter if it's some shady fly-by-night, even... Digital is digital, we'll get the true copy out, rather than complaining because only Hwang Sung's discount electronics has a device like this and it looks fuzzy on NTSC screens, or whatever.
I have seen people talking about Plan 9 before, and the way all communication is handled via pipes, but I still don't see the advantage...
/net/tcp/$n/ctl
/net/tcp/$n/ctl for a new socket (I am assuming $n means "allocate a new one"?).
First of all, I suspect that handling all interaction over pipes like this might be rather slower than binary interfaces, but I can ignore that for now.
The other concern is that it doesn't really matter that everything can be talked to as if it were a socket/file. Looking at your example:
echo 'connect slashdot.org!80' >
First of all, being brand new to Plan 9, I wouldn't know that I have to access
Secondly, not knowing how to use Plan 9 at all, I wouldn't know that the magic command is "connect slashdot.org!80" to open my connection. I would have to have a reference open to see which commands make sense.
So, what is the benefit?
As for programs compiled *before* you wrote yours, that is a standard concept for years now, interface-driven programming... In Linux, you can write your own filesystem driver, and then anything can use it just like any other filesystem, as long as you conform to the correct interface. You can do user-level filesystems in Linux, with the same results.
In Java and SmallTalk, I can use reflection capabilities to talk to everything as if it were an object. I can enumerate fields and methods, and invoke them dynamically.
Why is it better to talk to everything as a socket?
(4) How do you give the kids a few dollars to shop or grab a bite? How do you give them one dollar to grab candy before the movie starts?
You cheap bastard! I'd hate to be your kid. Around here, 1 dollar is enough to buy like 4 raisinets or 2 swedish fish.
I am continually surprised at how often people complain about the for scoping bug in msvc.
For years, I have used a simple fix to get around it:
#define for if(false) ; else for
this gives the correct semantics, no matter the usage.
you can't do:
#define for if(true) for
because then the following would not give the intended result
if(x==2) for(...) doSomething();
else doSomethingElse();
(not really clear code, but still valid, and the previous #define example allows it)
He mentioned that he was submitting this, which means it's probably a contract proposal.
No, he said "and I don't want to submit to a single Intel or AMD processor"...
I read this is saying he doesn't want to be at the mercy of a single processor, and e.g. drop a frame when he is editing video
This makes me wonder.... why bother with the Make-Work of moving to Linux in the first place? Why no keep working on the existing tuned kernels of AIX, IRIX, Tru64, etc?
Give me the url where I can download and compile the source for AIX or IRIX, and then maybe I'll understand how things are "the same".
Because Linux is GPL, all of their modifications will have to be GPL'ed as well. IBM has excellent stability, reduncancy, and scalability. SGI is known for having good graphics and scalability... When all of their modifications have to be opened under the GPL, everyone will benefit.
And, when IBM (and other giants) have invested lots of time, money, and code in Linux, if some shyster comes along and tries legal loophole tricks to keeping their code closed, they will be slapped down.
I will accept anime as being specifically a reference to ONLY Japanese animation when I see it in Webster's
You mean, when you see it here?
That name would never catch on. It doesn't look one bit like a pole, or even a stick. It looks more like some snow.
To be more specific, it looks like some yellow snow... Those crazy scientists couldn't resist!
Ali estimates that for every e-mail Penn Media sends out, his firm wins one sale and retail stores win 20.
21 sales for every email sent???? Who the fuck is this guy trying to kid?????
They meant batches of emails, not individual emails. So when they send a spam batch to 100k email addresses (or however many they do), they result in 21 sales.
Well firstly your solution presumes that one's time is free: If you put a value on the hours you spend putting the system together, configuring all of the software, etc, suddenly it isn't economical.
We've all heard this argument before, but I still don't buy it. If, rather than vegetating in front of the TV, or playing counter-strike, or going out to eat, I can spend 2 nights figuring out and configuring XYZ, while saving myself a couple of hundred bucks and ending up with something *better* than just forking over my money, then it is economical, by quite a margin.
As a professional programmer, if I were to bill these hours spent, I would get $200-$600... But I haven't "lost" this money by spending my time doing it this way.
It might make a lot of sense for MS to give out the source to the windows 95 codebase, as it is old and decrepit and would cost more to understand than to reimplement.
Tell that to the WINE folks. I'm sure they will be pleased with this trivialization of their years of hard work.
Recently, I took a job at Home Depot, and during the "training", the teaching lady had some funny stories about product returns, all of which allegedly happened at our site (Portsmouth, NH). The best ones I can remember:
Somebody brought in 4 automobile tires to return. Home Depot doesn't sell tires, but they accepted them for store credit.
Some old woman brought in a half dozen muffins. Previously to Home Depot, a big supermarket wholesaler (CostCo or Sam's Club, can't remember which) was at that location... Several years before, the woman had bought the muffins at this store, then put them in her freezer. So, several years later, she pulled them out, thawed them, and realized that now they didn't taste very good at all, so she brought them back to the store, which accepted the return.
The best one: Some guy brought in a "shrubbery", a shriveled up plant/shrub thing, which was obviously dead, and which he had dug up and put in his truck. This was in the winter time. Its leaves were all shriveled and brown, etc... The manager asked him when he had gotten it, he said a few years before. The manager asked him why he was upset, the guy said because it had died. The manager asked him if he knew what kind of plant it was, he didn't... He asked him if he knew how much he paid for it, the guy said "I don't know, like $30 or $40"... So, the store accepted the return, and actually gave him cash... Later, the manager found out, that there was a nasty hole in parking lot, because apparently this guy had just dug up one of Home Depot's own plants right out of the parking lot and brought it in.
(All of these anecdotes, particularly the third, smack of urban legend, so take them with a grain of salt, but still funny)
My word, when will these overbearing government goofballs learn that having LOW taxes while surrounded by HIGH tax areas drives business AND revenues up for the low tax area?
Exactly. Here in New Hampshire, we have the highest alcohol purchase per capita of any of the states (and it's about twice as high as the next runner-up). This is because alcohol is really cheap here, and people drive over the border from the neighboring states to buy it.
Actually, New Hampshire's "taxes" on alcohol are "very high" (NH in fact makes more money per bottle than other states), but hard licquor is a state-owned monopoly, so we're still cheaper than everyplace else.
Also, NH has no sales tax, so we get lots of people driving in from that, too.
NH is a great example, in my opinion, of two concepts: The lower taxes (eq prices) thing you mentioned which attracts out of state commerce, and the concept of "state monopoly on vice" being very profitable.
I am not a smoker, and I am continually surprised at how expensive the habit is... I can only imagine how much the state would make if it controlled tobacco sales this way (especially, with tobacco being cheaper overall just like alcohol).
Would you be the first to turn in your friends and family, or are the people that made the tools responsible for bending and warping their puny little minds into acts of wonton piracy?
Arrr, me eye spots another trade ship from the orient! Ready the cannons, and pull hard to starboard! Wonton soup for everyone who lives through it boys, and if luck be with us, we'll score some crab rangoons and general tso's chicken!
On some areas, GCC is faster, while on other areas, GCC is slower than Intel C++. But all in all, GCC is quite good.
I'd like to see a real benchmark of this. The same exact thing is said about every language/compiler by its proponents (think java vs c/c++, etc)...
If a butterfly flapping its wings affects our whether, of course jet engines will!
Sheesh, what are we paying these people for?
Quake for the blind is almost just like normal quake: The only difference is there are two new buttons, labelled "Marco" and "Polo", but I can't figure out what they're for.
I have thought of this myself, although I'm too lazy to implement it.
Chess is extremely parallelizable, since each of your N possible moves must be evaluated seperately, you can divide them among your K cpus which are participating... (Deep Blue had 256 CPUS, if I recall correctly)
The only major penalty for a distrubuted venture such as this that I can think of is that cached board information can't be shared across nodes... Most chess computers cache the results of evaluating different board positions, so that you don't need to (re-)evaluate everything for different move orders which end up with the same board position.
And depending on the formulas I used, this could confuse the simulated scientists in my universe, who would be wondering how electrons could pass through two slits simultaneously, but only when they weren't looking. Wait a minute...
Electrons don't pass through two slits simultaneously. Each electron goes through only 1 slit. The probability of each electron going through slit A vs slit B is described by the "wave equation"...
IE, for some physical configuration, it has a 20% chance of A and an 80% chance of B... But "all" of the particle passes through whichever slit is "chosen".
And chess can be played until infinity as far as I know, though I don't really involve myself with the game that much. Picture a board with only 2 kings and a rook on it; either player can keep it going on to infinity.
:)
Yeah, I guess you don't involve yourself with the game much... This is an elementary forced win for the guy with the rook
In fact, every company does adhere to its "privacy policy"! It's just that if you do read all the fine print, the privacy policy is "you have none. bitch."
Check the mozilla source code for what's required for a browser... Even after you remove things that are more than just the browser (mail, news, etc), there is still quite a bit of work on top of an HTML renderer.
:)
The net layer stuff for communication with servers, bookmarks, history, security, etc...
If the 'HTML component' does all of this, then I would argue its a part of IE.
PS: let's just consider the fact that everyone is already familiar with the 'mozilla bloat' jokes/comments and we don't need to rehash them
What you are missing here is that these terms only apply to the actual BSD-licensed source files. This is like the LGPL, in that I can take a BSD-licensed project Foo, and build my own project Bar which depends on Foo in some way (say, linking it in, or perhaps just grabbing its source files). I must maintain the proper copyright notice on any Foo source files which I modify or redistribute, and I must display the copyright notice in any binaries I distribute, but I don't have to license my own software under the BSD license.
With the GPL, I must license my own software under the GPL. This is why the GPL is considered "viral". The people who argue that the opponents of the GPL are "misinformed" when you say you can't use GPL software commercially are hiding behind a technicality, purposefully choosing the technical definition of the word "commercially". Since you can't really charge people $50/copy for GPL'd software (since they can demand the source and make as many copies as they want), you can't really license the software "commercially", in the normal meaning of the word. Whether licensing software "commercially" is immoral or not is beside the point.
The only way you can consider the BSD license "viral" is in that someone else, if they take my (open source licensed) project, and build off of it, must still include the copyright notices in source and binary, as long as parts of Foo are still being used.
In short, it is perfectly acceptable for me to take some BSD code and build some closed source, commercially licensed software off of it (perhaps I would call this software MacOSX?), as long as my software includes the proper notice that I depend on BSD licensed code.
Yes, I agree completely. I have long thought TA the best RTS game, and I have played a *lot* of games.
Bias in my thoughts: I have certainly played the games I like much more than the others, but the ones I profess to have experience in, I really have played and evaluated long enough that I consider my judgement valid. I love to play games, but I don't really enjoy single player games. If all my friends want to play StarCraft, then that's what I play, even if I consider it vastly inferior to TA. I have played War2, SC, AOE, AOE2, C&C, and several others. Each of these I have played for at least 50-100 hours... (TA I have played 1000s of hours worth).
In the TA community, I played on Kali and was known as 'Blade.java'.
Anyway, Total Annihilation:
To corroborate King_TJ, the worst part of the game was its network code. Strangely, it seemed to work better in the early days than the later ones (and later patch versions).
TA had lots of elements that were incredible, and some that still haven't been surpassed. The only good concept I can think of that another game had which TA lacked was random map generation.
The resource model was better than any other. I have read AOE2 fan sites that lambaste TA for its 'terrible resource management'. This is ludicrous, they must not have spent very long evaluating it. More resources doesn't equate to a better resource model. TA had only 2 resources, energy and metal. The most interesting aspect of TA's resource model was that your resource store was "continuum based": All of your resource income and expenditure was like "+2.3 metal/sec -1.5 energy/sec" from an individual mine, and maybe you have a vehicle construction unit building a laser tower for "-5.3 metal/sec -30.2 energy/sec" or something... The different construction units built at different speeds. The most important part was that you could start building anything you wanted regardless of resource cost. For example, it might cost 2000metal and a lot of energy (metal was far more important than energy) to build an advanced construction yard. Even if you only had 100 metal on you, you could start the construction immediately... Your construction unit might use up 10 metal/sec, so your metal will be used up quick, but you can still build. If you run out of metal, some building projects don't get built during that second (if you bring in 20 metal and try spend 30, some things don't get done)...
Also interesting about the resource model was "corpses"... If you attack me and fail to do much damage, there is a good chance you are in a lot worse position than you were, since your units die and leave behind "corpses" or "husks" which have lots of metal on them, and I can send out construction units to reclaim the metal (and then build my own army faster).
Also interesting is the concept of the Commander. Other games have this concept in varying degrees now, and perhaps TA wasn't the first, but it was the first to do it well. The commander, (your starting unit), is very powerful fighting and a very quick construction unit. Also interesting, is that the commander becomes a liability in lategame. He is not powerful enough on his own to be useful (his build speed is still useful), but if he is destroyed, depending on the game settings you either lose the game immediately, or, he explodes with the force of a nuclear missile (which basically destroys everything within a rather large radius).
One of the better aspects of TA is that just mindlessly churning out units and trying to overwhelm your enemy is not nearly so useful as in other games. (People who have played other games and then evaluate TA often say TA is bad *because* this is what happens, but that is typically due to their inexperience).
Some people attack TA because it has "too many units", and "they all look alike": I suppose this is just a matter of taste, and I agree it can be daunting to new users. However, I can say without exaggerating that except for a small handful (less than 5) of the 300+ units, every single unit has its uses, and they all get used by experienced players. Contrast this with other games, where they have maybe 50 units, and perhaps 5 or 10 see regular use.
My specific bitches about other RT"S" games typically come from the micromanagement factor. SC is by far the worst in this area, IMO, but the others commit the crime much more than TA. Examples from SC: the terran tanks, going out of siege mode, sneaking forward a tile, then going into siege mode. Also, how important the spellcasters are: A single spell can really spell(har har) the difference in the game, for example by taking out several 1000s worth of resource by killing a group of marines or zerglings... And every spell must be handled and cast manually! Another example: Look at the descriptions of "championship matches" involving SC or AOE and the like. Invariably they revolve around distracting your opponent and then surprise attacking another area. This is a high level tactic almost verging on actual strategy, which is commendable, but the fact remains that the units fight so terribly they must be handheld. TA has its own failures in this area, but they are not nearly so grevious as other ones.
A million factors make TA a much deeper game than most Realtime "Strategy" games. I put "Strategy" in quotes because I hold that there is very little strategy that goes into them, but rather tactics. This is not to say they aren't fun, I rather enjoy some of them, but I do maintain that they are named incorrectly. TA has both strategic and tactical levels.
OK, I suppose I have ranted enough. I don't even suppose people will care very much about an older game anyway.