Fantastic developments!

Back in November, I watched a bunch of videos from TED, and I’ve been raving to my friends about the first one ever since. It’s by Hans Rosling, who displayed a really neat way to represent statistics and other large sets of data in a simple, intuitive, and basically useful way. Well, it turns out I wasn’t the only one who was impressed: his software, GapMinder, was acquired by Google earlier this week! It would be really cool if we could all use this to look at more pieces of data more easily. You can already play around with a demo. Sweet!

I’ve already learned stuff from it: I had not heard of Comoros or Seychelles before playing with it today. They’re both countries north of Madagascar, apparently. Also, GDP and rate of economic growth don’t appear to be correlated, which surprised me. People in Luxembourg make a lot of money.

Oh, and by the way: it turns out there’s a Firefox plugin to support GPG in GMail. I might start using GMail full-time if this turns out to be easy to use.

English, a silent language

Lots of letters can be silent in English, but I’m missing a few. Can anyone help fill in the rest of this table? Proper nouns are cheating. So is “February.”

Edit: words in italics were found by minorninth at this page. To be honest, though, I’d like better ones for Q and Y.

  • A – boat
  • B – numb
  • C – scissors
  • D – adjective
  • E – made
  • F –
  • G – gnaw
  • H – through
  • I – piece
  • J –
  • K -knew
  • L – talk
  • M – mnemonic
  • N – damn
  • O – leopard
  • P – psychic
  • Q – lacquer
  • R –
  • S – island
  • T – often
  • U – fugue
  • V –
  • W – who
  • X – faux
  • Y – prayer
  • Z – rendezvous

News dump

There’s been a lot of news recently, and I’m sure I’m forgetting something.

Despite the inaction of the country as a whole, the western states have banded together to reduce carbon emissions, thereby joining the rest of the world in combating global warming. It’s pretty cool to watch the whole world (with a couple idiotic exceptions) come together to work on this stuff.

A battle has moved through the British courts over how far the freedom of the press extends: there is currently a scandal over a deal made by Tony Blair’s fundraisers, wherein they offered honours to various people in exchange for off-the-record loans during the campaign season, and then tried to cover up the whole thing. The government, claiming it would mess up the police investigation of the events, repeatedly tried to bar newspapers from discussing the evidence. However, it looks like the high court has sided with the press, and they can publish stories about the scandal. Much of this hinges on an email between Lord Levy and Ms. Turner discussing their deal, but I can’t seem to find a copy of the text online. I suspect this will damage even Tony Blair’s reputation, though I could be wrong about that.

Speaking of scandals and cover-ups, “Scooter” Libby has been found guilty of obstructing justice in the whole CIA leak thing (remember, the one with Valerie Plame?). It’s nice to see that his comeuppance has arrived, but it’s kinda too bad that Special Prosecutor Fitzgerald couldn’t get enough evidence to try others; I strongly suspect Libby was the “fall guy,” and there are others who are equally guilty but will go free.

The Democrats, meanwhile, have been trying to put a timetable on the Iraq war and bring our troops home before Bush leaves the oval office. I strongly doubt this will actually happen, but it’s nice to see that they’re trying to hold him accountable, if only symbolically.

As usual, Bush has been greeted with violent protests every where he goes, because most of the world is reasonable and sees this man is a greedy warmonger. This is happening pretty consistently across all of Latin America, on top of Hugo Chavez’s scathing words against him (Bush is on a tour of the area at the moment).

Finally, the UN is beginning to consider an embargo against Iran over its nuclear programme, but China and Russia are expressing their doubts. We’ll see what happens, but Iran will probably not be faced with strong penalties.

As always, remember to use BugMeNot if you can’t access these or other articles.

Go make someone’s day!

Over the weekend, I had a friend tell me (mostly) out of the blue how much he admired my honesty and forthrightness. I never expected anyone to say something like that, and it totally made my day week. The world would probably be a better place if we all said things like that, and complimented people on things they never hear about but which you really appreciate. It would be neat if you all found someone and praised them in this way.

