Yes, I'm aware of the situation where "normal users" are demanding more and more without contributing back, and being a non-programmer myself I'm probably viewed as belonging to this group. The only "power" I have is the money I choose to spend, and that is a drop in the ocean... AMD doesn't care if I choose to buy AMD hardware exclusively because of your work, Bridgman. Volunteers are scratching their own itch, benefiting us all sure, but as the Kwin story shows even (in my eyes) hardcore developers are having a hard time with the graphics stack. How on earth should I who barely knows Python contribute to reach the full potential of modern GPUs? It seems that even a team of Catalyst developers can't do it.
I don't want to dismiss anyones work, but I must say I'm unimpressed by hardware specs that on paper is "20% faster than the current greatest", that doesn't mean anything in reality for us Linux users, using either closed or open drivers. I'd rather have a GPU that is 20% slower but works as advertised and flawlessly. In time open drivers can fulfill this I believe (hope), but now as a common, non-GPU-code-contributing end-user, great AMD hardware is not as attractive as it could be. In this position I don't care how AMD shuffles resources, as long as it can justify my investment.
The specs look great.... for Windows users. That's what the improvements are for. Heck, the Evergreen cards have been out for a year and from the most recent posts and other sources indicate open source drivers aren't an option for them either. The HD 5xxx cards and fglrx drivers aren't a good match either lacking features and complete with bugs. It doesn't matter how great the specs are for Linux users because ATI isn't dedicated to Linux support. They're not investing in it, period.
I actually wonder if that has something to do with the fact that Linux has developed so far. I mean, maybe the people with hacker mentality aren't finding a well-documented platform as fun to hack as some completely unknown frontier? *shrug*
I think that the number of hackers has stayed pretty much the same during the last 10 years, or at least hasn't increased by a lot.
At the same time, the number of regular users has skyrocketed. The fact that Linux has 10x more users today does not mean that there are 10x as many hackers in the community, as most hackers were using Linux already 10 years ago.
Meanwhile, the expectations have really grown. I remember when playing an MP3 was a bit of an adventure, nowadays it has to not only play everything Windows can play, it has to do it 20% faster, and 3 years earlier. Linux went from being a hacker and idealist haven to being just another OS, and people expect it to function exactly like Windows, including running Windows games.
Graphics drivers are probably the most difficult part of an operating system, along with most of the kernel stuff -- and it is also the part that changes fastest. Modern GPUs are at least as complex as modern CPUs, but have many more radical redesigns all the time. I'm afraid that the FOSS GPU driver solutions will always lag behind the proprietary offerings for these reasons.
But I can live with that, as long as we get full feature support eventually, and it performs well. 75% of the Windows blob is fine.
What it pretty much comes down to is that all of us got Linux for free. It's not like the pace of driver development is screwing you over. Nobody forced you to use Linux and then took away features after you did so. You always have the option to go plop down $200 on a Windows license and run that, after all.
I complain a lot about the state of things in Linux, but I don't tell people they have to do things the way I think is best because they owe me or anyone else. They don't. They should do some things differently if they want to succeed (where "success" is measured by the size of the Linux userbase vs the competition's userbase), but if people want to keep hacking away at a dead horse type of strategy, that's their right as the people doing all the work. I think they're silly and wrong and making a bad decision, but I still have no right to force them to do things my way.
You can bitch all you want about how you don't like some lacking parts of Linux, that's your right too. But in the end, your only options are: (a) pay money and switch to a proprietray OS, (b) jump in and help out with getting things done, or (c) wait an indeterminate amount of time for someone else to do it all. If you're particularly affluent, I suppose you also have the option of (d) fund a startup firm or existing consulting firm employing developers to hack on the parts of Linux you think need improvement under your direction.
Somewhere in the last decade the average users's view of the FOSS ideal has gone from "we can do it" to "why isn't someone else doing it ?". Initial indications suggest that the new model doesn't work so well.
Yeah unfortunately it kinda is like that, but there's another side to FOSS. Thanks to gnu/linux, xorg, directfb, when I was writing a lame hobby-os, I could write the drivers for radeons r2 to r4, and intels g965, all with acceleration which was extremely fun (I was always fascinated how it all works) and really educational. When I heard about your efforts to release the documentation etc and the 4850 came out I immediately bought it Unfortunately I didn't get to play with it since I started a different project before it all came out but if it weren't for that I'd probably be trying to help with the r6/7 drivers right now. Either way what I wanted to say is that even if the open drivers suck, they are an opportunity for people to learn which is in my view way more important, and for your efforts you have my gratitude, as learning how a kernel and drivers work without the graphics part would be much less interesting and harder for me. Btw I am using kms for my r430 and r770 and it works well enough, I wonder what this years results will be of the survey in terms of open vs closed for radeons, it will probably more closed because of r8
How on earth should I who barely knows Python contribute to reach the full potential of modern GPUs?
The same way everyone else did. Start by downloading the source code and building drivers from source. Read the source code, ask questions, try changing things, see what happens, repeat. One programming language is pretty much like another when you are writing low level driver code, just use the same structure as the existing code.
If you are not familiar with OpenGL, picking up a book or finding an online guide then writing some OpenGL programs would be a really good start.