A few years ago I sold all my stuff to explore the world, creating 12 startups in 12 months and building $1M+/y companies as an indie maker such as Nomad List and Remote OK. I'm also a big pusher of remote work and async and analyze the effects it has on society. Follow me on Twitter or see my list of posts. My first book MAKE is out now. Contact me
Subscribing you...
Subscribed! Check your inbox to confirm your email.
levels.io

How I build my minimum viable products

12 Startups in 12 Months, Tech
Sep 2, 2014

Since I’ve launched my 12 startups in 12 months challenge, the #1 question I get asked is about my work flow and how I can ship so fast. I don’t work particularly longer hours than most people (I think). I do work fast and rough. In this post, I’d like to show you the basics of how my I build my minimum viable products (or MVPs).

First, a public service announcement, I don’t do things conventionally and probably not according to the rules. Especially not with these 12 projects. So it’d be a bad idea to follow how I do things exactly. It’s probably better to just figure out your own workflow. That’s what I did.

Solve your own problems, or not?

I start with an idea. I built GoFuckingDoIt so I stopped procrastinating and was fined money if I didn’t finish what I said I would. Tubelytics was there to get a general overview of all my different YouTube channels performance. And when I wanted to know which cities had the best cost of living for a traveling nomad like me, I built NomadList.

As you see, most of my ideas are actually there to solve my own problems — as David Heinemeier Hansson calls it scratching your own itch).

Is that good though? As this article points out, we might need to consider that a majority of us doing this stuff are young white males. So if we only solve our own problems, we limit ourselves in audience and problem settings. I don’t think that’s bad necessarily. It’s great to start off by solving your own problems. Personally, in the long run, I’d like to build more stuff that has a wider impact though.

My development philosophy

In terms of development I sympathize highly with Colin from Customer.io whose site is aptly titled I Am Not A Programmer. I’m not and I don’t want to be one either. I just want my stuff to work and not break. Programming is not my passion. Making stuff is my passion. Just as I don’t like mathematics, but I like how you can apply it to build a skyscraper.

If something potentially takes off, I do want my code to be easily readable by other coders to refactor and/or scale it.

If you look at any of my sites, they’re very minimal [1] and basic [2]. That’s on purpose. I don’t have as much as time to build things big and I don’t see the point of building things big immediately. And I like minimal user interfaces. I don’t think a site needs to be filled with functionality from top to bottom.

My development environment

I don’t really have an IDE. I just code everything in Sublime Text 3, I highly recommend it to anyone.

To give you an idea, two years ago I was still using Notepad++ on Windows 7:

Sublime Text is great since it has auto completion, linting (e.g. live debugging of your code) and dark themes (like Soda) that don’t burn your eyes. The auto-completion and linting especially now saves me incredible amounts of time. If I type this:

<html>

and press tab, Sublime auto-completes it into:

<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>

</body>
</html>

Sublime’s linting will visually show where I have errors in my PHP, JS or SCSS code. I also use CodeKit to compile/minify my JS and SCSS files. Like Sublime, it also supports linting. So if I don’t see the error in Sublime, CodeKit will simply pop up a window and tell me what’s wrong:

A year ago, I didn’t have any of these features. I didn’t even have a local server, so I’d make a change to my code, then upload it to my development server (on DreamHost) and see if it worked. I developed entire sites like this. It would take 1000x more time though. I know, I know! Ridiculous. But what do you do if you don’t know?

I’d recommend anyone to use a MacBook or Mac to develop your stuff on. It helps so much that OSX is a lot like Linux. That means I can have an almost exact duplicate of my production environment (e.g. the actual Linode server where the live website is running) on my development environment (e.g. my MacBook). So I can code and test stuff without breaking the live site. It also allows me to develop my sites when I don’t have internet. To show you, above is my MacBook, below is my server:

