...but I belive the X designers made a fundamental mistake when they cut the client/server boundary at such a low level.
Absolutely and exactly right; I've been saying the same thing for years.
X was developed in the MIT environment, which at the time consisted of big servers, pathetically underpowered workstations (no local storage, <=8 bits per pixel), and 10Mbit Ethernet everywhere. Thus, the architecture of X presumes that most of the computing power resides on the central servers, and the servers and clients will be able to communicate at high speed.
In the modern Internet, with massively overloaded servers, workstations capable of running Quake and Unreal Tournament, and dial-up modem connections, each of these assumptions turns out to be exactly wrong.
(You could even view the Web as an attempt to address the same problem -- distributed computing with a graphical interface -- and one far better adapted to existing environment than X.)
Widget sets should reside on the client side (I'm using "client" and "server" in the conventional sense here, not the inverted X usage). The application on the server shouldn't have to say, "draw a rectangle here with these dimensions, with this text here with these fonts, etc...", followed by events and drawing instrucitons traversing the net as the user drags the mouse. It should just say, "here's the menu description, don't bother me again until the user chooses something from it."
If that approach had been adpoted, we wouldn't have distinct Motif apps and KDE apps and GNOME apps. We'd just have X apps, rendered as Motif or KDE or GNOME (or Win32 or Aqua or AfterStep or...), depending on how your workstation is configured. And we'd be deploying these apps across the (low-bandwidth) Internet, not just across (high-bandwidth) LANs.
"I've never seen anything fill a vacuum so quickly and still suck." --Rob Pike on X
At the time X was developed, each of the Unix workstation vendors had their own window system, most of them half-baked at best; the only one tht was reasonably functional and mature was Sun's NeWS.
Then X came along -- growing out of MIT research funded by DEC and IBM -- and it just sucked all the oxygen out of the room. All of the vendor-specific solutions dried up and blew away, NeWS being the last to go.
Vendors saw that they needed to standardize on a windowing system, just as they had standardized on UNIX and C; and X's licensing terms allowed them to standardize while still "adding value" through proprietary widget sets. It succeeded so massively because of licensing and timing more than technical excellence.
As Rob Pike put it, "I've never seen anything fill a vacuum so fast and still suck."
"if I was a developer working for a company whose livelihood depended on being able to sell support for the software I wrote wouldn't I be less motivated to write easy-to-use and bug free code as someone who worked for a company whose lifeline wasn't based on selling support contracts?"
This may be a valid concern, but a developer (team, company) that works along these lines -- deliberately avoiding usability improvements -- risks a loss of mindshare. If your program is so much harder to use than the available alternatives, then no one will use your software, much less buy a support contract.
I think we're seeing this effect in action among SMTP daemons; I don't have any numbers, but I get the impression that qmail, smail, and postfix seem to be gaining ground on the notoriously hard-to-configure sendmail.
Besides, no matter how easy the software is to use, some people will need support still -- as long as there is some user out there wondering where the damned "any" key is...
Apple wanted to charge money for HyperCard. The only reason they wound up bundling it was because its creator, Bill Atkinson, threatened to leave and take his software with him (or re-create it from scratch) if they didn't.
Which is more unlikely, Cruise's nutty aerobatic fighting style, or an EMPEROR challenging a SLAVE to a duel?!?!?
Like Braveheart before it, Gladiator played merry hell with the real history. But the real Emperor Commodus really did fight in the arena, repeatedly. (Presumably against slaves. And with or without cheating? You make the call!) Commodus styled himself after Hercules, even to the point of wearing a lion skin, and adopting the demigod's name as one of his many titles.
I'd start with a scripting language, probably Python. (Although I love Perl dearly, it can be kind of, well, dense.)
You know the drill. Start them with "Hello, World", then counting to ten, then counting down from ten, then the Fibonacci series, then "Please enter your name: / Hello, [name]!", and so on.
Visual Basic may be unavoidable, but don't start them with that. Not because I'm anti-Microsoft (well, not just because of that), but because:
(a) even a simple GUI program is going to be more complicated than doing one- to ten-liners in a CLI scripting language, so they'll get to the payoff quicker;
(b) Python and Perl are cross-platform, so you may be able to entice them to turn away from the Dark Side of the Force (Windows); and
(c) Python and Perl are free (as in beer), while VB costs money. If they decide they don't want to be programmers after all, you've saved some cash at least.
And the first dose should always be free.
(As in beer or speech.)
P.S.: Learning HTML, and a little JavaScript, is another decent starting point, also nicely cross-platform and low-cost.
I hear you, brother. When the privacy stink came up with RealJukeBox, I tried some other MP3 players, including WinAmp and MusicMatch. I wound up going back to RJB (after the privacy thing was sorted out) simply because it looked and behaved like a normal application, at least in full-size mode. Menu buttons with text small enough to fit on a grain of rice leave me cold.
Alfred Bester was "quiet" during B5's production because he passed away in 1987.:( That can really slow you down.
Bester's novel "The Demolished Man" included a Psi organization that may have inspired the Psi Corps (though if I recall, it wasn't quite as sinister as the B5 version).
Incidentally, Spider Robinson credits Bester with thinking up the names for his first two "Callahan's" anthologies (Callahan's Crosstime Saloon and Time Travelers Strictly Cash). Robinson's story "The Traveling Salesman" is dedicated to Bester; it features a manic character named "Al Phee".
The government seems to be unwilling to put its money where its mouth is. They claim (correctly) that Microsoft is playing its custoemrs for suckers, but then go right on being the biggest sucker of all themselves.
If the government really wants to break Microsoft's monopoly power, they could do it, not through the Department of Justice, but through the General Accounting Office, the cetral purchasing agency for the government.
They wouldn't even have to name Microsoft specifically; simply require the use of fully and publicly documented file formats and network protocols available from multiple vendors. (In fact, they shouldn't name MS: Microsoft might be able to challenge it if they did; and it is simply good policy regardless of whether MS existed or not.)
Isn't it more disrespectful to open up about the bugs when a patch isn't almost done. What good can a bunch of average joes and script kiddies knowing about the bug do? Only the developers can fix it, so why shouldn't they be the only ones to know about it until they're a few days or so from fixing it?
How would you feel if your system were cracked, using a known but unpublicized exploit -- and that knowledge of this problem was withheld from you, supposedly for your own protection? I don't know about you, but I'd be hopping mad.
If a known problem is publicized, sysadmins can shut down or restrict the (potentially) compromised service, make backups, check for intrusions, watch for more intrusions. Programmers who aren't part of the "insider" group may nonetheless have some insight that will lead to a faster or more definitive fix.
Microsoft will spread FUD regardless of what open source developers do. Just ignore them and do the right thing.
And now to something completely different: F***! Would some kind soul please explain to us poor ignorant non-native english speakers why this word is so bad?
IANAL (I am not a linguist), but I'll give it a shot.
The modern English language is the result of a head-on collision between two other languages: Anglo-Saxon (with Germanic roots), and Norman French (Latin roots). When the Normans conquered England in 1066, they became the English aristocracy; thus Norman French became the language of aristocrats, and Anglo-Saxon, the language of the proles. The languages eventually merged, but traces of class distinction remain in the words for delicate subjects like sex and other bodily functions.
Words descended from Norman French -- which tend to be baroque and polysyllabic -- are the "polite" terms, used by polite gentlemen and ladies. While the Anglo-Saxon terms -- blunt monosyllables, mostly -- are considered rude, like the Saxon peasants who used those words.
Norman aristocrats might fornicate, or have intercourse, but only Saxon peasants and cattle f--k. And the upper class do not s--t, they defecate or excrete. (I'm on a company network too.) You can even see the distinction in equivalent words like "perspiration" and "sweat", or "expectorate" and "spit".
This also, almost by accident, makes the language more expressive, allowing writers and speakers to easily add a nuance of politeness or rudeness that might not be possible in other languages.
Silly, isn't it? The indignation of American moralists who rail against "foul" language is rooted in a class distinction that we theoretically left behind over two centuries ago...
(Okay, now it's time for a real linguist to come along and tell me everything I got wrong.)
How should we decide who gets it? Does it belong to the highest bidder? And for how long. Can the first person to apply for bandwidth get it? We would have frequency squatting. How can we decide on the value of new uses vs. older established ones?... from the point of view of economic efficiency it doesn't matter who the property rights are awarded to (assuming it isn't a stubborn codger who won't deal with anyone no matter how much it may hurt him).
Something like Henry George's "Single Tax" system might work here. While originally meant to be applied to land, it would probably work pretty well with bandwidth allocations.
It works like this: The owner of the property specifies the amount at which he values the property. Taxes are levied as a flat rate based on the specified values. This prevents anyone from setting an artificially high value on the property; set it too high, and you won't be able to afford the taxes.
But if anyone comes along and ponies up the amount you specified, you must sell. This prevents you from setting too low a value, otherwise you'll lose control of the property.
Pretty soon, the property (bandwidth) winds up in the hands of the people able to put it to the most productive use, and able to justify the maximum value (and pay the commensurate taxes). It encourages economizing on bandwidth (so that you can make do with a smaller "tract" of bandwidth, and sell or re-purpose the rest), and shifting bandwidth to more productive applications as technology improves.
Phallus: I put my music on there because I want everyone to freely distribute my music.
Clueless AC: The fact that you choose to help them rob you is not relevant.
I have a confession. When I was nine years old, I stole a bicycle from my parents. Oh, sure, they called it a "Christmas present"... but they fact that they chose to help me rob them is not relevant. I feel terrible about it.
Oh, and I stole a promotional flyer from the grocery store, too. It said "Free, Take One"... but the fact that they chose help me rob them is not relevant. I'm on a downhill slide, it's all so clear now...
However, I can't help but wonder which market Borland is aiming for with Kylix. Are they trying to persuade their Delphi coders to switch to Linux, or are they trying to persuade Linux hackers to switch to Delphi?
I think they're targeting shops that have one foot in both worlds: businesses that are beginning to evaluate Linux, like what they see, and foresee transitioning in the future. Such transitions generally won't happen quickly, so you'll have a shop that is half-Win32, half-Linux, and needs a RAD tool that works on both. This is a growing segment of the market, and one in which Microsoft will not, and cannot, move in and squash its competition.
(Another thing that would be cool: once Kylix is ported to Linux, it would be proportionately less effort to port it to other *NIX platforms -- such as MacOS X.)
The national cable channels (e.g., MTV, Comedy Central, Sci-Fi) are funded by a combination of advertising and subscriber fees (what you refer to as "convenience fees"). It's not as novel as it sounds; consider, that's how most print periodicals are funded. (And a few web sites as well.)
Also, remember that "basic cable" used to include all the ad-supported channels; but this changed, not because of corporate greed (or not exclusively because of corporate greed, anyway), but because of the regulatory changes which mandated (a) a low price for basic services, and (b) "must-carry" rules for broadcast channels. Perhaps it's different elsewhere, but there was no "tiered" service in my area (Houston) until after these new regulations were enacted.
(Granted that these rules didn't apply to satellite TV, but the satellite providers had to compete with this new pricing structure offered by cable, so they went to a tiered system as well.)
Okay, no one's talking about integrating this into the kernel, and no one's talking about prohibiting any other user interfaces, graphical or otherwise. Nor, it seems, is anyone talking about an IEEE- or ANSI-style formalized "standard".
If I understand this correctly, it will be "standard" in the same sense that bash and vi are standards: they're available, and behave consistently, in all distributions. If you don't like them, feel free to use something else, but they're always there to fall back on.
And just because something is a standard in this sense, doesn't mean it's graven in stone. Bourne evolved into ksh, bash, and zsh; vi into vim, etc. Standards evolve, or are displaced by newer, better standards.
I liked The Java Tutorial, 2nd edition, by Campione and Walrath. You might try running through the on-line version at Sun (see the link above). If you like it, it's available in print from all the usual suspects (Bookpool, Fatbrain, etc).
You might also invest in a reference like O'Reilly's Java in a Nutshell; if you're comfortable reading on the computer, there's a CD version that includes the contents of several other Java books.
Also be sure to look over the downloadable references provided by Sun.
Nominating a song like "Blame Canada" and snubbing an actor like Jim Carey really tells me a lot about americans...
A lot of us Americans are irritated that Carrey didn't get nominated, too. Don't judge us all by the choices made by the Academy.
Increasingly online I find I'm getting insulted for being Canadian with no provokation at all, and quite frankly shit like this doesn't help any.
Am I right in assuming that you haven't seen the movie? If you have seen it, I'm not sure how you managed to miss the point so badly...
"Blame Canada" is sung by Mrs. Broflovsky (Kyle's mom), who is notorious for rushing off on crusades to "protect the children", while neglecting basic parenting within her own family. The people in the movie who "blame Canada" are shown as destructive buffoons, blaming someone else -- anyone else -- for their own failure and irresponsibility.
Many people find "South Park" offensive on any number of levels, but one thing it is not is jingoistic or anti-Canadian.
You do realize, don't you, that the songs that get nominated, get performed, live, at the awards show? Are you ready for a live performance of "Blame Canada"?
Wonder who they'll get to sing lead.
Probably not Celine Dion...
(More seriously, this makes Mary Kay Bergman's suicide all the more tragic. It would have kicked ass to have her perform the song at the Oscars.)
all the targets are huge corperations that believed they were more powerful than the "hackers" and believe themselves above morality.
But if the attackers are motivated by anti-corp sentiment -- then why weren't Microsoft and AOL, the big-mama-jammas of the net, the first to be hit? As far as I know, these DoS guys haven't laid a glove on either one.
(Of course, if there were a DoS at AOL, would anyone even notice?:-)
The first thing that came to mind for me was the old "A-B-C murders" gimmick: hit your real target, and hit some unrelated bystanders before and after to make it look random.
The prepetrator may have had a beef agains Buy.com specifically ("I got yer restocking fee right here, buddy") and screwed around with them on the day of their IPO, and hit the others so as to make it look like random vandalism.
...you're making the invalid assumption that the Katz flamers have a life outside/.
paul.dunne said:
Why don't you and JK and co. form yourselves a little e-mail list (closed, of course), where you can chatter away to your hearts' content without the gross light of reality intruding?
Well, Wah, when you're right, you're right. For paul at least, Slashdot threads == reality.
X was developed in the MIT environment, which at the time consisted of big servers, pathetically underpowered workstations (no local storage, <=8 bits per pixel), and 10Mbit Ethernet everywhere. Thus, the architecture of X presumes that most of the computing power resides on the central servers, and the servers and clients will be able to communicate at high speed.
In the modern Internet, with massively overloaded servers, workstations capable of running Quake and Unreal Tournament, and dial-up modem connections, each of these assumptions turns out to be exactly wrong.
(You could even view the Web as an attempt to address the same problem -- distributed computing with a graphical interface -- and one far better adapted to existing environment than X.)
Widget sets should reside on the client side (I'm using "client" and "server" in the conventional sense here, not the inverted X usage). The application on the server shouldn't have to say, "draw a rectangle here with these dimensions, with this text here with these fonts, etc...", followed by events and drawing instrucitons traversing the net as the user drags the mouse. It should just say, "here's the menu description, don't bother me again until the user chooses something from it."
If that approach had been adpoted, we wouldn't have distinct Motif apps and KDE apps and GNOME apps. We'd just have X apps, rendered as Motif or KDE or GNOME (or Win32 or Aqua or AfterStep or...), depending on how your workstation is configured. And we'd be deploying these apps across the (low-bandwidth) Internet, not just across (high-bandwidth) LANs.
"I've never seen anything fill a vacuum so quickly and still suck."
--Rob Pike on X
Then X came along -- growing out of MIT research funded by DEC and IBM -- and it just sucked all the oxygen out of the room. All of the vendor-specific solutions dried up and blew away, NeWS being the last to go.
Vendors saw that they needed to standardize on a windowing system, just as they had standardized on UNIX and C; and X's licensing terms allowed them to standardize while still "adding value" through proprietary widget sets. It succeeded so massively because of licensing and timing more than technical excellence.
As Rob Pike put it, "I've never seen anything fill a vacuum so fast and still suck."
I think we're seeing this effect in action among SMTP daemons; I don't have any numbers, but I get the impression that qmail, smail, and postfix seem to be gaining ground on the notoriously hard-to-configure sendmail.
Besides, no matter how easy the software is to use, some people will need support still -- as long as there is some user out there wondering where the damned "any" key is...
Apple wanted to charge money for HyperCard. The only reason they wound up bundling it was because its creator, Bill Atkinson, threatened to leave and take his software with him (or re-create it from scratch) if they didn't.
Like Braveheart before it, Gladiator played merry hell with the real history. But the real Emperor Commodus really did fight in the arena, repeatedly. (Presumably against slaves. And with or without cheating? You make the call!) Commodus styled himself after Hercules, even to the point of wearing a lion skin, and adopting the demigod's name as one of his many titles.
Check it out...
You know the drill. Start them with "Hello, World", then counting to ten, then counting down from ten, then the Fibonacci series, then "Please enter your name: / Hello, [name]!", and so on.
Visual Basic may be unavoidable, but don't start them with that. Not because I'm anti-Microsoft (well, not just because of that), but because:
(a) even a simple GUI program is going to be more complicated than doing one- to ten-liners in a CLI scripting language, so they'll get to the payoff quicker;
(b) Python and Perl are cross-platform, so you may be able to entice them to turn away from the Dark Side of the Force (Windows); and
(c) Python and Perl are free (as in beer), while VB costs money. If they decide they don't want to be programmers after all, you've saved some cash at least.
And the first dose should always be free.
(As in beer or speech.)
P.S.: Learning HTML, and a little JavaScript, is another decent starting point, also nicely cross-platform and low-cost.
If you're this particular about grammar, how can you stand to read Slashdot in the first place?
Does that about sum it up?
Maybe things have changed since I studied Aristotelian logic back in my undergrad days, but it sounds a tad specious to me...
I hear you, brother. When the privacy stink came up with RealJukeBox, I tried some other MP3 players, including WinAmp and MusicMatch. I wound up going back to RJB (after the privacy thing was sorted out) simply because it looked and behaved like a normal application, at least in full-size mode. Menu buttons with text small enough to fit on a grain of rice leave me cold.
Bester's novel "The Demolished Man" included a Psi organization that may have inspired the Psi Corps (though if I recall, it wasn't quite as sinister as the B5 version).
Incidentally, Spider Robinson credits Bester with thinking up the names for his first two "Callahan's" anthologies (Callahan's Crosstime Saloon and Time Travelers Strictly Cash). Robinson's story "The Traveling Salesman" is dedicated to Bester; it features a manic character named "Al Phee".
If the government really wants to break Microsoft's monopoly power, they could do it, not through the Department of Justice, but through the General Accounting Office, the cetral purchasing agency for the government.
They wouldn't even have to name Microsoft specifically; simply require the use of fully and publicly documented file formats and network protocols available from multiple vendors. (In fact, they shouldn't name MS: Microsoft might be able to challenge it if they did; and it is simply good policy regardless of whether MS existed or not.)
How would you feel if your system were cracked, using a known but unpublicized exploit -- and that knowledge of this problem was withheld from you, supposedly for your own protection? I don't know about you, but I'd be hopping mad.
If a known problem is publicized, sysadmins can shut down or restrict the (potentially) compromised service, make backups, check for intrusions, watch for more intrusions. Programmers who aren't part of the "insider" group may nonetheless have some insight that will lead to a faster or more definitive fix.
Microsoft will spread FUD regardless of what open source developers do. Just ignore them and do the right thing.
The modern English language is the result of a head-on collision between two other languages: Anglo-Saxon (with Germanic roots), and Norman French (Latin roots). When the Normans conquered England in 1066, they became the English aristocracy; thus Norman French became the language of aristocrats, and Anglo-Saxon, the language of the proles. The languages eventually merged, but traces of class distinction remain in the words for delicate subjects like sex and other bodily functions.
Words descended from Norman French -- which tend to be baroque and polysyllabic -- are the "polite" terms, used by polite gentlemen and ladies. While the Anglo-Saxon terms -- blunt monosyllables, mostly -- are considered rude, like the Saxon peasants who used those words.
Norman aristocrats might fornicate, or have intercourse, but only Saxon peasants and cattle f--k. And the upper class do not s--t, they defecate or excrete. (I'm on a company network too.) You can even see the distinction in equivalent words like "perspiration" and "sweat", or "expectorate" and "spit".
This also, almost by accident, makes the language more expressive, allowing writers and speakers to easily add a nuance of politeness or rudeness that might not be possible in other languages.
Silly, isn't it? The indignation of American moralists who rail against "foul" language is rooted in a class distinction that we theoretically left behind over two centuries ago...
(Okay, now it's time for a real linguist to come along and tell me everything I got wrong.)
Something like Henry George's "Single Tax" system might work here. While originally meant to be applied to land, it would probably work pretty well with bandwidth allocations.
It works like this: The owner of the property specifies the amount at which he values the property. Taxes are levied as a flat rate based on the specified values. This prevents anyone from setting an artificially high value on the property; set it too high, and you won't be able to afford the taxes.
But if anyone comes along and ponies up the amount you specified, you must sell. This prevents you from setting too low a value, otherwise you'll lose control of the property.
Pretty soon, the property (bandwidth) winds up in the hands of the people able to put it to the most productive use, and able to justify the maximum value (and pay the commensurate taxes). It encourages economizing on bandwidth (so that you can make do with a smaller "tract" of bandwidth, and sell or re-purpose the rest), and shifting bandwidth to more productive applications as technology improves.
Oh, and I stole a promotional flyer from the grocery store, too. It said "Free, Take One" ... but the fact that they chose help me rob them is not relevant. I'm on a downhill slide, it's all so clear now...
(Another thing that would be cool: once Kylix is ported to Linux, it would be proportionately less effort to port it to other *NIX platforms -- such as MacOS X.)
Also, remember that "basic cable" used to include all the ad-supported channels; but this changed, not because of corporate greed (or not exclusively because of corporate greed, anyway), but because of the regulatory changes which mandated (a) a low price for basic services, and (b) "must-carry" rules for broadcast channels. Perhaps it's different elsewhere, but there was no "tiered" service in my area (Houston) until after these new regulations were enacted.
(Granted that these rules didn't apply to satellite TV, but the satellite providers had to compete with this new pricing structure offered by cable, so they went to a tiered system as well.)
If I understand this correctly, it will be "standard" in the same sense that bash and vi are standards: they're available, and behave consistently, in all distributions. If you don't like them, feel free to use something else, but they're always there to fall back on.
And just because something is a standard in this sense, doesn't mean it's graven in stone. Bourne evolved into ksh, bash, and zsh; vi into vim, etc. Standards evolve, or are displaced by newer, better standards.
You might also invest in a reference like O'Reilly's Java in a Nutshell; if you're comfortable reading on the computer, there's a CD version that includes the contents of several other Java books.
Also be sure to look over the downloadable references provided by Sun.
"Blame Canada" is sung by Mrs. Broflovsky (Kyle's mom), who is notorious for rushing off on crusades to "protect the children", while neglecting basic parenting within her own family. The people in the movie who "blame Canada" are shown as destructive buffoons, blaming someone else -- anyone else -- for their own failure and irresponsibility.
Many people find "South Park" offensive on any number of levels, but one thing it is not is jingoistic or anti-Canadian.
Best serious suggestion: Bette Midler. Now that would rock.
Wonder who they'll get to sing lead.
Probably not Celine Dion...
(More seriously, this makes Mary Kay Bergman's suicide all the more tragic. It would have kicked ass to have her perform the song at the Oscars.)
(Of course, if there were a DoS at AOL, would anyone even notice? :-)
The first thing that came to mind for me was the old "A-B-C murders" gimmick: hit your real target, and hit some unrelated bystanders before and after to make it look random.
The prepetrator may have had a beef agains Buy.com specifically ("I got yer restocking fee right here, buddy") and screwed around with them on the day of their IPO, and hit the others so as to make it look like random vandalism.