Welcome to Jon's Home Page:

[ NEWS ] - [ LINKS ] - [ OTHER ]

Here are some of the things I am

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.

profile for Jon Lin on Stack Exchange, a network of free, community-driven Q&A sites


Archive? Follow me on Twitter.


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):

Click for the rest.


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".



Iceland 2013
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.

Click for the rest.


Shanghai 2013
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.


Japan 2012
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.

Click for the rest.


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.



Wedding 2012

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.

Click for the rest.



Summercon 2012

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.

Click for the rest.



Stop SOPA Protest
I took tesuji.org down for 24 hours and replaced everything, including any images served, with this page/image to take part in the protest against the Stop Online Piracy Act. Instead of being weaksauce about it and put up some javascript over the usual content and display an overlay to cover it up, I used Apache's mod_rewrite to internally redirect every request and serve only the Stop SOPA page or image (if an image was requested). Everything's back to normal now but I thought I'd put up a page of links about it.

Click for the rest.



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.

Click for the rest.



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.

Click for the rest.



Kerafyrm, The Sleeper, Re-Revisited

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:

Click for the rest.



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: https://market.android.com/details?id=org.jonlin.wallpaper. 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:



Summercon 2011

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.

Some highlights:

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.

Dan Guido went with a beer hat. It had to be refilled a couple of times throughout his talk.

Jon O and Rosenberg's talk about linux kernel exploits also had a drinking game. They demonstrated some pretty cool techniques to get by GRsec/hardened kernels, probably the most secure examples.

Surprising amount of female hacker turnout.

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.

Some immediate feedback:

Darel Griffin
Jason Schorr
Justin Prosco
Jimmy Shah
Zach Lanier

More pictures HERE



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


"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"

Oh yeah, also a Facebook page.



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:

[h264_vdpau @ 0x86fbc00]AVC: nal size 1305857 0 ??% ??% ??,?% 1815 0
[h264_vdpau @ 0x86fbc00]no frame!
Error while decoding frame!

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.


Troy Polamalu

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...


News Archive
For older news entries that are either no longer relevant or just cause clutter, you can go to my Old News page.

Here's a link to my friend Dave's site. He does some cool animation and programming.
Here's a link to my friend Paul Madonna's site. Paul is a VERY talented artist who puts out a weekly online comic, you should check out some of his work.
Here's a link to my Gentoo on a Thinkpad T60p page.
Here's a link to my Gentoo on a Thinkpad W700 page.
Get your war on

These are some of the links that I visit often.

