From: Lew on 13 Feb 2010 18:44 Lew wrote: >> There should be a much wider gap between the pay scale of the good >> developer and that of the putz or newbie. Something akin to the gap >> between top actors and those who have to wait tables, or top pro >> athletes and those in the minor leagues. Joe Wright wrote: > Linus Torvalds writes free software. He is handsomely compensated. I > understand that Richard Stallman is not destitute either. Hmmm. How handsomely? How far from destitute? How does their compensation compare to, say, Drew Brees's? Or Sean Payton's? What is the ratio between their compensation and that of someone starting out as a developer? How does it compare to the ratio between Peyton Manning's (of the Indianopolis Colts) compensation and Brenan Jackson's (of the Pittsburgh Colts)? I am espousing pay gaps akin to those of actors or pro athletes. -- Lew
From: Lew on 13 Feb 2010 18:51 Lew wrote: >>> There should be a much wider gap between the pay scale of the good >>> developer and that of the putz or newbie. Something akin to the gap >>> between top actors and those who have to wait tables, or top pro >>> athletes and those in the minor leagues. Joe Wright wrote: >> Linus Torvalds writes free software. He is handsomely compensated. I >> understand that Richard Stallman is not destitute either. Hmmm. The fact that they write free software is immaterial to my point. -- Lew
From: Öö Tiib on 13 Feb 2010 19:23 On Feb 13, 5:09 pm, Lew <l...(a)lewscanon.com> wrote: > James Kanze wrote: > > Logically, I think that most of the techniques necessary for > > making really high quality software would be difficult to apply > > in the context of a free development. And at least up to a > > Nonsense. Free software has a much higher rate of adoption of best > practices for high quality than for-pay software does. > > You say so, too. It's the "logically" with which I take issue. That > free software uses the best techniques and has the highest quality in > the marketplace is entirely logical, in addition to being an observed > fact. You just have to avoid false assumptions and fallacies in reasoning. Not sure what you mean. There are no such logical binary connection. Opposite is as easy to observe. Just download few C++ code-bases at random from places like sourceforge.net and review them. One produced by using good techniques is really hard to find there. Most code there has quality so low that it would be unthinkable in professional software house to pass QA peer review with it. It is easy to logically explain since most of it is hobby of non-professionals who find software development amusing or professionals of other language who learn C++ as hobby. Results are slightly better with larger and more popular open source products but that is often thanks to huge tester and developer base and not good techniques used. In best shape are open source projects that are popular and where commercial companies are actively participating since they need these for building or supporting their commercial products. Again it is easy to see how the companies are actually enforcing the techniques and quality there and it is likely that the companies use even higher standards in-house. Worst what i have seen is the code written by in-house software department of some smaller non-software companies but that is again easy to explain by workers of that department obfuscating their work to gain job security. So all things have logical explanations and there are no silly binary connections like free = quality and commercial = lack of quality.
From: Malcolm McLean on 14 Feb 2010 02:34 On Feb 13, 4:59 pm, Arved Sandstrom <dces...(a)hotmail.com> wrote: > Most software programs I have to work > with do not have show stopper bugs, and realistically do not need to be > "recalled". > I'm using Matlab at the moment. It seems to crash about once every two days. A bug in a C subroutine will also take down the whole system. That's irritating but liveable with. However what if the results of my scientifc programs have small errors in them? No one will die, but false information may get into the scientific literature. If I was using it for engineering calculations, someone might die. However the chance of a bug in my bespoke Matlab code is probably orders or magnitude greater than a bug in matlab's routines themselves. So does it really matter?
From: James Kanze on 14 Feb 2010 07:46
On Feb 13, 3:09 pm, Lew <l...(a)lewscanon.com> wrote: > James Kanze wrote: > > Logically, I think that most of the techniques necessary for > > making really high quality software would be difficult to > > apply in the context of a free development. And at least up > > to a > Nonsense. Free software has a much higher rate of adoption of > best practices for high quality than for-pay software does. Really. I've not seen any free software which adopted all of the best practices. In my experience, some of the best practices require physical presense, with all of the developers having offices in the same building. (The experiments I've seen replacing this with email and chat haven't turned out all that well.) This is far more difficult for a free project to achieve than for a commercial one. > You say so, too. What I said is that apparently, many commercial shops don't take advantage of their advantages. For example, one of the key factors in developing high quality software is communication. And communication is, or should be, easier when everyone works in the same plant. Never the less, one continually hears stories about lack of communication in such cases; about internal competition even leading to misinformation. The potential in a commercial organization is higher, but it's clear that many such organizations aren't using it (and that a few free projects are using everything they can). > It's the "logically" with which I take issue. That free > software uses the best techniques and has the highest quality > in the marketplace is entirely logical, in addition to being > an observed fact. You just have to avoid false assumptions > and fallacies in reasoning. First, free software doesn't have the highest quality. When quality is really, really important (in critical systems), you won't see any free software. I'm certain that no free software project is certified at SEI level 5, and from what I've seen, very few reach SEI level 2. Some commercial organizations (one or two) are certified at SEI level 5, and I've worked for some that were around level 3. Most of the ones selling the software we usually use (e.g. Microsoft, Sun, etc.) are still at level 1, however. > > point, they actually reduce the cost of development. So > > theoretically, the quality of commercial software should be > > considerably higher than that of free software. Practically, > > when I actually check things out... g++ is one of the better C++ > > compilers available, better than Sun CC or VC++, for example. > > Valgrind is at least as good as any of the commercial memory > > checkers under Linux. And Subversion is at least as good as any > > of the version management tools, excepted ClearCase (and the two > > really address different models of development). > ClearCase is an unwieldy pig. You hold that up as an example of high > quality? ClearCase uses a different model than any of the other version management tools I've used. In particular, the model is designed for large projects in a well run shop---if your organization isn't up to par, or if your projects are basically small (just a couple of people, say up to five), ClearCase is overkill, and probably not appropriate. If you're managing a project with five or six teams of four or five people each, each one working on different (but dependent) parts of the project, and you're managing things correctly, the ClearCase model beats the others hands down. My statement wasn't really clear, however: it's the ClearCase model which makes it the best choice in such cases, not the quality of the software. I've no reason to belive that ClearCase is developed using a better methodology than anything else. > Admittedly, it's better than a lot of other version-control > products, but not nearly as good as the free ones. As one of the free ones, in terms of quality, perhaps. The model is different, so it's very difficult to compare. In cases where the ClearCase model is preferrable, ClearCase is stable enough that you're better off using it than something supporting a different model. > > There used to be a lot less free stuff available, and it was > > worse. (It doesn't make sense to me, either, but those are > > the facts.) > No, they're not the facts. Since the beginning of free > software, much of it has been very high quality. I doubt very > much that the ratios have changed much, or if they have, > perhaps you could substantiate your "facts". Did you actually try using any free software back in the early 1990's? Neither Linux nor g++ were even usable, and emacs (by far the highest quality free software), it was touch and go, and depended on the version. Back then, the free software community was very much a lot of hackers, doing whatever they felt like, with no control. Whereas all of the successful free software projects today have some sort of central management, ensuring certain minimum standards. > I don't dispute that there used to be a lot less free > software, insofar as there used to be a lot less software of > any description. It's your undefined use of "worse" without > evidence that I dispute. I was there. For the most part, free software was a joke. > > I think that part of the problem is that a mistake in a > > program will affect every instance of the program. Most > > recalls for cars, on the other hand, only affect a small > > subset of the total production. > A mistake in a car model enough to effect a recall affects > every instance of that model. Bugs in software, OTOH, affect > only a small subset of the total production of software. I'll admit that that paragraph is just speculation on my part. And it's speculation with regards to the motivation for not providing guarantees: the real issues are far more complex. > You haven't been paying much attention to the news lately, > have you? The percentage of Toyota's production which is affected is considerably smaller than what would happen if Microsoft were required to recall Windows. On the other hand, of course, software allows user installable patches (what Microsoft does when there is a critical bug), where as with a car, you generally have to bring it into the shop, at much greater cost to the manufacturer (and to you). -- James Kanze |