If you truly understand the OpenGL programmable pipeline you understand graphics programming in general and should have to spend little time picking up a new API. Just like how you should be able to learn a new programming language with ease if you have enough experience.
Low-level access and the "wrapper" graphics API
In terms of rendering, there was some interesting news.
Norden pointed out one of the principal weaknesses of DirectX 11 and OpenGL - they need to service a vast array of different hardware. The advantage of PlayStation 4 is that it's a fixed hardware platform, meaning that the specifics of the tech can be addressed directly. (It's worth pointing out at this point that the next-gen Xbox has hardware-specific extensions on top of the standard DX11 API.)
"We can significantly enhance performance by bypassing a lot of the artificial DirectX limitations and bottlenecks that are imposed so DirectX can work across a wide range of hardware," he revealed.
The development environment is designed to be flexible enough to get code up and running quickly, but offering the option for the more adventurous developers to get more out of the platform. To that end, PlayStation 4 has two rendering APIs.
"One of them is the absolute low-level API, you're talking directly to the hardware. It's used to draw the static RAM buffers and feed them directly to the GPU," Norden shared. "It's much, much lower level than you're used to with DirectX or OpenGL but it's not quite at the driver level. It's very similar if you've programmed PS3 or PS Vita, very similar to those graphics libraries."
But on top of that Sony is also providing what it terms a "wrapper API" that more closely resembles the standard PC rendering APIs.
"The key is that it doesn't sacrifice the efficiency of the low-level API. It's actually a wrapper on top of the low-level API that does a lot of the mundane tasks that you don't want to have to do over and over."
The cool thing about the wrapper API is that while its task is to simplify development, Sony actually provides the source code for it so if there's anything that developers don't get on with, they can adapt it themselves to better suit their project.
>>If you truly understand the OpenGL programmable pipeline you understand graphics programming in general and should have to spend little time picking up a new API. Just like how you should be able to learn a new programming language with ease if you have enough experience.
This is very true. However, I rather not spend anytime on this if I don't have to. What you are underestimating though are the quirkiness of the new API that could waste you hours and hours. i.e. Some graphics rendering may not look quite right because some unexpected limitations, etc. etc. Finding work-arounds for all those tiny quirks can be time consuming Time that you'd rather spend on the product itself.
There is a lot of stroke inducing legacy PHP code out there in the wild. A lot of people have had a really bad experience working on projects that used PHP. The ease of entry allowed flocks of inexperienced software developers to grow PHP projects like mushrooms throughout the world.
I think it's largely bad rep due to the ease of misuse and dodgy frameworks.