I am the one who has busts of famous composers.
I am the one who doesn't answer the phone.
I am the one who sleeps next to an UltraSparc 2 and a SGI and his Thinkpad W700.
I am the one who wrote Comet Search, or at least the first several prototypes.
I am the one who drives a plain Acura Legend.
I am the one who listens to music coming from Studio Reference Series Paradigms driven by a Nakamichi.
I am the one who has degrees in Electrical and Computer Engineering and Mathematics from Carnegie Mellon.
I am the one who drinks polish vodka and fine single malt scotch.
I am very proud of and personally uses the Java Shell and Terminal that I wrote.
I am the one who does security audits on networks and networked applications.
I am the one who works too hard.
I am the one who plays too hard.
I am the one who administrates comet.
I am the one who threw all the wax on the kitchen ceiling.
I am the one who plays Everquest, Omega and Angband but not Final Fantasy.
I am the one who used to play too much Everquest.
I am the one who watched Rebuild in Japan. (My latest Review)
I am the one who archives Evangelion Wallpapers.
I am the one who has the largest bar tab at the bar across the street.
I am the one who has a nice looking resume, but I am also the one who removed the link to it because people keep sending me email thinking that I'd want a crappy job. Instead of having my resume online, I am going to put my good friend Natasha Katsura's resume here, because she is cool and she needs a job.
I am the one who owns a $1300 custom tailored W. W. Chan navy blue super 130s suit and very happy with the result.
Visualizing SASL/POP3/IMAP Automated Dictionary Attacks
I've been meaning to do this for a while now, but felt especially compelled because today happened to be a pretty heavy day of automated attacks on my
mail servers SMTP(SASL)/POP3/IMAP services. So I have something that blocks these and those blocks are logged, and they go back to November of 2011.
I know there's been a steady increase in the number of attacks over the years but I was also curious about what time most attacks happened and what days.
So I wrote something to parse through all of these brute force dictionary attacks and do a per IP count of attacks. To clarify a little, these are connections
to port 25, 110 or 143, at least 5 from a single IP over the course of a time window, that results in failed authentication attempts. 99% of the time,
these are bogus users. So after gathering the data, I stuck them into a spreadsheet and (tried to) make some graphs.
First, let's look at the entire dataset, broken down by the number of attacks from unique IPs per day (click for entire image):
Santa Fe, Flagstaff, Phoenix 2014
Google put together a story for me so I didn't have to write anything. For some reason if you can't see the embeded post,
here's a link to the "story".
When I'd tell someone that I was going to spend a week in Iceland, in the middle of December, people thought I was crazy. I was told that it would
be cold and we'd get 4 hours of daylight each day. Regardless, my friend Michelle wanted to go there for her belated birthday and a bunch of us decided, why not?
Finally plans were made and the ball got rolling, we had around a week to work with. I actually knew nothing about Iceland, other than an episode of
Top Gear and an Icelandic collegue of mine from Carnegie Mellon, so I didn't know what to expect, other than it being cold and dark.
A few months ago we decided to take a trip to Shanghai to visit my aging grandmother, given the choice of either May or October. We ended up choosing May because my mom would be there and I later found out that I had a wedding to attend in October. After a few weeks of coordinating wth my mom and sister, we finally got the tickets booked and where set to go.
On November 14th, I flew out to Japan to hang out with my friend Steve in Nagoya, listen to some music, eat some good food, and watch the new Evangelion movie.
This time I was armed with a smartphone, so I can take more pictures. This also means that all my photos will end up on my Google+ account so I'll just host
pictures from there. Made sure to turn off all roaming data so as not to get charged with the insane $15 per megabyte roaming fee.
Got a ride to the airport from the car service and made it to La Guardia, first time I've been here in forever. Made it to my terminal with plenty of time to
spare and on top of that, flight was delayed over an hour. The terminal had a long bar that
provided an ipad interface for ordering
food and browsing the web, it also included this neat little thing where you can put in a flight number, and it'll continually check the flight status and give
you notifications on delays and when it's time to board. After some time, the flight finally got on its way arriving at
Detroit International Airport in plenty
of time to make my flight.
Android Blood Alcohol Content Widget
Wrote my second Android app the other day. Sitting at the bar, I wondered silently to myself, "wouldn't it be nice to know what my BAC is right now,
I could use it to determine all kinds of useful things like whether I should walk home or take a car service, or just call it a night". Not really
doing any research, I decided to give it a shot this past weekend. Ended up there were a bunch of alcohol BAC calculators and a couple of them that were
widgets. One of them looked really detailed with a ton of stats and features, but I really wanted something that was stupid simple; easy enough for someone
who's hammered to use.
I've already went through 5 or 6 revisions, improving the UI a bit, adding customizable drinks, fixed some bugs, and optimized memory and CPU usage. You
can see the app's page here, at the Google Play Store. Let me know if
there's anything I can do to improve it or report any bugs if it doesn't work correctly.
On September 2nd, 2012, I got married to my long-time girlfriend, Amy, in front of some 260 friends and family. Having no idea what an Hindu wedding is like, I went into
this blind, no rehearsal, no dry run, no walkthrough; but I kind of knew what to expect because I typed up the programs. It was a 3-day affair, at least for Amy, all I had
to do with wake up, get dressed, and show up for the ceremony.
Here's a picture of Redpantz, one of the organizers, because I don't have a picture of myself.
Another successful year of Summercon in the books. This was the 2nd time we had Summercon at Littlefield in Brooklyn. I actually tried to take it a little easier this year, don't know how successful that was, but mainly because this year I won't be only 2 blocks away from the venue but a 30 minute walk. On Thursday when Redpantz and Jimbo arrived, we started drinking at lunch and had a rough time walking that far. Lots of cool talks this year, and 2 tools were released shortly after they were presented at the con (the IDA Toolbag and Vivisect version of Vtrace).
The schedule this year was a little more hangover friendly, doors didn't open until noon and talks not until 12:30 or so (though we were probably behind schedule on both counts). This meant that I didn't have to wake up super early and help run the registration tables, which was probably a bit more important this year than the last few years because there was a LOT of pre-registration and a surge was expected at the beginning. Fortunately, the registration desk ran pretty smoothly, thanks to the work of Michelle, Joann and Jimbo.
Stop SOPA Protest
My URL Shortener
One of the projects that I've been working on recently involved coming up with a multi-purpose URL shortener, like bit.ly's or tinyurl's. I had put a good bit of thought into it but I haven't gotten around to actually implementing it for the project yet. I know the concept is sound and lots of other people use it, so it ultimately comes down to how short and is it long enough to cover (and some) what you plan on using it for.
So I get kind of bored and decided I'll implement a command-line url shortener that ties into my website (tesuji.org) and give it a whirl. I opted to be ghetto-extreme and use, not 3, but only 2 characters in my shortened URL. I can shorten anything that I want, like http://tesuji.org/qy or http://tesuji.org/LN. I'm using the unreserved and sub-delimiter characters from RFC-3986 (well, most of them) since in a shortener context, at least in mine, most of those sub-delimiters are useless.
So I finished all the Lupin III Movies
I'm a big fan of the Lupin the 3rd series and movies. Created by Monkey Punch (this is a person), Lupin is a legendary thief that often times fall on the righteous side of the story (sort of like Robin Hood). Immediately larger than life, Lupin is almost always prepared, suave, and s
ometimes even expecting the most unexpected outcome; only to get away in uncanny fashion from either gangsters, cultists, magicians, demons, or the usual, Zenigata. Zenigata is Lupin's archnemesis, originally part of the Tokyo Police Inspector, he followed his mentor to the ICPO and is dedicated to capture Lupin.
This dynamic is pretty common, but it's only similar on the surface to comparisons like the Pink Panther and inspector Clouseau. Zenigata is very clever, and sometimes almost a worthy adversary, many times having captured Lupin only to be stuck in the same situation; thus having to work together to escape whatever situation they're in.
Recently, I finished all the Lupin the 3rd movies, prompting me to put together a post on my website. To this date, there's (I think) 31 Lupin III movies. Although technically, some of them aren't released as "Movies" (made for TV), and some are directly released to physical media, they're close enough to being movies as most anime goes: it's feature length, it's broadcasted as such even if it wasn't opened in a theatre. Anyways, it's been over a decade and a half that covers what I remember watching Lupin and the Lupin movies (mostly because the availability of some movies are scarce), so there's lots of things I'm sure I don't remember, but the movies are more or less long episodes; some much better than others, some seemed to have gone on for too long (better suited for a 23-ish minute long episode) and some could have gone on for longer.
A friend of mine made me aware of a new Cracked.com article about The 7 Biggest Dick Moves in the History of Online Gaming and noted that #5 on the list was Despawn of the Sleeper (EverQuest). Hey, I remember that. I showed the article to a couple of friends who remembered back in 2003 when I opted to spend 4 hours or so sitting in front of a computer rather than take up the offer to go to a bar and hang out with friends that I hadn't seen in a while, and some of them noted that the article only gave half of the story. Wikipedia's EverQuest article removed the part about us actually killing the Sleeper (I added it back in with references), but I remember back in the day when they had a dedicated article about Kerafyrm, that eventually got merged into the main EverQuest article.
This got me wondering what remaining info and insights on the encounter still existed on the internet. So I went around and collected some of them, and when the pages were long gone, I went to archive.org to look for a capture. There was a Sleeper Revisited post I made several years back that had a bunch of links, but most of them are dead. Here's a list for posterity's sake:
My first Android Live Wallpaper
A couple of days ago I downloaded the Android SDK because I needed to get used to using Eclipse for this other project that I'm going to be starting soon. I've played around a bit with the SDK years ago but never actually wrote any code. After I figured out what hoops I needed to jump through to create an Android app, I decided to make a live wallpaper because there really aren't many good anime related live wallpapers, and I don't think there are any Evangelion related ones.
I decided to make one using the Magi hacking attack display from the End of Evangelion. Here's the link:
Or you can search for "Magi attack wallpaper" or something similar in the Android market, you use your phone to scan this QR:
I've never done this before, don't even know how the dev side of the market works at all. It costs $25 to upload the app to the market and since if I make it free I can't change it ever, I decided to make it $0.99 and it'll allow me to change it whenever I want in the future. I'll probably make it free once I get the $25 back, or maybe I'll just make it free. Like I said, still getting used to the dev side of the market, there were a ton of things I needed to fill out and read up on.
Here's a screenshot taking from the debug emulator:
The attack lines are all random, and alternates between blueish attack lines and the words COLLAPSING, just like around 7 minutes 30 seconds into End of Evangelion, except not that fast, otherwise the wallpaper's drain on the battery starts becoming significant.
I might try to do others, the process itself was much easier than I thought, just a matter of coding in the drawing.
Here's a short excerpt from the End of Evangelion that shows the Magi hacking attack display:
I survived yet another year of Summercon this weekend. This year's con was probably one of the most successful since we did it in Amsterdam in 2001. Awesome, awesome speakers this year, probably 90% of all linux kernel exploits in the last couple of years were probably discovered by someone in that room.
Dr. Raid was a trooper once again, he spoke last year when we had the con at the Delancey in Manhattan. The drinking game we played during his talk was everytime he said a word starting with the letter "V", and his talk was about "vtrace". And just like his talking made less and less sense after his 10th beer, so did his slides. BTW, that trash can was in case he puked.
Jimmy Shah was also a trooper. His talk was about mobile malware and his drinking word was "mobile". I thought he was going to die. There had to be a couple of RFB (request for booze) throughout his talk as both him and the audience were drinking everything.
It was heartwarming to see, at 10am when doors opened, but the bar doesn't open until noon, everyone brought cases of beer, bottles of whiskey and rum, and hardwarez, a long-time summercon attendee, even brought a cooler filled with 40's of Old English. People knew what was up.
Was also a burlesque show at the after party but I don't have any pictures. The first day I think my memory blacked out around 4 or 5pm, shortly after I realized the bar carried Talisker. I made it a little further the 2nd day thanks to a bit more pacing (and that Dr. Raid's talk wasn't on the 2nd day). I remember most of what had happened up to around 11pm. I hope I didn't do anything to piss anyone off as I was flying auto-pilot all night long.
Firefox and CTRL+Q
Because I'm so hardcore (or lazy, or stupid), I have no less than 50 or 60 tabs in my Firefox browser open at any given time. Sometimes I like clicking on
a link using the middle mouse button so that it opens in another tab, because I don't want to interfere with the browse history of the current tab, but that
means a lot of times I close the tab when I'm done, and I do that by using the hotkey CTRL+W. Now I'm usually a keyboard/hotkey using professional,
but even super-pros sometimes (maybe because of intoxication) hit CTRL+Q by mistake, and this is bad because it quits Firefox. Since I have so
many tabs open, restarting firefox takes a minute or so, and that's just too long to wait. Unacceptable, completely, much.
The last time I accidentally quit Firefox, I got fed up and decided to try and disable it. Thanks to google and how popular the internet seems to be these
days, I found this blog post which is exactly what I wanted. 10+ years ago,
I would have gone straight to the code, looking for the appropriate lines I needed to comment out, but we live in the 1980's now, and Tron is in theatres, and
that rules. In particular, I just needed to install this keyconfig extension, then I can
go to the Tools menu, and open up keyconfig, and disable the CTRL+Q keyboard shortcut. Awesome. And the Steelers are going to the Superbowl.
"Brett Keisel's beard is so awesome, Chuck Norris' fist uses it as a summer home"
"Actually, it was Keisel's beard that recovered the Flacco fumble."
"His beard scares Chuck Norris"
"I think Keisel has been using Polamalu's head and shoulders volumizing shampoo. It's got Pola-molecules. "
"The beard has it's own ZIP code. It is almost as impressive as the man sportin' it."
"He didn't just grow a beard, he unleashed something so out of control that it looks as if two small animals were laid to rest on his face."
"He's not growing a playoff beard. It's a Dynasty Beard. And he's so American that he's raising a nest of Bald Eagles inside of it"
libMatroska and Mplayer
A couple of months ago, I was doing some re-encodes for Extra Curricular Lesson with Hideaki Anno and I used mkvtoolnix to wrap the video, audio and subtitles streams into an mkv. The first thing that I do afterwards is to check the file by playing it in mplayer, pretty much my video player/encoder of choice. I notice that mplayer just pukes, I just get stuff like this over and over again:
Eventually, mplayer gives up. This worried me a little, having used mkvtoolnix hundreds of times over the years to wrap my own rips, encodes, and re-encodes, I felt that I was doing everything right, but now I'm left poking random options that I've never needed to use before to see why mplayer won't play an mkv created by mkvmerge when it played one made by the same program maybe a month before. Randomly, I noticed that when I use the file command on the mkv, it just says "data" instead of the usual "Matroska data". I also note that CCCP's Media Player Classic seemed to be able to play it fine, along with VLC but I really wanted it to work under mplayer. The version of mplayer that I have compiled is 1.0 rc4 p20091026-r1, which is kind of old, I guess, so I went into /etc/portage/package.keywords and unmasked p20100506 and p20100612 and tried each of those. Both of the newer versions gave me an unrelated (maybe?) error, "double free or corruption (!prev)" which seemed to have something to do with the stylized subtitles. I also tried unmasking newer versions of mkvtoolnix (I had 2.9.9 installed, which was the oldest version in the portage tree) but none of that helped either. I was running out of ideas.
This is around the time that I stumbled on libMatroska. I noted that in my emerge.log, libMatroska was updated from version 0.8.1 to 0.9 in July. I added a mask in /etc/portage/package.mask for media-libs/libmatroska-0.9.0 and recompiled libMatroska. Incidentally, libebml (an extensible binary format library) also got downgraded from 0.8 to 0.7.8. So now that libMatroska was back at 0.8.1 and libebml at 0.7.8, I needed to rebuild mkvtoolnix or else it would complain about the size of symbols in shared objects not jiving. I reran mkvmerge and the resulting mkv played in mplayer (as well as in MPC and VLC). Mission accomplished.
It may be that some USE flags that I had turned on (or off) caused this weird thing to happen between libMatroska and mplayer. At some point I may have to face the music and fuss with it some more because I'm sure at some point, I'm going to need to update libMatroska and libebml, and I'm going to want the mkv's that I make using mkvtoolnix to play in mplayer. It may even be the case that other people using these tools and mplayer will have no problems. But eventhough this problem cropped up last July and I found the fix for it, I decided to make a post about it now almost 3 months later because I was re-wrapping something into an mkv because I didn't like the a52 audio stream and I ran into mplayer puking on me again, and I was reminded that a few months ago, I fucked around with some libraries to get this to work. Also, recently, I noticed a few other people complain about this issue when an anime fansub group released a couple of episodes of an anime that wouldn't play in mplayer. It was the same problem, mplayer puking about the nal size and how it can't decode frames. Re-wrapping it using the older versions of libMatroska and libebml fixed it. A lot of people thought that it was the actual encoding of the video, when it was really just the matroska wrapper.
Let's hope this just gets magically fixed soon so I can not think about it, ever again.
Update (12/25/2010): Looks like it magically got fixed. I randomly decided to try out the SVN-r32624-4.3.4 (November 2010) build of mplayer and it seems to be able to play these mkv's now.
Good to have you back.
Here is a link of me playing Lennox Berkeley's Sonatina, 3rd movement, saved as an mp3.
Perhaps more music to come if I get around to getting the stuff I play recorded digitally...
For older news entries that are either no longer relevant or just cause clutter, you can go to my
Old News page.
For the sake of keeping things short, I've put anime related stuff on its own page.
I've stopped playing this game, but I still keep in touch with a lot of the people that I met through the game. Many of them are
Every year, some good friends of mine throw a party in Stamford, Connecticut. Here are some pictures from the 1999 Gatsby party.
Single Malt Scotch Whisky is expensive these days, and I have a healthy drinking habit. For testing and evaluation purposes, I created a Google Checkout account.
But, if you're feeling generous for some reason and want to contribute to Jon's Scotch Fund, feel free to DONATE!