travis_bumgarner_draft.dxf

I am a lifelong learner, creator, explorer, and tinkerer. This is a collection of my experiences.

Here

Elsewhere

Blog:// Learning to Learn: Develop Skills to Master Anything

Background

Before I mastered the ability to "learn how to learn", I embarked on an ambitious project. I decided to build a camera to learn more about how electronics worked. The project involved connecting electrical components, programming, soldering, and a user interface.

Completed camera I built from scratch
Completed camera I built from scratch

One Saturday afternoon, while working on the project, I encountered an issue somewhere in the camera. I spent nearly 6 hours troubleshooting. Perhaps by luck, I eventually stumbled upon the solution.

On Tuesday, I went to a meetup for makers I frequented where I asked a fellow maker how he would have diagnosed the problem. Without pause, he said, "I would have checked X and Y." The details aren't important, but that was exactly what I discovered after those 6 painful hours.

This is one of the many hurdles I've encountered in the pursuit of teaching myself new subjects. Over time, I have developed a unique set of skills. These skills have made it easier to overcome obstacles with less frustration. For me, learning new subjects is now much more rewarding and enjoyable than it used to be. I hope that I can share some of what I have learned with you.

Avoid Analysis Paralysis and Get Going

I see a lot of beginner programmers ask questions like "What's the best language to learn?". They'll then spend weeks reading and weighing pros and cons. In the end, they tend to give up without writing a single line of code.

A bit of planning and research can be useful. Spending all your time planning which way you'll go can be a dangerous thing. Pick a direction and go. If the direction is wrong, you can always stop and ask for help later.

Find Yourself a Good Community

Having a good community is critical to your education. When learning a new subject, it's hard to tell what's right. Developing bad habits that go uncorrected can lead to some real pains later on. A community offers a place to ask questions and get feedback.

Note: A Bit of Struggle is a ~~Good~~ Great Thing Before Approaching a Community for Help.

6 hours of struggle was not helpful in learning about electronics. Giving up when I first encountered the bug would not have been very good either. Somewhere between the thirty minute and two hour mark there is a sweet spot. There is more experience gained than frustration encountered.

The Sweet Spot
The Sweet Spot

A bit of struggling is great for two reasons.

The first is that you learn to deal with frustration and the unknown. Learning a new subject, can be quite frustrating. Developing a "frustration muscle" to deal with challenging moments is helpful

Second, In the pursuit of solving an issue, it causes you to consider it from different angles. Those different angles will help you learn more about the subject.

Local Meetups

One of the first things I did when I moved to Boston was start attending local meetups. Meetups offer a great space to listen to experts, chat with others, and work on your own projects. There's sometimes even free food and drink!

Friends, Family, & Coworkers

This one is pretty straight forward. Ask questions of those immediately around you!

When I first moved to Boston, I took a temp job at a small electrical engineering firm. I decided to start learning about circuits and building products. I picked the brains of lots of my coworkers. I learned about circuit board design, packaging, shipping, customer support, and sales.

I recommend giving a little something in exchange for their help, such as treating them to lunch.

Internet Gatherings

If for whatever reason, local meetups don't work for you, there are a load of online communities to join. Slack, Discord, IRC, forums, and Reddit are a few great platforms.

Google searches such as "programming Slack communities" will turn up lists like this. This should offer a great starting point to finding yourself a community.

Keep in mind, that some communities are better than others so try a few out and see which one(s) work best for you.

Find Great Teaching Resources

One of the most amazing things about the internet is the sheer amount of content there is out there to consume. The rating systems help to tell you whether said content is of great quality or not.

Books

Amazon is one of my favorite places to go to buy books.

My method is pretty simple, say I want to learn something like Python, I'll search for "Python". I'll click on a few highly rated books, read the descriptions and reviews, and make a purchase.

Only once has this strategy failed me and I ended up with a book I didn't enjoy. Otherwise, I have several bookshelves full of excellent books.

Recorded Video Content

There is a ton of online content out there. Below are a list of my favorites.

  • YouTube has everything from short clips to full courses.
  • edX offers free recordings and resources from top universities like MIT and Harvard.
  • O'Reilly offers digital books and video courses.

Live Video Content

