I’ve decided I need to become a programmer again. As an undergrad, and to a lesser extent as a grad student, I wrote code all the time. But since I started doing research, it’s been pencil-and-paper almost all the way through, with occasional dips into Mathematica or plotting programs.
That must end, so I’ve decided to learn Python. I just need something simple for number-crunching and graphics, and everyone in the know seems to have nice things to say about the language. (Secretly I would like to play around with genetic algorithms and cellular automata, but I’m not going to admit that.) I tried to get Fortran, my previous language of choice, up and running on my Mac … it didn’t go well.
So… any tips? Pointers to well-written resources and tutorials (online or in print) would be especially helpful. Keep in mind that the target audience is an aging theoretical physicist who hasn’t programmed in 20 years, and for that matter has been pretty much command-prompt free (working on my Mac) for the last five.
The things I admit in public on this blog, sheesh.
Not to be a harbinger of doom, but this one sounds bad. There are some 6-15 million computers out there running Windows which are infected with a computer virus, dubbed Conficker C. The recent report by SRI makes for some chilling reading. On April 1 (that is, next Wednesday!) the virus is set to…well…do something. It’s not clear what, but with so many millions of computers will do it. The report concludes:
We present an analysis of Conficker Variant C, which emerged on the Internet at roughly 6 p.m. (PST) on 4 March 2009. This variant incorporates significant new functionality, including a new domain generation algorithm and a new peer-to-peer file sharing service. Absent from our discussion has been any reference to the well-known attack propagation vectors (RCP buffer overflow, USB, and NetBios Scans) that have allowed C’s predecessors to saturate so much of the Internet. Although not present in C, these attack propagation services are but one peer upload away from any C infected host, and may appear at any time. C is, in fact, a robust and secure distribution utility for distributing malicious content and binaries to millions of computers across the Internet. This utility incorporates a potent arsenal of methods to defend itself from security products, updates, and diagnosis tools. It further demonstrates the rapid development pace at which Conficker’s authors are maintaining their current foothold on a large number of Internet-connected hosts. Further, if organized into a coordinated offensive weapon, this multimillion-node botnet poses a serious and dire threat to the Internet.
Yikes! Whoever wrote this thing is not a very nice person…or persons. The C variant apparently managed to upgrade itself over the network, and disables security anti-virus software. If I were you (and I am apparently not because I use only OS X and Unix) I would update my antivirus software every day and scan my machine. And leave it off next Wednesday if possible.
Pass the word…
I want one, I want one! A new, totally tricked-out 17″ MacBook Pro with solid state drive:
2.93GHz Intel Core 2 Duo
8GB 1066MHz DDR3 SDRAM – 2X4GB
256GB Solid State Drive
SuperDrive 8x (DVD±R DL/DVD±RW/CD-RW)
MacBook Pro 17-inch Hi-Resolution Antiglare Widescreen Display
Backlit Keyboard (English) / User’s Guide
Apple Mini DisplayPort to DVI Adapter
iWork ’09 preinstalled
AppleCare Protection Plan for MacBook Pro (w/or w/o Display) – Auto-enroll
All for just $5,875.
I first came across Second Life at a demonstration session put on by one of Linden Lab’s gurus at SciFoo camp in 2006. Since then I’ve heard about it occasionally, but was recently reminded about the details of how it works by Sean’s post on his talk in Second Life. This is all well and good and, although I’m not currently spending time in Second Life myself, I can see that there is real educational potential there, particularly with people like Rob involved.
But sometimes things get just plain silly! The Guardian is carrying a story of a real life couple who got divorced because the man was carrying on a platonic relationship with another woman in Second Life (I guess I should mention that his avatar also slept with a prostitute avatar also). So, first, while some things, like attending a talk by a cosmologist, may be almost as good in Second Life as in real life, I’m guessing sex isn’t one of them because it lacks the whole, you know, you getting laid part! Second, if you wanted to misbehave with a non-human toy form, put together from basic building blocks, you might as well make yourself a Lego partner – at least you could touch that.
Several months ago, in the heat of the republican primary, Yahoo news asked the candidates: Mac or PC? McCain’s response was revealing… and disturbing.
Neither. I am an illiterate who has to reply on my wife for all of the assistance I can get.
Now come some even more impressive quotes in an interview with the New York Times.
He said, ruefully, that he had not mastered how to use the Internet and relied on his wife and aides like Mark Salter, a senior adviser, and Brooke Buchanan, his press secretary, to get him online to read newspapers (though he prefers reading those the old-fashioned way) and political Web sites and blogs.
“They go on for me,” he said. “I am learning to get online myself, and I will have that down fairly soon, getting on myself. I don’t expect to be a great communicator, I don’t expect to set up my own blog, but I am becoming computer literate to the point where I can get the information that I need.”
Mr. McCain said he did not use a BlackBerry, though he regularly reads messages on those of his aides. “I don’t e-mail, I’ve never felt the particular need to e-mail,” Mr. McCain said.
I know the internets are confusing and all, but I’m frankly a bit baffled by this. He needs help “getting on”??? To read newspapers? Hard to imagine that there’s not a computer he could use somewhere, already attached to the internet, and probably even with the browser already installed. I’m guessing he wouldn’t have to learn how to set his DNS servers in order to read the New York Times. Is it typing the URL that’s difficult? My grandmother, by the way, who is more than a decade older than McCain, seems to have figured this out just fine, even without a campaign staff to help.
The level of cluelessness here is deep — not only does he admit that he’s completely illiterate, he demonstrates a basic lack of familiarity with the terminology (he also mentioned that his staff shows him Drudge, because “Everybody watches, for better or for worse, Drudge.”), much like his colleague Senator Ted “series of tubes” Stevens, opposer of net neutrality.
And it’s important. At the risk of stating the obvious: Internet policy has direct relevance for our most fundamental rights, including freedom of expression, privacy, and democratic access to information. Computing is increasingly critical to our increased understanding of the Universe, financial markets, and disease. The internet and social networking tools are rapidly revolutionizing the way we interact with each other, citizen’s access to and engagement in government, and government accountability. These things are central not only to innovation and the global economy, but to 21st century democracy in America and the world. It’s really hard to see how you can fully appreciate these issues if you don’t know the most basic things about operating a computer. Leadership matters.
Barack Obama, on the other hand, has a twitter account. (He also hired one of the Facebook founders to start his myBarackObama site, which has clearly been responsible for a good deal of his internet fundraising and organizing.) He gets it.
I’ve written before about my husband’s affection, or rather, obsession with Apple. Like all good converts, he feels compelled to proselytize, particularly about my perceived need for an iPhone. “But honey, you can check your email!” “Hey look! Google Maps knows where you are!”. I remain unconvinced.
However, the other day, he nearly got me:
“Did you know it can emulate the HP-15C?”
Be. Still. My. Heart.
The HP-15C is simply the finest piece of handheld computing technology ever. (Take that Steve Jobs). I got my first 15C back in high school, and it was the only calculator I used for the next couple of decades. I could operate it in the dark. I lost it in an airplane seat back pocket and have never gotten over it.
I suppose in the intervening years we’ve gotten used to irrational devotion to electronic gadgets, but the 15C had to have been one of the first targets, at least in geeky circles. If you mention the 15C to a nerds of a certain age, our eyes grow misty at the utter perfection of it. It was a calculator that simply got everything right.
The genius of the 15C is multifold. First is the form factor. It’s essentially the same as an iPhone, held in landscape mode, with a nice weight that fits well in the hand. The buttons are large and well separated, and there are no more or no fewer than you could want. (In comparison, modern HP calculators are crammed with a thicket of unusable little buttons. Ick.) Second is the glory of reverse polish notation. The 15C operates with a memory stack, which when operating with RPN allows you to perform complex calculations with no need for parentheses. Third is the 15C’s unnatural durability. A former dog of mine literally mangled a friend’s 15C, and it continued to work in spite of the large teeth marks denting the keys. Fourth (and most critical for getting me through years of physics labs and observing runs) was that it’s programmable. That’s no big deal these days, but huge in the early 80’s. Spreadsheets were hardly widespread, and when one timed balls going down ramps or any other such repeated trial, doing repetitive calculations was a breeze on the 15C.
Now, am I alone if my love for the 15C? No, indeed. On Ebay, a 15C in good shape can go for hundreds of dollars. (And if you buy one, it’ll still work. I’m guessing one will not say the same about the iPod in 30 years.). There’s an on-line petition begging HP to bring the 15C back.
And, there are people out there writing emulators for it to run on the iPhone. If you ever see me with an iPhone, this will be why.
One of my postdocs has turned me on to blackle.com. The simple idea behind Blackle is that it’s identical to Google, except for the energy efficient black background:
It’s a cute idea, though they should have chosen dark blue and gone for “Bloogle”.
We’ve all seen CAPTCHA‘s — those distorted words that function as a cut-rate Turing test, separating humans from spambots on any number of websites.
This weekend I was at a Kavli Frontiers of Science meeting at the National Academies of Science office in Irvine, and one of the participants was Luis von Ahn — the guy who was responsible for inventing the CAPTCHA idea. He gave a great one-minute talk, in which he traced his personal feelings about being responsible for something that is so useful, yet so annoying.
CAPTCHA, you will not be surprised to hear, is ubiquitous. Luis figured out that the little buggers are filled out about sixty million times per day by someone on the web. So, as the inventer, he first felt a certain amount of pride at having exerted such a palpable influence on modern life. But after a bit of reflection, and multiplying sixty million times by the five seconds it might take to fill in the form, he became depressed at the enormous number of person-hours that were essentially wasted on this task.
Being a clever guy, Luis decided to make lemonade. What we have here is a huge number of people who are recognizing words that a computer can’t make out. Luis realized that there was a separate circumstance in which you would want the computer to recognize the words, even though it wasn’t quite up to the task — optical character recognition, and in particular the problem of digitizing old texts. Apparently, before the advent of the Internet, people would store information by binding together pieces of paper with words printed on them, forming compact volumes known as “books.” In the interest of preserving the products of this outmoded technology, various efforts around the world are attempting to scan in all of those books and store the results digitally. But often the text is not so clear, and the computers don’t do such a great job at translating the images into words.
Thus, reCAPTCHA was born. At this point you should be able to guess what it does: takes scanned images from actual books, with which optical character recognition software are struggling, and uses them as the source material for CAPTCHA’s. The project is up and running, and can be implemented anywhere the ordinary CAPTCHA’s are used. Now, when you get annoyed at having to make out those squiggly words with lines slashed through them, you can take some solace in knowing that you’re making the world a better place. Or at least saving some books from the trash bin of history.
Here is one of the best ideas I’ve heard in a long time – thanks to Matt Searle for passing this on to me!
Computers often do the same thing over and over again. Microprocessors have become amazingly fast, but since they are general purpose, they are not as fast as dedicated circuits which just do one operation, but do it blazingly fast. Field-programmable gate arrays (FPGAs) have been used for over two decades for dedicated operations in high-speed electronics, and now Prof. Frank Vahid and his Ph.D. student Roman Lysecky at UC Riverside have married the FPGA to the microprocessor to create “warp speed” computing.
The idea, like many great ideas, is simple: when a computer program finds that it is executing the same instructions repeatedly, and these can be done faster in an FPGA, the program automatically moves that code section to an on-board FPGA, which will run that section up to a 1000 times faster than the microprocessor.
Lysecky’s dissertation on warp computing won the 2006 “Dissertation of the Year” prize at the European Design and Automation Association.
This is so obviously a great idea, and will speed up computing in so many circumstances that I expect we’ll see it in commercial systems very rapidly. This could be a huge breakthrough…
I love stories like these:
Suffering from its exorbitant price point and a dearth of titles, Sony’s PlayStation 3 isn’t exactly the most popular gaming platform on the block. But while the console flounders in the commercial space, the PS3 may be finding a new calling in the realm of science and research.
Right now, a cluster of eight interlinked PS3s is busy solving a celestial mystery involving gravitational waves and what happens when a super-massive black hole, about a million times the mass of our own sun, swallows up a star.
As the architect of this research, Dr. Gaurav Khanna is employing his so-called “gravity grid” of PS3s to help measure these theoretical gravity waves — ripples in space-time that travel at the speed of light — that Einstein’s Theory of Relativity predicted would emerge when such an event takes place.
It turns out that the PS3 is ideal for doing precisely the kind of heavy computational lifting Khanna requires for his project, and the fact that it’s a relatively open platform makes programming scientific applications feasible.