Latest Articles

Caching WikiVoyage to Your Laptop and Phone

I don’t like paying for travel books. They’re expensive, bulky and generally out of date. Internet resources are a lot better, and I love using WikiVoyage to plan my routes (it’s a non-commerical fork of WikiTravel supported by the WikiMedia foundation).

One downside of trying to use the Internet while traveling is slow speeds. Even the best wifi or 4G is going to have latency and dead spots. If you’re on a train or a bus and see an interesting town, and want to hop off, how can you be sure that you’ll know where to sleep, where to eat, what things should cost and what to see?

I confronted this problem for a while until I thought: Why not just cache WikiVoyage on my phone? It turns out someone is already doing this, and you can use Kiwix to pull a full archive of WikiVoyage for reference offline. It works on every major platform.

Why am I using Kiwix instead of WikiSherpa or the other cached wiki apps? My main reason is that WikiVoyage is big — 1.2 gigabytes for a full download with images — and once I spent three days pulling the archive I didn’t want to have to pull it again for another app on my phone. My attempts to download the same data for WikiSherpa failed repeatedly.

Give Kiwix a shot next time you travel. It’s totally free and there are obviously going to be some errors since it’s a Wiki site, but I like using this open data more than caching locations in TripAdvisor or using expensive and poorly formatted Kindle books. I also like that one file has almost every city in the world recorded, so I can think of a random city and read about it in seconds.

An added bonus of Kiwix is that you can also download Wikipedia in either 13GB or 1.7GB versions. I’ll be downloading this to my laptop as well so I can read more about the history and industries of the towns I visit (that information is not usually in WikiVoyage).

Some screenshots of Kiwix running on my Mac. Unfortunately it doesn’t seem to support retina displays.

Some screenshots of the same data file running on my Android phone.


I have worked at Facebook and lived in San Francisco for a few years and met an unfortunate number of highly paid people who don’t save a dime. Mostly because they have no idea what to do with extra money and are confused about investing.

It’s not really that complicated. Spend less than you make, save the rest, and invest it wisely. But what does that mean in practice?

You don’t need a high income to get started: I started doing most of this 15 years ago when I mowed my neighbors’ lawns.

Save money

Start pretending that each paycheck is 10% smaller. Or do what I do and pay yourself a fixed amount of money out of each paycheck and give yourself raises when you need them — not when your company decides to give them to you. My income has gone up a lot over the past few years but I’m still paying myself basically the same amount I was two years ago.

You can also do what I used to do, which is to pay yourself first. That means when you get a $1,000 paycheck the first thing you do is save $100. It’s rare but at times I did this even though it meant I was unable pay off my whole credit card for a given month. To me maintaining this habit is more important than a few dollars in interest charges.

Treat found money like it’s money that you earned. If you get $1,000 bonus or inheritance take a piece of it and do something really nice — this could even mean just buying yourself an ice cream and thinking about how awesome that found money was. Then save the rest.

Don’t treat money as a status symbol

Money is points, money is ability to pay for experiences, and money is absolutely power and independence. But money is not useful to impress people. No one cares about how much money you paid for something. If you buy expensive things people will generally be happy for you or they might think you’re a jerk, but they will rarely be impressed 1.

Sell stuff you don’t need

I’ve started tracking every major purchase I make in a spreadsheet and the items that aren’t useful after a few months get sold. In aggregate I’ve sold more than $10,000 worth of cameras, electronics, clothes and luggage over the past year and gotten 80% of what I paid for back from it. Losing $2,000 isn’t great — but at the same time effectively renting a $2,000 camera and $1500 worth of lenses for nine months for $400 was awesome. Having all that money back in my savings accounts instead of looking at me every day in the form of things cluttering my apartment is awesome.

In general try to buy either high end or low end products. High end products can be bought easily used and they can be resold for 60-70% of their new price or sometimes even more than their used price. High end products are also generally more liquid — I’ll write more about this later.

