Me, at Bozcaada, Turkey, 2017

I’m leaving US soon. I booked a ticket from Seattle to Shanghai on May 6th. This puts an end to my work at VS Code, as well as to my 8th year in US.

I get a lot of questions, such as “why leave” or “what’s next for you”. So I wrote something down as an explanation for those who know me. Here follows my imaginary Q&A.

Why leave?

Believe it or not, coronavirus is not the cause. My hometown is Wuhan and I do plan to visit my family and friends after the lockdown. I also feel US’s situation is becoming grim. However, I started thinking about leaving long before the pandemic started.

One reason for leaving is that I don’t have enough time for myself. My full time work at VS Code leaves me little time/energy to pursue my interest. Here are a few things I’m trying to do recently late at night or in the weekend, but lack enough time/energy for:

The list goes on. As you can see, I have a wide range of interests not necessarily related to programming. I think if my weekend hobby is to fiddle with the new filesystem API in Chrome, my current life would be somewhat more sustainable. When hobby and work align, you don’t feel work is too much, because you spend the whole day working on things you enjoy. For me, I feel my interest has defiantly diverged from programming, so much as to make me feel I don’t like programming per-se.

I had a different mindset when I started working on VS Code two years ago. I thought that I liked programming, and I would enjoy doing it even after work. I could use my work as a way to accumulate technical expertise, and use those skills for my hobby projects. I didn’t draw a firm line between work and life. I spent most of my time programming.

But over time I realized that I enjoy many other things besides programming. They are my experience of dyeing in Japan, of learning typography at Shanghai and of doing letterpress at SVC. They bring me a lot more joy than programming.

I don’t dislike programming. What I dislike is programming taking up majority of my life, leaving me little time to reflect and reorient. It’s strange to say, but I think I would start to like programming again once it becomes a boring means for me to achieve my ends. I have come to believe that programming itself cannot be a meaningful end, at least to me.

I think I’ll follow Aaron Swartz’s advice. Be curious. Read widely. Try new things. From a perspective of personal growth, reading has been my most eye-opening and fulfilling habit, but I haven’t had enough time for it. Some of my favorite reads in the past two years include Barthes, Sontag, Camus, Gide, Calvino, Wilde, McLuhan, Kafka, Sartre and Dostoevsky. In the genre of photography I enjoyed Saul Leiter, Ernst Haas and Sho Shibata. This does not satiate me. I want to read more. More books by those authors I admire. More books on sociology, anthropology, linguistics, literature, languages, culture studies and philosophy. More photography albums. Having enough time to read makes me happy, and I believe broad, deep reading would be the best investment into personal growth I can make.

I’ll write more about what I want to do later, to answer the next question, “what’s next”. Anyway, you see, I have way too many things to do besides programming. They are fun and I want to commit to them more seriously, so I decided to quit working.

Just a side note: I have saved up enough money to sustain myself for very long, so I have the privilege to make my current choice. However, this pandemic has made universal basic income a closer reality. My choice could become available to more people soon. At that time, maybe they would need to ask themselves the same question that I did. If you deprive economic stability as an incentive for work, why work? What to work for? Meanwhile, regarding learning. Do you still “learn at school” and “go to work and stop learning”? While my heart aches for the losses in the pandemic, on the positive side, I think the pandemic accelerated the rate of change to a more digital, decentralized society. Some of our current assumption, such as “study in school, specialize, then go to work” will start to get challenged. I’m not so shameless as to call my move prescient, but I do believe over the time these fundamental questions will pose themselves before everyone.

Another reason I’m leaving is that I want to live nomadically. My study and work can be fully independent of location. I can learn and work as long as I have connection to internet, a place to sit and a cup of coffee. I know this sounds too naively optimistic. I’m not unaware of the cost. Not having a stable home and having to move every few months can be burdening. But those are price I’m willing to pay.

“Living nomadically” is vague. I don’t have a concrete plan yet, but I have some certainty as to the way to live. For most countries, I can get a travel visa up to 3 months. So the idea is to live in one or two cities in a country before moving to the next one. The way I plan to live is unlike traveling. I wouldn’t go visit famous places. I wouldn’t move as often. I would develop a regular routine, such as getting up early, find a cafe to work, exercise, read and build. I view location neither as a precondition for work, nor as a gateway to exotic experiences. If possible, I want to take this chance to blend into different local cultures. Other than work, I plan to sign up for either a language or culture class. For example, going to Chiang Mai to study coffee, or going to St. Petersburg to study Russian. I just bought Tristes Tropiques to read as well.

