Innovation in Open Source Software?
ndogg asks: "Many have said that there is a lack of innovation in OSS software, and tend to talk about the big projects, like Mozilla and the Linux kernel. However, I would contend that innovation is quite abound in OSS, but that the problem is the spotlight is rarely shown upon those projects that are truly innovative. For example, I would contend that Data Display Debugger (DDD) and The Boost C++ Libraries are quite unique and innovative projects. What OSS projects do you feel are innovative, but underapreciated?"
Aka Rendezvous. It is an Apple backed technology, but it is open source; albeit not the classic example of open source springing up from the commons, but it still qualifies.
GPL Deconstructed
Firefox browser by itself is pretty nice, but the barebones edition does not really offer much added value compared to IE or Opera. The extensions, however, are amazing, I sometimes browse their extensions catalog just to see what I am missing, or make sure I don't miss articles like this to see what the other folks are using.
How many similar programs exist on Windows or Mac? It updates installed packages and allows new packages to be installed, whilst resolving dependencies...
http://heidelberg.freshrpms.net/rpm.html?id=919
opengl!, seriously its a huge project and its to bad that it lost momentum
A C++ Library? If this can be described as an innovation, then the term is far more debased than ever I imagined!
"Flyin' in just a sweet place,
Never been known to fail..."
While there are a few notable exceptions where existing trade-secret software packages are released into Open Source, such as AOLserver, Netscape, and Solaris, much effort is expended into producing unencumbered versions of existing proprietry software projects. The many Open Source projects such as glibc, HURD, GNOME, OpenSSL are duplicates of existing technologies. I do not see how these projects are innovative except for being in themselves unencumbered versions of existing, known-good, encumbered products. In the linguistics field there is a move to produce a duplicate of an existing, proprietary pronunciation lexicon; there is nothing better than the "free" version except that it's "free". In fact, the "free" version is very unlikely to become a viable alternative. Imagine if that effort could be used elsewhere how much further along we might be?
At the same time, the important technologies that are in Solaris, AOLserver, or Netscape are truly innovative. The improvements that go into these projects are even more so.
Unfortunately too much effort is spent to produce unencumbered clones of known-good projects.
Kriston
There wouldn't even be much OSS (at least collaborative) without svn... OK, there is CVS but if you've never heard about svn you probably should check it out!
'Nuff said
\/\/oobie
The whole idea is a good one, and there's no company nickel-and-diming it to death.
Got time? Spend some of it coding or testing
My laptop hard drive crashed (tinkling noise and all) about two years ago and I haven't bothered to replace it thanks to the wonderful invention that is Knoppix. That still amazes me.
This space intentionally left blank.
it would seem that blogging was an open-source idea. most popular blogging software is OSS, including livejournal (they've got some other crazy memory-caching stuff they wrote too. neat stuff)
:-)
RSS/Atom though not really open-source was born in the OSS community.
musicbrainz is a cool project to match songs to data based upon acoustic modeling -- not well-known but definitely innovative
reiserFS is OSS, and though I'm not the authority on the subject, it's supposedly got some really neat stuff goin on for it. perhaps a more knowledgable person could comment on this?
but they've definitely got a point. there's a profound lack of innovation going on. seems like everyone's in a rush to copy apple/microsoft. GNUStep was a good effort that might have been innovative had apple decided not to ressurect nextSTEP as OS X. I'll take a rimshot and say that 95% of useful software innovations are coming from apple at the moment. Rendevous comes to mind, as do Quartz and Aqua.
BeOS also had a lot of innovation. I still regard BeOS's failure as a major setback for the software industry. It was so wildly ahead of its time that modern operating systems are still struggling to catch up. If only it could print
-- If you try to fail and succeed, which have you done? - Uli's moose
DDD's GUI is an archaic user interface nightmare. Watch programmers using DDD some time; they spend minutes clicking and dragging rectangles instead of getting real work done. You'd think they were using Inkscape. Why can't DDD just present the in-scope variables in a nice tree view?
What's worse, the data displays don't persist! They're supposed to, but it's been buggy for years. Once you finally get DDD to display your linked list in a semi-readable format (no mean feat; it involves a lot of scrolling), you hit a breakpoint and everything goes haywire. Some items disappear, some get duplicated, some get linked 3 or 4 times, and everything gets moved around. And, over a year later, it still doesn't work well with GDB 6.
Put a bullet in it. The only way to rescue DDD is a ground-up rewrite. The Data Display capability looked groovy, but it turns out that it's just not very useful in the real world. There's a reason no other debuggers have chosen to implement this feature: it seems trick, but it tends to get in the way.
I find that Insight is the best debugger going right now. I'm hoping for good things from the Mono debugger but I haven't manged to run it successfully on C code.
There used to be a site for exactly this sort of thing called sweetcode, but the wankers have stopped updating...
Still, even if the stuff is over a year old, it's still interesting...
[o]_O
TeX -- Knuth basically invented desktop publishing (including scalable fonts) decades before Adobe made it commercial.
Find free books.
How is this duplication of effort different from any other competing products? Proprietary competitors are exerting "too much effort" producing *encumbered* clones of encumbered products. It would seem that Open Source makes a bit more sense, as once effort is placed in an unencumbered product the product exists and can be built upon, extended or borrowed from. Is the production of a bunch of products that will compete, fail and then take any innovation with them to their grave *better* than the open collaboration that Open Source allows?
Under the argument you propose, Linux was a pointless exercise because it produced a "free" work-alike to an "existing, known-good, encumbered product". Meanwhile, do you think that if the "effort could be used elsewhere" it would have been used to produce something useful, like say another failed Word knock-off? I don't quite see how proprietary dead ends are better than open source clones, which at least have the virtue of being immortal. (I am doubious of the idea that "more effort" equals "more innovation, as you can see).
No, I don't buy the "open source for everything" mantra that is spouted here. Each development method has its advantages. I doubt that Open Source will be invading the vertical markets any time soon as the user and developer base is too small for the advantages of Open Source to be felt. But when you are talking about things that have become "commodity" such as OS, database, office suites, etc then Open Source makes sense... and that's why they aren't very innovative. Open Source is the ultimate expression of commodity good.
The extreme alternative is for all products to be commercial forever, meaning that large companies continue to cash in on less and less innovative products. Office 2003 had exactly one product than made the upgrade worthwhile to me: Outlook. (I.E. a version without the 2GB file size limit). Products like Open Office keep Microsoft honest by forcing them to try to innovate, but to be honest, how much farther can the basic office suite be pushed? If it turns out the answer is "not much farther in core functionality" then by all means allow the ultimate expression of commodity good be created in that market and start to succeed. If the answer is "all over the place" then I guess we will see just how far office suites can be pushed. Everyone is a winner, either outcome. Discounting the "innovation pressure" than Open Source is putting on the commercial vendors I think understates the value of the ultimate commodity good. No, the products are not usually massively innovative, but they force the commercial vedors to be so or perish.
Sig under construction since 1998.
It seems innovative to me.
I would make the point that innovative does not equal successful. In today's winner takes all world, the term innovative often seems to be restricted to successful innovations. Unsuccessful innovations are valuable though, as they rule out things which don't work.
XDelta -- compressed binary diffs
Stateless Linux -- RedHat's new method of keeping systems up-to-date and tamper-resistant
"I assumed blithely that there were no elves out there in the darkness"
Much of the Internet runs on software that was open source in some way early on -- such as bind, sendmail, perl, the original web browser (Mosaic), and so on. How many of the "backbone of the Internet" common RFC's have been implemented in open source from the get go?
Don't forget code from DECUS and other such collaborative projects.
Many of the open source projects that people are most familiar with (because it's software they interact with in an obvious way) may seem like a "copy of an existing closed source project," but under the hood there is a lot of innovate software that quietly runs things. Also don't forget that much of what open source is said to copy is software concepts that started out open before the commercial world threw money at it (think, Internet Explorer).
Keep in mind that the amount of software the average user encounters in an obvious way is not huge. It's things like the windowing system and an office suite and a browser, plus some other apps.
When open source or academics or other groups come up with something new and innovative, the commercial companies very often copy it themselves. People who come along later and don't know the history might look at later open source projects and say that they are just implementing what commercial companies have implemented.
How about:
FFDSHOW - a top-notch xvid decoder, but more importantly also real-time high-quality video "manipulator" including scaling, transformations, noise removal, subtitling, color correction, macro-deblocking, etc - the list is huge. Play your DVDs through FFDSHOW with the right settings and the good ones start to look almost like HDTV. I don't know of any one proprietary product, or even group of products, that comes close to this level of functionality.
dScaler a very high-quality video de-interlacer for both live and batch processing
DRC - digital room correction and BurteFIR an audio convolver - together they are able to turn your $100 cheap-ass stereo system into something comparable to a $5K-$10K setup. (Ok, there is expensive hardware out there to do something similar, but no software, proprietary or otherwise)
When information is power, privacy is freedom.
I believe that there is great value in having unencumbered versions of basic software. The core functionality of word processors, spreadsheets, databases, and email clients have not changed in many years. Without the feature bloat that vendors of commercial versions of the above have included to justify maintaining the prices of their products, the cost of such software would have been driven to zero quite a while ago. This would have saved consumers, governments, and businesses billions of dollars.
At the same time, MS products still have value because they fill niches that are created by software vendors in other markets. For example, many people in the business world use Excel extensively because the reporting functionality of ERP programs is so lousy. Having Excel allows me to manipulate data dumped out of an ERP to generate analyses and reports that I need. Otherwise I would have to send requests to the IT department to have reports written and I'd have to wait weeks or months to get them.
"Lack of technical competence coupled with the arrogance of power, as usual, leads to no good end."
It seems to me like innovative and experimental software is very commonplace in OSS. Unfortunately, a lot of it doesn't get noticed as it is never rolled into a "usable" product. Tempest, a radio broadcaster using CRT, is a good example.
Another obvious place where OSS seems to innovate is in low level networking programs. Ettercap is absolutely brilliant, for instance, and Ethereal is exceedingly useful as well. Perhaps these were created in part because they were necessary to write compatible higher level software to interoperate with other systems. Also, their internationally developed and non-profit nature might make their authors more likely to tread into "legally questionable" territory than a commercial venture would dare.
Despite the relative lack quality Linux-based music and audio software, there are definitely some innovative tools in this area as well, such as Csound, SuperCollider, and TaoSynth, which provide very interesting programmatic sound modeling possibilities. These programs wouldn't be generally useful to musicians, which is perhaps why they haven't been developed as closed-source commercial products, but for the somewhat rare musician-hackers out there, they're very interesting indeed.
There's plenty of innovation in open source. The only thing is, most of it is so niche that it's hard to hear of it.
Not that there is any shame in making the most of other people's good ideas:
One of the most direct advantages Free Software has is that innovations from multiple sources are contributed to the one codebase, so that the resulting software has the best of everything.
reiser4, for metadata and atomicity in the fs, and the file-as-a-directory concept. True, it's backed by a company (namesys), but as I understand it, very few people actually work on it and the employees of that company don't make much of a living, so there's little greed involved.
freenet, for being the first attempt at a truly anit-censorship, anti-monitoring network.
And, in a more practical sense, most "new" features of MS products have been in open source for years before we even hear of the possibility of an MS version, and many of them existed before the first opensource version still in common use.
In no particular order, we have window grouping in XP, globally themable/skinnable UI, tabbed browsing, virtual desktops/workspaces, tab-completion in terminal, command history in terminal, booting and running from any medium (cd, floppy, network), advanced bootloaders (multi, menus, graphical with graphical reconfigure at boot time (xosl)), translucent window dragging, fs permissions (for multiple user accounts), functional applets in our toolbars (not just right-clicking), ability to access random stuff as a filesystem (ftp, ssh...), distributed network filesystems, secure remote access, reload/reconfigure drivers or install new ones without rebooting, do most anything without rebooting, automate most everything including full system updates, filesystems that don't fragment easily...
The list goes on. I'm not sure how "clean" that list is -- many of the items may have originated as closed-source -- but Microsoft never, ever innovates, it merely embraces/extends/tramples new stuff.
Don't thank God, thank a doctor!
Meh. Stolen (sorry, innovated) from the CaseVision aka cvd on IRIX.
Now, grip and digital dj were not exactly the easiest programs in the world to use, but they had the idea for audio CD->ripping->music management database in late 1998- itunes didn't 'innovate' the same idea for two more years, in January of 2001.
IAAL,BIANLY
Hello World!
My two favorite open source projects are MediaWiki and GNU Lilypond.
:-p
MediaWiki is Wikipedia's kickass wiki implementation that has tons of cool features. Wiki was around before MediaWiki, sure, but MW pretty much sets the bar. And of course it powers Wikpedia and all of its sister projects, which are pretty amazing and innovative too.
GNU Lilypond is a music typesetter that aims to produce beautiful sheet music. This is cool because most computer-printed scores look like crap. Lilypond gets flak because it has no dedicated GUI; you have to write the syntax in ASCII (UTF-8 is in the dev version), like a music programming language. But who cares, its syntax is a context-free grammar, which means it's theoretically easy for GUI score editors to pipe output to Lilypond for printing. Now if they would just come up with a more stable syntax...
And of course there's things like the WikiTeX extension for MediaWiki that lets you embed Lilypond code (and TeX, and SVG, and lots of other stuff) into wiki code...
DDD? Is this some kind of a joke?
The nice thing about OSS is that you have the opportunity to fix things yourself. So PLEASE instead of complaining about some "user interface nightmare" on slashdot, do something about it! Fork or start a rewrite.
However, Mozilla and Firefox do have a lot of improvements over Mosaic and are innovative in their own right.
Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
Apple didn't invent the idea of assigning addresses or finding services in that way; there have been several similar technologies like that before ZeroConf ever came out.
The obstacle to widespread adoption of such technologies has traditionally been standards and compatibility; since Apple can get away with doing its own thing more than other vendors, they often push such technologies into the market even if they weren't the ones to actually invent it.
In my experience, a lot of innovative software actually starts out in open source form. X11, for example, started out that way. Zoomable user interfaces started out open source. GUI specification languages (now represented by XUL and whatever Longhorn may get) started out in open source form. Entire categories of games started out as open source software. Chat software, innovative mail and news clients, new Internet protocols, etc., all were initially available in open source form.
The usual path for software seems to be that academics have a bright idea and bring out a rough initial version in open source form. People play around with that in the community and then some companies form to commercialize the technology. Eventually, the open source community takes notice (and may even forget about the original research code) and reimplement the commercial versions in open source form.
Furthermore, the companies that actually succeed with a product or new idea are often (usually?) not the ones that invented the technology in the first place.
If there is anything that will ever be considered revolutionary it's the GPL. This liscense is the sort of thing our grandchildren will read about. I would also assert that this is still innovative, as most people who use computers don't know what it's about. It is our declaration of freedom and it deserves more attention from the media than it has gotten (none). I personally beleive the most innovative thing in OSS right now is the liscences and the people who are reading them for the first time.
Under the influence of Post-Cyberpunk Gonzo Journalism
http://www.sweetcode.org/ is a catalog of innovative free software. no longer updated but still browse-worthy.
Neither of the given examples are very innovative.
DDD was done 15+ years ago with CodeCenter/ObjectCenter. Boost looks a lot like RogueWave libraries.
Most OSS projects are playing catchup with some product in the commerical world, innovation is hard to find. A couple that come to mind are Struts and Cocoon. Both of these frameworks where different from any other web framework, at the time.
Here.
It seems strange for a company to submit a standard they didn't work on, doesn't it?
GPL Deconstructed
as opposed to WYSIWYG.
Available at http://www.lyx.org
excellent explanation as to why here:
http://ricardo.ecn.wfu.edu/~cottrell/wp.html
William
Sphinx of black quartz, judge my vow.
Darcs, a simple, human-friendly, completely distributed version control system. Does away with dedicated servers (even your desktop can be a "server"), branches (every repository is a branch) and CVS warts (tracks renames, deletes, directories).
Dashboard
// TODO: Insert Cool Sig