Mid and low end products maintain almost none of their value, so minimizing upfront cost is crucial. The same is true of most clothes: you’ll probably have to sell them for pennies on the dollar or give them away.

Where do you put all this $$?

Online savings accounts are a fairly good place to park cash. Check out Ally Bank, they have decent rates and a good design. The general wisdom is to get enough in cash to cover your basic expenses for six months, then pay down all your debt, then start saving for bigger things.

At first I found six months of living expenses unbearable so I settled for having a few thousand in cash and knowing that I could raid my retirement accounts if things got grim. Today I keep about 6 months in cash or very liquid assets 2.

Today all my money is in online banks. Retail banks are horrible, they charge all kinds of hidden fees, and they don’t pay enough interest. Not having a retail bank only becomes a problem when I need to get a bank check or deposit cash. In these few situations I’ve had friends help me out or I’ve opened an account and closed it a month later3.

Retirement savings

Retirement savings is in general overrated. There’s a really good chance you’ll be dead before you can spend it and from now until you retire it doesn’t give you the freedom that working capital does.

Try not to make yourself short-term broke by saving for retirement. For my first five working years I saved 15-30% of my income into retirement accounts depending on what else was going on in my life but I never had enough cash around for downpayments or short term financial moves.

Last year I stopped saving for retirement entirely and started buying taxable investments. It’s empowering to have cash available when you need it for big purchases but it takes some responsibility.

So I will advocate balance. Save for retirement but don’t try to max your accounts out just for the principle of maxing them out. When you do save for retirement learn about prioritizing investments.

I agree with the general rules: 401k to get your match, Roth IRA if you can do it, and savings for near-future goals and freedom4. After that feel free to pour the rest into your 401k.

Non-retirement savings

If you aren’t going to save much for retirement the main thing to concern yourself with is tax efficiency. Some investments cost more than others due to weirdness in tax laws. This is too complicated to get into detail but here is a good article to get you started.

Basically try to buy stock index funds, my favorite is Vanguard Total Stock Market5. I prefer to buy it directly through Vanguard because there are no fees, the customer service is extremely helpful and works for me6, and I can direct-deposit my paycheck into them.

If not index funds then buy individual stocks, and in either case try to hold them for more than a year to avoid short term capital gains.

These days interest rates are low enough that you won’t owe meaningful taxes on cash savings. When you’re only making 0.85% interest on taxable cash savings, and you have six months of cash sitting around, the taxes just aren’t worth worrying about.

Managing all the numbers

I’m a huge fan of the software You Need a Budget for spending and cashflow. A subject for later writing is that I have 6 credit cards right now, some of them with spending limits to hit in order to get free flights, and this software is invaluable for letting me optimize and track everything without going insane.

YNAB also provides good insights into past spending behavior and helps keep me honest with myself.


After all this just try to put your savings plan autopilot and focus on more the more fulfilling parts of life. Soon you’ll have a sizable amount saved and start feeling much more financially secure. On good days you’ll make more from investments than you do at work!


One final note is that giving away money feels great. I used to feel conflicted about this until I setup budget categories in YNAB specifically for random gifts for friends and donations to charity. My favorite charity is charity: water.

I get more way more mental benefit from giving away money than I do from spending it on myself.