To me, internet is both liberating and constraining. I enjoy the convenience it brings. I hate the illusion of connection and understanding it creates. By living nomadically, locally, physically, right-at-the-place, I think I can establish more real connections and achieve better understanding of people and their cultures. There is no alternative to seeing, feeling and experiencing with my own body. Even in the global village, you don’t get to know your neighbors until you knock on their doors. I envy Maciej Cegłowski for going to Hong Kong. I think now I’m at the right age to see the world as it is, not as what the internet depicts. So off I go.

One final reason for leaving is a feeling. It is hard to capture, but I’ll try to sketch it out.

I have certain beliefs. They are hard to justify. For example, I hate cars. I believe cars bring hard-to-quantify damage to a city. I believe cities with a lot of cars are terrible. I can’t really give you a correlation between walkability and happiness, neither can I prove cars bring more harm than benefit to a community. I just believe massive amount of cars make people’s life terrible. Both the pedestrians’ life and the drivers’ life.

It saddens me that many are not aware of other alternatives and what cars cost them. I have been to Kyoto, where people mostly walk. I went to Copenhagen, where people mostly bike. I traveled to Wuzhen, where people transit with boats. I was in Zürich, where most people take trams. These cities share a quality that I cannot point finger to but enjoy nevertheless. And cars are not compatible with that quality.

In a similar vein, I feel certain uneasiness towards today’s increasingly centralized web. Are we precluding other possibilities? What is transitioning everyone to the “cloud” costing us? Do we enjoy this web as it is today? Will we enjoy the web in 5 years?

Cars can turn cities into a car-oriented landscape and I think the same thing is happening to today’s web. I don’t like it but I’m not sure what to do. I’m frustrated that I cannot even point to what’s wrong. But something feels wrong. For now, I want to step aside a bit from the centralized and monotone web. Distance makes observation and critical thinking possible. I want to read more about the old, indie web. I want to use more RSS and Podcast. Fortunately, I believe the web itself does not prescribe a centralized landscape. The power of building is still within individuals. I will probably come back at some time, with a more dialectical understanding of the web, and with more clarity and readiness to build for the web.

What’s next for you?

There are two answers to this question.

One is a concrete, immediate one. I plan to reside in cultures I have interest in learning more about. I’ll likely stay as long as my visa permits, which is usually three months. During my stay, I’ll either take some language classes or learn something that interests me, such as coffee. I would spend the majority of my time reading, learning and building.

Language is an important subject for me. I think among all subjects in computer science, programming language is the only one that I’m passionate about. I tend to think of programming language as an interface for computer-human dialogue, and I feel this field is still in its infancy. In the upcoming year, I would dedicate a significant amount of time to learn various programming languages and compilers.

But natural language interests me as well. I speak Chinese, English and Japanese fluently, learned a little bit of German, started learning Icelandic but didn’t find enough time, and want to learn French, Russian and Arabic. I don’t believe a lot can be translated across languages, and it’s the untranslatable that comprise the charisma of each one. At some point I seriously considered doing a master program in comparative literature. I still do not exclude that option.

So one of the “next” for me is to learn more about languages. I plan to pick up SICP and dragon book and fiddle with various programming languages. Meanwhile I’ll take some intensive language classes.

A little bit on coffee. Yes it feels like something completely useless to my study, research or work. But last time I totally enjoyed dyeing as well. How boring are people who only do serious work. I’ll take the SCA curriculum and probably work in a coffee shop for a while. Who knows what this will lead me to. On a serious note, if all my endeavors were to fail, at least I can fall back to opening a coffee shop. That doesn’t sound too bad.

So, here are my plans for summer. They are now in shambles because of the lockdowns and travel restrictions, but anyway, here they are:

I’m also planning to come back to US, maybe next year, to enroll in Recurse Center or School for Poetic Computation. I hope things will be better in US soon, but I’m not sure.

My other answer is not so concrete. You can see my 2020 resolutions. I will expand a bit on the topic of “worryability” by quoting Calvino:

