Slashdot Mirror


User: tpv

tpv's activity in the archive.

Stories
0
Comments
319
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 319

  1. You seem to have missed his point. on Bertrand Meyer's "The Ethics of Free Software" · · Score: 2
    Apologies for the typing errors here - two of the fingers on my primary hand are taped together (Hmm, mental note - Ask Slashdot how to touch type without full use of fingers)

    He wants a world where nothing is free
    Does he? The main thrust of his article (although it wanders a lot) is that free (in so much as anything is really free) is fine, but it isn't necessarily better or "the only moral action".
    you do *not* stand about and snivel that the other developers haven't fixed the problem yet - they may have things they need to work more than whatever bugged you
    The point in question was whether open-source software meets the hype about reliabilty. Any piece of software in which known bugs go unfixed, does not provide the level of reliabity he seeks. There are certainly factors involved (availabilty of the developers' time; that he can fix it himself; that it has no warranty anyway), but the use of such arguments only supports his position. If the argument that "Open Source is more reliable" really means that "Open source is more reliable when we have time to fix it, and if not, just do it yourself", then it should be argued as such. Given the existence of such factors, Meyer's point is correct. For some free projects, reliabilty will be a problem. This is equally true in non-free projects. Perhaps the situation is really "The average reliabilty of OSS is higher" but that's not really meaningful given the range of software available (High profile-commerial software / backyard shareware / high profile OSS / "I whipped it up last night" OSS). Maybe "High profile OSS is more reliable than its equivalent non-free counterparts". But the point is, that the initial argument by the OSI, "OSS is more reliable" is not true at face value.

    fit the OSS product to fit your needs
    If I need to hire a C-compiler developer everytime I find a bug in gcc, then it's probably not a worthwhile investment for me, if I can simply buy a licence for a (non-free) compiler that suits my needs. As Meyer repeatedly points out, it's all a choice of some set of values/ethics over others. Meyer's personal crusade has always been the quality of software engineering. In his mind a working piece of proprietry software is a better choice than an almost-working piece of free software. You may not have that set of values, but you can't really tell him that his values are wrong.

    he is working from a set of preconcieved results
    This is definately true. His big rant on gun-control reeks of personal moral decisions. I happen to agree strongly with him, but he didn't present the issue very well.
    Eric is a self-confessed gun nut, and DARES to be pro-gun on his own, personal website,
    ESR needs to separate his OSS "work" and his personal web-site more. When he hosts the much praised "The Cathedral and the Bazzar" on the same site as his gun pages, he links them into the same package in the eyes of the reader. OSS and Guns become clearly linked as the great passions of the leader of the OSI. This does OSI a great disservice. It however has very little (IMHO) to do with the ethics of Free Software.

    Free software is free [because] it was developed at public expense, .. given away by a company, or .. developed by someone with no other monetary concerns .. Apache
    Apache proves his point. The original basis for Apache was Free Software written at Uni of Illinois (I think) - tax payer funded. People who now contribute to Apache do it for several reasons. I'll try and list them here.
    • Their company uses it and needs a bug-fix/enhancement. Company pays for it. Privately funded.
    • Their uni uses it. Tax-payer funded.
    • They use it non-commerially. They donate their time to fix/enhance it (for their own good). Donated.
    That's it. That's the point. Someone's time/resources went into the patch. Whose? Why? The FSF/OSI/SPI (etc) suggest that the fruit of the funder's resources should be able to be used freely by everyone. Why is that the case? Justify your answer. Meyer attempts to argue against that.

    mythical Closed Source product, so good ... Can I have one of those?
    You could if BM has his way. He is big on robust, well engineered reliable solutions. So is NASA. I believe that the software controlling the shuttles has such guarantees. Regardless, you just accepted his point. If such software existed, would you be willing to give up your "freedom" (the source) in order to use it? If so, then your value system is NOT the same as RMS's. He claims that nothing is more important than the freedom of the software user. Anyone who would use the "super-product" is saying "At some point, software quality becomes more important to me than the freedom of the source". Most of us agree with that. This is one of Meyer's points. Free software is all well and good, but is it meeting the real needs of users? Do people really value freedom over quality?

    Even RMS has to juggle his values. He used proprietry system to develop GNU. He was in effect saying "I will give up my freedom in order to be able increase the freedom of others". A noble jesture, but the fact remains that he has to sacrifice some things to acheive his end goals. Two of my goals are to write good software, and to spend time doing things I enjoy. I will give up freedom of the source, if I think that if ultimately advances my goals.
    I should have the right to sacrifice that freedom if I choose to. So therefore, the existence of non-free software only serves to offer me that choice. It never forces me to give up my "right" to the source, because it never forces me to use the software. It does offer me the option of giving up the source if I feel that the benefits it offers are worth it. Anytime RMS argues that the proprietry system is evil, he attempts to remove my right to make that choice.

    generate a straw-man that can be easily attacked, then attack it
    That's because RMS and ESR set themselves up as straw-men. By holding relentlessly to a position that they do not adequately justify, they become straw-men. All Meyer does is push their positions to the obvious conclusions. If OSS is so reliable, why do I get these bugs? If freedom is more important than quality, then does that mean a free product without warranty is morally better than a closed product with warranty? RMS and ESR are straw-men because they don't provide adequate support for their positions.

    I would be ashamed to have a piece of this quality on my own website
    And yet you posted this to slashdot.

    --

  2. Speed on Why Not MySQL? · · Score: 1
    Speed is NOT important. Processing power is SO cheap that saving cycles is irrelevant, especially for a constant different. There is no order of growth problem, it might take 2-3 times as long, that's irrelevant, but more horsepower.

    Speed is important.
    But the correct way to provide for speed efficiency is to ensure that the software scales proportionally to the machine speed, so that throwing more hardware at the problem will work.
    Table level locking (for example) can NEVER be solved sufficiently with hardware. Fast hardware might help to bring the duration of the lock down, but it really doesn't scale.
    Row level locking (or even page locking) is slower in the most basic case, because it comes down to the difference between:
    acquire_table() ;
    change_row(1, row[0] ) ;
    change_row(13, row[1] ) ;
    change_row(56, row[2] ) ;
    release_table() ;
    vs
    acquire_row(1) ;
    change_row(1, row[0] ) ;
    acquire_row(13) ;
    change_row(13, row[1] ) ;
    acquire_row(56) ;
    change_row(56, row[2] ) ;
    release_rows( 1, 13, 56 ) ; // must release atomically
    That's more operations, and therefore more cost. But it scales to having 8 processors running, each accessing different rows.

    Of course, if all you want is to run a small scale web site on cheap hardware, then you probably don't care about scalability (though it will come back to haunt you when the site grows) and you will probably be cursing the database the does row level locking when you just want it to hold the table and be done with it.

    mySQL has a place. It's just nowhere near me.

    --

  3. Cutting corners on Why Not MySQL? · · Score: 1
    If its aim is to provide efficient reads, it can do that and still provide basic features people might want/need.
    Triggers, for example, should be able to be provided with almost zero cost. If a table has no trigger loaded, then there should be a very negligible cost involved.
    Providing triggers and foreign keys would not prevent mySQL from having high speed reads. If someone chooses to make use of those features, they will pay a penalty, but chances are, if they want them, then the it's a cost they're willing to pay. AND they are probably already paying the cost be simulating them in client-space.

    And I completely fail to see how not having stored procedures can be considers GOOD for performance. A precompiled, cached proc, should provide speed increases over repeated client queries.
    Same goes for views, although the speed gain isn't as high.

    The fact is that the mySQL team has chosen not to implement features which would enhance the product, not detract from it. They surely have their reasons (Other priorities/Lack of time/Lack of manpower/Laxiness/Stupidity, I don't know), but the product is incomplete, and from a purely technical point of view, incorrect.

    --

  4. Re:Atomic Operations are key on Why Not MySQL? · · Score: 1
    NT as an example of microkernels is pathetic.
    However, that's not to say the microkernels are bad. An efficient implementation can reduce the cost dramatically, and the clean design can provide efficiencies in other areas.
    That's why QNX (microkernel) and BeOS (minikernel) work, and work well.
    All things considered, a microkernl is slower than a monolithic kernel. But the speed-vs-correctness argument is not and should not be the primary issue. Look at that x86 assembly OS that was announced last year (V2OS or something like that). NO MEMORY MANAGEMENT. Why? Because it's too slow. Well, sure if you want to get every last cylce out of your 486, then go for it, but I'll just buy a better PC, and use an OS that, while slower, does things 'correctly'.

    --

  5. Re:moderate this up and one other item.... on Shut Down Metallica, Not Napster · · Score: 1
    Ah OK, so they're going to make up for infringing people's copyright, by reproducing the work even more?
    Sorry, but Slashdot took COPYRIGHTED material and made a book out of it, and thinks that the solution is to just srpead it around some more? Get real.
    Imagine the uproar that would have occured if someone else took a collection of slashdot posts and turned them into a book. Andover would have sued. The slashdot community would have mail bombed them. The would be uproar.
    Jon Katz is a total wanker, and if slashdot ever violates my copyright, they will hear from me.

    --

  6. We won't learn to live with this on Your (Australian) Criminal Record Online · · Score: 2
    I'm pretty sure it's an Asimov story, but I can't recall the title.

    There's a similar story I read once, where a society developed technology that allowed the ultimate sharing of information. Basically it was a belt, and when you two people both wore one, they shared all knowledge. So if you knew how to program in x86 assembler, and wore a belt, and I also wore a belt, then I also would know x86 assembler.
    The short of it is, that this society allows travellers to come into their world. The travellers find out what the belt does, and steal it. Once the travellers take it back to their own world, they copy it (since they now know how to make them), and share it around, but ultimately their society falls into chaos as no one has any secrets any more.

    SECRETS are a GOOD thing. There are things I don't want to know.

    --

  7. Re:Think again.. on GPL/LGPL Issues - Moving GPL'd Code into Libs? · · Score: 1
    The form of use you postulate is actually derivation.
    Only if you pre-suppose that run-time loading of a library constitutes derivation. That is yet to be proven.

    you have to heed the language regarding derivation.
    Assuming that running a program can cause a derived work, then from point 2:

    You may modify your copy or copies of the Program .. provided ..
    [a] you cause the modified files to carry prominent notices ..
    [b] cause any work that you distribute or publish ..
    [c] If the modified program normally reads commands interactively when run ..
    These all apply to the original person who converts the app into a library.
    But once that is done, the person linking is not modifying files, so (a) does not apply.
    The dervation is caused at run-time when you link against the library. Since the derivation only results from running, it is technically impossible to distribute (unless you have a distributed OS). Assuming that it is the user running the app, who has decided to add a GPL'd plugin to a proprietry app, then they alone have made the derivative, and unless they distrubitue it, point (b) does not apply.
    Similarly, point (c) is irrelevant, as they will not be changing the output of the library. The person conveting the app to a lib has to make sure this point is covered. The user doesn't, since they have changed no code.

    So under point 2, the user isn't breaking the GPL. Is there another point in th GPL that covers this?

    However, if it happened that your library was a mere stand-in, something so insufficient that the GPL version would always be used by your customers, or if its license terms or distribution were such that you could not reasonably assume that the user would make use of your library, it would be easily demonstrable that your library is simply a device for circumventing the license
    This is basically the case with python is it not? Almost everyone uses python with readline, but python is written so that it does not require readline. Guido does accept that Python becomes GPL'd when linked against readline, but is not GPL'd otherwise. His reason for not requiring readline is strictly a licensing one. He doesn't want python to have to be GPL'd. So, now consider the case where I release my code under an OpenSource licence that requires derivatives to be released as patches. I also provide a dummy readline stub, but allow users to link against GPL'd readline if they wish. Now the case where my code is under something like the Sun "Community" licence. Same thing, user can link against readline if they choose, but I don't want to make my code GPL'd.
    Which of those are legal and which aren't? I would think all of them are. I imagine you don't (since the third case is really proprietry software with source). Who breaks the GPL? The developer who gives their uses the option of linking against readline? Or the user who does the linking and therefore makes a derivative?

    Also, shipping a library with a product that makes use of it does not satisfy the definition of mere aggregation. Aggregation applies to unconnected products.
    I see where you're coming from, but from my POV, if you can't prove that the two components are derivatives when shipped separately, then I read the GPL as saying that their aggregatation does not change that fact. (ie that aggregation has no bearing on whether a product must fall under the GPL)

  8. Re:The author selects his/her licensing terms on GPL/LGPL Issues - Moving GPL'd Code into Libs? · · Score: 1
    Actually a safer way of going about it is:
    1. Design an API
    2. Publish API on your web-page
    3. Write a BSD/LGPL/propriety implementation of the API. IF the API is as simple as play_sound_file( FILE * ), then your lib need only play WAV files.
    4. Publish above library.
    5. Write your program that uses API to load library.
    6. Use the GPL'd code from the mp3 player to write another API conforming lib that plays sounds (this one handling mp3 too).
    7. Publish GPL library.
    8. Make sure your app works with any (ie both) API conforming libraries.

    Someone (Bruce?) will probably claim that this is either:
    • An obvious attempt to avoid copyright, but if it weren't for the fact that we've discussed it here, I don't see how it could be so obivous. It seems legal to (non-lawyer) me.
    • Unethical, which it may be, but we're talking law here, which is a different matter
    • Removing the basic freedoms of all your users who don't get the source to your app, which is bollucks since they were never going to get the source anyway.
    • Going to send you insane, give you cancer, cause your children to each their toes for breakfast and cause you to listen to a mix of Spice Girls, Britney Spears and N*Sync. All of which are probably true.

  9. Re:I think you're going about this the wrong way. on GPL/LGPL Issues - Moving GPL'd Code into Libs? · · Score: 1
    Instead of considering what you might be able to get away with in a court of law, please consider what the wishes of the other copyright holder are and what you can thus do ethically with his code
    Sorry, but once people move into attempting to restrict their work with legal contracts/licences, they (IMHO) loose all rights to revert back to "but that's not what I meant" arguments.
    If you want to have your work used as you see fit, then release with a list of conditions for use that SAY what you want. But if you're going to try and be tricky and attempt to get legal protection so you can sue every company that uses it, then you have to also put up with people who can get past the licence.

    Once you involve the law, you have to submit to it entirely. You can't have it both ways Bruce.

  10. I beleive * you're * confused about this on GPL/LGPL Issues - Moving GPL'd Code into Libs? · · Score: 1
    Bruce says:
    You could have two interchangable libraries with the same APIs, and using one could be infringement while the other would not, depending on the library licenses.

    GPL says:

    Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted,

    Using a GPL'd library in ANY way, is legal.

    So my understanding is that if I write a BSD library that provides the same API as the GPL'd one, and then release my proprietry code linked against that BSD code, thne I'm in the clear, since my distribution is legal.
    If the user replaces the BSD code with the GPL code, then that's legal, since the GPL doesn't stop them using it, and they neither distributed, or modified it. They did copy it but it was a verbatim copy, which is specifically allowed.
    Now if I tell them how to do the replacement, then it's still legal, as I'm just distrubting information (speech) which is outside the resrictions of the GPL.
    I can even ship the GPL'd lib with my product, as

    In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

    So all in all, as much as we may not like such a situation, I cannot see where the legal protection is.

  11. Sybase vs MS-SQL on Is there An Enterprise-Level Open Source RDBMS? · · Score: 1
    MSSQL 6+ support online backup and restore, better than any of the others - you can backup the DB while it is still up and running, instead of making a copy of the DB and backing _that_ up. (No idea why they have this and at least Sybase, who had the same codebase, don't. Some Microserf must've briefly channeled a code deity. Weird.)
    *cough cough*
    Whose Press Release did you swipe that from? Sybase certainly does do online backups.
    We backup our Sybase 11.0 databases several times a day, while they are running, while the users are on them, while they are processing.
    It doesn't do online restores, but I'm far from convinced I want that.

    So what was it about MS-SQL that makes it "better than any of the others"?

  12. Column Level Security on Is there An Enterprise-Level Open Source RDBMS? · · Score: 1
    Maybe this elusive column-level security does the same sort of thing, I don't know. Care to explain what it is, so there's a better chance of it getting implemented? :)

    Well, I didn't write the original comment, but:
    In most (all?) RDBMSs, you can only grant priviledges between users (& groups) and objects. You cannot control a user's access to a given column differently to their access to the rest of the table (incidently Sybase does manage this in the sysobjects table, but I think it's system magic, not something available for users tables - somone tell me if I'm wrong)
    If you have a table with UserId,Name,Social-Security-Number, and don't want users to get at the SSN, but to be able to get at UserId & Name, what do you do? There are two options

    1. Split it into 2 tables, which breaks proper normalisation (they all have a 1-1 relatioship so they should be in the same table
    2. Remove access to the table, but create a view into the table that only gives UserId,Name and then grant acces to that.
    This is Column level security - begin able to user's control access to individual columns.

    I disagree though, that this is all views are good for. There are a lot of other uses for views that you get into when trying to share data between systems etc.

    Hmm, on preview I see the correlation between my sig and the post. Completely unintended I assue you

  13. Re:Why use FreeBSD when you have Linux? on FreeBSD 4.0 Released · · Score: 1

    And apache too.
    You can see it particularly with apache.
    No one uses it because it's not under the GPL. And there's next to no development done on it.

    If apache moved to the GPL, imagine what it could do - heck it might even take over half the web-server market.

    (Now I watch for the sarcasm impaired folks to reply)

  14. Re:Okay, I'll bite. on FreeBSD 4.0 Released · · Score: 1

    Theo heads up OpenBSD
    see: http://www.theos.com/

  15. Re:HTML Books on New GIMP Book Under Open Publication License · · Score: 1

    GNU Make? That's a texinfo book,

    True, but the version I read was an HTML tar-ball. (at least I think it was a tarball - I know it was HTML).

    How many people actually write books (that are more than a few pages) directly in HTML? This GIMP book was originally in TeX.


    You are write about the beauty of texinfo, but for me HTML is the most useful output for my current needs. I was planning on buying a printed copy of the make book, but I couldn't find a copy in Australia, and Dymocks couldn't even order it for me. Oh well, it's not like it's the type of thing I'll ever need to read while I'm away from a computer.

  16. HTML Books on New GIMP Book Under Open Publication License · · Score: 3
    When's the last time you read a book that came as an HTML tarball?

    Like the GNU Make book ? (The GNU version, not the ORA one).
    In that case, it can't be more than a week or two.

    HTML Books are cool. I wish that ANSI/ISO would work that out. I'm still using the Draft C++ standard bcs I can get an HTML version of it. I'd happily pay for the final standard, but I'm allergic to PDF.

  17. Re Aussie Beer on From The Australian LinuxExpo · · Score: 2

    You're not from Victoria are you? Real people don't drink VB. It tastes like crap too. There are three really bad beers in Australia - Fosters, XXXX, VB. (in that order). For a real beer, try Coopers. (Or Full Sail if it's your thing) However Hahn is quite good, and Tooheys will do in a pinch. (A New beats VB any day)

  18. You forgot to mention the beer on From The Australian LinuxExpo · · Score: 1

    But thanks anyway.

  19. Re: Binary compatibility on Ask Bjarne Stroustrup, Inventor of C++ · · Score: 1
    I was going to ask this too, so moderate this up :)

    In addition though, an additional problem, and one that is not solved directly by a common binary interface, is the so-called "Fragile Base Class" problem. ie If I add virtual methods to a class, then (for all implementation I am aware of) it forces a change in the virtual lookup mechanism (ie the vtable in most implementations) all derived classes must be recompiled to remain compatible. (There are obviously similar problems with changing anscestors etc)
    This creates massive binary compatibility problems, as if you ship C++ code in a shared library, then you are effectively restricted to each application being tied one and only one version of the lib.

    The reason I am interested in these topics is tied to the fact that (a) I (more-or-less) like C++ (b) I use BeOS which is tied to C++

    BeOS has problems with fragile base classes, but the ABI is more of a problem. How do I link my perl/python/C/Eiffel/SmallTalk/Sather/Pascal/Basic (all of which have potential users on BeOS) to the strictly C++ API? The options are to generate wrappers (either as C functions to call the C++, or by generating some form of ORB), or to rely on the fact that BeOS is using GNUpro, and build some support for hacking into the underlying structure of the GNUpro binaries.
    The C wrapper sux, bcs you just end up reducing C++ down to C, which is hardly the point. Relying on the binary structure is nicer, but not at the expense of compatibility.

    Is there a solution? Or is C++ just not cut out for use in such an environment?