Hey everybody, my wedding is tomorrow, so this is my last bachelor blog post. Here are some straight-up facts about the wedding.
First, the wedding is being "webcast" live. It is at 10:30am Pacific time (12:30 Central, 1:30pm Eastern, etc). If you want to watch it, you will need to use the most cutting-edge technology of 1997, RealPlayer. (When I found that out, my first thought was: "RealPlayer still exists??" and my second thought was: "Man, why can't San Mateo County get with it and use a proper video format?". But really it's nice that they're even making it an option at all, so I can't complain too much.)
To view the wedding you should click on
This Link Right Here!
at around 10:30am Pacific. (It won't work if you click on it earlier.)
Next: We will be wearing the following super awesome and totally posh clothing choices:
I'm all like "Two imperialist island nations in one! Confused Meiji Period gentleman for the win!" and Sushu is all like "Equal parts British noblewoman and 1920s Shanghai heartbreaker!"
Oh oh oh guess what else, Mitcho made us this lovely wedding registry: tinyurl.com/jonosweddingregistry. You have to click on that link.
Finally, travel plans. HONEYMOON travel plans! Next week I'm going to be at work as normal; then July 4 we are flying off for Tokyo. We spend a week in Japan, then a week in Shanghai (if they let us into China and don't quarantine us because Americans are suspected of having swine flu), then a week in Beijing. Huzzah! My internet access will be sporadic and coming from the wrong side of the Great Firewall of China so blogging may be minimal, but I will get lots of cool pictures to show y'all loyal readers when we get back.
Summer travel plans
Wow, I didn't write anything pretty much for the whole month of June. And I can't even blame Starcraft this time; it was really the result of work -- trying to get Test Pilot ready to ship in the Firefox 4 beta took up all my time and then some. (That link has a video of me and Jinghua with goofy flight goggles, if you're into that sort of thing.) I did a lot of Test Pilot work in June and not much else. I brought my work home with me a lot of evenings, did a lot of weekend coding, and the times I was able to get away I basically wanted to do anything except type words into a computer. So instead of blogging, I went outside. Remember outside?
Oh hey! Travel plans! We've got some! Sushu has just left for Moscow today. Tomorrow morning I'm flying to Chicago for a long overdue visit with the family. Right after that I'm flying to the global Mozilla summit, which this year is once again in Whistler, British Colombia. Then I'll return and meanwhile Sushu will be traveling to Beijing by land, spending a week on the storied Trans-Siberian Railroad. We're going to meet up in Shanghai and spend a week there going to the 2010 World Expo. Then it's off to Japan, where I will spend a couple weeks without using up vacation days by working from Mozilla's Tokyo branch office, and we'll travel up to North on the weekends to see the Three Famous Summer Festivals of Tohoku. We'll both fly back to America together on August 10.
Since I'm way behind on stuff I want to write about, and since I'm not going to see Sushu for two weeks ;_; I'm going to try to do some massive blomiting. Let's see if I can hit 50 posts in two weeks! Here goes!
A lot of flying this month
Tomorrow I'm flying to Sao Paulo, Brazil, in order to give a Mozilla talk at Brazil's largest tech conference. It's called Campus Party, since it started as basically a college LAN gaming get-together, but it grew over the years into an enormous tech conference. Since there will be a lot of gamers there I'll talk about the Web as a gaming platform, show off some of the coolest entries from the Mozilla Labs Game On 2010 contest, and demo some features that we've added to Firefox 4 to help make game development on the Web a real possibility.
It will be my first time in the Southern Hemisphere. I'm a bit nervous as I don't speak a word of Portuguese. Wish me luck.
Then, less than a week after I get back, I'll be flying to Boston to give another Mozilla talk at MIT, this one to the engineering students about why they should come work for us and help protect the freedom of the Internet. I'll also be demoing cool stuff at a table at the MIT career fair.
Man, I always wanted to go to MIT when I was a kid. Never thought it would be like this.
Learning to say "No"
Between the Sao Paulo Campus Party, college recruiting at Brown, Champaign/Urbana, and MIT, User Research Friday, the CHI conference last April, the Mozilla summit in July, the Hackers conference in November, I've been spending a lot of time flying places to give talks over the last year.
It's very flattering that so many people are interested in listening to me give talks, but it's exhausting. It takes away from my precious Sushu-snuggling time as well as my code-writing, comic-drawing, music-making, and role-playing time.
Add to that summer travel abroad with Sushu, Anime Central to see my college friends, and trips back to Illinois for Christmas, Halloween, Thanksgiving, Mom's birthday, Aleksa's birthday... it averages out to a couple of trips a month. I'm getting really, really sick of the insides of airports and airplanes.
I feel continuously behind at work; I'm not getting stuff done on Test Pilot nearly fast enough because of all the interruptions and distractions to my work, which are largely because I have been accepting so many additional responsibilities on top of Test Pilot. But Test Pilot now has 2 million users and only one developer (me). So it's not fair to those users for that one developer to be splitting his work time with other things.
My problem is that every time somebody offers me an opportunity to go somewhere cool and do something, my reaction is "Sure! That sounds neat! Why not?" But that's because I'm considering it in isolation from everything else I have to do. In isolation, it's a great idea, but in aggregate it's taking away from the more important things in my life.
This month was the last straw. Sure I want to go to Brazil! Sure I want to go to MIT! But I didn't realize how much it was going to suck to do them less than a week apart. I seriously overcomitted myself this month and I feel ragged. I just want to go home.
So I hereby resolve to say "no" to taking on any additional work responsibilities, especially ones that require travel, at least until I'm completely caught up on all my core activities.
Going to Salvador tomorrow
Hey everybody, I'm flying to Brazil tomorrow. This time not for a tech conference: this time it's a vacation with Sushu, and we're just going to hang out on the beach in Salvador drinking coconut water and maybe learning Exciting Facts about History (Salvador was the first capital during the colonial period). See you in a week.
It's a nice day in Chicagoland
I flew to Chicago yesterday. I'm staying at my parents' house and working remotely (mostly from coffee shops) this whole week.
The anime convention is this coming weekend. I was going to go to that anyway, I just figured I'd make a longer trip out of it, get some time to visit with my family, play with Aleksa, etc.
I came down with a cold on Thursday. Thursday and Friday were the miserable days, and I worked from home. Saturday, after much waffling, I went to Taiko class despite still being sick. I'm glad I did, since I started feeling better immediately. Light exercise to get my blood flowing, plus yelling and hitting things and striking cool poses; I felt alive again. (I especially love playing the O-Daiko. Makes me feel like a god of thunder.)
So my cold was in a tolerable place by the time I got on the airplane. A mere 4 hour flight, it seemed so mercifully brief compared to the Brazil trip.
Last week in Chicago was oppressively hot and humid, the weekend was frigid and rainy, but today it's quite nice out, my cold is on the mend, and I quite enjoyed my walk to the coffee shop to camp out at a power outlet and leech wi-fi. It's true that in the Bay Area days like this (sunny, moderate temperature) make up 3/4 of the year. Which makes them easy to take for granted. In Chicago they're rare so everybody appreciates them more. Much like how recovering from a cold makes me appreciate my health. Feels good man.
And where that is, is that he is in Istanbul
I'm celebrating July 4 by using the freedom we have as Americans to leave the country whenever we please.
I'm getting on a plane to London today and from there to Istanbul tomorrow.
Gonna bum around for a week, see Ottoman / Byzantine / Roman ruins -- like the underground Basilica Cistern, part of an ancient water supply system, which as a flooded underground chamber full of Corinthian columns and stone medusa heads, totally looks like a level from Castlevania.
Coming back on the 12th.
Back, again, and hey what's this book here?
I'm back from Turkey, after an exhausting 36 hours of airplanes and airports and crappy overpriced airport hotels ($200 for a room with no windows and a 4:30am wakeup call? Blargh.) Izmir to Istanbul, Istanbul to Madrid, Madrid to Chicago, Chicago to San Francisco. By the end I was out of laptop battery and out of books to read and there weren't even crappy airplane movies to keep me company and I was slowly going stir crazy.
I crossed eleven time zones by my count so I've got that special kind of jet lag where it's almost perfect mirror-universe: I just want to sleep all day and stay awake all night.
Books I read on airplanes during this trip: 1491: New revelations of the Americas before Columbus (recommended by John); Reality is Broken: why games make us better and how they can change the world (recommended by Atul); and Program or Be Programmed: Ten commands for a digital age (also recommended by Atul).
So I owe you blog posts on all of those, as well as a mega-post about Turkey, which was totally amazing. And I still owe you mega-posts about Brazil. And, um, Japan from last year. (I should probably add a "below the fold" feature to this site before I go posting any more giganto-mega-posts... hmmm...)
But right now I have in my hands, after a five-year wait, a certain thousand-page doorstopper, so over the next several days I will be spending my jet-lagged, sleepless nights vanishing into a magical world where I expect all my favorite characters will die in horrible ways. Huzzah!
GenCon, then camping
Friday morning I'm flying to Indianapolis for GenCon, the Hajj of gamerdorkdom.
This will be the first time I've gone. I bought a ticket in 2008, but chickened out at the last minute and went to work the next day instead.
(Why? Partly I got nervous about the sheer size of the thing; I hate crowds. Partly because some of the stories I've heard make it sound like GenCon brings out my least favorite aspects of gamer culture. And partly because I tend to freak out about how far behind I am on work right before I leave on vacations. I'll try not to do that this year.)
I plan to meet up with my friend Cat and her boyfriend Kent, who have invited me to run the True Dungeon with them. It's a kind of LARP where they build a human-scale dungeon and have people dressed as monsters jump out at you and you have to survive and find the treasures. It could be cool or could be really corny; I won't know until I try it.
I'm also going to try to meet up with indie RPG publishers from The Forge community and roleplay with them.
I'm going to bring my Warmachine army; I don't feel ready to sign up for a tournament (I am still a noob and will get ROFLstomped for sure) but I'm going to play the Iron Arena, which is an all-day room for casual lil-man battles. Still have to figure out how to pack these guys safely for airplane travel.
Finally, I'm bringing some copies of The Massive vs. The Masses (see ad on the right sidebar) to see if I can get them into the hands of people who will play them and write reviews.
After GenCon, I fly to Chicago to meet up with Sushu and my family; we'll pile into a van and drive up to Sleeping Bear Dunes, Michigan, for a week of camping.
(Yes, this means I will have all my con-swag, plus Warmachine dudes, with me at a campground. Maybe I'll have to set up some battlefields out of rocks and pinecones and teach Aleksa to play.)
I'm going to (ominous music here) leave my laptop at home, so I'll be cut off from the Internet for an entire week. Scary, I know! I haven't done that for years.
Hopefully some time in the woods with no keyboard will give my wrists a chance to rest and recover.
A simple platform game
In less than 2 weeks, I'm going to London for the Mozilla Festival where I was invited to present on the topic of HTML 5 game development.
Well, I'd better have a game to show off, haven't I. So I took one of the examples from my old P2PU course and turned it into something a little more interesting.
Go here to try playing it. Left and right arrows to move, space bar to jump. The object is to get to the square labeled "goal" in the shortest amount of time. It should work in any modern browser. (Please let me know if you can't get it to run.)
So far, pretty boring. But now here's the interesting part. Go here, put in a name, and click Create Level. Then click the "Edit" link next to it.
This interface obviously needs work, but you can use the radio buttons to select a tool, and then use the tools to scroll around, create and delete platforms, and set the start position and goal position. Click "Save Changes" and then go back to the level-select screen and try playing your new level.
When I was a kid, one of my favorite activities (besides playing video games) was to take a long sheet of paper and design new levels along with the occasional new game mechanic. How I wished I could turn those drawings into real playable levels! Now that I know how, why not put it on the web where anybody who comes along can draw a level?
Planned features include: recording the best completion times for each level, so there's an object of competition; a login, so that it knows who the high scores belong to and who created each level; maybe a rating system so you can let people know if their level was fun or not; and... oh yeah, monsters and power-ups would be nice. Some moving platforms and trees and clouds etc. so it's not just boring brown rectangles.
I'll be cramming in some of those features over the next two weeks (and doubtless I'll still be adding stuff on the airplane). The plan is to arrive at the Mozilla Festival with a sturdy game skeleton and then run a game-development workshop where participants flesh it out with artwork, sounds, features, and level design.
But for now, try making a level! Report a bug! Download the source code! And please, please, let me know if you think of a good name for this thing. (Edit Nov 8, 2011 - link updated.)
Stereotypes of England
I'm flying to London tomorrow. I'll be back on Tuesday.
My entire mental image of England is based on C.S. Lewis, J.K. Rowling, Douglas Adams, and Dr. Who. So I have all sorts of stereotypes kicking around in my head that I will have to unlearn in order to deal with the reality of the country. "You mean you DIDN'T all go to boarding schools with magical portals in the basement? You mean Picadilly Circus DOESN'T get invaded by aliens every other week?"
Goin' to Peru in a week
For Sushu's spring break.
Itinerary: Lima -> Trujillo -> Chiclayo -> Chan Chan -> Sipan -> Cuzco -> Ollantaytanbo -> Macchu Picchu -> Lima
TODO: explore Chimu and Moche ruins; see totally sweet Inca mummies; eat guinea pigs; get altitude sickness trying to hike in the Andes; attempt to hablo Español; eat ceviche and unfamiliar kinds of potatoes; observe legacy of colonial exploitation and try not to let it make me hate all Spaniards forever.
I will be off the Internet for the whole week from April 6 through April 13. I expect there to be such a huge email backlog when I return that in all honesty I will probably never reply to it. So if it's important, send it again after April 13.
I'm getting ready to go to Tennessee for Andrew's wedding on Saturday. (That's Andrew Wilson from Humanized, who I haven't seen since 2008!) I'm going to play accordion at the wedding reception so I've been practicing a lot, but I need to practice more! I also need to hem this suit that I bought for the wedding, because apparently they only make suits for tall skinny people? >:-/
In Search of the Unknown (dungeon module B1)
Holy crap, guys, tomorrow is my last day at Mozilla and I'm leaving for China on Friday morning. It's like I'm starting a whole new life. I'm excited! The future has a sense of wide-open possibility again, like I haven't felt for a long time.
My life has been too comfortable the past few years, which paradoxically depresses me because I'm like "Is this as good as it's ever going to get? Is the rest of my life just going to be a slow decline?" Something in my psychological makeup needs the unknown, needs weirdness. I have to believe in the possibility of growth, and growth requires encountering things outside my experience. I can't imagine a utopia or a heaven where I'd be happy, because they all sound so dreadfully boring.
Somebody asked me recently whether I was scared of leaving my job. No, quite the opposite: I'm scared of staying in the warm, stifling embrace of a well-paying job for so long that I turn into a Boring Person who plays office politics and acts entitled to his salary and hasn't questioned his beliefs for a decade. I need to get out there and fight for myself again. Worst case scenario, I said, if my next thing doesn't work out, I can always go get another software job. My interlocutor was like "No! Don't give yourself a backup plan, that will make you hesitate! You gotta commit!" He was a burn-your-ships and smash-your-pots kind of guy.
So yeah! Here we go! In Search of the Unknown!!
Sushu has some much more practical thoughts about getting ready to go to China (and Tanzania!)
OK everybody I'm in China now
I'm writing this from an apartment Sushu's family has in Shanghai. I'll be here for ten weeks. It's the longest I've been out of the country since the JET program. Exciting!
It seems that because of Chen Guangcheng's recent escape from house arrest, China has cracked down on foreigners traveling around the country with Chinese nationals (e.g. me and Sushu). (Edit: it's because of Wang Lijun, not Chen Guangcheng) The extra security measures have disrupted our plans to go spend time on the farm. But that's OK, we're going to have a great trip anyway.
Various websites may be blocked here. I know how to get them if I really need them, but at the moment I'm treating it as an experiment to see how well I can get along without Google, YouTube, Twitter, etc. I suspect I may actually be happier and more productive without them. We'll see how it goes. Anyway, I won't be answering my GMail for the next couple of months.
I am now officially no longer employed at Mozilla. If anybody asks, I'm a "pre-revenue startup founder" which is a glamorous way of saying unemployed. At the moment I'm looking forward to working on various creative projects that have been on the back burner for too long. When I come back to the US in August is when I'll start working on the new company in earnest.
Going to Xi'an
Today I'm getting on an overnight train for Xi'an, the ancient capitol of China, best known for the Terracotta Soldiers and for being one end of the Silk Road. In the 500s AD it was the biggest city in the world.
I'm excited! Anyway, I'm letting you know I may not have internet access for a few days. I'll be back Thursday. But then Friday I'm flying back to America!
Back to America tomorrow
Gifts packed, postcards sent, room swept (cockroaches crushed), trash taken out, ride to airport arranged.
Just got back from Xi'an this morning on an overnight train. We get one night of sleep in a real bed and then it's off to the airport tomorrow for a 13-hour plane ride.
It will be sad to say good-bye to Shanghai, but I have a whole other life in America that I need to get back to.
I'll be back for less than a week before I fly off again to Indiana for Cat and Kent's wedding. Gar!
Yay happy feelings
I just had lunch with a bunch of Mozillians; first time I saw them since I quit. I was kind of nervous, but they gave me a very warm welcome. I was very, very happy to find out that they don't hate me even after this thing went viral.
This afternoon I'm flying to Indiana for Cat's wedding this weekend. I haven't seen her and Kent since GenCon last year (Geez, has it really been a year already?) so I'm pretty excited to see them again!
Upcoming travel plans
I'll be in Austin, Texas for the last weekend of October, meeting up with some old friends from Iwate JET.
Then in November I'm flying to Chicago on the 10th, staying for two weeks, and flying home after Thanksgiving. I'm not able to visit my family as often this year as I did in past years so I'm trying to make up for it with a longer visit.
Any Chicago friends want to meet up during those two weeks? Send me an email!
Alternative Press Expo
I'll be at APE in San Francisco this weekend helping table for Sushu's China Comics.
I'm road-tripping up to Seattle tomorrow with Sushu and Chris. Won't be back until the end of the week.
Uchicon accordion setlist
MLK weekend I'm going to Chicago for Uchi-con, the anime/gaming mini-convention that I helped start back in 2004-2005. I'm quite pleased that the subsequent generations of anime club members have kept it going.
I plan to spend most of the time rocking out on the accordion, so I'm practicing the following anime/game themed setlist:
- Legend of Zelda (overworld)
- Super Mario Bros (1-1)
- Yakusoku wa Iranai (from Escaflowne)
- Zankoku na Tenshi no Thesis (from Evangelion)
- Katamari on the Rocks (from Katamari Damacy)
- Harlequin (from Homestuck)
- Always (by Erasure - the song from Robot Unicorn Attack)
I could mayyyyybe learn one more in the next week, if it's not a real complicated one. What I know so far is mostly pretty old-school so maybe I should learn something from the last 10 years that college students of today would recognize. Any suggestions?
Studio Xia is not a startup
Studio Xia is going to be the umbrella brand for stuff that me and Sushu make. It's a company that we're starting, but it's not a "startup company", more like a family business.
Startup expert Paul Graham defines a startup as a company designed to grow fast at all costs. I'm not very interested in growing fast. I don't want to take venture capital or go into debt buying office space or whatever. My goal is to start something that makes me a modest living. That will be hard enough, I think.
So by Paul Graham's definition, Studio Xia isn't a startup, it's a "barbershop". I'm fine with that.
Anyway, we want to start trying to sell the Chinese learning game at the National Chinese Language Conference this year. It's in early April, in Boston. That gives me a nice hard deadline to keep myself on track. Now until April should be just barely enough time to finish a minimum viable product (I hope).
Of course, when we went to register, they asked for our website, so I needed to throw together a Studio Xia website quickly and have it look halfway professional.
That's why I was messing around with Bootstrap.js, that thing I told you about that makes all websites look the same. The Studio Xia site is therefore full of modern website cliches like that rotating-image-gallery thing (Bootstrap calls it a "carousel"). I'm not exactly proud of it. But it's just meant to be a placeholder, and it's doing its job.
The hardest thing was deciding on a name for the game! I had to call it something so I'm calling it "Legends of Hanyu" for now. This was Ben's suggestion (thanks Ben) and it was the least bad of all the terrible names we brainstormed. There's still time to change it if we can think of something better.
I'm not much of a web designer, as you can tell from evilbrainjono.net. Honestly I'd usually rather just leave everything unstyled and focus on writing words. I think studioxia.com is the first website where I've picked a font.
Hang gliding tomorrow
It's been like 3 weeks since I first caught the flu, and even though I've been out and about for the last week, and I'm pretty sure I'm no longer contagious, I still have a lingering sore throat and cough.
Berkeley didn't accept my application :-( but! Good news: I've been having a series of interviews with a startup company in the renewable-energy field which I'm pretty excited about. Fingers crossed.
Anyway, tomorrow morning I'm going with Boriss, a friend from Mozilla, to take my first hang-gliding lesson. Huzzah!
This month, holy crap this month has been just
For an unemployed person, I'm pretty busy.
The first week of the month I was sprinting on the Legends of Hanyu code trying to get teacher features done in time for Sushu to show it off at a teacher conference. Partial success -- got a lot done, not as much as I would like.
Second week of the month I was doing a week-long statistical modeling / data analysis task for a startup I really like. I was one of a couple candidates they were considering hiring, and they offered this task as a way of letting me prove my abilities. In the process I learned a bunch about applied stats and data mining. That was pretty cool. But I didn't get the job, and I really wanted to work for them, so this was a bummer.
Ah well. If I never failed, it would mean I was sticking to things that are too easy for me.
There has also been... well, read Sushu's dreamwidth for details. It's been hard on both of us emotionally and hard on her physically.
If you follow my twitter you noticed I made some pretty angsty and depressed tweets the last couple of days. I'm worried I might be slipping back into depression. But this time I've decided to talk about it and reach out to people instead of withdrawing and trying to keep it secret.
Jinghua (my old boss from Mozilla) saw my tweets, got worried about me, and called me up to check on me. She's really sweet! She suggested meeting up for dinner that night with the Mozilla user research team (including Gregg who was visiting from Minnesota that day). We had shabu-shabu. It was really good to see them again. Man, for all the things that made me decide to leave Mozilla, I really do love the people I got to work with there. It will be hard to find such good co-workers anywhere else.
This week I wrote and thumbnailed a ten-page comic. Oh, right, I forgot to tell you guys: I pitched a comic idea to this anthology of science fiction short stories set in San Francisco, and it was accepted! The final pages are due on April 1, so I'll be drawing and inking like a maniac all next week to try to meet that deadline.
Even with all the deadlines that landed this month, the job hunt doesn't stop. Sushu's school is looking for a new math/computer-science teacher, so I went in and observed a class on Thursday to see if it's something I might be interested in. (Answer: probably not.) Next I'm trying to set up interviews with some companies involved in building the "smart electric grid".
March was also the month when, out of the blue, I had chances to reconnect at least five different friends who I haven't seen in years. All independently. That was great!
Oh yeah and I went hang-gliding, and played taiko in front of thousands of people at a baseball game. Somehow that happened while all this other stuff was going on.
On the 30th I'm flying to New York City to meet a bunch of people there, then road-trip (or possibly Amtrak) through Connecticut visiting friends and relatives on my way to the big Chinese teacher conference in Boston.