You can do all of this in Windows too, but it’s not as smooth and your production and dev environment will look a lot different — that is, if you use a Linux server, which you should (you say Microsoft .NET? I say lulz were had!)

Design process

When designing I usually start off with an idea of how it should look in my head already. I usually draw it out on paper first. For example, this is GoFuckingDoIt.com (I know, it looks terrible!)

photo (12)

And then I just build it in Photoshop and evolve it further. If I need a stock photo, I always get a mock first from Stocksy. They have amazing, beautiful, authentic stock photography. Really special stuff. Then when I actually decide to use it, I pay $10 and I have it licensed!

Then I build it in HTML and CSS. That’s when things start changing. For example the name went from Just Fucking Do It to Go Fucking Do It, and I switched around the picture with another one from Stocksy:

Screenshot 2014-09-02 21.31.31

I then tweak it until the interface looks great. Then I make it responsive for mobile. I use Chrome’s new emulation feature to see how it looks on mobile. It’s quintessential right now to make sure your site looks great on any mobile device. 40% of my traffic comes from mobile now. People will simply leave your site if they can’t use it! Take it serious.

When the front-end is finished, I usually start building the back-end (the stuff on the server) and making it actually interactive.

Shared vs. private hosting

A year ago, I used to host all my sites with DreamHost. I was on there for years. My sites weren’t that special though so they didn’t need a lot resources. When I started doing intense background cron jobs though, I started getting messages telling me I should probably stop doing that and get my own server. Fair enough I thought, I’ll get my own.

I didn’t even know how a Linux shell worked back then. And it probably took me a week before I had a working server set up on Linode. But when it worked, it felt so much better to have my own server. I now owned the entire stack. From front-end, back-end to the server itself. That meant if something didn’t work, I could quickly find the problem, instead of relying on some hosting company fucking up their shit and me debugging it for 12 hours to then figure out it was their fault.

Tech stack

I have a very basic stack. It’s Nginx on Ubuntu on Linode with basic PHP, Node.JS, JS, CSS and HTML.

Linode
My server is hosted by the awesome guys and girls at Linode (yes that’s a referral link). I run all my sites (even this blog you’re looking at) on one virtual private server (VPS).

To show you how cheap it is: I pay $40/m for a Linode with 4 GB RAM, 4 CPU cores, 96 GB SSD storage and 4TB transfer i/o. You think that sounds slow and tiny? Yep, that’d be a slow MacBook, but as a server it’s really quite fast. It takes floods of users easily. To give you an idea, every time one of my sites gets press or is featured on Hacker News or Product Hunt, it’ll get flooded with users (often >1000 concurrent users per second).

It’s never went down yet either, except for the cases when I broke it myself 🙂

I love Linode’s dashboard too. I’ve tried AWS’s but it’s just too complicated for me. Like when I shut down an AWS instance, it loses all data? Sure that might sound logical to an engineer, but not to me. To me that’s just not very user friendly. Linode has a lot less features than AWS but in my case that’s good. It’s simple. You can deploy a server instantly with one button, install a Linux distribution on it and it’ll be up and running in 5 minutes.

Ubuntu
My server runs Ubuntu 14.04 LTS as its OS. Why? It seemed like the most common Linux distribution when I picked it. And LTS stands for long-term support, which means even if you don’t upgrade to the next versions, it’ll receive bug fixes for quite a few years.

Nginx
On top of that, I run a basic Nginx server with the PHP-FPM gateway installed to enable PHP to run. I love Nginx because it’s very maintenance free and even if you don’t tweak it after installing, it’s usually just crazy fast out of the box.

PHP/Node.JS
The back-end of the sites itself are mostly written in PHP. I’m always embarrassed when I have to tell people this, but to be fair PHP has gotten a lot better these days. I am feeling the pressure to start moving over to Node.JS though, although I’ve been saying that for awhile (it’s hard to switch engrained habits).

