[ back to Tom 7 Radar ]

     Viewing posts in category hacks...
(view all posts instead)
next
p
e
r
s
o
n
a
l
30 Weird Chess Algorithms: Elo World (31 Jul at 18:26)
OK! I did manage to finish the video I described in the last few posts. It's this:

30 Weird Chess Algorithms: Elo World
30 Weird Chess Algorithms: Elo World


I felt pretty down on this video as I was finishing it, I think mostly in the same way that one does about their dissertation, just because of the slog. I started it just thinking, I'll make a quick fun video about all those chess topics, but then once I had set out to fill in the entire tournament table, this sort of dictated the flow of the video even if I wanted to just get it over with. So it was way longer than I was planning, at 42 minutes, and my stress about this just led to more tedium as I would micro-optimize in editing to shorten it. RIP some mediocre jokes. But it turns out there are plenty of people on the internet who enjoy long-form nerdy content like this, and it was well-received, which is encouraging. (But now I am perplexed that it seems to be more popular than NaN Gates and Flip-FLOPS, which IMO is far more intetersting/original. I guess the real lesson is just make what you feel like making, and post it!) The 50+ hours programming, drawing, recording and editing did have the desired effect of getting chess out of my system for now, at least.

Since last post I played Gato Roboto which is a straightforward and easy but still very charming "Metroidvania." Now I'm working my way through Deux Ex: Mankind Divided, which (aside from the crashing) is a a very solid sequel to Human Revolution. Although none of these games is likely to capture the magic of the original (one of my all-time faves), they do definitely have the property that you can play them in ways that the developer didn't explicitly set out for you, and as you know I get a big kick out of that.

Aside from the video games, I've picked back up a 10 year-old project that I never finished because it was a little bit outside my skillset. But having gotten significantly better at electronics and CNC, it is seeming pretty doable now. Stay tuned!
Category:  hacks (9 comments — a week ago)   [ comment ]
p
e
r
s
o
n
a
l
NaN Gates and Flip FLOPS (30 Apr at 23:41)
I was hoping to have a few things to write about in this month, but the only thing I finished was this video for SIGBOVIK, right at the beginning:

NaN Gates and Flip FLOPS
NaN Gates and Flip FLOPS


There is also the paper which has some merits but I submitted that before actually finishing the project, so I think the video is the definitive version. Either way this one is really aimed at trolling computer scientists, and so may be impenetrable if you don't have the background; sorry about that!

Allergies and various things have got me down recently but it's also getting nice out, which should provide a burst of energy!! This weekend is the Marathon in Pittsburgh, which I intend to run. No costume plans but sometimes I get last minute inspiration / compulsion. Feel free to taunt me with your ideas.
Categories:  hacks  video  sigbovik (4 comments — almost 5 months ago)   [ comment ]
p
e
r
s
o
n
a
l
CHESSBOVIK (31 Mar at 21:49)
Well, here we are on the eve of SIGBOVIK 2019. I'm in the midst of a long day of video-making for one of my projects, but I can get 2 for the price of 5 by posting now about four of my papers. This year I've been on a chess kick, which I think I've successfully gotten out of my system by writing all these (previous posts alluded to there being five, but one of them didn't really go anywhere and/or just became part of the other(s)). They are sort of intertwined:

Survival in chessland is about how to stay alive if you are being a chesspiece to the death

Color- and piece-blind chess is about, among other things, playing chess without being able to tell what the pieces are (only where they are)

Elo World, a framework for benchmarking weak chess engines is about exploring the full spectrum of computer chess play

CVE-2018-90017117 #KingMe is just a short joke, but based on a true story


My last paper is on a different (maybe even weirder?) topic, and I'm putting together a video for it now, so I should be uploading that tomorrow some time. It's been a bit rough going, though, since I replaced my computer a few months ago and forgot that I hadn't actually set stuff up for this kind of work; I'm experiencing small problems like custom key commands aren't set, and bigger problems like audio drivers acting crazy. Looks like I will be able to finish with some vacation time, at least.


Speaking of vacation, this month we also went to Belize, which was pretty cool. The highlight for me was swimming/scrambling 1km into a cave ("Actun Tunichil Muknal") to access an approximately 1000 year-old Mayan site where they performed human sacrifices; it's remarkable because almost all of the artifacts are still in situ, including a number of calcified human skeletons. Was pretty wild. I got some good running done, found some New Haven-style pizza (!?), and wrote papers about chess (?!).
Categories:  sigbovik  hacks (3 comments — almost 6 months ago)   [ comment ]
p
e
r
s
o
n
a
l
Reverse emulating the NES! (31 May 2018 at 18:30)
Oops, I screwed up by forgetting that May doesn't have 32 days. Especially silly since I finished the content of this post days ago, and all I had to do was post it! Backdated 24 hours [cheating].

