It seems a national election is on the horizon for us Canadians. As usual, I’m at a loss for whom to cast my vote. The Liberals are making promises they can’t keep to buy my vote; the NDP wants to increase my taxes so they can spend more on a plethora of government services I’ll never use; and the Conservatives are wasting my time and tax dollars by calling an election, simply because it looks like they might have a chance of winning.
EETimes is reporting that the first product from TSMC’s 65nm process is going to be a low-power “platform or technology”.
I find it interesting that low-power is rising in importance with chip designers these days. On the downside, it could be a sign of more competition for AMI Semiconductor, my employer. On the up, it could also indicate that the market in which we have established ourselves is about to grow.
Anyways, I wonder what the application is, and who TSMC is making it for.
Larry worries that our country is being overrun by worthless altruistic looters, the likes of which inhabited Ayn Rand’s classic Atlas Shrugged, which glorifies self-interest and portrays altruism as the one of the most self-destructive ideas known to man. His mention of the novel reminded me of a recent New Scientist article, entitled Charity begins at Homo sapiens that I’ve been meaning to blog about.
The article summarizes some current research into strong reciprocity, a phenomenon where people help others to their own detriment, from an evolutionary perspective. Some of the findings may be startling to Randians:
Further support for the idea that strong reciprocity is an adaptation in its own right comes from the theoretical studies of economist Herbert Gintis of the University of Massachusetts, Amherst, anthropologist Robert Boyd of the University of California at Los Angeles, and others. They set up a computer model in which groups of individuals interacted, and watched how their behaviour evolved. Individuals were set up in the model to behave initially either as cheats or as cooperators, and in personal interactions the former came off best. When groups competed with one another, however, cooperation came into its own: groups with more cooperators were likely to flourish.
But that was only the start. The individuals, whether initially cooperators or cheats, were also programmed to copy successful behaviour. In simulations with groups ranging from 4 to 256 individuals, the team found that altruism could evolve. The benefits that cooperation conferred on a group outweighed its costs to individuals – but only in groups of less than about 10. Ancestral human hunter-gatherer bands are thought to have numbered 30 or more individuals, so how could cooperative behaviour have evolved and spread in these groups?
The answer lies in the fact that strong reciprocity is not simply a matter of cooperation; it also requires punishment of those who fail to toe the line. When the team added punishment to their models, they found it made a huge difference. In a second round of simulations, they included a new kind of individual: the “punishers”. These punishers were not only willing to cooperate with others but also to punish cheats. By making cheats pay for their antisocial actions, they tipped the balance towards cooperation. This time, competition between groups led to the emergence of cooperation in groups of up to 50 individuals (Proceedings of the National Academy of Sciences, vol 100, p 3531).
So it would seem entirely possible that self-interest and altruism are not as incompatible as Rand made them out to be. In fact, it could be that altruism is the most selfish of all moral codes. How’s that for a paradox? Not one that many Randians would find easy to swallow. Coming to think of it, neither would many altruists.
Update: Larry thinks I’m disagreeing with him. I’m not! I find it absolutely terrifying that union bosses are directly manipulating nation budgets.
It was Larry’s reference to Rand that reminded me of the New Scientist article, which I found interesting because it cast some doubt on some of Rand’s ideas about altruism, as well as supplying some new information on which one might develop an improved philosophy of altruism and self-interest.
My apologies for not separating the two trains of thought more clearly.
Last night, Mandy and I made our second visit to Yummyaki, a Japanese food restaurant at the corner of Northfield and Davenport in Waterloo. I really like it. The quality of the food is excellent, though the decor is rather sparse; pedestal tables separated by chest-high partitions. The service is prompt and friendly.
The menu is perhaps not as extensive as some other local sushi joints. Neither is it as expensive. Prices are about half of what you’d pay at some other local sushi joints.
Yummyaki: an excellent choice for casual Japanese eats. I recommend it.
According to this New Scientist story, scientists have found a mutation in one gene of the common fruit fly that let’s it get by with 30% less sleep.
The finding is important because it suggests the amount of sleep needed may be largely controlled by one gene, which may shed light on human sleep needs, says Chiara Cirelli at the University of Wisconsin, US. “This isn’t some obscure fly gene – there’s a homologue in mammals and humans.”
If they can transfer this to humans, we could get 30% more wakeful hours in our lifetimes. Bonus! Not quite:
There is a snag, though, since the lifespan of [the flies with the mutation] was about 30% shorter than normal.
Design guru, Donald Norman, has written a response to Edward Tufte’s The Cognitive Style of PowerPoint, in which Tufte claimed that PowerPoint, among other things, caused the Challenger disaster. Norman writes:
Everyone agrees, I hope, on the undesirability of the long, boring talk in which the speaker reads things to us that we are perfectly capable of reading to ourselves. Bullet point slides often lead to poor talks, but the problem is with the talk, not with the tool. We have had poor talks long before PowerPoint. We have even had bullet points long before PowerPoint—long before computers. In the old days, people typed, stenciled or hand-lettered their slides onto transparencies which were shown with the aid of overhead projectors or wall charts, or photographed them on to glass-plated photographic slides and then, later, 35 mm. slides. These talks were also dull and tedious.
This essay was tucked away, unfinished, in a drawer for more than a year. I’m glad Donald got around to finish it.
Shel and Robert, at The Red Couch are looking for a title for the book they’re writing on business blogging. Their working title up to this point, “Blog or Die!”, has come under scrutiny for various reasons, not the least of which is that in some parts of the world the choice to blog is truly life or death.
Don’t get roped into a generic and homogenized title. After all, a good blog is not generic, nor is it homogenized — your book title shouldn’t be either. (Dig?)
THE RED COUCH title is different enough, intriguing enough, and compelling enough to one’s capture attention. Keep in mind … at some point soon the term ‘blog’ will become fatigued. (Double dig?)
“THE RED COUCH: Why Conversational Marketing and Blogging is Essential to Business”
Jim Minatel, the editor, would rather play it safe with a more literal title, such as “Just Blog It!”, “The Human Corporation: How Blogs Improve Everything In Your Business”, and “Let Your People Blog: Why Conversational Marketing is essential to Business”, for some classic reasons:
I’m the one who so far doesn’t buy the “Purple Cow” style titles for this book, even though I love it for Seth’s book… What works for previously established authors like Seth Godin and Malcolm Gladwell might not be the best recipe for first time authors.
And what works for the blog-enlightened crowd that’s reading the Red Couch blog today, might not be the best title to sell to a broader audience that hasn’t yet bought into the value of blogs 8 months from now. We hope everyone here is going to end up liking the book enough to buy or recommend it regardless of the title. But none of you need to be sold on blogging, you are already the leading 1% (or a fraction of 1%) of the bigger business audience. If Shel and Robert are going to help spread the blog vision to business people who haven’t got it yet, the first step in that has to be either them picking the book up on their own from the business section, which I don’t think “The Red Couch” will get them to do, or from your recommendation.
There are two assumptions in Jim’s reasoning that I feel need to be challenged. The first is the assumption that Robert and Shel are first-time authors. It may be true that neither has ever published a book before, but they have already built a large and influential readership. Regardless of the title of this book, it is going to sell well; which brings me to the second idea assumption I’d like to challenge: that the Clueless Joe in the bookstore is the market that matters.
The way people find books has changed dramatically with the rise of the internet. It has for me, anyway. Nearly all of the books I buy these days are recommended to me somehow: by a friend, Amazon reviews, bloggers, or comments on various forums. In the past five years, I can think of one book that I’ve purchased at a bookstore base solely on the cover material. My usual approach when I find a book that seems promising at a bookstore is to make a mental note of it, put it back on the shelf, and check the Amazon reviews when I get home. I don’t trust cover material any more than I trust used car salesmen. I could be an anomoly, but I don’t think I’m alone. What sells me on a book is independent reviews; word of mouth, as they call it.
The uninformed guy in the bookstore is irrelevant. Some of the most influential people in the world are already raving about The Red Couch. Somehow their recommendations are going to reach him and he will buy it, regardless of how silly the title may sound.
So my advice for Jim: Do something remarkable. You don’t have anything to lose.
As somebody reading and working through the exercises in SICP, I enjoyed the paper Jim Brown posted about it entitled What’s in the box?: Abstraction and Regimes of Truth in Computer Programming. While the focus of the article is on what it means to treat procedures a black boxes, the part I found most interesting is where he likens the differences between the bottom-up approach of SICP and the top-down approach of Dijkstra to the differences between Aristotle’s and Plato’s epistemologies:
For Plato, we must understand truth prior to entering into dispute or argument, otherwise we will find ourselves lured by faulty “resemblances”. This is Dijkstra’s point when he warns of the dangers of testing programs before they are properly finished. One should know their program perfectly before testing it. Trial and error was a flawed technique for these programmers. Abelson and Sussman, on the other hand, are more interested in the negotiation and collaboration that happens in the programming community. In this sense, their method seems more akin to Aristotle’s description of rhetoric. In Book I of the Rhetoric, he differs from Plato’s view of rhetoric as mere persuasion: “[Rhetoric’s] function is not simply to succeed in persuading, but rather to discover the means of coming as near such success as the circumstances of each particular case allow (1328). Rhetoric is then useful because it gets us as close to truth as possible, and this should remind us of Abelson and Sussman’s assertion that, “we become convinced of program truth through argument.”
Solution to Exercise 1.14:
count-change is Θ(n) in space. Like the
fib procedure, the space required is equal to the maximum depth of the tree, which occurs on the combination that is all pennies.
I believe, though I could very well be wrong, that the process is Θ(n2) in time as the calls to
cc tend to double with increments to n.
I couldn’t get conclusive timing numbers out of DrScheme to confirm this belief. Here’s the code I was using to test
(require (lib "19.ss" "srfi"))
(map (lambda (amount)
(let ((start-time (current-time time-process))
(change (count-change amount))
(end-time (current-time time-process)))
(let ((diff (time-difference end-time start-time)))
(list (time-second diff) (time-nanosecond diff)))))
(list 100 200 300 400))
The output was
((0 160000) (0 2810000) (0 1560000) (1 6560000)). I don’t understand why the third time was consistently less than the second. Anybody care to enlighten me?