Lens shutter glasses, like the SMS had, don't use polarized light - they just make each lens fully opaque in turn. I've got a newer pair that works with the PC (and the NVidia 3d drivers), but I haven't used them for a while. They work OK, but they have disadvantages: they require non-trivial hardware for every viewer and pictures tend to look flickery and dark. I suppose with better tech (more brightness, better refresh rate, some kind of better technology for the shutters) these disadvantages might be rectified.
In order to display these movies at home, you'd need a fair bit of equipment - probably 2 projectors, or at least one and a fancy lens. And a special screen. I think after that you could spring for the $8 polarized glasses.
I'm hoping this comes out at home. For those of us with two projectors, appropriate polarizing filters, a special screen, and a few sets of glasses I have to say there isn't enough content. (Not joking - and if you're wondering, it's hard to get games working right but very cool when you do).
Populations can split and don't always go in the same direction. There's many niches and ways to be successful at living. That's why you'll find a bird with a medium sized beak might be a common ancestor of short-beaked and long-beaked birds (and perhaps no medium-beaked birds). Somewhere there's a common ancestor of monkeys and men - and that common ancestor had progeny taking many forms that are successful (and, assumably, many that have disappeared). Imagine a giant tree showing possible descendants of a species. Now cut out the parts that include animals that aren't successful in procreating (or were just unlucky). What's left is what we have, and can include whatever worked - however diverse that is.
Here's a good article talking about intermediate forms here, of which there are a number of clear examples. You have to understand, though, that the fossil record is not complete - and it's only chance that we find some things and not others in it. It takes a series of fortunate events for an animal to be fossilized and for us to find it.
I'm not saying these arguments are unreasonable, but I don't think they're terribly strong. Similarly, one could find arguments against plate tectonics - the Earth's surface is tremendously complex and I'm sure there's many features that are puzzling. But we don't have debates about this (and nobody bothers to "debunk" plate tectonics in their classroom) because it's not tied to a political/religious issue.
I hear the same concerns and misconceptions about evolution quite a bit. To me, that's evidence evolution - whether it's being taught as "theory" or "fact" - is not being taught well. If people spent a quarter as much time learning about the theory as they do debating it, the debate could take place on a much better level.
I'm not sure the distinction is all that large; I think generally the same people will do well in TopCoder, ACM, or ICFP (though naturally some people will be more interested in one kind of contest than another).
For example, here's a list of members on the 2006 ICFP 1st and 3rd place teams:
"Team Smartass" comprised Christopher Hendrie (ChristopherH), Derek Kisman (SnapDragon), Ambrose Feinstein (ambrose) and Daniel Wright (dmwright). "You Can't Spell Awesome Without ASM" comprised John Dethridge (John Dethridge), Ralph Furmaniak (RalphFurmaniak), Tomasz Czajka (tomek) and Reid Barton (reid).
These are all high-rated competitors on TopCoder (the guy I stole this from conveniently listed their TopCoder handles in brackets), and most (if not all, I don't know) were very successful in ACM competition. For myself, I thoroughly respect anyone who does well in any of these contests. I know from our own experience hiring that it's very difficult to find programmers who can do algorithm work at all - if someone is actually doing well in these contests it says a lot about their aptitude and interest in programming (though naturally it doesn't guarantee they'll be a good employee, especially if the job is cranking out "boring" software).
..and, honestly, the conversations with animations were the only ones I wanted to skip. The only time I died more than once in the game was Matriarch Benwhatsia - so I got to watch those cinematics (she points, the soldiers appear, oh boy!) a bunch of times. I remember being annoyed.
Oh, and it would have been nice if some of the "merchant dialog" was skipped by default. The "Hello". "Would you like to see what I have." "Yes. Show me what you have." conversations were slow and annoying.
(Note: for whatever my nitpicking, I really liked the game).
I contend that game AI is sometimes more advanced than academic AI
I contend that game AI is almost always laughably bad (or pretty much non-existent). I realize Mass Effect doesn't exactly win a lot of points for its AI, but the problems very nearly ruined a AAA-developer/large-budget game. I remember one point where, out of battle, I was telling one of my squad to go somewhere. There was pretty much one feature in the room - a wall intersecting the direct path to the target point. Getting around this wall would require one small deviation from the direct path. Instead of walking around the wall, the character just stood there "I'm going to need a transporter to get there" or something.
I can't imagine how the "AI" could have been implemented in order for that kind of failure to be possible (and common - I had repeated problems with this through the game). I assume they must have just cheated vigorously on the "follow" logic, as - if they'd used the same system - you'd be losing your squad around every corner.
Really, though, none of the maps were that complicated. The "navigable area" map for the problem location couldn't have had more than 200 or so vertices (it was a very simple map, one of the explorable bunker type areas). That's few enough that you could just Floyd-Warshall the whole graph. But, more generally, a stupidly naive, guessing DFS (that capped at 3 turns or something) would have worked just fine too. I can't think of a solution or algorithm that would fail the way their system did constantly. Mind-boggling.
Stepping back a bit, this shouldn't even be a consideration. There are simple, fast, robust algorithms that could handle this kind of trivial pathing problem without putting any strain on CPU or occupying more than a couple pages of code. That they don't have a better solution says that they (and most of the games industry, in my experience as a player) value AI at very close to 0.
Well, you're right in a sense - you declare arrays by the highest index (rather than the size). It doesn't mean you end up making arrays too big or something - it works the same as other languages, it just looks strange.
The goofy looking one is when you declare an array with zero elements, which looks like "dim x(-1) as integer" (as dim x(0) would make an array with one element).
Even the consumer level hardware has rudimentary head tracking (my eMagin set has just tilt sensors, though I usually turn that off because it's "not there yet"). But there are certainly more precise head tracking options available.
And it doesn't preclude integration in games. Tilt can be mapped to mouse-look (and is, with my eMagin setup now - though it's not ideal) while minor position changes can be taken care of at the driver-level (using similar techniques to the ones they use to offset the eyes for the 3d). Supporting large motions (or supporting orientation/movement with better fidelity) would require a bit more change - but nothing that's not doable at, say, the "mod" level.
..the hype of VR died away, and then the technology to make it good came along.
I've got a set of eMagin glasses (can't remember what model, but they're not new) - and playing racing games on them is incredible super-awesome fun. The problem with most racing games is you never feel like you're going fast, but with the glasses you get a great, wonderful feeling of speed (enough so that the game itself is just a bonus).
My prediction: One day quite soon here, people will re-discover VR and it will be huge. The tech is all ready to go, it's just nobody seems to be taking hold of it (I guess nobody wants to produce the next Virtual Boy).
I'm not sure why you would think they are comparable.
My intended point was that the sexual content - described as "Partial Nudity, Sexual Themes" for both - is of a very different nature in the two games. I didn't search the list to find two very different games with an exactly identical list of descriptors, but I'm sure such a pair could be found, and I imagine you get my point.
I just dont think the one word description needs to be on the ESRB rating.
To be clear, mostly I was thinking about the ESRB site and how it could be more useful. Currently it shows only rating and a list of descriptors. I think it should also contain or link to a synopsis (or trailer, or site, or something) so that parents have something more substantive to evaluate, and can learn about video game content from a central, trustable source.
And, yes, I do think this would be a valuable service - a lot of parents, especially non-gamers, are going to have more difficulty judging the content of a game than the content of a movie or book, and could use the help. Sure, there's plenty of info on games on the web already - but it is serving a lot of different purposes (advertisement, discussion of gameplay or quality, etc..) and may be hard to find for the people who need it most. The game box, while likely very helpful for some games, isn't always on hand - and again isn't really geared towards giving this kind of info.
I've spent some time in game stores, and overheard a good few conversations. The best parents ask the salespeople what happens in the game. And the better salespeople can give the kind of information the parent wants:
"Some people fight each other. Like punching and kicking. There's not really so much blood, but the girls wear very revealing outfits." "You skateboard around doing tricks. The crashes are pretty brutal, and there's some crude jokes." "You collect and control little monsters that fight and stuff. You don't actually see them fight, you just kind of read what they did."
And I think that's what's missing from the ESRB web site - they don't give the kind of context many parents need to evaluate a game. Now I think it's reasonably clear a young kid shouldn't be playing either Dead or Alive Extreme 2 or Mass Effect (and both are M rated, which seems right) but look at the content descriptors:
Partial Nudity, Sexual Themes, Simulated Gambling Partial Nudity, Sexual Themes, Blood, Language, Violence
From just that, you might think these are comparable games. Compare that to the information you get from a synopsis:
"You ogle bikini girls and buy them bikinis. That's the whole point of the game." "You buy guns and shoot aliens. In the story, there's a love scene where you can see a girl's bum for a second."
Whatever you may think of the relative offensiveness of that content, I think that's information a parent needs to have in order to make a decision. These games' content are very different.
I really liked Puzzle Quest to a point, until the luck mechanics pretty much completely overwhelmed the puzzle aspect. For the first half of the game, I could usually win while giving the opponent very few turns - chaining together a bunch of spells and really thinking things through.
But then opponents got so they would randomly counter spells. Suddenly I couldn't plan 3 or 4 moves ahead. Instead of saving possible sets of 4 for a lull, I had to just start using the best thing on the screen for fear that otherwise the computer would counter and use it in a long combo. And when you play it like that, it's just Bejeweled with a health bar.
The game didn't really get harder, it just got more random and less fun - so I quit playing.
Most likely, You're talking about practices you implemented in IE that wandered from existing standards,
I don't think you have the right historical perspective here. When IE was initially becoming popular, the "standard" was "however it rendered in Netscape" - and to "look at the standard" you needed a knife and some goat entrails. I'm all for MS following standards, but I'm also happy to grant them that choices weren't quite so clear back then - and I can't really begrudge them for some of the decisions they made in that context (even if they seem odd now).
I'm just glad I don't have to do anything with "layers" anymore.
Doing a software project through TopCoder is actually fairly expensive - there's a lot of overhead in terms of architecture staff, review boards, etc, to make it work. It will never be the norm in terms of the software industry, except perhaps for certain kinds of components designed for heavy re-use. Heck, TopCoder itself doesn't use the TopCoder process for all of its own internal work (they have their own internal developers). Being familiar with how these contests work, I'm not worried TopCoder will take my job any more than I'm afraid open source developers will take my job. They all have their place.
It's not the right process for every project, and it's not the right system for every developer. But for some projects and some developers, it works really well. I've seen a lot of people try, find it's not to their liking and leave - but few do so with any real complaints. On the flip side, I know a lot of people who are very happy doing work for them.
You're making some assumptions that are incorrect. Firstly, you're assuming that everyone is there for the money. For many people, TopCoder provides a way to have "something" on their resume. Even if their competition history isn't glorious, it's nonetheless the best experience that many new graduates (or other young developers) will have to show (and for many bright students it also provides a flexible source of income). But even if a submission only passes the initial filtration steps, it's a demonstration of basic competence that many employers respect (TopCoder has been sponsored by Google/Microsoft/NSA/AOL/Deutsche Bank/many other AAA companies).
Secondly, suggesting that these people could easily get higher paying jobs is only sometimes true. Many competitors quit their "regular" job because they were making more at TopCoder per hour. This is especially true for competitors in areas where the average salary is lower, or where work befitting their skill level isn't available. Regardless of dollars per hour, doing work for TopCoder allows a tremendous amount of freedom in terms of when, where, and how much you work - and for many people those are important factors.
And I'm not saying it's a perfect setup, certainly not for everyone. I have never done much with the design/development competitions because the numbers don't work - for me - and honestly I'm not sure how well I'd do. But, for many people, it has proven to be a great fit.
TopCoder isn't trying to get people develop for free. If anything, the complaint would be that TopCoder's development methodology is too expensive: payments to design winners, payments for developers, bonuses for reliability, payments for review staff, payments for architects, ongoing programs like the "digital run". I've heard estimates that TopCoder ended up spending around $500,000 on its new UML tool.
I don't do design/development work for TopCoder (although I love the algorithm competitions, which are separate). But basically, the plan is to divide a project into parts. Each part is run as a design contest. Numerous designers spend a large amount of time producing a design. The designs are evaluated by a review board according to very specific, standardized criteria. A winning design is eventually picked, and the winners are paid. Then the part goes off to development, which follows the same general pattern. Other competitors and/or in-house staff are involved in the assembly and architecture of the overall software.
There are a lot of people submitting design and development work, but there is a much smaller group of people who routinely win. The money is not trivial - hundreds of thousands of dollars - and many of the top people do TopCoder projects full time. Thus there is a tremendous incentive towards quality, and it shows in the software TopCoder produces.
I don't think it's the best methodology for all software (or even most software) - but it's definitely not haphazard crap thrown together on the cheap by 1000 newbies. It's much more likely to be over-expensive, over-engineered software, with each part much more general-purpose than required by the specific software.
There are algorithm competitions on TopCoder (which I enjoy, and which I assume you're referring to), but they are completely separate from the design, development, and architecture competitions (though naturally some people participate in both).
As someone familiar with their software development methodology, the criticism I would be most likely to level is that it's very labor intensive. It involves a large number of designers, developers, architects and reviewers - and the competitive nature of the individual parts means that there's a lot of duplication of effort (ie. for each component there will be a number of designs submitted; only one wins - so while some parts of different submissions may be used, there is still a lot of waste).
So while you could make a case that TopCoder software is over-engineered or over-expensive, it is in not haphazard and it has everything to do with creating a great, "real-world" result. The people involved are excellent developers, many of whom do TopCoder full time; if you are good enough to routinely "win", it can be quite lucrative.
My understanding is that, for a $1 iTunes download, the breakdown looks something like this:
$.75 - Label $.20 - Apple $.05 - Artist
If the middleman (who provides neither the content nor the bandwidth, and takes 3/4 of the money) can't make a profit here then I think perhaps they're doing something wrong.
For us, we only have 5 developers (for around 1000 employees), and the CIO is an ex-programmer who keeps a good lid on what's going on. We would have to change a lot of how we do things if we had a larger dev team. Or if our roll-out costs were higher. Or if we had more external clients. I like our development culture, but there's a lot of places it wouldn't work - and I would probably be useless as part of a larger team.
I recently figured out we're paying a vendor about $10000 per support call.
It's both: a document management system and a simple in-browser word processor. I'm hazy on history - it's a while back now - but I think Sharepoint came into being fairly soon after we launched.
I replied to the other guy, but I'll reply to a specific point in yours as well. We didn't develop this to save money on Word. We developed it so that we could have a central document store that worked, that was easy to use for our purposes, and that we could control and customize.
Initially, the online one was an experiment. We needed to switch to something, because the legacy system (involving Word 95 documents and batch updates from the branches) wasn't going to cut it going forward. The templates relied heavily on Word 95 style macros (which weren't supported in later versions), but Word 2000 had much better online support and we couldn't just let ourselves be trapped with an old version. Anyways, we tried a few content management setups - but they were all dead ends.
We rejected them not because of cost, but because they were less reliable and usable than our homegrown one (which, again, was developed at very low cost - and pretty much as an experiment). The savings since, which are real, on licenses and support are the gravy. You're right - switching to a bad solution to save a few hundred thousand wouldn't have made any sense. But that's not what we did.
Also, it's hard to overestimate the long-term cost of giving an employee a copy of Access:)
You can buy a version of Word where you pay per document? I don't keep up on pricing, but that's quite the revolution for MS. When we buy Word, we have to pay per user - and we have a lot of users, many of whom are not employees or who do very few documents. I'm also counting in there drastically lower support costs, which we've seen.
And no, we didn't actually spend that long in development (one developer, me, times about 3 months at the start) and no, it doesn't take people long to train - because the thing only has the 15 or so functions that our users should be using, and where appropriate they work the same way they do in other word processors. To be sure, this started out as an experiment - but it's an experiment that paid off. Our alternative options at the time (2001/2002'ish I think) were not good, and our tests with them didn't make happy users.
And, to be clear, I never set out to say this is the right solution for everyone - and likely less so now in 2007. And, of course, if your Word users are using lots of complicated functions, you'd be crazy to try to re-implement them all. I was countering the idea that an online word processor is infeasible in general.
Also, to be clear, I am not inexperienced with other alternatives. A few of our users need spreadsheets, so a couple years ago we looked into an OpenOffice based content management system. We got it working for the spreadsheets and got most of the application ties working, and as a test we tried to see whether the word processing users wanted to use it too. They didn't like it - too complicated, and if they wanted to use it at home they had to install stuff. And, for us, if we wanted to do customization, we had to delve deep into a fairly complicated project. It's still only used for a few spreadsheets, and the project was, on balance, a waste of time (which we're OK with - we may use it more later).
We also support another client that uses a forms based app with ties to Word (from around 1998). It works OK for the most part, but there's fairly often some problem and the breaks between apps make the UI fairly hokey. A month ago, they installed a Server 2003 update on a neglected server, untested, and everything died. Some "Word cannot open " error. Had to run a fix on every computer, and then fix some of the templates - lost a half day of work. Nothing major, but something that happens much less frequently for the online one (though, to be fair, Vista gave us some curveballs). I've spent a lot of time diggling with weird errors in Word templates, and Googling about odd problems.
In general, I get tired of the term "Not Invented Here". I hear it fairly often, especially when we get a new employee who's not used to actually writing software. I understand the idea that re-using tested software is often better than rolling your own, but I know a lot of developers who seem scared of developing anything. It's always "piece together 6 well tested, general purpose tools". We've had a few guys like that over the years, and their legacy usually lives on in the bad parts of the software, and the parts that don't work when we make a new app server because they require 12 packages installed to do simple crap (and where did we put the license key for this one? can we still download the old version of that one?).
If you have a manageably sized, specific need, quite often a homegrown solution will better meet your needs and will be easier to maintain for those needs going forward. Our company outpaces our industry fairly handily on technology, despite spending about the same. It's because we don't blindly write off options because they don't match some rule of thumb.
Our document editor is homegrown, and we host it internally. Privacy and security would certainly be bigger concerns if you were hosting with a third party, and I can't really speak to how it would be best to manage that.
The application isn't overly bandwidth intensive, and some of our users access it over cell-type connections. But really this hasn't impacted us too much - the nature of our business means that our production staff who travel will usually be dictating rather than typing themselves (and it's easy to upload the dictation files when you're back to some kind of good connection). Also, to be fair, many of our users (especially marketing) have other Word processors they use for documents not tied to production, like proposals or brochures or labels and what not. Our app is not a general purpose word processor: we had the luxury of designing it around a limited set of needs.
In terms of business rules, we've found it to be very convenient - though a proper content management system would do most of the same things. Naturally it's easy to control who can see what, who can edit what, what's available to what clients online, etc. We can also make certain elements of documents uneditable, or only editable via our own tools (and the relevant data captured back). For example: our users produce a lot of reports, and in the past they would tend to put tabled information in reports and nowhere else (meaning we couldn't analyze that data later). Now, they enter that data one time, in a structured way through a plugin in the word processor, and it's persisted in the database as well as being on the report. This is of course possible with a regular word processor as well, but I think some parts would be much more difficult to manage. When you're dealing with a small subset of word processing functionality, and a small/standard codebase for the UI, many of these things are trivial.
I imagine there are a lot better options out there now than when we built this years ago (and it quite possibly wouldn't be the right choice now) but it has worked out well for us.
Lens shutter glasses, like the SMS had, don't use polarized light - they just make each lens fully opaque in turn. I've got a newer pair that works with the PC (and the NVidia 3d drivers), but I haven't used them for a while. They work OK, but they have disadvantages: they require non-trivial hardware for every viewer and pictures tend to look flickery and dark. I suppose with better tech (more brightness, better refresh rate, some kind of better technology for the shutters) these disadvantages might be rectified.
Might be a money-maker...
In order to display these movies at home, you'd need a fair bit of equipment - probably 2 projectors, or at least one and a fancy lens. And a special screen. I think after that you could spring for the $8 polarized glasses.
I'm hoping this comes out at home. For those of us with two projectors, appropriate polarizing filters, a special screen, and a few sets of glasses I have to say there isn't enough content. (Not joking - and if you're wondering, it's hard to get games working right but very cool when you do).
Populations can split and don't always go in the same direction. There's many niches and ways to be successful at living. That's why you'll find a bird with a medium sized beak might be a common ancestor of short-beaked and long-beaked birds (and perhaps no medium-beaked birds). Somewhere there's a common ancestor of monkeys and men - and that common ancestor had progeny taking many forms that are successful (and, assumably, many that have disappeared). Imagine a giant tree showing possible descendants of a species. Now cut out the parts that include animals that aren't successful in procreating (or were just unlucky). What's left is what we have, and can include whatever worked - however diverse that is.
Here's a good article talking about intermediate forms here, of which there are a number of clear examples. You have to understand, though, that the fossil record is not complete - and it's only chance that we find some things and not others in it. It takes a series of fortunate events for an animal to be fossilized and for us to find it.
I'm not saying these arguments are unreasonable, but I don't think they're terribly strong. Similarly, one could find arguments against plate tectonics - the Earth's surface is tremendously complex and I'm sure there's many features that are puzzling. But we don't have debates about this (and nobody bothers to "debunk" plate tectonics in their classroom) because it's not tied to a political/religious issue.
I hear the same concerns and misconceptions about evolution quite a bit. To me, that's evidence evolution - whether it's being taught as "theory" or "fact" - is not being taught well. If people spent a quarter as much time learning about the theory as they do debating it, the debate could take place on a much better level.
For example, here's a list of members on the 2006 ICFP 1st and 3rd place teams:
These are all high-rated competitors on TopCoder (the guy I stole this from conveniently listed their TopCoder handles in brackets), and most (if not all, I don't know) were very successful in ACM competition. For myself, I thoroughly respect anyone who does well in any of these contests. I know from our own experience hiring that it's very difficult to find programmers who can do algorithm work at all - if someone is actually doing well in these contests it says a lot about their aptitude and interest in programming (though naturally it doesn't guarantee they'll be a good employee, especially if the job is cranking out "boring" software).
..and, honestly, the conversations with animations were the only ones I wanted to skip. The only time I died more than once in the game was Matriarch Benwhatsia - so I got to watch those cinematics (she points, the soldiers appear, oh boy!) a bunch of times. I remember being annoyed.
Oh, and it would have been nice if some of the "merchant dialog" was skipped by default. The "Hello". "Would you like to see what I have." "Yes. Show me what you have." conversations were slow and annoying.
(Note: for whatever my nitpicking, I really liked the game).
I contend that game AI is sometimes more advanced than academic AI
I contend that game AI is almost always laughably bad (or pretty much non-existent). I realize Mass Effect doesn't exactly win a lot of points for its AI, but the problems very nearly ruined a AAA-developer/large-budget game. I remember one point where, out of battle, I was telling one of my squad to go somewhere. There was pretty much one feature in the room - a wall intersecting the direct path to the target point. Getting around this wall would require one small deviation from the direct path. Instead of walking around the wall, the character just stood there "I'm going to need a transporter to get there" or something.
I can't imagine how the "AI" could have been implemented in order for that kind of failure to be possible (and common - I had repeated problems with this through the game). I assume they must have just cheated vigorously on the "follow" logic, as - if they'd used the same system - you'd be losing your squad around every corner.
Really, though, none of the maps were that complicated. The "navigable area" map for the problem location couldn't have had more than 200 or so vertices (it was a very simple map, one of the explorable bunker type areas). That's few enough that you could just Floyd-Warshall the whole graph. But, more generally, a stupidly naive, guessing DFS (that capped at 3 turns or something) would have worked just fine too. I can't think of a solution or algorithm that would fail the way their system did constantly. Mind-boggling.
Stepping back a bit, this shouldn't even be a consideration. There are simple, fast, robust algorithms that could handle this kind of trivial pathing problem without putting any strain on CPU or occupying more than a couple pages of code. That they don't have a better solution says that they (and most of the games industry, in my experience as a player) value AI at very close to 0.
Well, you're right in a sense - you declare arrays by the highest index (rather than the size). It doesn't mean you end up making arrays too big or something - it works the same as other languages, it just looks strange.
The goofy looking one is when you declare an array with zero elements, which looks like "dim x(-1) as integer" (as dim x(0) would make an array with one element).
...really nailed this one: comic.
Even the consumer level hardware has rudimentary head tracking (my eMagin set has just tilt sensors, though I usually turn that off because it's "not there yet"). But there are certainly more precise head tracking options available.
And it doesn't preclude integration in games. Tilt can be mapped to mouse-look (and is, with my eMagin setup now - though it's not ideal) while minor position changes can be taken care of at the driver-level (using similar techniques to the ones they use to offset the eyes for the 3d). Supporting large motions (or supporting orientation/movement with better fidelity) would require a bit more change - but nothing that's not doable at, say, the "mod" level.
..the hype of VR died away, and then the technology to make it good came along.
I've got a set of eMagin glasses (can't remember what model, but they're not new) - and playing racing games on them is incredible super-awesome fun. The problem with most racing games is you never feel like you're going fast, but with the glasses you get a great, wonderful feeling of speed (enough so that the game itself is just a bonus).
My prediction: One day quite soon here, people will re-discover VR and it will be huge. The tech is all ready to go, it's just nobody seems to be taking hold of it (I guess nobody wants to produce the next Virtual Boy).
I'm not sure why you would think they are comparable.
My intended point was that the sexual content - described as "Partial Nudity, Sexual Themes" for both - is of a very different nature in the two games. I didn't search the list to find two very different games with an exactly identical list of descriptors, but I'm sure such a pair could be found, and I imagine you get my point.
I just dont think the one word description needs to be on the ESRB rating.
To be clear, mostly I was thinking about the ESRB site and how it could be more useful. Currently it shows only rating and a list of descriptors. I think it should also contain or link to a synopsis (or trailer, or site, or something) so that parents have something more substantive to evaluate, and can learn about video game content from a central, trustable source.
And, yes, I do think this would be a valuable service - a lot of parents, especially non-gamers, are going to have more difficulty judging the content of a game than the content of a movie or book, and could use the help. Sure, there's plenty of info on games on the web already - but it is serving a lot of different purposes (advertisement, discussion of gameplay or quality, etc..) and may be hard to find for the people who need it most. The game box, while likely very helpful for some games, isn't always on hand - and again isn't really geared towards giving this kind of info.
I've spent some time in game stores, and overheard a good few conversations. The best parents ask the salespeople what happens in the game. And the better salespeople can give the kind of information the parent wants:
"Some people fight each other. Like punching and kicking. There's not really so much blood, but the girls wear very revealing outfits."
"You skateboard around doing tricks. The crashes are pretty brutal, and there's some crude jokes."
"You collect and control little monsters that fight and stuff. You don't actually see them fight, you just kind of read what they did."
And I think that's what's missing from the ESRB web site - they don't give the kind of context many parents need to evaluate a game. Now I think it's reasonably clear a young kid shouldn't be playing either Dead or Alive Extreme 2 or Mass Effect (and both are M rated, which seems right) but look at the content descriptors:
Partial Nudity, Sexual Themes, Simulated Gambling
Partial Nudity, Sexual Themes, Blood, Language, Violence
From just that, you might think these are comparable games. Compare that to the information you get from a synopsis:
"You ogle bikini girls and buy them bikinis. That's the whole point of the game."
"You buy guns and shoot aliens. In the story, there's a love scene where you can see a girl's bum for a second."
Whatever you may think of the relative offensiveness of that content, I think that's information a parent needs to have in order to make a decision. These games' content are very different.
I really liked Puzzle Quest to a point, until the luck mechanics pretty much completely overwhelmed the puzzle aspect. For the first half of the game, I could usually win while giving the opponent very few turns - chaining together a bunch of spells and really thinking things through.
But then opponents got so they would randomly counter spells. Suddenly I couldn't plan 3 or 4 moves ahead. Instead of saving possible sets of 4 for a lull, I had to just start using the best thing on the screen for fear that otherwise the computer would counter and use it in a long combo. And when you play it like that, it's just Bejeweled with a health bar.
The game didn't really get harder, it just got more random and less fun - so I quit playing.
Most likely, You're talking about practices you implemented in IE that wandered from existing standards,
I don't think you have the right historical perspective here. When IE was initially becoming popular, the "standard" was "however it rendered in Netscape" - and to "look at the standard" you needed a knife and some goat entrails. I'm all for MS following standards, but I'm also happy to grant them that choices weren't quite so clear back then - and I can't really begrudge them for some of the decisions they made in that context (even if they seem odd now).
I'm just glad I don't have to do anything with "layers" anymore.
Doing a software project through TopCoder is actually fairly expensive - there's a lot of overhead in terms of architecture staff, review boards, etc, to make it work. It will never be the norm in terms of the software industry, except perhaps for certain kinds of components designed for heavy re-use. Heck, TopCoder itself doesn't use the TopCoder process for all of its own internal work (they have their own internal developers). Being familiar with how these contests work, I'm not worried TopCoder will take my job any more than I'm afraid open source developers will take my job. They all have their place.
It's not the right process for every project, and it's not the right system for every developer. But for some projects and some developers, it works really well. I've seen a lot of people try, find it's not to their liking and leave - but few do so with any real complaints. On the flip side, I know a lot of people who are very happy doing work for them.
You're making some assumptions that are incorrect. Firstly, you're assuming that everyone is there for the money. For many people, TopCoder provides a way to have "something" on their resume. Even if their competition history isn't glorious, it's nonetheless the best experience that many new graduates (or other young developers) will have to show (and for many bright students it also provides a flexible source of income). But even if a submission only passes the initial filtration steps, it's a demonstration of basic competence that many employers respect (TopCoder has been sponsored by Google/Microsoft/NSA/AOL/Deutsche Bank/many other AAA companies).
Secondly, suggesting that these people could easily get higher paying jobs is only sometimes true. Many competitors quit their "regular" job because they were making more at TopCoder per hour. This is especially true for competitors in areas where the average salary is lower, or where work befitting their skill level isn't available. Regardless of dollars per hour, doing work for TopCoder allows a tremendous amount of freedom in terms of when, where, and how much you work - and for many people those are important factors.
And I'm not saying it's a perfect setup, certainly not for everyone. I have never done much with the design/development competitions because the numbers don't work - for me - and honestly I'm not sure how well I'd do. But, for many people, it has proven to be a great fit.
"Let's find someone to do it for free."
TopCoder isn't trying to get people develop for free. If anything, the complaint would be that TopCoder's development methodology is too expensive: payments to design winners, payments for developers, bonuses for reliability, payments for review staff, payments for architects, ongoing programs like the "digital run". I've heard estimates that TopCoder ended up spending around $500,000 on its new UML tool.
I don't do design/development work for TopCoder (although I love the algorithm competitions, which are separate). But basically, the plan is to divide a project into parts. Each part is run as a design contest. Numerous designers spend a large amount of time producing a design. The designs are evaluated by a review board according to very specific, standardized criteria. A winning design is eventually picked, and the winners are paid. Then the part goes off to development, which follows the same general pattern. Other competitors and/or in-house staff are involved in the assembly and architecture of the overall software.
There are a lot of people submitting design and development work, but there is a much smaller group of people who routinely win. The money is not trivial - hundreds of thousands of dollars - and many of the top people do TopCoder projects full time. Thus there is a tremendous incentive towards quality, and it shows in the software TopCoder produces.
I don't think it's the best methodology for all software (or even most software) - but it's definitely not haphazard crap thrown together on the cheap by 1000 newbies. It's much more likely to be over-expensive, over-engineered software, with each part much more general-purpose than required by the specific software.
There are algorithm competitions on TopCoder (which I enjoy, and which I assume you're referring to), but they are completely separate from the design, development, and architecture competitions (though naturally some people participate in both).
As someone familiar with their software development methodology, the criticism I would be most likely to level is that it's very labor intensive. It involves a large number of designers, developers, architects and reviewers - and the competitive nature of the individual parts means that there's a lot of duplication of effort (ie. for each component there will be a number of designs submitted; only one wins - so while some parts of different submissions may be used, there is still a lot of waste).
So while you could make a case that TopCoder software is over-engineered or over-expensive, it is in not haphazard and it has everything to do with creating a great, "real-world" result. The people involved are excellent developers, many of whom do TopCoder full time; if you are good enough to routinely "win", it can be quite lucrative.
My understanding is that, for a $1 iTunes download, the breakdown looks something like this:
$.75 - Label
$.20 - Apple
$.05 - Artist
If the middleman (who provides neither the content nor the bandwidth, and takes 3/4 of the money) can't make a profit here then I think perhaps they're doing something wrong.
Lol.
It's both: a document management system and a simple in-browser word processor. I'm hazy on history - it's a while back now - but I think Sharepoint came into being fairly soon after we launched.
I replied to the other guy, but I'll reply to a specific point in yours as well. We didn't develop this to save money on Word. We developed it so that we could have a central document store that worked, that was easy to use for our purposes, and that we could control and customize.
:)
Initially, the online one was an experiment. We needed to switch to something, because the legacy system (involving Word 95 documents and batch updates from the branches) wasn't going to cut it going forward. The templates relied heavily on Word 95 style macros (which weren't supported in later versions), but Word 2000 had much better online support and we couldn't just let ourselves be trapped with an old version. Anyways, we tried a few content management setups - but they were all dead ends.
We rejected them not because of cost, but because they were less reliable and usable than our homegrown one (which, again, was developed at very low cost - and pretty much as an experiment). The savings since, which are real, on licenses and support are the gravy. You're right - switching to a bad solution to save a few hundred thousand wouldn't have made any sense. But that's not what we did.
Also, it's hard to overestimate the long-term cost of giving an employee a copy of Access
You can buy a version of Word where you pay per document? I don't keep up on pricing, but that's quite the revolution for MS. When we buy Word, we have to pay per user - and we have a lot of users, many of whom are not employees or who do very few documents. I'm also counting in there drastically lower support costs, which we've seen.
And no, we didn't actually spend that long in development (one developer, me, times about 3 months at the start) and no, it doesn't take people long to train - because the thing only has the 15 or so functions that our users should be using, and where appropriate they work the same way they do in other word processors. To be sure, this started out as an experiment - but it's an experiment that paid off. Our alternative options at the time (2001/2002'ish I think) were not good, and our tests with them didn't make happy users.
And, to be clear, I never set out to say this is the right solution for everyone - and likely less so now in 2007. And, of course, if your Word users are using lots of complicated functions, you'd be crazy to try to re-implement them all. I was countering the idea that an online word processor is infeasible in general.
Also, to be clear, I am not inexperienced with other alternatives. A few of our users need spreadsheets, so a couple years ago we looked into an OpenOffice based content management system. We got it working for the spreadsheets and got most of the application ties working, and as a test we tried to see whether the word processing users wanted to use it too. They didn't like it - too complicated, and if they wanted to use it at home they had to install stuff. And, for us, if we wanted to do customization, we had to delve deep into a fairly complicated project. It's still only used for a few spreadsheets, and the project was, on balance, a waste of time (which we're OK with - we may use it more later).
We also support another client that uses a forms based app with ties to Word (from around 1998). It works OK for the most part, but there's fairly often some problem and the breaks between apps make the UI fairly hokey. A month ago, they installed a Server 2003 update on a neglected server, untested, and everything died. Some "Word cannot open " error. Had to run a fix on every computer, and then fix some of the templates - lost a half day of work. Nothing major, but something that happens much less frequently for the online one (though, to be fair, Vista gave us some curveballs). I've spent a lot of time diggling with weird errors in Word templates, and Googling about odd problems.
In general, I get tired of the term "Not Invented Here". I hear it fairly often, especially when we get a new employee who's not used to actually writing software. I understand the idea that re-using tested software is often better than rolling your own, but I know a lot of developers who seem scared of developing anything. It's always "piece together 6 well tested, general purpose tools". We've had a few guys like that over the years, and their legacy usually lives on in the bad parts of the software, and the parts that don't work when we make a new app server because they require 12 packages installed to do simple crap (and where did we put the license key for this one? can we still download the old version of that one?).
If you have a manageably sized, specific need, quite often a homegrown solution will better meet your needs and will be easier to maintain for those needs going forward. Our company outpaces our industry fairly handily on technology, despite spending about the same. It's because we don't blindly write off options because they don't match some rule of thumb.
Our document editor is homegrown, and we host it internally. Privacy and security would certainly be bigger concerns if you were hosting with a third party, and I can't really speak to how it would be best to manage that.
The application isn't overly bandwidth intensive, and some of our users access it over cell-type connections. But really this hasn't impacted us too much - the nature of our business means that our production staff who travel will usually be dictating rather than typing themselves (and it's easy to upload the dictation files when you're back to some kind of good connection). Also, to be fair, many of our users (especially marketing) have other Word processors they use for documents not tied to production, like proposals or brochures or labels and what not. Our app is not a general purpose word processor: we had the luxury of designing it around a limited set of needs.
In terms of business rules, we've found it to be very convenient - though a proper content management system would do most of the same things. Naturally it's easy to control who can see what, who can edit what, what's available to what clients online, etc. We can also make certain elements of documents uneditable, or only editable via our own tools (and the relevant data captured back). For example: our users produce a lot of reports, and in the past they would tend to put tabled information in reports and nowhere else (meaning we couldn't analyze that data later). Now, they enter that data one time, in a structured way through a plugin in the word processor, and it's persisted in the database as well as being on the report. This is of course possible with a regular word processor as well, but I think some parts would be much more difficult to manage. When you're dealing with a small subset of word processing functionality, and a small/standard codebase for the UI, many of these things are trivial.
I imagine there are a lot better options out there now than when we built this years ago (and it quite possibly wouldn't be the right choice now) but it has worked out well for us.