I think the basic psychology here is that if you learn a subject on your own, you are saying that the teachers aren't necessary. This is taken as arrogance and disrespect on your part. You're supposed to depend on the teachers for your learning, else why are they there?
One of my favorite quotes (I've forgotten who said it) on the way our school system works is: The classroom lecture is the best way known for teaching students who can't read.
Of course, if you make your living giving classroom lectures, you do have somewhat of a motive to interfere with students' access to reading material.
Well, in my high school (a couple decades ago now), they went past ignoring the problem. In my sophomore year, I decided that math was interesting, so in the first month, I read through the entire textbook. Then I started borrowing books from the math teachers. By the end of the year, I'd made it through their college calculus books.
Their response? They finally woke up to what I was up to, and let me know that they wouldn't be loaning me any more math books. I was supposed to learn it in classes, not on my own time. They were all in agreement, and I didn't get another math textbook from them.
However, I did have some good friends at a nearby college. I borrowed math books from them. The high-school teachers didn't learn about it until the next year, when I didn't enrole in any more math classes, and explained why.
What was especially bizarre was that when I finally graduated and went off to college, I passed all their entrance math tests and got the most "advanced placement" that they gave bright students: They let me enroll in second-year calculus. I knew the subject better than the instructor did, which didn't exactly endear me with the instructor. But "That's the rules", and there were no exceptions; I had to have that class to be allowed into more advanced classes.
(Note that I've carefully said nothing that would identify the schools. This is intentional, so you might suspect that it might be schools in your area.;-)
I'll second (third?) that. This morning, I killed and restarted both firefox and seamonkey on my Mac. They had both grown to over 600 MB since I restarted them about 3 days ago, and the machine had slowed to a crawl. It's fast again now, but I know I'll have to do it again Monday at the latest.
It does seem that, with both of them, it's sites that run videos that seem to cause the biggest permanent jumps in memory size. So it may not be the browsers themselves that are the main problem, but the plugins to do the video, that are the worst culprits.
Now, I'm sure most people have music that isn't theirs on their computer.
Yeah, I've got lots of the damned stuff, filling up my disk. It's in my browsers' caches. I have NoScript installed, but I sure wish there were a similar tool for blocking downloads of the damned music that comes along with so many web pages. By the time you hear it and hit the volume control, it's too late. The music has been downloaded and stored on the disk, with a cryptic name to make it nearly impossible to find and eradicate short of totally emptying out the cache.
I'll bet that most of it is copyrighted, too. Do you know any way of telling a browser to refuse to download and play any copyrighted music without the user's permission?
Many people think [piracy is] wrong because of the potential to harm the income of the artists,...
And many of us think the RIAA is wrong because of its actions that eliminate the income of most of the artists.
Are you aware that most recording artists receive very little or no money from their recordings? A fair number of artists are now moving to online distribution, because it currently gives them a much larger percentage of the sales than any recording-company contract would.
Pirates are just entrepreneurs? Are you talking about the kind of pirate who steals, rapes and murders, or the kind that just steals???
Well, take a good look at "free market" economies such as Russia has become since they evicted the Communists. It's fairly clear that in such unregulated, lassez-faire markets, the businessmen do consider things like murder as just ordinary business tactics. Laws against things like rape, extortion and murder are government regulation, and therefore evil because they inhibit the proper working of the Market.
The historic pirates of the 16th century and later were actually examples of businessmen, generally supported by their home government, but doing business in free, unregulated parts of the planet. They clearly weren't doing anything illegal, because there was no law in the areas where they operated. Considering them anything but businessmen and entrepreneurs is a misunderstanding of what was really going on back then (and is still going on in a few parts of the world).
(Some of us approve of a certain amount of government regulation.;-)
... as long as it isn't illegal, I have no problems with that.
Well, the supreme law in the US is the Constitution, which says:
Congress shall have power... To promote the progress of science and useful arts, by securing for limited times to authors and inventors the exclusive right to their respective writings and discoveries.
So if they vote for copyright or patent laws that interfere with scientific or artistic progress, they are clearly doing something illegal, and they should be prosecuted for it. Taking bribes^Wcampaign contributions to violate the Constitution isn't exactly legal, as far as I can tell.
But they tell me that voting for a minor party or independent candidate is wasting my vote!
The only way to waste your vote is to vote for someone other than your favorite candidate(s). Sounds like you've been thoroughly suckered by the PR from the major parties.
But then again, the people being prosecuted here are the students. And why the hell would anyone like WARF want to waste resources on a handful of students when they've got other things to do?
Well, as a Wisconsin alumnus, I'd just observe that WARF needs a steady supply of those students (especially the graduate students) to work for poverty wages on all those research projects that they so cheerfully describe to the readers of their literature. So it's not surprising that they'd take well-publicized actions that make them out as the defenders of those students.
And sometimes, those research projects do produce results.
Yes, the atime updates are stored in buffers and only flushed to disk on a sync and during idle and otherwise when it gets around to it, just like any other data.
Actually, there is only one atime field per file, and it's in the inode block. A read shouldn't change any bits in any other buffers. I'd expect the inode block to be written only at a (f)sync or on close, so it should take some quite unusual circumstances for this to be a significant (or even measurable) load on most systems. The only way this could be significant is if most processes are busily opening files for reading and immediately closing them. While I could certainly create a test case for this, I doubt that it has ever happened on any unix system that I've worked on. So I still consider the issue a red herring, and ask why it's even an issue.
If a program kept writing different data to a file for no reason and that data was never used, it would certainly be obvious that removing the writing of that file would improve performance, even though that data is buffered.
True, but that would be changing the mtime field, not the atime field. The article was explicitly about disk writes triggered by changes to the atime field, which doesn't happen on data writes.
Without (f)sync calls, I'd expect that most unix-like systems should do relatively few writes in such a scenario. The typical disk strategy routines use some variant of a LRU (least recently used) heuristic to decide which buffers to free. A freed buffer marked modified would be written, of course. But a program with the above behavior would tend to have most of its buffers marked as recently used, so they wouldn't be chosen by the buffer-freeing routine, and they wouldn't be flushed. There are cyclical buffer-freeing strategies, of course, and such programs would cause buffer flushing in such systems.
In any case, such writes are off topic, because we're talking about disk writes triggered by changes to the atime fields in files' inode blocks.
Not trying to flame here, just a bit baffled by the problem...
Back when I first started learning unix, a few decades ago, one of the standard examples of its cleverness was the way that it did in-memory buffering of all files. This meant that any changes to a file (including the inode stuff like time stamps) never require a disk write. The block's "true" value is in the buffer, not on disk, and all accesses to the block by any process will read the buffer, and thus see the true value. Writes are only needed when buffer space is full and some blocks need to be flushed to disk. And especially clever were the "disk strategy" routines that did read-ahead, making most reads instantaneous because the data was already sitting in a kernel buffer.
The (f)sync system calls are there explicitly to handle the obvious problem: In case of a power failure or other system crash, everything in the in-memory buffers is lost. Competent programmers are aware of this, and don't trust whatever heuristics the kernel might have for flushing the buffers to disk; you call fsync occasionally for data that you don't want lost in a power failure. Otherwise, you assume that the info is kept in memory, and the info on disk may be out of date. Having files buffered for hours or days is an old unix "problem", often solved by running a background task that calls sync once an hour.
Does this atime problem mean that linux systems actually flush every buffer after every change? If so, that's a blatant violations of the original unix design. Yeah, I know it's safer when there are system crashes. But the buffer design was put there for a very good reason: In a lot of situations, speed is more important than providing survival past a power failure. And for many files (e.g., those in/tmp), there's no need at all for the data to survive the process's death; flushing its data to disk is a total waste of time, to be avoided when possible.
On almost all systems, a simple strategy can be used. For example, the kernel can flush buffers slowly on a cyclical basis, partly dependent on cpu load. You probably also want to flush any buffers for a file that has just been closed by a writer. There are lots of strategies that don't impose a measurable load on the system.
But flushing the inode after every read is just dumb. Why would anyone ever configure a kernel that way? What were they thinking?
Really, I'm not being insulting; I'm baffled by why anyone would do this. Is there some situation where you want this done? Or was it just overkill of a hypothetical problem that in practice isn't a problem?
How in the world is anybody going to verify that the data is actually being "shredded"?
Over the years, there have been a number of stories about organizations (companies, government agencies, etc.) that complied with court orders, laws, etc., and deleted data - after first making several backup copies.
There's also the ongoing story of all the people who are surprised (often in court) by the stuff they thought deleted that turned out to be backed up. It's especially funny when politicians are surprised to learn that their emails have been routinely backed up by their sysadmins.
Getting stuff out of google's cache can be especially difficult. Getting it out of all search sites' caches is effectively impossible.
So you think it's naive that Google managers want to abide by the laws?
No, but it is naive to think that Google managers want to abide by the laws?
There's a big difference between the two beliefs.
And note that Google managers, like any organization's managers, aren't a lock-step, unanimous group. It's quite likely that most of them are honest and law-abiding. But it only takes one.
The prudent approach would be to expect that some of them will do anything with their data that's technically possible. Expecting anything else is what's naive, especially now that they're "publicly traded", i.e., primarily motivated by the wishes of their stockholders. Like any other publicly-traded company.
Heh. I had a history teacher like that in high school. He taught us about all sorts of things that weren't covered in the standard textbooks, and told us where to learn more. For example, he taught us about the War of 1812, which is carefully skipped over in most history classes. He gave us some interesting readings about the US Civil War, including one that explained why Lincoln's famous Emancipation Proclamation didn't actually emancipate any slaves. In the section on the Western Expansion, he mentioned the US government's "aid" program to the Indians that includes clothes and blankets infected with smallpox, measles, and other diseases, resulting in an extermination comparable to the plague years in Europe. And so on.
Needless to say, the conservative/religious folks in the town were constantly trying to get him fired. Fortunately, the principal and other school management were soundly behind him. But that was a few decades ago; I suppose they're all gone now. I don't know; I haven't been back since I went off to college.
Anyone who understands what mitochondrial DNA (mtDNA) is and how it works also understands that using it to characterize human (or any other species) genetic diversity is quite bogus.
The problem is that mtDNA doesn't take part in any of the recombination methods produced by sexual reproduction. It's inherited in a simple tree through the maternal line. There's no recombination of mtDNA from parents. The only source of variation is mutations, which are almost always bad. After enough such mutations, a "line" simply dies out because it's not viable any more.
To those who believe in some sort of "intelligent design", this must be a real problem, as it makes the designer look like either an idiot or actively malevolent. Biologists did figure out some time back that mitochondria are the descendants of symbiotic bacteria, who originally presumably had sexual reproduction (conjugation), but lost this after taking up residence inside our cells. This doesn't bother the biologists, because their creator (Mother Nature) is long known to be an idiot, and it goes right along with a lot of Her other crappy "designs".
Anyway, there really aren't all that many genes in the mitochondria. Maybe some day, after a few more decades of research, we'll figure out how to transfer those genes to the nucleus, and fix up that particular bit of idiocy. Or maybe we'll do it the easy way, and persuade sperm cells to carry along the father's mtDNA.
Meanwhile, if you want to know something about human genetic diversity over time, you really should wait until someone figures out how to study the real human chromosomes from long-dead people.
Quite likely, though fruit-based wines also go back into pre-history.
A decade or so back, I read an interesting bit of data collection showing that the value of beer is still with us. The researchers travelled around the world, visiting assorted local restaurants. Instead of eating and drinking what they ordered, they took it back to their hotel room and fed it to their portable lab, to learn about its safety.
One of their conclusions was that, if you want something that's safe to drink, there's a simple rule that works anywhere: Order beer. They reported that they found beer everywhere, and it was the only thing that was always safe to drink. They conjectured that this was because commercial beer everywhere is brewed in the same industrial stainless-steel vats by the same process. The only variation is the details of the ingredients, which affects the final flavor, but not the safety.
Some reviewers commented that this is generally true even of home-brewed beer. The reason, they explained, is that if you try making beer, you quickly learn to be fastidious about cleanliness. If you don't properly sterilize the ingredients by boiling, you don't get beer; you get disgusting glop that nobody will touch. So you either get beer or glop; there's no intermediate partly-contaminated state. We can conclude that beer is the universal beverage partly because of this.
Wine is actually much easier to make. You can often get drinkable wine by just squeezing out the fruit's juice into a bottle and letting it sit in a dark closet for a couple weeks. But there's no guarantee that you won't have something else growing there in addition to the yeast. It's tempting, because it's so easy, and it usually works. But if you didn't sterilize the juice and add a good yeast culture, sometimes you get something that tastes good and makes you sick.
[B]eer is also an excellent source of calories.
It's also a good source of B vitamins. Of course, this is true of anything made with live yeast, including wine and bread.
If this works like most school actions, it'll be a disaster. The kids will soon be deciding that the Internet isn't cool; it's boring and "hard". They'll drop it and go back to other ways of upsetting the adults.
If we really want young people to become familiar with the Internet, and learn to use it for their benefit, we should take the approach that works: Ban its use by children (where "child" even includes someone 17 years old). Put all sorts of leaky barriers in the way of their access. That way, the kids will be fascinated by it, and will spend lots of time learning how to use it.
Lots of people have observed that the main effect of most schools is to take various topics and make them boring and uninteresting. Consider a topic like history. How could the story of all the people who came before us (and messed up this world so thoroughly;-) be boring? But the schools (and some historians) manage to make it so.
Or consider music. That's a hard-wired human activity, that can be intensely exciting, right? How can we teach kids to not waste their time learning to make music, and make them content to spend the rest of their lives at a desk job? Right: Give them music lessons.
We should totally ban the use of the Internet in schools. They'll just do to it what they've done to so many other exciting human developments; they'll teach the kids that it's boring and uninteresting, and too hard for anyone but a "nerd" to understand.
Hmmm... I'd call that a special case of what I was describing. I'd summarize it in a more general form:
The fastest way to learn how to do X with Y is to claim on the Internet that Y can't do X.
I'd claim that one of the major strengths of the free/open source "movement" is that it takes advantage of this human behavior to find solutions to problems. So people who complain about its fractiousness are missing the fact that this is a large part of what makes it so successful at turning out useful stuff.
[D]isagreements are really a strength because the good results are always picked back up.
Well, I was wondering if someone would point that out.
One of the specific examples I've long liked to use, and which I notice just appeared here with more than a bit of humor, is the ongoing vi/emacs "war". My claim is that it's a mistake to try to prevent flame wars like this, because we benefit from them.
The scenario is: J. Random Newbie asks in some forum how to do X with vi. The vi users respond with variants on "RTFM, n00b!". The user leaves in disgust at how hostile the vi user community is. He (she?) asks a similar question about emacs, and gets a similar answer.
But a slightly more experience user asks differently, posting to the forum a message of the form "It seems that emacs can do X but vi can't." The vi users get all angsty, and go into great detail the N different ways you can do X using vi. The user has now learned how to do X with vi, even though the documentation didn't explain it adequately.
And, some time later, an emacs user reading this says "Hey, all that vi stuff is interesting, but someone claimed that emacs can do X, too. I've dug around in TFM, and as far as I can tell, emacs can't do it at all." This upsets the emacs fanboys, so they respond by going into all the ways you can get emacs to do X. So some emacs users learn something useful that wasn't very well documented.
With a bit of Macchiavelianism, it's easy to take advantage of most such technical disagreements and learn a lot of things that nobody every bothered to document.
And sometimes, the result of such a discussion is that the fanboys of package Y face the fact that it really can't do X, so they look at the competitors that can do X, and add something comparable into Y. This can be orders of magnitude faster than begging a private vendor to give you a feature you need. With free/open software, even if the caretakers of a package don't consider your feature interesting, you can just fork the code and get together a small gang to add the feature that you need. Yeah, people will flame you for forking. But there are often good reasons that people do this. And if they're friendly, they can often get the original developers to merge their changes into the mainstream fork. Just try doing that with proprietary software.
Maybe, but I didn't miss the similar announcement of lenovo supplying Novell linux. Note that that announcement was almost exactly a year ago. And the article makes the comment:
Linux on the ThinkPad has long been supported first by IBM, and more recently, by Lenovo. In addition, the ThinkPad PC product line has probably had more specific Linux support than any other computer brand.
So a year ago, they were touting their long-time support for linux and their imminent sale of pre-installed linux. Go to lenovo.com and try to find any mention of Novell anywhere in any of the order-your-computer pages. (Really, try it. I'd be interested in seeing if anyone can find such references. I can't. I couldn't 9 or 6 months ago, either.)
When a company talk about having "long" supported linux, and has several times announced the imminent release of linux on their hardware, but you can't find a way to order it from them, there is reason to be suspicious. It's highly likely that this is yet another company that, like the Chinese government itself, is merely using the linux threat as a negotiating tactic to get a better deal from Microsoft. If they intended to actually sell it to us, you'd think that a year after announcing it, we'd be able to buy it.
The ThinkPad has a history as a good machine. I intend to keep checking occasionally to see if lenovo actually starts making it easy for customers to buy one with linux. Repeated public announcements aren't good enough; we should be able to order it without an extraordinary effort. If we can't, such announcements are little more than conventional bait-and-switch tactics.
But maybe this time it'll be different. (Ever heard that before?;-)
So how are you supposed to find these expert programmers, and how can you tell a $60k developer from a $120k developer? By asking brain teasers like Microsoft and Google are reputed to do?
My favorite anecdote on this topic is about one of the interviews I've been to where they did that. They gave me a programming problem, and left me alone for maybe 10 minutes to solve it.
The guy who examined my answer rejected it as invalid. I asked why. The answer was that it wasn't the correct answer, which he had on a page of paper. So I looked at it, and then proved that my answer was not only correct, but faster and used less memory than his.
It was obvious that he was quite taken aback by my arrogance at 1) finding a better solution than the one he had, and 2) proving that mine was better. They didn't make me an offer. I wasn't disappointed by this.
It's not obvious how I could have given his "correct" answer, since their statement of the problem didn't give any clue that their approach was to be used. It's sorta like several other cases part of a programming problem was "Use any language you like", and my solution was rejected because it wasn't written in the correct language. I wasn't unhappy at being rejected in those cases, either, because it's obvious how I would have been treated there.
I wonder what sort of puzzles Google uses. I've seen some of the ones used in Microsoft interviews.
I did the obvious test, that I've done for a number of other such "Linux is available on FOO" announcements: I went to lenovo.com, and tried to configure a laptop that ran linux.
I failed.
Nowhere on any of the couple dozen pages that I looked at did the "linux" string appear. Nowhere was I even given a choice of operating system. The choice was "Windows Vista".
I'll give three cheers when someone who wants a linux machine can easily configure it and order it. Until then, I'll consider such announcements to be PR aimed at quieting the linux crowd without intending to sell anything to them.
It is sorta curious that a company would so blatantly violate the old "Give the customer what they want" rule. They don't have to force linux on Microsoft fans; all they have to do is make it available. That's not difficult. So why don't they do it?
(I recently checked at ibm.com, and I still couldn't figure out how to order a linux laptop from them, either.;-)
An interesting argument here is that it's just a language problem. We have another case of clueless politicians not understanding some new technology, and trying to handle it by treating a faulty metaphor as reality.
Consider: Some months ago, a friend tipped me off to pandora.com, and I experimented with it a bit. What they do is let you generate play mixes by telling that what music tracks you like (or don't like), and they "broadcast" a semi-random program of music that matches your likes. I tweaked it a while, and now I have six such mixtures. The call each personalized mixture a "station".
The problem here is that the new internet licensing scheme would charge, what is it, $6000 per year per "station". So it would cost pandora $36,000 per year to supply my six "stations". The only way they could do this would be if I paid them $36,000 per year, and that just ain't gonna happen.
But the reason for this exorbitant charge isn't what they're doing; it's that they call each such mixture a "station" that they "broadcast" to me. The US Congress doesn't understand that this is just a weak metaphor for something that really isn't very much like a radio station. Rather than learn about what "net radio" really is, they latch onto the radio metaphor and treat each such personalized mixture as an actual, physical radio station that's really broadcasting to thousands or millions of people.
So the solution is obvious: Change the terminology. If pandora would drop all words that relate them to real radio broadcast stations, the licensing law shouldn't apply to them.
For example, they could switch to the RSS terminology, which is new technology that isn't (yet) covered by any such licensing laws. It's based on the metaphor of news distribution instead, and news "publishers" aren't required to pay a per-customer license to redistribute "news". If pandora or other "radio station" web sites were instead to deliver an RSS-like stream of files with contents tailored to my dislikes and dislikes, and I had a client that would "display" each file in the stream by showing the meta-info in a window and sending the audio portion to the sound card (like a podcast, say), they could supply the same sort of service, but the threat of an exorbitant "broadcast license" wouldn't exist. And it would obviously not be a "broadcast", because it's being sent to only one client.
What are some other metaphors that could be used to do roughly the same thing, without invoking a "broadcast radio station" metaphor?
I think the basic psychology here is that if you learn a subject on your own, you are saying that the teachers aren't necessary. This is taken as arrogance and disrespect on your part. You're supposed to depend on the teachers for your learning, else why are they there?
One of my favorite quotes (I've forgotten who said it) on the way our school system works is: The classroom lecture is the best way known for teaching students who can't read.
Of course, if you make your living giving classroom lectures, you do have somewhat of a motive to interfere with students' access to reading material.
Well, in my high school (a couple decades ago now), they went past ignoring the problem. In my sophomore year, I decided that math was interesting, so in the first month, I read through the entire textbook. Then I started borrowing books from the math teachers. By the end of the year, I'd made it through their college calculus books.
;-)
Their response? They finally woke up to what I was up to, and let me know that they wouldn't be loaning me any more math books. I was supposed to learn it in classes, not on my own time. They were all in agreement, and I didn't get another math textbook from them.
However, I did have some good friends at a nearby college. I borrowed math books from them. The high-school teachers didn't learn about it until the next year, when I didn't enrole in any more math classes, and explained why.
What was especially bizarre was that when I finally graduated and went off to college, I passed all their entrance math tests and got the most "advanced placement" that they gave bright students: They let me enroll in second-year calculus. I knew the subject better than the instructor did, which didn't exactly endear me with the instructor. But "That's the rules", and there were no exceptions; I had to have that class to be allowed into more advanced classes.
(Note that I've carefully said nothing that would identify the schools. This is intentional, so you might suspect that it might be schools in your area.
The "leak" needs fixing.
I'll second (third?) that. This morning, I killed and restarted both firefox and seamonkey on my Mac. They had both grown to over 600 MB since I restarted them about 3 days ago, and the machine had slowed to a crawl. It's fast again now, but I know I'll have to do it again Monday at the latest.
It does seem that, with both of them, it's sites that run videos that seem to cause the biggest permanent jumps in memory size. So it may not be the browsers themselves that are the main problem, but the plugins to do the video, that are the worst culprits.
Now, I'm sure most people have music that isn't theirs on their computer.
Yeah, I've got lots of the damned stuff, filling up my disk. It's in my browsers' caches. I have NoScript installed, but I sure wish there were a similar tool for blocking downloads of the damned music that comes along with so many web pages. By the time you hear it and hit the volume control, it's too late. The music has been downloaded and stored on the disk, with a cryptic name to make it nearly impossible to find and eradicate short of totally emptying out the cache.
I'll bet that most of it is copyrighted, too. Do you know any way of telling a browser to refuse to download and play any copyrighted music without the user's permission?
Many people think [piracy is] wrong because of the potential to harm the income of the artists, ...
And many of us think the RIAA is wrong because of its actions that eliminate the income of most of the artists.
Are you aware that most recording artists receive very little or no money from their recordings? A fair number of artists are now moving to online distribution, because it currently gives them a much larger percentage of the sales than any recording-company contract would.
Pirates are just entrepreneurs? Are you talking about the kind of pirate who steals, rapes and murders, or the kind that just steals???
;-)
Well, take a good look at "free market" economies such as Russia has become since they evicted the Communists. It's fairly clear that in such unregulated, lassez-faire markets, the businessmen do consider things like murder as just ordinary business tactics. Laws against things like rape, extortion and murder are government regulation, and therefore evil because they inhibit the proper working of the Market.
The historic pirates of the 16th century and later were actually examples of businessmen, generally supported by their home government, but doing business in free, unregulated parts of the planet. They clearly weren't doing anything illegal, because there was no law in the areas where they operated. Considering them anything but businessmen and entrepreneurs is a misunderstanding of what was really going on back then (and is still going on in a few parts of the world).
(Some of us approve of a certain amount of government regulation.
... as long as it isn't illegal, I have no problems with that.
...
Well, the supreme law in the US is the Constitution, which says:
Congress shall have power
To promote the progress of science and useful arts, by securing for limited times to authors and inventors the exclusive right to their respective writings and discoveries.
So if they vote for copyright or patent laws that interfere with scientific or artistic progress, they are clearly doing something illegal, and they should be prosecuted for it. Taking bribes^Wcampaign contributions to violate the Constitution isn't exactly legal, as far as I can tell.
But they tell me that voting for a minor party or independent candidate is wasting my vote!
The only way to waste your vote is to vote for someone other than your favorite candidate(s). Sounds like you've been thoroughly suckered by the PR from the major parties.
But then again, the people being prosecuted here are the students. And why the hell would anyone like WARF want to waste resources on a handful of students when they've got other things to do?
Well, as a Wisconsin alumnus, I'd just observe that WARF needs a steady supply of those students (especially the graduate students) to work for poverty wages on all those research projects that they so cheerfully describe to the readers of their literature. So it's not surprising that they'd take well-publicized actions that make them out as the defenders of those students.
And sometimes, those research projects do produce results.
Yes, the atime updates are stored in buffers and only flushed to disk on a sync and during idle and otherwise when it gets around to it, just like any other data.
Actually, there is only one atime field per file, and it's in the inode block. A read shouldn't change any bits in any other buffers. I'd expect the inode block to be written only at a (f)sync or on close, so it should take some quite unusual circumstances for this to be a significant (or even measurable) load on most systems. The only way this could be significant is if most processes are busily opening files for reading and immediately closing them. While I could certainly create a test case for this, I doubt that it has ever happened on any unix system that I've worked on. So I still consider the issue a red herring, and ask why it's even an issue.
If a program kept writing different data to a file for no reason and that data was never used, it would certainly be obvious that removing the writing of that file would improve performance, even though that data is buffered.
True, but that would be changing the mtime field, not the atime field. The article was explicitly about disk writes triggered by changes to the atime field, which doesn't happen on data writes.
Without (f)sync calls, I'd expect that most unix-like systems should do relatively few writes in such a scenario. The typical disk strategy routines use some variant of a LRU (least recently used) heuristic to decide which buffers to free. A freed buffer marked modified would be written, of course. But a program with the above behavior would tend to have most of its buffers marked as recently used, so they wouldn't be chosen by the buffer-freeing routine, and they wouldn't be flushed. There are cyclical buffer-freeing strategies, of course, and such programs would cause buffer flushing in such systems.
In any case, such writes are off topic, because we're talking about disk writes triggered by changes to the atime fields in files' inode blocks.
I'd still prefer this one to stay below the main stream media radar until Sun can get a fix out.
/.; we're all nerds and geeks here. ;-)
Don't worry; nobody from the MSM ever reads
Not trying to flame here, just a bit baffled by the problem ...
/tmp), there's no need at all for the data to survive the process's death; flushing its data to disk is a total waste of time, to be avoided when possible.
Back when I first started learning unix, a few decades ago, one of the standard examples of its cleverness was the way that it did in-memory buffering of all files. This meant that any changes to a file (including the inode stuff like time stamps) never require a disk write. The block's "true" value is in the buffer, not on disk, and all accesses to the block by any process will read the buffer, and thus see the true value. Writes are only needed when buffer space is full and some blocks need to be flushed to disk. And especially clever were the "disk strategy" routines that did read-ahead, making most reads instantaneous because the data was already sitting in a kernel buffer.
The (f)sync system calls are there explicitly to handle the obvious problem: In case of a power failure or other system crash, everything in the in-memory buffers is lost. Competent programmers are aware of this, and don't trust whatever heuristics the kernel might have for flushing the buffers to disk; you call fsync occasionally for data that you don't want lost in a power failure. Otherwise, you assume that the info is kept in memory, and the info on disk may be out of date. Having files buffered for hours or days is an old unix "problem", often solved by running a background task that calls sync once an hour.
Does this atime problem mean that linux systems actually flush every buffer after every change? If so, that's a blatant violations of the original unix design. Yeah, I know it's safer when there are system crashes. But the buffer design was put there for a very good reason: In a lot of situations, speed is more important than providing survival past a power failure. And for many files (e.g., those in
On almost all systems, a simple strategy can be used. For example, the kernel can flush buffers slowly on a cyclical basis, partly dependent on cpu load. You probably also want to flush any buffers for a file that has just been closed by a writer. There are lots of strategies that don't impose a measurable load on the system.
But flushing the inode after every read is just dumb. Why would anyone ever configure a kernel that way? What were they thinking?
Really, I'm not being insulting; I'm baffled by why anyone would do this. Is there some situation where you want this done? Or was it just overkill of a hypothetical problem that in practice isn't a problem?
How in the world is anybody going to verify that the data is actually being "shredded"?
Over the years, there have been a number of stories about organizations (companies, government agencies, etc.) that complied with court orders, laws, etc., and deleted data - after first making several backup copies.
There's also the ongoing story of all the people who are surprised (often in court) by the stuff they thought deleted that turned out to be backed up. It's especially funny when politicians are surprised to learn that their emails have been routinely backed up by their sysadmins.
Getting stuff out of google's cache can be especially difficult. Getting it out of all search sites' caches is effectively impossible.
So you think it's naive that Google managers want to abide by the laws?
No, but it is naive to think that Google managers want to abide by the laws?
There's a big difference between the two beliefs.
And note that Google managers, like any organization's managers, aren't a lock-step, unanimous group. It's quite likely that most of them are honest and law-abiding. But it only takes one.
The prudent approach would be to expect that some of them will do anything with their data that's technically possible. Expecting anything else is what's naive, especially now that they're "publicly traded", i.e., primarily motivated by the wishes of their stockholders. Like any other publicly-traded company.
Heh. I had a history teacher like that in high school. He taught us about all sorts of things that weren't covered in the standard textbooks, and told us where to learn more. For example, he taught us about the War of 1812, which is carefully skipped over in most history classes. He gave us some interesting readings about the US Civil War, including one that explained why Lincoln's famous Emancipation Proclamation didn't actually emancipate any slaves. In the section on the Western Expansion, he mentioned the US government's "aid" program to the Indians that includes clothes and blankets infected with smallpox, measles, and other diseases, resulting in an extermination comparable to the plague years in Europe. And so on.
Needless to say, the conservative/religious folks in the town were constantly trying to get him fired. Fortunately, the principal and other school management were soundly behind him. But that was a few decades ago; I suppose they're all gone now. I don't know; I haven't been back since I went off to college.
Anyone who understands what mitochondrial DNA (mtDNA) is and how it works also understands that using it to characterize human (or any other species) genetic diversity is quite bogus.
The problem is that mtDNA doesn't take part in any of the recombination methods produced by sexual reproduction. It's inherited in a simple tree through the maternal line. There's no recombination of mtDNA from parents. The only source of variation is mutations, which are almost always bad. After enough such mutations, a "line" simply dies out because it's not viable any more.
To those who believe in some sort of "intelligent design", this must be a real problem, as it makes the designer look like either an idiot or actively malevolent. Biologists did figure out some time back that mitochondria are the descendants of symbiotic bacteria, who originally presumably had sexual reproduction (conjugation), but lost this after taking up residence inside our cells. This doesn't bother the biologists, because their creator (Mother Nature) is long known to be an idiot, and it goes right along with a lot of Her other crappy "designs".
Anyway, there really aren't all that many genes in the mitochondria. Maybe some day, after a few more decades of research, we'll figure out how to transfer those genes to the nucleus, and fix up that particular bit of idiocy. Or maybe we'll do it the easy way, and persuade sperm cells to carry along the father's mtDNA.
Meanwhile, if you want to know something about human genetic diversity over time, you really should wait until someone figures out how to study the real human chromosomes from long-dead people.
Beer was the first storable food.
Quite likely, though fruit-based wines also go back into pre-history.
A decade or so back, I read an interesting bit of data collection showing that the value of beer is still with us. The researchers travelled around the world, visiting assorted local restaurants. Instead of eating and drinking what they ordered, they took it back to their hotel room and fed it to their portable lab, to learn about its safety.
One of their conclusions was that, if you want something that's safe to drink, there's a simple rule that works anywhere: Order beer. They reported that they found beer everywhere, and it was the only thing that was always safe to drink. They conjectured that this was because commercial beer everywhere is brewed in the same industrial stainless-steel vats by the same process. The only variation is the details of the ingredients, which affects the final flavor, but not the safety.
Some reviewers commented that this is generally true even of home-brewed beer. The reason, they explained, is that if you try making beer, you quickly learn to be fastidious about cleanliness. If you don't properly sterilize the ingredients by boiling, you don't get beer; you get disgusting glop that nobody will touch. So you either get beer or glop; there's no intermediate partly-contaminated state. We can conclude that beer is the universal beverage partly because of this.
Wine is actually much easier to make. You can often get drinkable wine by just squeezing out the fruit's juice into a bottle and letting it sit in a dark closet for a couple weeks. But there's no guarantee that you won't have something else growing there in addition to the yeast. It's tempting, because it's so easy, and it usually works. But if you didn't sterilize the juice and add a good yeast culture, sometimes you get something that tastes good and makes you sick.
[B]eer is also an excellent source of calories.
It's also a good source of B vitamins. Of course, this is true of anything made with live yeast, including wine and bread.
If this works like most school actions, it'll be a disaster. The kids will soon be deciding that the Internet isn't cool; it's boring and "hard". They'll drop it and go back to other ways of upsetting the adults.
;-) be boring? But the schools (and some historians) manage to make it so.
If we really want young people to become familiar with the Internet, and learn to use it for their benefit, we should take the approach that works: Ban its use by children (where "child" even includes someone 17 years old). Put all sorts of leaky barriers in the way of their access. That way, the kids will be fascinated by it, and will spend lots of time learning how to use it.
Lots of people have observed that the main effect of most schools is to take various topics and make them boring and uninteresting. Consider a topic like history. How could the story of all the people who came before us (and messed up this world so thoroughly
Or consider music. That's a hard-wired human activity, that can be intensely exciting, right? How can we teach kids to not waste their time learning to make music, and make them content to spend the rest of their lives at a desk job? Right: Give them music lessons.
We should totally ban the use of the Internet in schools. They'll just do to it what they've done to so many other exciting human developments; they'll teach the kids that it's boring and uninteresting, and too hard for anyone but a "nerd" to understand.
Hmmm ... I'd call that a special case of what I was describing. I'd summarize it in a more general form:
The fastest way to learn how to do X with Y is to claim on the Internet that Y can't do X.
I'd claim that one of the major strengths of the free/open source "movement" is that it takes advantage of this human behavior to find solutions to problems. So people who complain about its fractiousness are missing the fact that this is a large part of what makes it so successful at turning out useful stuff.
[D]isagreements are really a strength because the good results are always picked back up.
Well, I was wondering if someone would point that out.
One of the specific examples I've long liked to use, and which I notice just appeared here with more than a bit of humor, is the ongoing vi/emacs "war". My claim is that it's a mistake to try to prevent flame wars like this, because we benefit from them.
The scenario is: J. Random Newbie asks in some forum how to do X with vi. The vi users respond with variants on "RTFM, n00b!". The user leaves in disgust at how hostile the vi user community is. He (she?) asks a similar question about emacs, and gets a similar answer.
But a slightly more experience user asks differently, posting to the forum a message of the form "It seems that emacs can do X but vi can't." The vi users get all angsty, and go into great detail the N different ways you can do X using vi. The user has now learned how to do X with vi, even though the documentation didn't explain it adequately.
And, some time later, an emacs user reading this says "Hey, all that vi stuff is interesting, but someone claimed that emacs can do X, too. I've dug around in TFM, and as far as I can tell, emacs can't do it at all." This upsets the emacs fanboys, so they respond by going into all the ways you can get emacs to do X. So some emacs users learn something useful that wasn't very well documented.
With a bit of Macchiavelianism, it's easy to take advantage of most such technical disagreements and learn a lot of things that nobody every bothered to document.
And sometimes, the result of such a discussion is that the fanboys of package Y face the fact that it really can't do X, so they look at the competitors that can do X, and add something comparable into Y. This can be orders of magnitude faster than begging a private vendor to give you a feature you need. With free/open software, even if the caretakers of a package don't consider your feature interesting, you can just fork the code and get together a small gang to add the feature that you need. Yeah, people will flame you for forking. But there are often good reasons that people do this. And if they're friendly, they can often get the original developers to merge their changes into the mainstream fork. Just try doing that with proprietary software.
Maybe, but I didn't miss the similar announcement of lenovo supplying Novell linux. Note that that announcement was almost exactly a year ago. And the article makes the comment:
;-)
Linux on the ThinkPad has long been supported first by IBM, and more recently, by Lenovo. In addition, the ThinkPad PC product line has probably had more specific Linux support than any other computer brand.
So a year ago, they were touting their long-time support for linux and their imminent sale of pre-installed linux. Go to lenovo.com and try to find any mention of Novell anywhere in any of the order-your-computer pages. (Really, try it. I'd be interested in seeing if anyone can find such references. I can't. I couldn't 9 or 6 months ago, either.)
When a company talk about having "long" supported linux, and has several times announced the imminent release of linux on their hardware, but you can't find a way to order it from them, there is reason to be suspicious. It's highly likely that this is yet another company that, like the Chinese government itself, is merely using the linux threat as a negotiating tactic to get a better deal from Microsoft. If they intended to actually sell it to us, you'd think that a year after announcing it, we'd be able to buy it.
The ThinkPad has a history as a good machine. I intend to keep checking occasionally to see if lenovo actually starts making it easy for customers to buy one with linux. Repeated public announcements aren't good enough; we should be able to order it without an extraordinary effort. If we can't, such announcements are little more than conventional bait-and-switch tactics.
But maybe this time it'll be different. (Ever heard that before?
So how are you supposed to find these expert programmers, and how can you tell a $60k developer from a $120k developer? By asking brain teasers like Microsoft and Google are reputed to do?
My favorite anecdote on this topic is about one of the interviews I've been to where they did that. They gave me a programming problem, and left me alone for maybe 10 minutes to solve it.
The guy who examined my answer rejected it as invalid. I asked why. The answer was that it wasn't the correct answer, which he had on a page of paper. So I looked at it, and then proved that my answer was not only correct, but faster and used less memory than his.
It was obvious that he was quite taken aback by my arrogance at 1) finding a better solution than the one he had, and 2) proving that mine was better. They didn't make me an offer. I wasn't disappointed by this.
It's not obvious how I could have given his "correct" answer, since their statement of the problem didn't give any clue that their approach was to be used. It's sorta like several other cases part of a programming problem was "Use any language you like", and my solution was rejected because it wasn't written in the correct language. I wasn't unhappy at being rejected in those cases, either, because it's obvious how I would have been treated there.
I wonder what sort of puzzles Google uses. I've seen some of the ones used in Microsoft interviews.
But having 80 people work for 1 hour a week is not any better.
...
Heh. It reminds me of a clever version that I've heard a few times:
If one woman can make one baby in nine months, how many babies can twelve women make in three months?
Unfortunately, many managers wouldn't understand why you would ask such a silly question
Three cheers for Lenovo!
;-)
Well, maybe one cheer.
I did the obvious test, that I've done for a number of other such "Linux is available on FOO" announcements: I went to lenovo.com, and tried to configure a laptop that ran linux.
I failed.
Nowhere on any of the couple dozen pages that I looked at did the "linux" string appear. Nowhere was I even given a choice of operating system. The choice was "Windows Vista".
I'll give three cheers when someone who wants a linux machine can easily configure it and order it. Until then, I'll consider such announcements to be PR aimed at quieting the linux crowd without intending to sell anything to them.
It is sorta curious that a company would so blatantly violate the old "Give the customer what they want" rule. They don't have to force linux on Microsoft fans; all they have to do is make it available. That's not difficult. So why don't they do it?
(I recently checked at ibm.com, and I still couldn't figure out how to order a linux laptop from them, either.
An interesting argument here is that it's just a language problem. We have another case of clueless politicians not understanding some new technology, and trying to handle it by treating a faulty metaphor as reality.
Consider: Some months ago, a friend tipped me off to pandora.com, and I experimented with it a bit. What they do is let you generate play mixes by telling that what music tracks you like (or don't like), and they "broadcast" a semi-random program of music that matches your likes. I tweaked it a while, and now I have six such mixtures. The call each personalized mixture a "station".
The problem here is that the new internet licensing scheme would charge, what is it, $6000 per year per "station". So it would cost pandora $36,000 per year to supply my six "stations". The only way they could do this would be if I paid them $36,000 per year, and that just ain't gonna happen.
But the reason for this exorbitant charge isn't what they're doing; it's that they call each such mixture a "station" that they "broadcast" to me. The US Congress doesn't understand that this is just a weak metaphor for something that really isn't very much like a radio station. Rather than learn about what "net radio" really is, they latch onto the radio metaphor and treat each such personalized mixture as an actual, physical radio station that's really broadcasting to thousands or millions of people.
So the solution is obvious: Change the terminology. If pandora would drop all words that relate them to real radio broadcast stations, the licensing law shouldn't apply to them.
For example, they could switch to the RSS terminology, which is new technology that isn't (yet) covered by any such licensing laws. It's based on the metaphor of news distribution instead, and news "publishers" aren't required to pay a per-customer license to redistribute "news". If pandora or other "radio station" web sites were instead to deliver an RSS-like stream of files with contents tailored to my dislikes and dislikes, and I had a client that would "display" each file in the stream by showing the meta-info in a window and sending the audio portion to the sound card (like a podcast, say), they could supply the same sort of service, but the threat of an exorbitant "broadcast license" wouldn't exist. And it would obviously not be a "broadcast", because it's being sent to only one client.
What are some other metaphors that could be used to do roughly the same thing, without invoking a "broadcast radio station" metaphor?