HTML/JS/SCSS
The front-end of the sites is written in hand-coded HTML (like most people still do) and just raw JS. I do use jQuery to make stuff easier. I use some parts of SCSS to speed things up, but mostly it’s just me typing raw CSS code.

Deploying fast
I like this setup, because I can deploy sites very fast. I’ll register a domain with NameCheap, use their FreeDNS to add DNS entries to point to my Linode VPS IP address. I’ll clone an existing nginx.conf (Nginx config file) from another domain, change a few things and upload it. Then I connect to my server, enter the command below:

sudo ln -s /srv/http/domain.com/app/nginx.conf /etc/nginx/sites/domain.com
sudo nginx -s restart

This links the nginx.conf file to the nginx server and then reloads the server and it’ll be live. I can do that in about 15 minutes. Which is crazy cool to me.

I remember it used to take me hours to add a new site/domain to DreamHost because I needed to get through their horribly slow web panel. SSH-ing into a server is definitely superior to a web panel. I figured that out fast.

Folder structure

Last year, I was obsessing about how my folder structure was supposed to look. My projects had become quite a mess and I started looking at popular frameworks to base a structure on. After months, I slowly evolved into using this structure:

/_assets
This is the folder I start with. It contains all the rough pre-dev assets like mock ups in Photoshop and Sketch of the interface and logo designs. Then when the site is developed, I put stuff like screenshots of press mentions in this folder. It’s pretty much everything that shouldn’t be on the server.

/public/assets/
This includes all public asset files. That means pretty much everything used by the front-end. CSS for styling, JS for client-side scripting, images in PNG etc. This should all be publicly accessible. All JS/CSS files are pre-processed from the /app/ folder.

/app/
This includes all front-end (SCSS, JS), back-end code (PHP, Node.JS) and also the server configuration in the nginx.conf file that Nginx uses. This folder isn’t accessible publicly by itself (only /public/ is accessible publicly). Instead, I use Nginx’s config file as a natural router to route specific URLs to specific PHP files. That allows me to control what applications are accessible by clients.

I use CodeKit to monitor this folder and automatically pre-process/minify/compile the SCSS and JS files to the /public/assets/ folder:

Screenshot 2014-08-29 17.35.40

/lib/
This includes all back-end server-side libraries and stuff I didn’t make myself and don’t want to edit. For example Stripe’s library for payment processing and Twitter’s OAuth library. Libraries are included from this folder by apps in the /app/ folder.

/workers/
This includes all app files that are scheduled and do stuff in the background by cron jobs. Think about sending out email queues or downloading/uploading data on a daily basis, like scraping or backing up files. I guess you could call them agents or daemons too.

/logs/
This includes simple .txt files to log stuff. If I do a scheduled cron job, I usually do it like this:

*** * * * php -f /srv/http/domain.com/workers/doStuff.php > /srv/http/domain.com/logs/doStuff.txt**

This enables me to quickly check up on the result of any scheduled jobs.

/data/
This includes all data used by the app. I actually shy away from using real database systems in the 12 startups. Instead I use JSON text files. Wow. Yes. What a shocker! So this is for example how NomadList‘s data looks. Every text file usually just contains a JSON encoded array of data. The string in the filename is an MD5 hash of what it’s about. With NomadList, that’s the city + state + country name.

So yep very rough. Is this a horrible idea? Sure. But I’m not a programmer and at this scale it’s fast to develop with. If there’s anything I hate more, it’s setting up a database structure. How the hell am I going to know what fields I will want to use? It’s slow and for me it seems super counter intuitive. Especially if you like to code fast.

You can always write a script that puts this in a MySQL/MariaDB/PostgreSQL database later. I’d say if you’re getting sensitive user data though you will want to secure it in a more decent fashion.

My coding style

Except for jQuery, I don’t use any frameworks. Why? Because many times, they just make things more complex. I kind of just write code. I do want to keep things clean and fast though. I like DRY KISSes: Don’t Repeat Yourself and Keep It Simple Stupid. When I need a function or piece of code I already wrote before, I grab it from a previous project. That saves some time.