I finished the project I've been talking about for a few posts, and uploaded two videos:

Reverse emulating the NES to give it SUPER POWERS!
Reverse emulating the NES to give it SUPER POWERS!


Making of
Making of "Reverse emulating the NES..."


The first video is the project itself, a weird self-explanatory joke, and the second one is a longer explanation of some of the technical stuff and the process that I went through to create it. Of course, up to you, but I think both have something to offer for the audience that reads Tom 7 Radar. :)

I went to Seattle to present basically the first talk to two different audiences (first at Deconstruct and then at UW's PoCSci, which is like their version of SIGBOVIK.) I was delighted to have the privilege to do both of these without so much as telling anybody involved the title of my talk, let alone anything about its context or e.g. weird equipment, which allowed me to do a more sneak-attack "reveal." This was very fun. Here's me on the big stage. The screen is 40' diagonal, so these pixels are about 1.88 square inches each!

Tom 7 at Deconstruct
Tom 7 at Deconstruct


It was a fun project but pretty hectic. Now I am aggressively relaxing by cleaning my basement and playing some video games (Steamworld Dig 2; great so far!). I have some ideas for the next thing, but also a bunch of travel coming up, so I'm taking it easy.
Categories:  video games  hacks (8 comments — 2 months ago)   [ comment ]
p
e
r
s
o
n
a
l
Anagraphs and Generalized Kerning (22 Dec 2017 at 18:17)
Well, merry checklistmas etc., I finally got something done this month; it's this:

Anagraphs movie; rated G for general audiences
Anagraphs movie; rated G for general audiences


The movie above is another fun project, I hope entertainingly explained, with some twists. It concerns the dismemberment of letters to generalize anagrams, which I call anagraphs. It was presaged in post 1146 which may give you some idea how long it takes me to finally finish such projects. This one lended itself to some interesting computational problems, which I wisely realized would better exist in a completely separate video; it's this:

51 minute lecture about Turing Machines, Linear Logic
51 minute lecture about Turing Machines, Linear Logic


This latter movie is far less polished and rated C for College, because it's basically a lecture about decidability, specifically two uses of the technique of reduction to prove an undecidability result, and then a decidability result. If you like that kind of stuff, you will probably enjoy it, but if not, you were warned!

Also crossed off the checklist, I 100%ed Super Mario Odyssey and finished some books I was reading, as well as keeping up my streak of running every single day (today was #159). This makes my slate clean to start on new projects, a state that I just love being in, and will likely postpone through the holiday! Happy new year to you!
Categories:  hacks  video (10 comments — almost 3 months ago)   [ comment ]
p
e
r
s
o
n
a
l
SIGBOVIK 2017: ABC (31 Mar 2017 at 12:34)
Hello my bloggies! I back-dated this post because even though I was all set up to post about my SIGBOVIK accomplishments, which this time conveniently occurred in the month of March, I then celebrated SIGBOVIK so thoroughly as to go to bed without actually posting here.

This year's invention is a strange artifact; if you want to experience it with fewest spoilers and have some time, then check out the paper version. I also put together a youtube video, since I like doing that:

SIGBOVIK 2017: Compiling C to printable x86, to make an executable research paper, by tom7
Click for nerd-talkin'


Despite the possibly misleading thumbnail, the video is mostly live-action, as I it after a popular YouTube series called Numberphile. The project doesn't lend itself too well to video, so my feelings won't be hurt if you don't sit through this one. :) I did my best to make the ideas and puzzles fun for people that don't have deep knowledge of this stuff but are interested.

SIGBOVIK was also live-streamed, so for the first time we have a mediocre recording of all the talks if you want to tune in after the fact too. My talk's at 1:22:00, and it's more bite-sized than the above.

Also, I must say: The conference this year was excellent, perhaps the best ever. The conference hall was packed; the overall quality of work was very high; the proceedings is thick with really interesting stuff (interspersed with the requisite juvenilia), and the talks were well-prepared and didn't drag on, thanks partly to the new timer system. It's pretty crazy how this conference has a life of its own now; almost nobody from the original group is organizing or even writing papers for it. We may even be getting to the point where we have to be selective about what we print..???
Categories:  hacks  sigbovik  video (17 comments — almost 11 months ago)   [ comment ]
p
e
r
s
o
n
a
l
SIGBOVIK 2016: Snacks, 3D Zelda (02 Apr 2016 at 12:57)
Sup team! Yesterday was SIGBOVIK 2016, and as usual I had some entries that were more work than warranted by a joke conference.

The minor work was Reordering the Snacks is Effective and Just, which concerns an operational and ethical question in office snack behavior. Probably not worth it unless you go for the deep cuts.

The thing I poured a month into is The glEnd() of Zelda, which is a hack to automatically emulate NES games in 3D. I spent a lot of time crafting a video demonstration and explanation with my typical non-SAG "acting", which even seems to go over well with non-nerds:

Click here for Automated 3D NES
Click here for Automated 3D NES


I sort of ran out of time on this one, so I hope to have some more refinements to the code and to then post a download in a more user-friendly form. But you know how these things go!
Categories:  sigbovik  hacks  video (11 comments — 2 years ago)   [ comment ]
p
e
r
s
o
n
a
l
Portmantout: A portmanteau of every English word (30 Apr 2015 at 22:59)
Oh, wow, that was dumb. I actually have at least three good posts saved up, but for some reason I thought I already posted in April. So I backdated this one. It's really May right this second. But it concerns April work:

Portmantout video!
Portmantout video!


This is a video I made for my little hack about "Portmantout". Portmanteau is a stringin'-together of two words (like caviar + armpit = caviarmpit), and Portmantout is when you do that for all of the words in English! I did the work and wrote the paper for SIGBOVIK but the video is part of my slow attempt to make an entertaining Youtube channel. It's a lot of work to put together these videos but I'm happy with how it came out!
Categories:  hacks  sigbovik  drawings  video (4 comments — almost 5 years ago)   [ comment ]
p
e
r
s
o
n
a
l
ARST ARSW (29 Jun 2014 at 23:36)
At the beginning of the month I published ARST ARSW, which is Star Wars sorted alphabetically. It "went viral" (I think it was actually bacterial. Gram stain was positive) almost immediately, due to some lucky press, which is fine by me. If you haven't seen it, clicky-clicky:

ARST ARSW: Star Wars sorted alphabetically
ARST ARSW: Star Wars sorted alphabetically


Literally, every word spoken in the movie is assembled in alphabetical order along with the corresponding video clip (and ties of course broken chronologically). The description contains some "fun" facts, like that "lightsaber" only appears once in the movie!

At 43 minutes, it's a bit hard to watch the whole thing in a sitting, although many have declared success. I've only been able to finish it with a break or two, in all honesty. Maybe on the elliptical machine. If you do watch, please get to at least Alderaan (link skips directly) to see how it can create unintentional humor, as each character pronounces this fictitious planet's name differently (Luke kinda goes with whatever the person he's talking to says). Some other parts I like: Two words appear adjacent in ARST ARSW that are also adjacent in the movie, such that it goes an an an an ... an analysis. All the words that appear in Leia's hologram message are interesting, like Kenobi. See how much time people spend looking for Luke in this movie, and here you can see one of my three mistakes (one of the "Luke"s is out of order because it had an invisible tab character after it in my transcript). Catch 'em all! And I think Han Solo's scene that contains almost all the uhs in the movie is pretty hilarious. There are lots more favorites highlighted in the comments, along with the ubiquitous internet abuse. (Mom, who felt protective at my Ph.D. defense: Never read the comments.)

For F.A.Q.s like "Why did you do this?" take a look at this nice article in WIRED. That was the best writeup (thanks Emily!) but there were several, like in Yahoo Movies and cracked.com and many more. My favorite thing was that Conan O'Brien made fun of me on his show! He even has his own parody version, which is pretty good, except for that atrocious font. Here is the real font for next time, Conan.

It took a while to make, but people routinely waste entire weekends just binge-watching Netflix or worse. Not only was this basically relaxing (not to mention that it absorbed that nervous energy that you probably know I'm aflame with) but I got some practice making software for video editing. The source code is here. It's a pair of multithreaded C++11 apps. Basically the process was like this: I loaded all the frames up into memory, along with the audio, and had keyboard commands for marking a section of the video (actually the audio—you need much better resolution than 24fps to chop up words) and refining its borders while listening to it in a loop. I'd find a phrase in the audio, then type "if this is a consular ship where is the ambassador" and it'd just split up that loop into 10 mini-loops of the same length, one for each word. Obviously "if" is much shorter than "ambassador", so then I'd go and adjust the edges of those loops with the keyboard. I made tweaks to the program as I went, to make it efficient and fun-ish, and eventually got pretty fast at it. Here's what the UI looks like:

The software called ARST.EXE. Click for full-rez
The software called ARST.EXE. Click for full-rez


I also learned some things from making this video and the reaction to it. First: Star Wars is a really well-made film. I've probably only seen it four times or so—I'm no superfan—but watching the movie this closely, frame by frame, was a master course in filmmaking. At the micro level, I was very surprised how densely packed the dialogue is, with almost no pauses in between lines. (And yet it doesn't sound weird? People obviously don't talk like that.) It was neat how sound effects like laser blasts were carefully placed between words of dialogue during messy scenes, so that you'd still be able to hear the characters. I was also surprised with how little actual sound you need in order to perceive words like "a" or "it"; I often had trouble even isolating what part of the audio even corresponded to the word, despite it being clear that the character was saying that word when I listened to the whole line. It was notable how much of the story is propelled by the two droids, and I entertained an alternate theory that C3PO was Keyser Söze-ing the whole plot by "interpreting" R2D2's nonsense bleeps, which is pretty plausible.

I also learned that people have done this kind of thing before. For example, someone alphabetized one of George W. Bush's speeches as Qaeda Quality Question Quickly Quickly Quiet. There's also AARRSSTW, which I was terrified to see because I thought it might have been literally the same thing, but it is in fact Star Wars reordered by the length of the shot. In general, this kind of exhaustive analysis of the words in some work is called a Concordance, which is usually done entirely earnestly for books like the bible by people who are even more extremely boring than me.

Lots of people have asked to do other stuff with the timecoded words, especially, something where you type in a phrase and it outputs a video of clips from the movie speaking your phrase. (Or more cleverly, take the movie itself and replace each word with a clip of a different character saying that word.) There are lots of good ideas, but I decided that it would detract from the art of this one to do anything that might be perceived as "useful" or "interesting" with it. The point is the movie and that it has no point.

Moreover, although I'm always happy with attention for my projects, this one is now probably my most famous (!), at least if measured by Youtube views, which are now nearly 1 million. (Though people have watched more than twice as many actual minutes of my previous virus.) I don't want to be known as the Star Wars guy or something, so we are now done with this project and it's on to the next! Expect the next post to contain an unexpectedly resumed classic.
Categories:  hacks  video (22 comments — almost 3 months ago)   [ comment ]
p
e
r
s
o
n
a
l
SIGBOVIK 2014! (13 Apr 2014 at 10:29)
Almost two weeks ago there was SIGBOVIK 2014, the 8th annual April Fool's academic conference at CMU. When I say April Fool's conference, it's not that it's a conference about April Fool's Day or something, rather, it takes place on A.F.D. and contains "research" that may or may not be real, and is usually whimsical.

This year I emceed, labcoat and all, and begin with a one-day-hack "SIGBOVIK Plays Twitch Plays Pokémon Plays SIGBOVIK", where I rigged up a website with a controller that looks like this:



(told you I did it on the morning of SIGBOVIK!) and internet people could click the buttons to vote in real time on what a Nintendo emulator running this weird Chinese pirate NES version of Pokémon would do:



although it was delayed 10 seconds due to streaming to twitch.tv, just like the real Twitch Plays Pokémon. But the "twist" here is that the software then reads some bytes out of Pokémon's RAM, and uses those to pose the line drawing of a person, the idea being that the current SIGBOVIK presenter must take on the pose indicated, thus completing the Circle of Life and "playing" SIGBOVIK. Even though my prerogative as emcee is technically limitless, almost nobody followed this decree. It might have had something to do with the fact that the pose changed three times a second, due to bad planning/tuning. Still, it was there projected on the wall, always haunting you:



Connoisseurs of weird pirate versions of Pokémon will notice that we made it into Professor Oak's laboratory to select our beast, which took hours of trying to time the ten-second delay correctly. We accidentally exited the lab before selecting a Poké-egg.


There were many fine ideas at the conference, some of which are collected in the SIGBOVIK 2014 proceedings. My papers this year are even more abstruse than usual. The first was "New results in k/n Power-Hours", a ten-page hangover that revisits the incorrect or nonsensical theories in our paper from 2012, "Algorithms for k/n Power-Hours". Both are about a generalized version of the popular drinking game, but only the latter was written while sober. The results here are completely accurate, studied at length with real software. The "joke" in this case may be a little edgy for SIGBOVIK, the idea being to oversolve some pointless problem and then not even present it in a way that's humorous. It has some cool-looking figures, though. That one won the "Most Deserving of Being Real Research" award. Second I contributed "What, if anything, is epsilon?", a more or less serious descriptive account of how programmers set the value of epsilon in their software (spoiler alert: they range over 300 orders of magnitude!), whose results are obscured by absurd choices in data visualization. Third was "It still seems black has hope in these extremely unfair variants of chess", wherein I combine chess with populist board games, ruining it, and then study strategies for avoiding domination as player 2, using computer game tree search.

I think I started 7 other SIGBOVIK papers that I didn't finish on time, obviously, but I'm keeping the dream alive.

Up next: I have an idea for the Pittsburgh Marathon, and if I simply apply myself to something useful for once, I should be able to put together the apparatus in time (three weeks). In two weeks, another trip to Zurich with a stop in Lugano. Also: Barn-based board games.
Categories:  hacks  sigbovik (8 comments — almost 6 years ago)   [ comment ]
     Viewing posts in category hacks...
(view all posts instead)
next