Futher reading

  1. Vanguard is a mutual fund company owned by their investors6 and they offer high quality funds and advice on investing. The Bogleheads are strange people obsessed with Vanguard who wrote an awesome book and wiki. The Bogleheads Wiki is a great place to start. If you’d rather read a curated book check out the The Bogleheads Guide to Investing. It’s investing in plain English for normal people.
  2. Your Money or Your Life. A classic on breaking bad spending habits and treating money like a store of value instead of status. Do the real hourly wage estimate and be shocked that you don’t earn nearly as much as you think. Warning: The latter half of the book is kind of new-agey and has some dated advice about savings bonds. The US Government gave up on saving bonds a decade or two ago and they are rarely optimal investments anymore.
  3. All About Asset Allocation. When you have more than 1 year of income saved read this one, before then asset allocation isn’t very important. This book will teach you more than you ever wanted to know about how capital markets work and how you probably can’t beat them.

  1. Strictly speaking this isn’t always true. In rare situations people are impressed by money. Error on the side of caution. [return]
  2. Cash, BitCoin, and some incredibly non-volatile stocks. The cash is enough to get me through emergencies but if I was unemployed for a long time things are a bit staggered in volatility. In 2007-09 everything but cash took a huge nose dive so it’s really not worth thinking of anything other than cash as being safe. We will see how BitCoin performs the next time the economy crashes. [return]
  3. Closing accounts isn’t that hard. First get all the money out of the account and then use the secure message center to tell them you are moving abroad, want to close the account immediately, and are not interested in special offers. If that fails call them and say the same thing. [return]
  4. I actually have a mutual fund playfully called my war fund. It’s for the situation where I need a large amount of money before retirement: buying a house, voluntarily taking time off work, or in rare cases buying obscure investments. [return]
  5. My favorite fund if you have less than $3,000 to invest is Vanguard Star which has a $1,000 minimum — but switch it to Total Stock Market as soon as it breaks $3,000. [return]
  6. Vanguard is the only mutual fund company owned by their investors. So their interests are aligned with yours. Most other mutual fund companies are owned by other people, so they want to take as much of your money as they can. [return]

Long Bets

I like to make long term bets to test my ability to predict the future. There are enough of these bets going that I’ll start tracking them here.

#Bets I’ve won:1. I bet Mike Zhu $100 that the iPad would sell more than 10 Million units in it’s first year. We made the bet before Apple announced anything, we didn’t know the name of the product, but I had confidence it would sell well. I think the actual sales were about 15 million. Mike Zhu hasn’t paid up yet, but to be fair he lives in China and got banned from PayPal.1. I bet Jason Applebaum $100 that Apple will release a smaller iPad in 2012. I won this when the iPad Mini was released.1. 2012 - I bet Alex Bain $100 that Obama will win the 2012 presidential election. I paid $57 to win $100.1. 2012 - I bet Matt Bruce that Obama would win the 2012 election. Matt paid me $20, if Romney had won I would owe him $100.

#Bets I’ve lost1. 2013 I bet Dario Dario Mutabdzija about the stock price of AAPL. I said “I think Apple will be back above $600 within three months (by April 15, 2013) and above $1000 within two years (by Jan 15, 2015).” I lost both of my statements. Dario said “It will never go above 700 that is easy to divine” and “I would be very surprised to see Apple go above 615.” Dario lost both of his statements, making us even on final payouts.2. 2013 - I bet Steve DeLucia $100 that in 2013 there will be fewer than 2.5 Android devices sold for every iPhone sold. I paid Steve $100 in early 2014.

Future bets

  1. 2019 - I bet my brother Brishen Rogers $500 that the S&P 500 will outperform Lehman Aggregate Bond Index between May 2009 and May 2019.
  2. 2023 - I bet Kyle Kuklinski $1,000 that BitCoin will trade for >= $1,000/USD for at least one week between April 2, 2013 and April 2, 2023 (10 years). If BitCoin never trades > $1,000 for a straight week I owe Kyle $1,000. If it does he owes me $1,000. Although the BTC market has never closed we agree that the one week window stops if the market is closed.
  3. 2032 - I bet Chad Heaton $100 that the sea level in New York City will rise by less than or equal to 2 inches per decade between 2012 and 2032. Chad wins $100 if sea levels rise 5 or more inches per decade.

The Bitcoin Virus

San Francisco, California.


  1. a decentralised digital currency created in 2009.
  2. a client for the above currency.
  3. a contagious viral infection of the brain causing radical libertarian thoughts, currency speculation, and insomnia.

#InfectionYou find yourself eating lunch at a picnic table with a friend on a cloudless Northern California day.