To-do lists

So how do I know what I’m doing in a day? I used to have serious difficulties getting tasks done. Trello helps a lot. It’s a kan-ban type system that lets you make lists with cards in it. Each card can be a task. You can arrange lists whichever way you want. And you can have multiple boards for different projects. Just go try it now, it’s free and awesome.

I have a particular workflow with Trello. I think I saw somebody else on Hacker News do this and that’s where I copied it from. I have a list for this year, this month, this week, today and now. When I go do something I drag it in to the ‘now’ list. That gives me an immediate sense of action and knowing what to focus on.

When I finish the task, I drag it to the list on the left. This list holds all completed tasks for this week. At the end of the week, I move this entire list out of the ‘to-do’ board to the ‘finished’ board.

Now it’s out of my way. This list is important because it gives you a sense of satisfaction and loose measurement of how productive your week is. And the fun thing is, after a while of doing this, you can go to the ‘finished’ board and see everything you did for the last X weeks. And it makes you feel quite productive and proud of yourself! ^_^

Conclusion

So that’s how I work! Not really special but since many people asked I thought this might help.

Like I said it’s probably not following any best practices. But it works. I actually ship products.

I think the most important thing to remember is that it doesn’t really matter how people do things. When I used to make electronic music, the forums would be full of people asking “which tools do XXX use?” and “which program do you make this bassline with”, and in the end it wouldn’t matter. It doesn’t matter if you use PHP, Node.JS, Ruby or whatever hip new language. Everyone uses different tools and has their own ways and tricks. It’s really about what you’re best, quickest and most comfortable with.

When you are unified with your tools, you can really make anything ^_o

P.S. I'm on Twitter too if you'd like to follow more of my stories. And I wrote a book called MAKE about building startups without funding. See a list of my stories or contact me. To get an alert when I write a new blog post, you can subscribe below:

Subscribing you...
Subscribed! Check your inbox to confirm your email.

