Now there are (for enterprises) only two real choices, Java and.NET. Java in paticular abstracts the operating system questions away so it becomes irrelevant what OS is running it just needs to run Java fast and cheap..
There is a danger that.NET could do the same to Java as Windows did to Unix. Microsoft's bid is to lock people into the.NET platform after attracting them with an extremely slick client-side GUI framework. (XAML and Avalon). Java has nothing to compete head-to-head with XAML at this point, and we, the Java/OSS community need to get moving quickly to counter it. It's going to take a unified effort if we don't want to repeat Unix history -- fighting amongst ourselves while MS forces their defacto standard through Windows monopoly. This is going to involve the Free desktop environments as well, because.NET targets rich-web, desktop, and mobile with the same unified platform and the same proprietary UI markup language.
Basically, this is going to require several steps:
1.) Java needs to become a first class Open Source language for both the desktop and the server. For better or worse, many excellent developers in the Open Source community will ignore it until the Sun JVM is no longer necessary and the Open Source implementations are performant enough to refactor C/C++ code to. I applaud OpenOffice.org for starting to move in the Java direction..
2.) We need a unified, cross-platform, scalable GUI foundation that is accessible via any language, that abstracts the differences between popular libraries like Qt, Gtk+, Swing, and SWT, and that abstracts the rendering backend so that it can run on myriad devices. I'm thinking something vaguely similar to XAML, but not so tightly bound to a particular object model. (XAML is basically declarative GUI programming for.NET.. XML namespaces map directly to.NET classes and properties) If our UI standard must align with a particular object model for efficiency, it should be Java. Adaptors can be written later for all popular languages, whether scripting or compiled. This standardization would be a huge improvement to the Linux desktop and it would promote increased cross-platform development. (embrace and extend via free software that runs on Windows too)
3.) For the web, "AJAX" is a start but is not enough. We need to quickly extend the existing "thin / lightweight web" standards with SVG, XForms, XUL, etc. and matching rapid development tools. (Especially support from JavaServer Faces) Those who have invested in building existing "thin" web applications need a smooth upgrade path to rich-web without throwing everything out and starting over. (which is what XAML rich-web apps effectively require because they completely eschew existing W3C markup standards and force the.NET platform) MS is likely to never embrace W3C rich-web technologies in IE because they compete with XAML. As a result, Mozilla Firefox is our cross-platform delivery vehicle. SVG support in Firefox is moving along, but needs more developers and financial backing. Mozilla Foundation should probably set up a rich-web technologies fundraising campaign.
4.) With Java becoming a first-class Open Source language and with next generation web/GUI/desktop standards in place, it will finally be possible to provide a stable bridge between lightweight web interfaces and modern managed-code desktops. Think: "Java applets, but done right." This will remove any remaining disadvantages to lightweight web apps. You'll be able to access local hardware like imaging devices, sound i/o, etc. in a secure and standardized fashion -- but without forcefully tying the rich web to a massive, proprietary, client-side framework as.NET does.
I think it can be argued that, for wide-scale adoption of Linux, the first step will be the wide-scale adoption of OpenOffice over the MS office suite.
It's a tough call, but I don't think OpenOffice.org is what will ultimately ween businesses away from MS Office dependency. While a valient effort, the gap in functionality and polish is simply too large at this point. I see OpenOffice.org as more of a transition tool towards open platforms. Traditional desktop software is not the future of computing. The very concepts of word processing documents, spreadsheets, and self-contained databases (Access/Base) are terribly dated in today's web-connected world. While I hope that OpenOffice.org gets the resources it desperately needs, I believe that it is even more important to begin developing the next generation of web-based document production systems that will someday obsolete both MS Office and OpenOffice.org. Think of the lessons we have learned from web content management systems and then apply these to the future software that will replace "office suites" as rich-web applications. Imagine: forget trying to integrate clunky office suites with your enterprise software. Web-based document production systems can become an integrated whole with enterprise software!
One last thing, it's no surprise that MS has from the beginning to "subvert" the web and web standards. It's all about the formats. I guess they simply arrived way too late to the Web to completely take it over. But I'm sure they know that if they had managed to switch everyone over to ms-propietary-html to surf the web, we'd be paying through the nose for IE and their OS and Office monopoly would be further protected.
They're trying all over again -- this time with XAML, a proprietary XML user interface markup language with striking similarity to Mozilla XUL and (moreso) W3C SVG. MS would like the developer community to write rich-web apps using XAML in order to put Windows and IE back into the "client requirements" column of web applications. It is absolutely imperative that the Open Source community, especially all commercial parties with a vested interest in Linux and Java, contribute to the development of:
1.) Mature SVG support in Firefox. 2.) Developer tools to make SVG rich-web apps as aesthetic and easy to develop as standard GUI applications. 3.) (For Linux companies) X.org / FreeDesktop.org development as it applies to the vector graphics/3D acceleration architecture. This is necessary to ensure that SVG is as performant as XAML on Avalon. 4.) Extensions to SVG that will be necessary to compete with XAML (3D, effects, video, etc.) These have already been discussed in theory, but not formalized as 2D SVG has already been. (list in roughly this order of importance..)
So if you want to be paid to write F/OSS, find an organization which will pay you for your time doing what they need, and help them to realize that putting the resultant code under GPL, for example, helps everyone, including them.
Indeed, the value of initial creation is the most untapped resource for funding OSS.
There are other models besides the one you mention, which may be suitable for smaller projects. For example, a developer can offer a demanded feature only after it has been paid for by the users. There are different ways to implement this, but they desperately need to be explored. Projects like Gimp or Gaim would be good candidates for this model. You have to give people (and companies) a reason to "donate" to such Open Source projects because otherwise few will. And, likewise, nobody is going to hire an internal developer to add features to these sorts of programs.
Seriously folks, let's hope the world's web developers steer clear of this.
The only way to stop this is to offer a superior alternative. It is absolutely imperative that the Open Source community immediately join forces to counter this with full SVG support, both in browsers and GUI development tools for Java. This needs to happen in the next year before the big Vista launch hype kicks in full gear. If we don't finish our own standards that MS clearly ripped-off for XAML, we could lose the web as well. And yes, we may need a more performant, more developer-friendly replacement for Javascript as well.
Wrong. Governments can only protect or thwart existing rights. They cannot create or abolish rights.
What is the right to vote if not a created right? If this is a matter of semantics and you'd rather call voting a privilege, then copyright and patent protection also fall into this category.
My right to protect, say, my new book is inherent in the fact that I own and have exclusive rights to the original copy, and that it is literally impossible for anyone else to acquire any rights to that original work -- including the right to read it and to make additional copies -- unless I willingly transfer those rights.
Yes, assuming you don't share the book with anyone and you keep it private. This is because it is your personal private property until the day you die.
Copyright law merely codifies that right, it does not create it.
Copyright law codifies what happens after you've shared your book with others.
Absent copyright law, my rights still exist; absent copyright law, you acquire no right to use or copy my original work in any way.
Absent copyright law, if you share your book, anyone can copy it, create modified copies, or do anything else they please as long as they haven't violated your personal physical property in any way. Copyright is a modern social invention and a very good one when applied with wisdom. Nevertheless, for the vast majority of human history, there was no concept of owning exclusive rights to ideas themselves. This is ample evidence that such is not a natural moral right.
Back to early US history, the original copyright act of 1790 granted protection for 14 years plus an option to renew for another 14. At that time, this term was agreed upon as a fair balance between public and private gain. It seems logical that if Congress, in that day, believed that idea ownership was a natural right, they would have set the term to be the life of the author instead.
In any case, the Constitution means what people who are alive today say it means. The Founders themselves immediately began arguing about its interpretation and many of them altered their own views of it.
This is somewhat the case, so politically speaking it's not entirely black and white. On the other hand, if we do not hold onto the spirit of the original law as best as we can, we risk the compromise of the core tenets of our national identity and fundamental freedoms.
Politicians and parties who extol consensus are typically seeking to limit democracy, impose their own ideology and compel others to act only in accordance with their partisan views.
Sorta like the copyright lobby who want to impose their ideology that ideas can truly be owned and thus deserve infinite protection by the government -- even after the original author is long dead.:)
Alternatives readily exist today for your first point. On the closed source front, we have Lotus Domino, and on the open source front we have Kolab. Secondly, we have the Exchange Connector for Evolution. So this is hardly a problem.
I agree that the options for Exchange replacement are rapidly improving. (btw, another to watch is Open XChange, a slick web client using Kolab-style piecemeal backend) But, as you mention further down, these solutions are going to be deployed at the fringes of the market first. It still takes quite a bit of know-how, so large IT will bite first. It's really too bad that Kontact isn't available in Windows to help during transition away from Outlook.. Thunderbird and Moz. Calendar are lagging pretty far behind and I haven't pushed Open XChange Web in production yet.
The other two factors I mentioned: reliance on MS Office and Windows Server, are the bigger issues in my book. (I was unclear. Likely you thought I meant MS Office only for Outlook and Windows Server only for running Exchange.) Businesses today are heavily reliant on these two for all internal operations, so any solution that is not a near perfect replacement gets easily discarded. OpenOffice.org is nowhere near ready and may not be for several more years. Samba is a bare bones NT4-level compatibility tool, not a replacement for a real Active Directory domain controller. AFS/Coda/NFSv4 + LDAP + Kerberos + various Linux ACL patches seem to be perpetually bleeding edge, so they're not really production ready either from what I can tell. When you put it all together, the core components for a smooth Open Source desktop deployment are still MIA before even getting to the more specialized software. This is why I question whether we are all "barking up the wrong tree" so to speak. The whole "individual document files + network file shares + document sharing groupware" paradigm is quite dated anyhow.
Look into the Athena-style networks, how they are managed, and what you can do with them. Traditional Athena-style networks are fairly closely tied to the terminal server paradigm (from the mainfraim world) but with newer technology can offer an amazing set of capabilities that few people have really thought about.
From what I can decipher from the Athena home page, their goals are quite similar to what I see as possible via futuristic web apps. Unfortunately, I couldn't find any real information about technical details or specifications. Most of it was corporate babble like this random quote: "For externalising the dynamic dependencies between participants and processes, conceptual methodologies of content based routing and collaborative processes will be developed." *chuckle* Your explanation made much more sense.:)
The problem I see with Athena-style networks is their extremely high complexity. (replication, distributed computing, docking stations, disconnected operation, local security, etc.) I wonder how this complexity is justified given that reliable broadband internet access is rapidly becoming ubiquitous. It's so much easier and cheaper to keep SOA / distributed-computing inside the server room and not have to worry about complex client requirements.
The traditional complaint with today's web apps is that they are clumsy. However, I believe this is far easier to overcome than the challenges of Athena-style networking. Once we get mature SVG support in browsers and RAD tools to make its use managable, there will be very few limitations on what can be done from a UI perspective. Everything but multimedia and small personal software can be left on the server and be accessed anywhere on any standards compliant device. Note that I'm not talking about "office suites for the web" but rather a completely new paradigm for document production and information exchange. Then seamlessly integrate this system with highly sophisticated groupware and enterprise database applications that are far more flexible than what is common today.
The founders believed in an individual's right to protect his inventions.
More specifically, the founders believed that granting a limited protection on certain innovations would speed progress. It was not about individual rights but rather what they believed was best for the nation as a whole.
Whether or not software patents might attract lawyers is not relevant. One does not give up a natural right simply because someone else hires a lawyer.
Unlike life, liberty, speech, etc., copyright and patent are not inalienable, natural, moral rights but rather artificially granted rights. As such, governments choose when and how they should or should not apply, based upon a judgment of their net effect upon society. Most governments in the free world have rightly decided that software patents have a net negative effect on society. Some would argue further that software patents infringe upon the natural right to free speech and are thus trumped by default.
It is of primary importance that people be allowed to exercise their right to protect and benefit from their inventions. The innovative affects that accrue to society are secondary.
As previously stated, this order is the opposite of what the Constitution clearly states.
As for the corporate workstation, I think 6-8 years is a good estimate (not a question of whether Linux is ready for the desktop but a question of when people will decide to migrate and how long these migrations take).
"Linux" (F/OSS in general) isn't ready for the general purpose business workstation because most of the business world is heavily reliant on two things:
1.) The MS Office + Exchange + Windows Server threesome.
2.) Specialized business software that only runs on Windows.
This has much less to do with Open Source operating systems than it does available business and general productivity software. Unfortunately, the OSS community has not sufficiently innovated past the outdated, stagnant "desktop PC" paradigm that MS has fully monopolized. People who ask when "Linux will be ready for the desktop" are asking the wrong question. They should be asking, "When will easily-extensible, Open Source, rich-web applications obsolete the very concepts of office suites, file servers, standalone groupware, and standalone database apps." When the mainstream business workstation requires little more than a very advanced web browser, Linux will be "ready for the desktop." Stateless workstations are absolutely the holy grail of IT in every way. And why limit the form-factor to workstations anyhow at that point?
So, to answer my own question: When will we see these revolutionary new Open Source web apps? When the Open Source community fully commercializes as it has needed to do for years. Fortunately, this process has already begun in the enterprise Java sector.
If they had opposed patents and copyright, they would have written their ban into the Constitution.
I never said they opposed the ideas. They simply had the common sense that this was not something fundamental enough to force upon the nation without going through Congress first.
Those opposing that view could argue, for example, and with considerable evidence on their side, that closed and proprietary and patented software is responsible for the personal computer revolution and its innovations
Software generally wasn't patented throughout the PC revolution, so for the purpose of this discussion this works against your point. Yes, most software during this time was closed source, but this was really the only option before the internet enabled inexpensive widespread collaboration and distribution. Interestingly enough, Bill Gates himself was quoted somewhere around the mid-90's saying that if software had been widely patented, the industry would have been all lawyers and there would have been little innovation for fear of stepping into a minefield. Now that MS dominates so strongly, they casually support software patents because they can be used as a tool against small, nimble competitors. Regardless of whether you are doing closed or open software, software patents are bad news unless you are a corporate giant with a sizeable legal team. Do you really want to see an industry where only the big players can write software without fear of being torn to shreds? Yeah, that's a great incentive for teaching the next generation how to program.. "You can play around Johnny, but don't you dare put your software online.. somebody might sue you"
while free software is essentially marked by incessant minor iterations of white room rewrites of UNIX code from at last two decades ago.
F/OSS is not just Linux and BSD. The body of software that has risen up around them is what is actually significant. True, Linux itself contains little innovation, but then neither does the Windows kernel from release to release. You have to compare apples to apples here.. The F/OSS community and its Java community cousin have had an enormous impact in the area of web-based software, which is quite arguably far more important than new desktop software today. Likewise, there are many examples of how MS and especially Apple have used innovative ideas pioneered in various Open Source GUI environments. It goes both ways, and that's a good thing for everyone.
if the user of the software brings a patent case against its developer, the GPL would attempt to bar that person's use of a product that had already been acquired in a perfectly legal manner.
All software licenses cover use, not just acquisition. If such terms are not legally enforceable in GPL, then many of the terms in proprietary licenses must be invalid as well. Most proprietary licenses include termination clauses that come into effect under certain conditions. I've seen some that even claim the vendor has the right to arbitrarily revoke the license.
In my opinion, licenses like the GPL and most commercial EULA's carry no more weight that signs often posted in places like auto repair shops
If that's true, that might be a good thing overall. But legal cases on record have shown otherwise.
The history and severity of this bug does not reflect well on the Mozilla browser or its open source development model.
Somebody needs to set up a webpage where we can all pool donations to be specifically allocated to folks who volunteer fix these sorts of tough bugs and annoyances. It is obvious that the Mozilla team doesn't respond to vote count in any reliable fashion. However, if there was some money on the line, I bet they'd bite. Frankly, the Mozilla guys are doing a pretty good job and they deserve the compensation regardless. But it's fact that people are more willing to 'donate' when they get something in return. Is fixing bug 154892 worth $50 to me personally? No, but I'd be willing to donate that much to a "bug 154892 bounty" because I know it will support a hard working developer while also guaranteeing that a pet peeve is eliminated.
However, many open source solutions are equally time consuming as closed source solutions.
At this point that is still true. As a result, there is plenty of money to be made in the labor of installing open source solutions.
Incidentally, Debian is a bad example because it is still largely an "expert's only" distro. As a result it forces you to make more decisions, thus prolonging the time to install. I would say that installing Fedora is much faster than Windows + all the software needed to make it useful. Whether the desktop software that currently ships with Linux distros is good enough is another question, but it is definitely fast/easy to install.
I don't agree with your views of the Constitution and patents
I wasn't stating an opinion. The Constitution does not actually require patents or copyright at all, but merely gives Congress the power to create them. Read it for yourself if you don't believe me. If you need more proof, read the various writings of our founding fathers, where you'll find more insight into the spirit of the written law.
, including software patents
Should the patenting of software someday be examined by a high court, it would quite reasonably fail Constitutional scrutiny. The Constitution states that patents may be used to "promote progress of science and the useful arts." Since software patents most decidedly do NOT promote progress and, in fact, quite the opposite, they should not be legal to issue. Software copyright is the only appropriate measure for giving temporary exclusive rights on software ideas and it has worked perfectly well by itself for decades. Patents are fundamentally incompatible with software -- in the same way they are incompatible with literature.
ignoring that, how is this new GPL to be enforced? I see no chance that courts will uphold a license that attempts to restrict previous and unrelated activity.
The GPL is a legal contract, like any other EULA. If you don't agree to the contract, you don't have to enter into it. It can be enforced the same way that any other contracts are enforced. I have no idea where you're coming up with the "restrict previous and unrelated activity" part because that's not at all what's going on here. The new GPL is not retroactive. It does not forbid the patenting of software. It does not claim to overturn existing patents. All it says is that if you sue an Open Source developer on the grounds of a software patent, you no longer have the right to use their software. There is absolutely nothing unreasonable about that and there are proprietary software licenses with similar terms.
RMS is simply trying to advance his own personal partisian political agenda by restricting the rights of others.
Who's rights is he trying to restrict? Nobody is forcing anyone to use GPL'ed software. If they choose to do so, they must to agree to the terms set forth by the software's author(s) or else negotiate alternative licensing. This is no different than when you install any proprietary software and click the "Agree" button when the license pops up.
I say again: I don't agree with many of RMS's views, but people are making this out to be something way bigger than it is. Granted, I'm not a lawyer, so if you can find one that has proof otherwise (that this is a big deal) then get them online and tell us why.
You realize this is part of the whole point of Open Source, right?.. to level the playing field and put more control into the hands of software developers and end users. The problem is that we haven't had enough Open Source entrepreneurs yet. And worse, most thus far came out of the crazed dot-com era, where people didn't think they actually needed a business model to survive. Most IT departments today are desperate for cheaper, but high quality alternatives. It is up to people like us, who see the problems with the software industry, to be good capitalists and offer those alternatives.
And always remember: Open Source != Free Lunch. Software is only free if your time is worthless. Fortunately, time is very valuable.
This is just an attempt to hijack the free software movment to serve the political agenda of RMS and others like him.
I often don't agree with RMS and his political agenda, but I don't think that is affecting the situation in this case. Slashdot readers have yet again misinterpreted and thus most of the posts on this article are based on these misconceptions.
Here in the States, the right to patent is guaranteed by the Constitution.
First off, this is not true. The Constitution gives Congress the power to create laws such as patent and copyright. It does not require them and it does not guarantee their existance for citizens to use. The founding fathers recognized that such laws would be a double-edged sword and thus implementation was left up to Congress instead. Software patents themselves would likely not pass Constitutional scrutiny, so lets keep things in perspective.
if RMS or the FSF sue a company with software patents to prevent them from using free software, the company will argue -- successfully -- that the GPL illegally attempts to restrict their Constitutionally guaranteed right to patent.
Here's the big misconception: The new version of the GPL doesn't say you can't file for software patents. It says that if you use patents to sue an Open Source project, THEN you lose the right to use software licensed under GPL v3. This is simply a contractual agreement, as is any EULA, and is therefore perfectly legal. Now, whether it should be legal to add stuff like this to a EULA is another matter, but today it is.
Will the changes to GPL have any short-term impact on the Open Source movement? I doubt it. Most companies who are using OSS stand behind its ideals to some degree and would never bite the hand that feeds them. Most companies which hold software patents only do so for defensive purposes. IBM is a good example of both.
The very first action the developers should take is rip out all that java crap.
Absolutely wrong. The OO.org developers should be racing towards Java because any OO.org components written in Java are readily re-usable for web applications. Highly-integrated rich-web applications are the future of business productivity software, not todays antiquated concept of desktop-based office suites! OO.org should be seen as only a stepping stone, not an end in itself.
The way things are now, though, the system is easy to understand.
This is by no means true. Copyright and contract are some of the most convoluted areas of law. A long time ago it was simple, but not today. For example, consider the complexity of the contracts that musicians deal with when they get "get signed" by a label.
If publishing and IP were to change to take advantage of digital copying the compensation routes become unclear.
Actually the compensation routes would become simpler, more clear, and more equitable. Fundamental is the concept of being paid for the act of initial creation. Most artists (and programmers) today work as employees or contracters and are paid a fixed amount for their labor. They don't hold any re-distribution rights to their creative works. (just as a carpenter does not still own the furniture they have already sold) What I described in the previous post is little different than today's system from the artist's perspective. The biggest change is that consumers are buying the labor of creation rather than publishers. (if there are any middlemen to help coordinate this, they only take a thin slice and do not hold any rights at the end of the day)
Please note that I'm not against artists keeping the rights to their creative works. Quite the opposite! Creative Commons style licensing (ie. "some rights reserved") is a flexible framework for negotiation between consumers and producers of content. In the example of game content produced for-hire, the artist may hold the copyright but agree to license the work under terms allowing full re-distribution and derivative works -- but still requiring credit to be given them. As mentioned, there are many possible business models, some involving intermediary steps before the content is entirely freed.
To take advantage of digital copying, all we need to do is get rid of the traditional publishers. Their role is no longer necessary and their business model is fundamentally incompatible with the changing demands of the free market.
The OSS world is rich in coders, and exceedingly poor in skilled people willing to donate talent on audio and graphics. So, yes, I can design and implement an WCIII-type RTS engine -- it still won't impact Blizzard's bottom line, because they have masses of artists and sound engineers that I *can't* get.
The "OSS world" doesn't need to be rich with graphics artists and musicians to produce the content we need for Open Source games. Why does everyone assume that everything related to OSS must be free and a hobby project? Let us consider that it might be worth paying people to do this artistic work for us! (Just like we currently pay these people indirectly through today's game software publishers.) There would be a huge payoff in the end because it wouldn't be a one-shot ordeal. Not only would we get a quality game, but we would get a quality game that eventually forks into new and different quality games.
I'm all for keeping the code GPL'ed, but we need to explore hybrid business models to pay artists to produce what we want. Some possibilities:
- Fundraising.. Develop the game content after a certain amount has been raised. This is very difficult because people are reluctant to pay for something they can't see ahead of time. There's no guarantee of quality.
- Proprietary now, Free later: produce non-free content sold at a typical game price ($50-60) and guarantee its release to the community after all artist costs have been covered. State in the EULA that the content shall become free after x years or $y in sales, whichever comes first. This would be similar to the Free Blender campaign, but more commercially oriented. As a consumer, I would much rather buy a product with a long term benefit to myself / society instead of one that will be completely worthless in about 5-10 years. Note that this concept is how the founding father's of the US envisioned original copyright with its short terms. It really was a great idea and an engine for progress. Today's rendition has been corrupted by monopolistic players, but that doesn't mean we should throw it out altogether when it properly fits the scenario!
In fact, chances are that it'll never happen, unless somebody really smart does with Linux what Apple did with BSD.
This statement is partially valid.. except that it's more about unity within the Open Source community towards defined goals rather than "somebody really smart" coming in and changing everything on their own. Part of that unity needs to include a collective realization that the commercialization of Open Source is the secret to its long-term success. Every non-trivial project needs at least one full-time, paid developer. In most cases there is simply no substitute. Community and professional collaboration is still what ultimately fuels the effort, but financing of lead developers provides an enormous boost.
In an entirely GPL world, there would be no meaningful differentiation between software from different producers.
That's true, but it wouldn't matter. In a GPL world, the important differentiation is in the provision of services, not software itself. Even today, studies that have shown that when companies acquire software, their willingness to pay is most strongly linked to warranties and product support. That product support often involves development of new or customized features. In addition, GPL does not require redistribution of in-house code. So if you create some "secret sauce" that is tailored to a specific company's internal needs, you don't have to make it public. This is no different than in-house software today, which represents a very large portion of the jobs out there.
If firm A invests in software to meet customer needs, but firm B can benefit from that investment too, it is obvious that firm B will have a competitive advantage, and thus the trend within the sector will be towards ever lower levels of investment.
You're still looking at the situation from the traditional perspective. You can't look at it as two competing software companies A and B, which are reluctant to invest large chunks of effort because the other will free-ride. Instead, consider hundreds of firms that use a particular piece of GPL software while each contribute small portions back to the shared codebase. The incentive is not to profit on software itself but to meet their own needs. Sharing improvements just makes the process easier and ultimately cheaper. All of those contributions add up over time and the software evolves through user-driven development. How that development occurs is variable. Some of it may be in-house work. Some of it may be contracted through core project leaders. Some of it may be a side-effect of hired support services.
Perfectly competitive markets are more efficient, yes, but they are also not profitable in the long run (which is why, for example, agriculture is subsidised). Under market structures more resembling monopoly, there is the possibility for profit in the long run, and this profit can be used to invest in new technology.
That's a reasonable consideration because Open Source does, indeed, largely eliminate the potential for monopoly profits. (services markets can be monopolized as well.. it's just much harder.) On the other hand, I do not believe that new software technology is primarily produced by large investors. Software, like science, is too evolutionary of a field. It's hard to force progress by simply throwing money at any one area -- in fact this can often result in "solutions in search of problems." In the early days of computing, large investment was needed to jump-start the industry; today, there are so many players that innovation happens automatically amidst the mundane. As a developer, I don't care about monopoly profits. I only care about making a reasonable living while doing what I enjoy. I am paid to meet needs but I innovate in the process because it makes the jobs more fun.
The advance of computer software technology was very rapid during the period from 1975-1995, the latter being roughly the time when open source began to become mainstream (because of the increasing use of the Internet). Since 1995, there has arguably been less progress in software development than there was from 1975-85 or from 1985-95.
Considering that Internet-related technologies have been the most world changing of any the industry has yet produced, it hardly seems fair to say that progress slowed around 1995, when these technologies went mainstream. I would also argue that we are currently in a period of refocusing on what really matters. At the end of the day, computers are supposed to make our lives / jobs easier while increasing productivity and improving communication. Historically, the proprietary software world has largely missed the mark by stifling the potential for true integration and automation. (software systems with organic unity vs. vendor-specific compatibility) Open source and open standards have been the largest drivers of this refocusing.
What you are suggesting is effectively commoditisation of the software industry.
No, I'm suggesting that the software industry should be viewed as a labor / services market rather than an artificial goods market. Until machines program themselves, software labor will never be commoditized because developers will always have their specialties. So yes, all software itself can be commoditized in the sense that the code itself is not seen as the source of value. This is different than commoditizing the software industry. There's a huge difference.
What this would lead to is a situation in which investment in software itself would not generate a sufficient return to be generally profitable.
Investment in software itself does not need to be profitable on its own for the incentive to exist. Yes, we may eventually see the end of traditional software companies where all development is productized and centralized under one roof. Regardless, software companies will continue to become more diverse and fewer will take on the whole development load by themselves. Investment in software itself will be more driven by real user needs, and meeting those needs properly will always be profitable.
As a result, investment in software would steadily decline, and technological progress would slow. Resources would be shifted from software development to profitable endeavours such as marketing, services and support.
This is pure speculation. First, the total amount of investment in software is not what matters; the rate of meaningful production is what counts. Today's software industry is incredibly inefficient. If Open Source causes a massive increase in efficiency, due to code sharing, it is expected that investment in software itself may drop; but the total useful output could actually increase greatly. At the same time, Open Source dramatically reduces barriers of entry into the market and this has the opposite effect on investment. Likewise there is no reason whatsoever to believe that technological progress would likely slow. Most of the investment in today's software industry does not go into improving the state of the art; it goes into reinventing wheels. In terms of resource allocation, services and support are intimately tied to software development within the Open Source model. Companies that have tried to separate the two have generally failed.
One way or the other, the steady decline in investment in commodity software would leave a stagnant market, ripe to be overturned by investment in alternatives in one area or another.
Ironically, what you described is precisely where the software industry was before Open Source entered the scene and started shaking things up. Thus far, Open Source has done nothing but stimulate progress and innovation. The only thing that remains is full-on capitalization of the new labor market it has produced.
Thus they provide code (donated by many of those same companies!) under the BSD license specifically so the software *can* be commercialized.
There are a few cases where BSD still makes sense today, but it is important not to confuse the issues. GPL does not prevent commercialization or in-house modifications; it only prevents creation of proprietary derivatives. There are plenty of ways to commercialize GPL software, whether you wrote it or somebody else or both. Most BSD die hards I've talked to hold the underlying belief that the only way to make money in software is to go proprietary. They believe that the software industry would effectively cease to exist if everything was GPL-style open source. As a result, they believe that BSD is superior because it improves the health of proprietary vendors and thus, presumably, the industry at large. They incorrectly view GPL as taking away the freedom to commercialize and make a living in software. This perspective is incredibly short-sighted and usually sprinkled with misconceptions.
The biggest reason why there is not more commercialized GPL software is simply the fear of trying something new. Many software companies are comfortable with the proprietary model because that's all they've ever used. BSD perpetuates the status quo; GPL challenges it. Turning to the example of Apache's success, could it have worked with GPL instead? Absolutely! Honestly, how many successful proprietary derivatives of Apache projects are there? Apache has so much momentum that there is little or no market for them. Nevertheless, there is an enormous amount of commercialization around the Apache projects, particularly in the areas of services and in-house usage.
When you really get down to it, the issue is whether the industry would be better off if nearly all software was Open Source. GPL provides a means to get there; BSD does not. GPL is fundamentally a great equalizer -- it encourages free-market competition by making it nearly impossible to monopolize. In a world where the most popular software is (L)GPL licensed, it is more profitable to contribute to a common codebase than start from scratch and create a proprietary product. Again, this is little different from the Apache example; it's just more pervasive. Long term, the result will be the same -- whether via executives catching the vision of GPL or else creeping commoditization. IMO, why waste time. A software industry dominated by Open Source is better for everyone involved and better for society as a whole.
This is typical of the WSJ. They are quite simply baffled by Free Software and Open Source.
And here's why.. from the article: "How quickly open-source programs can narrow the gap with commercial software is a hotly debated topic in the computer industry." Note how they view "commercial" and "open source" as completely separate forces. Later in the article: "Instead of being written by one organization, open-source programs are developed and refined by informal networks of programmers, often on a voluntary basis." Here, they make the common assumption that all Open Source software is informally developed and devoid of centralized leadership and/or commercial influence. In reality, the exact opposite is often true of the best open source software today.
Ironically, the same cluestick is equally applicable to business rags like WSJ and the open source community at large: There is a huge need for more formalized, commercially-backed open source projects. Commercial does NOT equal proprietary.
But they can also do anything else your client OS allows an app to do. You can have a full-featured, fully interactive user interface, local data storage, high performance, inter-app communication, etc
This is the wrong perspective. "AJAX" and more generally speaking "rich web" applications change the whole desktop paradigm. The requirements mentioned are solved through different means or otherwise become irrelevant. Point by point:
full-featured
"Full-featured," is relative to the problem domain as well as the ramifications of new technologies. Today's killer feature is tomorrow's outdated methodology. Good examples are word processors vs. content/document management systems or spreadsheets vs. flexible databases.
fully interactive user interface
This is the whole point of rich-web apps. Interactivity will improve far beyond what today's AJAX apps offer once we start seeing mature support for SVG, SVG-DOM, CSS3, etc. If you're familiar with what Flash can do, that should give you the general idea.
local data storage
Local data storage, used as a workaround for network inadequacy, is bad for security and is a wide avenue for inconsistency. Considering that Internet access is quickly becoming ubiquitous, the cases where local data storage are beneficial are quickly vanishing.
high performance
Again, this is part of the whole point of AJAX rich-web apps -- reduced network traffic and interface latency. The bounds of web application performance are readily scalable so this is a non issue.
inter-app communication
Here's perhaps the biggest point of all. Client-side inter-app communication becomes irrelevant if all apps are properly integrated into a complete web-based server-sided solution. Not only is this more reliable, but the potential for automation increases dramatically once all data storage and business logic is centralized.
..why build and tear down your entire OO structure every time you load a page? To do that intelligently you want an application server caching these objects..
Thank goodness somebody mentioned this. For this and other reasons, PHP is an architectural disaster when it comes to trying to write real world applications (vs. dynamic web pages and ultralight web apps like blogs, wiki's, etc.) PHP fanatics continually ignore the fact that their language of choice is nothing more than a glorified form of CGI. Indeed, PHP is great for doing CGI, but beyond that it's the most useless language on the planet. This is 2005, not 1995.
The worst part is that, within the Open Source community, PHP has diverted enormous resources and man-hours away from Java in cases where Java is the obvious right tool for the job. As a result, we still have virtually nothing in the category of quality core business applications. (finance, accounting, payroll, ERP, CRM, document management, etc.) The distraction of immature Python has been to no gain either. I firmly believe that if the Open Source community had co-opted Java 5+ years back, nobody would be talking about.NET today and we'd be seeing far more large scale Linux/BSD rollouts across corporate America. That includes desktop rollouts too, because once your core apps are web-enabled, who needs Windows?
We need to get good money making product out there to get the financial resources together to get the fight into their world on their turf where it has to be fought to be won.
Exactly -> Commercialized Open Source Development. Forget the free; keep the Free.:)
Open Source represents a good basis, but it is only one part of the solution. Most of the best Open Source software today has commercially funded development. But we need nearly all Open Source software to be commercially funded -- especially end-user software and most especially business software.
Businesses use Windows because it runs the apps they need to survive. It has very little to do with the OS itself and many would gladly switch if it was possible. Furthermore, what business could refuse if the cost savings was not only due to the OS but the required business software itself being Free minus needed support costs. If only the OSS community didn't have such a ridiculous stigma on Java...
Now there are (for enterprises) only two real choices, Java and .NET. Java in paticular abstracts the operating system questions away so it becomes irrelevant what OS is running it just needs to run Java fast and cheap..
.NET could do the same to Java as Windows did to Unix. Microsoft's bid is to lock people into the .NET platform after attracting them with an extremely slick client-side GUI framework. (XAML and Avalon). Java has nothing to compete head-to-head with XAML at this point, and we, the Java/OSS community need to get moving quickly to counter it. It's going to take a unified effort if we don't want to repeat Unix history -- fighting amongst ourselves while MS forces their defacto standard through Windows monopoly. This is going to involve the Free desktop environments as well, because .NET targets rich-web, desktop, and mobile with the same unified platform and the same proprietary UI markup language.
.NET.. XML namespaces map directly to .NET classes and properties) If our UI standard must align with a particular object model for efficiency, it should be Java. Adaptors can be written later for all popular languages, whether scripting or compiled. This standardization would be a huge improvement to the Linux desktop and it would promote increased cross-platform development. (embrace and extend via free software that runs on Windows too)
.NET platform) MS is likely to never embrace W3C rich-web technologies in IE because they compete with XAML. As a result, Mozilla Firefox is our cross-platform delivery vehicle. SVG support in Firefox is moving along, but needs more developers and financial backing. Mozilla Foundation should probably set up a rich-web technologies fundraising campaign.
.NET does.
There is a danger that
Basically, this is going to require several steps:
1.) Java needs to become a first class Open Source language for both the desktop and the server. For better or worse, many excellent developers in the Open Source community will ignore it until the Sun JVM is no longer necessary and the Open Source implementations are performant enough to refactor C/C++ code to. I applaud OpenOffice.org for starting to move in the Java direction..
2.) We need a unified, cross-platform, scalable GUI foundation that is accessible via any language, that abstracts the differences between popular libraries like Qt, Gtk+, Swing, and SWT, and that abstracts the rendering backend so that it can run on myriad devices. I'm thinking something vaguely similar to XAML, but not so tightly bound to a particular object model. (XAML is basically declarative GUI programming for
3.) For the web, "AJAX" is a start but is not enough. We need to quickly extend the existing "thin / lightweight web" standards with SVG, XForms, XUL, etc. and matching rapid development tools. (Especially support from JavaServer Faces) Those who have invested in building existing "thin" web applications need a smooth upgrade path to rich-web without throwing everything out and starting over. (which is what XAML rich-web apps effectively require because they completely eschew existing W3C markup standards and force the
4.) With Java becoming a first-class Open Source language and with next generation web/GUI/desktop standards in place, it will finally be possible to provide a stable bridge between lightweight web interfaces and modern managed-code desktops. Think: "Java applets, but done right." This will remove any remaining disadvantages to lightweight web apps. You'll be able to access local hardware like imaging devices, sound i/o, etc. in a secure and standardized fashion -- but without forcefully tying the rich web to a massive, proprietary, client-side framework as
I think it can be argued that, for wide-scale adoption of Linux, the first step will be the wide-scale adoption of OpenOffice over the MS office suite.
It's a tough call, but I don't think OpenOffice.org is what will ultimately ween businesses away from MS Office dependency. While a valient effort, the gap in functionality and polish is simply too large at this point. I see OpenOffice.org as more of a transition tool towards open platforms. Traditional desktop software is not the future of computing. The very concepts of word processing documents, spreadsheets, and self-contained databases (Access/Base) are terribly dated in today's web-connected world. While I hope that OpenOffice.org gets the resources it desperately needs, I believe that it is even more important to begin developing the next generation of web-based document production systems that will someday obsolete both MS Office and OpenOffice.org. Think of the lessons we have learned from web content management systems and then apply these to the future software that will replace "office suites" as rich-web applications. Imagine: forget trying to integrate clunky office suites with your enterprise software. Web-based document production systems can become an integrated whole with enterprise software!
One last thing, it's no surprise that MS has from the beginning to "subvert" the web and web standards. It's all about the formats. I guess they simply arrived way too late to the Web to completely take it over. But I'm sure they know that if they had managed to switch everyone over to ms-propietary-html to surf the web, we'd be paying through the nose for IE and their OS and Office monopoly would be further protected.
They're trying all over again -- this time with XAML, a proprietary XML user interface markup language with striking similarity to Mozilla XUL and (moreso) W3C SVG. MS would like the developer community to write rich-web apps using XAML in order to put Windows and IE back into the "client requirements" column of web applications. It is absolutely imperative that the Open Source community, especially all commercial parties with a vested interest in Linux and Java, contribute to the development of:
1.) Mature SVG support in Firefox.
2.) Developer tools to make SVG rich-web apps as aesthetic and easy to develop as standard GUI applications.
3.) (For Linux companies) X.org / FreeDesktop.org development as it applies to the vector graphics/3D acceleration architecture. This is necessary to ensure that SVG is as performant as XAML on Avalon.
4.) Extensions to SVG that will be necessary to compete with XAML (3D, effects, video, etc.) These have already been discussed in theory, but not formalized as 2D SVG has already been.
(list in roughly this order of importance..)
So if you want to be paid to write F/OSS, find an organization which will pay you for your time doing what they need, and help them to realize that putting the resultant code under GPL, for example, helps everyone, including them.
Indeed, the value of initial creation is the most untapped resource for funding OSS.
There are other models besides the one you mention, which may be suitable for smaller projects. For example, a developer can offer a demanded feature only after it has been paid for by the users. There are different ways to implement this, but they desperately need to be explored. Projects like Gimp or Gaim would be good candidates for this model. You have to give people (and companies) a reason to "donate" to such Open Source projects because otherwise few will. And, likewise, nobody is going to hire an internal developer to add features to these sorts of programs.
Seriously folks, let's hope the world's web developers steer clear of this.
The only way to stop this is to offer a superior alternative. It is absolutely imperative that the Open Source community immediately join forces to counter this with full SVG support, both in browsers and GUI development tools for Java. This needs to happen in the next year before the big Vista launch hype kicks in full gear. If we don't finish our own standards that MS clearly ripped-off for XAML, we could lose the web as well. And yes, we may need a more performant, more developer-friendly replacement for Javascript as well.
Wrong. Governments can only protect or thwart existing rights. They cannot create or abolish rights.
:)
What is the right to vote if not a created right? If this is a matter of semantics and you'd rather call voting a privilege, then copyright and patent protection also fall into this category.
My right to protect, say, my new book is inherent in the fact that I own and have exclusive rights to the original copy, and that it is literally impossible for anyone else to acquire any rights to that original work -- including the right to read it and to make additional copies -- unless I willingly transfer those rights.
Yes, assuming you don't share the book with anyone and you keep it private. This is because it is your personal private property until the day you die.
Copyright law merely codifies that right, it does not create it.
Copyright law codifies what happens after you've shared your book with others.
Absent copyright law, my rights still exist; absent copyright law, you acquire no right to use or copy my original work in any way.
Absent copyright law, if you share your book, anyone can copy it, create modified copies, or do anything else they please as long as they haven't violated your personal physical property in any way. Copyright is a modern social invention and a very good one when applied with wisdom. Nevertheless, for the vast majority of human history, there was no concept of owning exclusive rights to ideas themselves. This is ample evidence that such is not a natural moral right.
Back to early US history, the original copyright act of 1790 granted protection for 14 years plus an option to renew for another 14. At that time, this term was agreed upon as a fair balance between public and private gain. It seems logical that if Congress, in that day, believed that idea ownership was a natural right, they would have set the term to be the life of the author instead.
In any case, the Constitution means what people who are alive today say it means. The Founders themselves immediately began arguing about its interpretation and many of them altered their own views of it.
This is somewhat the case, so politically speaking it's not entirely black and white. On the other hand, if we do not hold onto the spirit of the original law as best as we can, we risk the compromise of the core tenets of our national identity and fundamental freedoms.
Politicians and parties who extol consensus are typically seeking to limit democracy, impose their own ideology and compel others to act only in accordance with their partisan views.
Sorta like the copyright lobby who want to impose their ideology that ideas can truly be owned and thus deserve infinite protection by the government -- even after the original author is long dead.
Alternatives readily exist today for your first point. On the closed source front, we have Lotus Domino, and on the open source front we have Kolab. Secondly, we have the Exchange Connector for Evolution. So this is hardly a problem.
:)
I agree that the options for Exchange replacement are rapidly improving. (btw, another to watch is Open XChange, a slick web client using Kolab-style piecemeal backend) But, as you mention further down, these solutions are going to be deployed at the fringes of the market first. It still takes quite a bit of know-how, so large IT will bite first. It's really too bad that Kontact isn't available in Windows to help during transition away from Outlook.. Thunderbird and Moz. Calendar are lagging pretty far behind and I haven't pushed Open XChange Web in production yet.
The other two factors I mentioned: reliance on MS Office and Windows Server, are the bigger issues in my book. (I was unclear. Likely you thought I meant MS Office only for Outlook and Windows Server only for running Exchange.) Businesses today are heavily reliant on these two for all internal operations, so any solution that is not a near perfect replacement gets easily discarded. OpenOffice.org is nowhere near ready and may not be for several more years. Samba is a bare bones NT4-level compatibility tool, not a replacement for a real Active Directory domain controller. AFS/Coda/NFSv4 + LDAP + Kerberos + various Linux ACL patches seem to be perpetually bleeding edge, so they're not really production ready either from what I can tell. When you put it all together, the core components for a smooth Open Source desktop deployment are still MIA before even getting to the more specialized software. This is why I question whether we are all "barking up the wrong tree" so to speak. The whole "individual document files + network file shares + document sharing groupware" paradigm is quite dated anyhow.
Look into the Athena-style networks, how they are managed, and what you can do with them. Traditional Athena-style networks are fairly closely tied to the terminal server paradigm (from the mainfraim world) but with newer technology can offer an amazing set of capabilities that few people have really thought about.
From what I can decipher from the Athena home page, their goals are quite similar to what I see as possible via futuristic web apps. Unfortunately, I couldn't find any real information about technical details or specifications. Most of it was corporate babble like this random quote: "For externalising the dynamic dependencies between participants and processes, conceptual methodologies of content based routing and collaborative processes will be developed." *chuckle* Your explanation made much more sense.
The problem I see with Athena-style networks is their extremely high complexity. (replication, distributed computing, docking stations, disconnected operation, local security, etc.) I wonder how this complexity is justified given that reliable broadband internet access is rapidly becoming ubiquitous. It's so much easier and cheaper to keep SOA / distributed-computing inside the server room and not have to worry about complex client requirements.
The traditional complaint with today's web apps is that they are clumsy. However, I believe this is far easier to overcome than the challenges of Athena-style networking. Once we get mature SVG support in browsers and RAD tools to make its use managable, there will be very few limitations on what can be done from a UI perspective. Everything but multimedia and small personal software can be left on the server and be accessed anywhere on any standards compliant device. Note that I'm not talking about "office suites for the web" but rather a completely new paradigm for document production and information exchange. Then seamlessly integrate this system with highly sophisticated groupware and enterprise database applications that are far more flexible than what is common today.
The founders believed in an individual's right to protect his inventions.
More specifically, the founders believed that granting a limited protection on certain innovations would speed progress. It was not about individual rights but rather what they believed was best for the nation as a whole.
Whether or not software patents might attract lawyers is not relevant. One does not give up a natural right simply because someone else hires a lawyer.
Unlike life, liberty, speech, etc., copyright and patent are not inalienable, natural, moral rights but rather artificially granted rights. As such, governments choose when and how they should or should not apply, based upon a judgment of their net effect upon society. Most governments in the free world have rightly decided that software patents have a net negative effect on society. Some would argue further that software patents infringe upon the natural right to free speech and are thus trumped by default.
It is of primary importance that people be allowed to exercise their right to protect and benefit from their inventions. The innovative affects that accrue to society are secondary.
As previously stated, this order is the opposite of what the Constitution clearly states.
As for the corporate workstation, I think 6-8 years is a good estimate (not a question of whether Linux is ready for the desktop but a question of when people will decide to migrate and how long these migrations take).
"Linux" (F/OSS in general) isn't ready for the general purpose business workstation because most of the business world is heavily reliant on two things:
1.) The MS Office + Exchange + Windows Server threesome.
2.) Specialized business software that only runs on Windows.
This has much less to do with Open Source operating systems than it does available business and general productivity software. Unfortunately, the OSS community has not sufficiently innovated past the outdated, stagnant "desktop PC" paradigm that MS has fully monopolized. People who ask when "Linux will be ready for the desktop" are asking the wrong question. They should be asking, "When will easily-extensible, Open Source, rich-web applications obsolete the very concepts of office suites, file servers, standalone groupware, and standalone database apps." When the mainstream business workstation requires little more than a very advanced web browser, Linux will be "ready for the desktop." Stateless workstations are absolutely the holy grail of IT in every way. And why limit the form-factor to workstations anyhow at that point?
So, to answer my own question: When will we see these revolutionary new Open Source web apps? When the Open Source community fully commercializes as it has needed to do for years. Fortunately, this process has already begun in the enterprise Java sector.
If they had opposed patents and copyright, they would have written their ban into the Constitution.
I never said they opposed the ideas. They simply had the common sense that this was not something fundamental enough to force upon the nation without going through Congress first.
Those opposing that view could argue, for example, and with considerable evidence on their side, that closed and proprietary and patented software is responsible for the personal computer revolution and its innovations
Software generally wasn't patented throughout the PC revolution, so for the purpose of this discussion this works against your point. Yes, most software during this time was closed source, but this was really the only option before the internet enabled inexpensive widespread collaboration and distribution. Interestingly enough, Bill Gates himself was quoted somewhere around the mid-90's saying that if software had been widely patented, the industry would have been all lawyers and there would have been little innovation for fear of stepping into a minefield. Now that MS dominates so strongly, they casually support software patents because they can be used as a tool against small, nimble competitors. Regardless of whether you are doing closed or open software, software patents are bad news unless you are a corporate giant with a sizeable legal team. Do you really want to see an industry where only the big players can write software without fear of being torn to shreds? Yeah, that's a great incentive for teaching the next generation how to program.. "You can play around Johnny, but don't you dare put your software online.. somebody might sue you"
while free software is essentially marked by incessant minor iterations of white room rewrites of UNIX code from at last two decades ago.
F/OSS is not just Linux and BSD. The body of software that has risen up around them is what is actually significant. True, Linux itself contains little innovation, but then neither does the Windows kernel from release to release. You have to compare apples to apples here.. The F/OSS community and its Java community cousin have had an enormous impact in the area of web-based software, which is quite arguably far more important than new desktop software today. Likewise, there are many examples of how MS and especially Apple have used innovative ideas pioneered in various Open Source GUI environments. It goes both ways, and that's a good thing for everyone.
if the user of the software brings a patent case against its developer, the GPL would attempt to bar that person's use of a product that had already been acquired in a perfectly legal manner.
All software licenses cover use, not just acquisition. If such terms are not legally enforceable in GPL, then many of the terms in proprietary licenses must be invalid as well. Most proprietary licenses include termination clauses that come into effect under certain conditions. I've seen some that even claim the vendor has the right to arbitrarily revoke the license.
In my opinion, licenses like the GPL and most commercial EULA's carry no more weight that signs often posted in places like auto repair shops
If that's true, that might be a good thing overall. But legal cases on record have shown otherwise.
The history and severity of this bug does not reflect well on the Mozilla browser or its open source development model.
Somebody needs to set up a webpage where we can all pool donations to be specifically allocated to folks who volunteer fix these sorts of tough bugs and annoyances. It is obvious that the Mozilla team doesn't respond to vote count in any reliable fashion. However, if there was some money on the line, I bet they'd bite. Frankly, the Mozilla guys are doing a pretty good job and they deserve the compensation regardless. But it's fact that people are more willing to 'donate' when they get something in return. Is fixing bug 154892 worth $50 to me personally? No, but I'd be willing to donate that much to a "bug 154892 bounty" because I know it will support a hard working developer while also guaranteeing that a pet peeve is eliminated.
Good things are always worth paying for..
However, many open source solutions are equally time consuming as closed source solutions.
At this point that is still true. As a result, there is plenty of money to be made in the labor of installing open source solutions.
Incidentally, Debian is a bad example because it is still largely an "expert's only" distro. As a result it forces you to make more decisions, thus prolonging the time to install. I would say that installing Fedora is much faster than Windows + all the software needed to make it useful. Whether the desktop software that currently ships with Linux distros is good enough is another question, but it is definitely fast/easy to install.
I don't agree with your views of the Constitution and patents
I wasn't stating an opinion. The Constitution does not actually require patents or copyright at all, but merely gives Congress the power to create them. Read it for yourself if you don't believe me. If you need more proof, read the various writings of our founding fathers, where you'll find more insight into the spirit of the written law.
, including software patents
Should the patenting of software someday be examined by a high court, it would quite reasonably fail Constitutional scrutiny. The Constitution states that patents may be used to "promote progress of science and the useful arts." Since software patents most decidedly do NOT promote progress and, in fact, quite the opposite, they should not be legal to issue. Software copyright is the only appropriate measure for giving temporary exclusive rights on software ideas and it has worked perfectly well by itself for decades. Patents are fundamentally incompatible with software -- in the same way they are incompatible with literature.
ignoring that, how is this new GPL to be enforced? I see no chance that courts will uphold a license that attempts to restrict previous and unrelated activity.
The GPL is a legal contract, like any other EULA. If you don't agree to the contract, you don't have to enter into it. It can be enforced the same way that any other contracts are enforced. I have no idea where you're coming up with the "restrict previous and unrelated activity" part because that's not at all what's going on here. The new GPL is not retroactive. It does not forbid the patenting of software. It does not claim to overturn existing patents. All it says is that if you sue an Open Source developer on the grounds of a software patent, you no longer have the right to use their software. There is absolutely nothing unreasonable about that and there are proprietary software licenses with similar terms.
RMS is simply trying to advance his own personal partisian political agenda by restricting the rights of others.
Who's rights is he trying to restrict? Nobody is forcing anyone to use GPL'ed software. If they choose to do so, they must to agree to the terms set forth by the software's author(s) or else negotiate alternative licensing. This is no different than when you install any proprietary software and click the "Agree" button when the license pops up.
I say again: I don't agree with many of RMS's views, but people are making this out to be something way bigger than it is. Granted, I'm not a lawyer, so if you can find one that has proof otherwise (that this is a big deal) then get them online and tell us why.
What should be done to correct this disparity?
.. to level the playing field and put more control into the hands of software developers and end users. The problem is that we haven't had enough Open Source entrepreneurs yet. And worse, most thus far came out of the crazed dot-com era, where people didn't think they actually needed a business model to survive. Most IT departments today are desperate for cheaper, but high quality alternatives. It is up to people like us, who see the problems with the software industry, to be good capitalists and offer those alternatives.
You realize this is part of the whole point of Open Source, right?
And always remember: Open Source != Free Lunch. Software is only free if your time is worthless. Fortunately, time is very valuable.
This is just an attempt to hijack the free software movment to serve the political agenda of RMS and others like him.
I often don't agree with RMS and his political agenda, but I don't think that is affecting the situation in this case. Slashdot readers have yet again misinterpreted and thus most of the posts on this article are based on these misconceptions.
Here in the States, the right to patent is guaranteed by the Constitution.
First off, this is not true. The Constitution gives Congress the power to create laws such as patent and copyright. It does not require them and it does not guarantee their existance for citizens to use. The founding fathers recognized that such laws would be a double-edged sword and thus implementation was left up to Congress instead. Software patents themselves would likely not pass Constitutional scrutiny, so lets keep things in perspective.
if RMS or the FSF sue a company with software patents to prevent them from using free software, the company will argue -- successfully -- that the GPL illegally attempts to restrict their Constitutionally guaranteed right to patent.
Here's the big misconception: The new version of the GPL doesn't say you can't file for software patents. It says that if you use patents to sue an Open Source project, THEN you lose the right to use software licensed under GPL v3. This is simply a contractual agreement, as is any EULA, and is therefore perfectly legal. Now, whether it should be legal to add stuff like this to a EULA is another matter, but today it is.
Will the changes to GPL have any short-term impact on the Open Source movement? I doubt it. Most companies who are using OSS stand behind its ideals to some degree and would never bite the hand that feeds them. Most companies which hold software patents only do so for defensive purposes. IBM is a good example of both.
The very first action the developers should take is rip out all that java crap.
Absolutely wrong. The OO.org developers should be racing towards Java because any OO.org components written in Java are readily re-usable for web applications. Highly-integrated rich-web applications are the future of business productivity software, not todays antiquated concept of desktop-based office suites! OO.org should be seen as only a stepping stone, not an end in itself.
The way things are now, though, the system is easy to understand.
This is by no means true. Copyright and contract are some of the most convoluted areas of law. A long time ago it was simple, but not today. For example, consider the complexity of the contracts that musicians deal with when they get "get signed" by a label.
If publishing and IP were to change to take advantage of digital copying the compensation routes become unclear.
Actually the compensation routes would become simpler, more clear, and more equitable. Fundamental is the concept of being paid for the act of initial creation. Most artists (and programmers) today work as employees or contracters and are paid a fixed amount for their labor. They don't hold any re-distribution rights to their creative works. (just as a carpenter does not still own the furniture they have already sold) What I described in the previous post is little different than today's system from the artist's perspective. The biggest change is that consumers are buying the labor of creation rather than publishers. (if there are any middlemen to help coordinate this, they only take a thin slice and do not hold any rights at the end of the day)
Please note that I'm not against artists keeping the rights to their creative works. Quite the opposite! Creative Commons style licensing (ie. "some rights reserved") is a flexible framework for negotiation between consumers and producers of content. In the example of game content produced for-hire, the artist may hold the copyright but agree to license the work under terms allowing full re-distribution and derivative works -- but still requiring credit to be given them. As mentioned, there are many possible business models, some involving intermediary steps before the content is entirely freed.
To take advantage of digital copying, all we need to do is get rid of the traditional publishers. Their role is no longer necessary and their business model is fundamentally incompatible with the changing demands of the free market.
The OSS world is rich in coders, and exceedingly poor in skilled people willing to donate talent on audio and graphics. So, yes, I can design and implement an WCIII-type RTS engine -- it still won't impact Blizzard's bottom line, because they have masses of artists and sound engineers that I *can't* get.
The "OSS world" doesn't need to be rich with graphics artists and musicians to produce the content we need for Open Source games. Why does everyone assume that everything related to OSS must be free and a hobby project? Let us consider that it might be worth paying people to do this artistic work for us! (Just like we currently pay these people indirectly through today's game software publishers.) There would be a huge payoff in the end because it wouldn't be a one-shot ordeal. Not only would we get a quality game, but we would get a quality game that eventually forks into new and different quality games.
I'm all for keeping the code GPL'ed, but we need to explore hybrid business models to pay artists to produce what we want. Some possibilities:
- Fundraising.. Develop the game content after a certain amount has been raised. This is very difficult because people are reluctant to pay for something they can't see ahead of time. There's no guarantee of quality.
- Proprietary now, Free later: produce non-free content sold at a typical game price ($50-60) and guarantee its release to the community after all artist costs have been covered. State in the EULA that the content shall become free after x years or $y in sales, whichever comes first. This would be similar to the Free Blender campaign, but more commercially oriented. As a consumer, I would much rather buy a product with a long term benefit to myself / society instead of one that will be completely worthless in about 5-10 years. Note that this concept is how the founding father's of the US envisioned original copyright with its short terms. It really was a great idea and an engine for progress. Today's rendition has been corrupted by monopolistic players, but that doesn't mean we should throw it out altogether when it properly fits the scenario!
In fact, chances are that it'll never happen, unless somebody really smart does with Linux what Apple did with BSD.
This statement is partially valid.. except that it's more about unity within the Open Source community towards defined goals rather than "somebody really smart" coming in and changing everything on their own. Part of that unity needs to include a collective realization that the commercialization of Open Source is the secret to its long-term success. Every non-trivial project needs at least one full-time, paid developer. In most cases there is simply no substitute. Community and professional collaboration is still what ultimately fuels the effort, but financing of lead developers provides an enormous boost.
In an entirely GPL world, there would be no meaningful differentiation between software from different producers.
That's true, but it wouldn't matter. In a GPL world, the important differentiation is in the provision of services, not software itself. Even today, studies that have shown that when companies acquire software, their willingness to pay is most strongly linked to warranties and product support. That product support often involves development of new or customized features. In addition, GPL does not require redistribution of in-house code. So if you create some "secret sauce" that is tailored to a specific company's internal needs, you don't have to make it public. This is no different than in-house software today, which represents a very large portion of the jobs out there.
If firm A invests in software to meet customer needs, but firm B can benefit from that investment too, it is obvious that firm B will have a competitive advantage, and thus the trend within the sector will be towards ever lower levels of investment.
You're still looking at the situation from the traditional perspective. You can't look at it as two competing software companies A and B, which are reluctant to invest large chunks of effort because the other will free-ride. Instead, consider hundreds of firms that use a particular piece of GPL software while each contribute small portions back to the shared codebase. The incentive is not to profit on software itself but to meet their own needs. Sharing improvements just makes the process easier and ultimately cheaper. All of those contributions add up over time and the software evolves through user-driven development. How that development occurs is variable. Some of it may be in-house work. Some of it may be contracted through core project leaders. Some of it may be a side-effect of hired support services.
Perfectly competitive markets are more efficient, yes, but they are also not profitable in the long run (which is why, for example, agriculture is subsidised). Under market structures more resembling monopoly, there is the possibility for profit in the long run, and this profit can be used to invest in new technology.
That's a reasonable consideration because Open Source does, indeed, largely eliminate the potential for monopoly profits. (services markets can be monopolized as well.. it's just much harder.) On the other hand, I do not believe that new software technology is primarily produced by large investors. Software, like science, is too evolutionary of a field. It's hard to force progress by simply throwing money at any one area -- in fact this can often result in "solutions in search of problems." In the early days of computing, large investment was needed to jump-start the industry; today, there are so many players that innovation happens automatically amidst the mundane. As a developer, I don't care about monopoly profits. I only care about making a reasonable living while doing what I enjoy. I am paid to meet needs but I innovate in the process because it makes the jobs more fun.
The advance of computer software technology was very rapid during the period from 1975-1995, the latter being roughly the time when open source began to become mainstream (because of the increasing use of the Internet). Since 1995, there has arguably been less progress in software development than there was from 1975-85 or from 1985-95.
Considering that Internet-related technologies have been the most world changing of any the industry has yet produced, it hardly seems fair to say that progress slowed around 1995, when these technologies went mainstream. I would also argue that we are currently in a period of refocusing on what really matters. At the end of the day, computers are supposed to make our lives / jobs easier while increasing productivity and improving communication. Historically, the proprietary software world has largely missed the mark by stifling the potential for true integration and automation. (software systems with organic unity vs. vendor-specific compatibility) Open source and open standards have been the largest drivers of this refocusing.
What you are suggesting is effectively commoditisation of the software industry.
No, I'm suggesting that the software industry should be viewed as a labor / services market rather than an artificial goods market. Until machines program themselves, software labor will never be commoditized because developers will always have their specialties. So yes, all software itself can be commoditized in the sense that the code itself is not seen as the source of value. This is different than commoditizing the software industry. There's a huge difference.
What this would lead to is a situation in which investment in software itself would not generate a sufficient return to be generally profitable.
Investment in software itself does not need to be profitable on its own for the incentive to exist. Yes, we may eventually see the end of traditional software companies where all development is productized and centralized under one roof. Regardless, software companies will continue to become more diverse and fewer will take on the whole development load by themselves. Investment in software itself will be more driven by real user needs, and meeting those needs properly will always be profitable.
As a result, investment in software would steadily decline, and technological progress would slow. Resources would be shifted from software development to profitable endeavours such as marketing, services and support.
This is pure speculation. First, the total amount of investment in software is not what matters; the rate of meaningful production is what counts. Today's software industry is incredibly inefficient. If Open Source causes a massive increase in efficiency, due to code sharing, it is expected that investment in software itself may drop; but the total useful output could actually increase greatly. At the same time, Open Source dramatically reduces barriers of entry into the market and this has the opposite effect on investment. Likewise there is no reason whatsoever to believe that technological progress would likely slow. Most of the investment in today's software industry does not go into improving the state of the art; it goes into reinventing wheels. In terms of resource allocation, services and support are intimately tied to software development within the Open Source model. Companies that have tried to separate the two have generally failed.
One way or the other, the steady decline in investment in commodity software would leave a stagnant market, ripe to be overturned by investment in alternatives in one area or another.
Ironically, what you described is precisely where the software industry was before Open Source entered the scene and started shaking things up. Thus far, Open Source has done nothing but stimulate progress and innovation. The only thing that remains is full-on capitalization of the new labor market it has produced.
Thus they provide code (donated by many of those same companies!) under the BSD license specifically so the software *can* be commercialized.
There are a few cases where BSD still makes sense today, but it is important not to confuse the issues. GPL does not prevent commercialization or in-house modifications; it only prevents creation of proprietary derivatives. There are plenty of ways to commercialize GPL software, whether you wrote it or somebody else or both. Most BSD die hards I've talked to hold the underlying belief that the only way to make money in software is to go proprietary. They believe that the software industry would effectively cease to exist if everything was GPL-style open source. As a result, they believe that BSD is superior because it improves the health of proprietary vendors and thus, presumably, the industry at large. They incorrectly view GPL as taking away the freedom to commercialize and make a living in software. This perspective is incredibly short-sighted and usually sprinkled with misconceptions.
The biggest reason why there is not more commercialized GPL software is simply the fear of trying something new. Many software companies are comfortable with the proprietary model because that's all they've ever used. BSD perpetuates the status quo; GPL challenges it. Turning to the example of Apache's success, could it have worked with GPL instead? Absolutely! Honestly, how many successful proprietary derivatives of Apache projects are there? Apache has so much momentum that there is little or no market for them. Nevertheless, there is an enormous amount of commercialization around the Apache projects, particularly in the areas of services and in-house usage.
When you really get down to it, the issue is whether the industry would be better off if nearly all software was Open Source. GPL provides a means to get there; BSD does not. GPL is fundamentally a great equalizer -- it encourages free-market competition by making it nearly impossible to monopolize. In a world where the most popular software is (L)GPL licensed, it is more profitable to contribute to a common codebase than start from scratch and create a proprietary product. Again, this is little different from the Apache example; it's just more pervasive. Long term, the result will be the same -- whether via executives catching the vision of GPL or else creeping commoditization. IMO, why waste time. A software industry dominated by Open Source is better for everyone involved and better for society as a whole.
This is typical of the WSJ. They are quite simply baffled by Free Software and Open Source.
And here's why.. from the article: "How quickly open-source programs can narrow the gap with commercial software is a hotly debated topic in the computer industry." Note how they view "commercial" and "open source" as completely separate forces. Later in the article: "Instead of being written by one organization, open-source programs are developed and refined by informal networks of programmers, often on a voluntary basis." Here, they make the common assumption that all Open Source software is informally developed and devoid of centralized leadership and/or commercial influence. In reality, the exact opposite is often true of the best open source software today.
Ironically, the same cluestick is equally applicable to business rags like WSJ and the open source community at large: There is a huge need for more formalized, commercially-backed open source projects. Commercial does NOT equal proprietary.
But they can also do anything else your client OS allows an app to do. You can have a full-featured, fully interactive user interface, local data storage, high performance, inter-app communication, etc
This is the wrong perspective. "AJAX" and more generally speaking "rich web" applications change the whole desktop paradigm. The requirements mentioned are solved through different means or otherwise become irrelevant. Point by point:
full-featured
"Full-featured," is relative to the problem domain as well as the ramifications of new technologies. Today's killer feature is tomorrow's outdated methodology. Good examples are word processors vs. content/document management systems or spreadsheets vs. flexible databases.
fully interactive user interface
This is the whole point of rich-web apps. Interactivity will improve far beyond what today's AJAX apps offer once we start seeing mature support for SVG, SVG-DOM, CSS3, etc. If you're familiar with what Flash can do, that should give you the general idea.
local data storage
Local data storage, used as a workaround for network inadequacy, is bad for security and is a wide avenue for inconsistency. Considering that Internet access is quickly becoming ubiquitous, the cases where local data storage are beneficial are quickly vanishing.
high performance
Again, this is part of the whole point of AJAX rich-web apps -- reduced network traffic and interface latency. The bounds of web application performance are readily scalable so this is a non issue.
inter-app communication
Here's perhaps the biggest point of all. Client-side inter-app communication becomes irrelevant if all apps are properly integrated into a complete web-based server-sided solution. Not only is this more reliable, but the potential for automation increases dramatically once all data storage and business logic is centralized.
..why build and tear down your entire OO structure every time you load a page? To do that intelligently you want an application server caching these objects..
.NET today and we'd be seeing far more large scale Linux/BSD rollouts across corporate America. That includes desktop rollouts too, because once your core apps are web-enabled, who needs Windows?
:)
Thank goodness somebody mentioned this. For this and other reasons, PHP is an architectural disaster when it comes to trying to write real world applications (vs. dynamic web pages and ultralight web apps like blogs, wiki's, etc.) PHP fanatics continually ignore the fact that their language of choice is nothing more than a glorified form of CGI. Indeed, PHP is great for doing CGI, but beyond that it's the most useless language on the planet. This is 2005, not 1995.
The worst part is that, within the Open Source community, PHP has diverted enormous resources and man-hours away from Java in cases where Java is the obvious right tool for the job. As a result, we still have virtually nothing in the category of quality core business applications. (finance, accounting, payroll, ERP, CRM, document management, etc.) The distraction of immature Python has been to no gain either. I firmly believe that if the Open Source community had co-opted Java 5+ years back, nobody would be talking about
ok.. off my soapbox.
We need to get good money making product out there to get the financial resources together to get the fight into their world on their turf where it has to be fought to be won.
:)
Exactly -> Commercialized Open Source Development. Forget the free; keep the Free.
Open Source represents a good basis, but it is only one part of the solution. Most of the best Open Source software today has commercially funded development. But we need nearly all Open Source software to be commercially funded -- especially end-user software and most especially business software.
Businesses use Windows because it runs the apps they need to survive. It has very little to do with the OS itself and many would gladly switch if it was possible. Furthermore, what business could refuse if the cost savings was not only due to the OS but the required business software itself being Free minus needed support costs. If only the OSS community didn't have such a ridiculous stigma on Java...