Java References
Java 1.3 api
Java 1.4.1 api
Java 1.4.2 api
Java 1.5.0 api
Java 1.6 api
Java crypto spec
javax.servlet api
com.oroinc.text.regex api
com.oroinc.text.perl api
com.oroinc.text api
Blackdown Home, this is a JDK for Linux.
IBM JDK, this is IBM's jdk and other stuff.
Misc References
RFC Hypertext Archive @ SunSITE Denmark
WWWebster Dictionary
The Willcam Group - HTML reference
RFC Index (complete)
Dinkumware C/C++ Reference
C Programming Reference
The Giant Internet IC Masturbator, great for looking pinouts on random chips.
SQL Reference
DNS Related site, containing many useful lookup tools
Usenet Physics FAQ
Unskilled and Unaware of it
Linux References
InfoSysSec, security documenation, systems documentation, general info
s e c u r i t y f o c u s
Replay Associates
Exploit world -- Linux section
Linux Online - How toDocuments
Beowulf Project at CESDIS
The CVS manual
Linux Kernel Analysis
NetSys: Systems, Networks, Administration
A good list of Linux Kernel Documentation
Rex Swain's Perl Reference
An alternate Genoo installation guide
The Knoppix bootable linux OS
Tools and Utilities
Comet Search, this is the greatest search tool ever.
Transparent GIF's - Made Easy!!, an easy to use transparent gif maker.
TransWeb Transparent-GIF Service, MIT's transparent gif maker. You give it the url of the image you want to make transparent, click on the color that you want transparent, and there you have it.
Online GIF to ASCII translator
Weather in Shadyside, Pittsburgh
Unit Conversions
Free Sun Software
SMTP Sender Policy Framework
X stuff
X Window Managers
X Home
XFree86 Home
X Servers for Windows
Detailed X Glossary
Good list of X and Motif sites
Jamie Zawinski Hacks, source of xscreensaver.
comp.sources.x archive @ sunsite, this is the place (one of them) where all the sources from comp.sources.x are archived. Most likely find X sources here
X11 Contribs @ sunsite
Math stuff
1995 Mathematical Subject Classification, This site has very good links to all kinds of mathematics. There are 50+ categories of Mathematics, which with its own list of links to references, journals, web sites and books.
Mathematrix, a nice little simple resource site.
List of small primes
List of prime gaps
Principia Cybernetica
Godel's proof
Zero Knowledge Proofs
Encyclopedia of Integer Sequences
Foundations of Cryptography
Mersenne Prime Search
Mathematical Programming Gallery
Movie Stuff
Jackie Chan movies, this is a pretty good page for movie reviews.
Jackie Chan and Bruce Lee Links
The Offical Unoffical Jackie Chan Home Page
Tai Seng Videos, good source of good old fashioned kung fu.
Internet Movie Database
Movie Review Query Engine
This Week at the Pittsburgh Cinemas
Music stuff
Lucas Pickford, really good site for solo transcriptions
Patterns and Solo Transcriptions, by Charlues McNeal
stuntzner.brent.org's, pages of solo transcriptions
JORG HEUSER'S JAZZ TRANSCRIPTIONS, and some Frank Zappa transcriptions, links, and books
Massimo Morrone, excellent site for John McLaughlin transcriptions
Bossa Nova Guitar Transcriptions
All About Jazz, with many interesting columns about artists or jazz in general
Song Trellis, Awesome site for chord progressions and practice
Miles Ahead: A Miles Davis website, this site has all the miles davis discography.
The only 2 radio stations I listen to: WQED WDUQ. Hooray for public radio!
Mingus site
All Music Guide
CDDB Music Database
Classical Guitar Tablature
Misc fun stuff
Peter H. Anderson - Embedded Processor Control
Alltech Electronics & Computer Chopper!, cheap cheap computer stuff.
Welcome to computershopper.com
Comet's Home Page, this is the tesuji home.
Comet's FRACTALS page, lots of fractal stuff, programs and movies.
Comet's JAVA stuff, lots of java stuff, free java programs.
trek guide
A page with Starship Dimensions and scale images and comparisons
List of minor Star Wars Jedi
The Sith, including a listing of Sith Lords
7 Forms of Light Saber Combat
Gaming stuff
Allakhazam's EQ pages
Maximum EQ, Maximum EQ's Everquest site
EQ Maps, Everquest Maps
EQ Atlas, Everquest Atlas site, another maps site
Everlore, a thorough Everquest page, updated regularly.
Game Znet's Everquest pages., not as complete as everlore, but sometimes easier to sift through.
EQ skins
New EQ interface collections
N64 ign
Playstation ign
Dreamcast ign
Game faqs, This is a great place for hints, walkthroughs, and reference.
Game Znet, This is mostly PC games.
Xblast, this is a nice Xblast page.
Gran Turismo: The Real Driving Simulator
GTA: The Gran Turismo Authority
Go stuff
Go Base, Jan van der Steen's comprehensive go site with a large collection of games, josekis, fusekis, and articles.
The Go Teaching Ladder game reviews
Joseki Dictionary with commentary at daytongo (interactive, applet driven)
Go Problems.com, a fairly extensive database of many different types of problems ranked by difficulty.
Life and Death problems
USGO page of problems
USGO game index
Car stuff
Manchester Honda Home Page
Gordon Callender's Unofficial Accord Homepage
Close outs
Performance auto parts
Modern Performance Racing Products, this place has a lot of good stuff and good brands.
Archer Racing, another good source for more horsepower.
Horta list of Honda performace parts., this guy has a really good list for all kinds of stuff for your Honda/Acura.
Tamir's DeLorean Site, not a big fan of the car, but this is an amazing website
Smart Cards
Sun's Javacard homepage
Javacard API javadocs
Gem Plus' homepage
Some very good Smartcard resources
Opencard's homepage
Opencard's 1.2 API javadocs
JavaCards, the OpenCard Framework and Single Sign On, a nice page concerning smartcard/JavaCard security and its limitations
Bo Lavare's Smartcard Security Page, a well organized, up to date page concerning security issues with smartcards.
This site,Macchiato, briefly goes over smart cards and programming for them, covering both the card side and the reader side.
Here's a link to The Java Commerce Toolkit which includes Java Wallet, a bunch of java applications for online commerce and includes software drivers for several smartcard readers.
Dave Ruske's page: Making Sense of PCMCIA, a really good general overview of PCMCIA
Linux PCMCIA info page
A good PC-card resource page
A fairly complete PCCard FAQ
David Hinds' document about Raylink and WebGear Wireless LAN Cards
PCCard kernel structures
PCMCIA socket tester

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!
Also, this is what I think of TinyURL.

clrnjzsp4@angstrom.net, is an email address that I reserve for spammers that crawl websites looking for email addresses. I have a bot that listens to this email address, notifies administrators (who care) that spam is being sent from their networks, and adds the relay to my local blacklist. So, if you want to make it so i can't receive email from you, spam this email address. Here's some more! fkdirux@tesuji.org qkcnfrms@agentkernel.com bnsocjfrmw@cometway.com icnwbclt@netburgh.com dlpwqfjhjdis@authenticinstruction.com daxmidji@angst-inc.com xiweefksldkf@alleghenydemocrats.com afifwcmcq@8mmbar.com uttswmfe@tcfpe.org zlrsowmf@shadysidedems.org fnrsjalf@captainparadox.com reqlcdroi@summercon.org mfnskwlx@wylieholdings.com lcdkdnrm@ilearncentral.com lmkefuwa@busaichedelic.org