Your friend starts talking about BitCoins. You’ve seen the word “BitCoin” before but you can’t really place it. You know the word never meant anything to you. Maybe you saw the word “BitCoin” once on Reddit or in The Economist but it was just in passing and it never caught your mind.

Your friend talks and talks. You nod and smile and say “yes” and “oh that’s interesting” and “only 11 million coins?” in a feeble attempt to look like you’re paying attention. You feel a little guilty for not giving your lunch partner undivided attention – but you’re also surprised that he doesn’t seem to notice.

#SusceptibilityAt least 19 in 20 people are completely immune to BitCoin. The unlucky ones are the libertarians, the mathematicians, the computer science students and anyone who’s read books by Neal Stephenson. If you studied some combination of Economics, Computer Science, and Math in school you’re going to have a bad time.

Later that night – even though you weren’t really paying much attention at lunch – key phrases keep popping up in your mind. “100% growth in 2 weeks”, “no inflation”, “crytographically secure” and “untraceable”. You think about that piece of paper your friend pulled out of his wallet with numbers all over it and you wonder: How could it be that a number can store money?

You type “BitCoin” into Google. You type “Who is Satoshi Nakamoto?” into Google.

#It comes on slowly, then all at once.

After limited online research, browsing the /r/bitcoin subreddit, and running a few quick equations through Google Docs – you decide maybe buying one of these coins would be a fun experiment.

You type “How to buy BitCoin” into Google.

You head over to Mt. Gox to open an account. A few minutes later dread fills you. Paying $30 to wire money to Japan? Just to buy one coin?

Thirty minutes later you’ve got accounts on Mt. Gox, BitStamp, CoinBase, and Dwolla. You’ve figured out that CoinBase is a waste of time, BitStamp is in Slovenia, and Dwolla is going to take 5 days to confirm your bank account details. You’re resigned to waiting, and reading. And reading.

That week feels like forever. You watch the charts grow and grow and grow. Initially you wanted to buy one coin – but now maybe 5? How about 10?


Two weeks later you wake up on a Sunday morning feeling exhausted. You’re not really sure where your mind has been. Checking about:history confirms you were up until 3 am moving money around the world, trading bit-penny stocks, rolling Satoshi dice, and making bets on future political events.

You’re out of coffee, the gas tank on your SodaStream is running empty, and you haven’t had a good night’s sleep in a while.

You log into Mt. Gox one more time, see that BTC/USD is a perfect $100, and sell down to the sleeping point.

You take a walk, it’s a beautiful sunny and windy San Francisco day. You feel like you’re back on earth. And that’s great.

Turning Your Life into a Factory

I’m in the midst of learning the system Getting Things Done (GTD), based on David Allen’s book by the same name. I’ve been learning GTD for a few years and wanted to pass on how I understand it today. This is the summary I wish I’d seen two years ago. If I’m successful this might convince you to try it out.

A System of Hacks

GTD is a system of hacks to make my life easier. They empty my mind of clutter and give me a way to deal with that clutter elsewhere.

A simple hack is remembering to take a box to work. The hack is I put the box in front of my door at night so I see it in the morning before I leave home.

And that’s all GTD is: I make a decision to do something, I move that decision outside of my mind into the external world, and I stumble across it later and get it done.

Life is complicated and it’s not always clear what I need to do next. It’s easy to get stuck in endless loops checking email or Facebook. Sometimes I wish I worked in a factory where all I had to do was stamp widgets. The hacks of GTD let me turn my world into a factory. I spend some time at the beginning of the day deciding what to do and setting up the production lines, then I just mindlessly stamp widgets and my life moves forward.

Turning your life into a factory

Below are the basic steps to turn your life into a factory.

1. Exporting

The first step of GTD is you write down everything on your mind that you want get done. All the emails to respond to, projects to finish, things to clean, people to see, movies to watch, books to read, places to visit. All the scenarios of the life you want. (This is called your inbox).

