XML's flaw was using a URI as a primary key to an document (or object) type, ignoring the cost of maintaining a stable URI (especially in these days of WIPO domain name arbitration and companies that rename themselves to escape the past) and ignoring the established wisdom of never exposing a primary key to the public. The whole DTD mechanism was poorly thought-out as well; why would you ever want to carry a DTD around with a document unless you foresaw a need to validate the structure of a document by agents that don't have it? This greatly reduces the utility of validation to near uselessness.
Validating XML parsers, on the other hand, screwed the pooch by not providing for documents to be validated against any but the specified DTD. At the very least, new validating parsers ought to maintain an internal table of aliases, so that you can validate documents of type http://www.netscape.com/~nportman/grits.dtd against file:/home/marxmarv/project/dtds/hotgrits.dtd without changing the XML DTD specification or the input at all, and would also enable DTD's to be specified by, say, MIME Content-Type.
None of this fixes the copyright problem, but it does keep entire applications from going away because of some sysadmin cock-up. (As an aside, at least.NET will show the sheeple how often network blackouts happen...)
Don't try to weasel out of the law without knowing the law. That could get you into serious trouble someday.
Section 1008. Prohibition on certain infringement actions No action may be brought under this title alleging infringement of copyright based on the manufacture, importation, or distribution of a digital audio recording device, a digital audio recording medium, an analog recording device, or an analog recording medium, or based on the noncommercial use by a consumer of such a device or medium for making digital musical recordings or analog musical recordings.
All that means is the RIAA can't prevail in court against individual users under this Act. Napster, the business entity, might still be liable for violating the serial copying provisions, if the RIAA can convince a judge that a computer program is a "machine or device", and that should be quite easy to do.
Section 1001. Definitions (3) A "digital audio recording device" is any machine or device of a type commonly distributed to individuals for use by individuals, whether or not included with or as part of some other machine or device, the digital recording function of which is designed or marketed for the primary purpose of, and that is capable of, making a digital audio copied recording for private use[ except pro gear and voice recorders]
There's no two ways about it. You are stealing from the record companies just as assuredly as they are stealing from the artists. Admit this, acknowledge this, and revel in this. I remember reading somewhere that "Napster is the riot with attendant looting. The war begins when the opposition gets organized." While you're looting, who's off fighting the war, and what are you doing for them?
If you want to join the opposition, steer your musically inclined friends away from the majors and toward local recording studios, local CD presses, the global Internet and global record stores (like CD Baby). Trade mp3's with your friends (you're running Linux, right? Surely you can run a private web server, and if you can't, nag your ISP daily) and ferchrissake don't post indie (except TVT Records) albums for all the public to see.
If you want to be an outlaw, you gotta be honest.
(IANAL, but my horoscope says I have aptitude for it)
Look at this delightful little bill requiring exactly that introduced by California State Senator Jackie Speier (D-San Mateo) in her previous term. Apparently due to opposition from Honda and GM, the bill died in committee. It's interesting that the Transportation Committee considered civil liberties in their first analysis of the bill, but not in the second.
Of course she's bought and paid for. She was the mayor of San Francisco!
We tried voting her out, but lost something like 40-60. The op-ed columns were surprisingly uniform in their labeling of Tom Campbell as someone who "doesn't quite have what it takes" to make it in the Senate, and even more consistent in portraying her prolific selling-out as "effectiveness" and "getting things done". You can search for some of the juicy tidbits at Media Awareness Project. Here's just one sorry example, with glowing references to the Maxxam Headwaters buyout.
Slashdot readers ought to vote against her based solely on her continuing support of the CDA. Californians ought to vote her out simply because she's as corrupt as they come. 5.5 more years...
It's good for keeping your sysadmins out of their cars at 2am:-)
Seriously, we'd need to see usage stats, uptimes, and load averages to see how they're really doing, and such statistics are guarded jealously (usually by management more than staff).
I'd love to see what sort of innovations they've put together for system installation. Kickstart just ain't Jumpstart.
Rackable's 2U systems were nicely built and priced fairly, and at least one of them even came with etherboot pre-installed. Unfortunately, the salesperson I dealt with was less than stellar, in that he 1) wouldn't give me the real story on why 1U's weren't available at the time (CA810 motherboards dried up) 2) wouldn't sell me a SCSI configuration because it "might" not work, and dissembled (a Google search done after the deal showed that it would). I would have rather bought from the local beige-box builders, talked with technical people with clue, and saved about 30%. All that said, if I'm buying to appease VC's, I wouldn't hesitate to work with them again if they will give me exactly what I order.
(Disclaimer: I only dealt with them once, when a big company was buying lots of stuff for our startup, and I'm just a satisfied customer of Central Computer with an unpaid endorsement.)
Some Ethernet boards handle checksumming and IP for you, and some will take control of the bus to move data into system RAM for you.
Processes don't wait for packets on TCP sockets, they wait for data to be available. The TCP stack writes the new data (and only the new data) to the socket buffer, which indirectly signals the process that there's new data available.
"serialize" isn't a Microsoft term. It's been in use for several years and is quite easy to coin independently.
Of course they need gimmicks like this. I mean, without the hack-job writers to wrap the same old plot with new window dressing and without actors to imbue their two-dimensional characters with all the depth of a 78rpm LP, the MPAA is beyond screwed. By enlarging the field of the auditory and visual senses and creating new stimuli for the three remaining senses, studios can incrementally add new dimensions to the same old content several times over, and they won't even have to pay scale.
I haven't seen an industry that had such a fight with its own obsolescence, except for the military-industrial complex. Watch for the MPAA to borrow from McCarthy's playbook. ("I have in my hand here a list of 5000 movie pirates...")
if a weakly-typed, weakly-structured, multiple-inheritance language with a specialization in pattern matching and terse syntax is advantageous to a particular application, and there are plenty where this is so. mod_perl makes a quite passable platform for in-server processing and allows you to write your httpd.conf in perl for automatic maintenance, but the application bits and bobs aren't really there (except for Mason). Java's interfaces and reflection API allow Java modules to connect more safely yet more freely than in Perl.
I otherwise agree 100% that some Slashdot readers are generally ignorant that B**w*lf is not the be-all and end-all of scalability, and that wooden frames, while suitable for houses, are unseen in very tall buildings.
Resin, while not quite open-source, is an amazingly low-cost yet highly scalable web server platform. Ir does an admirable job of serving Java applications redundantly and implements a goodly portion of the relevant Sun standards with easy configuration and mediocre documentation. I recently developed the infrastructure of a mixed JSP/servlet image-delivery web application (no, not what you think) using Resin and it was relatively easy to deploy, stable, and demonstrably 2-4x faster than Tomcat. Resin had very few but but nonetheless surprising holes in coverage, like ignoring startup order in web-app/load-on-startup tags. Resin is an order of magnitude cheaper than Weblogic or Dynamo, and you even get the source (which BEA and ATG jealously guard).
PalmOS reeks of lots of MacOS "heritage", from the.prc file format to the "resource" paradigm to the begware weenies and lack of third-party libre applications. PalmOS runs well on small 68000's because desktop PC's were once very small, and 512k of RAM and an 800k floppy are quantities of storage that today you can get easily and (relatively) cheaply in semiconductor form.
The VR3 is slow not because of the CPU, but because the root filesystem is cramfs. (For the uninitiated, this means file contents are compressed with zlib and must be uncompressed to RAM before use.) If you have a 10 meg box, 15 megs of crap, and a tooled-up production line in China, you do what you gotta do because busybox will only take you so far and rework isn't cheap. Masked ROMs are far cheaper than flash in production quantities, so once the code gets finalized, they can devote a 16MBx8 ROM to the kernel and default application suite and the sucker will fly.
The consumer system ROMs could easily afford to lose things like bash, top, chroot, strace, and rsync (which isn't really a good solution for desktop synchronization anyway, since it handles only files, not records). If a user really wants bash on a palmtop they can blow their own megabyte on it. They can probably strip out enough of the incidentals to fit the resulting system into 10MB. Or, they could add another 8MB (or 16MB, if they feel generous), devote a whole 16MB chip to the system disk, spend less CPU and power on decompressing executables, and everyone goes home happy.
But is Linux a desktop OS or a server OS? Or an embedded OS? Or two or more of the above? Or might it have purposes outside those pigeonholes?
So why is it okay to take toys from individuals who play with them in an antisocial manner, but when it's a corporation, suddenly property rights are absolute? A corporation is nothing more than a shield against liability for an individual's or group's actions. Isn't it curious that conservatives jump up and down screaming like a four-year old about personal responsibility, yet ignore or suppress the role of corporations in cultivating irresponsible behavior and the many examples of such?
That said, character is a valid factor in sentencing, as illustrated by several countries' legal systems. The repentant, apologetic offender receives a lighter charge and/or sentence than the willful, cold, repeat offender. They have been involved in the premeditated, unethical murder of many companies and good ideas that just happen to not put them at the top of the heap, and in any society with a serviceable ethical compass, the officers and board would have been jailed, the assets sold off, and the proceeds turned back to the purchasers of their clearly defective software.
There are two important points that you appear to have missed: one, many decisions about what, when, where and how are driven by engineering floor consensus rather than non-technical guys in suits. Two, extreme programming works best on OO projects where requirements are vague or changing, such as internal applications (Chrysler's payroll system, for instance) or public application services, because it provides tactical options the waterfall model does not but that the real world occasionally does require.
User stories do not equal "requirements gathering". User stories are a specific type of requirements gathering by generating informal use case scenarios, usually in close cooperation with a customer (present or by proxy).
Release planning does not equal a project plan. Releases in extreme shops occur far more frequently than the typical "project plan" can digest, let alone represent. Calling release planning "project planning" assumes top-down dictatorial management.
"Project velocity" does not equal "hitting milestones". Milestones are not negotiable, nor do they provide particularly good resolution. Milestones also deny the ability for the team (remember, the ones actually doing the work) to reorder feature development to meet customer requirements.
Moving people around is just fine because release planning results in lots of micro-projects of a day or three each, certainly no longer than a week, whereas standard planning might hand a three- or four-week project to an engineer. Engineers pair themselves off, depending on who might have the skills or experience helpful with some particular or general module or subsystem.
Application services generally do have a representative customer available, or can easily enough get one through various incentives. Internal applications almost always have a user available. eXtreme Programming Explained offers suggestions on getting a representative customer while keeping them connected with their usual roles and duties. If you don't have a representative customer, appoint someone (perhaps the CTO would be easier to live with as a customer than as a taskmaster).
Code must be written to agreed-upon standards. The difference between extreme and non-extreme shops is whether the standards are reached by consensus among skilled engineers or some manager with a stick up his arse.
Writing unit tests first is almost always possible, if your code is sufficiently self-contained (no intervening web servers or the like), and rarely impossible even then. An important hidden benefit to writing unit tests first is that you're forced to use the API before implementing it, raising any necessary warning flags before you implement something unusable. Of course, the usual benefits of unit testing still accrue. You also use the unit tests to answer the question of whether your code is done yet. Once the entire system with your code passes all unit tests, stop working on the code and write some more unit tests to try harder to break stuff. This stratagem is very useful outside of extreme as well.
"Only one pair integrates at a time" is an artifact of the author's preference for Smalltalk, whose development environment is not like the C development environment most of us are used to. You can safely ignore this one; I do.
Pair programming produces code at about the same rate or slightly slower than the two programmers working separately, but in all cases faster than one programmer flying solo. You can't guarantee you get good code from the solo programmer, either, but the simple fact is most problems in software are the result of a moment's inattention to some detail that a fresh pair of eyes is more likely to catch. The Explained book offers more detail on how to pair programmers effectively.
Collective code ownership = chaos. I once wrote a TCP/IP layer for a big blue 800lbs gorilla. The code was complete, it entered testing, and was half way through (two weeks worth
of testing!) when one of the other programmers decided to rewrite a section of my code suposedly to improve performance. So let's see, someone else's code with my name on it. Great!
Did it improve performance? Would anyone's name beside "Big Blue" and "800lb Gorilla(tm)" appear on it after it shipped anyway? Does anyone care besides you?
Again, extreme is useful in situations where the requirements are vague or changing. The corollary is that it's not as useful in implementing a set of specifications legendary for its clarity and completeness.
"Collective code ownership" is better expressed as a rule: "Anyone who can add value to the code is required to do so at any time." Failing this, either no one owns the code or each individual owns their code. The former is prone to corporate finger-pointing exercises, blame-laying, and a general tendency to not care. The latter is prone to ego trips (as seen above).
As Explained puts it, "That's fine. You just can't work with us." Extreme is just another tool in the software engineering management toolbox. It works where it does. It doesn't work so well or at all where it doesn't. Sorry about that.
The difference here is that the Agenda is a real Linux PDA with PDA-type applications under Linux, not just a handheld with a login: prompt. You know, memo pad, calendar with alarm, to do list, things that make the device useful as well as cool to those among your fellow geeks who are potheads.
Simple Logic: Why doesnt the Patent Office fire up a Slashcode based website and give the community-at-large an opportunity to diffuse patents *before* they are issued?
Simpler Logic: How does that help the USPTO collect money? How does keeping prices low by not granting monopolies help [hushed whisper] The Economy?
I find it rather pathetic that we should pay for thing such as living space and food. Those things should be provided by society for you. That way people could focus on achieving greater things, instead of worrying about if they are going to pay the rent.
State-provided housing and food (or reasonable allowances therefor) has several side effects that are noteworthy and important. Homelessness would end quickly, as the ability to obtain shelter is divorced from the need for the tenant to pay for it and thus from the need for employment, and it puts idle shelter back into action by reducing or negating the incentives to keep it idle. "Ugly jobs" (those jobs which are excessively dangerous, strenuous, or morally repugnant), often only filled because workers have no other option, would dry up or see improved conditions, since the job market becomes more of a free market and less of a captive one. Entrepreneurship would become less risky and more popular. People would be happier as they begin exploiting this underappreciated and strictly limited resource called "time" toward their own ends rather than the Empire's. ("Somewhere, a monkey has just typed out the cure for cancer. No one notices, as they're all busy looking for Shakespeare.")
Don't expect to see this in the US before the revolution, though. Without the ability to deprive you of your rights for not playing ball, the Empire dissolves, and the powers that be can't have that.
(Side note: How many wrong-headed ideas are propagated and taken as dogma not because of any gain to society resulting from them, but rather because the individual perpetrators face serious legal or other danger if the lie were exposed? The War On (Non-Commercial) Drugs is fought by profiteering legal drug manufacturers under color of "moral leadership" and "expertise"; male circumcision still has ostensible standing as a medical procedure because the damage it causes is valuable to the monkeys in power (Immerman and Mackey, "A proposed relationship between circumcision and neural reorganization", Journal of Genetic Psychology 1998; 159(3):367-378), the war for capitalism is fought by people who think they have a chance to be a player and the players who want to eliminate that possibility, and the list goes on...)
Why is it that Taco supports a guy who chooses to use his DSL connection in a way that isn't agreeable to the company that provides the service[...]?
Why should a company be forced to provide a service to someone who obviously isn't happy with it? Is that not forcing someone (some company I guess) to do something against their will?
Because corporate entities conveniently have the power of small cities (or small countries), the rights of citizens, no institutional conscience, and very little legal responsibility? Because corporations are more resistant to the social coercion that people use to keep other people from encroaching on the rights of others, as seen in this very case? Because you can't incarcerate a corporation? Because the only thing a for-profit corporation is legally permitted to "will" is to accept, spend and hoard money, and (as you mentioned) "people really don't vote with their wallets"? Unless you expect individuals to act without conscience and deal with others who have none, see accepting the consequences for actions as indefensibly stupid, and believe that liberty and justice are reserved for those who can afford it, things certainly do not need to flow both ways here.
Why should a company be forced to provide a service to someone who obviously isn't happy with it?
Because they agreed to provide a service to the public, and that damned well means all of 'em, no matter their opinions. Is someone of African descent necessarily going to be happy in a bar full of rednecks and Confederate flags? Does the law guarantee them the right to be there as a member of the public?
I think because a company is essentially faceless we think it is ok that even though they own something, they shouldn't be allowed to choose how or by whom it is used.
In my mind it has nothing to do with whether it's a corporation or individuals. Once you step into the public sphere, you put up with annoying behavior that doesn't cause you serious harm because you know you annoy others just the same. Once you offer something to the general public, you no longer have the right to pick and choose who uses it, unless you refund them for the unused portion, you don't have a monopoly. A barkeep telling me he "don't serve [my] kind here" is just as wrong as a hosting provider that takes down my web site because the provider doesn't like what I happen to say.
Once an item leaves your possession and ownership, or once you have agreed for valuable consideration to provide a service, you no longer have the right to pick and choose how it is used. The law will support you only insofar as the terms of the agreement support public policy and only if you can articulate the harm to a judge. (More recently, inarticulable speculation seems to be sufficient, as seen in Universal vs. Reimerdes.)
No, it didn't need to be done. You could (and should) have used a server-side dynamic page that looked at the User-Agent: request header and 302'ed to (or, better yet, displayed) the correct content. Javascript doesn't do the job if you don't have Javascript available and enabled.
No, dear gods no not RMS. Can you picture RMS talking socialist turkey to a Company son?
Free marketing tip: every marketing message has an audience. What sort of message would most effectively resonate with a Texan conservative capitalist audience? Who in the libre software community could be chummy enough with an allegedly free-market Republican, not interrupt every inappropriate choice of phrase with tiresome discourse, and perhaps even behave quite personably towards the host?
Re-writing the laws now to allow anyone to take the drug companies' intelectual property is just going to make expensive experimental research much more risky for businesses
"Intellectual", and not at all. What we're noticing here is that the cost of drugs could be cut in half if marketeers and executives (who are undeniably useless to the final product) were fired. Remember, when you buy Viagra, you also buy Viagra candy jars for doctors and "retreats" and/or campaign contributions for receptive government officials. The "product" is becoming less the end and more the means to the end -- what exactly is one buying anyway?
Of course the 'payout' has to be a good amount if the chances of getting anything back at all are so low.
What you are describing is not running a business. What you are describing is called "speculation" to be kind, or "gambling" to be honest. Economies based on speculation crash. Look at 1929. Look at 2001. Crashes hurt people. In whose interests are economies based on speculation?
Sure both sides sent people to space and built sizable armies, which side benefited their common-man the most? The west had microwaves, TV's, cars, houses, ready amounts of food & goods, and appliances. The east had almost no non-military innovation (that they didn't steal from the west); the people lived with constant shortages, small cramped apartments with the minimum of comforts, and poor working conditions.
This isn't as cut-and-dried as you think it is.
If you ask whether the distribution of wealth, workplace safety, freedom from undue regulation, freedom from government propaganda, or the political power of an average citizen have gotten better in the West, the answer would be a resounding "no". I'd wager that Russia proper has seen improvement in most if not all of these factors.
Of course, if you're not a consumer sheep, or you happen to live in the SF Bay Area, most of the hush-puppies you erroneously perceive as HolyManna from The Gh0d of KapitalOnHigh don't do you much good because you're paying a fortune for a cramped apartment and probably don't see much of it anyway.
I think I'll choose capitalism over socialism any day.
Are you sure? You haven't seen a pure application of either one, and you probably won't. Why? Remember, the Cold War was primarily about economic protectionism. If we had any number of socialist countries selling into the export market on a cost-recovery basis, with shorter workweeks and better wages, the fat cat industrialists would have seen Daddy's fortunes disappear overnight or seen risks to their lives. Contrary to what you may have read, this is the real "Domino Effect" that scared an entire generation of the elite. This is why this country has spent trillions of dollars of what is rightfully your money to fight this "scourge" in order to preserve useless moneyed middlemen (see also the DeCSS decision).
The corporate media is NOT liberal. I'm tempted to have a run of bumper stickers to that effect printed.
If the media were truly "left-leaning" media outlets would be more numerous and smaller. Instead, there are no more than SIX corporations deciding what's fit for the cattle to read. And what sort of content control do they exercise?
If the media were truly "left-leaning" we'd see more substantive coverage of left activism. Instead we get John Podesta babbling "These protesters don't believe that Bush is our next president! [bellylaugh] They don't believe it? Why, he'll be inaugurated as our forty-third president in about five hours here, and the weather is cold out today, and isn't that economy great? Back to you, Barbara..."
If the media were truly "left-leaning" they would report on war as the gruesome atrocity that it is, like they covered Vietnam. Unfortunately, if they are at all "left-leaning", they're far too "corporate" to let slip an opportunity to make weapons manufacturers rich. When was the last time you heard ANY death tolls from the media?
If the media were truly "left-leaning" they would actually report on (or at least editorialize against) the various acts of Congress and Executive Orders that shred away individual rights. Instead they broadcast scary, unrealistic, often cut-from-whole-cloth propaganda that curiously goes away as soon as whatever unconstitutional law passes.
If the corporate media were "left-leaning", we would have seen more reportage on conflicts of interest in the political sphere, such as the election fraud in Florida and who benefited. Unfortunately, if the media reports on such things, they lose their access to pre-digested news releases from such impartial officials as Barry McCaffrey or Oliver North.
If the corporate media did appear the least bit "left-leaning", it is only because one's television set is upside-down.
Validating XML parsers, on the other hand, screwed the pooch by not providing for documents to be validated against any but the specified DTD. At the very least, new validating parsers ought to maintain an internal table of aliases, so that you can validate documents of type http://www.netscape.com/~nportman/grits.dtd against file:/home/marxmarv/project/dtds/hotgrits.dtd without changing the XML DTD specification or the input at all, and would also enable DTD's to be specified by, say, MIME Content-Type.
None of this fixes the copyright problem, but it does keep entire applications from going away because of some sysadmin cock-up. (As an aside, at least .NET will show the sheeple how often network blackouts happen...)
-jhp
If you want to join the opposition, steer your musically inclined friends away from the majors and toward local recording studios, local CD presses, the global Internet and global record stores (like CD Baby). Trade mp3's with your friends (you're running Linux, right? Surely you can run a private web server, and if you can't, nag your ISP daily) and ferchrissake don't post indie (except TVT Records) albums for all the public to see.
If you want to be an outlaw, you gotta be honest.
(IANAL, but my horoscope says I have aptitude for it)
-jhp
-jhp
We tried voting her out, but lost something like 40-60. The op-ed columns were surprisingly uniform in their labeling of Tom Campbell as someone who "doesn't quite have what it takes" to make it in the Senate, and even more consistent in portraying her prolific selling-out as "effectiveness" and "getting things done". You can search for some of the juicy tidbits at Media Awareness Project. Here's just one sorry example, with glowing references to the Maxxam Headwaters buyout.
Slashdot readers ought to vote against her based solely on her continuing support of the CDA. Californians ought to vote her out simply because she's as corrupt as they come. 5.5 more years...
-jhp
Seriously, we'd need to see usage stats, uptimes, and load averages to see how they're really doing, and such statistics are guarded jealously (usually by management more than staff).
I'd love to see what sort of innovations they've put together for system installation. Kickstart just ain't Jumpstart.
-jhp
(Disclaimer: I only dealt with them once, when a big company was buying lots of stuff for our startup, and I'm just a satisfied customer of Central Computer with an unpaid endorsement.)
-jhp
Some Ethernet boards handle checksumming and IP for you, and some will take control of the bus to move data into system RAM for you.
Processes don't wait for packets on TCP sockets, they wait for data to be available. The TCP stack writes the new data (and only the new data) to the socket buffer, which indirectly signals the process that there's new data available.
"serialize" isn't a Microsoft term. It's been in use for several years and is quite easy to coin independently.
-jhp
I haven't seen an industry that had such a fight with its own obsolescence, except for the military-industrial complex. Watch for the MPAA to borrow from McCarthy's playbook. ("I have in my hand here a list of 5000 movie pirates...")
And you think I'm kidding...
-jhp
-jhp
I otherwise agree 100% that some Slashdot readers are generally ignorant that B**w*lf is not the be-all and end-all of scalability, and that wooden frames, while suitable for houses, are unseen in very tall buildings.
-jhp
(Disclaimer: Not a paid endorsement.)
-jhp
The VR3 is slow not because of the CPU, but because the root filesystem is cramfs. (For the uninitiated, this means file contents are compressed with zlib and must be uncompressed to RAM before use.) If you have a 10 meg box, 15 megs of crap, and a tooled-up production line in China, you do what you gotta do because busybox will only take you so far and rework isn't cheap. Masked ROMs are far cheaper than flash in production quantities, so once the code gets finalized, they can devote a 16MBx8 ROM to the kernel and default application suite and the sucker will fly.
The consumer system ROMs could easily afford to lose things like bash, top, chroot, strace, and rsync (which isn't really a good solution for desktop synchronization anyway, since it handles only files, not records). If a user really wants bash on a palmtop they can blow their own megabyte on it. They can probably strip out enough of the incidentals to fit the resulting system into 10MB. Or, they could add another 8MB (or 16MB, if they feel generous), devote a whole 16MB chip to the system disk, spend less CPU and power on decompressing executables, and everyone goes home happy.
But is Linux a desktop OS or a server OS? Or an embedded OS? Or two or more of the above? Or might it have purposes outside those pigeonholes?
-jhp
That said, character is a valid factor in sentencing, as illustrated by several countries' legal systems. The repentant, apologetic offender receives a lighter charge and/or sentence than the willful, cold, repeat offender. They have been involved in the premeditated, unethical murder of many companies and good ideas that just happen to not put them at the top of the heap, and in any society with a serviceable ethical compass, the officers and board would have been jailed, the assets sold off, and the proceeds turned back to the purchasers of their clearly defective software.
-jhp
-jhp
User stories do not equal "requirements gathering". User stories are a specific type of requirements gathering by generating informal use case scenarios, usually in close cooperation with a customer (present or by proxy).
Release planning does not equal a project plan. Releases in extreme shops occur far more frequently than the typical "project plan" can digest, let alone represent. Calling release planning "project planning" assumes top-down dictatorial management.
"Project velocity" does not equal "hitting milestones". Milestones are not negotiable, nor do they provide particularly good resolution. Milestones also deny the ability for the team (remember, the ones actually doing the work) to reorder feature development to meet customer requirements.
Moving people around is just fine because release planning results in lots of micro-projects of a day or three each, certainly no longer than a week, whereas standard planning might hand a three- or four-week project to an engineer. Engineers pair themselves off, depending on who might have the skills or experience helpful with some particular or general module or subsystem.
Application services generally do have a representative customer available, or can easily enough get one through various incentives. Internal applications almost always have a user available. eXtreme Programming Explained offers suggestions on getting a representative customer while keeping them connected with their usual roles and duties. If you don't have a representative customer, appoint someone (perhaps the CTO would be easier to live with as a customer than as a taskmaster).
Code must be written to agreed-upon standards. The difference between extreme and non-extreme shops is whether the standards are reached by consensus among skilled engineers or some manager with a stick up his arse.
Writing unit tests first is almost always possible, if your code is sufficiently self-contained (no intervening web servers or the like), and rarely impossible even then. An important hidden benefit to writing unit tests first is that you're forced to use the API before implementing it, raising any necessary warning flags before you implement something unusable. Of course, the usual benefits of unit testing still accrue. You also use the unit tests to answer the question of whether your code is done yet. Once the entire system with your code passes all unit tests, stop working on the code and write some more unit tests to try harder to break stuff. This stratagem is very useful outside of extreme as well.
"Only one pair integrates at a time" is an artifact of the author's preference for Smalltalk, whose development environment is not like the C development environment most of us are used to. You can safely ignore this one; I do.
Pair programming produces code at about the same rate or slightly slower than the two programmers working separately, but in all cases faster than one programmer flying solo. You can't guarantee you get good code from the solo programmer, either, but the simple fact is most problems in software are the result of a moment's inattention to some detail that a fresh pair of eyes is more likely to catch. The Explained book offers more detail on how to pair programmers effectively.
Did it improve performance? Would anyone's name beside "Big Blue" and "800lb Gorilla(tm)" appear on it after it shipped anyway? Does anyone care besides you?Again, extreme is useful in situations where the requirements are vague or changing. The corollary is that it's not as useful in implementing a set of specifications legendary for its clarity and completeness.
"Collective code ownership" is better expressed as a rule: "Anyone who can add value to the code is required to do so at any time." Failing this, either no one owns the code or each individual owns their code. The former is prone to corporate finger-pointing exercises, blame-laying, and a general tendency to not care. The latter is prone to ego trips (as seen above).
As Explained puts it, "That's fine. You just can't work with us." Extreme is just another tool in the software engineering management toolbox. It works where it does. It doesn't work so well or at all where it doesn't. Sorry about that.
-jhp
-jhp
-jhp
Don't expect to see this in the US before the revolution, though. Without the ability to deprive you of your rights for not playing ball, the Empire dissolves, and the powers that be can't have that.
(Side note: How many wrong-headed ideas are propagated and taken as dogma not because of any gain to society resulting from them, but rather because the individual perpetrators face serious legal or other danger if the lie were exposed? The War On (Non-Commercial) Drugs is fought by profiteering legal drug manufacturers under color of "moral leadership" and "expertise"; male circumcision still has ostensible standing as a medical procedure because the damage it causes is valuable to the monkeys in power (Immerman and Mackey, "A proposed relationship between circumcision and neural reorganization", Journal of Genetic Psychology 1998; 159(3):367-378), the war for capitalism is fought by people who think they have a chance to be a player and the players who want to eliminate that possibility, and the list goes on...)
-jhp
-jhp
Once an item leaves your possession and ownership, or once you have agreed for valuable consideration to provide a service, you no longer have the right to pick and choose how it is used. The law will support you only insofar as the terms of the agreement support public policy and only if you can articulate the harm to a judge. (More recently, inarticulable speculation seems to be sufficient, as seen in Universal vs. Reimerdes.)
-jhp
-jhp
Free marketing tip: every marketing message has an audience. What sort of message would most effectively resonate with a Texan conservative capitalist audience? Who in the libre software community could be chummy enough with an allegedly free-market Republican, not interrupt every inappropriate choice of phrase with tiresome discourse, and perhaps even behave quite personably towards the host?
Sounds like ESR is the perfect man for the job.
-jhp
-jhp
Of course, if you're not a consumer sheep, or you happen to live in the SF Bay Area, most of the hush-puppies you erroneously perceive as HolyManna from The Gh0d of KapitalOnHigh don't do you much good because you're paying a fortune for a cramped apartment and probably don't see much of it anyway.
Are you sure? You haven't seen a pure application of either one, and you probably won't. Why? Remember, the Cold War was primarily about economic protectionism. If we had any number of socialist countries selling into the export market on a cost-recovery basis, with shorter workweeks and better wages, the fat cat industrialists would have seen Daddy's fortunes disappear overnight or seen risks to their lives. Contrary to what you may have read, this is the real "Domino Effect" that scared an entire generation of the elite. This is why this country has spent trillions of dollars of what is rightfully your money to fight this "scourge" in order to preserve useless moneyed middlemen (see also the DeCSS decision).Maybe you're happy being a tool. I'm not.
-jhp
If the media were truly "left-leaning" media outlets would be more numerous and smaller. Instead, there are no more than SIX corporations deciding what's fit for the cattle to read. And what sort of content control do they exercise?
If the media were truly "left-leaning" we'd see more substantive coverage of left activism. Instead we get John Podesta babbling "These protesters don't believe that Bush is our next president! [bellylaugh] They don't believe it? Why, he'll be inaugurated as our forty-third president in about five hours here, and the weather is cold out today, and isn't that economy great? Back to you, Barbara..."
If the media were truly "left-leaning" they would report on war as the gruesome atrocity that it is, like they covered Vietnam. Unfortunately, if they are at all "left-leaning", they're far too "corporate" to let slip an opportunity to make weapons manufacturers rich. When was the last time you heard ANY death tolls from the media?
If the media were truly "left-leaning" they would actually report on (or at least editorialize against) the various acts of Congress and Executive Orders that shred away individual rights. Instead they broadcast scary, unrealistic, often cut-from-whole-cloth propaganda that curiously goes away as soon as whatever unconstitutional law passes.
If the corporate media were "left-leaning", we would have seen more reportage on conflicts of interest in the political sphere, such as the election fraud in Florida and who benefited. Unfortunately, if the media reports on such things, they lose their access to pre-digested news releases from such impartial officials as Barry McCaffrey or Oliver North.
If the corporate media did appear the least bit "left-leaning", it is only because one's television set is upside-down.
-jhp