I’m not fishing for compliments; my week has already been made. Go find someone else.

No More Google Bombs

Remember when I mentioned Google bombs? Well, it turns out that 2 weeks after I posted that, Google changed their algorithms so that Google bombs no longer work. Oh well, it was fun while it lasted.

Iran launches rocket, still isn’t making nukes

Iran now claims to have launched a rocket into space, although other countries have yet to confirm the achievement. President Ahmadinejad says this is for peaceful satellite launches, but as always, Europe and America don’t believe him. Moreover, Iran has not halted its nuclear programme in spite of the sanctions imposed by the UN in December. The UN security council is convening with Germany about what to do on this front. Many western countries, chief among them the US, are still of the opinion that Iran is developing nuclear weapons, despite the Iranians claims of merely having a peaceful energy programme (to which they’re entitled, having signed the Nuclear Nonproliferation Treaty in 1970). Moreover, UN inspectors have been allowed to examine Iran’s operations since 1992 and have found absolutely no evidence whatsoever that Iran is trying to build nuclear weapons. As Ahmadinejad has said, it’s time for the West to stop “bullying” Iran into giving up what it is rightfully entitled to.

‘Cable News Confidential’ talk

Jeff Cohen, founder of Fairness & Accuracy in Reporting and author of Cable News Confidential, gave a talk at work earlier this week.

A summary of the talk →

New Algorithms Text

This year, the Algorithms course at Mudd is using a new book, written by Dasgupta, Papadimitriou (the complexity theorist), and Vazirani (the quantum computing guy). You can view a July 2006 draft of the book, which actually looks pretty nice. It doesn’t cover all that I think an algorithms course should (in particular it handles the standard data structures cursorily at best), but it definitely skips the boring bits and goes right to the fun parts. It starts out with cryptography, then goes into matrix multiplication and the FFT (which sound boring, but are actually pretty neat problems). It even has a chapter on quantum computing!

I don’t think this will ever replace CLRS in terms of completeness, but it’s a lot more fun. Definitely worth a read if you’re looking for an algorithms textbook. and really, who isn’t looking for one these days?

You learn something new every day…

Huh. It looks like Portugal will legalise abortion soon. I admit I know very little about Portugal, but this entire story surprises me. I hadn’t realized abortion was previously illegal there, nor that it had a Socialist prime minister (nor that his name is Jose Socrates; as bigoted as it sounds, my first impulse on his name was to wonder whether he was Mexican or Greek). Upon further inspection, I’m surprised that my parents can remember a time when Portugal was a dictatorship (which ended in what appears to have been a beautiful, peaceful-ish revolution).

Hurrah for socialism and progressive values!

∃ a Problem with the PRNG in Java

(found while reading the current XKCD)

Java’s “random” number generator has some surprisingly simple patterns in it. Nearly all random number generators on computers are pseudo-random, meaning that they only seem random-ish and are not truly random (with some notable but impractical exceptions). This happens because computers themselves are deterministic and therefore inherently non-random. Most pseudo-random number generators these days use the previous “random” value as an input to create the new value, which will be used to create the next one after that (which is why plots like these are often used to evaluate the effectiveness of a PRNG: by plotting the current value with the previous one, you can see how much the values get scattered around the range of outputs). As an aside, I should note that plotting the same thing in 3-D (with the current value, the previous value, and the value before that as the 3 coordinates) can reveal other problems, such as the problems in Randu, an early PRNG. Anyway, because most PRNGs use their previous value to compute the next one, they will cycle after they get the same value twice. A good PRNG that generates n-bit numbers shouldn’t cycle until it has generated 2n of them. Java’s implementation appears to be much worse than this, which is disappointing. Come on, guys, you can do better! The cryptographically secure hash is my favourite, and I’m currently trying to prove that NC≠P using a variation of this. If it’s any consolation to Sun (the creators of Java), Matlab has similar problems.