2022
18 Sep
This House Does Not Exist
2022
14 Jul
Sam Parr + Shaan Puri asked me about bootstrapping, open startups and lifestyle inflation (My First Million Podcast)
2022
16 May
Thinking and doing for yourself (Life Done Differently Podcast)
2022
10 May
Relocation of remote workers (Building Remotely Podcast)
2022
26 Jan
Money, happiness and productivity as a solo founder (Indiehackers Podcast)
2022
20 Jan
Bootstrapping, moving to Portugal and setting up Rebase (Wannabe Entrepreneur Podcast)
2021
25 Mar
Why I'm unreachable and maybe you should be too
2021
25 Mar
The next frontier after remote work is async
2021
19 Mar
List of all my projects ever
2021
08 Mar
Why coliving economics still don't make sense
2021
14 Feb
Inflation Chart: the stock market adjusted for the US-dollar money supply
2021
10 Jan
I did a live 4+ hour AMA on Twitch w/ @roxkstar74
2020
20 Dec
No one should ever work
2020
10 Dec
Normalization of non-deviance
2020
05 Dec
Copywriting for entrepreneurs: explain your product how you'd explain it to a friend
2020
30 Nov
Entrepreneurs are the heroes, not the villains
2020
12 Nov
The future of remote work: how the greatest human migration in history will happen in the next ten years
2020
05 Nov
Will millions of remote workers become location independent in 2021?
2020
11 Apr
5 years in startups with Abadesi
2020
11 Jan
Twitter giveaways can be hacked to win every time
2019
16 Oct
Lorn - The Slow Blade ✕ Hong Kong
2019
28 Sep
Most decaf coffee is made from paint stripper
2019
12 Sep
The odds of getting a remote job are less than 1% (because everyone wants one)
2019
08 Sep
In the future writing actual code will be like using a pro DSLR camera, and no code will be like using a smartphone camera
2019
29 Aug
Instead of hiring people, do things yourself to stay relevant
2019
28 Aug
Nobody cares about you after you're dead and the universe destroys itself
2019
28 Aug
The only real validation is people paying for your product
2019
05 Aug
Monitoring Bali's undersea internet cable
2019
29 Jul
Nomad List turns 5
2018
29 Jan
I'm Product Hunt's Maker of the Year again!
2018
28 Jan
Why Korean Jimjilbangs and Japanese Onsens are great
2018
24 Jan
Turning side projects into profitable startups
2018
03 Jan
What I learnt from 100 days of shipping
2017
28 Dec
As decentralized as cryptocurrency is: so will be the people working on it
2017
22 Oct
How to 3d scan any object with just your phone's camera
2017
09 Aug
In a world of outrage, mute words
2017
03 Aug
How to pack for world travel with just a carry-on bag
2017
26 Jul
Building a startup in public: from first line of code to frontpage of Reddit
2017
24 Jul
Facebook and Google are building their own cities: the inevitable future of private tech worker towns
2017
21 Jul
The TL;DR MBA
2017
12 Jul
We did it! Namecheap has introduced 2FA
2017
08 Jun
It's about time for a digital work permit for remote workers
2017
23 May
Using Uptime Robot to build unit tests for the web
2017
08 May
Namecheap still doesn't support 2FA in 2017 (update: they do now!)
2017
03 May
Taipei is boring, and maybe that's not such a bad thing
2017
16 Apr
What we can learn from Stormzy about transparency
2017
17 Feb
The ICANN mafia has taken my site hostage for 2 days now
2017
10 Feb
Most coworking spaces don't make money; here's how they can adapt to survive the future
2017
11 Jan
A society of total automation in which the need to work is replaced with a nomadic life of creative play
2017
07 Jan
Nomad List Founder
2016
12 Dec
Make your own Olark feedback form without Olark
2016
29 Oct
How to fix flying
2016
19 Oct
Robots make mistakes too: How to log your server with push notifications straight to your phone
2016
17 Oct
Hong Kong Express - 上海 (Shanghai)
2016
17 Oct
Choosing entrepreneurship over a corporate career
2016
13 Oct
"I can't buy happiness anymore. I've bought everything that I ever wanted. There's not really anything I want anymore."
2016
11 Oct
From web dev to VR: How to get started with VR development
2016
05 Oct
What I would do if I was 18 now
2016
22 Sep
Bootstrapping Side Projects into Profitable Startups
2016
27 Aug
Kids
2016
13 Aug
How I cured my anxiety (mostly)
2016
26 Jul
We have an epidemic of bad posture
2016
17 Jul
Fixing "Inf and NaN cannot be JSON encoded" in PHP the easy way
2016
26 Jun
My third time in a float tank and practicing visualizing the future
2016
15 Jun
How to add shareable pictures to your website with some PhantomJS magic
2016
29 May
My chatbot gets catcalled
2016
19 May
From web dev to 3d: Learning 3d modeling in a month
2016
09 Mar
My second time in a sensory deprivation chamber
2016
04 Mar
Day 30 of Learning 3d 🎮 Cloning objects 👾👾👾
2016
02 Mar
Day 29 of Learning 3d 🎮 Glass, reflectives, HD, coloring and more details
2016
29 Feb
Day 27 of Learning 3d 🎮 Details, details, DETAILS!
2016
25 Feb
Day 23 of Learning 3d 🎮 Filling up the street and adding shadows
2016
24 Feb
Day 22 of Learning 3d 🎮 Added rain, blinking lights, sound, textured menu sign and a VR web app
2016
23 Feb
Day 21 of Learning 3d 🎮 High res textures, physical rendering and ambient occlusion
2016
22 Feb
Day 20 of Learning 3d 🎮 Objects and camera perspectives 🙆
2016
19 Feb
My first time floating in a sensory deprivation tank ☺️
2016
12 Feb
Day 10 of Learning 3d 🎮 Making complex objects by combining shapes 🙆
2016
06 Feb
Day 4 of Learning 3d: @shoinwolfe visits the actual street I'm modeling 🏮😎🏮
2016
03 Feb
Day 1 of Learning 3d 🎮 I learnt how to make shapes, move, rotate and scale them + how to texturize, and add colored lights 💆
2016
02 Feb
I'm Learning 3d 🎮
2016
27 Jan
The things I have to do to read an email sent to me by my government
2016
12 Jan
How to use your iPhone as a better Apple TV alternative (with VPN)
2015
23 Dec
Here's a crazy idea: automatically pause recurring subscription of users when you detect they aren't actually using your app
2015
17 Dec
Stop calling night owls lazy, we're not
2015
16 Dec
We are the heroes of our own stories
2015
25 Oct
There will be 1 billion digital nomads by 2035
2015
21 Oct
Tobias van Schneider interviewed me about everything
2015
18 Oct
Why doesn't Twitter just asks its users to pay?
2015
17 Oct
Punk died the moment we learnt that the world WAS in fact getting better, not worse
2015
15 Oct
Stop being everyone's friend
2015
14 Oct
Vaporwave is the only music that fits the feeling futuristic Asian mega cities give me
2015
09 Sep
We live in a world built by dead people
2015
01 Sep
Why global roaming data solutions don't make any sense
2015
26 Aug
How to export your Slack's entire archive as HTML message logs
2015
24 Aug
How to play GTA V on your MacBook (and any other PC game)
2015
14 May
I uploaded 4 terabyte over Korea's 4G, and paid $48
2015
08 May
How I sped up Nomad List by 31% with SPDY, CloudFront and PageSpeed
2015
04 May
My weird code commenting style based on HTML tags
2015
01 May
Now is probably the time to make HTTPS the default on all your sites and apps
2015
17 Apr
Do the economics of remote work retreats make any sense?
2015
17 Apr
Don't grow up
2015
06 Apr
Calling people "expat" or "nomad" is just as irrelevant as calling internet users "netizens"
2015
02 Apr
How I built Remote | OK and launched it to #1 on Product Hunt
2015
29 Mar
Our society is not in line with our natural reward systems, and alcohol and drug abuse proves it
2015
28 Mar
Makers have become the invisible hand
2015
07 Mar
How technology is shaping our future: billions of self-employed makers and a few mega corporations
2015
22 Jan
We are the orcas at Sea World
2014
31 Dec
Love, Anxiety and Startups: My Year in 50 Tweets
2014
15 Dec
How to backup your Linode or Digital Ocean VPS to Amazon S3
2014
01 Dec
The total chaos that the dawn of the 21st century has become
2014
23 Nov
How I hacked Slack into a community platform with Typeform
2014
05 Nov
How to successfully build a community around your startup
2014
27 Oct
The ideal place to start a startup is not necessarily in Silicon Valley
2014
23 Oct
"If I had this, I would be happy"
2014
14 Oct
This is what happens when FlightFox copies your entire site without attribution
2014
02 Oct
GIFbook, the first animated GIF flipbook
2014
01 Oct
On Thailand's immigration police targeting digital nomads
2014
13 Sep
Why traveling makes you feel lost
2014
02 Sep
How I build my minimum viable products
2014
31 Aug
How I built Nomad Jobs, a remote job board for 100% distributed startups
2014
27 Aug
Danism & Rae - Sirens
2014
16 Aug
How I got my startup to #1 on both Product Hunt and Hacker News by accident
2014
15 Aug
Why does Generation Y feel so lost? And what's the cure?
2014
23 Jul
Bali is the magical voodoo spirit island of Asia
2014
05 Jul
Ideals, fears and the script of life
2014
22 Jun
How to access anyone's Telegram messages without unlocking their phone
2014
14 Jun
The achiever in crisis
2014
12 Jun
How I did not sell my startup today
2014
07 Jun
The free fall that is coming home after traveling the world
2014
02 Jun
Never dismiss your ideals as post-adolescent fantasy
2014
31 May
My 3rd startup: Tubelytics, the real-time dashboard for YouTube publishers
2014
29 May
How Go Fucking Do It raised $30,000+ in pledges in less than a month
2014
24 May
We have an ideologically broken and personally unfulfilling society
2014
24 May
On self-funding startups
2014
22 May
Run through ideas quickly
2014
11 May
If you can't express yourself by email, you're not worthy of anyone's time
2014
19 Apr
My 2nd startup: Go Fucking Do It, set a goal + deadline and if you fail, you pay
2014
18 Apr
Over 2,000 people played their inbox with Play My Inbox
2014
13 Apr
Celebrating my birthday North Korean style
2014
02 Apr
How Automation Left Us Feeling Empty
2014
09 Mar
Play My Inbox, collect music from your inbox and playlist them
2014
01 Mar
I'm Launching 12 Startups in 12 Months
2014
14 Feb
How to protect your backups from solar flares with a faraday cage
2014
06 Feb
Linkoban - Oh Oh
2014
05 Feb
Nationality is an accident of birth
2014
18 Jan
How I Went From 100 To 0 Things (Or How I Was Robbed of All My Stuff)
2014
04 Jan
All Watched Over by Machines of Living Grace
2013
31 Dec
Celebrating NYE 2014 in Hong Kong
2013
30 Dec
How I ended up in Hong Kong (or my adventures in the New York of the East)
2013
28 Nov
It's practically impossible for regular people to buy Bitcoin
2013
27 Nov
2014 is the year techstep drum and bass makes its comeback
2013
25 Nov
Rinse FM, here's your podcast feed we've always wanted
2013
23 Nov
How I travel the world with just a carry-on bag
2013
23 Nov
How I spent the night with Singapore's migrant workers
2013
22 Nov
Why I want to live in Singapore
2013
21 Nov
How I predict Bitcoin's price by tracking Twitter mentions
2013
04 Nov
James Blake & Chance The Rapper - Life Round Here
2013
03 Nov
Sasha Keable - Careless Over You
2013
30 Oct
My not so great time in Vietnam
2013
27 Oct
Wiley - And Again
2013
27 Oct
The myth of a globalized world
2013
19 Oct
Remote working is the future
2013
19 Oct
What happens when you're #1 on Hacker News for a day
2013
14 Oct
Steve Summers - New Surroundings
2013
12 Oct
What I learnt from bootstrapping my startup from Thailand in six months
2013
11 Oct
Palms Trax - Equation
2013
11 Oct
Cash means controlling your own destiny
2013
24 Sep
You're just a piece of a heartless shitty machine that makes money
2013
16 Sep
Automation Will Free Us From the Endless Consumption/Production Cycle We're In
2013
16 Sep
National Borders Have Become Irrelevant
2013
04 Sep
A Culture of Distraction is Not The Problem
2013
20 Aug
Governments are always ready to grab the greatest degree of power that the people will give them
2013
17 Aug
You constantly need to be painting or it looks like total crap
2013
09 Aug
Oversight: Thank You For Volunteering, Citizen
2013
07 Aug
Stripe launches beta in the Netherlands
2013
22 Jul
Google+ spamming people every 2 weeks to put up a profile photo
2013
20 Jul
The 100 Thing Challenge – From 200 to 20 things in 3 months
2013
17 Jul
Living in a Hotel
2013
16 Jul
The Story of my Visa Run to Tachileik in Myanmar
2013
16 Jul
This is what "acting professionally" results in
2013
08 Jul
Lockah - Sly Winking Usury
2013
30 Jun
Stand-up comedians on creativity
2013
24 Jun
With jobs gone, will robot owners pay people's income?
2013
24 Jun
Money as an enslavement method
2013
19 Jun
Make money where prices are high, spend it where prices are low. Does income arbitrage work?
2013
16 Jun
Finding an apartment in Chiang Mai
2013
13 Jun
Add HTTPS to NGINX for free and help make the world more secure
2013
11 Jun
Co-Working Spaces in Chiang Mai: PunSpace
2013
10 Jun
Moving to Chiang Mai
2013
04 Jun
My Bad Day At The Co-Working Space
2013
03 Jun
If it's in the news, don't worry about it
2013
29 May
The 24-Hour Coffee Place in Bangkok: Too Fast To Sleep
2013
28 May
Nosaj Thing x Chance the Rapper - Paranoia
2013
23 May
"There simply are no other fields in which I can spend $100 tomorrow and set up a new business..."
2013
21 May
"Speaking as a graduate of one, top schools teach you credentialing and ladder climbing..."
2013
17 May
Visiting Koh Samui, the island of paradise
2013
05 May
From dive bar to roof-top bar to roof-top pool in Bangkok
2013
02 May
"To awaken quite alone in a strange town..."
2013
01 May
Co-working spaces in Bangkok: Launchpad
2013
24 Apr
The 100 Thing Challenge
2013
24 Apr
"Do whatever you're drawn to"
2013
23 Apr
Co-working spaces in Bangkok: Hubba
2013
22 Apr
Reset your life
2013
09 Mar
OSX Terminal Tricks
2013
09 Mar
OSX for Windows users
2013
09 Mar
How I switched from PC to Mac in less than 7 days
2013
21 Feb
Black Mirror is the best TV series I have seen in years
2013
20 Feb
Why overnight success is a myth
2013
20 Feb
Constraints make people more creative
2013
13 Feb
Kitty Pryde & Riff Raff - Orion's Belt
2013
13 Feb
Dedicating our lives to what is essentially an organization to make money
2013
11 Feb
Watch The Pirate Bay: Away From the Keyboard
2013
16 Jan
My new music video for rap duo RASA
2013
14 Jan
What if money was no object in your life?
2013
03 Jan
Why attention to detail matters, even if no one notices the details
2013
03 Jan
In the 21st century, Maria Montessori shows to be more relevant than ever
2012
30 Dec
Unless the job itself is your dream, stay the fuck away from salaried jobs
2012
30 Nov
Success is One Big Hoax
2012
18 Oct
The death of the corporate drone
2012
13 Oct
The West's unemployment problem is permanent
2012
04 Oct
New Panda Mix Show branding and website
2012
29 Aug
Headhunterz - Power of Music
2012
21 Aug
Essendle interview on my music and my YouTube show
2012
07 Aug
The XX - Angels
2012
02 Aug
Spenzo - Ova
2012
02 Aug
Anna Lunoe & Diamond Lights - Stronger (Willy Joy Remix)
2012
10 Jul
Herve feat. Ronika - How Can I Live Without You (Make it Right) (Death Rose Cult Remix)
2012
09 Jul
Pheo - Nyquil
2012
05 Jul
I love minimalist living
2012
05 Jul
Why buying YouTube views is bad
2012
05 Jul
Citizen - Deep End
2012
03 Jul
D!RTY AUD!O intro
2012
01 Jul
Anybody can monetize their passion (now)
2012
28 Jun
Diplo - No Problem
2012
27 Jun
Skream - Thoughts of You
2012
21 Jun
TEED - Blood Pressure
2012
19 Jun
Today is the first day of the rest of your life
2012
17 Jun
Happiness maximization vs. profit maximization
2012
16 Jun
Music genres are dead
2012
15 Jun
Make a great product
2012
15 Jan
Rasa - Noem 't Wat Je Wilt
2011
23 Dec
Rasa - Hard & Soul
2011
15 Nov
Earth