I hear great things about eMusic all the time, but one thing is a dealbreaker for me: I can't seem to be able to search their catalog without joining. That, to me, implies that their selection and/or prices are not strong enough to stand on their own. I mean-- why should I go with only one music service? Their mandatory membership means that I can't get the information I want before buying; so I'm not buying.
Actually, it looks like I missed the part about them having brought the strain back from space, and having given it to Earth-bound mice. This is, indeed, an interesting experiment. I wonder if there are other mutagenic factors at work here, other than zero-gravity. Cosmic radiation, for instance.
It does not necessarily follow that since the space-mutated salmonella has a higher mortality rate in space that it will also have a higher mortality rate on Earth. I suspect that the mechanism that allowed for the more deadly strain to thrive in space would be a disadvantage to Earth-bound strains, where the 'fluid shear' effect is higher. Thus, those more potent strains would die.
Of course, there's only one way to find out for sure. I volunteer CmdrTaco.
The article doesn't say, but maybe someone here with a developer build can shed some light. I have an old Sawtooth G4 that's been upgraded a number of times. It now has a 1.2GHz G4, Radeon 9600 (supports CoreWhatever), a Sonnet RAID card, and 1.5 GB of RAM. I still use the machine daily as my main home machine because, even though it's nearly 7 years old, it still works great! It would be nice to know that I could run Leopard on this, although, as I mentioned, I am quite happy running Tiger. I guess I just want to play with the new toy like all the other kids...
I wish that there were better math teachers. In high school, my AP Calculus teacher was unable to provide an answer to the question: "What is this good for?" His inability to answer discouraged a lot of people. It just seemed like an arbitrarily hard obstacle for us.
This kind of thing is unacceptable. Now that I've taken college-level Calculus and beyond, I can say-- mathematics is really cool, and very useful! I can think of hundreds of things that Calculus is useful for. After all, Calculus was invented to solve practical problems! And the whole phenomenon of digital computers is based on a need to do lots of computation. If a teacher can't even explain this, he's useless... But I've come across teachers like this time and again, even at the exciting college level.
No one is going to bother corporate IT people. They're not even on the RIAA/MPAA's radar, because they're copying software. And they're usually copying software that they explicitly have a license to copy for the entire organization, e.g., Windows. This is aimed directly at music and movie copying.
For the ultimate in neurosis and failure try Dostoyevski and Kafka. Holy shit. After that, I'll read anything. Supermarket porn. Crichton. Just make me happy again.
Robotics is hard. Landing on the moon is even harder.
Whittaker also has some previous experience with the DARPA Grand Challenge, the desert robotics race, which CMU (his team) lost both times. He obviously knows his stuff when it comes to mechanical engineering, and were it not for the Stanford team, CMU would have undoubtedly won. But the Stanford team showed that brainpower triumphed over the "brute force" methods that CMU used. Stanford tackled the "hard computer science" problem instead, and used a standard video camera instead of the laser rangefinders (and pre-computed waypoints) that CMU used. I would have liked to see the Challenge continue because I think that Stanford's surprise victory would have changed the race dramatically the following year.
There's a pretty entertaining NOVA documentary about it as well. My brother (an engineer) and I (a CS student) could help but laugh at and feel envy for the guy who built the self-guided motorcycle ("Ghost Rider").
So, yeah, CMU has Whittaker, and lots of money, but that almost doesn't matter.
I've found wrt Firewire vs. USB, that USB tends to be "flakier" than Firewire. When doing long disk transfers via USB, I will occasionally lose the connection between the device and the host. Power interruptions (like AC ripple) seem to have some role in this, and putting everything in the signal chain on a power line conditioner has mitigated the problem somewhat. But I don't see the same behavior at all with Firewire, even with the same external disk (where the disks have both USB and Firewire controllers). I have no technical explanation for this, but my own anecdotal experience has led me to prefer Firewire for external disks. It might just be that there are more crappy USB chipsets out there, but it would be nice if USB3 addressed this [admittedly possibly imaginary] problem.
You are correct. What I meant to say is that you can slap the GPL onto your modifications, which for the purposes of giving back code, means the same thing. It is unusable.
Of course, with such a fine porosity, I wonder how well the filter actually works in practice. Having had a lot of experience doing field maintenance on an MSR filter (I've hiked roughly 4000 miles with this one so far), I can say that even around 200nm, the filter needs regular cleaning. Cleaning becomes harder and is required more regularly as your filter gets finer (often referred to as the "tightness" of the filter).
My BuonVino wine filter, which I once [idiotically] ran beer through, clogged in a matter of seconds, thus drenching me and my kitchen in about a quart of beer before I could turn it off. See, wine yeast tends to be highly flocculant-- it clumps together and drops out-- which means that there isn't a whole lot of filtering to be done to make it "bright". Beer, on the other hand, contains yeast of a lower flocculence, and so my filter clogged immediately. And filters that fine can't be reused-- you have to throw them away. This is why big beer manufacturers (like Budweiser) tend to invest a far amount of money in making sure that they have a lot of filter material available (they often use diatomaceous earth).
Hypocrisy is taking code from a project that shares it freely and then slapping a restrictive license on it "so that it can be shared freely". Doesn't anybody see the irony in that?
That's the "unethical" part that Theo talks about. The "illegal" parts are:
1. removing the BSD license notice altogether, and
2. making it look like the authors of the linux derivative work are the original authors.
In 1, yes, doing so doesn't change how the now-dual-licensed code is distributed, since the GPL's distribution terms supercede the BSD's. But it does change a legal document, and that is important.
In 2, this is a bigger deal, since derivative works are subject to different copyright law, particularly given the venue.
The thing is-- this stuff is easy to fix. Treat it like a bug, be an adult, and amend the broken files. No one wants to keep BSD drivers out of Linux, and the real meat of the discussion is: is it good for the F/OSS community to be taking code in a manner that is, at the very least, offensive to some people? You're absolutely right when you say that it's perfectly legal to slap a GPL license onto BSD code, but why do it other than to prove you can? Does anyone here really think that Atheros gives a shit about a BSD driver for their chipsets? And even if they do-- who cares? If Atheros wants to replace their shitty drivers with something better, so be it!
F/OSS depends on cooperation to survive. If you want real software freedom, you can't be petty. The whole idea is of giving, not taking.
Re:Back when people could actually code..
on
DOS 5 Upgrade Video
·
· Score: 1
A user's time is important to them and all programs that interact with a user need to be as fast as possible. To put it another way; the computer is there to serve the user, not vice versa.
Yes and no. Sure, a user buys a computer to get a certain job done. But programmers also have to be able to write code that is maintainable.
For example, modern languages now have a boolean data type. The actual bit-length of this data type depends on the platform and compiler, but usually you're talking about an entire word of computer memory. Back in the 80s and early 90s, this flagrant misuse of memory would have been frowned upon, to say the least. A whole word for a single binary number?! But 'bool status_is_on = TRUE;' is a lot easier to understand, a lot faster, and a whole lot easier to maintain than an implementation of a packed array.
That old code, filled with packed arrays (which also tends not to be portable), inline assembly, hacks for platform quirks, etc, was a nightmare to maintain. Powerful applications would have been extremely difficult to build-- when the code base reached a certain size, it simply became unmaintainable. People complain that programs like Firefox are getting bloated. Perhaps this is true. But consider what Firefox does: it has to deal with network I/O, it has a cross-platform GUI, it has to be fast, it has to be able to work with Java VMs and JavaScript environments, it has to be able to parse at least a dozen variants of markup, it has to understand MIME types, and then pass them off to a library that can render or play them inline. Browsers are complicated! Dillo is probably one of the fastest and most lightweight browsers out there, but you know what? It doesn't do much, either. If it ain't straight HTML 4, it can't render it.
Now, I agree that plenty of programmers probably don't understand on-die memory vs. RAM vs. disk, and this negatively affects many programs. Many programmers probably don't know how to do algorithm analysis, and this also affects many programs. But to say that programmers aren't what they used to be may be true, but misleading. Programs and computers aren't what they used to be either. I think time would be better spent teaching programmers safe programming practices than optimization practices. The former is much more in need than the latter.
Re:I'm surprised that no-one's mentioned Gorillas
on
DOS 5 Upgrade Video
·
· Score: 1
What makes me sad is thinking about how many hours I spent porting programs written in TI Extended BASIC to QBASIC. Total waste of time. What's worse is not what I had to learn, but what I've subsequently forgotten.
Re:Back when people could actually code..
on
DOS 5 Upgrade Video
·
· Score: 1
You don't get it. The point is that, for most software projects, we no longer need to make space tradeoffs, since we have [comparably] vast amounts of dynamic memory available. We can now spend our time making our programs better, and optimize for space or speed only when those particular traits are necessary. Code reuse goes way, way up, because now, when someone writes a graphics library for a paint program, hey, now you can make it generic enough use it someplace else, like a window manager, even on other platforms, ala GTK+. This leads to better code because more people are looking at and using it, and in the end, it leads to a better computing experience.
He's not saying that you *had* to write crap code to make things work. He's saying that there are far fewer excuses to do so nowadays. You seem to have forgotten how horribly unstable most code was prior to the mid-1990s.
TiVO may be safe with regard to the Linux kernel itself, but "Linux" tends to be a bit more than that. Unlike BSD, Linux userland utilities come from all over the place. If people start licensing these things as GPLv3, then TiVO has a problem. I don't know how TiVO assembles their distribution (I don't own one myself), but things like mplayer/mencoder/transcode, shell utilities, cron daemon, logging daemon, database utlities, etc. come to mind.
It should be added that de Icaza is a Novell VP. So in light of the Microsoft/Novell patent agreement, I think we should all take his opinions with a dose of skepticism. That's not to disparage in any way his work in Free software, of which there are many and great, and I thank him for this. But that does not exonerate him from future badness and/or idiocy.
And, of course, as far as input validation goes, you MUST do the validation on the server-side anyway, regardless of whether you have JavaScript validation happening on the client-side. Not doing so puts you at great risk of having your website hacked. I basically consider JavaScript to be an additional aid to the UI, sometimes, but not a necessity. E.g., you can reduce one roundtrip exchange with the webserver if you have the first round of validation happen at the client. Also, those little web-calendar widgets are useful to put a particular date in context. But as others have pointed out, you really can't rely on Javascript being there or working properly, especially given the growing number of people who might need to use your web app on, say, a cellphone.
Of course, if you buy Atheros gear to solve your Linux wireless woes, you are rewarding a company for bad behavior. As many people have pointed out, Atheros seems to be deliberately unhelpful, releasing only binary drivers, and no documentation whatsoever. Atheros' bad engineering and refusal to work with the OSS community has lead to workarounds like the following commit in NetBSD:
"The Atheros HAL on MIPS uses %s7 as a general purpose register, but the rest of the kernel uses it to store the value of curlwp. Sam won't recompile the HAL for us (fair enough), and we can't modify the HAL to use another register because doing so could put us in breach of the license (v. crappy). So, do a save/set/restore on %s7 in KernIntr() and in the stubs that the HAL uses to call back into the kernel.
"Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files." More info here.
I suggest Ralink-based chipsets as an alternative. I have a couple in OpenBSD-based machines, and one in my girlfriend's Ubuntu laptop. I don't recall how difficult it was to get going in Linux, but it does work fine. The OpenBSD machines, of course, just worked out of the box. Ralink has been open and friendly with their documentation, and the chips are dirt cheap. I like this one in particular. This is the MiniPCI hard I use in my Soekris router. BTW, I am in no way affiliated with Ralink, except that I've purchased a few, and am happy with them.
Ahh. Super. Many thanks.
I hear great things about eMusic all the time, but one thing is a dealbreaker for me: I can't seem to be able to search their catalog without joining. That, to me, implies that their selection and/or prices are not strong enough to stand on their own. I mean-- why should I go with only one music service? Their mandatory membership means that I can't get the information I want before buying; so I'm not buying.
Actually, it looks like I missed the part about them having brought the strain back from space, and having given it to Earth-bound mice. This is, indeed, an interesting experiment. I wonder if there are other mutagenic factors at work here, other than zero-gravity. Cosmic radiation, for instance.
It does not necessarily follow that since the space-mutated salmonella has a higher mortality rate in space that it will also have a higher mortality rate on Earth. I suspect that the mechanism that allowed for the more deadly strain to thrive in space would be a disadvantage to Earth-bound strains, where the 'fluid shear' effect is higher. Thus, those more potent strains would die.
Of course, there's only one way to find out for sure. I volunteer CmdrTaco.
The article doesn't say, but maybe someone here with a developer build can shed some light. I have an old Sawtooth G4 that's been upgraded a number of times. It now has a 1.2GHz G4, Radeon 9600 (supports CoreWhatever), a Sonnet RAID card, and 1.5 GB of RAM. I still use the machine daily as my main home machine because, even though it's nearly 7 years old, it still works great! It would be nice to know that I could run Leopard on this, although, as I mentioned, I am quite happy running Tiger. I guess I just want to play with the new toy like all the other kids...
I wish that there were better math teachers. In high school, my AP Calculus teacher was unable to provide an answer to the question: "What is this good for?" His inability to answer discouraged a lot of people. It just seemed like an arbitrarily hard obstacle for us.
This kind of thing is unacceptable. Now that I've taken college-level Calculus and beyond, I can say-- mathematics is really cool, and very useful! I can think of hundreds of things that Calculus is useful for. After all, Calculus was invented to solve practical problems! And the whole phenomenon of digital computers is based on a need to do lots of computation. If a teacher can't even explain this, he's useless... But I've come across teachers like this time and again, even at the exciting college level.
Anarcho-capitalism really is a central piece of your identity isn't it? Reminds me of that Python skit... oh yeah, this one!
No one is going to bother corporate IT people. They're not even on the RIAA/MPAA's radar, because they're copying software. And they're usually copying software that they explicitly have a license to copy for the entire organization, e.g., Windows. This is aimed directly at music and movie copying.
... buttons?
Because everybody around here thinks that means "peanut butter" and "turkey butter", respectively.
For the ultimate in neurosis and failure try Dostoyevski and Kafka. Holy shit. After that, I'll read anything. Supermarket porn. Crichton. Just make me happy again.
So true.
Robotics is hard. Landing on the moon is even harder.
Whittaker also has some previous experience with the DARPA Grand Challenge, the desert robotics race, which CMU (his team) lost both times. He obviously knows his stuff when it comes to mechanical engineering, and were it not for the Stanford team, CMU would have undoubtedly won. But the Stanford team showed that brainpower triumphed over the "brute force" methods that CMU used. Stanford tackled the "hard computer science" problem instead, and used a standard video camera instead of the laser rangefinders (and pre-computed waypoints) that CMU used. I would have liked to see the Challenge continue because I think that Stanford's surprise victory would have changed the race dramatically the following year.
There's a pretty entertaining NOVA documentary about it as well. My brother (an engineer) and I (a CS student) could help but laugh at and feel envy for the guy who built the self-guided motorcycle ("Ghost Rider").
So, yeah, CMU has Whittaker, and lots of money, but that almost doesn't matter.
I must meet your sister.
I've found wrt Firewire vs. USB, that USB tends to be "flakier" than Firewire. When doing long disk transfers via USB, I will occasionally lose the connection between the device and the host. Power interruptions (like AC ripple) seem to have some role in this, and putting everything in the signal chain on a power line conditioner has mitigated the problem somewhat. But I don't see the same behavior at all with Firewire, even with the same external disk (where the disks have both USB and Firewire controllers). I have no technical explanation for this, but my own anecdotal experience has led me to prefer Firewire for external disks. It might just be that there are more crappy USB chipsets out there, but it would be nice if USB3 addressed this [admittedly possibly imaginary] problem.
You are correct. What I meant to say is that you can slap the GPL onto your modifications, which for the purposes of giving back code, means the same thing. It is unusable.
Of course, with such a fine porosity, I wonder how well the filter actually works in practice. Having had a lot of experience doing field maintenance on an MSR filter (I've hiked roughly 4000 miles with this one so far), I can say that even around 200nm, the filter needs regular cleaning. Cleaning becomes harder and is required more regularly as your filter gets finer (often referred to as the "tightness" of the filter).
My BuonVino wine filter, which I once [idiotically] ran beer through, clogged in a matter of seconds, thus drenching me and my kitchen in about a quart of beer before I could turn it off. See, wine yeast tends to be highly flocculant-- it clumps together and drops out-- which means that there isn't a whole lot of filtering to be done to make it "bright". Beer, on the other hand, contains yeast of a lower flocculence, and so my filter clogged immediately. And filters that fine can't be reused-- you have to throw them away. This is why big beer manufacturers (like Budweiser) tend to invest a far amount of money in making sure that they have a lot of filter material available (they often use diatomaceous earth).
Hypocrisy is taking code from a project that shares it freely and then slapping a restrictive license on it "so that it can be shared freely". Doesn't anybody see the irony in that?
That's the "unethical" part that Theo talks about. The "illegal" parts are:
1. removing the BSD license notice altogether, and
2. making it look like the authors of the linux derivative work are the original authors.
In 1, yes, doing so doesn't change how the now-dual-licensed code is distributed, since the GPL's distribution terms supercede the BSD's. But it does change a legal document, and that is important.
In 2, this is a bigger deal, since derivative works are subject to different copyright law, particularly given the venue.
The thing is-- this stuff is easy to fix. Treat it like a bug, be an adult, and amend the broken files. No one wants to keep BSD drivers out of Linux, and the real meat of the discussion is: is it good for the F/OSS community to be taking code in a manner that is, at the very least, offensive to some people? You're absolutely right when you say that it's perfectly legal to slap a GPL license onto BSD code, but why do it other than to prove you can? Does anyone here really think that Atheros gives a shit about a BSD driver for their chipsets? And even if they do-- who cares? If Atheros wants to replace their shitty drivers with something better, so be it!
F/OSS depends on cooperation to survive. If you want real software freedom, you can't be petty. The whole idea is of giving, not taking.
A user's time is important to them and all programs that interact with a user need to be as fast as possible. To put it another way; the computer is there to serve the user, not vice versa.
Yes and no. Sure, a user buys a computer to get a certain job done. But programmers also have to be able to write code that is maintainable.
For example, modern languages now have a boolean data type. The actual bit-length of this data type depends on the platform and compiler, but usually you're talking about an entire word of computer memory. Back in the 80s and early 90s, this flagrant misuse of memory would have been frowned upon, to say the least. A whole word for a single binary number?! But 'bool status_is_on = TRUE;' is a lot easier to understand, a lot faster, and a whole lot easier to maintain than an implementation of a packed array.
That old code, filled with packed arrays (which also tends not to be portable), inline assembly, hacks for platform quirks, etc, was a nightmare to maintain. Powerful applications would have been extremely difficult to build-- when the code base reached a certain size, it simply became unmaintainable. People complain that programs like Firefox are getting bloated. Perhaps this is true. But consider what Firefox does: it has to deal with network I/O, it has a cross-platform GUI, it has to be fast, it has to be able to work with Java VMs and JavaScript environments, it has to be able to parse at least a dozen variants of markup, it has to understand MIME types, and then pass them off to a library that can render or play them inline. Browsers are complicated! Dillo is probably one of the fastest and most lightweight browsers out there, but you know what? It doesn't do much, either. If it ain't straight HTML 4, it can't render it.
Now, I agree that plenty of programmers probably don't understand on-die memory vs. RAM vs. disk, and this negatively affects many programs. Many programmers probably don't know how to do algorithm analysis, and this also affects many programs. But to say that programmers aren't what they used to be may be true, but misleading. Programs and computers aren't what they used to be either. I think time would be better spent teaching programmers safe programming practices than optimization practices. The former is much more in need than the latter.
What makes me sad is thinking about how many hours I spent porting programs written in TI Extended BASIC to QBASIC. Total waste of time. What's worse is not what I had to learn, but what I've subsequently forgotten.
You don't get it. The point is that, for most software projects, we no longer need to make space tradeoffs, since we have [comparably] vast amounts of dynamic memory available. We can now spend our time making our programs better, and optimize for space or speed only when those particular traits are necessary. Code reuse goes way, way up, because now, when someone writes a graphics library for a paint program, hey, now you can make it generic enough use it someplace else, like a window manager, even on other platforms, ala GTK+. This leads to better code because more people are looking at and using it, and in the end, it leads to a better computing experience.
He's not saying that you *had* to write crap code to make things work. He's saying that there are far fewer excuses to do so nowadays. You seem to have forgotten how horribly unstable most code was prior to the mid-1990s.
TiVO may be safe with regard to the Linux kernel itself, but "Linux" tends to be a bit more than that. Unlike BSD, Linux userland utilities come from all over the place. If people start licensing these things as GPLv3, then TiVO has a problem. I don't know how TiVO assembles their distribution (I don't own one myself), but things like mplayer/mencoder/transcode, shell utilities, cron daemon, logging daemon, database utlities, etc. come to mind.
It should be added that de Icaza is a Novell VP. So in light of the Microsoft/Novell patent agreement, I think we should all take his opinions with a dose of skepticism. That's not to disparage in any way his work in Free software, of which there are many and great, and I thank him for this. But that does not exonerate him from future badness and/or idiocy.
And, of course, as far as input validation goes, you MUST do the validation on the server-side anyway, regardless of whether you have JavaScript validation happening on the client-side. Not doing so puts you at great risk of having your website hacked. I basically consider JavaScript to be an additional aid to the UI, sometimes, but not a necessity. E.g., you can reduce one roundtrip exchange with the webserver if you have the first round of validation happen at the client. Also, those little web-calendar widgets are useful to put a particular date in context. But as others have pointed out, you really can't rely on Javascript being there or working properly, especially given the growing number of people who might need to use your web app on, say, a cellphone.
"Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files." More info here.
I suggest Ralink-based chipsets as an alternative. I have a couple in OpenBSD-based machines, and one in my girlfriend's Ubuntu laptop. I don't recall how difficult it was to get going in Linux, but it does work fine. The OpenBSD machines, of course, just worked out of the box. Ralink has been open and friendly with their documentation, and the chips are dirt cheap. I like this one in particular. This is the MiniPCI hard I use in my Soekris router. BTW, I am in no way affiliated with Ralink, except that I've purchased a few, and am happy with them.