"Nouveau is a community project that is working on producing open-source 3D display drivers for NVIDIA graphics cards. Nouveau is not affiliated with Nvidia Corp and is an X.Org project. While this project is still far from being completed, for this holiday special we are sharing some of our first thoughts on this project from our experience thus far. We would like to make it very clear, however, that the Nouveau driver is no where near completed and still has a great deal of work ahead for the 3D component. This article today will also hopefully shed some light on the advancements of this project so far."

Obviously, since NVidia isn't going to give away its IP in the form of source code, it makes sense for developers to try to work around the problem. However, I think it's reasonable to remind everyone that getting the current crop of cards working may be useful now, but NVidia isn't exactly going to stand still, technology-wise.

The technology will continually evolve and, since NVidia is actively writing drivers for Windows, it stands to reason that reverse-engineered drivers on Linux will lag newer drivers on Windows by a considerable margin. Debugging video chips isn't easy. It takes time. And resources.

I'm not pointing this out in order to discourage the creation of NVidia drivers. Rather, I think it's a BETTER IDEA to encourage NVidia to distribute a binary driver for Linux. Having the source code seems, to me, more of an ideological limitation than a practical one. The kind of limitation that really doesn't discourage driver innovation and availability on Windows.

How do you encourage NVidia to write Linux drivers? Simple: Make it worth their while from a financial standpoint. I'm suggesting that you pay them to do so. I'm quite sure that the mere suggestion of financial incentives will provoke an outcry from the more ideologically-driven folks who will throw around words like "purity" and "independence" and "philosophy". But you can't fully expect a profit-motivated organization to put philanthropy ahead of the bottom line, and you're never going to keep up with the forward pace of innovation, if you're constantly reverse-engineering.

So compromise. Set up a lab which works with all major video card manufacturers on behalf of Linux. Fund the effort. Raise funds. Hold bake sales. Whatever. Just do it. You'll be much happier, in the long run. Because once you get NVidia and others to release binary Linux drivers, it just becomes that much easier to get them to write subsequent versions.

The technology will continually evolve and, since NVidia is actively writing drivers for Windows, it stands to reason that reverse-engineered drivers on Linux will lag newer drivers on Windows by a considerable margin. Debugging video chips isn't easy. It takes time. And resources.

It will evolve for a while longer, but not all that much. Eventually the evolution will slow to a point to where it is easy to track with open source software; even if nVidia doesn't want to participate in that effort. As an example, look how easy it is to create open source drivers for new IDE or SATA chipsets. The level of innovation in that area has just settled down and the differences between implementations are minor and easily handled by open source software. The same thing _will_ happen in the 3d hardware area as well. Just need some patience.

So compromise. Set up a lab which works with all major video card manufacturers on behalf of Linux. Fund the effort. Raise funds. Hold bake sales. Whatever. Just do it. You'll be much happier, in the long run. Because once you get NVidia and others to release binary Linux drivers, it just becomes that much easier to get them to write subsequent versions.

Of course people who don't care about free software are able follow that path if they choose.

For people who understand and desire the long term benefits of removing themselves from the mercy (and continued existence) of software support from a hardware vendor like nVidia, it makes a lot of sense to support the creation of open source drivers.

After all, look at just how much open source software offers today. The "pragmatists" would have quit long ago telling everyone to "compromise" and just use binary windows because it was crazy to duplicate all that functionality in free software. Thankfully, nobody listened to them back then either. ;o)

It will evolve for a while longer, but not all that much. Eventually the evolution will slow to a point to where it is easy to track with open source software

I strongly disagree. Specialized processors (such as video) and their specialized memory subsystems have outpaced standard CPUs by a wide margin -- to the point that companies such as Intel are feeling left out in the cold (see recent OsNews article about Intel trying to buy talent for its own video processor campaign). If anything, technology development is going to accelerate, not slow down in the years ahead. You simply can't compare the pace of innovation in video cards versus IDE/SATA chipsets. It's night and day.

For people who understand and desire the long term benefits of removing themselves from the mercy (and continued existence) of software support from a hardware vendor like nVidia, it makes a lot of sense to support the creation of open source drivers.

Face it: You're inevitably dependent on nVidia -- regardless of which direction you go -- because you won't get software to reverse-engineer unless they prosper. So you might as well admit that you're dependent and work with them rather than try to keep up with copying their technology. Plus, you get a hand in telling nVidia and others what YOU think is important, rather than having Microsoft set the agenda.

After all, look at just how much open source software offers today. The "pragmatists" would have quit long ago telling everyone to "compromise" and just use binary windows because it was crazy to duplicate all that functionality in free software. Thankfully, nobody listened to them back then either.

Apples and oranges. It wasn't necessary to reverse-engineer anything to produce Linux.

OpenSource drivers for hardware components that lack well documentated standardizations are crucial for alternative OSes, and that for very pragmatic, down-to-earth reasons (not that "purity" and "philosphy" are bad things, quite the contrary).

- Binary drivers for NVIDIA graphic cards are currently only available for x86 and x86_64 platforms. PPC (and in the future) Cell processors may not have a large enough total install base for NVIDIA to consider them important enough for support, but with an OSS driver at least partial 3d support is possible.

- Other alternative Operating systems can benefit either directly (if the license is compatible and porting the driver is accomplishable) or indirectly (by reading/learning/reimplementing, which is even more impoartant for fringe non-open source OSes) from this work. Given, that reinvention of the wheel is a common criticism of FOSS, this is a very important point.

- Most users (desktop, gamers are a different target group) will consider a significant performance penalty against the binary drivers acceptable, as long as current desktop enhancements (compiz/beryl et al) work reliable and competative. Since many users will expect this effects from OSes in the next years, FOSS drivers will allow the makers of distributions to at least provide a better out-of-the-box experience without the legal grey zones, that surround binary only modules (in the case of kernels covered by the GPL). This is esp. important for Live-CD's/DVDs/etc. based systems, since linking against the kernel currently has to happen essentially every time the system get's booted (although mechanisms like storing the linked module on the hard disk / sperate medium by the user is possible)

- One thing, that is imho too often overlooked in the context of the binary vs. open source kernel driver debate is the possibility to learn from open source projects. Open source drivers for current 3d hardware can be great learning grounds for compuatational sciences students or engineering students, which is something that at least I consider very important.

- Finally, as long as Linux et al have a market share smaller than 10 - 15% and the market for 3d graphic cards is left to essentially three large players, I consider open source drivers a necessarity, since binary-only support (or support for older kernels /architectures, etc.) can always be dropped because of economic pressure or changed marketing politics on behalf of the vendor.