I am not intending a slam, but after some years working as a software tester, I am very aware of the need for structured dedicated testing, which most open source projects don't have. Having devs crawl the code helps, but won't catch all of it - just like proof-reading something you've written, you can catch some obvious things you missed the first time, but you are far better off if you can let someone who is a real editor go over it, too. Open Source means that the bugs will in time get found and fixed, but that still means that bugs are getting found, and usually by folks trying to use the code. Making your end-users into beta testers is not a recipe for good feelings. At least with commercial code they have someone - even a low paid, low forehead tech support chimp - to call and complain to. Even vent. But the OSS answer of "you can fix it yourself" will just piss endusers off. Just 'cuz I'm free to do so, doesn't mean I can, or want to.
How will Open Source handle testing and support as more endusers start putting it on their desktops?
"Can you name a private carrier who will deliver to every single US address, and who will pick up anything for under a dollar?"
No, because NO ONE IS ALLOWED TO. The only thing the USPS will pick up from you (maybe, though good luck actually getting them to come within one hundred yards of your actual physical door) is a letter. They have a government mandated monopoly on delivering them. Period, full stop. They have this monopoly in return for guaranteeing that they will serve absolutely everyone, no matter where in the US they are.
(Which, in fact, they don't do. Neither of my parents can get mail to their homes. My father was randomly assigned a box in a group 3 blocks away, with an address that bears no resemblance beyond city and zip to his street address, despite having a reasonably new house right off a public road. My mother was in fact obligated to pay for a mailbox in a town several miles, she doesn't get free delivery of any sort. And don't get me started on delivery to apartments, where the doors are a few paces apart and would be the easiest door-to-door delivery route the carriers would ever have...)
If the USPS just stuck to their core competency - and were generally competent at it - I'd allow them to implement whatever technologies best suited their needs. Instead, they compete in other markets, waste money on advertising, and ignore local delivery as much as possible. (Why would a monopolist advertise? It's not like folks have other choices.) They invent new services to offer so that they never ever have to shrink their headcount, no matter that letter traffic is decreasing and technology makes the mail they do get easier to handle. $.37 per stamp doesn't seem high, but given how poor the service is this amount is outrageous. They want to keep staff forever? Great, send them out to actually put letters in the hands of the recipients. Make them walk. They'll either quit, or service will improve. Is that so damn hard? Otherwise, earn those thirty-seven cents.
If I really believed they would get useful, meaningful data from adding tracking features I'd be all for it (so I could know where they managed to lose my mail to, mostly.) But I have to believe that this is another excuse to add or retain useless staff and include a higher profit margin service with each delivery. I'd enjoy being wrong, but the USPS has always managed to live down to my expectations.
BTW: I, too, send close to zero letters through the USPS and always have. Where internet billing is unavailable I use the phone or pay my bills in person rather than put up with the post office. Documents are emailed, faxed, couriered, sent Fed Ex or UPS, or physically delivered by me. This is inconvenient, but not as inconvenient as depending on the mindless clots in the short pants to maybe decide to actually do their damn job.
Novell makes great *products*. As a company, they suck. They had a total lock on network services, and threw it away. Bill Gates and his evil minions didn't do it to them, they did it to themselves, over and over, because their management just doesn't know what they are doing, or what market they are in.
They're like that Mel Brooks movie where they try to make the worst musical ever to collect on the insurance. Novell executives have been trying to kill the company with the most absurd policies imaginable for years, only saved from disaster by some really outstanding products that were so good that even Novell couldn't fail to sell them.
Netware 3.x was so superior to its competitors that it was in a separate category. Excited at their success, Novell then proceeded to screw their sales channel by changing the reseller requirements on an almost daily basis (we actually got two different updates on the same day, but that was an aberration). Not content with that, they bought up Word Perfect and decided that they were a software company. Resellers had to get training on those products, too, or lose status. Too bad the training didn't actually exist, or was expensive and only available several hundred miles away. Maybe we should take that Unixware class instead. Oops. Oh, and they started pusing their own consulting services in direct competition with their resellers.
Apparently, that didn't drive enough folks into Microsoft's hands. So they decided to come out with a completely new technology that was backwards compatible only if you turned off most of the new features that justified upgrading in the first place. And it was slower. Oh, and the initial release was so broken that when the first dot rev came out, you couldn't upgrade. Take *that*, early adopter scum! You either had to drop back to 3.x and do the entire upgrade and migration all over again, or use some expensive third party tools and hope for the best.
NT took off in no small part because we just got tired of dealing with Novell. It was never great, but it was Good Enough, and their conversion tool from 3.x was at least as easy to use as jumping to Netware 4. Brilliant.
You think Novell buying Ximian will help? No matter how good the code they are pushing in a given week is, they couldn't sell water to a guy who was on fire. Only Xerox is worse at coming up with great ideas and failing to sell them. The best that can be hoped for is that Novell won't screw the project up too badly before they get bored with their newest shiny toy and spin it off to someone else. It could be a good match that has great long term benefits, but it's probably going to be another slow agonizing failure.
If you want to expand the right to free expression to explicity include open communication, so be it. It really is included already, but if you feel better about it with a formal addition, feel free to do so. Adding an explicit reference to just one single form of communication, without reference to others which exist now, or may exist at some future date, is absurd, and weakens those forms not mentioned without adding substantial protections to the one you mentioned.
Hey, the internet got listed, but the print press didn't. Maybe the print press isn't a right, lets just cancel it. The phone, too. And the radio, they can stream that over the net, right? No sense cluttering up the spectrum, it isn't a right like the internet, is it? Does that make the internet any freer than under a blanket right to free expression? No. Did everything else suffer? You bet. Unless you want to add every technology in use, and add others in as they become cool enough that you think it suddenly hits the threshhold of a 'right', then you are left with a patchwork of mindless drivel. A right to satellite radio? Sirius or XM? Hmm, a toughie. Let's just make a right to both, don't want to guess wrong, though we'll have to use tax money to prop them up if they fail.
You don't have the right to stuff. You just get the right to seek stuff. Resources are limited, and no paper decree will change that, declaring that everyone suddenly should have something won't make it so. All you accomplish is to move resources around, which you could do with a law, or you have a 'right' that isn't being enforced. Me, I prefer that only things that can realistically happen be rights - other can allow me to get stuff if I work for it, others can choose not to kill me, and others can leave me alone, and no-one else is affected or put out. No resources are tied up or forced to be allocated for future use, making them unavailable for others. I'd prefer not to set the precedent of rights getting ignored because they aren't feasible, because the next right to get ignored might be one I'm rather fonder of.
The internet is great, it enables us to do things that we only imagined just a few years ago. But it is only a technology. It doesn't live, or think, or occupy physical space. It could be superseded this time next year by a new technology that we can't even imagine today. But Estonia will still have a right to it on the books. They'll have to put money that could go into education, medicine, the arts, anything they want, into funding access to something that no-one then is even using, because someone thought it would be cool to call cheap access to a once useful communications technology a right. What hubris, to imagine that a mere set of computer codes and hardware standards are the end of science---never to be superseded---a glorious revolutionary thing that everyone everwhere at every time should have access to. Why not a right to 8-track tape, or AM radio, or the telegraph? At the time they were wonderful, but are not obsolete. In time, so too might the internet be.
A assembly of rights should be designed like the best computer program. Every possible outcome should be handled by the fewest lines of the most elegant code, reduced to only the cleanest essentials. Once you start adding in piles of extra pieces that don't belong in the core, exceptions and special circumstances that some marketi^H^H^Hpolitician demanded be included, you get bugs, you get failures, you get bad code. Simple. If you wouldn't run your computer on it, why run your country on it? You want a Constitution by Microsoft?
We think it is a damn fine idea, but we didn't make a right to telephone access part of the Constitution. See the difference? Getting rid of the tax is hard enough---no government likes to see those go away---but deciding to no longer fund a formal right would be far, far more difficult.
By listing all sorts of "wouldn't it be nice" ideas and privileges as 'rights'. Rights are the biggies--life, liberty, pursuit of property---not this laundry list crap. Calling it a 'right' is just a cynical ploy to make an entitlement impossible to remove or de-fund at some future date. Deciding whether or not the government should pay for internet access is a normal legislative function, if you don't like it vote for somebody else. Getting rid of a 'right' to free internet access becomes a ridiculously tough struggle, with mindless NGO drones from around the world taking to the streets with the giant puppets, for reasons that are never really clear.
Calling that sort of nonsense a 'right' is the same as calling some 12-year-old building a website with FrontPage wizards a programmer. It cheapens the title for those that really deserve it. Don't let those imbeciles working on various European constitutions fool you, a right is something fundamental and undisputable, not something it would be kinda nifty to have that you don't want later unenlightened politicos to be able to take away. That's just childish, an example of one-man-one-vote-one-time that doesn't deserve to be even taken seriously.
Re:Gaming the Recorder and Black Boxes
on
DVRs for Cop Cars
·
· Score: 2, Interesting
The outcome I really hope to see is tied to the "record when the flashers are turned on". Currently, cops who get tired of obeying all of those tedious traffic laws they ticket everyone else for just flash the lights, get past the blockage, then turn off the lights and go on with their lives. Logging each and every use of emergency signals will cut down this abuse - if they have to justify why they hit the shiny red button, they will probably stop hitting it unless it really is needed.
I'm pretty pro-police, but seeing a cop, bored with waiting at an intersection, just decide to put on the magic blinking lights and run the light makes me insane. Casual abuse of this authority makes the public less supportive, may occasionally lead to the police seeing what other small privileges their uniform can get them, and makes drivers less obedient to emergency signals. If most every time I see a cop with his lights on (and he's not after me!) its because he is abusing the privilege rather than in a real emergency, I'll be far less likely to put any effort into getting out of the way. Not really safe, but that is what happens when cops (and firefighters and EMTs and all sorts of others with light rigs) abuse the system.
I suspect this isn't an intended consequence of such an automatic monitoring system, but it's one I'm in favor of.
-reemul
Re:Anyone else think Slashdotting is criminal?
on
Build Your Own HERF Gun
·
· Score: 2, Informative
The difference between Slashdotting and a DDoS attack is simple but critical: the page requests in Slashdotting are legitmate, from users around the world who genuinely wish to see the site content. What is wrong with that? It's the difference between a store being swamped by customers---so much so that they can take no more until some leave---and that same store being overrun by squatters who just take up space without having anything to do with the business of the store, chasing out the real customers.
You're the network admin, if your site cannot gracefully handle a traffic spike due to sudden popularity it's YOUR PROBLEM. Fix it, don't complain about the cause of the increased page views. With a properly configured system, you should correctly see the influx of new visitors as a potential good, not something to be avoided. What can you do with the 24 hour notice, that you should not have already done? If configuring your server to handle a easily forseeable event can be done in a day, it should be done before the box even goes online, just like you would correct any other known potential problems. No, resources are not free, but that doesn't mean you have no options short of getting fatter pipes and bigger iron to handle load.
What you are really complaining about is that your system is poorly designed to start with but your bosses hadn't noticed yet, and that new traffic from Slashdot gave your laziness away and forced you to do some of the work you already get paid for. Suck it up and get busy, you've got the whole weekend.
If DARPA wants to fund work on OpenBSD, why do they need Theo? After all, they have the same access to the source as anyone else, so they can hire anyone they like to make any changes they like and release the code back to the community. Is Theo going to refuse to include good code because it comes from the US gov't? Of course he'll have all his team comb over it looking for trojans and other backdoors, but if it is good clean work, then it will get included. Or he will get savaged for excluding important fixes and features for political purposes.
Open Source means that as long as you release your code back to the community, you don't need to work with anyone you don't like. Including project leaders. They can either add the code or face a fork. The gov't doesn't care, they'll use their new code anyway, so any problems go to someone else. I wouldn't be surprised if this becomes a serious issue in the next few years as the governments who have promised to adopt Open Source software for major portions of their infrastructure get further along in their projects. It's nice to think that using OSS==Enlightened!, but bureaucrats are bureaucrats, it won't be long before they get tired of dealing with opinionated scruffy coder geeks and try to take control of everything for their own purposes. That's just the way they are. The Chinese programmers alone will seriously outnumber the other folks working on a given project, giving them an instant majority and probably a major say in how a project is run.
Thought the businesses taking over your software was a frightening thought? At least they are fairly predictable in their desire to make a profit. Government intervention will be a whole new terror. Instead of reflexively cheering when another governmental body chooses OSS over the Evil Microsoft, stop to think about what that might mean in a few years. How often do gov'ts get involved in anything without trying to control them? And how often has gov't control led to a quality result? Hmm...
At what point did DARPA money become an entitlement? Theo (and everyone else) is allowed to say pretty much anything they want about the US Gov't without being shot or put in jail. That is what free speech is all about. However, that doesn't mean there aren't any consequences. DARPA is under no obligation to give the project any money, so they decided to stop doing so, a decision they are absolutely entitled to make. Mr. de Raadt has no inalienable right to get paid by the US Gov't, their freedom to cut him off is just as strong a right as his freedom to say whatever he likes.
If he wants to keep getting money from the US DoD, he should try to avoid saying unkind things about them. Not that his comments were provably the reason for the cessation of funding, but they weren't helpful. Just spending most of the money on non-US programmers was probably something they weren't happy with - they are, after all, US taxpayer funded. He made a free-willed decision to speak his mind, which I respect even if I don't agree with his opinions. In return, he must accept the results of that decision. He could have smiled while taking their money, instead he said his piece and no longer gets the cash. Life continues.
Forget for a moment that the funding source was the US gov't. Just imagine that the money came from a grant from some generic source with no political or social implications whatsoever. A portion of the money was spent, and many of the goals were already reached. The project lead continued to spend the money, in some cases for purposes that were at best dubious and at worst clearly opposed to the wishes of the grant source. And then he gave interviews where he badmouthed them. Do you think that any group, anywhere, would continue to give money to the project?
This isn't a Big Mean US Gov't story - after all, they had been funding the project with pretty lenient restrictions until now - this is yet another case of a great programmer and leader who has let his mouth get in the way of his work. Theo isn't yet up to the level of RMS, but he is trying Really Hard. DARPA brought the gear, the ball, provided a nice field to play on, and gave the OpenBSD team a chance to show what they could do. After a great start, they decided to hang out with friends, do their own thing, and drink beer out of their helmets. And then they threw dung at the guys in the suits paying for the party. Brilliant. Why should anyone at all be shocked that DARPA took their ball and went home?
I like OpenBSD, and use it on my firewall box. Partly because of the security, and in part because as an also-ran in the OS popularity contests, none of the script kiddies even bother trying to get in. I'll upgrade to 3.3, and maybe even buy the disks to give some money back to the team. But I still think that personally, Theo is a prick, and this time it bit him.
Coders and testers can give back to the Open Source community through pretty obvious ways. Same with tech writers helping with the docs, and lawyers keeping an eye on the licenses and handling privacy and security issues. Any PR or other personal contact specialist folks out there looking for a way to help out? There really needs to be some project full of helpful folks to handle the interface between the socially-deficient techies and the prickly and sensitive people in the outside world, from investors to possible users. I know I need the help when dealing with clients, and clearly I'm not the only one. How about it?
In the digital world, we don't need back-ups, because a digital copy never wears out. It is timeless.
Idiot. The data may be in some rarified technical sense "timeless", but any physical media has certain inherent limitations that cannot be overcome. So a backup will always be a good idea, a matter of sheer prudence. Or is Mr. Valenti is claiming that not only are CDs and DVDs immune to all forms of physical harm, they somehow automatically return to you if lost or stolen? Like Lassie, just, well, smaller. And shiny.
Wow, I'm really dammed impressed by that kind of technology. Good thing Saddam Hussein hasn't caught on yet, or he'll be armoring his secret bunker with an impenetrable shield of AOL CDs. And that RIAA Hilary-class assault vehicle will really be terrifying with those remaindered copies of "Glitter" deflecting anything those vile pirates can throw at it.
What concerns me now are the privacy implications - if the discs are somehow immune to theft or loss, how do they know the identity and location of the legal owner? What aren't they telling us? Where are the chips imbedded? Bastards...
On the other hand, maybe Mr. Valenti is just a lying weasel who is saying whatever he thinks he needs to in order to cover up an indefensibly weak position. Nahh, those CDs are fricking magic!
Not the whole world - I think Sri Lanka still uses the old system, too. So all but 2 countries use metric.
Hmm...come to think of it, I have no idea what the hell they use in say, Tuvalu. Better just to say that AFAIK only two countries still use the old British measurement system, and that most everyone else uses metric.
You have to manually edit the registry to use any servers other than the two defaults - one MS, and one US gov't. Not too tricky, but there is no interface and no documentation to add servers, so most everyone will end up using the defaults. The part that annoys me the most is that the update schedule isn't configurable, it always just checks one week after the last check. You can do a manual update, but then the next update will be, you guessed it, another full week later.
Not such a good example - you can model that with just three tables. One each for types A, B, C, and add an "owned by" column to the B and C tables. It's many-to-many relationships that need separate tables to map out how items interrelate, a simple "is owned by/child of" just needs a column.
Business logic should be separate from the database, with triggers and stored procedures used primarily for data integrity issues. (Which is why the poor-to-nonexistent support for transactions and foreign key relationships make MySQL a sad also-ran for many purposes compared to the expensive proprietary options. But I still hope...) You can get some significant performance benefits to putting some often re-used procedures into the database, but that doesn't make it a best practice for all circumstances. It's overused by both lazy front-end programmers who can't be depended upon to validate the input they are accepting and bored DBAs who are trying to look busy. And such items are some of the least portable code you can write for different database systems, whereas table creation and select/insert/update commands work pretty much anywhere. Doesn't mean SQL is perfect, but if your problem comes from trying to get it to do things that properly should be done somewhere else, the failure is in the design, not SQL.
Maybe someone with more knowledge can check me on this, but isn't using conduit a potential building code violation? At the very least, you have to use the more expensive plenum rated cable instead of the more common version. (Which is nasty stuff - instead of the insulation burning in a fire, it just melts and gives off toxic fumes. Bonus!) I know that putting pvc pipe in so that you can pull later cable more easily is cheap and convenient, but I think that the pipe in this usage is considered a fire risk, since it allows a fire in one location to more easily spread to another.
Check local codes first. You don't gain anything if you have to rip it all out later.
An infinite number of TLDs pretty makes TLDs meaningless. The system only has value if it fosters a useful hierarchical system for resolving hostnames. (This says nothing at all about the system and politics for creating and administering that hierarchy, just the functionality.) As the number of TLDs increases, the extension becomes less a pointer to where to look for the domain, and more an arbitrary few letters tacked on the name because it looks cool. By the time DNS finds the root for the exotic TLD, it might as well have looked directly for the domain without bothering with that root at all.
An analogy: File folders are useful to organize large amounts of paper. One can look for the folder first, then in that folder for a specific document. Why bother using file folders if every piece of paper gets a separate folder? Such a large number of folders no longer helps organize the data; they just take up space in the drawer.
A few more well thought out and well discussed TLDs won't hurt, but an unmonitored flood of them from everyone and everywhere defeats the entire purpose of the system.
Try reading my post again, since that's what I said. By software media I meant the actual media - CD, DVD, floppy - not the shrink wrapped box. I started my post by explicitly stating that agreements you enter into by opening the box, when the terms are inside and not readable until you've agreed and opened the box, are unenforceable. Which is why most manufacturers have instead put some sealed wrapper around the media inside the box, where you can read the EULA before deciding whether to break that seal and get at the software. Even the CDs included with computer manuals have something similar.
EULA's that have the text inside the box where you can't see it until you've agreed to it aren't enforceable, that has been decided in the past (IIRC, likely someone here who remembers the exact case). That's why most boxed software has some sort of seal on the software media itself stating that by breaking that seal you are agreeing to the terms - by then you have the box open, and can read the terms enclosed. That arrangement is likely to be enforceable. As long as that seal is intact, and all of the other contents are as they were when you got it, most retailers will take it back - they may have to, as those licensing terms almost always state that if you don't agree, you need to return the software unopened to the point of purchase for a refund. (They've all got shrink wrap machines, they'll usually just put it right back on the shelf before you've even made it out of the store. Doesn't mean that it will be easy, just possible.) If you broke the cd seal (or opened the little bag the floppies were in, if you remember that far back), the retailer will usually assume that you made a copy and are trying to rip them off, and refuse to take it back. Besides, then it's much harder to sell it to the next guy as new. Moral: don't open that seal if you don't want to be stuck with the software or the EULA.
The click-thru EULAs have the text right there on the screen, so there's no excuse that a judge will accept for not reading it. Particularly those that make you hit some odd key or a non-default button to continue, so that you can't argue that you'd accidentally hit enter too many times and never even saw the EULA screen. Even getting a kid to do it won't work, since they would be considered to be acting as your agent. A minor who bought the software with his own money and clicked thru *might* get out from under, since he can't be bound by a contract and his parents were not involved (which would bind them, if not him), but don't bet real money on it.
Really, by arguing under what circumstances the EULA is or isn't binding, we're already conceding the biggest point: that a licensing model should even apply at all to software. I'd much rather see it treated under the law as a book or CD, my property to dispose of as I please subject to the doctrine of first sale. I can tear out pages, draw on it, loan it to friends, whatever I want. That's the fight we need to focus on, not minor little bits regarding the fine details of consent without a paper signature.
You're missing *my* point. I never said that a company is required by the GPL to release all of the code they write based on OSS. Such a statement may well be FUD, but I didn't make it. The problem is that not releasing the code is bad for the community. As long as freeloading is permitted (and the GPL, including that bit you mention, does permit it) there will continue to be limited financial advantage to writing *and releasing* Open Source code. Using it? You bet, they can save themselves huge money. But writing it for all the world to use? Nope.
If no-one releases new code until there is no competitive advantage left to keeping it in house, then that company is a freeloader, too. They are leeching off of the folks who wrote the original code and released it as OSS, without themselves giving anything back to the community. The OSS movement doesn't gain a damn thing from that company, or any of the "Open Source" programmers they hired, except maybe some column inches in some trade journals about how another firm saw the light of OSS. Code goes into the hole, and stays there.
Great, the company gets to pat themselves on the back and tell themselves what wonderful folks they are for using Open Source software and hiring Open Source programmers. But if it never gets released, and they are the only ones to use it, is it really Open? I don't think so, no matter that the loophole exists. As far as I'm concerned, all of the changes made are proprietary code right up until the moment the source gets posted. It's absurd to assume that all code is open until someone starts distributing binaries - is M$'s next release OSS until the first shrink wrapped box ships? Um, no. It's closed and proprietary up until the moment Bill makes the source available, and I'm not gonna hold my breath. Same with any other product, no matter that every last scrap of it is based on GPL code and was personally blessed by RMS besides. Doesn't mean that this is necessarily wrong---it doesn't make any sense to make every dev change available until after the bugs are hammered out, that causes problems to the end user and makes the developers look bad---but no source means it isn't yet fully open.
The distribution loophole is there because of practical issues, not philosophical ones. There is just no way to enforce it short of requiring that every single OSS dev have his CVS available for read access to the world, so that all of the code is open always, even before release. This doesn't mean that it wouldn't be a good idea, or that the pioneers of OSS didn't want everyone to release all of the code they produced based on someone else's open code. It just isn't possible in the real world. It's similar to making copies of a friend's CDs for your own use. Technically it's still illegal, but no-one is going to come after you for it, since there is just no way to police it. But if you try to sell that copy on eBay, all bets are off. Same with modifications and extensions to Open Source code. If you keep it to yourself, there isn't any way to pursue the matter; but as soon as you make the binaries available, you'd better have the source available, too.
It's not FUD, it's a real problem. Sure the programmers are paid for their skill, but who will pay for them? And where does the money come from? If a company can freeload, they will, so no pay for coders there. And the company that does pay for programmers, only to have the output released freely to all the world, how do they recoup that cost, a cost that all of their freeloading competitors don't have? Some work will still get done, even if just as a goodwill gesture, but goodwill won't pay for too many mortgages for the programmers of the world.
I have no doubt that programmers writing internal or proprietary code, that is never released into the wild, will always have jobs - they contribute to the function of that company, providing a resource that has value. That value to the company goes down if the work goes out to the world as Open Source, as that investment in programmers (and testers, and tech writers) now benefits your competitors, too. It would be offset if the competitors also were contributing code, with everyone absolutely better off through using Open Source, as each got the benefit of all of the programmers instead of just the ones that worked for them. But the freeloader problem remains, and I haven't seen any good way to correct it. Ignoring it won't make it go away.
6. Companies A thru W in the same industry also find this software useful, especially after Y added to it. None of them, however, add a single thing to it, since none of them have programmers on staff. 7. Instead of paying programmers, companies A thru W spend that money on their core business, using the exact same code without spending any money. 8. Using their competitive advantage (less money for same resources), companies A thru W kick X and Y's respective asses in the marketplace, which is the source of all the money being used to pay the coders. 9. X and Y go out of business, with the scraps bought up cheap by megacorp Z. 10. The Open Source programmers at companies X and Y, and all of their co-workers, are out of jobs. The programmers no longer make any money writing Open Source code.
Sure, if everyone using Open Source code was obligated to contribute something back, the model would work and work well. But as long as freeloaders can gain the benefits of the paid programmers without having to spend any money themselves, they will. Companies cannot base a business model on altruism. Using limited resources to benefit not just your own business but every business with a similar need, without getting anything back from the others, is just not workable in the long term.
But if you think of a way, please post it here. I'm sure that the CEOs of RedHat, VA, Mandrake, &etc. would love to hear it. They've had to concentrate on services and proprietary code to keep paying their bills, though I know they'd really prefer to be writing Open Source.
At most of the wildly left leaning schools here in the states, the most subversive thing you could get her is a subscription to the National Review, and an NRA membership.
More seriously, what you really need to give her is some form of emergency money that is a bit hard to cash out. I know that sounds stupid, but emergency money is useless if you already spent it on beer or twinkies. I used to keep a couple of small value winning scratch off lottery tickets in my car - I tended to mostly break even, and having a form of money that I could pretty much only spend at a gas station was a lifesaver more than once. Pre-paid phone cards are good for this too.
Oh, and that sticky putty stuff, that stuff rocked for putting stuff up on walls and such without messing up the surface and drawing a fine come the end of the semester.
That's why you buy some of those lame plastic things to put over the top of the key - they're supposed to make it easier to tell one key from another, but what they are really good for is covering up the do-not-duplicate warning. If the clerk can't see it, he won't abide by it.
This is another example of how little the open source folks apparently know about software testing. The public beta testing you're talking about is known elsewhere as "releasing buggy code", or "screwing the user". Sure, it has a beta label on it somewhere, which is supposed to magically absolve the maker of any fault when it blows up 9 times out of 10, but it was still released to the world, and folks are supposed to actually use it. That's how public beta works, folks use it. Not the formal process of software testing that happens at a professional dev company, but just using it and looking for anything obvious.
Would it be ok for Microsoft to release code that they knew was flawed and full of holes, if they, too, called their software beta-grade and never made it to a release version? No, didn't think so. (How long has some open source code been "beta"? Mozilla?) Use testing is important, it does find some bugs that need fixing, and it also finds some of those usability issues that most free software projects ignore when initially writing the apps. But it doesn't find nearly all of the bugs that may exist. Worse, since the user was just tooling around doing whatever when they hit a bug, they may not be able to remember the steps to reproduce the bug - so even if a big, glaring, ohmigod error is found, you may not be able to find it to fix it.
Depeding primarily on public "beta" testing to find your bugs is very similar to finding landmines by herding sheep through the area. Given enough time (and sheep!) you will have found and dealt with pretty much all the mines along the most common paths. And maybe a few sheep strayed off and found some mines outside of the more familiar areas. But there may still be huge unknown problems just waiting for someone to go off the beaten trail just a little. Real software testing involves a formal process and trained professionals who attempt to test every single portion of an application, one step at a time. It's slow, often tediously dull work, and a test cycle may take longer than the original writing process. But it is much better for a tester to spend the time finding the bug so it can get fixed before the app goes out the door, than for a user to find the bug the hard way and lose data or miss deadlines.
No amount of reading code makes up for the lack of serious QA. MS has more testers for some of its products than many open source apps have users. And guess what, those "many eyes" still missed some bugs. Just imagine what the code would be like if they just stuck a greek "b" on the box and let the users find all the bugs themselves.
"customers are used as an army of unpaid testers"
Isn't this the "many eyes" model?
I am not intending a slam, but after some years working as a software tester, I am very aware of the need for structured dedicated testing, which most open source projects don't have. Having devs crawl the code helps, but won't catch all of it - just like proof-reading something you've written, you can catch some obvious things you missed the first time, but you are far better off if you can let someone who is a real editor go over it, too. Open Source means that the bugs will in time get found and fixed, but that still means that bugs are getting found, and usually by folks trying to use the code. Making your end-users into beta testers is not a recipe for good feelings. At least with commercial code they have someone - even a low paid, low forehead tech support chimp - to call and complain to. Even vent. But the OSS answer of "you can fix it yourself" will just piss endusers off. Just 'cuz I'm free to do so, doesn't mean I can, or want to.
How will Open Source handle testing and support as more endusers start putting it on their desktops?
-reemul
"Can you name a private carrier who will deliver to every single US address, and who will pick up anything for under a dollar?"
No, because NO ONE IS ALLOWED TO. The only thing the USPS will pick up from you (maybe, though good luck actually getting them to come within one hundred yards of your actual physical door) is a letter. They have a government mandated monopoly on delivering them. Period, full stop. They have this monopoly in return for guaranteeing that they will serve absolutely everyone, no matter where in the US they are.
(Which, in fact, they don't do. Neither of my parents can get mail to their homes. My father was randomly assigned a box in a group 3 blocks away, with an address that bears no resemblance beyond city and zip to his street address, despite having a reasonably new house right off a public road. My mother was in fact obligated to pay for a mailbox in a town several miles, she doesn't get free delivery of any sort. And don't get me started on delivery to apartments, where the doors are a few paces apart and would be the easiest door-to-door delivery route the carriers would ever have...)
If the USPS just stuck to their core competency - and were generally competent at it - I'd allow them to implement whatever technologies best suited their needs. Instead, they compete in other markets, waste money on advertising, and ignore local delivery as much as possible. (Why would a monopolist advertise? It's not like folks have other choices.) They invent new services to offer so that they never ever have to shrink their headcount, no matter that letter traffic is decreasing and technology makes the mail they do get easier to handle. $.37 per stamp doesn't seem high, but given how poor the service is this amount is outrageous. They want to keep staff forever? Great, send them out to actually put letters in the hands of the recipients. Make them walk. They'll either quit, or service will improve. Is that so damn hard? Otherwise, earn those thirty-seven cents.
If I really believed they would get useful, meaningful data from adding tracking features I'd be all for it (so I could know where they managed to lose my mail to, mostly.) But I have to believe that this is another excuse to add or retain useless staff and include a higher profit margin service with each delivery. I'd enjoy being wrong, but the USPS has always managed to live down to my expectations.
BTW: I, too, send close to zero letters through the USPS and always have. Where internet billing is unavailable I use the phone or pay my bills in person rather than put up with the post office. Documents are emailed, faxed, couriered, sent Fed Ex or UPS, or physically delivered by me. This is inconvenient, but not as inconvenient as depending on the mindless clots in the short pants to maybe decide to actually do their damn job.
-reemul
Novell makes great *products*. As a company, they suck. They had a total lock on network services, and threw it away. Bill Gates and his evil minions didn't do it to them, they did it to themselves, over and over, because their management just doesn't know what they are doing, or what market they are in.
They're like that Mel Brooks movie where they try to make the worst musical ever to collect on the insurance. Novell executives have been trying to kill the company with the most absurd policies imaginable for years, only saved from disaster by some really outstanding products that were so good that even Novell couldn't fail to sell them.
Netware 3.x was so superior to its competitors that it was in a separate category. Excited at their success, Novell then proceeded to screw their sales channel by changing the reseller requirements on an almost daily basis (we actually got two different updates on the same day, but that was an aberration). Not content with that, they bought up Word Perfect and decided that they were a software company. Resellers had to get training on those products, too, or lose status. Too bad the training didn't actually exist, or was expensive and only available several hundred miles away. Maybe we should take that Unixware class instead. Oops. Oh, and they started pusing their own consulting services in direct competition with their resellers.
Apparently, that didn't drive enough folks into Microsoft's hands. So they decided to come out with a completely new technology that was backwards compatible only if you turned off most of the new features that justified upgrading in the first place. And it was slower. Oh, and the initial release was so broken that when the first dot rev came out, you couldn't upgrade. Take *that*, early adopter scum! You either had to drop back to 3.x and do the entire upgrade and migration all over again, or use some expensive third party tools and hope for the best.
NT took off in no small part because we just got tired of dealing with Novell. It was never great, but it was Good Enough, and their conversion tool from 3.x was at least as easy to use as jumping to Netware 4. Brilliant.
You think Novell buying Ximian will help? No matter how good the code they are pushing in a given week is, they couldn't sell water to a guy who was on fire. Only Xerox is worse at coming up with great ideas and failing to sell them. The best that can be hoped for is that Novell won't screw the project up too badly before they get bored with their newest shiny toy and spin it off to someone else. It could be a good match that has great long term benefits, but it's probably going to be another slow agonizing failure.
If you want to expand the right to free expression to explicity include open communication, so be it. It really is included already, but if you feel better about it with a formal addition, feel free to do so. Adding an explicit reference to just one single form of communication, without reference to others which exist now, or may exist at some future date, is absurd, and weakens those forms not mentioned without adding substantial protections to the one you mentioned.
Hey, the internet got listed, but the print press didn't. Maybe the print press isn't a right, lets just cancel it. The phone, too. And the radio, they can stream that over the net, right? No sense cluttering up the spectrum, it isn't a right like the internet, is it? Does that make the internet any freer than under a blanket right to free expression? No. Did everything else suffer? You bet. Unless you want to add every technology in use, and add others in as they become cool enough that you think it suddenly hits the threshhold of a 'right', then you are left with a patchwork of mindless drivel. A right to satellite radio? Sirius or XM? Hmm, a toughie. Let's just make a right to both, don't want to guess wrong, though we'll have to use tax money to prop them up if they fail.
You don't have the right to stuff. You just get the right to seek stuff. Resources are limited, and no paper decree will change that, declaring that everyone suddenly should have something won't make it so. All you accomplish is to move resources around, which you could do with a law, or you have a 'right' that isn't being enforced. Me, I prefer that only things that can realistically happen be rights - other can allow me to get stuff if I work for it, others can choose not to kill me, and others can leave me alone, and no-one else is affected or put out. No resources are tied up or forced to be allocated for future use, making them unavailable for others. I'd prefer not to set the precedent of rights getting ignored because they aren't feasible, because the next right to get ignored might be one I'm rather fonder of.
The internet is great, it enables us to do things that we only imagined just a few years ago. But it is only a technology. It doesn't live, or think, or occupy physical space. It could be superseded this time next year by a new technology that we can't even imagine today. But Estonia will still have a right to it on the books. They'll have to put money that could go into education, medicine, the arts, anything they want, into funding access to something that no-one then is even using, because someone thought it would be cool to call cheap access to a once useful communications technology a right. What hubris, to imagine that a mere set of computer codes and hardware standards are the end of science---never to be superseded---a glorious revolutionary thing that everyone everwhere at every time should have access to. Why not a right to 8-track tape, or AM radio, or the telegraph? At the time they were wonderful, but are not obsolete. In time, so too might the internet be.
A assembly of rights should be designed like the best computer program. Every possible outcome should be handled by the fewest lines of the most elegant code, reduced to only the cleanest essentials. Once you start adding in piles of extra pieces that don't belong in the core, exceptions and special circumstances that some marketi^H^H^Hpolitician demanded be included, you get bugs, you get failures, you get bad code. Simple. If you wouldn't run your computer on it, why run your country on it? You want a Constitution by Microsoft?
Me, either.
We think it is a damn fine idea, but we didn't make a right to telephone access part of the Constitution. See the difference? Getting rid of the tax is hard enough---no government likes to see those go away---but deciding to no longer fund a formal right would be far, far more difficult.
"How is this degrading Human Rights exactly?"
By listing all sorts of "wouldn't it be nice" ideas and privileges as 'rights'. Rights are the biggies--life, liberty, pursuit of property---not this laundry list crap. Calling it a 'right' is just a cynical ploy to make an entitlement impossible to remove or de-fund at some future date. Deciding whether or not the government should pay for internet access is a normal legislative function, if you don't like it vote for somebody else. Getting rid of a 'right' to free internet access becomes a ridiculously tough struggle, with mindless NGO drones from around the world taking to the streets with the giant puppets, for reasons that are never really clear.
Calling that sort of nonsense a 'right' is the same as calling some 12-year-old building a website with FrontPage wizards a programmer. It cheapens the title for those that really deserve it. Don't let those imbeciles working on various European constitutions fool you, a right is something fundamental and undisputable, not something it would be kinda nifty to have that you don't want later unenlightened politicos to be able to take away. That's just childish, an example of one-man-one-vote-one-time that doesn't deserve to be even taken seriously.
The outcome I really hope to see is tied to the "record when the flashers are turned on". Currently, cops who get tired of obeying all of those tedious traffic laws they ticket everyone else for just flash the lights, get past the blockage, then turn off the lights and go on with their lives. Logging each and every use of emergency signals will cut down this abuse - if they have to justify why they hit the shiny red button, they will probably stop hitting it unless it really is needed.
I'm pretty pro-police, but seeing a cop, bored with waiting at an intersection, just decide to put on the magic blinking lights and run the light makes me insane. Casual abuse of this authority makes the public less supportive, may occasionally lead to the police seeing what other small privileges their uniform can get them, and makes drivers less obedient to emergency signals. If most every time I see a cop with his lights on (and he's not after me!) its because he is abusing the privilege rather than in a real emergency, I'll be far less likely to put any effort into getting out of the way. Not really safe, but that is what happens when cops (and firefighters and EMTs and all sorts of others with light rigs) abuse the system.
I suspect this isn't an intended consequence of such an automatic monitoring system, but it's one I'm in favor of.
-reemul
The difference between Slashdotting and a DDoS attack is simple but critical: the page requests in Slashdotting are legitmate, from users around the world who genuinely wish to see the site content. What is wrong with that? It's the difference between a store being swamped by customers---so much so that they can take no more until some leave---and that same store being overrun by squatters who just take up space without having anything to do with the business of the store, chasing out the real customers.
You're the network admin, if your site cannot gracefully handle a traffic spike due to sudden popularity it's YOUR PROBLEM. Fix it, don't complain about the cause of the increased page views. With a properly configured system, you should correctly see the influx of new visitors as a potential good, not something to be avoided. What can you do with the 24 hour notice, that you should not have already done? If configuring your server to handle a easily forseeable event can be done in a day, it should be done before the box even goes online, just like you would correct any other known potential problems. No, resources are not free, but that doesn't mean you have no options short of getting fatter pipes and bigger iron to handle load.
What you are really complaining about is that your system is poorly designed to start with but your bosses hadn't noticed yet, and that new traffic from Slashdot gave your laziness away and forced you to do some of the work you already get paid for. Suck it up and get busy, you've got the whole weekend.
Well, think of this instead:
If DARPA wants to fund work on OpenBSD, why do they need Theo? After all, they have the same access to the source as anyone else, so they can hire anyone they like to make any changes they like and release the code back to the community. Is Theo going to refuse to include good code because it comes from the US gov't? Of course he'll have all his team comb over it looking for trojans and other backdoors, but if it is good clean work, then it will get included. Or he will get savaged for excluding important fixes and features for political purposes.
Open Source means that as long as you release your code back to the community, you don't need to work with anyone you don't like. Including project leaders. They can either add the code or face a fork. The gov't doesn't care, they'll use their new code anyway, so any problems go to someone else. I wouldn't be surprised if this becomes a serious issue in the next few years as the governments who have promised to adopt Open Source software for major portions of their infrastructure get further along in their projects. It's nice to think that using OSS==Enlightened!, but bureaucrats are bureaucrats, it won't be long before they get tired of dealing with opinionated scruffy coder geeks and try to take control of everything for their own purposes. That's just the way they are. The Chinese programmers alone will seriously outnumber the other folks working on a given project, giving them an instant majority and probably a major say in how a project is run.
Thought the businesses taking over your software was a frightening thought? At least they are fairly predictable in their desire to make a profit. Government intervention will be a whole new terror. Instead of reflexively cheering when another governmental body chooses OSS over the Evil Microsoft, stop to think about what that might mean in a few years. How often do gov'ts get involved in anything without trying to control them? And how often has gov't control led to a quality result? Hmm...
At what point did DARPA money become an entitlement? Theo (and everyone else) is allowed to say pretty much anything they want about the US Gov't without being shot or put in jail. That is what free speech is all about. However, that doesn't mean there aren't any consequences. DARPA is under no obligation to give the project any money, so they decided to stop doing so, a decision they are absolutely entitled to make. Mr. de Raadt has no inalienable right to get paid by the US Gov't, their freedom to cut him off is just as strong a right as his freedom to say whatever he likes.
If he wants to keep getting money from the US DoD, he should try to avoid saying unkind things about them. Not that his comments were provably the reason for the cessation of funding, but they weren't helpful. Just spending most of the money on non-US programmers was probably something they weren't happy with - they are, after all, US taxpayer funded. He made a free-willed decision to speak his mind, which I respect even if I don't agree with his opinions. In return, he must accept the results of that decision. He could have smiled while taking their money, instead he said his piece and no longer gets the cash. Life continues.
Forget for a moment that the funding source was the US gov't. Just imagine that the money came from a grant from some generic source with no political or social implications whatsoever. A portion of the money was spent, and many of the goals were already reached. The project lead continued to spend the money, in some cases for purposes that were at best dubious and at worst clearly opposed to the wishes of the grant source. And then he gave interviews where he badmouthed them. Do you think that any group, anywhere, would continue to give money to the project?
This isn't a Big Mean US Gov't story - after all, they had been funding the project with pretty lenient restrictions until now - this is yet another case of a great programmer and leader who has let his mouth get in the way of his work. Theo isn't yet up to the level of RMS, but he is trying Really Hard. DARPA brought the gear, the ball, provided a nice field to play on, and gave the OpenBSD team a chance to show what they could do. After a great start, they decided to hang out with friends, do their own thing, and drink beer out of their helmets. And then they threw dung at the guys in the suits paying for the party. Brilliant. Why should anyone at all be shocked that DARPA took their ball and went home?
I like OpenBSD, and use it on my firewall box. Partly because of the security, and in part because as an also-ran in the OS popularity contests, none of the script kiddies even bother trying to get in. I'll upgrade to 3.3, and maybe even buy the disks to give some money back to the team. But I still think that personally, Theo is a prick, and this time it bit him.
Coders and testers can give back to the Open Source community through pretty obvious ways. Same with tech writers helping with the docs, and lawyers keeping an eye on the licenses and handling privacy and security issues. Any PR or other personal contact specialist folks out there looking for a way to help out? There really needs to be some project full of helpful folks to handle the interface between the socially-deficient techies and the prickly and sensitive people in the outside world, from investors to possible users. I know I need the help when dealing with clients, and clearly I'm not the only one. How about it?
Idiot. The data may be in some rarified technical sense "timeless", but any physical media has certain inherent limitations that cannot be overcome. So a backup will always be a good idea, a matter of sheer prudence. Or is Mr. Valenti is claiming that not only are CDs and DVDs immune to all forms of physical harm, they somehow automatically return to you if lost or stolen? Like Lassie, just, well, smaller. And shiny.
Wow, I'm really dammed impressed by that kind of technology. Good thing Saddam Hussein hasn't caught on yet, or he'll be armoring his secret bunker with an impenetrable shield of AOL CDs. And that RIAA Hilary-class assault vehicle will really be terrifying with those remaindered copies of "Glitter" deflecting anything those vile pirates can throw at it.
What concerns me now are the privacy implications - if the discs are somehow immune to theft or loss, how do they know the identity and location of the legal owner? What aren't they telling us? Where are the chips imbedded? Bastards...
On the other hand, maybe Mr. Valenti is just a lying weasel who is saying whatever he thinks he needs to in order to cover up an indefensibly weak position. Nahh, those CDs are fricking magic!
-reemul
Not the whole world - I think Sri Lanka still uses the old system, too. So all but 2 countries use metric.
Hmm...come to think of it, I have no idea what the hell they use in say, Tuvalu. Better just to say that AFAIK only two countries still use the old British measurement system, and that most everyone else uses metric.
You have to manually edit the registry to use any servers other than the two defaults - one MS, and one US gov't. Not too tricky, but there is no interface and no documentation to add servers, so most everyone will end up using the defaults. The part that annoys me the most is that the update schedule isn't configurable, it always just checks one week after the last check. You can do a manual update, but then the next update will be, you guessed it, another full week later.
Not such a good example - you can model that with just three tables. One each for types A, B, C, and add an "owned by" column to the B and C tables. It's many-to-many relationships that need separate tables to map out how items interrelate, a simple "is owned by/child of" just needs a column.
Business logic should be separate from the database, with triggers and stored procedures used primarily for data integrity issues. (Which is why the poor-to-nonexistent support for transactions and foreign key relationships make MySQL a sad also-ran for many purposes compared to the expensive proprietary options. But I still hope...) You can get some significant performance benefits to putting some often re-used procedures into the database, but that doesn't make it a best practice for all circumstances. It's overused by both lazy front-end programmers who can't be depended upon to validate the input they are accepting and bored DBAs who are trying to look busy. And such items are some of the least portable code you can write for different database systems, whereas table creation and select/insert/update commands work pretty much anywhere. Doesn't mean SQL is perfect, but if your problem comes from trying to get it to do things that properly should be done somewhere else, the failure is in the design, not SQL.
Maybe someone with more knowledge can check me on this, but isn't using conduit a potential building code violation? At the very least, you have to use the more expensive plenum rated cable instead of the more common version. (Which is nasty stuff - instead of the insulation burning in a fire, it just melts and gives off toxic fumes. Bonus!) I know that putting pvc pipe in so that you can pull later cable more easily is cheap and convenient, but I think that the pipe in this usage is considered a fire risk, since it allows a fire in one location to more easily spread to another.
Check local codes first. You don't gain anything if you have to rip it all out later.
An infinite number of TLDs pretty makes TLDs meaningless. The system only has value if it fosters a useful hierarchical system for resolving hostnames. (This says nothing at all about the system and politics for creating and administering that hierarchy, just the functionality.) As the number of TLDs increases, the extension becomes less a pointer to where to look for the domain, and more an arbitrary few letters tacked on the name because it looks cool. By the time DNS finds the root for the exotic TLD, it might as well have looked directly for the domain without bothering with that root at all.
An analogy: File folders are useful to organize large amounts of paper. One can look for the folder first, then in that folder for a specific document. Why bother using file folders if every piece of paper gets a separate folder? Such a large number of folders no longer helps organize the data; they just take up space in the drawer.
A few more well thought out and well discussed TLDs won't hurt, but an unmonitored flood of them from everyone and everywhere defeats the entire purpose of the system.
Try reading my post again, since that's what I said. By software media I meant the actual media - CD, DVD, floppy - not the shrink wrapped box. I started my post by explicitly stating that agreements you enter into by opening the box, when the terms are inside and not readable until you've agreed and opened the box, are unenforceable. Which is why most manufacturers have instead put some sealed wrapper around the media inside the box, where you can read the EULA before deciding whether to break that seal and get at the software. Even the CDs included with computer manuals have something similar.
EULA's that have the text inside the box where you can't see it until you've agreed to it aren't enforceable, that has been decided in the past (IIRC, likely someone here who remembers the exact case). That's why most boxed software has some sort of seal on the software media itself stating that by breaking that seal you are agreeing to the terms - by then you have the box open, and can read the terms enclosed. That arrangement is likely to be enforceable. As long as that seal is intact, and all of the other contents are as they were when you got it, most retailers will take it back - they may have to, as those licensing terms almost always state that if you don't agree, you need to return the software unopened to the point of purchase for a refund. (They've all got shrink wrap machines, they'll usually just put it right back on the shelf before you've even made it out of the store. Doesn't mean that it will be easy, just possible.) If you broke the cd seal (or opened the little bag the floppies were in, if you remember that far back), the retailer will usually assume that you made a copy and are trying to rip them off, and refuse to take it back. Besides, then it's much harder to sell it to the next guy as new. Moral: don't open that seal if you don't want to be stuck with the software or the EULA.
The click-thru EULAs have the text right there on the screen, so there's no excuse that a judge will accept for not reading it. Particularly those that make you hit some odd key or a non-default button to continue, so that you can't argue that you'd accidentally hit enter too many times and never even saw the EULA screen. Even getting a kid to do it won't work, since they would be considered to be acting as your agent. A minor who bought the software with his own money and clicked thru *might* get out from under, since he can't be bound by a contract and his parents were not involved (which would bind them, if not him), but don't bet real money on it.
Really, by arguing under what circumstances the EULA is or isn't binding, we're already conceding the biggest point: that a licensing model should even apply at all to software. I'd much rather see it treated under the law as a book or CD, my property to dispose of as I please subject to the doctrine of first sale. I can tear out pages, draw on it, loan it to friends, whatever I want. That's the fight we need to focus on, not minor little bits regarding the fine details of consent without a paper signature.
You're missing *my* point. I never said that a company is required by the GPL to release all of the code they write based on OSS. Such a statement may well be FUD, but I didn't make it. The problem is that not releasing the code is bad for the community. As long as freeloading is permitted (and the GPL, including that bit you mention, does permit it) there will continue to be limited financial advantage to writing *and releasing* Open Source code. Using it? You bet, they can save themselves huge money. But writing it for all the world to use? Nope.
If no-one releases new code until there is no competitive advantage left to keeping it in house, then that company is a freeloader, too. They are leeching off of the folks who wrote the original code and released it as OSS, without themselves giving anything back to the community. The OSS movement doesn't gain a damn thing from that company, or any of the "Open Source" programmers they hired, except maybe some column inches in some trade journals about how another firm saw the light of OSS. Code goes into the hole, and stays there.
Great, the company gets to pat themselves on the back and tell themselves what wonderful folks they are for using Open Source software and hiring Open Source programmers. But if it never gets released, and they are the only ones to use it, is it really Open? I don't think so, no matter that the loophole exists. As far as I'm concerned, all of the changes made are proprietary code right up until the moment the source gets posted. It's absurd to assume that all code is open until someone starts distributing binaries - is M$'s next release OSS until the first shrink wrapped box ships? Um, no. It's closed and proprietary up until the moment Bill makes the source available, and I'm not gonna hold my breath. Same with any other product, no matter that every last scrap of it is based on GPL code and was personally blessed by RMS besides. Doesn't mean that this is necessarily wrong---it doesn't make any sense to make every dev change available until after the bugs are hammered out, that causes problems to the end user and makes the developers look bad---but no source means it isn't yet fully open.
The distribution loophole is there because of practical issues, not philosophical ones. There is just no way to enforce it short of requiring that every single OSS dev have his CVS available for read access to the world, so that all of the code is open always, even before release. This doesn't mean that it wouldn't be a good idea, or that the pioneers of OSS didn't want everyone to release all of the code they produced based on someone else's open code. It just isn't possible in the real world. It's similar to making copies of a friend's CDs for your own use. Technically it's still illegal, but no-one is going to come after you for it, since there is just no way to police it. But if you try to sell that copy on eBay, all bets are off. Same with modifications and extensions to Open Source code. If you keep it to yourself, there isn't any way to pursue the matter; but as soon as you make the binaries available, you'd better have the source available, too.
It's not FUD, it's a real problem. Sure the programmers are paid for their skill, but who will pay for them? And where does the money come from? If a company can freeload, they will, so no pay for coders there. And the company that does pay for programmers, only to have the output released freely to all the world, how do they recoup that cost, a cost that all of their freeloading competitors don't have? Some work will still get done, even if just as a goodwill gesture, but goodwill won't pay for too many mortgages for the programmers of the world.
I have no doubt that programmers writing internal or proprietary code, that is never released into the wild, will always have jobs - they contribute to the function of that company, providing a resource that has value. That value to the company goes down if the work goes out to the world as Open Source, as that investment in programmers (and testers, and tech writers) now benefits your competitors, too. It would be offset if the competitors also were contributing code, with everyone absolutely better off through using Open Source, as each got the benefit of all of the programmers instead of just the ones that worked for them. But the freeloader problem remains, and I haven't seen any good way to correct it. Ignoring it won't make it go away.
You're missing a few points:
6. Companies A thru W in the same industry also find this software useful, especially after Y added to it. None of them, however, add a single thing to it, since none of them have programmers on staff.
7. Instead of paying programmers, companies A thru W spend that money on their core business, using the exact same code without spending any money.
8. Using their competitive advantage (less money for same resources), companies A thru W kick X and Y's respective asses in the marketplace, which is the source of all the money being used to pay the coders.
9. X and Y go out of business, with the scraps bought up cheap by megacorp Z.
10. The Open Source programmers at companies X and Y, and all of their co-workers, are out of jobs. The programmers no longer make any money writing Open Source code.
Sure, if everyone using Open Source code was obligated to contribute something back, the model would work and work well. But as long as freeloaders can gain the benefits of the paid programmers without having to spend any money themselves, they will. Companies cannot base a business model on altruism. Using limited resources to benefit not just your own business but every business with a similar need, without getting anything back from the others, is just not workable in the long term.
But if you think of a way, please post it here. I'm sure that the CEOs of RedHat, VA, Mandrake, &etc. would love to hear it. They've had to concentrate on services and proprietary code to keep paying their bills, though I know they'd really prefer to be writing Open Source.
At most of the wildly left leaning schools here in the states, the most subversive thing you could get her is a subscription to the National Review, and an NRA membership.
More seriously, what you really need to give her is some form of emergency money that is a bit hard to cash out. I know that sounds stupid, but emergency money is useless if you already spent it on beer or twinkies. I used to keep a couple of small value winning scratch off lottery tickets in my car - I tended to mostly break even, and having a form of money that I could pretty much only spend at a gas station was a lifesaver more than once. Pre-paid phone cards are good for this too.
Oh, and that sticky putty stuff, that stuff rocked for putting stuff up on walls and such without messing up the surface and drawing a fine come the end of the semester.
That's why you buy some of those lame plastic things to put over the top of the key - they're supposed to make it easier to tell one key from another, but what they are really good for is covering up the do-not-duplicate warning. If the clerk can't see it, he won't abide by it.
This is another example of how little the open source folks apparently know about software testing. The public beta testing you're talking about is known elsewhere as "releasing buggy code", or "screwing the user". Sure, it has a beta label on it somewhere, which is supposed to magically absolve the maker of any fault when it blows up 9 times out of 10, but it was still released to the world, and folks are supposed to actually use it. That's how public beta works, folks use it. Not the formal process of software testing that happens at a professional dev company, but just using it and looking for anything obvious.
Would it be ok for Microsoft to release code that they knew was flawed and full of holes, if they, too, called their software beta-grade and never made it to a release version? No, didn't think so. (How long has some open source code been "beta"? Mozilla?) Use testing is important, it does find some bugs that need fixing, and it also finds some of those usability issues that most free software projects ignore when initially writing the apps. But it doesn't find nearly all of the bugs that may exist. Worse, since the user was just tooling around doing whatever when they hit a bug, they may not be able to remember the steps to reproduce the bug - so even if a big, glaring, ohmigod error is found, you may not be able to find it to fix it.
Depeding primarily on public "beta" testing to find your bugs is very similar to finding landmines by herding sheep through the area. Given enough time (and sheep!) you will have found and dealt with pretty much all the mines along the most common paths. And maybe a few sheep strayed off and found some mines outside of the more familiar areas. But there may still be huge unknown problems just waiting for someone to go off the beaten trail just a little. Real software testing involves a formal process and trained professionals who attempt to test every single portion of an application, one step at a time. It's slow, often tediously dull work, and a test cycle may take longer than the original writing process. But it is much better for a tester to spend the time finding the bug so it can get fixed before the app goes out the door, than for a user to find the bug the hard way and lose data or miss deadlines.
No amount of reading code makes up for the lack of serious QA. MS has more testers for some of its products than many open source apps have users. And guess what, those "many eyes" still missed some bugs. Just imagine what the code would be like if they just stuck a greek "b" on the box and let the users find all the bugs themselves.