I have to disagree with this blogger. I think CS Unplugged is a great idea. Djikstra himself said that computer science has as little to do with computers, as astronomy has to do with telescopes. Telescopes are a tool for study in astronomy. But astronomy itself is a study of the stars. Similarly, computers (PC's, mainframes, iPhones, and everything in between) are tools for the study of computation. But the object of study is not the computers. It is computation itself - algorithms, encryption, etc. etc.
The computer is not the algorithm. The computer demonstrates the algorithm but it itself is not the algorithm. The telescope is not the star. It shows the star but it is not the star. CS Unplugged is doing the exact right thing in my opinion.
Really I'd say the earliest machine "algorithms" was the operation of the abacus (http://wiki.answers.com/Q/How_do_you_use_an_abacus), such that moving certain beads around gave you certain numbers - this can be viewed as a rough input/output calculating system. This originated in China I believe thousands of years ago. All an algorithm really is is a sequence of steps to go from an input to an output - a finite, discrete, numerical sequence of steps. A trivial example would be:
Input X, Output 0
Algorithm:
while x is not equal to 0, subtract 1 from x
When x equals 0, return x.
This is a finite series of step to go from input (x) to output (0). I just subtract 1 from x over and over until I have 0.
No matter how complex algorithms can get they are basically the same thing, at least in sequential programming - I don't know too much about other more recent stuff to be honest - but traditional programming is just taking an input, applying a set of operations on the input, one at a time, until the set of operations is completed and you have an output. An algorithm is just a "recipe" or a set of operations. A recipe is a series of steps to be done to food to make a meal. Similarly an algorithm is a series of steps to be done to an input to make an output. Most languages are basically like this in programming: FORTRAN, C, ASSEMBLY are all basically this same idea of sequential, finite operations on inputs.
This most likely has to do with social status in sexual selection. That is, the more "up the ladder" one is in a social group, the more attractive one is to potential mates. In early society, a female who mated with someone high up the social food chain would have her children more likely to be protected, to survive. But to be high up the social food chain, it takes smarts. So the children would inherit smarts and get the protections social status affords, and be more likely to survive. Also, from the male perspective, he would choose the healthier females he could (which translate to the "hot" females).
So, between the females going for the apes with the high social status (the beginning of today's "sugar daddy" concept) for the sake of increasing the selective advantage of their children and the males wanting to choose the healthiest females (or in current parlance, "hottest" females) for the sake of having the best survival chance for the carriers of their DNA, their children, the result is that the offspring are more likely to survive as a result of healthy genes from Mom and social status protections from Dad, inheriting Dad's smarts as well because Dad had to be smart to get the social status he got. Consequently, today, we have evidently a gene set that is both healthy and smart so that more intelligent people may be generally more healthy. (The downside is that more intelligent people are more likely to self-destruct into drugs, alcohol, and generally unstable behavior, but that is another story, ha!)
Well anything can seem obvious in retrospect. As T.H. Huxley said of Natural Selection, "How utterly stupid of me not to have thought of that myself!" And indeed, natural selection seems quite obvious once one understands it. But it takes the odd visionary like a Newton or a Darwin to come up these things that years later seem "obvious". It takes the "black swans" of history - today "cloud computing" is becoming not only acceptable, but even the norm for SCM solutions whereas even a few years ago SCM solutions were largely big, bulky, custom-made, run-in-house, not portable nightmares. Today (2009) companies that need SCM (supply chain management) solutions are seeing the benefits of easily deployable "cloud" applications more and more. Circa 2020, doubtless conventional wisdom will be that it is "obvious" SCM should be done via the "cloud", but in 2000, not only was it not "obvious", it was relatively rare. It takes the individual achiever, the black swan, to move history forward and make the things that future generations will think to be "obvious".
Could somebody please tell me why the f2k we care how fast some random bird can fly? Why the swallow? Why not the bald eagle? Or the chickadee? Who gives a f2k.
Precisely. It is not the strongest nor the smartest often that survive, but the best adapted. Dawkins has made this point himself, in that the genes which survive are the "mediocre" genes, genes that tend to do well in the "average" of their environments. Evolution is more likely to produce spineless wonders like T.S. Eliot's J. Alfred Prufrock than Superman, roughly speaking, because Prufrock, dipshit though he may be, is adapted to the meine of his environs.
Professor Dawkins is one of my all time heroes. Selfish gene theory stands at the center ultimately of all anthropology, sociology, biology, and psychology. He has transformed the world by giving us an understanding of our own existence, he has answered the age-old question of "Why are we here?". We are here, to preserve and copy the genes. They should build a statue of him next to Darwin. He is the apotheosis of human understanding. Like Prometheus, he has "given man a gift they had not conceived, and lifted darkness off the earth."
This is racism, pure and simple, teaching young kids to torture and kill any non-Aryans in the vicinity. The anti-immigrant people are Aryan supremacists who want America to be an Aryan homeland. It is despicable that this neo-Nazi propaganda is being taught to young people. Children are not born hating, they are taught to hate through brain washing outfits like the homophobic, racist, anti-Semitic, neo-Nazi boy scouts. It is repulsive. We should be teaching our kids about programming and useful skills, instead, we are teaching them to use minorities for target practice a la Ralf Fiennes' character in 'Schindler's List'. It is enough to make the sane people like me want to move to Canada quite frankly.
The author is a fool. He is a fool who does not understand the free market. Users are cows. They should be treated as such. Cows do not know what they want. It is our job as programmers to give the cows what they need whether they like it or not. We the programmers know better than the cows who are the users. A programmer who does not understand that is a fool who should be weeded out of the free market. In a free market the cows can choose the software they want - if they don't like it, they are free to not buy it. But the programmer must do his best to save the cow (or the lemming) from himself. Users are fools who don't know what is best for them. Only we the programmers do. If they don't like our software they don't have to buy it. Such is the nature of the free market. Programmers should continue to write good software even if the user doesn't like it. Fools did not understand the buildings of Howard Roarke, nor do they understand the intricacies of software. So be it. The cows can go on mooing. The architects and programmers of the world will go on moving civilization forward.
I think the question to be asked, is the question of if it is in the self-interest of the American taxpayer to subsidize schools in Iraq and Afghanistan. Now, this is hard to answer. On one hand, it is unclear how more schools in these countries serve our national interest. On the other hand, without education, young people are more privy to fall into the brainwashing of terrorists. So one could make the argument that if one spends on education, that enhances national security by having more educated people in these unstable countries and therefore fewer people who are possible recruits for terrorists. I guess it is all in the way one does it, if one builds schools with good oversight (i.e. overseen by the coalition and Iraqi/Afghan governments) then one could perhaps justify that. However, if there is no oversight, then who knows what kind of stuff might end up getting taught there. We obviously don't want to spend our tax dollars building schools only so that religious extremists can teach in them. The same is true incidentally in the United States. Government vouchers for private schools are wrong, because these private schools often teach nonsense like Intelligent Design, which to my mind is the Ultimate-747-In-The-Junkyard-As-Designer theory and merits no serious consideration, let alone our tax dollars. So if there is a self-interest in our national security in helping with education in Iraq and Afghanistan that may be justifiable, provided there is strict oversight, and if there is no oversight then it is a no go. Similar to how education here at home should not have tax dollars going to private religious agendas. Ideally of course I think states, and not the federal government, should handle education, since this is an issue of federalism, but that is another issue than the present discussion.
Just say, "Well, how would YOU approach this?" to gauge where she is at. So rather than solve it for her every time, have her give it a stab first. Let her be totally wrong, but at least have her try. Then correct her approach and set her on the right path. Then if she really is stuck after making an honest effort, then help out with the answer, but basically the more times questions like "What do you think?" are put to her, the more she will hopefully think on her own.
- My all time favorite psychiatrist quoting Dante Alighieri :-)