I'm sorry, but the question was if anyone still actively goes and buys a license.
E.g., given the state of IP in Russia or China, I can't possibly imagine that the Bank Of Russia (or for that matter the China Post) actually bought full price licenses for those 22,000 branches. Most likely they had copied it lots, and if they even have a license in the meantime, they probably got some _massively_ discounted blanket license as most companies sell for Russia, China, etc. That or it was some scam in which it was imported through the CEO's brother's ghost company and it was just a way to siphon some money into their private pockets.
E.g., those BMW service centres or the Deutsche Bahn, I don't imagine they still pay anything for that SCO Unix or designing new systems around it. Most likely they still have some legacy stuff from the 80's or early 90's, and it stays there just because nobody can be arsed to replace it with something newer. Or maybe it's the same I'll get to for McDonald.
Running McDonald restaurants? Now that really gets me thinking. It's not like a McDonald restaurant has its own computing centre at all. If they're that big on SCO Unix, why only in restaurants? And why not in all restaurants? Does McDonald have anything against a homogenous and easy to administrate network?
What this last one gets me to suspect is that it's really more along the lines of "whatever embedded OS came with those cashier machines." Roll that around in your head a bit.
What that really tells me is that McDonald doesn't actually give a flying fuck about SCO Unix as such. They just have a bunch of cashier machines which incidentally came with SCO on them. But they wouldn't give a rat's arse about whether it's SCO or Linux or some embedded version of Windows or some refurbished thing based on OS/2, as long as it still talks the same protocols to the rest of their network.
And they probably won't shed one tear for SCO. Whoever manufactures those terminals will just switch to something else and McDonald won't even notice, nor care.
And it makes me wonder how many others on that list are essentially the same misleading claim. E.g., pharmacies? I don't imagine many either (A) actually implementing any meaningful computer centre in the back, or (B) actually choosing SCO for that. Most likely, again, it was whatever embedded crap came with their cashier machines. They'll keep them happily untilt they stop working at all, then replace them with some other machine that talks to the same protocol, and probably don't even know they run SCO at all.
Same for probably a lot of other retailers, since SCO seems to hype that.
I'm sorry, but that doesn't equal "actively licensing their craptacular Unix." In reality the only ones who actually actively licensed SCO there were the one or maybe two manufacturers of those cashier machines, and even those probably just because they got some old 16 bit version for peanuts.
And I'd be surprised if any of those would _still_ go and license SCO for a new machine, since the word "still" was in the GP's question too. Most likely it's something they licensed a decade or two ago, and never thought about it ever since.
It tastes like whatever you convince yourself that it should taste like.
Probably a better example would be a better documented breed of self-deluded puppies: the kind of audiophiles who'd buy an audiophile-grade ethernet (i.e., digital!) cable for $500 and swear that they hear whatever difference you tell them they should hear, when they play MP3's (again: digital!) over that network. As if a 1 weren't just as much a 1 or a 0 as much a 0 over it. But no, if you tell them they should hear a fuller and richer bass, they'll actually hear it.
There are wooden volume knobs sold out there as doing this or that magic for the music, and (the right kind of) people will actually hear that magic. Even though that volume knob isn't even part of the signal chain at all. It's just a wooden disc on the outside. The potentiometer (variable resistor) that actually controls the volume is something else on the same shaft. But they'll swear they hear the difference.
Someone on another forum at one time actually heard the difference between MP3's played off different brands of hard drives. Once it got into his head that a magnetic disc is really coated in a magnetic layer like a cassette, and that there was this different between sound reproduction between different cassette coatings (e.g., iron versus chrome), he actually started hearing that one hard drive gives better bass and another gives better trebble. And he can hear that difference.
So basically my bet is that it works just the same with anything. Sound, image, taste (since we're at whiskey), or whatever you wish. If the Grimm Brothers' "The Emperor's New Clothes" had happened IRL, people would have actually seen whatever clothes they got it into their head that really smart and superior people see. And no amount of children screaming "the emperor is naked" would change that. And even if you got the emperor and his guards out of the equation, if a hundred years later the country were a republic and the non-existent clothes were in an (empty) glass box at a museum, some people would still go and congratulate each other for being so superior as to see the fabulous clothes in the box.
Well, you seem to forget that this is actually normal for Blizzard. They'll tweak the game until they consider it to be right, and that sometimes means 2 years past the planned release date.
I'm not even saying this as a bad thing. In the end, that's their main secret sauce. They're the guys who would agree with you that balancing the races and the game mechanics isn't just details, it's the game. Most others would (be bullied by the publisher to) shove it out the door now, and maybe patch it later.
I mean, think about it. What did WoW have that, say, EQ2 didn't have, as both launched in the same year? I can't think of anything major that Blizzard invented, other than the "rested xp" bar, and we could debate all evening if that counts as "major". Blizzard simply took the time to polish the turd, so to speak, and it paid off.
What set their RTS apart, since you mention Starcraft II? Make no mistake, Starcraft came out in an age where there were about as many "me too" RTS produced by everyone and their grandma, as there were "me too" FPS. There was everything out there, from fantasy to SF to historical. Again, it seems to me like all Blizzard did was actually give it a good long tweak and polish before it got released.
So I wouldn't be praying for them to do a rush job this time. If they feel that it still needs more tweaking, so be it.
Well, you're missing the fact that you're using it right. The people I'm complaining about are those who'd write some version of stuff like:
String one = ""; for(some limit) {
StringBuffer buf = new StringBuffer();
buf.append(one);
buf.append(createString());
one = buf.toString(); }
And insist that it's faster because they use a StringBuffer. Some tips and tricks page told them so.
Ok, so maybe if it were like that, they (or the compiler) would figure out that the "new StringBuffer()" can be moved out of the loop. A more realistic scenario is when the code looks more like this;
StringBuffer buf = new StringBuffer(); for(int i = 0; i < names.length; i++) {
buf.append(names[i].toString()); }
but the toString() method in that class is something like 'return firstName + " " + lastName;"
The average lemming trying to optimize it, won't even look at the imperial arseload of temporary StringBuffer objects created in that loop, one for each iteration. They optimized the big loop, that's it. Wonder why it doesn't actually run much faster.
But those aren't the cargo cultists yet.
The cargo cultists are the ones who then proceed to optimize the toString() method above like this:
public String toString() {
StringBuffer buf = new StringBuffer();
buf.append(firstName);
buf.append(" ");
buf.append(lastName);
return buf.toString(); }
It doesn't actually produce any improvement whatsoever, since it's exactly what the compiler generates for 'return firstName + " " + lastName;' anyway. And in that loop we used as an example, it still results in a temporary StringBuffer being instantiated and thrown away per iteration.
And again, I don't even mind seeing something like this just because someone is used to using StringBuffer. It's a good habit. I'm just somewhat amused when I see someone present such a rewrite as an optimization. Because some site told him that StringBuffer is faster than +. Heh.
Well, I'll agree that often there is hubris involved. But sometimes they do have to optimize, though. Like, they hit deadline, and their code runs slower than a sleepy snail on sandpaper. With Slow cast on it.
The client says, "this has to run at least 5 times faster or else."
And nobody involved has more clue than building a cargo-cult program. In many cases nobody involved even understands the O notation.
Enter desperately googling for ideas that they aren't even qualified to understand why they're bad ideas, or why the VM doesn't work that way.
The "for an int Java copies the whole value on the stack, but for Integer it copies only a pointer" mis-optimization I mentioned in the other message, was born out of such an emergency. Their code ran like a 3-legged pig on greased ice, the client was unsatisfied, and they just had to try something before they bring in the consultants. Of course, the real bottleneck was how they used the database. But they hadn't figured that out.
So they scratch their head and go, "let's use a cache." Which they promptly invalidate when they write something, and they're doing a read-compute-update loop there, so it really brings nothing except more complexity and more overhead.
So their architect comes up with that... great idea;) Let's replace every single int with an Integer, and every char with a Character at that, 'cause his half-knowledge made him infer that it would be somehow faster. They actually spent two weeks doing that change to their heap of code. Of course, it still doesn't run any faster. Luckily, not measurably slower either, because that's not the bottleneck anyway.
Now what?
Someone googles some more and comes upon such a "clever trick". The page is from the 90's, though, and that trick stopped working after Java 1.0.
Which is largely why the "there" was in that statement. In their case, the data set was pretty much random String objects. I very much doubt that you can write a hash method that will never ever produce collisions on that case.
An int in Java is always, by VM definition, 32 bits. I.e., 4 bytes. A reference (pointer) can be 32 bits on a 32 bit machine, or 64 bit on a 64 bit machine with a 64 bit VM. And that's not even counting the overhead of the wrapper object itself, which is IIRC 8 bytes itself, though it depends on VM too. That is, on top of the actual int in it. (Though, to be fair, that's on the heap and they were talking about optimizing copying to the stack;) Plus the GC overhead when dealing with the gazillions of extra wrapper objects. If you've ever seen a GC run into 2 billion small objects, well, you'll know what I mean.
Still, I fancy that a determined soul could always find _some_ way to poke around an object. Worst case scenario, you serialize it to a file and look in it that way. At least for Java there are libraries which serialize to XML too, so there's no need for hex-fu or anything.
Well, obviously all 3 above knew how to use a Hashtable or HashMap, but neither knew what they really do and all ended up trying to fix what's not broken.
But the real answer I'm tempted to give is more along the lines of the old wisecrack: In theory there's no difference between theory and practice. In practice there is.
In theory, people shouldn't know more than what collection to use, and they'll be perfectly productive without more than a Java For Dummies course. In practice I find that the people who understand the underlying machine produce better code. Basically that you don't need to actually program anything in ASM nowadays, but if you did once, you'll produce better code ever after. You don't need to chase your own pointers in Java any more, but you _can_ tell the difference between people who once understood them in C++ and those who still struggle with when "x=y" is a copy and when it holds only a reference to the actual object. You theoretically don't need to really know the code that javac generates for string concatenation, but in practice you can tell the difference in the code of those who know that "string1=string2+string3" spawns a StringBuffer too and those who think that spawning their own a StringBuffer is some magical optimization. Etc.
And then there are those who are living proof that just a little knowledge is a dangerous thing. I see people all the time who still run into something that was true in Java 1.0 times, but they don't understand why or why that isn't so any more.
As a simple example, I run into people who think that to rewrite:
for (int i = 0; i < someArray.length; i++) {
doSomething(someArray[i]); }
as
try {
for (int i = 0; ; i++) {
doSomething(someArray[i]);
} } catch (ArrayIndexOutOfBoundsException e) { // do nothing }
... is some clever optimization, and it speeds things up because Java doesn't have to check the extra bounds on i any more.
In reality it's dumb and actually slower, instead of being an optimization. Any modern JIT (meaning since at least Java 1.2) will see that the bound was already checked, and optimize out the checking in the array indexing. So you have exactly one bounds check per iteration, not two. But in the "optimized" version, it doesn't detect an existing check, so it leaves in the one at the array indexing. So you _still_ have one bounds check per iteration. It didn't actually save anything. But this time the exit is done via an exception, which is a much more expensive thing.
For bonus points, it introduces the potential for another bug: what if at some point in the future the doSomething() method throws its own ArrayIndexOutOfBoundsException? Well, they'll get a clean exit out of the loop without processing all values, and without any indication that an exception has occured.
Such stuff happens precisely to people who don't understand the underlying machine, virtual or not.
And a few more examples of cargo-cultism, from people who were untrained to understand what they're doing, but someone thought it was ok because the Java standard library does it for them anyway.
1. The same Wally 1 from the previous story had written basically this method:
public static void nuller(String x) {
x = null; }
Then he called it like this, to try to get around an immutable field in an object. Let's say we have an object called Name, which has an immutable String. So you create it with that string and can't change it afterwards. You have a getName() but not a setName() on it. So he tried to do essentially:
Name name = new Name("John Doe"); nuller(name.getName());
I understand that he worked a week on trying to debug into why it doesn't work, until he asked for help.
2. From Ted's aforementioned project:
So they used the wrapper classes like Integer or Character all over the place instead of int or char. This was back in Java 1.3 times too, so there was no automatic boxing and unboxing. The whole code was a mess of getting the values boxed as parameters, unboxing them, doing some maths, boxing the result. Lather, rinse, repeat.
I ask what that's all about.
"Oh, that's a clever optimization Ted came up with. See, if you have the normal int as a parameter, Java copies the whole integer on the stack. But if you use Integer it only copies a pointer to it."
Let me tell you a true story to illustrate why I think people should still learn that stuff.
ACT I
So at one point I'm in a room with what looks like two particularly unproductive Wallys. Though it's probably unfair to call both Wally, since at least one looks like the hard working kind... he just makes as much progress as a courier on a treadmill.
So Wally 1 keeps clicking and staring at the screen all week and spewing things like "Unbelievable!" every 5 minutes. My curiosity gets the better of me and I ask what's happening.
"Look at this," goes Wally 1, and I indeed move over to see him toiling in the debugger through a Hashtable with String keys. He's looking at its bucket array, to be precise. "Java is broken! I added a new value with the same hash value for the key, and it just replaced my old one! Look, my old value was here, and now it's the new one!"
"Oh yes, we had that bug too at the former company I worked for," chimes in Wally 2. "We had to set the capacity manually to avoid it."
I clench my teeth to stop myself from screaming.
"Hmm," I play along, "expand that 'next' node, please."
"No, you don't understand, my value was here and now there's this other key there."
"Yes, but I want to see what's in that 'next' node, please."
So he clicks on it and goes, "Oh... There it is..."
Turns out that neither of them had the faintest fucking clue what a hash table is, or for that matter what a linked list is. They looked at its hash bucket and expected nothing deeper than that. And, I'm told, at least one of them had been in a project where they actually coded workarounds (that can't possibly do any difference, too!) for its normal operation.
ACT II
So I'm consulting at another project and essentially they use a HashMap with string keys too. Except they created their own key objects, nothing more than wrappers around a String, and with their own convoluted and IMHO suboptimal hash value calculation too. Hmm, they must have had a good reason, but I ask someone.
"Oh," he goes, "we ran into a Java bug. You can see it in the debugger. You'd add a new value whose key has the same hash value and it replaces yours in the array. So Ted came up with an own hash value, so it doesn't happen any more."
Ted was their architect, btw. There were easily over 20 of them merry retards in that project, including an architect, and neither of them understood:
A) that that's the way a hash table works, and more importantly
B) that it still worked that way even with Ted's idiotic workaround. It's mathematically impossible to code a hash there which doesn't cause the same collisions anyway, and sure enough Ted's produced them too.
ACT III
I'm talking to yet another project's architect, this time a framework, and, sure enough...
"Oh yeah, that's the workaround for a bug they found in project XYZ. See, Java's HashMap has a bug. It replaces your old value when you have a hash collision in the key."
AAARGH!
So I'm guessing it would still be useful if more people understood these things. We're not just talking abstract complaints about cargo-cult programming without understanding it. We're talking people and sometimes whole teams who ended up debugging into it when they had some completely unrelated bug, and spent time on it. And then spent more time coding "workarounds" which can't possibly even make any difference. And then spent more time fixing the actual bug they had in the first place.
You define people as 'losers' because they don't play the game the same way you do. Mighty full of yourself, aren't you? From the way you talk, it sounds like you define yourself as a 'winner' because you spend dozens of hours a week glued to a monitor hoping the random number generator will drop some instant self-esteem for you.
Except that they are _supposed_ to be a time sink. That's the whole purpose of gaming: to spend some time in a more fun way than staring at your own walls. That's the actual game.
Whether it's dozens of hours a week or an hour on sundays, the principle is the same. You spend _some_ time in there to be entertained.
And that's what it remains, from level 1 when you're killing wolf cubs in Northshire to level 80 when you raid Ulduar. There is no point where it becomes anything more meaningful than that.
So someone who essentially pays to have someone else to play the game in his stead... well, he called it a loser, but I'll call it stupid too. They're people who pay to skip some of the content they've already paid for. It's as stupid as paying someone to see the first 3 quarters of the LOTR trilogy for you, just so you can then watch the final battle and pretend you're so l33t for it.
And it's funny that you should mention "instant self-esteem" because it seems to me like it usually applies not to us who play the game the normal way, but to the losers paying their way to level 80 or to some virtual status symbols. I've actually known a few (especially in COH during the "City Of Fire Tankers" period, it was hard not to), and yes, it seems to me like that's what they bought: instant self-esteem.
Invariably it was people who believed one or more of the following, and were trying to shove them in your face at that:
1. That being higher level somehow made them better or more worthy of respect, as opposed to just being pegged in another slice of the game's content.
2. That being able to do this or that (e.g., because of their l33t equipment) somehow made them superior persons, instead of just being yet another normal phase of the game's content.
3. That sporting some visible status symbol, somehow made them better and more respect worthy, as opposed to being just another piece of the game's content.
Etc.
And you recognize them at any level. They're the kind that, when you group with their new alt, have to mention every 5 minutes how many level 80's they have (or had even in beta!) and generally act as if their level is physically tied to their penis size, say an inch every 10 levels, and being even seen under level 70 is some kind shame and failure. They're the kind who'll sit parked at the Deadmines or wherever else and whine for a "boost"/"powerlevel"/whatever-it's-called-in-that-game for hours instead of actually playing the damned game. They're the kind who in, say, EQ2 will just have to drag you kicking and screaming to see their epic mount or mansion full of T8 furniture... at level 10... on their first character, as if that says anything else about them than "I bought platinum."
And yes, by the pretense that they're somehow superior because they're not investing time... in something that's just a time sink anyway.
They're in a nutshell the people who don't understand that the game is the road, not the destination. The ones who don't understand that levels 1-10 or 70-80 are just ways to parcel the game's content, as opposed to anything else. It's not more meaningful than, say, episodes 1 to 10 vs 70 to 80 of a soap opera.
But, no, they just have to artificially partition that mass of content in their mind into a 90% slice that's for them anywhere between shameful and merely not good enough for them, and at most 10% that's, yes, "instant self-esteem". And that's what they're buying: instant self esteem. The illusion that they're somehow more esteem-worthy if they skipped a chunk of the actual game.
Either way, some proper research from a reputable scientist that isn't setting out to disprove psychic abilities, just wants to see if anything is happenin, would be really nice.
How about the Randi 1 million dollar challenge?
Most preliminary tests are filmed (and everyone so far flunked the preliminaries badly) and looking at some of them, the requests weren't unreasonable, the test setup wasn't stacked against the claimant in any way, etc. I haven't seen any where it would even matter whether he's set to disprove those claims or not. Either you see auras through walls, or you don't. Either you can tell the history of an object by touch, or you don't. Either you can dowse or you don't. Those people just plain old didn't have the powers they claimed to have.
I mean, seriously, when you see a group of Australia's best dowsers manage to average 1 in 10 guesses right for 10 pipes out of which only 1 has water, it's hard to take it as anything else than dumb guesswork. I don't see how Randi's agenda can affect the fact than when asked to guess the right 1 in 10, those people averaged 1 right guess in 10.
I'm not a believer in many things, so call me a sceptic that has an open mind. I'm still convinced though that there is *something* paranormal at work with some people's minds. The average tea-room women, probably not. But every now and then you get someone who's predictions are too good, too spot-on time after time, that there is most likely something at work there
Some are really just smart people. You don't have to be a psychic to do _some_ predictions. E.g., since we're in a sub-thread about an XKCD comic, as I was saying, you don't have to be a psychic to predict that in any scare there'll be surrealistically dumb posts on twitter. (Or generally on the Internet.)
Some are just lucky guesses. Due to the nature of random numbers and events, if you have enough people rolling a die, someone out there _will_ get 10 sixes in a row.
Some are just vague enough that they can be interpreted to apply to a few billion different people, and to a thousand fundamentally different events. See, horoscopes, for example. Take some horoscopes and randomly change the star signs, e.g., take the personality description or daily prediction for a pisces and give it to a libra, and see if they notice. Invariably it's just as good.
Then you've got the remote-viewers; some of them had success rates so good both the Russians and the Americans employed them in the Cold War (and probably still do) to telepathically spy on the enemies missile bases.
Actually, both the USA and the Russians _tried_ using all sorts of paranormal stuff. None of them actually delivered any useful results.
It's still not exactly new. Stupidities have occasionally spread out of control before too. E.g., the idea of curing everything with a magnet has happened centuries before blogs, and it spread world-wide anyway. And since we're talking the stock market, the crash of 1929 happened long before blogs.
Well, it's not a hard prediction. I mean, whole threads of uninformed and stupid people spewing stupidities... on the internet? Who would have guessed?;) In related news, bears do poop in the woods, the pope is indeed a catholic, and the ocean is indeed wet.
On the other hand, to be fair, the internet only made it easy to run into such conversations which otherwise would have happened at the pub or at a street corner, with equally uninformed people nodding through and offering their own stupid advice. Just think of all the cabbies who can't manage their own finances, but are ready to discourse at length about how the government should fix the economy. Or of all the people who can't be diplomatic enough to their neighbour, but apparently know exactly what the president should tell France or Russia. Etc.
And occasionally whole "theories" have been formed out of such stupid-preaching-to-the-stupid situations.
E.g., historically "animal magnetism" was born out of weaker correlations than the "lick an autistic kid" in the comic. And some people still buy magnets and crystals as cures... although they were known to be scams at least as early as 1841 when Charles Mackay published his "Extraordinary Popular Delusions and the Madness of Crowds."
E.g., homeopathy was born out of the observation that, basically, small doses of quinine cure malaria, but high doses of quinine cause the same kind of shivers as malaria. In the meantime we know why both happen, and it has nothing to do with "like cures like". But some people _still_ insist on believing in a cure that's intellectually on par with "lick an autistic kid" and born out of a correlation that was every bit as stupid and superficial. (In fact, just watch, I'm going to rub my crystal ball and predict that someone will promptly post a reply as to how wrong I am, and how homeopathy works and is proven and cures everything from hypochondria to cancer;)
A portal is just an opening or a doorway. A portal as a connection between to two points that are not contiguous in normal space is a concept exclusive to science fiction.
Is it? I'm pretty sure that ideas like opening the a portal to hell existed _long_ before science fiction, and nobody would imagine Hell to be contiguous with some house's inner walls.
As early as Ancient Egypt they had stuff like a fake stone door in the mortuary chamber, as a portal to the netherworld, through which the souls of the deceased could go back and forth between real world and netherworld. And they didn't conceive the netherworld as a different direction, but as a place deep below in normal place. (E.g., Ra sailed his solar barge through the netherworld each night to complete the circle.) Obviously it can't be contiguous with a room in the middle of the pyramid, and the egyptians knew more geometry than that. But their stone portal supposedly did just that: connected that room to the netherworld.
So, no, SF didn't invent that. It's a concept that's literally thousands of years old.
And generally a lot of the things that SF fans claim as their own, is just some old concept dressed in a pseudo-science explanation. Whereas it previously used to be just magic or divine intervention. But at some point giving it a science-sounding explanation became a viable genre, and SF is just that.
E.g.,
- teleportation? Summoning is a concept that's as old as belief in magic and demons.
- robots? Karel Capek's robots were more like what today we'd call clones, a race of mass-produced human serfs, than the nuts and bolts kind we think of today. But if we look at the concept of a robot, it can be traced back to the concept of a golem... and now that's a concept that's really old.
- genetic engineering? Now that's just tacking the "genes" explanation on another notion that's as old as humanity itself. E.g., when the Bible explains the creation of blacks, that's just what God does: turns one race into another. And there are other myths all over the globe where a race or species is deliberately modified by someone or something with the power to do so. Tacking "genetics" onto it just gives it a different explanation, doesn't make it a new idea.
Suppose Google Maps solicited private photos rather than taking the photos themselves. Woudl that make a difference?
Would someone check each photo by eyeball-scan, or could I just send them the goatse pic as a photo of my neighbour's property?
And if there's someone doing that job, how much do you have to pay him for all the goatse and tubgirl pics he'll get? Will google add free psychotherapy to their job perks?
And on a more serious note, would they have to drive here anyway to check if my house really looks like the Windsor castle, like in that picture I'd send them? Maybe I just want a bit of extra "creative puffering" to sell that house. (Hey, it's not worse than most tech companies' marketing;)
But let's agree on this, then, because it seems to me like you're saying the same thing: if you go back in time for up to 10 years or so, you won't see a huge drop in gameplay quality. Taking the present point as the "OK" point (not "perfect", mind you), going up to 10 years or so in the past... gets you just as "OK" gameplay in most games.
Well, maybe even "OK" paints the wrong image. Basically what I'm trying to say is: if you could tolerate playing a brand-spanking-new 2009-release game, you could probably tolerate a 2005 release just as well. It won't be any worse, gameplay-wioe. And if you can't stomach the former, then you're not in the market for games, anyway, so it doesn't really matter.
Basically there is already somewhat less incentive to buy a brand new game when you can get a 1 to 3 year old game for a third of the price. Except if you already played all that could interest you from the past years, of course.
And I think that just going simpler and lower budget is... a tricky proposition. It can probably be pulled off, but it's not easy and certainly not by many. For most companies that would result in a game that isn't just sub-par compared to everyone else's games from this year, but also sub-par compared to existing 5 year old games.
To reuse that Build-A-Lot example, by itself "OK, I'm getting 5% of the game for 33% of the price of another new game" would maybe be more palatable by itself. Yeah, I'm a savvy consumer like that. I maximize TCO and minimize ROI;) But it becomes a lot harder to rationalize when it becomes "OK, I'm getting 5% of a 5 year old game, and it actually costs more than that 5 year old game." That's the point where I have to look at the damned thing and ask myself what was I smoking when I bought it.
I mean, ok, in Build-A-Lot I can build houses along a road... and that's it. Period. But then for a _quarter_ of its price I could get Tropico, which has building houses, and an AI, and an economy, and more replay value, etc. Or I could get SimCity IV. Etc.
What's my motivation to buy the simpler low-budget new game, instead of something that costs less and offers more?
Well, there is one problem there: everybody also competes with older games at bargain bin prices.
There was a time when that was a lot less of a problem, since Doom II looked like crap compared to Quake (and games based on the Quake engine), and then when you had Quake II games the old Quake I started to look like crap by comparison. Nowadays improvements are a lot more incremental. I've even played some ~10 year old games recently and while you can tell a difference, they're not exactly visually offensive either.
Gameplay has also been OK for quite a while now. It's been a long time since we had too little RAM for anything too complex, so you can go quite a bit back in time with your gaming before you run into problems.
Basically what I'm saying is this:
A) I could buy a new cutesy mini-game for casual players for 20 bucks or so. Like, say, Build-A-Lot, which I actually bought recently. Except it feels like there's a whole game missing around it. The complexity and difficulty are about right for one of the dozens of minigames in a $60 RPG, so I don't think I got much of a bargain with it.
B) I could get Fallout I, Fallout II _and_ Fallout Tactics on a DVD for around the same price. Seriously.
C) I could get a 1 to 3 year old game for the same price. E.g., The Sims 2 costs about that much by now, and it's actually a better value for casual gamers. (Though if you're a l33t FPS-er, you might not necessarily like it.) E.g., Settlers 6 is actually almost half that by now. E.g., Warcraft III including the expansion pack is also about 20 bucks by now. Slightly more money gets you Civ IV with all expansion packs. Etc.
So I think there's a finite niche for simple cutesy games.
Of course, that might not apply if you can come up with a radically new game concept that everyone just has to play. But that's a bit harder than it sounds. Designers which managed to come up with a whole new concept are very few and far in between, and even they rarely manage to repeat that. It's hardly a model for staying in business for the rest of your life, is it?
I'm sorry, but the question was if anyone still actively goes and buys a license.
E.g., given the state of IP in Russia or China, I can't possibly imagine that the Bank Of Russia (or for that matter the China Post) actually bought full price licenses for those 22,000 branches. Most likely they had copied it lots, and if they even have a license in the meantime, they probably got some _massively_ discounted blanket license as most companies sell for Russia, China, etc. That or it was some scam in which it was imported through the CEO's brother's ghost company and it was just a way to siphon some money into their private pockets.
E.g., those BMW service centres or the Deutsche Bahn, I don't imagine they still pay anything for that SCO Unix or designing new systems around it. Most likely they still have some legacy stuff from the 80's or early 90's, and it stays there just because nobody can be arsed to replace it with something newer. Or maybe it's the same I'll get to for McDonald.
Running McDonald restaurants? Now that really gets me thinking. It's not like a McDonald restaurant has its own computing centre at all. If they're that big on SCO Unix, why only in restaurants? And why not in all restaurants? Does McDonald have anything against a homogenous and easy to administrate network?
What this last one gets me to suspect is that it's really more along the lines of "whatever embedded OS came with those cashier machines." Roll that around in your head a bit.
What that really tells me is that McDonald doesn't actually give a flying fuck about SCO Unix as such. They just have a bunch of cashier machines which incidentally came with SCO on them. But they wouldn't give a rat's arse about whether it's SCO or Linux or some embedded version of Windows or some refurbished thing based on OS/2, as long as it still talks the same protocols to the rest of their network.
And they probably won't shed one tear for SCO. Whoever manufactures those terminals will just switch to something else and McDonald won't even notice, nor care.
And it makes me wonder how many others on that list are essentially the same misleading claim. E.g., pharmacies? I don't imagine many either (A) actually implementing any meaningful computer centre in the back, or (B) actually choosing SCO for that. Most likely, again, it was whatever embedded crap came with their cashier machines. They'll keep them happily untilt they stop working at all, then replace them with some other machine that talks to the same protocol, and probably don't even know they run SCO at all.
Same for probably a lot of other retailers, since SCO seems to hype that.
I'm sorry, but that doesn't equal "actively licensing their craptacular Unix." In reality the only ones who actually actively licensed SCO there were the one or maybe two manufacturers of those cashier machines, and even those probably just because they got some old 16 bit version for peanuts.
And I'd be surprised if any of those would _still_ go and license SCO for a new machine, since the word "still" was in the GP's question too. Most likely it's something they licensed a decade or two ago, and never thought about it ever since.
It tastes like whatever you convince yourself that it should taste like.
Probably a better example would be a better documented breed of self-deluded puppies: the kind of audiophiles who'd buy an audiophile-grade ethernet (i.e., digital!) cable for $500 and swear that they hear whatever difference you tell them they should hear, when they play MP3's (again: digital!) over that network. As if a 1 weren't just as much a 1 or a 0 as much a 0 over it. But no, if you tell them they should hear a fuller and richer bass, they'll actually hear it.
There are wooden volume knobs sold out there as doing this or that magic for the music, and (the right kind of) people will actually hear that magic. Even though that volume knob isn't even part of the signal chain at all. It's just a wooden disc on the outside. The potentiometer (variable resistor) that actually controls the volume is something else on the same shaft. But they'll swear they hear the difference.
Someone on another forum at one time actually heard the difference between MP3's played off different brands of hard drives. Once it got into his head that a magnetic disc is really coated in a magnetic layer like a cassette, and that there was this different between sound reproduction between different cassette coatings (e.g., iron versus chrome), he actually started hearing that one hard drive gives better bass and another gives better trebble. And he can hear that difference.
So basically my bet is that it works just the same with anything. Sound, image, taste (since we're at whiskey), or whatever you wish. If the Grimm Brothers' "The Emperor's New Clothes" had happened IRL, people would have actually seen whatever clothes they got it into their head that really smart and superior people see. And no amount of children screaming "the emperor is naked" would change that. And even if you got the emperor and his guards out of the equation, if a hundred years later the country were a republic and the non-existent clothes were in an (empty) glass box at a museum, some people would still go and congratulate each other for being so superior as to see the fabulous clothes in the box.
Well, you seem to forget that this is actually normal for Blizzard. They'll tweak the game until they consider it to be right, and that sometimes means 2 years past the planned release date.
I'm not even saying this as a bad thing. In the end, that's their main secret sauce. They're the guys who would agree with you that balancing the races and the game mechanics isn't just details, it's the game. Most others would (be bullied by the publisher to) shove it out the door now, and maybe patch it later.
I mean, think about it. What did WoW have that, say, EQ2 didn't have, as both launched in the same year? I can't think of anything major that Blizzard invented, other than the "rested xp" bar, and we could debate all evening if that counts as "major". Blizzard simply took the time to polish the turd, so to speak, and it paid off.
What set their RTS apart, since you mention Starcraft II? Make no mistake, Starcraft came out in an age where there were about as many "me too" RTS produced by everyone and their grandma, as there were "me too" FPS. There was everything out there, from fantasy to SF to historical. Again, it seems to me like all Blizzard did was actually give it a good long tweak and polish before it got released.
So I wouldn't be praying for them to do a rush job this time. If they feel that it still needs more tweaking, so be it.
Well, you're missing the fact that you're using it right. The people I'm complaining about are those who'd write some version of stuff like:
And insist that it's faster because they use a StringBuffer. Some tips and tricks page told them so.
Ok, so maybe if it were like that, they (or the compiler) would figure out that the "new StringBuffer()" can be moved out of the loop. A more realistic scenario is when the code looks more like this;
but the toString() method in that class is something like 'return firstName + " " + lastName;"
The average lemming trying to optimize it, won't even look at the imperial arseload of temporary StringBuffer objects created in that loop, one for each iteration. They optimized the big loop, that's it. Wonder why it doesn't actually run much faster.
But those aren't the cargo cultists yet.
The cargo cultists are the ones who then proceed to optimize the toString() method above like this:
It doesn't actually produce any improvement whatsoever, since it's exactly what the compiler generates for 'return firstName + " " + lastName;' anyway. And in that loop we used as an example, it still results in a temporary StringBuffer being instantiated and thrown away per iteration.
And again, I don't even mind seeing something like this just because someone is used to using StringBuffer. It's a good habit. I'm just somewhat amused when I see someone present such a rewrite as an optimization. Because some site told him that StringBuffer is faster than +. Heh.
Self trained counts too, I should think.
Well, I'll agree that often there is hubris involved. But sometimes they do have to optimize, though. Like, they hit deadline, and their code runs slower than a sleepy snail on sandpaper. With Slow cast on it.
The client says, "this has to run at least 5 times faster or else."
And nobody involved has more clue than building a cargo-cult program. In many cases nobody involved even understands the O notation.
Enter desperately googling for ideas that they aren't even qualified to understand why they're bad ideas, or why the VM doesn't work that way.
The "for an int Java copies the whole value on the stack, but for Integer it copies only a pointer" mis-optimization I mentioned in the other message, was born out of such an emergency. Their code ran like a 3-legged pig on greased ice, the client was unsatisfied, and they just had to try something before they bring in the consultants. Of course, the real bottleneck was how they used the database. But they hadn't figured that out.
So they scratch their head and go, "let's use a cache." Which they promptly invalidate when they write something, and they're doing a read-compute-update loop there, so it really brings nothing except more complexity and more overhead.
So their architect comes up with that... great idea ;) Let's replace every single int with an Integer, and every char with a Character at that, 'cause his half-knowledge made him infer that it would be somehow faster. They actually spent two weeks doing that change to their heap of code. Of course, it still doesn't run any faster. Luckily, not measurably slower either, because that's not the bottleneck anyway.
Now what?
Someone googles some more and comes upon such a "clever trick". The page is from the 90's, though, and that trick stopped working after Java 1.0.
Lather, rinse, repeat.
Which is largely why the "there" was in that statement. In their case, the data set was pretty much random String objects. I very much doubt that you can write a hash method that will never ever produce collisions on that case.
An int in Java is always, by VM definition, 32 bits. I.e., 4 bytes. A reference (pointer) can be 32 bits on a 32 bit machine, or 64 bit on a 64 bit machine with a 64 bit VM. And that's not even counting the overhead of the wrapper object itself, which is IIRC 8 bytes itself, though it depends on VM too. That is, on top of the actual int in it. (Though, to be fair, that's on the heap and they were talking about optimizing copying to the stack;) Plus the GC overhead when dealing with the gazillions of extra wrapper objects. If you've ever seen a GC run into 2 billion small objects, well, you'll know what I mean.
Hmm. That's an interesting idea indeed.
Still, I fancy that a determined soul could always find _some_ way to poke around an object. Worst case scenario, you serialize it to a file and look in it that way. At least for Java there are libraries which serialize to XML too, so there's no need for hex-fu or anything.
Well, obviously all 3 above knew how to use a Hashtable or HashMap, but neither knew what they really do and all ended up trying to fix what's not broken.
But the real answer I'm tempted to give is more along the lines of the old wisecrack: In theory there's no difference between theory and practice. In practice there is.
In theory, people shouldn't know more than what collection to use, and they'll be perfectly productive without more than a Java For Dummies course. In practice I find that the people who understand the underlying machine produce better code. Basically that you don't need to actually program anything in ASM nowadays, but if you did once, you'll produce better code ever after. You don't need to chase your own pointers in Java any more, but you _can_ tell the difference between people who once understood them in C++ and those who still struggle with when "x=y" is a copy and when it holds only a reference to the actual object. You theoretically don't need to really know the code that javac generates for string concatenation, but in practice you can tell the difference in the code of those who know that "string1=string2+string3" spawns a StringBuffer too and those who think that spawning their own a StringBuffer is some magical optimization. Etc.
And then there are those who are living proof that just a little knowledge is a dangerous thing. I see people all the time who still run into something that was true in Java 1.0 times, but they don't understand why or why that isn't so any more.
As a simple example, I run into people who think that to rewrite:
as
... is some clever optimization, and it speeds things up because Java doesn't have to check the extra bounds on i any more.
In reality it's dumb and actually slower, instead of being an optimization. Any modern JIT (meaning since at least Java 1.2) will see that the bound was already checked, and optimize out the checking in the array indexing. So you have exactly one bounds check per iteration, not two. But in the "optimized" version, it doesn't detect an existing check, so it leaves in the one at the array indexing. So you _still_ have one bounds check per iteration. It didn't actually save anything. But this time the exit is done via an exception, which is a much more expensive thing.
For bonus points, it introduces the potential for another bug: what if at some point in the future the doSomething() method throws its own ArrayIndexOutOfBoundsException? Well, they'll get a clean exit out of the loop without processing all values, and without any indication that an exception has occured.
Such stuff happens precisely to people who don't understand the underlying machine, virtual or not.
Fair point, but in these guys' case invariably that wasn't thr case.
And a few more examples of cargo-cultism, from people who were untrained to understand what they're doing, but someone thought it was ok because the Java standard library does it for them anyway.
1. The same Wally 1 from the previous story had written basically this method:
Then he called it like this, to try to get around an immutable field in an object. Let's say we have an object called Name, which has an immutable String. So you create it with that string and can't change it afterwards. You have a getName() but not a setName() on it. So he tried to do essentially:
I understand that he worked a week on trying to debug into why it doesn't work, until he asked for help.
2. From Ted's aforementioned project:
So they used the wrapper classes like Integer or Character all over the place instead of int or char. This was back in Java 1.3 times too, so there was no automatic boxing and unboxing. The whole code was a mess of getting the values boxed as parameters, unboxing them, doing some maths, boxing the result. Lather, rinse, repeat.
I ask what that's all about.
"Oh, that's a clever optimization Ted came up with. See, if you have the normal int as a parameter, Java copies the whole integer on the stack. But if you use Integer it only copies a pointer to it."
AAARGH!
Let me tell you a true story to illustrate why I think people should still learn that stuff.
ACT I
So at one point I'm in a room with what looks like two particularly unproductive Wallys. Though it's probably unfair to call both Wally, since at least one looks like the hard working kind... he just makes as much progress as a courier on a treadmill.
So Wally 1 keeps clicking and staring at the screen all week and spewing things like "Unbelievable!" every 5 minutes. My curiosity gets the better of me and I ask what's happening.
"Look at this," goes Wally 1, and I indeed move over to see him toiling in the debugger through a Hashtable with String keys. He's looking at its bucket array, to be precise. "Java is broken! I added a new value with the same hash value for the key, and it just replaced my old one! Look, my old value was here, and now it's the new one!"
"Oh yes, we had that bug too at the former company I worked for," chimes in Wally 2. "We had to set the capacity manually to avoid it."
I clench my teeth to stop myself from screaming.
"Hmm," I play along, "expand that 'next' node, please."
"No, you don't understand, my value was here and now there's this other key there."
"Yes, but I want to see what's in that 'next' node, please."
So he clicks on it and goes, "Oh... There it is..."
Turns out that neither of them had the faintest fucking clue what a hash table is, or for that matter what a linked list is. They looked at its hash bucket and expected nothing deeper than that. And, I'm told, at least one of them had been in a project where they actually coded workarounds (that can't possibly do any difference, too!) for its normal operation.
ACT II
So I'm consulting at another project and essentially they use a HashMap with string keys too. Except they created their own key objects, nothing more than wrappers around a String, and with their own convoluted and IMHO suboptimal hash value calculation too. Hmm, they must have had a good reason, but I ask someone.
"Oh," he goes, "we ran into a Java bug. You can see it in the debugger. You'd add a new value whose key has the same hash value and it replaces yours in the array. So Ted came up with an own hash value, so it doesn't happen any more."
Ted was their architect, btw. There were easily over 20 of them merry retards in that project, including an architect, and neither of them understood:
A) that that's the way a hash table works, and more importantly
B) that it still worked that way even with Ted's idiotic workaround. It's mathematically impossible to code a hash there which doesn't cause the same collisions anyway, and sure enough Ted's produced them too.
ACT III
I'm talking to yet another project's architect, this time a framework, and, sure enough...
"Oh yeah, that's the workaround for a bug they found in project XYZ. See, Java's HashMap has a bug. It replaces your old value when you have a hash collision in the key."
AAARGH!
So I'm guessing it would still be useful if more people understood these things. We're not just talking abstract complaints about cargo-cult programming without understanding it. We're talking people and sometimes whole teams who ended up debugging into it when they had some completely unrelated bug, and spent time on it. And then spent more time coding "workarounds" which can't possibly even make any difference. And then spent more time fixing the actual bug they had in the first place.
Except that they are _supposed_ to be a time sink. That's the whole purpose of gaming: to spend some time in a more fun way than staring at your own walls. That's the actual game.
Whether it's dozens of hours a week or an hour on sundays, the principle is the same. You spend _some_ time in there to be entertained.
And that's what it remains, from level 1 when you're killing wolf cubs in Northshire to level 80 when you raid Ulduar. There is no point where it becomes anything more meaningful than that.
So someone who essentially pays to have someone else to play the game in his stead... well, he called it a loser, but I'll call it stupid too. They're people who pay to skip some of the content they've already paid for. It's as stupid as paying someone to see the first 3 quarters of the LOTR trilogy for you, just so you can then watch the final battle and pretend you're so l33t for it.
And it's funny that you should mention "instant self-esteem" because it seems to me like it usually applies not to us who play the game the normal way, but to the losers paying their way to level 80 or to some virtual status symbols. I've actually known a few (especially in COH during the "City Of Fire Tankers" period, it was hard not to), and yes, it seems to me like that's what they bought: instant self-esteem.
Invariably it was people who believed one or more of the following, and were trying to shove them in your face at that:
1. That being higher level somehow made them better or more worthy of respect, as opposed to just being pegged in another slice of the game's content.
2. That being able to do this or that (e.g., because of their l33t equipment) somehow made them superior persons, instead of just being yet another normal phase of the game's content.
3. That sporting some visible status symbol, somehow made them better and more respect worthy, as opposed to being just another piece of the game's content.
Etc.
And you recognize them at any level. They're the kind that, when you group with their new alt, have to mention every 5 minutes how many level 80's they have (or had even in beta!) and generally act as if their level is physically tied to their penis size, say an inch every 10 levels, and being even seen under level 70 is some kind shame and failure. They're the kind who'll sit parked at the Deadmines or wherever else and whine for a "boost"/"powerlevel"/whatever-it's-called-in-that-game for hours instead of actually playing the damned game. They're the kind who in, say, EQ2 will just have to drag you kicking and screaming to see their epic mount or mansion full of T8 furniture... at level 10... on their first character, as if that says anything else about them than "I bought platinum."
And yes, by the pretense that they're somehow superior because they're not investing time... in something that's just a time sink anyway.
They're in a nutshell the people who don't understand that the game is the road, not the destination. The ones who don't understand that levels 1-10 or 70-80 are just ways to parcel the game's content, as opposed to anything else. It's not more meaningful than, say, episodes 1 to 10 vs 70 to 80 of a soap opera.
But, no, they just have to artificially partition that mass of content in their mind into a 90% slice that's for them anywhere between shameful and merely not good enough for them, and at most 10% that's, yes, "instant self-esteem". And that's what they're buying: instant self esteem. The illusion that they're somehow more esteem-worthy if they skipped a chunk of the actual game.
Would I call them "losers" for it? Hell, yes.
The difference is that any other kind of medicine has to work _better_ than the placebo effect, though.
How about the Randi 1 million dollar challenge?
Most preliminary tests are filmed (and everyone so far flunked the preliminaries badly) and looking at some of them, the requests weren't unreasonable, the test setup wasn't stacked against the claimant in any way, etc. I haven't seen any where it would even matter whether he's set to disprove those claims or not. Either you see auras through walls, or you don't. Either you can tell the history of an object by touch, or you don't. Either you can dowse or you don't. Those people just plain old didn't have the powers they claimed to have.
I mean, seriously, when you see a group of Australia's best dowsers manage to average 1 in 10 guesses right for 10 pipes out of which only 1 has water, it's hard to take it as anything else than dumb guesswork. I don't see how Randi's agenda can affect the fact than when asked to guess the right 1 in 10, those people averaged 1 right guess in 10.
Some are really just smart people. You don't have to be a psychic to do _some_ predictions. E.g., since we're in a sub-thread about an XKCD comic, as I was saying, you don't have to be a psychic to predict that in any scare there'll be surrealistically dumb posts on twitter. (Or generally on the Internet.)
Some are just lucky guesses. Due to the nature of random numbers and events, if you have enough people rolling a die, someone out there _will_ get 10 sixes in a row.
Some are just vague enough that they can be interpreted to apply to a few billion different people, and to a thousand fundamentally different events. See, horoscopes, for example. Take some horoscopes and randomly change the star signs, e.g., take the personality description or daily prediction for a pisces and give it to a libra, and see if they notice. Invariably it's just as good.
Actually, both the USA and the Russians _tried_ using all sorts of paranormal stuff. None of them actually delivered any useful results.
It's still not exactly new. Stupidities have occasionally spread out of control before too. E.g., the idea of curing everything with a magnet has happened centuries before blogs, and it spread world-wide anyway. And since we're talking the stock market, the crash of 1929 happened long before blogs.
Well, it's not a hard prediction. I mean, whole threads of uninformed and stupid people spewing stupidities... on the internet? Who would have guessed? ;) In related news, bears do poop in the woods, the pope is indeed a catholic, and the ocean is indeed wet.
On the other hand, to be fair, the internet only made it easy to run into such conversations which otherwise would have happened at the pub or at a street corner, with equally uninformed people nodding through and offering their own stupid advice. Just think of all the cabbies who can't manage their own finances, but are ready to discourse at length about how the government should fix the economy. Or of all the people who can't be diplomatic enough to their neighbour, but apparently know exactly what the president should tell France or Russia. Etc.
And occasionally whole "theories" have been formed out of such stupid-preaching-to-the-stupid situations.
E.g., historically "animal magnetism" was born out of weaker correlations than the "lick an autistic kid" in the comic. And some people still buy magnets and crystals as cures... although they were known to be scams at least as early as 1841 when Charles Mackay published his "Extraordinary Popular Delusions and the Madness of Crowds."
E.g., homeopathy was born out of the observation that, basically, small doses of quinine cure malaria, but high doses of quinine cause the same kind of shivers as malaria. In the meantime we know why both happen, and it has nothing to do with "like cures like". But some people _still_ insist on believing in a cure that's intellectually on par with "lick an autistic kid" and born out of a correlation that was every bit as stupid and superficial. (In fact, just watch, I'm going to rub my crystal ball and predict that someone will promptly post a reply as to how wrong I am, and how homeopathy works and is proven and cures everything from hypochondria to cancer;)
Yes, but the list was about who invented the _term_, not who came up with an implementation concept.
Is it? I'm pretty sure that ideas like opening the a portal to hell existed _long_ before science fiction, and nobody would imagine Hell to be contiguous with some house's inner walls.
As early as Ancient Egypt they had stuff like a fake stone door in the mortuary chamber, as a portal to the netherworld, through which the souls of the deceased could go back and forth between real world and netherworld. And they didn't conceive the netherworld as a different direction, but as a place deep below in normal place. (E.g., Ra sailed his solar barge through the netherworld each night to complete the circle.) Obviously it can't be contiguous with a room in the middle of the pyramid, and the egyptians knew more geometry than that. But their stone portal supposedly did just that: connected that room to the netherworld.
So, no, SF didn't invent that. It's a concept that's literally thousands of years old.
And generally a lot of the things that SF fans claim as their own, is just some old concept dressed in a pseudo-science explanation. Whereas it previously used to be just magic or divine intervention. But at some point giving it a science-sounding explanation became a viable genre, and SF is just that.
E.g.,
- teleportation? Summoning is a concept that's as old as belief in magic and demons.
- robots? Karel Capek's robots were more like what today we'd call clones, a race of mass-produced human serfs, than the nuts and bolts kind we think of today. But if we look at the concept of a robot, it can be traced back to the concept of a golem... and now that's a concept that's really old.
- genetic engineering? Now that's just tacking the "genes" explanation on another notion that's as old as humanity itself. E.g., when the Bible explains the creation of blacks, that's just what God does: turns one race into another. And there are other myths all over the globe where a race or species is deliberately modified by someone or something with the power to do so. Tacking "genetics" onto it just gives it a different explanation, doesn't make it a new idea.
Would someone check each photo by eyeball-scan, or could I just send them the goatse pic as a photo of my neighbour's property?
And if there's someone doing that job, how much do you have to pay him for all the goatse and tubgirl pics he'll get? Will google add free psychotherapy to their job perks?
And on a more serious note, would they have to drive here anyway to check if my house really looks like the Windsor castle, like in that picture I'd send them? Maybe I just want a bit of extra "creative puffering" to sell that house. (Hey, it's not worse than most tech companies' marketing;)
Well, I'm not saying that gameplay is perfect.
But let's agree on this, then, because it seems to me like you're saying the same thing: if you go back in time for up to 10 years or so, you won't see a huge drop in gameplay quality. Taking the present point as the "OK" point (not "perfect", mind you), going up to 10 years or so in the past... gets you just as "OK" gameplay in most games.
Well, maybe even "OK" paints the wrong image. Basically what I'm trying to say is: if you could tolerate playing a brand-spanking-new 2009-release game, you could probably tolerate a 2005 release just as well. It won't be any worse, gameplay-wioe. And if you can't stomach the former, then you're not in the market for games, anyway, so it doesn't really matter.
Basically there is already somewhat less incentive to buy a brand new game when you can get a 1 to 3 year old game for a third of the price. Except if you already played all that could interest you from the past years, of course.
And I think that just going simpler and lower budget is... a tricky proposition. It can probably be pulled off, but it's not easy and certainly not by many. For most companies that would result in a game that isn't just sub-par compared to everyone else's games from this year, but also sub-par compared to existing 5 year old games.
To reuse that Build-A-Lot example, by itself "OK, I'm getting 5% of the game for 33% of the price of another new game" would maybe be more palatable by itself. Yeah, I'm a savvy consumer like that. I maximize TCO and minimize ROI ;) But it becomes a lot harder to rationalize when it becomes "OK, I'm getting 5% of a 5 year old game, and it actually costs more than that 5 year old game." That's the point where I have to look at the damned thing and ask myself what was I smoking when I bought it.
I mean, ok, in Build-A-Lot I can build houses along a road... and that's it. Period. But then for a _quarter_ of its price I could get Tropico, which has building houses, and an AI, and an economy, and more replay value, etc. Or I could get SimCity IV. Etc.
What's my motivation to buy the simpler low-budget new game, instead of something that costs less and offers more?
Well, there is one problem there: everybody also competes with older games at bargain bin prices.
There was a time when that was a lot less of a problem, since Doom II looked like crap compared to Quake (and games based on the Quake engine), and then when you had Quake II games the old Quake I started to look like crap by comparison. Nowadays improvements are a lot more incremental. I've even played some ~10 year old games recently and while you can tell a difference, they're not exactly visually offensive either.
Gameplay has also been OK for quite a while now. It's been a long time since we had too little RAM for anything too complex, so you can go quite a bit back in time with your gaming before you run into problems.
Basically what I'm saying is this:
A) I could buy a new cutesy mini-game for casual players for 20 bucks or so. Like, say, Build-A-Lot, which I actually bought recently. Except it feels like there's a whole game missing around it. The complexity and difficulty are about right for one of the dozens of minigames in a $60 RPG, so I don't think I got much of a bargain with it.
B) I could get Fallout I, Fallout II _and_ Fallout Tactics on a DVD for around the same price. Seriously.
C) I could get a 1 to 3 year old game for the same price. E.g., The Sims 2 costs about that much by now, and it's actually a better value for casual gamers. (Though if you're a l33t FPS-er, you might not necessarily like it.) E.g., Settlers 6 is actually almost half that by now. E.g., Warcraft III including the expansion pack is also about 20 bucks by now. Slightly more money gets you Civ IV with all expansion packs. Etc.
So I think there's a finite niche for simple cutesy games.
Of course, that might not apply if you can come up with a radically new game concept that everyone just has to play. But that's a bit harder than it sounds. Designers which managed to come up with a whole new concept are very few and far in between, and even they rarely manage to repeat that. It's hardly a model for staying in business for the rest of your life, is it?
Well, if you're going for really mixed signals, there's always this one too: Darth Kitty
Personally I'd make it pink and give it a Hello Kitty sticker. Keeps people on their toes ;)