On the Internet Archive, a hi-rez scan of the 1983 Radio Shack computer catalog, which is a wonderland of jaw-dropping prices for prosumer equipment from my boyhood that doesn't even qualify as a toddler's toy today. I will always retain a fondness for acoustic couplers, though, as they were the way I first connected to a computer, running a screenless teletype terminal connected to my Dad's university PDP by means of one of these suction-cup wonders. There was something, I dunno, legible about being able to see how the Bell handset fit into that cradle, to hear the barely audible tinny whine of the characters crawling over the wire. It was like being able to watch nerve impulses travel from a brain to a distant limb.
At the latest San Francisco Drone Olympics (now called DroneGames, thanks, no doubt, to awful bullying from the organized crime syndicate known as the International Olympic Committee), there were many fascinating entries, but the champion was James "substack" Halliday's Virus-Copter (github), which made wireless contact with its competitors, infected them with viruses that put them under its control, sent them off to infect the rest of the cohort, and then caused them to "run amok."
Many people have written to point out that Virus-Copter shares some DNA with one of the plot elements in my novel Pirate Cinema, but I assure you the resemblance is entirely coincidental. Drones, after all, are stranger than technothrillers.
node cross-compiled for the ARM chips running on the drones *
felixge's ar-drone module *
some iwconfig/iwlist wrappers in lib/iw.js *
open wireless networks in nodes.json (gathered by the deployment computer)
BBC Radio 4's great math and science show "The Infinite Monkey Cage" did a great (and very funny) episode on crypto and Bletchley Park, with Robin Ince, Brian Cox, Dave Gorman, Simon Singh and Dr Sue Black.
Jeff Moser has a clear, fascinating enumeration of all the incredible math stuff that happens between a server and your browser when you click on an HTTPS link and open a secure connection to a remote end. It's one of the most important (and least understood) parts of the technical functioning of the Internet.
People sometimes wonder if math has any relevance to programming. Certificates give a very practical example of applied math. Amazon's certificate tells us that we should use the RSA algorithm to check the signature. RSA was created in the 1970's by MIT professors Ron *R*ivest, Adi *S*hamir, and Len *A*dleman who found a clever way to combine ideas spanning 2000 years of math development to come up with a beautifully simple algorithm:
You pick two huge prime numbers "p" and "q." Multiply them to get "n = p*q." Next, you pick a small public exponent "e" which is the "encryption exponent" and a specially crafted inverse of "e" called "d" as the "decryption exponent." You then make "n" and "e" public and keep "d" as secret as you possibly can and then throw away "p" and "q" (or keep them as secret as "d"). It's really important to remember that "e" and "d" are inverses of each other.
Now, if you have some message, you just need to interpret its bytes as a number "M." If you want to "encrypt" a message to create a "ciphertext", you'd calculate:
C ≡ Me (mod n)
This means that you multiply "M" by itself "e" times. The "mod n" means that we only take the remainder (e.g. "modulus") when dividing by "n." For example, 11 AM + 3 hours ≡ 2 (PM) (mod 12 hours). The recipient knows "d" which allows them to invert the message to recover the original message:
Security Ledger reports on a breakthrough in password-cracking, using 25 graphics cards in parallel to churn through astounding quantities of password possibilities in unheard-of timescales. It's the truly the end of the line for passwords protected by older hashing algorithms and illustrates neatly how yesterday's "password that would take millions of years to break" is this year's "password broken in an afternoon," and has profound implications for the sort of password hash-dumps we've seen in the past two years.
A presentation at the Passwords^12 Conference in Oslo, Norway (slides available here), has moved the goalposts, again. Speaking on Monday, researcher Jeremi Gosney (a.k.a epixoip) demonstrated a rig that leveraged the Open Computing Language (OpenCL) framework and a technology known as Virtual Open Cluster (VCL) to run the HashCat password cracking program across a cluster of five, 4U servers equipped with 25 AMD Radeon GPUs and communicating at 10 Gbps and 20 Gbps over Infiniband switched fabric.
Gosney’s system elevates password cracking to the next level, and effectively renders even the strongest passwords protected with weaker encryption algorithms, like Microsoft’s LM and NTLM, obsolete.
In a test, the researcher’s system was able to churn through 348 billion NTLM password hashes per second. That renders even the most secure password vulnerable to compute-intensive brute force and wordlist (or dictionary) attacks. A 14 character Windows XP password hashed using NTLM (NT Lan Manager), for example, would fall in just six minutes, said Per Thorsheim, organizer of the Passwords^12 Conference.
My latest Guardian column is "Here's what ICT should really teach kids: how to do regular expressions," and it makes the case for including regular expressions in foundational IT and computer science courses. Regexp offer incredible power to normal people in their normal computing tasks, and we treat them as deep comp-sci, instead of something everyone should learn alongside typing.
I think that technical people underestimate how useful regexps are for "normal" people, whether a receptionist labouriously copy-pasting all the surnames from a word-processor document into a spreadsheet, a school administrator trying to import an old set of school records into a new system, or a mechanic hunting through a parts list for specific numbers.
The reason technical people forget this is that once you know regexps, they become second nature. Any search that involves more than a few criteria is almost certainly easier to put into a regexp, even if your recollection of the specifics is fuzzy enough that you need to quickly look up some syntax online.
Greg sez, "This project is using a number of computational photography techniques to document Charles Babbage's 'Difference Engine No 2' for the Computer History Museum in Mountain View. There are interactive gigapixel images for the four cardinal views of the device available to view."
Here's a 1973 orientation video from Bell Labs' Holmdel Computer Center, to get new, budding Unix hackers acquainted with all the different apparatus available to them, and also to let them know which counter to visit to get a different tape loaded onto one of the IBM mainframes.
Timothy Weninger recently submitted a research paper to a computer science conference called World Wide Web. On his way to that, he went through 463 drafts. Bear in mind, this paper has only been submitted, not yet accepted, so there's probably even more edits that are still yet to happen. Welcome to the life of a scientist.
In this video, Weninger created a timelapse showing all the different stages of his writing process, as he added graphs and went through cycles of expanding, contracting, and expanding the text. But mostly expanding. The paper grows from two pages to 10 by the end of the video.
Remember those BASIC programs you typed into your C64?
Now there's a book written about one.
And the program is only 1 line.
And 10 people wrote this book. As one.
And they're not lunatics but teach at MIT and USC and other fancy places.
And they even wrote programs to study it.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10 is a book of Critical Code Studies that looks at the code and culture of a 1-line program that ran on the Commodore 64. This book uses that 1-liner to explore BASIC programming culture in the 1980s and to reflect on its role in inspiring programmers to take the next step.
By Nick Montfort, Patsy Baudoin, John Bell, Ian Bogost, Jeremy Douglass, Mark C. Marino, Michael Mateas, Casey Reas, Mark Sample and Noah Vawter
A paper in a 1909 edition of the Philosophical Transactions of the Royal Society of London described the dissection of Charles Babbage's brain. The whole article is on the Internet Archive, from which the Public Domain Review has plucked it.
Babbage himself decided that he wanted his brain to be donated to science upon his death. In a letter accompanying the donation, his son Henry wrote:
I have no objection…to the idea of preserving the brain…Please therefore do what you consider best…[T]he brain should be known as his, and disposed of in any manner which you consider most conducive to the advancement of human knowledge and the good of the human race.
Half of Babbage’s brain is preserved at the Hunterian Museum in the Royal College of Surgeons in London, the other half is on display in the Science Museum in London.
Writing in a special Wired series on patent reform, Free Software Foundation founder Richard Stallman proposes to limit the harms that patents do to computers, their users, and free/open development by passing a law that says that running software on a general purpose computer doesn't infringe patents. In Stallman's view, this would cut through a lot of the knottier problems in patent reform, including defining "software patents;" the fact that clever patent lawyers can work around any such definition; the risks from the existing pool of patents that won't expire for decades and so on. Stallman points out that surgeons already have a statutory exemption to patent liability -- performing surgery isn't a patent violation, even if the devices and techniques employed in the operation are found to infringe. Stallman sees this as a precedent that can work to solve the problem. Though it seems to me that it might be easier to define "performing surgery" than "operating a general purpose computer."
This approach doesn’t entirely invalidate existing computational idea patents, because they would continue to apply to implementations using special-purpose hardware. This is an advantage because it eliminates an argument against the legal validity of the plan. The U.S. passed a law some years ago shielding surgeons from patent lawsuits, so that even if surgical procedures are patented, surgeons are safe. That provides a precedent for this solution.
Software developers and software users need protection from patents. This is the only legislative solution that would provide full protection for all.
We could then go back to competing or cooperating … without the fear that some stranger will wipe away our work.
Chinook's story is a bittersweet and moving tale, a modern account of John Henry and the steam-drill, though this version is told from the point of view of the machine and its maker, Jonathan Schaeffer, a University of Alberta scientist who led the Chinook team. Schaeffer's quest begins with an obsessive drive to beat reigning checkers champ Marion Tinsley, but as the tale unfolds, Tinsley becomes more and more sympathetic, so that by the end, I was rooting for the human.
This is one of the best technical documentaries I've heard, and I heartily recommend it to you.
Here's an absolutely inspiring TED Talk showing how "self-organized computer science courses" designed around students building their own PCs from scratch engaged students and taught them how computers work at a fundamental level.
Shimon Schocken and Noam Nisan developed a curriculum for their students to build a computer, piece by piece. When they put the course online -- giving away the tools, simulators, chip specifications and other building blocks -- they were surprised that thousands jumped at the opportunity to learn, working independently as well as organizing their own classes in the first Massive Open Online Course (MOOC). A call to forget about grades and tap into the self-motivation to learn.
Smoothlife (paper, source code is a floating-point version of the old Game of Life, a classic of evolutionary computing and genetic algorithms. By adding floating point math to the mix, Smoothlife produces an absolutely lovely output:
SmoothLife is a family of rules created by Stephan Rafler. It was designed as a continuous version of Conway's Game of Life - using floating point values instead of integers. This rule is SmoothLifeL which supports many interesting phenomena such as gliders that can travel in any direction, rotating pairs of gliders, wickstretchers and the appearance of elastic tension in the 'cords' that join the blobs.