Adam Savage on Great Tools, Great Projects, and Great Lessons (#370)

Adam Savage on The Tim Ferriss Show podcast

Photo by Norman Chan

“A true creator knows that you follow the thing to where it’s going, not to where you think it ought to go.”
— Adam Savage

Adam Savage (TW: @donttrythis IG: @therealadamsavage FB: therealadamsavage) has spent his life gathering skills that allow him to take what’s in his brain and make it real. He’s built everything from ancient Buddhas and futuristic weapons to fine-art sculptures and dancing vegetables.

The son of a filmmaker/painter and a psychotherapist, Adam’s previous positions include projectionist, animator, graphic designer, carpenter, interior and stage designer, toy designer, welder, and scenic painter. And he’s worked with every material and in every medium he could fathom—metal, paper, glass, plastic, rubber, foam, plaster, pneumatics, hydraulics, animatronics, neon, glassblowing, mold making, and injection molding, to name just a few.

In 1993, Adam began concentrating his career on the special-effects industry, honing his skills through more than 100 television commercials and a dozen feature films, including Star Wars: Episode I – The Phantom Menace and Episode II – Attack of the ClonesGalaxy Quest, and the Matrix sequels.

A decade later, Adam was chosen, along with Jamie Hyneman, to host MythBusters, which premiered on Discovery Channel in January 2003. 14 years; 1,015 myths; 2,950 experiments; eight Emmy nominations; and 83 miles of duct tape later, that version of the series ended in March 2016.

Today, Adam hosts and executive produces MythBusters Jr., as well as a brand-new series, Savage Builds, which premieres on Science Channel in June 2019. He also stars in and produces content for, including behind-the-scenes dives into multiple blockbuster films (including Alien CovenantMortal Combat, and Blade Runner).

In addition, after a lifetime of hunting for the perfect bag, Adam launched Savage Industries and began manufacturing his own, along with MAFIA BAGS. Made in the United States and constructed primarily from recycled sailcloth, every bag is not only durable and lightweight but unique, as well. The current line (available at includes two sizes of the EDC (“Everyday Carry”) and pouches, with more product both available on the site and on the way.

Finally, in 2019 Adam wrote his first book, Every Tool’s a Hammer, which is, in Adam’s words, “…a chronicle of my life as a maker. It’s an exploration of making and of my own productive obsessions, but it’s also a permission slip of sorts from me to you. Permission to grab hold of the things you’re interested in, that fascinate you, and to dive deeper into them to see where they lead you.”

More information about the book is available at

Watch the interview on YouTube.

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

#370: Adam Savage on Great Tools, Great Projects, and Great Lessons

Want to hear another episode with someone who’s not afraid to let their geek flag fly? — Listen to my conversation with Aisha Tyler in which we discuss optimism, free-range parenting, aggressive failure, heckler stories, and much more. (Stream below or right-click here to download.):

#327: Aisha Tyler — How to Use Pain, Comedy, and Practice for Creativity

This episode of the Tim Ferriss Show is brought to you by Theo Chocolate, which is the first organic and fair-trade chocolate company in North America. The folks there reached out to me because they spotted some neatly stacked bars of their dark chocolate coconut in a recent Instagram photo of my fridge (see it here).

This is a brand that does everything from scratch, and the difference shows. It’s why Theo is one of my favorite chocolates. It offers tons of different bars, little snacks like coconut bites, and also imaginative creations like a cinnamon horchata bar, beer and scotch chocolates, and its signature s’mores bite — The Big Daddy. My personal favorite: Salted Almond Butter Cups, which are ridiculous.

Theo is helping drive its industry forward by working with communities in the Congo and Peru to make the economics of the cocoa trade fair for farmers, and by using sustainable farming practices. Whether you want to feel better about where you buy your goodies or you just want a really unique and delicious gift for yourself or someone else, they’re available in Whole Foods and other grocery stores across the U.S. For listeners of this podcast, Theo is offering 15% off your online purchase at Use code Tim15, or visit for more details.

This podcast is also brought to you by Athletic Greens. I get asked all the time, “If you could only use one supplement, what would it be?” My answer is, inevitably, Athletic Greens. It is my all-in-one nutritional insurance. I recommended it in The 4-Hour Body and did not get paid to do so.

As a listener of The Tim Ferriss Show, you’ll get a free 20-count travel pack (valued at $79) with your first order at

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

19 Comments / Leave a comment or question

Kevin Systrom — Tactics, Books, and the Path to a Billion Users (#369)


“I think a big part of knowing that you’re right is working as hard as you can to prove that you’re wrong. And if you can’t, well, there’s only one option left, which is: you’re probably right.”
— Kevin Systrom

Kevin Systrom (@kevin) is an entrepreneur and the co-founder (with Mike Krieger) of Instagram. While at Instagram, Kevin served as the CEO, where he oversaw the company’s vision and strategy and daily operations. Under his leadership, Instagram grew to over one billion users and launched dozens of products including video, live, direct messaging, creative tools, Stories, and IGTV.

The company also grew to over 800 employees with a campus in Menlo Park, new offices in New York City, and a new headquarters in San Francisco.

Prior to founding Instagram, Kevin graduated from Stanford University with a BS in management science and engineering. Kevin currently lives in San Francisco with his wife and daughter.

Watch the interview on YouTube.

You can find the transcript of this episode here. Transcripts of all episodes can be found here.

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

#369: Kevin Systrom — Tactics, Books, and the Path to a Billion Users

Want to hear an episode with someone else who lives by strong principles? — Listen to my conversation with Ray Dalio. We discuss how Ray thinks about investment decisions, the three books he would give to every graduating high school or college senior, how he might assess cryptocurrency, and much, much more (stream below or right-click here to download):

This podcast is brought to you by FreshBooks. FreshBooks is the #1 cloud bookkeeping software, which is used by a ton of the start-ups I advise and many of the contractors I work with. It is the easiest way to send invoices, get paid, track your time, and track your clients.

FreshBooks tells you when your clients have viewed your invoices, helps you customize your invoices, track your hours, automatically organize your receipts, have late payment reminders sent automatically and much more.

Right now you can get a free month of complete and unrestricted use. You do not need a credit card for the trial. To claim your free month and see how the brand new Freshbooks can change your business, go to and enter “Tim Ferriss” in the “how did you hear about us” section.

This podcast is also brought to you by Helix Sleep. I recently moved into a new home and needed new beds, and I purchased mattresses from Helix Sleep.

It offers mattresses personalized to your preferences and sleeping style — without costing thousands of dollars. Visit and take the simple 2-3 minute sleep quiz to get started, and the team there will build a mattress you’ll love.

Its customer service makes all the difference. The mattress arrives within a week, and the shipping is completely free. You can try the mattress for 100 nights, and if you’re not happy, it’ll pick it up and offer a full refund. To personalize your sleep experience, visit and you’ll receive up to $125 off your custom mattress.

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

12 Comments / Leave a comment or question

Amanda Palmer on Creativity, Pain, and Art (#368)


Amanda Palmer and Tim Ferriss

“I’m just so fundamentally optimistic, and I barrel forth in life with this attitude that everything is going to be absolutely fine and go my way.”
— Amanda Palmer

Amanda Palmer (@amandapalmer) is a singer, songwriter, playwright, pianist, author, director, blogger, and ukulele enthusiast who simultaneously embraces and explodes traditional frameworks of music, theatre, and art. She first came to prominence as one half of the Boston-based punk cabaret duo The Dresden Dolls, earning global applause for their inventive songcraft and wide-ranging theatricality.

Her solo career has proven equally brave and boundless, featuring such groundbreaking works as the fan-funded Theatre Is Evil, which made a top 10 debut on the SoundScan/Billboard 200 upon its release in 2012 and remains the top-funded original music project on Kickstarter. In 2013 she presented The Art of Asking at the annual TED conference, which has since been viewed over 20 million times worldwide. The following year saw Palmer expand her philosophy into the New York Times best-selling memoir and manual, The Art of Asking: How I Learned To Stop Worrying And Let People Help.

Since 2015 Palmer has used the patronage subscription crowdfunding platform Patreon to fund the creation of her artwork. This has enabled her to collaborate with artists all over the world with over 14,000 patrons supporting her creations each month. Palmer released her new solo piano album and accompanying book of photographs and essays, There Will Be No Intermission, on March 8, 2019, followed by a global tour. Recorded in late 2018 with grammy-winning Theatre Is Evil producer/engineer John Congleton at the helm, the album is a masterwork that includes life, death, abortion, and miscarriage among its tentpole themes.

Watch the interview on YouTube.

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

Want to hear an episode with Amanda’s husband? — Listen to my conversation with author and world treasure Neil Gaiman, in which we discuss the writing process, first drafts, artistic collaboration, daily routines, and the merits of fountain pens. Stream below or right-click here to download.

#366: Neil Gaiman — The Interview I've Waited 20 Years To Do

This podcast is brought to you by Peloton, which has become a staple of my daily routine. I picked up this bike after seeing the success of my friend Kevin Rose, and I’ve been enjoying it more than I ever imagined. Peloton is an indoor cycling bike that brings live studio classes right to your home. No worrying about fitting classes into your busy schedule or making it to a studio with a crazy commute.

New classes are added every day, and this includes options led by elite NYC instructors in your own living room. You can even live stream studio classes taught by the world’s best instructors, or find your favorite class on demand.

Peloton is offering listeners to this show a special offer. Visit and enter the code TIM at checkout to receive $100 off accessories with your Peloton bike purchase. This is a great way to get in your workouts, or an incredible gift. Again, that’s and enter the code TIM.

This episode is also brought to you by LinkedIn Marketing Solutions, the go-to tool for B2B marketers and advertisers who want to drive brand awareness, generate leads, or build long-term relationships that result in real business impact.

With a community of more than 575 million professionals, LinkedIn is gigantic, but it can be hyper-specific. LinkedIn has the marketing tools to help you target your customers with precision, right down to job title, company name, industry, etc. Why spray and pray with your marketing dollars when you can be surgical? To redeem your free $100 LinkedIn ad credit and launch your first campaign, go to!

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

24 Comments / Leave a comment or question

Eric Schmidt — Lessons from a Trillion-Dollar Coach (#367)


“You can systematize innovation even if you can’t completely predict it.”
— Eric Schmidt

Eric Schmidt (@ericschmidt) is Technical Advisor and Board Member to Alphabet Inc., where he advises its leaders on technology, business and policy issues. Eric joined Google in 2001 and helped grow the company from a Silicon Valley startup to a global leader in technology. He served as Google’s Chief Executive Officer from 2001-2011, and Executive Chairman 2011-2018, alongside founders Sergey Brin and Larry Page.

Eric serves on the boards of The Mayo Clinic and The Broad Institute, among others. His philanthropic efforts through The Schmidt Family Foundation focus on climate change, including support of ocean and marine life studies at sea, as well as education, specifically cutting-edge research and technology in the natural sciences and engineering. He is the founder of Schmidt Futures, which works to improve societal outcomes through the development of emerging science and technology.

He is the co-author of The New Digital Age, How Google Works, and the new book, Trillion Dollar Coach: The Leadership Playbook of Silicon Valley’s Bill Campbell, which he co-authored with fellow Google leaders Jonathan Rosenberg (@jjrosenberg) and Alan Eagle (@aeaglejr).

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

You can find the transcript of this episode here. Transcripts of all episodes can be found here.

#367: Eric Schmidt — Lessons from a Trillion-Dollar Coach

Want to hear an episode with Silicon Valley’s most feared and well-liked journalist? — Listen to my conversation with Kara Swisher, in which we discuss war stories, missed opportunities, optimistic pessimism, and the art and craft of good questions. (Stream below or right-click here to download.)

#218: The Most Feared and Well-Liked Journalist in Silicon Valley - Kara Swisher

This episode is brought to you by Inktel. Ever since I wrote The 4-Hour Workweek, I’ve been frequently asked about how I choose to delegate tasks. At the root of many of my decisions is a simple question: “How can I invest money to improve my quality of life?” Or “how can I spend moderate money to save significant time?”

Inktel is one of those investments. They are a turnkey solution for all of your customer care needs. Their team answers more than 1 million customer service requests each year. They can also interact with your customers across all platforms, including email, phone, social media, text, and chat.

Inktel removes the logistics and headache of customer communication, allowing you to grow your business by focusing on your strengths. And as a listener of this podcast, you can get up to $10,000 off your start-up fees and costs waived by visiting

This episode also is brought to you by LinkedIn and its job recruitment platform, which offers a smarter system for the hiring process. If you’ve ever hired anyone (or attempted to), you know finding the right people can be difficult. If you don’t have a direct referral from someone you trust, you’re left to use job boards that don’t offer any real-world networking approach.

LinkedIn, as the world’s largest professional network, which is used by more than 70 percent of the US workforce, has a built-in ecosystem that allows you to not only search for employees, but also interact with them, their connections, and their former employers and colleagues in a way that closely mimics real-life communication. Visit and receive a $50 credit toward your first job post!

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

14 Comments / Leave a comment or question

Neil Gaiman — The Interview I’ve Waited 20 Years To Do (#366)


“The biggest problem we run into is going, ‘This is who I am, this is what I’m like, this is how I function’ while failing to notice that you don’t do that anymore.”
— Neil Gaiman

Neil Gaiman (@neilhimself) is the bestselling author and creator of books, graphic novels, short stories, film and television for all ages, including Neverwhere, Coraline, The Graveyard Book, The Ocean at the End of the Lane, The View from the Cheap Seats and the Sandman series of graphic novels. His fiction has received Newbery and Carnegie Medals, and Hugo, Nebula, World Fantasy, Bram Stoker, and Will Eisner Awards, among many other awards and honors.

His novelistic retelling of Norse myths, Norse Mythology, has been a phenomenon, and an international bestseller, and won Gaiman his ninth Audie Award (for Best Narration by the Author).

Recently Gaiman wrote all six episodes of, and has been the full-time showrunner, for the forthcoming BBC/Amazon Prime mini-series adaptation of Good Omens, based on the beloved 1990 book he co-wrote with Terry Pratchett.

Many of Gaiman’s books and comics have been adapted for film and television including Stardust (starring Robert De Niro and Michelle Pfeiffer), Coraline (an Academy Award nominee and the BAFTA winner for Best Animated Film), and How to Talk to Girls at Parties, a movie based on Gaiman’s short story. The television series Lucifer is based on characters created by Gaiman in Sandman. His 2001 novel, American Gods, is a critically acclaimed, Emmy-nominated TV series, now entering its second season.

In 2017, Neil Gaiman became a Goodwill Ambassador for UNHCR, the UN Refugee Agency. Originally from England, he lives in the United States, where he is Professor in the Arts at Bard College.

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

You can find the transcript of this episode here. Transcripts of all episodes can be found here.

#366: Neil Gaiman — The Interview I've Waited 20 Years To Do

Want to hear an episode with another world-building dreamer? — Listen to my conversation with filmmaker Darren Aronofsky in which we discuss nomadic writing, how to navigate tough conversations over creativity and control, dealing with critics, and much more. Stream below or right-click here to download.

#263: Filmmaker Darren Aronofsky — Exploring Creativity, Ignoring Critics, and Making Art

This podcast is brought to you by Peloton, which has become a staple of my daily routine. I picked up this bike after seeing the success of my friend Kevin Rose, and I’ve been enjoying it more than I ever imagined. Peloton is an indoor cycling bike that brings live studio classes right to your home. No worrying about fitting classes into your busy schedule or making it to a studio with a crazy commute.

New classes are added every day, and this includes options led by elite NYC instructors in your own living room. You can even live stream studio classes taught by the world’s best instructors, or find your favorite class on demand.

Peloton is offering listeners to this show a special offer. Visit and enter the code TIM at checkout to receive $100 off accessories with your Peloton bike purchase. This is a great way to get in your workouts, or an incredible gift. Again, that’s and enter the code TIM.

This episode of the Tim Ferriss Show is also brought to you by Hello Monday, a new podcast from LinkedIn’s Editorial Team filled with the kind of advice that stays with you — the kind you can actually use.

Each week, host Jessi Hempel sits down with featured guests, such as Seth Meyers, host of Late Night with Seth Meyers, and Elizabeth Gilbert, bestselling author of Eat, Pray, Love, to uncover lessons you can apply to your career.

For example, Elizabeth Gilbert talks about relieving creative pressure to get more done: As Liz was approaching her follow-up to Eat, Pray, Love, she tried to write for six million people and felt overwhelmed. Instead, she focused on writing for her 10 closest friends. She didn’t know how to please millions of strangers, but did know how to reach those 10 friends.

Find Elizabeth Gilbert’s episode and other episodes from Hello Monday on Apple Podcasts, or wherever you listen to podcasts.

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

42 Comments / Leave a comment or question

Michael Pollan — Exploring the Frontiers of Psychedelics (#365)


Photo by Ken Light

“An overactive ego is a tyrant.”
– Michael Pollan

Michael Pollan (@michaelpollan) is the author of seven previous books, including Cooked, Food Rules, In Defense of Food, The Omnivore’s Dilemma, and The Botany of Desire, all of which were New York Times bestsellers. A longtime contributor to The New York Times Magazine, he also teaches writing at Harvard and the University of California, Berkeley where he is the John S. and James L. Knight Professor of Science Journalism. In 2010, TIME magazine named him one of the 100 most influential people in the world.

His newest book is How to Change Your Mind: What the New Science of Psychedelics Teaches Us About Consciousness, Dying, Addiction, Depression, and Transcendence, which will be available as a paperback in May.

And if you haven’t yet, check out “Trip of Compassion”, which is the most compelling movie I’ve seen in the last year. It documents one unusual approach to healing trauma that might astonish you, an innovative treatment involving the psychoactive drug MDMA (commonly known as “ecstasy”). As you will see firsthand, if the therapy is well designed, true rebirth and transformation can happen in a matter of weeks and not years. Find out more by clicking here.

Listen to the episode on Apple Podcasts, Spotify, Stitcher, Overcast, Castbox, or on your favorite podcast platform.

You can find the transcript of this episode here. Transcripts of all episodes can be found here.

#365: Michael Pollan — Exploring the Frontiers of Psychedelics

Want to hear another episode that explores science and psychedelics? — Listen to my conversation with Paul Stamets, an intellectual and industry leader in the habitat, medicinal use, and production of fungi. Stream below or right-click here to download.

#340: Paul Stamets — How Mushrooms Can Save You and (Perhaps) the World

This podcast is brought to you by Athletic Greens. I get asked all the time, “If you could only use one supplement, what would it be?” My answer is, inevitably, Athletic Greens. It is my all-in-one nutritional insurance. I recommended it in The 4-Hour Body and did not get paid to do so.

As a listener of The Tim Ferriss Show, you’ll get a free 20-count travel pack (valued at $79) with your first order at

This podcast is also brought to you by 99designs, the global creative platform that makes it easy for designers and clients to work together to create designs they love. Its creative process has become the go-to solution for businesses, agencies, and individuals, and I have used it for years to help with display advertising and illustrations and to rapid prototype the cover for The Tao of Seneca. Whether your business needs a logo, website design, business card, or anything you can imagine, check out 99designs.

You can work with multiple designers at once to get a bunch of different ideas, or hire the perfect designer for your project based based on their style and industry specialization. It’s simple to review concepts and leave feedback so you’ll end up with a design that you’re happy with. Click this link and get a free $99 upgrade.

QUESTION(S) OF THE DAY: What was your favorite quote or lesson from this episode? Please let me know in the comments.

Scroll below for links and show notes…

Read More

23 Comments / Leave a comment or question

Ten Lessons I Learned While Teaching Myself to Code


Note from the editor: The following is a guest post by Clive Thompson (@pomeranian99), a journalist who’s written about technology and science for two decades. Clive is a longtime contributing writer for the New York Times Magazine and a columnist for Wired.

In his guest post, Clive outlines the most important lessons he learned teaching himself to code after interviewing 200+ programmers for his new book Coders: The Making of a New Tribe and the Remaking of the World.

Enter Clive…

So, you want to learn to code.

Join the club! We live in a time when, as the venture capitalist Marc Andreessen famously put it, “…software is eating the world.” So the people who know how to program are in a catalytic spot; they can make things happen. Maybe you’ve watched this from the sidelines and thought: Huh. Could I learn to do that? Perhaps you’re out of school; maybe you can’t afford either the money or the time to go back and do a four-year degree in computer science. You’ve seen a zillion of these online tutorials in coding. Could you just sort of, well, teach yourself?

The short answer is: Sure you can.

The longer answer is… the rest of this essay.

The reason why I think you can do it is that I’ve met tons of people who did. I’m a science journalist who spent three years interviewing about 200 programmers for my upcoming book Coders: The Making of a New Tribe and the Remaking of the World. The bulk of them had studied computer science, but a surprisingly significant minority were self-taught. They were artists or accountants or speechwriters or marketers or musicians or carpenters or stay-at-home parents or people from just about any walk of life, but they’d gotten interested in coding, buckled down, and learned.

They inspired me, frankly, to dive in and teach myself. I’d gone my whole adult career doing essentially no coding. As a teen, back in the ’80s (I’m old, people), I’d learned some BASIC on those computers you plugged into your TV. It was a blast—I made little (terrible) video games and insult generators and bits of computer music, but I didn’t get very far because my mother refused to let our family own a computer. (“He’ll just sit around playing games all day long,” she told my dad.) So I never studied coding and, instead, did degrees in English and political science. As an adult, I’d really only tinkered with a bit of HTML and some web pages. When I started thinking about learning to code a few years ago, I had a day job and couldn’t study full time.

So I decided to teach myself in my spare hours. I wasn’t looking to become a full-time coder, mind you. I had no visions of creating some app and scoring boatloads of VC money. I was just curious to find out: how learnable was this, as a skill? Could I do it well enough to make software that was, at a minimum, useful for me?

The answer was, on all fronts, yes.

I learned a ton, and now I very frequently write code to help me in my job as a journalist and book author. I’ve written little scripts and programs that make my work and personal life easier. I’ve also discovered I enjoy it—it can be an absolute blast, intellectually and creatively.

Along the way, I gathered some hopefully-useful lessons for you.  Some of them from my own experience and some from talking to experts—those who teach programming and some full-time coders who taught themselves.

So the advice I gleaned, in order, is:

#1) The online world is your friend. Start there.

It’s never been easier to get started learning to code because there are dozens of free-or-cheap courses online. If you’d tried to do this even a decade ago, the pickings were slim. Now, it’s a cornucopia. Within five minutes of reading my list, you could be starting an online course.

Me, I decided to learn some JavaScript, since it’s a language that powers the web. After reading reviews and canvassing some recommendations, I started with the JavaScript lessons at Codeacademy, which begin very much at zero, assuming a newbie knows essentially nothing about programming concepts. Each lesson gives you a bit-by-bit primer on some part of coding—like assigning data to variables and using if-then statements—then challenges you to do something simple with it. After a few weeks using it, I read some blog posts touting freeCodeCamp, a different site for newbies, which integrates JavaScript alongside learning HTML and CSS, the languages for making web pages. I bounced back between the two tutorials, finding that their different approaches to teaching the same thing helped to cement the basics in my mind.

I didn’t stick to one language, though. I’d also heard that Python was a good language for neophytes, easier to pick even than JavaScript; and it’s used a lot in data analysis, something I was intrigued by. This time, instead of doing an online tutorial only, though, I used a book—Zed Shaw’s Learn Python The Hard Way, which many coders highly praised online. Indeed, while doing these online courses, I also amassed a small collection of paper books, like Crash Course in Python, Automate the Boring Stuff With Python, and Eloquent JavaScript, all of which were really useful: They were fast to flip through and refresh a concept in my memory. There are a ton of resources online—the instant you forget how to reverse-sort a list in Python, you can Google it—but it turns out paper books are still very useful. A good book like Shaw’s has been organized specifically to structure info about a coding language so it makes sense.

A word of warning as you dive into online courses? Buyer beware: “Most of the stuff that says it’s ‘Great for a beginner’ is not,” as my friend Katrina Owen—a self-taught coder who works as an engineer for GitHub and founded Exercism, an open-source project that offers coding challenges to help sharpen your chops—says. She’s right. I’ve seen a ton of “tutorials” that are supposed to be for newbies but are written erratically. Half the time they’re great, patiently walking you through material, then half the time they assume you already know what an object or an IDE is. If you try these, you’ll wind up feeling frustrated and thinking that it’s your fault you don’t understand things, but it isn’t. So find recommendations: Read online reviews of a course, use my suggestions here, ask friends.

#2) Don’t stress over what language to pick.

Don’t get bogged down picking the “perfect” language to learn. Your goal in the early days is just to become familiar with the basic concepts of coding, which are similar across all languages.

“If you can learn one programming language, you can learn the other ones, and where you start doesn’t matter nearly as much as you might think,” as Quincy Larson, the founder of freeCodeCamp, told me. So pick one—the common ones for newbies are things like Python, JavaScript, Ruby, or, say, Microsoft’s C#—and dive in. You can switch around later or even, as I did, try a few and see which ones “take” better with your style of thinking. (Me, I prefer writing Python—it’s prettier, to my eyes—but JavaScript is more useful for building the web tools I use in my work, so I’ve stuck with both.) “Stop looking for the perfect coding course,” advises Madison Kanna, who taught herself programming at age 23. “Just pick a curriculum and stick with it.”

Actually, you may want to avoid Googling “What coding language should I learn?” because you’ll immediately find yourself deep in the sprawling flames wars that coders engage in over Which Language Sucks/Rocks. These arguments are a) frequently nuts and b) to the extent that they have any meaning, nothing you need to worry about right now.

Now, there’s one big exception to my rule here. If you’re learning to program specifically because you’re sick of your job and want to retain for full-time coding work, as fast as possible? Then your choice of language does matter. You want to match it up to market needs—specifically, your local market, notes my friend Saron Yitbarek, a developer and the founder of CodeNewbie, a podcast about programmers. So research your local job scene: What types of entry-level coding jobs exist, and what languages and skills do they ask for? Then find tutorials and books that will lead to those skills. “Find the jobs that you want, and then reverse engineer your curriculum,” she tells me.“ Too many people go, ‘Oh, I heard about JavaScript. Now I’m going to learn JavaScript.’ And they realize there are no JavaScript positions anywhere where they live. Then they’re stuck in a community that really wants them to learn .NET,” a Microsoft framework, “and they didn’t take the time to learn .NET.”   

#3) Code every day.

This is a big one. You should try to do some coding every day—at least, say, a half hour.

Why? Because this is just like learning Spanish or French: Fluency comes from constant use. To code is to speak to a computer, so you should be speaking often. Newbies often try to do big, deep dives on the weekends, but that’s too infrequent. “Programming languages are still languages, so attempting to learn them only on weekends doesn’t train your ability to use them naturally. It requires daily practice and study,” as Zed Shaw told me. But you’re busy, so how are you going to find time to code every day? Well, Shaw argues, take the time you normally allocate for something fun—watching TV, going out with friends, video games, watching sports—and use it instead to code daily. “It’s better to do one hour a day then ten hours on Saturday,” argues Avi Flombaum, who runs the Flatiron School, one of the first coding bootcamps, and now a WeWork company.

They’re right—this was precisely my experience. When I was doing a bit of coding every day, I found I could much more quickly grasp key concepts. But if I stopped for a few days or, every so often, a few weeks, when a crush of work in my day-job and a load of personal-life responsibilities arrived, it was like wiping the slate clean. I’d come back to work on a coding project and I’d have forgotten a shocking amount of basic stuff.

Related to this advice, it’s worth noting that learning to code—to the point where you can build something useful for yourself or others—isn’t going to happen quickly. A while ago there was a vogue for books with titles like Learn Java in 10 Hours, which is frankly insane. It’s more like, “Learn to code in ten months,” (or, as the longtime Google programmer Peter Norvig once wrote, “Teach Yourself Programming in Ten Years”.) It was a few months before I was beginning to make little scripts and web tools that actually accomplished a useful task for myself.

And while getting a half-hour a day is useful, if you can do more, do more. Programming typically requires immersion: When you’re trying to understand a new concept, you’ll do a lot of staring at the screen, trying to grasp or visualize or apprehend the flow of logic or data through a snippet of code. Very often I’d find I would sit down to learn something in an evening, thinking I’d spent 30 minutes, then get stuck—and two hours would go by before I’d get unstuck. It isn’t always easy when you’ve got a busy life, but free up as much time as you can.

For sheer density of learning, one option to consider—if you have the money and time—is a bootcamp. These are crash courses, typically several months long, where you study programming all day (and often into the evening) in a formal schooling environment with instructors and classmates. (A good community college can offer similar courses.) Bootcamps aren’t cheap, averaging over $11,000 in tuition, though some defer tuition until you get your first coding job. Their great upside is that they give you a curriculum: “…it takes away ‘decision fatigue,’” notes Flatiron’s Flombaum. Teaching yourself to code on your own, requires endless decisions: Should I keep learning this language? Which JavaScript front-end framework should I try? “Whereas here you have someone making those decisions for you, so you can just focus on learning,” he notes.

The trick here is finding a good bootcamp. It’s an unregulated field, in which high-quality ones with solid track records of grads finding jobs exist cheek-by-jowl with dodgy, fly-by-night ones. In NYC where I live, some well-regarded ones are Flatiron (which also operates in eight other locations, including Houston, Washington and Atlanta), Grace Hopper (which also operates in Chicago), and General Assembly (which also operates in 19 other locations around the US, such as Austin, San Francisco and Boston). In San Francisco, it includes Hack Reactor and App Academy. It’s very much a city-by-city scene, though, so do your local research if you go this route; SwitchUp is a useful resource here.

#4) Automate your life.

When people think, “I’m going to learn to code,” they often assume it needs to end in making a product—some app like Facebook or Grubhub or Uber.

Sure, that could happen. But honestly, the more practical reason to learn to code is much simpler, more mundane, but much more personally powerful. You can very quickly learn to automate boring things in you life.

That’s because computers are amazing at doing dull, repetitive tasks. They’re also great at being precise. Since we humans are terrible at doing dull tasks and quite bad at being precise, this makes us a match made in heaven. So one enormous pleasure in learning to code is that you begin to see how you can automate many difficult, onerous tasks.

For example, when I’m reporting I often find a great speech on YouTube, and I want to copy and save the automatic transcription of it. The problem is, the transcriptions that YouTube generates are messy—every other line is a piece of timecode. So when I’d cut and paste them into a research file, the file would be long and hard to skim. I could go through and delete every other line, but yikes, what a hassle!

So instead, one evening I quickly wrote a dead-simple little web tool that lets me paste in a YouTube transcript, and, with a button-push, clean up the transcript, removing the timecode lines and rendering it into a single paragraph. It’s much easier to read that way.

I’ve written tons of other scripts to automate boring things. My youngest son once ran into a problem: He wanted to get his homework done quickly after getting home from school, and his teacher would post it to the school’s web site, but sometimes she’d delay. So he’d sit there, refreshing the page every so often, waiting for the homework to post. To automate that, I wrote a little web-scraper that would check the page every five minutes, and once it detected the homework was posted, it’d shoot a text message to me and my son—so he could now do whatever he wanted, knowing he’d get an automated alert. These days, I’m working on a little script that registers where I’ve parked the car on the streets of Brooklyn (where I live) and sends me an automated reminder when I need to move it before I get a ticket.

This is the secret value of coding, for me. I’m not going to quit my job to build a software company or get hired as a coder. But coding makes me more efficient, more empowered, at my job and in everyday life, often in weird and delightful ways. Odds are this will be true of you, too.

Don’t learn to code, learn to automate, writes the coder Erik Dietrich. This is bang on. Nearly every white-collar job on the planet involves tons of work that can be done more efficiently if you know a bit of coding. Maybe you can automate collecting info for reports; maybe you can automate dull, routine emails. (I’ve done that. Gmail makes it easy with built-in JavaScript.) Before Katrina Owen became a coder, she was working as a secretary in Paris and would build bits of software that automated parts of the office workflow: She made it so employees could upload their spreadsheets to a form, and it’d pick apart the spreadsheet and input the info into a database. It was insanely valuable—though, as she notes, “I had no idea what I was doing was coding.”

But it is. And, indeed, this sort of coding—tucked into the corner of your existing work—is insanely powerful. Rather than quit your job to become “a programmer,” learn some coding so you can become much more valuable at your existing career and maybe move up in pay. There are people who do that all the time, as Zach Sims, the founder of Codecademy, tells me.

“Coding,” he jokes, “is marketed poorly.”

#5) Prepare for constant, grinding frustration.

Coding is brutally, punishingly frustrating.

Why? Because the computer will do whatever you say—but only if you are perfectly, utterly precise in your instructions. One small mistake, one misplaced bracket, and odds are high the whole shebang stops working.

“Programming is a constant stream of failures thrown at you by a computer that does not care how you feel,” Shaw notes.

This is the fulcrum around which all coder experience, and all coder psychology, pivots. After interviewing scores of developers for Coders, I’ve come to an interesting conclusion: Being logical and systematic is not, at heart, what makes someone good at programming. Sure, you obviously need to be able to think logically, to break big tasks down into tiny steps. That’s a prerequisite. But if you asked me what’s the one psychological nuance that unifies all the coders I’ve interviewed?

They’re all able to handle total, crushing, incessant failure and roadblocks (at least, at the keyboard.) People think that programmers code all day long; you look at Hollywood movies, and the hackers’ fingers are flying, pouring out code onto the screen. Looks fun, right?

Nope. Most coding goes like this: You write a few lines of code, something intended to do something fairly simple, then you run a test on it, and… it doesn’t work. So you try to figure out what’s wrong, isolating sub-parts of the code and testing them, or Googling the error messages the computer spits up, in desperate hopes that someone else online has written about this particular problem. And quite often I’d discover, after long periods—minutes, certainly; often hours, sometimes days—that the problem was my own error, and an aggravatingly “how obvious” one: A tiny typo, a missing colon. Nothing has ever made me feel like an idiot so regularly, so routinely, than computer programming.

And this psychological storm doesn’t really let up, no matter how good you get or how long you code. I’ve spoken to top coders for places like Facebook or Google or Baidu, and they’ll tell you the same thing: They spend a lot of their time trying to figure out what’s wrong, why things aren’t working. They don’t make the stupid newbie mistakes I make, clearly, but since they now work on very complex systems, they run into very complex problems. Either way, they face grinding frustration, too.

Now, why would anyone endure such a grind? Because of the flip side. When you finally figure out the problem—when you fix the bug, and things start working—there’s a sudden, narcotic rush of pleasure that’s almost unlike anything you’ve ever experienced. It’s delightful, people. There are few things in life that give you that absolute sense of mastery and joy. My wife got used to hearing me give a sudden whoop when some busted piece of crappy code I’d been tinkering finally twitched its Frankensteinian eyes open and came to life.

It’s almost cheesy now to talk about the “growth mindset,” the idea that you should approach a new skill assuming it’s going to be hard, but it can be learned. But this is crucial with coding. The frustration will never let up; the better you get, the farther you’ll reach, and the more fiendish will become your bugs. But coding isn’t some mystical act. It’s just sheer persistence and work ethic. “It’s hard, but it’s not impossible,” as Owen says.

This is why, also, try not to get intimidated by other people’s code—or by programmers who breezily boast online, when you read a thread on Stack Overflow about how obvious some concept is. Ignore them. Everything in coding is hard the first time you do it. “Never compare yourself to others and don’t take online criticism personally,” says Lydia Hallie, a 21-year-old woman in Stockholm, who taught herself to code as a teenager. “The fact that you’re struggling when you’re teaching yourself how to code is completely normal and doesn’t say anything about how good of a programmer you’ll be later.”

#6) Build things. Build lots of things.

When you’re learning to code, you need to start trying to build things—real pieces of code you can use.

Certainly, the online tutorials and books are good for giving you the basics. But what really teaches you how code works is when you try to make a piece of software that does something. That’s when you finally grapple with what you do and don’t know. It’s the difference between learning French phrases from a book or in class, then going into a restaurant and ordering a meal.

Now, when I say “build things,” I don’t mean: Build the next Facebook or Snapchat—heh, no. It can be something tiny, something weird, something small—but it’s something you can use, or show to someone else. For example, early on while learning JavaScript and HTML, I started building little web apps that would do funny things like autogenerate surrealist Pokemon names (to amuse my kids); the night of the 2016 election, I was so stressed out I wrote a little script that just flashed a variety of zomg messages on the screen, so I could externalize my nervousness and have the computer freak out for me. These were all small and silly, but they had to at least function, and when you have to make something function, that’s when you learn.

One extreme example of this “build stuff” approach is Jen Dewalt. Back in 2013, she was a designer with a background in fine art but no real experience coding, when, at age 30, she decided to teach herself programming. To make it serious, she decided to make a website a day… for 180 days. At first they were incredibly simple pages, like a button you could click to change the background color. But within a few weeks, she’d learned enough to make little interactive games or a clock that displayed the time in words. And by the last few days, she was doing complex stuff, like a mood analyzer that would count how often hashtags like “#awkward” were being used on Twitter, in real time.

“I highly recommend starting with small, tangible projects,” she told me. If she wanted to make something, she’d use snippets of code she found at coder sites like Stack Overflow, not worrying if she didn’t understand them very well, so long as they worked. (Though she’d always type in the code, herself, to work it into her muscle memory. Zed Shaw suggests this, too. Don’t cut-and-paste code if you’re borrowing it from someone else. Type it in yourself; it forces you to ponder it a bit more deeply.)

Dewalt’s main advice? “Just Fucking Do It (#JFDI)!” The sooner you start trying to make things, the quicker you learn. You certainly may not have the ability to do what Dewalt did; she saved enough to not work for months, so she could learn coding all day long. (Not an option for me.) But the general idea—do little, tangible things—is key.

#7) “View Source”: Take other people’s code, pick it apart, and reuse it.

If you wanted to learn how a clock works, you’d disassemble it and try to reassemble it, right? That’s how the pioneering programmer Grace Hopper’s mind worked. As a curious kid, she took apart so many clocks, her parents bought her one just to disassemble and reassemble.

So it is with code. When you’re building stuff, you don’t need to start from scratch. You can grab things that already exist, rip them apart, and see how they work. It’s a superb way to learn. For example, very early on in my coding tutorials, I wanted to make a little web page to decode and encode secret messages for my kids, but I honestly hadn’t yet done enough HTML or JavaScript to figure this out. So I went to—a site where people post little web doodads and where you can inspect and reuse any of their code. I found a couple of text boxes that worked more or less the way I wanted and added in some secret-code decryption scripts. Presto: I had my project done. And by poking around in someone else’s project, I learned a bunch of useful new things about using JavaScript and HTML.

Later on, when I was looking to learn how to set up Node, a type of JavaScript used to run web servers, I started using Glitch. It’s like a server version of Codepen: There are tons of projects you can grab, remix and tinker with. I wanted to make a Twitterbot that auto-generates haikus, so I grabbed an existing Twitterbot on Glitch and started poking around in the code. By now, I understood enough JavaScript to be able to figure out what part of the Twitterbot I needed to rewrite, injecting my own function that takes 1,000 lines of haiku, randomly picks three, and squirts that out to Twitter as an insta-poem. It was a terrific way to get started. If I’d had to start from scratch, I’d never have done it.

“That’s how open source works,” as Chris Coyier, Codepen’s founder, tells me. You see something great, and you reuse it. “You’re in the clear, not just legally but morally.” Indeed, the vast majority of software you use all day long relies heavily on reused, open-source code—something someone grabbed and modified for their own purposes.

Also, starting with an existing app and making it do something new, something you uniquely want, can help prime your pump and make it less intimidating to begin a piece of code that stretches your boundaries. “It’s good when you’re not starting from a blank page because whenever I’m getting into learning a new language or a design pattern, when I started from a blank page I was overwhelmed and paralyzed,” as Jenn Schiffer, the director of community engineering for Glitch, tells me.

#8) Build things for you—code you need and want.

As I learned more coding, I realized I could make a lot of little pieces of software that were useful for me.

Here’s a funny one: I made my own Pomodoro timer. You may have heard of the “Pomodoro” technique, where you set a timer for 25 or 15 minutes and work in a focused way—not checking email or distracting yourself—until the dinger goes off, at which point you take a short break. It’s a great concept, and I used to use various Pomodoro timers online. But they all had one problem: They generally forced me to pick a quantum of time that was 15 or 25 minutes.

And, well, my procrastination problems were worse than that. I wanted a Pomodoro timer that would let me work for… five minutes. Or three. Or one minute. When I was truly avoiding work, hell, working for one damn minute would be a victory, people! But none of the Pomodoro software was designed for someone as horrifically work-avoidant as me.

So I thought, to hell with it, I’ll code my own. I used Python to make a simple “command line” timer that lets me pick precisely how many minutes I could work. (I can even pick increments: 10% of a minute! Six seconds!) And to make it funny and witty to use, I wrote a ton of cheery, you-go messages for when I finish each work session and coded it so the robotic voice of my computer speaks it aloud. (“Rock and roll,” the computer intones. “Boo ya.”) It is a weird, crazy piece of software, utterly specific to my needs. That’s precisely why no one else on the planet was going to make something like this! And why I made it for myself. It’s a customized app for an audience of one: Me. And wow, was it useful! I started using it on a daily basis; I still use it a few times a week, when I feel myself starting to slack off.

The more I coded, the more I found things I could build to make my work easier. I made web scrapers that would auto-grab material I needed off websites for journalistic research. I made Twitter scripts that would archive any links I posted to Twitter every day and email me a summary. When I got worried that I was too frequently using italics while writing my book (it is a bad habit, stylistically) I wrote a Python script to analyze the text, pull out every italicized word, and deliver me a long and humiliating list.

The point is, one of the best ways to motivate yourself to learn coding is to build little apps that actually do something you need done. It’s deeply motivating. If you’re coding in an abstract way, doing tutorials, it’s easy—when you get stuck—to think, ah, screw it, and stop. But if you’re actually building a tool you’re going to use? It pushes you to go further, to work past the frustration and the blockages.

By the way, this isn’t just about utilitarian tools. I also discovered I loved using P5.js (a “library” of JavaScript) to make little bits of interactive art, merely for the pleasure of making something pretty or playful. This is as good a motivation as any for learning to code, says Daniel Shiffman, a professor at New York University’s Interactive Telecommunications Program, who makes fantastic learn-to-code videos (including some for P5.js that I learned from). Shiffman tells me that one great way in to coding is to take something artistic you like—music, drawing, games, wordplay and text—and learn programming that works within your field.

“It’s useful to learn programming in the context of applying it to something that you’re already passionate about,” he says. If you make music, try learning Sonic Pi, which lets you program tunes. If you dig art, learn P5.js or Processing. If you like games, make one with Phaser, also based on JavaScript. Approaching coding as a fun, creative hobby demystifies it. “It’s like the way you take up knitting or join a band. You find your local community of people who are hanging out in a coffee shop learning to code, just to have fun, and an experience where you don’t know where it’s leading—as opposed to, hey, I need to memorize the top five sorting algorithms so I can pass my Google interview.”

#9) Learn how to learn.

While researching my book, I visited with the programmer who’d created a Y Combinator company that had just landed its first series of funding. “What’s the secret to being a good coder,” I asked him? He laughed.

“It’s having good Google-fu,” he said. Sure, he’s a programmer, so he writes code. But what many programmers do much of the day is sit around Googling things, reading up, trying to figure out how to do something—how to solve a problem, how to kill a bug that has stopped them in their tracks.

And frankly, given how much there is to know, a lot of programmers tell me they’re constantly Googling even pretty basic stuff—like different ways to sort or chunk a list. They might have done it hundreds of times before, but there are so many little fiddly aspects of the languages they use that it feels weirdly inefficient to use their brains for rote memorization because they can just Google whatever rote knowledge they need to quickly recall. “I’d call myself a JavaScript expert,” as Glitch’s Schiffer tells me, “and I would say I can’t remember any string-manipulation function because I can just look it up.”

(I was so deeply relieved when she said that! Me, when I’m writing JavaScript and need to find the length of a string—i.e., how many characters in “Clive Thompson”?—I look it up. Every. Single. Time.)

So when you learn to code, your core skill is going to be constantly learning and constantly relearning. That’s true in the short term and the long term. Over the years, new languages and frameworks always emerge, and old ones evolve. “Being a programmer basically means you’ll be an eternal student,” as Lydia Hallie told me.

#10) Reach out to other coders.

Learning to code can be pretty isolating—it’s hours of just wrestling with the computer. And while it’s good to try to figure things out, yourself, sometimes the fastest way to get unstuck is to ask someone else, How the heck does this work?

So nearly everyone I know who taught themselves to code built some sort of social network around coding. freeCodeCamp’s Larson urges it: “Hang out with other developers. Go to tech talks and hackathons, and hang out at startups and hackerspaces. This will help you make valuable connections and stay motivated during the long process of learning to code,” he told me. If you live in a really remote region or don’t have the mobility to find people face-to-face, try them online; freeCodeCamp and Glitch both have active forums, and sites like CodeNewbie have everything from a Slack forum to regular Twitter chats, where neophytes talk and connect.

Frankly, I wish I’d done more of this socializing. I too often spent time grinding away at a problem, myself, instead of asking for help. When I did talk to other coders about problems I was having, inevitably they’d suggest an approach that helped.


Clive’s new book Coders: The Making of a New Tribe and the Remaking of the World will be available on March 26th. 

29 Comments / Leave a comment or question