Sony Makes It Hard To Develop For the PS3 On Purpose
adeelarshad82 writes "CNet reports on a bizarre comment from Sony's Computer Entertainment CEO in response to complaints from developers on how hard it is to develop games for the Playstation 3. 'We don't provide the "easy to program for" console that (developers) want, because "easy to program for" means that anybody will be able to take advantage of pretty much what the hardware can do, so then the question is, what do you do for the rest of the nine-and-a-half years?' Given that games heavily drive console sales, and the fact that the PS3 is already 8 million units behind the Xbox 360, I think making a developer's job harder is the last thing Sony needs."
Ballmer was absolutely correct in emphasizing the one thing that really matters for any platform.
Developers, Developers, Developers
There are a number of reasons to make a console hard to program for, but they all rely on a huge install base that the PS3 doesn't have. The article quotes a developer saying that if you are going to develop for multiple platforms, it is best to start with the PS3, because it will be easy to port to other systems than to port to the PS3. If there were 20 million PS3's in homes, this would ensure that the 360 and the Wii would be seeing lots of ports instead of original games. Another reason is that investment in programming knowledge and tools is very expensive, and once a studio has the expertise, they are likely to stick with the platform in order to maximize their investment. Sony was counting on a success similar to the PS2, were developers would have to program for the PS3 because that's where the users would be. Without it, the 'benefits' of a hard-to-program console become liabilities.
Don't forget that Friday is Hawaiian shirt day.
I don't know if Sony intentionally obfuscated their API as the summary claims, but rather just didn't care about ease of development. Sounds to me like they're saying that developing for a cell architecture is necessarily hard, and they didn't want to compromise on the architecture because (as Sony has previously stated) the PS3 is supposed to last ten years instead of the typical 4-5. I guess the cell is supposed to be more longevous?
Of course, the end result, that developers are preferring the Xbox and Wii, is the same whether malice or just misguided...
I'm going to hope that he just misspoke and what he was really trying to say is "Because our hardware is so advanced, it can't be made easy to develop for." I would hope he's really not so dumb as to think that deliberately making it hard to program for is a good thing.
However I fear his actual words have some truth to them. Not that Sony tried to make it hard on purpose, but that it is in fact hard, and won't be getting easier for two reasons: Sony doesn't really have an interest in making it easier. I think there's two reasons for this:
1) The Cell processor is, well, odd. What I mean by that is that it doesn't work like processors in the past. So tools that exist now aren't going to be good at dealing with it, nor is the knowledge that programmers have. It is different and that makes it hard.
2) Sony doesn't have good dev tools, and isn't good at making them. Because of the difference in the processor, making it easy would require some rocking dev tools form Sony. However they don't have those, and don't seem to have the people needed to make them.
So the combination of those gives you a situation where game programmers are being asked to figure shit out, and it seems that Sony thinks that's ok. They figure you ought to.
Well that's a program, especially when MS is your competition. Say what you like about them, but they've got really slick dev tools. Visual Studio is a really slick development environment, and that's what you get to use for Xbox 360 development. What's more, it is something that many programmers are quite familiar with, since it is often what's used to write PC games. Add to that the fact that the 360's hardware is far more like a PC than the PS3 and you've got a platform that is much easier to develop for.
Personally I can't figure out why the hell Sony put the Cell in the PS3. Seems like a really retarded move. When the PS3 came out, the Cell was a brand new architecture. Hell the first thing I ever saw on the market with a Cell was a PS3 (you can now get other things like processing cards for PCs). Ok well a mass market consumer electronics device is NOT where I'd choose to test a new architecture. Start that shit out in research computer (like the aforementioned cards) and then maybe servers and super computers and such. Give it some years on the market for people to get used to it, and for the kinks to be worked out, then look at tossing it in mass market devices.
So who knows, maybe they are right and maybe there is tons of untapped potential. However it also might not matter. If your console is hard to program for, developers may just elect to give it a miss, and thus so may consumers. That does seem to be what is happening. Nintendo and MS are outselling Sony by a good margin. Just because the PS3 might be more powerful (and who knows if that's true or not) doesn't matter if the end result is that it is hard to make games for.
Heck, ask Sega about that. That was one of the things that really hosed the Saturn. It was actually a fairly powerful console. However it was rather hard to develop for. It didn't work like most other consoles and PCs (for example it used quadrilaterals instead of triangles as fundamental surfaces) and it had poor dev tools. As a result many games didn't look as good on it as on other consoles, even though they could have in theory, and other developers simply gave it a miss.
The PS3 seems to be in a somewhat similar situation, and the remarks from Sony do not bode well for that changing.
I don't know. The number of times people have insisted that Visual Basic was bad because it was easy and therefore anyone could do it (meaning that incompetents jump in and do a poor job) on this board alone astounds me.
The reality is VB was bad because you could make a real mess of things even if you were a good programmer, and people abused it trying to force it to do things that really required something closer to the machine. It didn't help that it was proprietary and windows only either. The one thing that it and other Rapid Application Development languages like RAD did was get out of the programmers way and make it really easy to do things so that the coder could focus on the problem at hand not puzzle through dozens of APIs and scratch his (or her) head wondering how to get something simple done.
With a simple and easy API a moron will sure make a mess of things, but a GOOD coder will be able to stop focusing on the code grind and rise above to make programming magic.
I develop with J2EE and I absolutely miss and pine for the days when I could prototype a screen in under half an hour. What an over-engineered piece of turd with an extra dollop of XML hell and a heaped serve of Design Pattern madness all those frameworks are.
These posts express my own personal views, not those of my employer
Multi-core and multi-cpu programming is the future. I include GPUs in this. And programming these using existing tools is sub optimal.
But it's a catch 22. Few people are going to get their fingers wet in GPU programming without bridge tools like CUDA and fortran wrappers that make it less painful to change over hardcore math libraries. Yet at the same time the resulting code is sub optimal. for example the zeroth order in tools in CUDA sweep the matrix multiply back from the GPU to the CPU memory-- which is not what you want if you are dooing two consecutive matrix multiples. But it gets you started. (I note that more advanced, less library bound, cuda programming get's around this, but only a fool would invest the time learn it before trying the simple way).
Cell programming is another knotch up in difficulty. So sub-optimal convestion approaches may not work well. You really need to program for the CELL. No one really is perfectly sure what the best way to exploit these things is.
I suspect SONY wants people to commit to figuring the CELL out rather than giving them tools to simply do ports. This is what he meant I think by "increasing quality".
I also suspect this means that games produced form the CELL wont back port easily since it will be so architecture specific. Which is also good for sony.
In the meantime if they sell half as many units as xbox 360, yet 100% of the game profits rather than say 10% of the came profits go to sony and committed exclusive cell programmers, SONY is coming out ahead.
Some drink at the fountain of knowledge. Others just gargle.
I work for a game developer that makes multi-platform games and our programmers hate coding for the PS3. It always makes me chuckle seeing fanboys shouting console x can do this and console y can't do that - the irony being most multi platform games are essentially clones of each other, so being unable to do something on one console means the other doesn't get it even if it could.
This is another great example of Sony thinking they are better than anyone else because they dominated the last 2 generations of consoles. In reality the PS3 is very similar to the 360 and developers essentialy see them as two sides of the same coin. Nice to see they also haven't learned the lesson of don't let you're ceo's / public figures behave like egotistical dicks yet.
lol, it's funny because it's true.
Anyway, this CEOs claim is obviously bullshit or a translation made by the interviewer/whatever. No-one would make it hard to develop for their system on purpose, but it's a fact that people get the hang of it and as a result of that you may see more advanced titles further into the systems life.
He may have meant that they didn't wanted to cripple it for the sake of making it easier to code for since it would be around for a long time and people would get the hang of it sooner or later anyway.
It puts you on the front line of seeing what decisions people are making and why. It's actually a very important perspective.
I am a developer for a company that sells products and provides in-house phone support. If you asked someone about my product and they piped up and then said at the end "I support this product", you might be tempted to say "Oh, you aren't a developer so you don't know what you're talking about." But the support dude has a better picture of some things than I do, because he's actually there, talking to customers directly, and part of my job is making sure I get that information from him. Because there's just no replacement for that sort of thing; the CEO is even further from customers than I am, my manager tries to keep on top of such things but still doesn't talk directly to customers as much as our support crew.
Of course, I have a better picture than the support dude does of some other things, too, but I'd be a moron if I discounted the support perspective because they're "below" me, or for some other dumb reason.
Running a game store may not qualify you to discuss video game company strategy, and actually Gord tries to sometimes IIRC and at that point I believe he oversteps a bit. But it's the best qualification there is for having a firm grasp on what people are looking for and how people buy, and you ignore that at your own peril... well, "your own peril" if you're a video game company, anyhow, you're probably not in any peril.
You can get this by being an employee too, but A: he did it for a very long time and B: being the business owner and being very, very directly affected by the issues will have a stronger focus on the issues than "somebody who works at Gamestop over Christmas" would.
I was playing Shadowrun the other day, and I said "mana" when referring to... well, "mana." Someone on my team said that Shadowrun doesn't use the term "mana" it uses "MP" (or something similar.) We got into this whole argument:
* You knew what I meant so why correct me?
* Every game uses "MP" or "Magic" and not the word "Mana" so you should have known that was the wrong term
* Uh, the most popular game on Earth, World of Warcraft, uses the term "Mana" so I think people are going to know what the hell I mean
Then he hit me with the ultimate:
* You should listen to me, man, I work at Gamestop!
This made about half the people on the team just crack up. I had to explain, as gently as possible, that I've never seen a Gamestop employee who had two brain cells to rub together. The thought that he figured "worked at Gamestop" was impressive in some way was simply hilarious.
Anyway, when the competition hits you with "I work at Gamestop!" I generally consider myself winner of the debate.
(BTW, If you care, the "correct" term in Shadowrun is "essence." But say "mana" in case you get that guy on your team, you can piss him off.)
Comment of the year
In regards to the mis-translation idea, Kaz Hirai speaks perfect English (Ridge Racer!). In fact, I've only ever seen him speak English, never Japanese.
"Our opponent is an alien starship packed with atomic bombs. We have a protractor."
This seems to be a particularly idiotic attempt to "spin" what was actually said. There is nothing at all in the statement about Sony intentionally introducing programming obstacles.
It is quite obvious that Hirai was explaining why Sony chose a powerful, if more difficult to program for, multiprocessor architecture over a simpler, less powerful architecture. Sony wanted a platform that would have enough power to sustain itself for 10 years. So they did not consider it to be a major detriment that developers would not immediately be able to unlock to full power of the architecture, because much of that power was intended to allow the console "room to grow."
Well, he didn't really succeed at it. I think he folded up shop after a couple of years.
Also, I don't understand your attitude. For the most part, owning your own business is harder, less rewarding, and less productive than working for an established company. Unless you are an exceptional businessman, starting a company is difficult, risky, and a ton of work. If you have some new technology you are commercializing, at least there is a chance that someone will buy the company down the road. Otherwise, you are pretty much stuck fighting for a scrap of market share in what is probably an oversaturated market.
As far as freedom goes, you are much better off working for somebody. If you run a company, you will pretty much be putting in 16-hour days 7 days a week with no vacation time, ever. Sure, you could go on vacation, if you don't mind the company collapsing in the meantime.
Anyway, I would suggest you actually talk to some business owners before you decide that it's something you like. Chances are, you won't like it.