Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
News

TCL Creator Writes Article on Open Source 127

Zagadka writes "John Ousterhout, creator of TCL, has written an article called Free Software Needs Profit for Dr. Dobb's. It discusses the relationship open source software and commercial software can have with each other. "
This discussion has been archived. No new comments can be posted.

TCL Creator Writes Article on Open Source

Comments Filter:
  • by Anonymous Coward
    Obviously you don't want open source to go anywhere. Me I want to have sources for the OS and Language and I want to use successful OS's and languages. I thought this was a well thought out and presented point of view. Just remember the first person that attacked the food on the plate was you. If you expect the food to magically appear, why are you better than the parasites?
  • by Anonymous Coward
    You have to make a distinction between businesses that add value to free software projects and businesses that polute free software projects with proprietary software. If the business mentains the free software spirit (freedom) then it isn't bad, but id it adds non-free products to an otherwise free product it is bad.
  • by Anonymous Coward
    Scriptics is more like ActiveState. They keep working closely with the community improving the free version (example, the TEA summit that was held this week). These changes are given back to the community.
    In addition, Scriptics sells a proprietary crossplatform debugger, that unlike Activestate one, runs on Windows and Unix/Linux (that is the beauty of tcl/tk!)

    Daniel
  • by Anonymous Coward
    Yeah, all this point-click - theres your dialog-box kind of software. Theres still nothing from the free software community competing with Delphi, Visual Age or Visual Basic with regards to GUI development. And I could think of other fields of development tools.
  • well, i like tcl/tk, i think it's a "fast glue language." it's the choice if you wanna whip up something in one night that doesn't look too bare minimum.

    but i don't see how john ousterout puts it "Scriptics' long-term goal is to leverage Tcl to become the leading supplier of enterprise
    integration platforms and solutions."

    i mean, you got java to develop over all sorts of platforms; java is no doubt much more powerful/popular than tcl/tk. apparently no one in the community would try to develop serious programs for tcl/tk because of lack of certain power. Scriptic just gives a bad feeling that we might be held hostage again someday.

    i have a feeling tht tcl/tk is losing popularity. it is installed on less and less machines. i'm sad to see this, but i have a feeling that there's some reason behind it.
  • by Anonymous Coward
    Ousterhout's views are biased by his particular situation: he is trying to make a living with his particular open source effort.

    Most free software, however, is produced as a side effect of government sponsored research, of commercial development where the developers want a particular piece of software used widely but don't see any money in commercializing it, or simply because people feel strongly about a particular piece of software and want it "out there".

    Ousterhout's model of a small company creating and supporting a specific piece of open source software commercially and making a living at it is still unusual, and it's not clear it's going to work in the long run. It's also not clear it's going to be needed.

    Ousterhout's company would probably do better if they transformed into a general purpose consulting company, with specific competency in Tcl/Tk.

  • by Anonymous Coward on Saturday March 20, 1999 @12:03PM (#1970738)
    Time and time again people post this rant, which as always confuses "commercial" with "proprietary".

    There's nothing wrong with putting food on your table, working for money, retiring in a nice home, etc. There are wealthy people in the world who need computer software, and there's nothing intrinsically evil about providing it to them for a fee. However, the proprietary TCL extensions john creates are doomed to be one-trick ponys with no long term care taken by active volunteers, users in the field, administrators, hobbyists or professional system integrators. They will not stabilize and advance with use, they will not have code folded back in from the real world; rather they will (like all proprietary ware) have their bugs and features sorted by visibility and customer contracts, their modification schedules driven purely by the alocation of resources within Scriptics inc.

    As a result they will fall behind the times and customers will either have to pay the ransom for promised (not necessarily delivered) features in the next vapour product line, or live with the broken product. A small-time customer will never have their desires addressed and will be unable to seek additional contractors to do the work. Their "hood" is welded shut and there's nothing they can do about it.

    The only thing you get with proprietary ware is a big shiny box, a fancy flyer, and a lot of empty promises.

  • I don't agree with this guy.

    Businesses spring up around open source projects
    in the same way that mold grows on my plates when
    I leave food in the fridge for too long -- they
    (the businesses) see a chance to make money and
    jump at it.

    Like my unfortunate dishes, the open source
    projects can do just fine without the businesses
    cropping up. Think of them more as nonlethal (we
    hope) parasites.

    ----

  • No, any real person needs one to figure out the obfuscated mess of GUI programming. Linux needs one even more, unless you like spending your life and your sanity trying to learn GUI programming with 34 different toolkits because each of the projects you're supposed to be supporting uses a different toolkit.

    I'd rather use a Visual development took for the GUI layout (win32, gtk, qt, whatever), and spend my time coding the actual program.
  • Posted by Tony Smolar:

    I've pointed this out in the past. I was amazed at the responses. It seems that the developers don't mind having other people make money off their work, and they themselves not getting a cent.

    I see a troublesome trend emerging, Company releases source code, hackers fix it, company exploits loophole in its public license, and sells proprietary code based on what it got from the hackers, in essence a free labor pool!
  • Posted by Tony Smolar:

    Scriptics does not sell TCL, they are selling a development environment for TCL, so John is taking the hard work that John and Employees did and making money off of it. Anyway, If I recall correctly, IBM took that mystery project and added it to its proprietary "Websphere" product.
  • Posted by Tony Smolar:

    Red Hat's product isn't Linux, rather it is the convience of having all the parts of Linux in one place, easy to install. It's a "value added" product. The reason people pay Red Hat is that most people would rather not download and compile hundreds of packages themselves. In contrast, say your company tried to sell an easy to use Word Processor under GPL. One person can buy the word processor, give it to his friends, post the source on his web site, whatever. ALL LEGALLY! Because the GPL demands that it be freely redistributable. Most people, given the choice of paying $99.95 or legally getting it for nothing will choose the latter. Some may feel guilty and buy it. As for support, if it's an easy to use product, most people won't bother paying for that, either. If support is to be the means of making money in an all Open Source world, you are going to see some reallly awful software in terms of usability. This is why I feel GPL and commercial software can't mix for most companies.
  • Posted by Tony Smolar:

    I found that when combined with Oratcl, it makes a good CGI/Oracle glue language. Of course Perl can be used in the same way. I know that linking tcl against the proprietary Oracle libraries makes me more evil than Bill Gates, but hey, it pays the bills.
  • Posted by Tony Smolar:

    You've confused the word "free" with the word "free" again! Money's got nothing to do with it. Most shareware comes with zero source code, so it's not free by the FSF standard. That's why they used the word "free" to make this clear.
  • dont like TCL, but i do like tk.
    yes i have written tcl code.
  • "a dozen good IDEs"

    What, like gIDE? Version 0.1.0 just doesn't cut it.

    I've developed with both command line and IDE systems. While I'll grant you the open source system has the best potential for being a great system, particularly with respect to customization -- one of these days I'll add matching parentheses syntax highlighting to gIDE -- in their current state I'll take the commercial IDEs.

    Stallman used proprietary software to jumpstart GNU (no HURD back then); I see no reason the rest of us shouldn't use it if it's the best way to achieve our goals.
  • The article you refer to was evaluating an old version of Tcl (cerca v7.5 beta, I think). Tcl 8.0 solves a number of the speed issues with byte compiling, storing lists as proper lists, etc. Some problems still remain, like the array passing, but I think Tcl deserves some credit.

    Of the problems you listed in your post, I believe both binary data and fast math are quite possible. Neither language is yet able to approach optimized C anyway -- why get so hung up on trying?

    Those problems come out of the simplicity of Tcl. Perl is a beast in comparison. Well, Perl is a beast even in an objective way. Perl has every feature -- an attribute which isn't a feature.

    I'm not Tcl-lover, but inside of its scope Tcl isn't half bad.

  • This "free but with proprietary pieces" strikes me as a perverted form of shareware. i.e., release the demo version as free software, but to *really* get its potential, subtract your freedom.

    I think this is a bit dodgy wrt to the potential of the free parts under the "official" tree, too, because 100's of developers can easily outpace 1 or a few developers, who may not want to merge in code that improves the free version, but breaks their proprietary parts. At least forks are still permitted, but aren't necessarily the ideal situation to be in..
  • I don't talk funny, you leesen funny. I didn't mistake free (beer) for free (dom) .. Notice the subtle hints in my original post such as "subtract your freedom" .. and "a perverted form of shareware" Granted, shareware doesn't release source, that's why it's different. Twisted. Perverted into a new form that gives the illusion of freedom while leaving what can be advertised as "the good part" non-free.
  • some moderators for some reason seem to think that "conflicting with their opinions" constitutes a right to reduce a post's score.

    ;sigh;
  • Can anyone give me examples of where is it used in a large program?

    [PLUG ALERT]

    How about this [dsndata.com] for a large program that uses TCL/TK? A couple million lines of code, hundreds of users world wide, and the price? Well, let's just say that people don't mind buying 500MHz-PIII's with 256MB RAM, 24" monitors, etc. 'cause it really doesn't effect the total much. :->

    P.S. Please don't /. it. It's where I play quake from.

  • Now, improvements made by others only is defined as the files where his copyright is on the top. If someone makes a (say) 2 line mod to a single file, but does not include their (c) symbol in the code as well, then they don't have a legal leg to stand on. The original (c) holder may take that code, put a different license on it and distribute it commercially/proprietry if they wish. If someone wants to enforce that you (being the original code writer) don't redistribute their changes, you need to put your little (c) mark on it as well. If you don't there's no point in crying over spilt milk.

    This is incorrect. Since almost(?) the entire world has now signed the Berne Convention, you now have an implicit copyright on everything you write. You have to do something to give up this right, such as to do the work as a "work for hire", assigning it to the public domain, etc.

    So, if I change two lines of code around in some file, no one else can use that patch w/o my permission. Things quickly start to get funny here. If I don't spell out what copy rights I want to reserve and what I want to give away, then it is not clear what, if any rights you have to use my work. Much of the time you can argue that the author "implicitly" gave certain rights away. Such as if I post the patch to Usenet or the Web, with a comment that says "this patch should fix the multi-user race condition, let me know if it doesn't work", then I think that most courts would conclude that I have given up much of my copy rights. Similarly, by writing this article and submitting it to /., I have given implicit permission for it to appear on /. and to be transmitted to other people. I have also implicitly said that it is OK to create "diriviative works" by quoting my article in your follow up. What isn't clear is whether I have given implicit permission for it to be copied anywhere else.

    Now if my patch is applied to a GPL'ed or similar OSS license, then it can be argued, and the courts would probably agree that I implicitly licensed my patch under the same license. This means that you can't take my patch and change the license. (The BSD license, however, would allow you to take my patch and make it proprietary.)

    Please note that the string "(c)" has no legal meaning. At one time, to copyright something, you have to use a c with a circle around it "©", or spell out "Copyright", but now with the Berne convention, neither of these are required. So saying "(c) Wayne Schlitt, all rights reserved" has never done anything for me.

    These messy areas where you have to argue that the author gave "implicit permission" to do something causes a lot of problems in the OSS community. The Debian folks are very strict about honoring the copyrights and licenses of other people. You won't find any pirated warez on their machines. However, they frequently run into packages that have lines like this:

    (c) Copyright by Foo Bar, all rights reserved. This package is in the public domain.
    This causes the Debian folks to pull their hair out. If it is in the Public Domain, then that means that it isn't copyrighted at all. If you say that "all rights are reserved", then that means that you can't copy/distributed/modify it at all. This is clearly a self contradicting "license." What the courts would do with such a "license" is anyones guess. As a result, Debian won't distribute such a package without the author changing their "license."

    A good place to start for more information about copyrights is here [templetons.com] and a related one one copyright myths here [templetons.com].

    Finally, the rules for copyrights and for patents are very different. Patents prevent people from using an inventions, even if it was independantly discovered, copyrights apply only to the "expression of an idea." If you come up, independantly, with the same two line patch, then there is nothing that my copyright on my patch can do to prevent you from using yours.

  • by wayne ( 1579 ) <wayne@schlitt.net> on Saturday March 20, 1999 @12:25PM (#1970758) Homepage Journal
    I don't see anything wrong with commercial (!= proprietary) interests in open source software. Even RMS has held this position, and he had said this for at least 15 years, and repeats it often.

    The next big jump for open source software is when coporations start developing OSS to "scratch their own itch." In the past, a lot of OSS came out of universities and goverment projects, where this kind of idea arises more naturally. In the future, I hope that lots of business look to a problem they have, see that there is some OSS that already does much of what they want to have done, and then extend it to do what they really need done. Of course, the are oblidged to release these modifications.

    Once OSS reaches a "critical mass", I think that lots of businesses will be choosing this route of "extending the OSS that is out there." It has a lot of advantages over in-house development because you get a good start for free and you often get bug fixes and other enhancements from other people for free. It also has a lot of advantages over proprietary software because the business has control over their own destiny, and the cost of deploying gobs of workstations is much smaller.

    Comercial software is not inherently evil.

    Businesses are not inherently evil.

    MicroSoft is not inherently evil. (It is irrelevant.)

    The Governement is not inherently evil.

  • You're confused as to how the community works.

    Any individual participates in the community for two essential reasons: to get cool software and for personal reputation enhancement. While a lot of hay has been made about the second reason, the first is the crucial one.

    Central to the first reason is that everyone who enhances the system "gives back" to it. Otherwise, the community members see themselves as "suckers" and the community disintegrates. As a side effect, the particular product usually loses its momentum, and the product dies. For an example, check out the story about the Mosaic browser.

    (BTW, ESR acknowledges this, too. Remember the "scratch an itch" part?)

    Thus the reason for my question about the superiority of the GPL. Care must be taken that companies don't "kill the goose that lays the golden egg". The GPL effectively does that.
  • by Jeff Licquia ( 2167 ) on Saturday March 20, 1999 @12:27PM (#1970760) Homepage
    As I see it, there are (at least) two types of open-source companies.

    The first would include companies like Red Hat and LinuxCare. These are companies whose business model does not depend on proprietary software at all; their entire product is open.

    The second includes companies like Scriptics and Sendmail. These companies base their business on proprietary extensions to free products - "better" versions of the free stuff.

    Of course, no one can object to the first kind of company (unless you believe making money is itself evil). The second kind is a little harder to deal with, because it involves taking the hard work of the community and making money off of it without giving anything back - not in a money sense, but in the sense of giving back their improvements for the community to use.

    The real gray area, in this case, involves companies like ActiveState and Cygnus. They sell proprietary software, but as separate add-ons to the free tools, not strictly as enhancements. In addition, like Red Hat, they donate much time and effort into free improvements to the free tools, keeping the proprietary parts of their effort as separate as they can.

    As an example, ActiveState distributes and does lots of work on Perl for Win32, and distributes it under Perl's original licenses - free for any use, full source included. They also distribute some add-ons as "free beer" which help integrate Perl better into the Windows environment. Finally, they sell proprietary extensions to Perl: a GUI debugger for Windows and a "mod_perl"-like extension for IIS.

    I think I feel better about this method of extending free software for money than the Scriptics/Sendmail way. It isn't as "exploitative"; you're really making your money off your own code, not other people's code.

    Is it a coincidence that Scriptics-style companies tend to grow out of projects under a BSD/X license, while ActiveState/Cygnus companies (as well as, obviously, Red Hat-style companies) tend to grow out of GPL projects? Is this more evidence of the superiority of the GPL?

    (Also: did you notice which prominent open-source project he didn't mention that doesn't have a company egging on its success? Hint: it's even more successful than all the rest, and it's the software that's feeding you these pages. :-)
  • See my post below (which bears the same title) for a detailed explanation of the bare-bones argument presented here.
  • by David Jao ( 2759 ) <djao@dominia.org> on Saturday March 20, 1999 @11:53AM (#1970762) Homepage
    Ousterhout fails to make a clear distinction between commercial and proprietary software in his article. Judging by his interchangable use of the two terms, he seems to consider the two equivalent, which is not at all the case.

    The debate in my mind is not whether free software benefits from commercial backing. I think everyone here agrees that commercial support for free software is an inevitable development, and that it's good when businesses write free software.

    The actual point of contention is whether we need to have proprietary software companies using free software to further their business. When talking about this point, the argument that "programmers need to eat" doesn't apply: as Red Hat Software shows, a software company can feed programmers without writing any proprietary software at all. The jury is still very much out on the role of proprietary software in the free software world.

    By failing to distinguish clearly between commercial and proprietary software, Ousterhout pretty much misses the boat with his article.

  • Yes Commercial != prorietary and therefore we can't be sure what Ousterhout really means.

    I hope that Ousterhout will clarify this point.

    I am willing to give Mr. O. the benefit of any doubt based on his fine technical contributions.

    cheers
  • I guess he hasn't read the GPL... you can't just start making a proprietary version of free software.

    It also seems that you don't understand how licensing and copyright works. If I write the code I may license it however I like. In fact, I may have the same piece of code with two different licenses on it. In fact I do - I distribute my public code with the LGPL, and the stuff that the Australian Defence Forces use, have a different license on it. I own that code that I wrote and therefore may do whatever I like with it.

    Ousterhout wrote the TCL code originally, so long as he sells a proprietry version of the code that does not include any improvements made by others then there is no problems legally.

    Now, improvements made by others only is defined as the files where his copyright is on the top. If someone makes a (say) 2 line mod to a single file, but does not include their (c) symbol in the code as well, then they don't have a legal leg to stand on. The original (c) holder may take that code, put a different license on it and distribute it commercially/proprietry if they wish. If someone wants to enforce that you (being the original code writer) don't redistribute their changes, you need to put your little (c) mark on it as well. If you don't there's no point in crying over spilt milk.

  • There is no such thing as universal wrong or universal right --- everything takes place in a context, and requires a subjective value judgement by the parties concerned to determine if it is good or bad from their point of view.

    How happy are the customers of Scriptics with their commercial and proprietary extensions to Tcl, and how unhappy are they with the lack of open source for those parts of the product? If there is more happiness than unhappiness then it must be OK or at least acceptable, FOR THEM. So be it. If they felt otherwise then they would not remain customers of John's just as we do not remain customers of Microsoft.

    Since in the free software community we do not use those proprietary extensions and the rest of Tcl is free software, our requirement is satisfied. Apparently, their requirements are satisfied as well, by the standards of their own community.

    People who want to change the values in their own community are progressives; those who want to impose their own local values on other communities are no better than the missionaries that (believing they were in the right) coercively eradicated almost all the tribal cultures worldwide not all that many decades ago.

    Personally I think that proprietary software has no future at all outside of niche markets: the charms of free software are just too seductive, and the growth pattern is irrefutable. But let the drain away from proprietariness happen at its own pace (the drain is accelerating rapidly anyway), not by labelling everyone else as bad without exception.

    The case of Scriptics is particularly interesting, because John is selling to a tiny niche market such as might be left over after The Big Drain. In this way, Scriptics might represent the future of bespoke development, while the free software community might represent the future of mainstream software.

    This is worth observing without bias.
  • Your first paragraph does not carry any justification. Furthermore, judging by the current state of the free software community, it is probably entirely incorrect.

    Your second paragraph is largely false because earned wealth is almost entirely drained as profit. It is very rare to find more than a small fraction being reinvested in R&D, especially in *new* products rather than new versions, and in general, new ideas tend to arise at the pre-investment stage in most cases.

    Your third paragraph is almost entirely a non sequitur. There isn't any scarcity of new ideas nor products in the free software community. Try monitoring freshmeat.net for a week, *every* week. The rate of arrival of new ideas is scary.

    Your fourth paragraph just relies on the premise of your previous three, so I won't bother arguing it.

    Quite a few reasonable arguments have been made here on Slashdot in support of commercial for-profit development, despite the in-trend being the opposite. Your "growing up" article hasn't really helped your cause, it seems to me, not necessarily because it's wrong but because it isn't argued soundly.
  • *BSD "never got very far" because of business - The Lawsuit brought by AT&T(USL) against BSDI in 1992. The Lawsuit drug on for 3 years, and eventually forced all active *BSD development to restart from a new code base. BSDI was a commercial version of BSD Networking Release-2, so it was a commercial product that caught AT&T's attention.

    Meanwhile, some bright kid in Finland was developing a Unix-like OS for his own needs...

    The BSD license allows developers to make their modifications private, something that should attract commercial developers. The GPL does not allow this.
  • by Eric Wayte ( 4583 ) on Saturday March 20, 1999 @11:34AM (#1970768) Homepage
    I think John is on the right track. There should be no shame in making money using Open Source. As he cited, look at O'Reilly and Sendmail. For another essay along these lines, read Bob Young's contribution to "Open Sources." You know Bob's company - Red Hat. Some little startup in the Carolinas...

    But, to put it simply - people have to eat. Some choose to make money their primary motivator, others choose contributing to the greater community. (And some just want to see there names in print!)

    The Open Source community is big enough to include those that make money as well as those who aren't driven by profit. Let's not let this issue divide us. If by selling copies of Linux in the local book/computer stores, the more people we'll have using Linux and there's strength in numbers.

  • I notice you stress the GUI part. Yes, Tk is wonderful, and fortunately one can use it with other scripting languages such as perl, python, and stk. This is fortunate because many people (such as myself) became intringued with tcl/tk after seeing something like tkdesk but were immediately turned off by tcl, which makes the Bourne shell seem like a wonderful programming language.
  • by Jonathan ( 5011 ) on Saturday March 20, 1999 @12:57PM (#1970770) Homepage
    Busineses springing from Open Source projects remind me an awful lot of businesses springing from university research projects (and of course TCL has both these origins). The founders always say that this is a positive move for the project and needed for its continued growth, etc. etc., but I sort of get the idea that the real reason is that these companies start is because the project heads want to live in a nicer house and drive a nicer car, and the way to get these things in our society is to start a business. I don't object to people like Ousterhout wanting nice things (they often deserve them), but I *do* wish these people would be more honest about their motives for going commercial.
  • There are people out there (who prolly read this) who feel that any and all commercial software is evil. And I do agree with one of the posts up top, it is important to draw distinctions between proprietary and commercial software.

    But the essential observation here is valid: in no future I see happening any time soon do we cease all commercial activity centered around software. Yes, I believe that the essential paradigm should shift away from software as a production and manufacturing industry and more towards a service based industry. Witness the primary method by which companies such as RedHat propose to make money: SERVICES. Companies like Microsoft however, want to sell you an object, something they 'created', something you can get from nowhere else and which you may not dissect or alter in any way.

    Recently, I seem to recall someone posting something about how the open sourced projects from companies should be 'spin offs' of regular commercial activity, a way to give away code without losing revenue. You aren't giving out your "product", but releasing a service to the community. I find this to be both plausable and feasable with current reality of OSS and capitalism. They can and will depend upon each other...

  • I *do* wish these people would be more honest about their motives for going commercial.


    Don't expect them to be honest about their desire to reap the benifits of their hard work when a considerable portion of the Free Software "community" will visciously attack them for admitting it.

    I got into Linux because it was a fun hobby, and was perfectly happy to contribute in my limited way whenever I could. But now, I'm wondering how long it will be before I simply can't take the politics and the bullshit any longer and just say "to hell with it."

    Dream
  • give me a break. There is nothing wrong with proprietary software. Why can't all you hardcore freedom dorks figure this out? Free and proprietary can and should co-exist. Not all software companies can get by selling "support"... just ask Linus...
  • ... a scripting language.

  • TCL uses nul-termination for all strings. This eliminates any possible use of binary
    data.

    No longer true as of tcl v8.0


    TCL stores numbers as numbers only within an "expr" statement. The return value of
    the expr is a string, and the parameters to it are strings, so you have to be able to do all
    of your math within a single expr for it to be fast.


    same as above.
  • is it a surprise that open source and commecrial ventures are compatible? since red hat, etc. it seems pretty obvious.
  • One area where visual programming is a big plus is designing dialog layouts for gui programs. A visual interface utilizing a toolbox of user interface components and a drawing area (like a drawing program) is great for productivity.

    Writing a good dialog design program is not easy though. They should handle reading in files they write, and have proper layout support for resizeable dialogs (so you can specify whether UI components stick to a particular side or reposition themselves as the dialog is grown).

    Another nice visual programming tool is a the class browser that lets you navigate your program by showing a hierarchy of class and methods.

    My original introduction to an IDE was Turbo Pascal 5.5. It had the best IDE I've ever used, (interestingly it supported neither of the tools I described above). For years I though IDE meant integrated debugging environment. The support for visual debugging (setting breakpoints, stepping, watching variables) was novel and effective.

    Now at my day job I use the Talking Moon visual tools (C++ and J++) and nearly all the time I simply use cout and System.out.print to debug as the visual debugger is so horribly slow (On a PII450/128MB). It's frustrating seeing technology go backwards like this.

  • I do not think it is open source that needs profit
    as much as it is that John Ousterhout needs profit. I certainly do not begrudge him the right to earn money, but let's not confuse the relationship of who needs what.
  • >Obviously you don't want open source to go
    >anywhere. Me I want to have sources for the OS and
    >Language and I want to use successful OS's and
    >languages.

    Linux was a pretty darn good language long before RedHat, etc. began to commercialize it.
    The whole POINT of free software is that it doesn't need any money to fuel it.
  • So are you saying you don't use X-Windows?

    I'd say it's far easier to program GUIs in a GUI at times. I think SOME ammount visual tools are pretty darn useful when developing a large application.

    I'm a diehard text-editor guy when it comes to HTML, but I can understand if some people want to use visual HTML tools. I don't say they're not "real" programmers. (In fact, I'd say some amount of automated HTML tools might be useful on a really large scale site, which I haven't done myself.)

    Putting down people who use certain tools is pretty lame. Different people have different needs and wants.
  • I think he made a really good point- commercial companies can support and add on to an OSS project. That way it's the best of both worlds- hackers and developers can use it, and end users can enjoy the benefit of the software.

    There is one problem, though: the developers of the project are not the ones who see the money. I wish more of the companies who adapt open source could pay the programmers who wrote the core.
  • Free Software + Commercial Support == Good

    Free Software + Proprietary Software == Bad


    What exactly is intrinsically evil about proprietary software? I was under the impression that one of the tenets of _both_ communities was that people had the right to release their source or hold on to it as they wished.


    I agree that in a purely proprietary world, there is a strong tendency to produce bloated, overpriced, low-quality software (coughcoughMicrosoftcough), but in a purely non-proprietary world, you would have a lot of starving programmers. Being tech support doesn't cut it. This has been brought up by many people already.


    IMO, the best kind of system is pretty close to the one that we have now (or will have in a year or two), with both proprietary and non-proprietary software on the market. Open software is wonderful for keeping proprietary software vendors honest. If Windows gets sufficiently bad, then Joe Average User will be willing to go through the headaches of Linux installation just to get away from frequent blue screens. So, proprietary software vendors are forced to put in at least _some_ quality control, to the relieve of Joe Average User, and hard-core programmers and open-source advocates have their open OS and applications to play with.


    But starting a Jihad against proprietary software? Come on. If it's as bad as the rabid open source advocates say that it is, it will die on its own when faced with open source competition. Step down from your pulpits and write code for once.

  • When talking about this point, the argument that "programmers need to eat" doesn't apply: as Red Hat Software shows, a software company can feed programmers without writing any proprietary software at all.


    How many programmers?


    Look at it another way to put it in perspective:


    How many programmer-years went into developing Linux and everything that runs on it?


    How many programmers are paid by every distributor and open-source development company?


    It seems to me that there is a large discrepancy here. Some open-source coders are paid for their efforts, but most aren't. The "programmers need to eat" argument still holds. Postulate a model in which everyone who codes gets paid for their efforts at a salary consistent with that they would be earning coding on proprietary projects, and I might jump on to the "down with proprietary software" bandwagon. Until then, I fail to see why both alternatives can't exist in the world.

  • The point re. Open Source tending to be disorganized is IMO quite valid, and the poster was reasonably polite. Why is this post at -1?

  • I always find it interesting when someone bitches on the kernel list that Linus bounced their patch. Wait until people start sending bug fixes into Apple, and we'll see how big the 'community' is.

    Apple's 'community' is probably intended to be much more narrow than Linux's, namely I wouldn't be suprised if Adaptec, ATI and other hardware vendors are the only members, along with a few Stanford students with friends who work in Cupertino.


    --
  • Some free software purists object to the commercialization of open source software. They believe that the most important aspect of open source software is that it is free; by this standard, any association with proprietary products tarnishes the software.

    Free software purists don't object to the commercialization of free software / open source software.

    The most important aspect of free software is that it is free. As long as it is remains free, it can be commercial and no one has a problem with that.

    Free doesn't mean $0. Free software can, of course, be commercial.

    And yes, any association with proprietary products tarnishes the software.

    Ousterhout should read the definition of free software as stated by the Free Software Fundation.

    Forget about TCL, try Guile.

    AFC

  • it'd be nice if that effort had gone into a frontend for Guile, rather than ports of yet another limited language.

    That would have been very nice.

    Forget about TCL, Guile is the answer.

    AFC.

  • TCL is a jit byte-compiled platform-independent scripting language with a feature-set to rival even Perl.

    Yeah, but the shell-interperter-ish syntax is too awful to contemplate. Regardless of its capabilities, if it's hellish to use, I want no part of it.


    It also comes with TK, a platform independent widget toolkit that works seamlessly and with native look-and-feel under X, Windows, and MacOS.

    There are tk bindings for a lot of languages like perl, python, etc. (In fairness, AFAIK tcl had tk first, right?) It's a strength, certainly, but since it shows up on both sides you kinda have to cancel it out IMHO.


    All this comparing of languages is silly anyway; so what if I don't like tcl? If you find it useful, you find it useful, and that's that. It's hard to argue against that, because there's really no other objective measure of the worth of a language. Nobody's making me use it, so it's no skin off my ass one way or another.


    -j

  • at my day job I use the Talking Moon visual tools (C++ and J++) and nearly all the time I simply use cout and System.out.print to debug as the visual debugger is so horribly slow (On a PII450/128MB).

    At work I've got a PII400 w/ 128MB RAM; I use VC and it ain't that bad. Actually I sometimes use VC at home on a 266 MHZ K6 with 32MB ram and it's not unbearable. While it's contemplating its navel, I get some time to think :)

    What *does* piss me off is the "visual" parts of MSVC. For example the resource editor, and the dreaded "#include "afxres.h"". The lcc-win32 resource editor doesn't float my boat, but writing dialog resources in a text editor blows. So it'd be nice if I could use MSVC's resource editor without having to strain out a lot of portability-prevention crapola after every time I save the file. No such luck. Hey, fine, they can make their own products however they like -- but I'm equally free to say they suck. It's a basic problem with the competitive-market approach to software design: There's often a great competitive advantage to be gained by deliberately breaking one's own products.

    I refuse to use MFC on non-work projects (it's horrible, it's dying anyway, to hell with it), but at work I have to. So I have to use the loathsome "class wizard", because there's no other practical way to do MFC event handlers (. . . that I know of, anyway; the prototypes are AFAIK undocumented). But the wizard thing is so fucking fragile, it's not funny. It's also not even remotely type-safe. You can assign a function with a totally wrong prototype and never know it. The problem is that, as far as I can see, you have to either use the stupid "visual" crap for literally everything (which is very time-consuming and annoying), or else waste years of your life becoming an MFC guru.

    MFC doesn't make very many things that much easier, and it makes some things harder. The depressing thing is that there are "programmers" out there who don't know anything else. In fact, for small projects, it's easier and quicker to do it all in straight C. For large projects, you've got time to roll your own framework (typesafe, well-designed, suited to your particular program) and do it right. Ummm . . . for some 2-3 month sized projects, MFC makes sense.

    Compared to a sensible, well-thought-out "RAD" tool like Delphi, MFC/MSVC doesn't look very good. Part of that is the lack of abstraction and so forth, part of it is the fragile, afterthought-ish nature of most of the "visual" things, part of it is the bizarre lack of anything like a layout manager (Delphi is very nice in that respect), and a big, big part is the fact that it's all tied to their "dominant[sic]-view architecture", which is well-suited only to a small subset of the actual programs that people actually write. It's the usual Talking Moon one-size-fits-all Procrustean Bed approach: "Sir, these sleeves are too short. Pardon me while I remove Sir's hands. Ah yes, much better."

    As a text editor, MSVC is very nice :)


    -j

  • Can you please try tcl/tk before complaining about it?

    I did. IMHO tcl is an ugly and painful language to write in.


    You can start creating GUIs that run in Windows, Linux and Macs in an afternoon

    Hey, I did that too. It was pretty neat. tk is groovy.


    -j

  • Heh. "NT: The software that works". Okay, it's a deliberate troll.

    Still. Just because he's a moron doesn't justifiy zapping him. A lot of morons in favor of free software do not get zapped on Slashdot. It's unfair.


    -j
  • Yes, Free Software and commercial ventures are compatible. But he is (also) talking about Free Software combined with proprietary products which aren't compatible.
  • I see business and OSS as a good pair. No offense, but one of the reasons that *BSD's never got very far is that they never attracted business. *BSD's have been around longer than Linux, and they are just as stable, but why have they always been religated to just being a passing hobby. The way they are licensed never attracted commercial attention, therefore they never got more than a very small foothold in the commercial sector. They remain primarily a college student's hobby.

    On the other hand, the GPL was designed to explicitly give entry into the commercial sector. It allows, and even encourages commercial pursuit of the code which is licensed under it. In order to attract and keep active talent, you ultimately need to have a way to make money with the code. You can't realisticly expect programmers to continue to add to the code after college, if they can't make money. Once you start pursuing a career, and having children, your philosiphical outlook on "Free" software begins to take a second row seat to these more pressing needs. GPL'd software allows business to make money for their efforts, which means that developers get paid. Whether you like to admit it or not, $$$$ will always play a very important role in your life. No offense, but we all can't live like RMS. I don't stand to judge his choices, but I will say that I will not choose the same path as he has. Every person has the right to choose how they wish to lead their lives, and I choose to participate in the money driven ecocomy in which I find myself.

    GPL, in my opinion, strikes a carefull balance between the desires of a world with "Free" software, and the needs of a money driven society. It isn't perfect, but it is the best we have for now. As such, I think that business interest in Linux is a good thing. It helps to assure that there will always be talent furthering the cause, and improving the code. It brings recognition to the software, to the cause, and ultimately to the developers that make it happen. It would be in our best interest as a community to learn to manage the problems that business brings to Open Source Software, instead of running away from business, and fragmenting as a community. Bickering and fighting won't make the issue go away, it will only weaken us.

    -Master Switch out
  • Hmmm, you are right to point out that *BSD was copied quite a bit, but as a pure system in itself, it never was very successfull. Linux, on the other hand, has become quite successfull on it's own. This, I think, is more important than having everyone copy your code, but not ever pay you for it. Berkley ,I am sure, got paid. But the actuall students that helped develop it were left floating in the breeze, so to speak.
  • "Development tools are often missing."

    John keeps saying this, but what the hell is he talking about. Development tools are the one area where, IMO, free software has excelled. I mean, you have your choice of just about any programming language in existence, a dozen good IDEs, the best text editors, etc.

    And when it comes to any particular app, you can't have a development source much better than the source code.

    Or is Ousterhout just pimping TCL again. ;)

    ---

    "A society that will trade a little liberty for a little order will deserve neither and lose both."

  • I read the manual. it does not seem to have any *data structure* aside from strings.
  • of course, that was 5 or 6 years ago and the language could've grown since then.
    I'm not really interested in learning lots of little languages. would prefer to learn a few "broad-spectrum" ones.
  • there are so many people that want to create new programming languages, tho, that the ones that will get to see their creations widely adopted are those that are willing to distribute their code (compiler, interpreter, etc) under an open-source license. or so it seems to me.
  • in response to your first paragraph, ever heard of *Sun*? they used BSD as a springboard to the development of their first OS, SunOS. (later on they contracted with ATT for rights to use code from SysV.) they saved about a million dollars in OS devel costs during their startup stage by doing so. other Unix workstation vendors did the same thing. in 1993 or so, when MS needed to add a TCP/IP protocol stack to Windows, I heard from a reliable sounding source that they just copied the stack from the BSD sources, just like almost every other OS (with Linux being a notable exception) did. BSD code is used as the underlying OS for Oracle's (and some other company's) network computer. NeXTstep contains much BSD code (also code from the Mach project, which has a BSDish license.) in fact, BSD source code ended up in more proprietary OSes than any other large block of code.
  • your follow-up still contains false information, but I no longer feel like correcting you.
  • Guess why? Because no real person needs one

    Well, maybe no "real" person needs one, but they sure do make your work go a hell of a lot easier. They let you ignore the tedious crap, and actually get to work on the important stuff.

    For all its many flaws, the overall paradigm of VB and so on is incredibly important. It allows one to develop much, much faster than without.

    An average programmer writes a program. A good programmer writes a program to write his programs for him.

    Myself, I am working on writing a GUI interface-builder for Unix, similar in style to VB (except supporting C code, rather than BASIC). And you'd better believe me... just writing a rudimentary one for Gtk+ is proving to be a major hassle.

    But I'm still going ahead with it, because it's a gap that needs to be filled -- there is almost nothing currently out there that will do the job.

    And while I may not need such a tool, I could sure as hell use one.
    --
    - Sean
  • Version 2.0... :-)
    --
    - Sean
  • Is tcl really that hard to implement? It always looked to me like it's made up of simple string substitution and interpretation, roughly the same effort as writing the evaulator of a Bourne shell.

    Boy, you just don't know what you're talking about, do you? TCL is a jit byte-compiled platform-independent scripting language with a feature-set to rival even Perl. It also comes with TK, a platform independent widget toolkit that works seamlessly and with native look-and-feel under X, Windows, and MacOS.

    What made you think you could just spout off about TCL and no one would notice?

    -Sam

  • I think I really don't care if it is subversive at all. Most of what the software industry does it cater to the people who buy it. If all you have is free software or even a mix of the two you may just have crappy software with some underlying good stuff.
    If linux were ran that way we would have something similar to NT but with a few benefits. It's people who think with the common man or even the poor man who really do justice to all of us.
  • It's interesting that many see a requirement for companies operating with open source licences to 'give back' to the open source community. It is interesting in two ways..

    Firstly, the open source community is seen as an entity that has given something to that company. The individual contributions of the expert programmers are not distinguished.

    Secondly, it denies ESR's thesis that the reason that programmers do the work is to enhance their reputations. If work on a commercially-driven open source project enhances your reputation, then you've just gotten as much as you can expect to get.

    So although the programmers have recieved something in return for their efforts, there's a perception that this is not enough, and that the community itself should benefit somehow. Why? Aren't the programmers who worked on the project happy with their lot?

    Perhaps it is a case of the 'freeloaders' in the system (the non-participating programmers) seeing a possible angle to get more for themselves?
  • I think he is thinking more (l)'user-friendly', ala DreamWeaver for HTML, instead of Emacs.

    I know what I use.....
  • An idea: if every software programmer and company gave their products away for free, the software industry would be a poor one.

    If no one gave their products away for free, and software products were of value to others, software producers would earn wealth to build better products.

    Anything that promotes the former idea of free products reduces the funds available for the creation of new ideas and products.

    Mixing for sale and free is a concession to less innovation. People will buy things, and pay for them to be produced, if they value them. Giving them away for free is not a stimulant to innovation. If anything it promotes organizations who have another source for their revenues (the government) at the expense of autonomous individuals and companies. Making money is the best way to stimulate innovation.
  • I've been keeping track of the use of Tcl/Tk various projects for a number of years now, and I'm continually amazed. We have a few examples profiled at http://www.scriptics.com/scripting/success.html
    These profiles are of large companies like
    Motorola, Healtheon, NationsBank, and more. There are hords of smaller companies, too.
    Our FTP site services 7 to 10 thousand downloads
    of Tcl each week.
  • I'd like to respond to a few of the comments in this thread.

    First, several people have suggested that companies like Scriptics are leeches that profit from open source software without giving anything back. This isn't true for Scriptics or for any of the other open source companies I know of. We are continuing to develop the open source Tcl/Tk software at Scriptics and we will continue to release it freely, as has always been the case. For example, right now our *entire* engineering staff is working on open source projects such as the 8.1 releases and the new Tcl Extension Architecture. One of our missions at Scriptics is to ensure that we advance the open source Tcl/Tk core software faster than would have happened if Scriptics didn't exist. The open source nature of Tcl/Tk forces a certain degree of honesty on us: if we don't provide great stewardship of open source Tcl/Tk, the community can always start a separate development track and take control from us.

    A second comment was that I started Scriptics just to make money. Actually, my reason for starting the company is that I believe it's the best way to advance Tcl. As the company becomes more and more successful, we will have more and more resources to pour into the open source software. I really believe that a properly executed hybrid model is the best way to enhance the usage and lifetime of open source software.

    A third comment is that open source software doesn't need any proprietary tools or extensions built around it: everything can
    easily be done in an open source fashion. So far, history suggests that this isn't the case. Virtually every successful open source package has some commercial products build around it: if the open source packages were truly self-sufficient, there would be no need or demand for the commercial products. I'd be delighted for other people to create open source tools around Tcl, or even duplicate in open source form some of our products. We'll even feature them on our Web site! There's so much interesting stuff to do that I'm not worried that Scriptics will run out of ideas for things to sell.

    The bottom line to me is that (a) the open source community is better off with Scriptics here and (b) a bunch of new commercial tools and extensions are available for those who want to pay for them. Is this really such a terrible thing?
  • I agree totally with this comment. I am a consultant offering my Linux expertise to anyone who will pay. In short: I make a living from Open Source.

    I don't make a lot...yet....but I expect to move into Bill Gates' mansion any day now.

The following statement is not true. The previous statement is true.

Working...