At first you’ll end up writing down what’s at the top of your mind. That check you need to write, the friend to call back, the email to respond to from your boss. But as you move down the page your mind gets clear of what needs to get done this hour or this day and you start writing things that are really far out in your future: connecting with old friends, buying a house, buying a car, moving to a different state, switching jobs, switching careers. The simple fact that you've put this on paper or into a computer, outside of your mind, frees your mind to dream big about things that are really far from completion.

2. Processing

Now you have this big list of outcomes and you look at it. You’re overwhelmed because it’s four pages long and you don’t even know where to start. You think: I need to send that email this week. I can call my friend back right now. But you also think: How can I buy a car when I don’t even have a license? How can I buy a house without 20% down?

You sift through this insane list of dreams (GTD calls these projects) and find the next widget to stamp to keep each dream moving forward. You write minimal instructions to your future self to stamp the widget (GTD calls these next actions).

If the project is to host a party, the next action is to check your calendar for a good night to host. If the project is to buy a car, the next action is to check your bank account and see how much money you have. If the project is to take a vacation in Japan in September, the next action is to find out if your passport is expired.

3. Acting

Your big lists of projects is now broken down into a much simpler list of tiny actions. You don’t have to think about the huge project. You just have to make that phone call, check your bank account balance, or dig out your passport.

The magic is that you now have a list of phone calls you need to make that’s always with you in your phone. When you’re stuck waiting at the DMV with nothing else to do you dig out that list of phone calls and make five of them at once. Now five of your projects have moved forward.

That’s it. That’s your factory.

What’s the rest?

That’s basically it. Every time something comes to mind that you want to get done drop it into your inbox. Periodically you take everything in your inbox and write out the next action. You then assign each of these next actions a context like “phone call” or “email.”

Then you act. When you’re at your phone you make phone calls. When you’re at your computer you send the emails. Having these lists of tiny things to do frees your mind to stop thinking about the big picture and just stamp widgets.

Really, that’s it?

No, I lied. GTD is contains a bunch of other hacks that you can read about in the book.

  • Mail projects to yourself in the future with a “Tickler file.”
  • Move projects you can’t do today into a “Someday/Maybe” list that you deal with in the future.
  • Maintain a reference list of restaurants, movies and places to see that you might want to check out in the future.
  • Label boxes and drawers in your apartment so everything has a natural place and you never forget where something is.
  • Learn to throw things away that you don’t need anymore.
  • Learn to review your whole system every week so you begin to trust it, and as you trust it you offload more and more of your life into it and free up more of your mind.
  • Learn to tackle huge projects without stressing over them.
  • Learn to align your day to day life with your long term dreams and moral values.

So this is just a task list?

No, tasks lists are fundamentally broken and they rarely work. This ends up being a constantly evolving plan for your whole life. It goes a lot deeper than a task list because once this is out of your short term memory you're free to expand and expand to really capture long term dreams.

One of my projects is to "Fix my knee." This is probably a year long process of regular doctor's visits and daily stretching. I have a project for a visit to Japan later this year, a few projects to make sure I see certain friends for lunch, and a saved list of things I wish I'd brought last time I went camping (that I'll never forget again!). There are, of course, a bunch of projects related to my day to day work.

As of today I have 151 projects and 733 actions. About half the projects are in motion and half are stalled out waiting on a future date or waiting for someone to get back to me.

OmniFocus Screenshot

Doesn’t this take a lot of time?

It does and it doesn’t. The initial payoff is mostly immediate and it gets better the more you invest in it. If you have a personality like mine it's also really fun.

More Reading

For more details I suggest buying the book.

The book describes how to do this on paper, which is kind of antiquated, so you might want to use OmniFocus instead. OmniFocus is awesome because it syncs between my Mac and my iPhone, so my external GTD mind is always with me. Practical advice on using OmniFocus can be found in the book Creating Flow with OmniFocus.

If you really want to make sure this sticks I find that continual exposure to the ideas helps me. I get all my inspiration from Merlin Mann’s excellent podcast Back to Work.