I would like this to signal the end of “wasted angst” in my life: I’ve never regretted anything so much as having particular individual worries, in a certain sense anachronistic ones, whereas general worries, worries about our time (or at any rate those that can be reduced to such: like your problem in paying the rent, for instance) are so many and so vast and so much “my own” that I feel they are enough to fill all my “worryability” and even my interest and enjoyment in living. So from now on I want to dedicate myself entirely to these latter (worries) — but I am already aware of the traps in this question and that’s why for some time now my first need has been to “de-journalistize” myself, to get myself out of the stranglehold that has dominated these last few years of my life, reading books to review immediately, commenting on something even before having to time to form an opinion on it. I want to build a new kind of daily program for myself where I can finally get into something, something definitive (within the limits of historical possibility), something not dishonest or insincere (unlike the way today’s journalist always behaves, more or less). For that reason I make several plans for myself: … to maintain my contacts with reality and the world, but being careful, of course, not to get lost in unnecessary activities; and also to set up my own individual work not as a “journalist” any more but as a “scholar,” with systematic readings, notes, comments, notebooks, a load of things I’ve never done; and also, eventually, to write a novel.

I want to deprive myself of the knowledge, presumption and prejudice that I have accumulated through working professionally, and rebuild my knowledge base from the ground up. I want to start with a beginner’s mind. I’ll follow my interest in languages. I would start doing “systematic readings, notes, comments, notebooks.”

One thing I will do differently. I’ll use my technical ability to enhance my own learning by building tools and new forms/organization of knowledge. The memex Vannevar Bush envisioned can only be built by someone with both technical capability and earnestness to learn. I find myself privileged to have the technical ability to hack my own learning, and I should exercise that privilege extravagantly.

I’m not sure what my effort will amount to. But Hundred Rabbit’s adventure and work have been a great inspiration. It’s pointless to think too far. It’s better to decide on something, hold my belief, and then set sail.

Open Source?

So far I haven’t talked about open source. I do have some open source projects outside work. The most significant one is probably Vetur, and I’ll continue to work on it as part of the larger Vue.js Core Team.

In fact, I would probably spend way more time on it than I currently can. One thing I like particularly is to devise tools to improve my own work. As I plan to build a lot of my ideas with Vue, I would get a chance to dogfood Vetur and polish it. Overall, I feel language tools can still be vastly improved and I look forward to building tools to improve the Vue learning/writing experience for others.

How does the coronavirus impact your plan?

Coronavirus brings a lot of uncertainty. Usually I can plan up to 6 months, but now I cannot even plan one month ahead. Getting visa, booking flights, applying to programs all become harder. I booked 6 flights to China and only one of them will fly. Fortunately I get the other 5 refunded.

It might be a terrible time to leave and travel. But it’s a good time to dislocate, to reconsider many assumptions as well. In the grand picture, a lot of changes, which are due to happen in 10-20 years, are happening today. People study and work remotely. People exchange privacy for safety. People drown in the emotional narcosis (McLuhan, Understanding Media) exacerbated by the globally connected network, the instantaneous flow of information and the deadly virus. I should write again on this topic. Anyway, I feel now is not that bad a time to leave, take time and reflect.


This has been a hard decision. I feel sad leaving VS Code. The team is great and so is the product. My friend used to tell me that in large companies, your experience totally depends on your team. If one day I were to come back to industry, I’m not sure if I can find a team as nice.

Actually when I look at the VS Code 2020 roadmap, I see a lot of things I can contribute to. A lot of areas and features that I care deeply and can make better. Now the pandemic has made many people unemployed. With a well-paying, stable job and a good project to work on, sometime I do ask myself, is this the right time to quit my job, to leave, to venture into uncertainty?

It always takes leaving for me to realize my loss. I didn’t really like Seattle. Lots of cars everywhere. Seldom any high-quality museum exhibitions. Buses that’s always late. But I think I would miss it. The sunset from capitol hill. Every cup of coffee from Vivace, Analog, Atulea, Victoria, Ghost Note and Amandine. I would probably miss the homeless playing Knockin’ on Heaven’s Door before Dick’s, too.

I don’t know how to close this one out. So let me borrow something, from the young Camus, standing before the sea of Algiers.

At midnight, alone on the shore. One moment more and then I shall set sail. The sky itself has weighed anchor, with all its stars, like those ships which at this very hour gleam throughout the world with all their lights and illuminate dark harbour waters. Space and silence weigh equally upon the heart. A sudden love, a great work, a decisive act, a thought which transfigures, all these at certain moments bring the same unbearable anxiety, linked with an irresistible charm. Is living like this in the delicious anguish of being, in exquisite proximity to a danger whose name we do not know the same as rushing to our doom? Once again, without respite, let us go.

I have always felt that I was living on the high seas, threatened, at the heart of a royal happiness.