- Support for DirectX 10, 10.1 and 11 in wine:
I think this is still very much in its infancy, but will become more and more needed as the last DirectX 9-supporting games are released
- Improvements to the mesa software renderer (llvmpipe or other):
There are proprietary software rendering implementations that can just leave mesa in the dust. It would be nice to have an opensource implementation comparable to those.
- Hardware video decoding using graphics shaders / OpenCL:
For those graphics cards which have no built-in hardware support, or that we can't get it working for one reason or other (nouveau, radeon), it would be nice to have an alternative which does not rely on the CPU. Bonus points if it supports 10-bit h264, because no hardware decoder that I know of supports it. Also it would be interesting to accelerate WebM/VP8: there has been some work towards this, but no results yet, I think.
- Better opensource Flash:
Many projects out there have something, but all have missing stuff, and aren't really ready to replace adobe's version in day-to-day use.
- Improve libreoffice:
Use less resources, de-uglification, better support for m$ document formats (especially on calc and impress)
- Blu-ray player:
A fully-usable player (with menus, etc) for decrypted blu-ray video discs.
- Advanced PDF viewer:
- As long as I'm dreaming here, something like wine, but for OSX applications. If we can get windows apps to run in linux, why not Mac OS X apps? Especially games, they use OpenGL anyway, and it's unix underneath so I'll just say the cliché "how hard can it be", fully knowing that this is very hard.
Off the top of my head, that's it :D
not sure how offtopic is but it might be awesome if you will develop a driver that cable connects a smartphone to act as a webcam accessible for various programs such as IM's etc. Should not be related strictly to a program that uses it (on PC) and definitely crossplatform on mobile side (iOS + Android...)
Good luck with the exams and so on,
There are numerous things wrong that can be fixed, so here's a short list:
- Politics among Open Source and Closed Source.
Seriously. When you get right down to it, you have extremists that want only closed source software, radicals who want only open source software, and you got everyone in the middle that just wants everything to work.
Yes, Alan Cox, I'm talking about you in the radical group. You, and both ends of the spectrum who bang on the tables "ONLY THIS NOTHING ELSE" will get no response out of me except for "SHUT UP YOU MORON, IT'S NOT WORKING!"
Why do I say that? I just want my Nvidia Optimus-running laptop to just work, and there's frameworks that will make it just work, but the radicals all the way down in the Linux kernel are repeatedly saying "NO!" even though there's too many good reasons to say yes. It makes me want to smack them with a rolled-up newspaper and say "BAD DOG NO COOKIE!"
(However, I would love Nvidia if they would start releasing specs like AMD does for way-old adapters like the pre-100 series, aka anything 9xxx and below, so that it can be picked up by the open source driver and made a lot better).
It's similar to how exFAT is being handled. Microsoft is doling out licenses, but only for folks who paid. It even has patents on FAT, but they're unenforcable because it's EVERYWHERE. exFAT can't be picked up by Linux due to threats of litigation, so it's read-only... if it's there in the first place. So we have to use FAT32... which i just knocked up an edge case as I was trying to move five, 9-gig MPG files off one ext4 partition onto a FAT32. "Nope! Over 2 gig, can't be done!" Thanks a lot, Balmer, you ape!
- Politics among desktop environments, or the Option Removal Syndrome
This goes back to Gnome 1.x switching to 2.x... and switching to 3.x as well. It also goes back to KDE 3.x switching to KDE 4.x, and is starting to infect MacOS X and Windows as well. It's something I call Option Removal Syndrome.
Symptoms of Option Removal Syndrome include cutting out of functionality, ignorance of user calls for restoration, lack of clarity over what a user really wants and needs, constant user churn, bloat in remaining features, and astonishment over other desktop environments that do things better.
KDE is recovering from acute Option Removal Syndrome as it progresses through the 4.x series and restores functionality.
Gnome, however, is terminal; it has contracted systemetic Option Removal Syndrome, giving rise to LXDE and XFDE. Compare all the features and functionality of Gnome 1.x with 2.x and then with 3.x, and you'll see a graph with the line going down over time. The Gnome team really needs a smack over the head as well.
If you really want to please everyone, hide options that you think aren't going to be used; give users the option to enable those "advanced" features, and give them the option of sending feedback about what they use. Engage the users, don't burn bridges.
- Make the tools small, then scale up
Seriously. I have an 2nd Gen Apple TV, a iMac, two Linux/Win7 dual-boot systems, an iPhone 4, and an iPad 2. I can send video to the Apple TV from the MacOS X and iOS devices; aka Airplay. There's stand-alone tools to make them receive Airplay as well. Why can't I do the same in Linux?!?
"Uh, why can't you run Totem..." BECAUSE I WANT TO SEND THEM TO THE APPLE TV IN ONE INSTANCE AND CAPTURE FROM ANOTHER DEVICE IN ANOTHER! Can I do that without having to install ANOTHER honking media player? I already got Mplayer/Mencoder and FFMPEG and I bet I have VLC already in here too...
Yes, part of this is Apple not releasing the specs to various things like Steve Jobs said they would (and it's on video). But then stuff gets broken and spec'ed out by third parties (thank you Erica Sadun!). Where's the Linux tools then?!? Don't make me have to write it myself!
IMHO,the biggest problem of desktop linux is: lack of management.
In linux kernel development , there is Linus Torvalds who makes decisions for patches being adopted. what about desktop linux? Is there any formal management organization to lead desktop linux's evolutionary? freedesktop.org or LSB(Linux Standard Base)?No,both of them are inefficient compared with JCP to java or linux kernel team to linux kernel. Consequently, None of linux distros have consistent user experience by now . Also Fragmentation,too many choice but none of the choice is good enough.As a platform it is lack of enough attraction to the third party developers and even companies to develop apps for it. Why? Lack of well-organized and updated documentations and tookits, stable apis and relatively unified packages format for them to easily and quickly start developing apps on this platform. Because of lacking apps, users gradually lost interest in linux. We need satisfying and retaining users and developers. In my opinion,all of these problems are due to lack of management. We really really need work together to do only one big thing : move desktop linux forward.
In addition, Linux graphics sucks compared with windows and osx. Yep, wayland is our hope and wish it could come earlier.
FMODex and with support for playing MIDI files.
maybe create a list and then a poll ?
Good DJ mixing software. Mixxx came close but suffers from instability and lacks the polish and user-friendliness of commercial windows counterpart. I found the autoDJ feature to be quite poorly implemented.
As a programmer (but not kernel programmer btw), I think Linux distributions needs some things to get broader user and corporate (development) audience. At the moment I can think of:
1. An abstract layer to make drivers kernel (and prefered X too) independent.
Currently each time a new kernel is released, all the drivers get broken and must be recompiled. Do you need to recompile your Windows driver (or reinstall a new one) after an installation of a Service Pack? NO... Companies (specially video card manufactures) have too much work keeping on every kernel release every 3-4 months.
2. Update OpenGL/OpenCL feature parity with Windows.
Some of the problems porting games to Linux is that they do not have the same feature set. Again if developers don't have to spent so much time in #1, or rewriting API's every year or less, maybe the feature parity will be closer to Windows.
Believe me, this is an utter pain. Was making a PHP test page to get some OS info. Windows, just use WMI object. FreeBSD? easy, their release numbering is so clear, that standard php_uname instructions work without an issue. Linux???? well, how do I begin... AFAIK there is no /proc entry for OS/Distribution information, /etc/lsb-release is not available by default install in a LOT of Linux distributions (yes Debian, you are one), os-release is even a newer one thus is missing in even more distributions, $insertname-release is also not available in all of them and the name changes according to the distribution (duhh how can I find it if I'm looking for the distribution name in the first place... brilliant idea). And debian_version which guess what, is specific to Debian derivatives. What's left... getting the uname -a output, filtering by hand, and have some luck.
The main reason (BS...excuse) Blizzard gave every time that a Linux client was developed, but never released is that is difficult to support the many variants of distributions out there. Hey, if is so difficult to even check which distribution is used, hey, then checking for needed libs and binaries will be equally painful.