I’d like to officially welcome into the world the newly legal entity known as Full Stack Research. I’m launching this little company with no more fanfare than this blog post, but I look forward to pushing out more news in the coming months and years as it gains momentum. While my consulting business has been doing just fine, I am very aware of the flaw in that business model, which is that my time is a finite resource that does not scale.
I’m not expecting Full Stack Research to be too much of a departure from what I’ve been doing as an independent consultant, but I feel like a new name is warranted given my desire to focus more on creating scalable research products, and the fact that I am doing so in partnership with some of the smartest people I’ve had the pleasure to work with.
If the best way to achieve success is to start with modest expectations, I consider this a triumph from day one!
When yet another friend asked me “is coding bootcamp worth it,” wondering whether they should learn to code too, I found myself giving a very long and convoluted answer that I realized would probably be better off written down. I know that before I signed up for bootcamp, I had trouble finding a straight answer myself. So, my answer is: Yes, but…
1. Upon graduating, be prepared to be a specialist of limited use or a master of little
Building a decent software app is kind of like building a house. The electrician knows very little about installing plumbing or sewage. The roofer probably can’t lay the foundation. A software app combines lots of independent skills. As a developer, you have to make a choice whether to be a decent plumber right away (focus on one thing) or be a general contractor, and know a little bit about everything, but not really be expert at anything for a very long time.
2. It takes a huge amount of time
This may seem laughably naive to long-time software developers, but I don’t think regular people realize the sheer volume of information a person needs to absorb in order to be even a mediocre developer. To be a decent coder, you need to learn three to six code languages and be able to read and write them with some fluency. Code languages are just as hard to learn as, say, a European language. If you wanted to learn to speak French, German, Spanish, Italian, Greek, and Portuguese all at once, would you try to learn them all in four very intense months? No? Because that is essentially what I tried to do.
My bootcamp was four months, or sixteen weeks long, with five hour classes every weeknight (fridays too). To keep up with the pace of the class, I had to read coding books, do online coding exercises, and write code for my class projects outside of class. When you add in all that study/coding time outside of class, it added up to about fifty hour weeks spent coding. In other words, it’s about as difficult as a mentally demanding full-time job.
I was freelancing and working part-time, and I was completely brain-fried and had no social life during those four months. I felt incredibly sorry for my fellow students who had full-time jobs on top of school. I watched them put on weight and grow increasingly haggard by month four. We all agreed we were seeing ones and zeros in our dreams.
3. It’s expensive
I’ve heard people say that coding bootcamp is a waste of money since you can teach yourself everything online for free. The thing is, even in coding bootcamp you’re still teaching yourself to code, and you’re still using those free resources. The difference is that in bootcamp you have an experienced developer guiding you and a structure that limits the complexity and chaos of coding. Realistically, a coding bootcamp is just going to take months 6-18 of your coding education and compress them into months 6-10. What is the price for 8 months of your life? That’s really up to you. I spent $3,400 on tuition, and that seemed like a bargain to me. If you have more time than money, by all means, figure it out on your own.
4. The hard way is probably the only way
Zed Shaw’s “Learn Python the Hard Way” is generally considered the best course for those trying to teach themselves Python. He intentionally makes the course difficult. When a piece of code doesn’t work, his answer is “Google it”. Realistically, learning to code is as much about rote memory as it is about training yourself to be patient and resilient. You have to first spend lots of time practicing writing code so that you can memorize and internalize the patterns. However, that’s the easy part. The hard part is figuring out what to do when you think you’ve done everything right and your code still won’t run correctly. It’s easy to copy and paste someone else’s code. It’s hard to know why it isn’t working in the context of your project.
I heartily recommend going all-in. The more time you can invest, the better. I spent 50 hours per week, but I recommend spending 80 hours per week the first few weeks you’re learning. Mix it up, and read books on coding, then go to online practice sites like Codecademy.org or Treehouse.com, then write some actual code. Every program does something different, so when you’re done with one, write another one. Tear apart an old program you wrote and write it better. Like playing the violin, the more you practice, the more you’ll internalize the skill. If you want to learn quickly, the only way to do so is to devote yourself.
5. Pick your language carefully
Back in high school I decided to learn Italian. In college, I took Japanese. Not to knock these languages, but I use them so rarely I’ve forgotten most of what I learned. In retrospect, I really should have learned a practical language I can use all the time like Spanish. Picking a coding language works similarly.
Before you pick a flavor, know that everyone needs to learn HTML and CSS. Before you even think about enrolling in a bootcamp, teach yourself these languages. Once you can construct a static HTML page writing raw HTML and CSS code and get it up on a server, you’re ready to pick a path.
You will need to figure out what you want to do with the software you write, and which language will best support that task. If your primary goal is to make a lot of money right away, you could learn the languages that high-salary finance companies use, like Scala, Java, and .NET. If, on the other hand, you want to work at a hipster start-up, learn Ruby, Python, or C++. It’s not a bad idea to look at the job postings for the companies you want to work for first to see what they’re asking for.
Once you pick a language, then you have to pick a version of that language. New versions will be relevant longer, have cleaner code and do some cool new stuff, but old versions are more stable and have more libraries built for them. Every choice is a trade-off, and nothing will work 100% of the time.
6. Get used to frustration
One of the most profound things my teacher told our class is that we weren’t really learning to code, we were learning to debug. As normal consumers, even tech power-users, we’re used to stuff just working. Restarting a computer once a month to update some software seems like a huge hassle. Well, guess what, programming is about 10,000,000x more annoying. The code you write that works great locally won’t run on the server. Why? Who knows. And to find out, you’ll need to individually tweak each of the fifty things that could be causing a glitch until you figure out the cause, and when you finally fix that thing, your fix will probably break something else. That is coding.
Have you ever punched a hole in a wall, thrown your phone across the room, or (egads) sent a computer tumbling? If so, coding is not for you. But if you’re still with me, you must be a mellow individual that can handle frustration without smashing a screen. You have the calm demeanor to simply copy error messages, paste them into google, and spend thirty minutes reading five different and contradictory stackoverflow.com suggestions, trying three to find that the first doesn’t work with one of the drivers your app has running in the background and produces new errors, the second actually does the wrong thing, while the third sort of fixes your problem, but forces you to update some other seemingly unrelated part of your code for it to work.
When I was learning to use git and github, I was stoked to find out about the ability to clone projects in github and add them to my own. Similar to code libraries, you can just grab someone else’s code and incorporate it into whatever you’re working on. Sounds easy, right? So after weeks of work, customizing the clone with all my own code, I decided I would create a git repository and upload my project back to github, so other people could see my work. But, when I tried, there was a weird error telling me I had duplicate repositories. I hopped on stackoverflow, followed the directions I found, and… erased all my work. Yes, while attempting to back up my project, I erased it, all by following directions. It turns out, when you clone code from github, it automatically creates an invisible repository. This is just a thing you’re supposed to know, and since I didn’t know I had created a repository at the time I downloaded the clone, I didn’t understand that by resetting my repository, I would wipe out all changes made over the weeks since I added it. Want to know what I did? I sat down, and calmly spent the next three days recoding all my work from memory. And THAT is what coding is like.
7. Get used to very little help
I had a boss who once described his management style as “handing you a fortune cookie, then leaving you alone in the woods.” It turns out this was good training for coding. Most tutorials tend to fall into one of two types: those meant for week 1 beginners that are far too simplistic to be of much use, or those that are written by experts for other experts. These experts have been coding for decades and will intentionally leave out steps they find to be obvious (you will probably not find the missing steps so obvious). This is actually a big reason why I signed up for bootcamp, and why I recommend it. It is incredibly helpful to have someone around to fill in all those missing pieces for you and help guide you during that intermediary phase.
Much to my surprise, living a mostly digital life, coding books (made from trees!) are actually extremely helpful once you’re done being a beginner and get to the novice/intermediary phase. They provide a coherent level of structure that is hard to find online, and are good for reference when you forget something specific. However, they still assume a basic level of know-how that will constantly trip up the novice developer.
8. Bootcamp is just the beginning
The point I’m trying to make is that bootcamp is a great way to kickstart a career change, and really a life change, but your first job out of school is probably going to be entry level, because your skills will only be entry level. If you make less than $50k now, you’ll probably be able to make that much or more with an entry-level software job after going through a bootcamp program. However, expecting to be a full-fledged software developer making six figures and signing bonuses after a four month program is sort of like expecting to be a successful novelist after a summer creative writing program.
9. Learn to learn
The most important thing bootcamp taught me was how to teach myself. Learning to debug, see patterns in my mistakes, and knowing where to go for answers was absolutely worth the time, money, and effort. I am continuing my education by taking classes through Udacity, Coursera, Codecademy, Udemy and whatever other books or online tutorials make sense. I also continue to meet with my bootcamp teacher for mentoring. I’m still doing difficult stuff, but the pace of my learning is continually speeding up. While it may take a novice coder months to learn a language, an experienced coder can probably pick it up in a few days (or so I’ve been told). This virtuous cycle will continue the longer you code, but you have to keep at it for years.
10. Always be building
You get the idea. Now go code something. And remember…
The best time to plant a tree is 30 years ago. The second best time to plant a tree is today.
I’ve been an Adobe loyalist for far longer than most of my developer buddies, but after seeing yet another $49.99 charge for Adobe Creative Cloud after another month of not really needing it, I finally decided to just kill my subscription and use other programs. At least, that’s what I thought I’d do. First, I clicked through about twenty screens, following the digital bread crumbs from click to click to attempt to find a screen that would let me cancel. I finally landed on a page that gave me two options, A) call and talk to a human, or B) chat with a human. No simple unsubscribe box. I tried calling first, but the person I spoke to could find no record of my existence. Next, I tried chatting. Spoiler alert: despite my best efforts I am still an Adobe customer.
Prabhudev: Hello! Welcome to Adobe Customer Service.
Prabhudev: Hi Timothy, I understand that you wish to cancel your subscription and I can take care of that for you.
Timothy McAtee: yes I’d like to cancel my account
Prabhudev: May I know the reason for the cancellation?
Timothy McAtee: I don’t use it
Prabhudev: I see that you have subscribed to Creative Cloud membership (one-year).
Prabhudev: We are sorry to see you go, If you are willing to continue the subscription and complete the annual commitment I can get you 2 months free subscription and you will not be charged for the next 2 months.
Timothy McAtee: Please just cancel the subscription
Prabhudev: Before I go ahead and cancel your subscription, May I ask if you are interested in continuing your plan if I make an exception and get you next three months free?
Timothy McAtee: Please stop. Cancel it.
Prabhudev: Timothy, I am sorry to say this, If you cancel the subscription now there will be an early termination fees, as you are under one year annual commitment.
Timothy McAtee: But I signed up more than a year ago
Timothy McAtee: What is the fee?
Prabhudev: An annual subscription requires a commitment for the full year and monthly payments. If you decide to end a one-year membership before the 12-month period is over, you are charged 50% of the remaining amount left on your contract. Which amounts USD 200+Tax.
Timothy McAtee: When is the 12 month period over?
Prabhudev: Your plan will end on Jun 26, 2016
Timothy McAtee: Well then, cancel it effective June 26, 2016
Prabhudev: we will notify you via email so that you can cancel from your end. [NOTE: I clearly can’t cancel it from my end, or I would have by now]
Prabhudev: Do you wish to continue your plan with three months free and complete the annual commitment?
Timothy McAtee: You don’t really give me much choice, do you?
Prabhudev: If you continue the subscription you will get next three months free and you can save 3 month’s subscription charges, you will also avoid paying the early cancellation fees.
Timothy McAtee: ok. let’s do that.
Prabhudev: I am glad that you are continuing your subscription
In May of 2015, my wife and I bought a small (tiny, some would say) 3-acre horse property on the edge of Portland, Oregon. We’re bordered on two sides by butte cliffs, in one of the few agrarian valleys inside the city limits that remain untouched by development. Many friends have wondered why a city kid like me would do such an odd thing. I’ve heard assumptions that my motives are naive, utopian, or even dystopian. But, I can assure you the scheme that led me to owning adorable animals and digging in the dirt are as cut-throat and capitalist as any Manhattanite’s designs on a rent-controlled pre-war apartment.
It started with a question: how can I afford to fail, to make stuff that nobody wants to buy? Taking a quick look at my finances, housing stood out as my biggest expense. That led to another question: what if I can live in a house that pays for itself? It occurred to me that if I could live in a home that is also a business, I could take the time to go back to school, learn new skills, build software, write books, and maybe even start a company…in other words, I’d be free to fail. By eliminating the neccessity of working to pay the mortgate or rent, I’d be able to work on whatever I want, or not work at all, right? That was my theory, at least.
I started looking at apartment buildings with an eye on becoming a landlord, but the buildings I could afford in the places I wanted to live tended to have an intimidating number of problems with them. Next, I looked at big rural farms, the kinds of places with orchards and fields full of crops, but upon crunching the numbers, it became obvious pretty quickly that low-margin crops require a huge amount of work for very little profit, and (at least in Oregon) zoning laws make it very difficult to use the land for anything more profitable than farming or ranching. I took it for granted that if we bought 30 acres, we could host weddings or rent out a cabin on AirBnB, but zoning laws in most Oregon counties forbid them. You know those tiny houses that get so many likes on Facebook? Turns out they’re illegal in most places. Finally, we looked at small farms closer to urban centers. Zoning near Portland is much friendlier to AirBnB operations, anything you grow can be sold directly to consumers at relatively high prices, and getting people to come to your property for events gets easier the closer you are to the city. Looking at profit margin, life-style, and initial affordability, a small urban farm made a lot of sense.
Now, I have to admit that there is big upfront cost, and no guarantee that I’ll recoup them. I’m building out a guest cottage, planting trees, painting the barn, building fences, building a chicken coop, buying animals, etc… And, I’m working harder than ever doing a lot of this upfront work myself. It is physically demanding work, shoveling, hauling heavy things, covered in dirt, and most nights I fall asleep exhausted. However, I have plenty of time for freelance work, and (if all goes as planned) it will only be a few more months before the income the farm generates will pay the mortgage (while feeding us like kings).
Once I get to that tipping point where my home becomes a profitable business, I won’t really need a job; I can finally hop off the tread-mill of having to work a full-time job just to pay the mortgage. That said, I’ve never worked harder in my life, and don’t see the work slowing down any time soon. Instead of mindlessly surfing Facebook to while away a slow afternoon in my cubicle, the moment my computer work is done I’m out in my wood shop. When everything I do is an investment in myself, it’s easy to work all day and not feel burnt out. Early morning emails and conference calls mean happy East Coast clients for my business. Working in the mid-day sun out in the pasture means increased equity and income for my farm. Working late nights writing tricky code is an investment in my own skills and the IP of my company. I feel like I used to be a consumer, but have turned into a producer, and it feels good.
Ironically, by giving myself the space and permission to fail, I finally feel like I’m succeeding.
My wife and I knew we wanted to travel, and with about $10,000 in the honeyfund account we set up in lieu of a wedding registry, we had enough for a pretty epic honeymoon. I, however, like to stretch the limits of possiblity. Why have an epic two-week trip when we could stretch it out into an even more epic six month trip? All we had to do, I reasoned, was spend our money wisely and work a little while on the road.
Now, just for perspective, $5,000 per person (what we had in the honeyfund) is about what a normal American might spend for a nice trip to one or two European countries, including airfare, hotel, ground transport, entertainment, drinks, and meals in restaurants for two weeks. We managed to travel to dozens of cities in seventeen countries across four continents and went all the way aorund the globe. Here’s how.
1. Control your expenses
My two biggest expenses were my apartment and my car. So, I got rid of them. I sold the car and house. The reason to sell your things is not to use that money for travel (put it in a savings account and don’t touch it!), but to stop having to spend money on a life at home you’re no longer living. Without a mortgage, utility bills, car payment, or car insurance, my monthly bills dropped from thousands to hundreds, which freed up a lot of money to travel with. We put all our stuff that we didn’t sell in a month-to-month storage warehouse, which only cost $120/month, and I paid the bill each month via PayPal from wherever I was at the time. If you want to do a short trip, try renting out your car and/or home (just be really careful you don’t invalidate your auto insurance or lease in the process). If you rent your home or lease your car, you probably can’t legally sub-let them, which is why I highly recommend that you…
2. Travel longer
Getting rid of or renting out your home is more hassle than it’s worth for a short trip, but is worth it if you want to travel for many months or even years. If you do a longer trip, you only pay for the bed you’re sleeping in, and not the bed you left behind at home. By paying for one bed to sleep in instead of two, you avoid doubling your daily expenses.
If you’re working part time and earning income while you travel, that’s time you won’t be able to spend out and about in your new surroundings. If you’re working half the time, spend two or three times as long in each place as you normally would.
3. Maximize your income
By working while you travel, you can live on your earnings instead of your savings, which is definitely preferable. Arranging a job you can do while traveling is tricky, however. Getting a job with a foreign company will just tie you down all over again, assuming you can even get a work visa and decent wage.
To keep working while you travel, it’s best if you can keep a job you already have. This takes some time to set up and a little luck, but it’s doable. If you are able to do your job remotely (online or over the phone) from your home while living in the US, there’s no compelling reason why you can’t just keep doing that job from a different country. The only hard part is getting whoever is paying you to believe this. If you are able to get set up with some sort of online business before you go, that would definitely be the best way to do it. If your current job can’t be done remotely, try getting a part-time job as a virtual assistant either on your own or through a company like Zirtual.com a few months before you leave, then keep it while you travel. Just be prepared to work US hours when overseas. This might mean working in the middle of the night, however, the upside of working nights is that you have your days free to explore whatever country you happen to be in.
If you happen to be a computer programmer, you can find all sorts of interesting jobs that can be done from anywhere. remoteok.io is a good source, and is curated by Pieter Levels, the guy who runs nomadlist.com, which is another good resource for globe trotting techies.
I essentially out-sourced a job to myself. My company needed to hire someone with very specific computer and research skills but was having trouble finding that person, so I quit my full-time job as a VP managing staff, then in the same meeting asked my boss to hire me back as a freelancer doing this other job that could be done entirely online and over the phone. This was a big gamble, since they could have said no, and they could have ended my freelance employment at any time while I was traveling. I assumed the arrangement would last about three months and budgeted for that, but it lasted eight months before they found a full-time person to take over the job. In other words, I was employed the entire time I was traveling, which meant I never had to dip into savings and could pay “rent” (a.k.a. hotel and airbnb) and “car payments” (a.k.a. planes/trains/rental cars) out of my monthly income, just like I would any normal month living at home.
4. Spend money upfront to make working on the road easy
It is amazingly easy to work from anywhere in the world if your job is done on a computer, but you need to invest in a flexible mobile hardware and software set-up that is fully backed up to the cloud should your gear get lost or stolen. I used a MacBook Air (running Windows as a virtual PC with VMWare, Adobe Acrobat Pro to “sign and scan” documents digitally, and Dropbox for full back-ups) and an unlocked iPhone.
I got a global data plan from AT&T, which allowed me to answer calls, tether my computer, or quickly respond to emails anywhere in the world. To avoid burning through too much cellular data, I would do most of my backups over hotel wifi and would often use Skype for calls or video chats and screen-sharing. It was necessary to have the option to tether my computer to my phone and use cellular data, or use wifi, since cellular data gets expensive but wifi isn’t always available. With both options available, it was truly rare that I had trouble getting online as long as I stayed in decent sized cities. Just like in the US, however, once you get out into the countryside, finding a cell signal gets a lot harder. When choosing between that mountaintop Tuscan villa or a Parisian loft, exchange a few emails with your hosts first to see what the cellular phone, cellular data, and wifi situation is. I learned the hard way that many hotels “with wifi” only had it in the lobby. AirBnB hosts, on the other hand, tended to have great wifi right in the apartment.
I found the global data plans offered by US carriers to be underpowered and/or expensive, and any normal user will burn through their allotment of data very quickly. So, before I left, I unlocked my iPhone, which meant I could swap out my AT&T SIM card and get on a network anywhere in the world. When I landed in a country, I would use my global data plan for the first day (mostly for Google Maps, Facebook check-ins, and translation apps), but then quickly find a local cell phone store and get a new SIM card. Deals will vary by country and carrier, but I would usually pre-pay for 5 to 50 gigs of data, whatever about $50 would buy me. Once you have your local data plan, you can forward your US cell number to a Skype number, and answer or make calls on the mobile Skype app.
5. Make your bank accounts globally accessible
First, establish a “home” setup that works for paper mail. It’s important to make sure you set up and maintain a US-based home address while you’re traveling, particularly if you are working on the road. Ironically, you can’t get a global cell phone plan, global bank account, or travel insurance without a home address. You can pick a mail service, or a relative’s house, but you have to have a US address to send paper bills and checks to (and so the state and federal governments get their cut of your taxes since you’re still a US-based worker, remember?). Make sure someone you trust is there to open your mail in case something important shows up. If you can, arrange for pay via direct deposit before you leave the states.
Next, make sure you can access your cash wherever you are in the world. I opted for a Schwab Checking account, which allows you to get cash out with no foreign fees or ATM fees, anywhere in the world, and got a credit card with no foreign transaction fees, and pin and chip functionality. Make sure to call all your banks and credit card companies the first of every month to let them know when and where you will be traveling over the next month so they don’t shut down your accounts because of a fake fraud trigger. It’s also a good idea to use one card for your recurring bill payments, and a different card for everyday purchases. That way if you lose your everyday card and need a replacement, you won’t have to update the card on file with every auto-pay account.
6. Pay for travel with travel on credit
There are lots of points systems out there, but we opted for the Chase Sapphire card. It has a chip and pin, which means you can use it just about anywhere in Europe (they will not accept swipe and signature credit cards most places), it has no foreign transaction fees, and you get double points for buying anything travel related, which means that if you book all your travel for the first half of the trip on the card, you will quickly earn enough points to travel free for the second half of the trip. We paid for all our travel on the card up until we got to India (half-way around the world) but booked all our flights from there on out with free miles. Also, if you have to stay in hotels, try booking through hotels.com, since they will give you one night free for every ten nights you book through them. Sure, you could use a hotel rewards program like Starwood or Marriott, but that will really limit your experiences abroad, which completely defeats the purpose of travel.
7. Stay safe for cheap
American health insurance is really expensive, but travel insurance is actually quite cheap. If you can, get rid of your US health insurance and get travel health insurance. We got a plan through WorldNomads.com that was super-cheap and covered us anywhere in the world. It even covered our belongings if they were stolen. If you read the fine print, however, there was a big catch with the travel health insurance plan we got. It would not cover us in the event that we injured ourselves while under the influence. Make sure to read the fine print!
When you return home, you will probably want to get a new US-based health insurance plan, but this can be tricky. Open enrollment periods only happen during November to January, which means if you get back from your travels in June you’re stuck without insurance until January 1st. A good way around this is to plan ahead to make sure you have what’s called a qualifying life event. Qualifying life events include marriage/divorce, getting a new job, and (very helpfully for the traveler) moving to a new state. If you lived in, say, New York, and set your parents house in Ohio as your permanent address while traveling for six months, then go back to New York and change your permanent residence back to New York, then you technically just moved from New York to Ohio, then back to New York, which is a qualifying life event. Don’t hate the player, hate the game.
Another loophole I found in travel health insurance is that it will cover you until you get within 100 miles of your home. However, your home is just where your stuff is and where your mail goes. Upon returning to the states, if you sublet a place more than 100 miles from “home”, then you’re technically still traveling and can be covered by travel health insurance while in the USA.
8. Live like a local
At the time of our travels, we found AirBnB locations to be common throughout the world, though more prevalent in big cities and more developed locations. In destinations like London or the south of France, hotel prices tended to run upwards of $300 per night, but renting someone’s apartment on AirBnB was roughly $80-$120 per night, came with wifi, laundry, a kitchen, and was in a neighborhood full of locals instead of tourists.
Having a kitchen will save you a lot of money over a six month period, since you can shop at the local grocery store and cook for yourself. In my opinion, exploratory eating is one of the best parts of being in a new place. It may take a week before you find the best local market, but haggling in the market for fresh meat and veggies, or inviting new friends over for a dinner party, are some of the most rewarding experiences you can have as a traveler. If you want to speed up the process, spend a little money on a cooking class the first or second night you’re in a new place, then grill your teacher for info on where to shop and where the best non-touristy restaurants are. Cooking classes are a great way to get educated on the local cuisine while making friends.
The TripAdvisor app is a great way to find cooking classes with high ratings and reasonable prices. It’s also a good way to find tourist-friendly businesses in smaller towns. However, in big cities, the app will steer you towards the same sights everyone else is waiting in line to see.
When getting around, find out how the locals do it. Most cities with trains have smartphone apps you can use to navigate them, or come pre-loaded on Google Maps, which can really help when navigating a strange system. Taking the train or bus usually costs a fraction of what you’ll spend on cabs, and many cities have “tourist passes” which offer unlimited rides for a week or a month. Just budget lots of extra time at first so you can figure it out, and don’t be afraid to ask for help. Save all that cab fare money for the 2am trip home from a bar or the frantic dash to the airport for an early flight.
9. Travel to the deal, not the destination
Europe and Asia are full of discount airlines that offer cheap local flights. If you’re flying from the US, try booking your initial one-way flight to an interesting city that is also a big airline hub, like Copenhagen or London. Scanning the European flight deals, you can find dirt cheap flights from these cities to destinations all over Europe and Asia.
We used an app called SkyScanner, and very rarely booked our flights more than two weeks in advance. With SkyScanner.com, you simply put the dates you want to travel, and the city you are starting from, then it will list out every flight leaving from that city to every location around the world, in order of price. Perhaps Aix en Provance wasn’t initially on your radar, but you see on SkyScanner that there’s a $50 flight from Copenhagen. Book it! Then, figure out where you can go to cheaply from Aix. Check the local train systems for deals too. Just Google “French Train” or “Spanish Train” and you’ll quickly find the local websites (SNCF in France, RENFE in Spain, etc.). Be advised that each country has it’s own system, and you’ll want to book based on the country you’re leaving from. Train deals will be scarce during the prime summer vacation months, but you’ll find lots of deals during the fall and spring off-season. Sure, you could buy a Eurail pass, but you’re really unlikely to save much money, and then you’re locked into train travel and can’t hop on the $80 last-minute flight to Morocco.
One caveat, before you book that last minute flight to Russia (or anywhere else), check the US State Department website to see what the visa requirements are. It’s no fun arriving in a new country only to be put back on the plane and sent home because you don’t have the required visa. We went to considerable trouble to get a tourist visa for India before we left the US.
10. Stay longer in each city
Spending two weeks in a city might feel like a luxuriously long time, but trust me, it will take a week and a half just to feel like you have the place figured out, especially if you’re stuck working on your computer for three or four days at a time. I highly recommend spending four weeks or more in big cities, and two weeks or more in small towns.
By moving less, you save a lot on airfare, you’ll find more locals-only deals, you’ll make more friends, and you’ll have a much more authentic experience. If you insist on excitement, try booking a different AirBnB apartment every week in different neighborhoods. That way you can cover much more ground around a city and really get a feel for the difference between the laid-back residential neighborhoods and the up-all-night trendy urban neighborhoods. Or, slum it one week and go posh the next. The point is that you can travel to very different experiences with just a $2 train fare.
If you find a place you really like, stay or come back. If the place you scheduled three weeks in is terrible, leave. Most hotels will refund a cancelation up to the day before you booked, and when booking AirBnB homes, you can set the search parameter to exclude locations with strict cancellation policies.
This list is certainly not comprehensive or static. The world is a quickly changing place, and you should do your own research before blindly trusting anything above. I will readily admit that this advice is meant for neither the budget traveler or the luxury vacationer. What I hope is that this helps people in a middle-class situation similar to my own realize that travel can be a comfortable way of life, rather than just a break from life.
It is a very surreal thing to see yourself on the evening news. I knew going into this that news editors have a tendency to take 15 minutes of intelligent discourse and then use the 15 seconds where you sound like a complete moron, so I was kind of dreading seeing this. It turns out that it’s not too alarmist, though they do still take the whole BIG BROTHER IS WATCHING YOU angle. I think what people are really afraid of is that they don’t know how data collected about them is being used. There’s very little transparency when you walk into a store or swipe your credit card around what data is being collected or the ends to which that data will be used. I think if businesses were more up-front about the trade-offs and benefits to consumers, they’d be more comfortable with new tech. I’d love to see businesses actively create more accessible messaging about the data they collect and how it benefits their customers.
The limiting factor in furthering our understanding of how stuff works is often our own biology. We need technology to bridge the gaps our brains aren’t designed to manage. Our brains are amazing at doing certain things, like filling in perception/knowledge gaps with memories and best guesses, but ask someone to listen to two songs simultaneously or make a decision based on more than twenty simultaneous variables and you start to see the brain break down.
For the last few hundred years, media technology has mostly been focused on supplying people with information like facts, figures, stories, parables, and other linear forms of information that are easy for a normal brain to digest. In the age of the internet, filtration of all this information has become the main challenge, and technologies from TV Guide to Google to Pandora have done a pretty good job of it. The technological challenge that remains, however, is cognition and understanding. Where is the machine that helps me understand how weather affects daily life, from alcoholism rates to the type of cloth preferred by climate? Sure, there are studies that pick apart the macro data to focus on micro issues, but they’re inevitably a kludge of imperfect data analyzed by programs designed to simplify complex issues into bullet points our brains can handle. I don’t think that’s good enough.
We now live in the era of big data. Everything is out there, but we don’t really know what to do with it. We are not literate in data, and for most people, thinking about a problem in terms of raw data rather than outcomes and conclusions is a difficult exercise. I love Malcolm Gladwell’s book Blink because it gave us a peek at the problem. To paraphrase, there are two parts of your brain–the part that thinks and is reading this word and sounding out the vowels and consonants in your head, and the part that reacts and subconsciously comes to conclusions. The part of your brain that thinks is wired to assume that the subconscious part of your brain is making good decisions when it reacts, but Gladwell questions this. Do you really have enough good data stored away in the recesses of your memory to make good “gut” decisions?
To determine the quality of a decision, you have to know whether there is enough data, and whether the data itself is correct. Data analysts refer to the problem of low quality data as “garbage in, garbage out.” Think about your subconscious as a database kicking out statistics. If you grew up in a big city and every gun shot you ever heard was criminal violence, your “gut” will produce a statistic that says 99.9% of the time you hear a gun shot, something illegal just happened. If, however, you grew up in a rural area where hunting is normal, you would have a very different data record in your brain. Your database would say that 95% of the time if you hear a gun shot it’s probably just a hunter. That city person would assume the wrong thing if they went to the country and heard a gun shot. Their gut would mislead them, not because their internal data was incorrect, it was simply incorrect out of context. That person’s internal database wouldn’t be big enough to produce a correct “gut reaction” all the time.
This is where most of the books out there on the subject end (Blink, Predictably Irrational, Subliminal). They simply want us to be aware that our gut reaction is capable of being wrong when we think it’s right, and vice versa, and that we should actively think about what data is going into these subconscious reactions. What they don’t do is go on to give us any sort of framework for fixing the problem. They simply tell us to hand over the decision making to the experts when we realize we don’t have the depth or breadth of knowledge to make accurate predictions. But, what if those experts are prohibitively expensive or the “experts” are just marketers steering you into the arms of their clients? Why can’t we empower ourselves to fix problems like this?
I think technology is capable of radically changing the ways in which we make decisions, and in doing so, increase the accuracy of our decision-making. Just as we use weather forecasts to correct our occasionally inaccurate assumption that a bright, sunny morning means we won’t get rained on during an afternoon bike ride, we can use technology to help us identify bias and inaccuracy in the internal models our brains use to predict all sorts of other things. Just thinking out loud here…what if we had a GPS based threat indicator app on our phones that took into account who we are? A child’s threat indicator might start buzzing when he nears a dangerous intersection where data shows that pedestrians have been hurt before. My threat indicator might start buzzing when I walk into a store that has a bad Better Business Bureau rating. My work calendar could warn me when I schedule a meeting at an office where the management has been investigated or convicted of white collar crimes. In all these cases, technology helps push contextually relevant nudges to adjust for gaps in our intuition–that database of experience our faulty subconscious depends on.
Now, think about how such a system would be constructed. What you need is public data that everyone can agree on to use as the basis for your model. This is difficult to do in a capitalist society, because everyone is trying to profit off their data, or worried that someone else will. Certain data-sets, however, have been made publicly available for the greater good of everyone, and many more for the greater good of Google and the money they make from advertising. Weather data is relatively open-source. The correct time is available to all–no one has to calibrate their watch using calculations based on the sun. GPS is fairly open-source, allowing our devices to know where they, and by proxy we, are. The location of the next bus, train, or plane is open-source, allowing us to commute much more efficiently. Google Maps is an amazing open-source data-set (and is often taken for granted), and if you wanted to, you could quickly and easily head over to mapbox.com and plug the location of whatever you want directly into Google Maps.
I did a simple experiment to see if I was really spending my time the way I think I’m spending it. I tracked all my time by place using the Place Me app (uses GPS to look up addresses and figure out where you are), and was really surprised by what I found. The app isn’t 100% accurate, so I had to combine the time for about 10 places within a block of where I live that it thought I had visited in order to get to a single time-spent number for being home. Predictably, I spend the majority of my time at home, followed by the office, but the number three location on the list was my local coffee shop. I had no idea I was spending so much time there. My gut was clueless.
We run into problems when open-source data runs into quality issues–the garbage in, garbage out effect. There’s a lot of objectively false data floating around the internet, and because the internet wasn’t designed to capture objective data, it generally doesn’t. We’ve gotten used to big tech companies just giving us stuff that radically changes how we live our lives, but few people ever stop to wonder where all the data that goes into their products comes from, or what data trails we create in our own lives. Maybe it’s time that data literacy should be taught in schools. Perhaps in a decade or less, we’ll be ready to move from linear story-telling to real-time complex models.
A normal person living today has as much data at their fingertips as a high-paid McKinsey consultant did 20 years ago. The rapid democratization of data and computing power easily brings boat-loads of information right to your cell phone. New filtration systems allow us to zero in on the important bits of information and pull precise bits from petabytes. Where we still fall flat on our faces, however, is getting past our own brains, and our own biases, in order to make better decisions.
Google Glass, the wearable computer with an always-on video sensor and over-eye display, freak a lot of people out. There are very real privacy issues that come into play when anyone has the ability to take photos or video surreptitiously, and (more importantly) doing so becomes normal and acceptable in society. Judging by the number of people trying to preemptively ban the device, society is definitely not ready for this to become normal. However, notice that I called it a video sensor, not a video camera. My point is that while someone probably could use the technology for evil ends, I’m not convinced it’s actually supposed to or designed to do these things that everyone is so afraid that it will do.
On the far end of the spectrum are life-loggers–people who embrace the idea of recording and sharing everything. We’ve been doing some experimentation at the IPG Media Lab with POV video–basically video cameras strapped to your head. I tried out a bunch of wearable video recording eye-glasses and ear-pieces. These cameras are legitimately video cameras, because they have two states: 1. off, and 2. recording video which is saved to memory for later viewing. A lot of people use these wearable cameras (like the Looxcie) to broadcast their experiences in real-time. Unless they choose to turn the thing off, they are never not recording whatever is happening in front of them. Trying this device out, I felt like publicly life-logging video-streams that live forever on the net is an annoyance at best, and at worst, an inescapable panopticon of intentional and accidental junk shots. “No, thank you,” I thought. After this experience, I was really skeptical about the chances of Google Glass ever succeeding.
But, something clicked for me recently as I was reading Robert Scoble’s blog about his experience wearing the device, and I realize I’ve been thinking about it all wrong. What if the camera end of the device is not intended to be constantly recording video or creating a photographic record, but is simply acting as a sensor to create a record that is 99% actionable data, and only 1% saved images? The average single-frame picture has over 600,000 bits of data. A video taking 15 of those per second stacks up gigs of data very quickly. These human-viewable images are data-overload for both humans and machines. Computers don’t need nearly this much information to make a decision, and humans would need two life-times to create the video and then view it all. A camera-based sensor can scan all those pixels for meaning in real-time, but it will dump the image from memory and keep only the information it needs. In this way, it actually acts a lot like your human eyes and brain memory–keeping the important moments containing information it needs, and discarding all the long dull bits between those moments, the information it does not need.
I think there’s precedent for a device like this gaining societal acceptance. When the TSA started using a full-body scanner, there was a brief uproar about the idea that TSA employees were checking out our naughty bits, yet once people saw the lumpy humanoid images that the scanner actually creates, the furor died down. Similarly, before Nintendo released the Kinect, nobody could fathom why you would want to subject yourself to a video camera in your own living room. Once people figured out that the device isn’t really meant to take video or pictures of your living room, it’s simply meant to figure out where objects are in the space directly in front of it, people quickly got over it. You could even look to gmail for an example. When they first released this email that was “free” and offered an unheard of amount of free cloud storage, but the “price” for this product was letting google scan the contents of your email and serve you ads based on what was written in your emails, critics scoffed that such an invasive product would ever catch on. Clearly, they were wrong. What all these products have in common is that they are able to handle the most sensitive data in our lives, yet do not judge us or betray us, the users.
I firmly believe that Google is crafting a data architecture for Glass that does not betray the user, because they do not want to be in the morality business. I think the data these devices collect could potentially be incredibly damaging, but if the data is stored and parsed in such a way that damaging facts can be hidden, and the user controls what data is used vs. not, the device will quickly become a trusted extension of one’s own self, much in the way smartphones already have. The default setting is to save all pictures and video recordings to a private area of Google+, where the user must choose to make it public. Google glass doesn’t really do much that the smartphone doesn’t already do, it simply gives smartphone addicts a new, faster, more immersive way to interact with data about the world around them. The real innovation here is not Google Glass, the innovation is, was, and will continue to be the incredibly powerful way that apps can augment your experience with the physical world by using real-time, passively collected data. Glass is simply a better app interface.
One of the more interesting apps I’ve been playing with lately is called Place Me. If I turn it on, it politely runs in the background, passively listening to my phone’s GPS data, then matching those points in space against a database of places, then providing me with a list of places and businesses it thinks I’ve gone to, and a tally of the hours I spent at each place. It’s usually pretty accurate, and provides an interesting way to quantify my time, over time. This sort of data could be used in very useful ways by marketers, and super-charged by a device like Google Glass. For example, “Hey Tim, we noticed you eat lunch at Plant on the Embarcadero a lot. Other people that work near you and like Plant have been going to this other new restaurant. Here’s a 10% off coupon for lunch today. Try it out and let us know if our hunch was right.” That sounds a lot like the kind of advice I would value from a friend, but suddenly I could get that from an automated system. As far as I can tell, that is what the future looks like.
Glass, I should point out, does not have GPS built in (yet), and much of its functionality lies in tethering to a smartphone (Android, of course) that does have GPS and a keyboard. The proponents of Glass love that it’s operated by voice-command, but the idea of loudly prompting my Glass device at work or dictating my emails while walking down the street makes me cringe. I already stop and stand on the side of the sidewalk to type texts rather than use Siri. I will definitely kick the first person who randomly starts yelling “OK, Glass…” out of any meeting I’m running. So, while it does do a bunch of cool stuff on it’s own by soaking up ambient information and feeding the user data, for that user to interact with the world or do much with this information, I expect to see a lot of tethering and dual-device usage.
While I’m bullish on apps and helpful data collected from passive sensors like Glass, I’m still not totally sure that Glass will actually wind up being a successful consumer device (unless, as Scoble points out, they make it really cheap, like <$200). A friend of mine calls them “Segway Glasses,” because he thinks they’re so nerdy looking that only rich guys, rent-a-cops, and tourists would be willing to be seen in public using them. I think he might be right. However, I really do believe that the future will be full of apps that act like 99-cent sixth-senses, and the sensors that feed data to these apps will grow smaller and smarter, and in time, become normal.
According to eMarketer and InsightOne, a despicable crime is being perpetrated all across America, right under our very noses. Yes, I’m talking about human on computer violence, a subject the media has been far too lax in reporting up to this point. How can you sleep at night knowing 4% of computers and mobile devices are being mercilessly beaten? I, for one, feel it’s time to put an end to the violence. Type, not smash.
This year for Ad:Tech I did something I’ve never done before–I worked a booth in the exhibit hall. Usually I hang out in the conference rooms with big name marketers and exchange ideas with keynote speakers, and it’s rare that I have time to make it to the expo floor. However, we’re working with a very cool start-up called IMRSV that uses software to track people as they walk in front of a simple webcam and they invited me to co-curate a booth. Their technology guesses people’s age and gender in real time, and is an incredibly easy way to get metrics about people in physical space without breaking the privacy barrier. Everything is anonymous and no images are saved, only data about the number of people and type of people walking in front of the webcam. We had cameras set up all over the building and were actively quantifying the traffic of people around the show. So, going into this, I thought it was going to be cool. It was not.
Let me now give you my highly biased, subjective, and purely qualitative view of the foot traffic we got at our booth. Over the course of a day spent explaining the technology and how IPG Lab uses it, I had roughly 5 intelligent conversations. The vast majority of people I spoke with were sad, desperate, weirdos. There was the Russian spammer, the guy who runs free give-away websites, the dozens of bad email marketing, direct marketing, SEO marketing, bottom-feeder worst-of-the-worst inventory ad network sales guys, and finally, the people that were very concerned that the software was unable to automatically detect when they were flipping their middle finger at the camera, despite the fact that it did correctly guess their age and gender within seconds.
It was this pile of winners I’d like to talk about. I realized as I looked out on the teeming masses of internet assholes that I am incredibly sheltered. I forget that working at a place where we actually try to make the internet better is relatively rare compared to the huge majority of internet businesses just trying to spam, game, or otherwise make a quick buck off of the frictionless mistakes of a million accidental clickers. And, I realized that I viciously hate these people.
I guess the point to take out of all this is that as much as big media can suck at times, they’re safe. The world of media is a lot like the real world in the sense that anarchy sounds great when you’re flush and comfortable, but when the shit hits the fan and a mob is marching towards your front door, suddenly you can’t wait to find the police. I love the anarchy of the internet, the democratization of information, and the way technological disruption is keeping big media on its toes, but I have to say, days like this I’m really glad that the giants behind sites like Hulu, NYTimes, and Netflix create such cozy and safe little media havens where I can hide myself away from the masses and enjoy my media in comfort and safety.
P.S. Russian spam guy, please don’t hack my site. I know you can. You don’t have to prove anything.