Twitch is perhaps an unexpected site to find here. While you probably know it for streaming video games, it's also a great place to learn. Beyond video games, you can watch people playing music, painting, and programming.

Recursive Learning

A few years back I worked for a pharmaceutical company as a software engineer. Day 1, I was completely lost in conversations outside of software. Biology and chemistry were not my strengths in high school. I struggled to understand what the company did, so I went and read the mission page. Unfortunately, I left the page more lost than before I arrived.

I decided to use the company description as a starting point and look up each of the words I didn't know. There were words in those definitions I didn't understand. I kept going until I had a decent enough understanding of it all. Then I built it back up to understand the company's mission.

The process of looking up the words didn't always end up in me going to a dictionary. Would you go to a dictionary to learn the parts of a guitar? Instead, use the tools I've outline above to get the answers you need.

Recursive learning is an important skill. Self teaching isn't linear. You'll sometimes encounter concepts out of order. It's easy to get flustered in such a situation. In such situations, recursive learning will help you get yourself on track.

Know When to Take a Break

Burnout is a great way to kill interest in a subject. A few years ago, I decided to learn programming in pursuit of a new career.

I would throw myself at it for hours on end. Sometimes I would sit in a cafe for 8 to 10 hours a day, head home, and resume programming until the wee hours of the morning.

I found myself grinding my teeth, feeling like a zombie at the end of the day, and generally being a grouch.

My First Burnout
My First Burnout

Above is a chart of the code I wrote, measured via GitHub, for the year 2017. The darker the square, the more code written on that day. You can see that between Mid February and April I was coding often. Then I wasn't. I pushed myself too hard and for too long. I had burned myself out and did not write code for the next several months.

Learning a new subject can be draining and it's important to know when to take a break.

Below are a few tips that have helped me avoid burnout.

Keep an Eye on Yourself

When I used to set out for a day of learning, I'd push myself until I had nothing left. The only way to fix it was eight hours of sleep and a new day.

Nowadays, instead, when I start to feel drained, I'll stop and call it a day. This leaves the rest of my afternoon open for fun and I feel accomplished and not zombie-like for the rest of the day.

No Need to Work for Hours Straight

Imagine two situations - working for 5 hours straight, or working for 2 periods of 2 hours with a 1 hour break. For me, I achieve about as much in the same span of time and feel better when I'm done.

Ask For Help

As mentioned above that a bit of struggle is a great thing, too much can have negative consequences. Sometimes, in the middle of learning, it's a struggle to know when to stop and ask for help. Be aware, and know when to stop and get help.

Know When to Quit

For the longest time, I struggled with the word failure. Growing up, I came to see failure as something to be avoided at all costs, equating it with a lack of effort.

Failing something such as a math test was unacceptable.

In life after classrooms, I realized that there's more to the term than what I experienced in school. I could put my best into something such as a new business and it still might fail. That doesn't mean I didn't try my best or that there was a lack of effort, these things happen.

Sometimes learning a new subject doesn't work out. For as many things I've succeeded at, there's an equal number of failures.

I like to explore and learn until I've lost interest or satisfied my curiosity. It's definitely easier said than done. Walking the line between being temporarily frustrated and permanently done is something that comes with experience and time.

I'll leave that decision up to you.

Pat Yourself on the Back

I think Shawn Achor's TEDx talk on The Happy Secret to Better Work puts it better than I can, so I'll leave it to him.

...And I found that most companies and schools follow a formula for success, which is this: If I work harder, I'll be more successful. And if I'm more successful, then I'll be happier. That undergirds most of our parenting and managing styles, the way that we motivate our behavior.

And the problem is it's scientifically broken and backwards for two reasons. Every time your brain has a success, you just changed the goalpost of what success looked like. You got good grades, now you have to get better grades, you got into a good school and after you get into a better one, you got a good job, now you have to get a better job, you hit your sales target, we're going to change it. And if happiness is on the opposite side of success, your brain never gets there.

The full video is worth a watch:

Share Your Progress and Product With the World & Give Back

I always told myself that one day, with the knowledge I was acquiring, that I'd pay it forward.

I ask that as you learn, share what you have learned with others. It could be anything from teaching a class to writing a blog post.