Table of contents
Think back to your first encounter with the concept of learning in public. Is it tech-related?
Beauty influencers: The pioneers of learning in public
(I'm pretty girly, so we're starting with a girly topic)
Before my introduction to software engineering, beauty influencers on YouTube were some of the first people I saw learning in public. They didn't call it learning in public and probably didn't know they were learning in public, but that's exactly what they were doing. Teens, tweens, and young adults regularly uploaded vulnerable videos of themselves learning to apply makeup or style their hair. Fast forward to present day: not only did they learn to do their makeup, but they're also leaders in the beauty industry, business owners, and multimillionaires. For example, Michelle Phan, one of YouTube's earliest adopters and beauty influencers, published her first video on May 2007 after receiving a job rejection from Lancôme. In 2 weeks, her video amassed 100,000 views. Ironically, in 2010, Lancôme hired her as their first Vietnamese-American spokesperson. Michelle later founded a beauty product subscription service, a cosmetics line, and a company that licenses music. Her videos opened doors for more makeup artists and content creators in different industries, like natural hair YouTubers. After decades of straightening our hair, Black women decided to embrace their natural curl patterns, and some took to YouTube to document their journey in learning how to care for their hair. In the 2010s, YouTubers like Shanique Buntyn, also known as Journey to Waist Length, started a channel experimenting with hair growth, hair products, and various hairstyles. I was a huge consumer of her content and eventually learned how to care for my natural hair.
Michelle Phan's first video
Michelle Phan's most recent makeup video since I wrote this post
Enter the creator economy.
As beauty influencers advanced, so did creators from other sectors – comedians, chefs, musical artists, gamers, and more. The creator economy includes non-celebrities building a business or personal brand by leveraging social media to share their journeys and talents to unintentionally (or intentionally) earn status and money.
Beauty influencers walked so that tech content creators could run. (If this sounds confusing, it means beauty influencers inspired technologists to teach and learn on YouTube).
The tech industry is no stranger to learning in public. Through open source, a movement dating back to the 1980s, technologists wrote code, made mistakes, and built software for everyone else to see. Platforms like GitHub and GitLab popularized open source use by developing tools that made it easier to collaborate.
Shawn Wang aka Swyx
Although developers were learning in public, it wasn't a widely known phrase. After Shawn Wang published several articles, he popularized the expression "learn in public."
Additionally, the start of the pandemic accelerated the popularity of learning in public. Most of the world went into lockdown. More developers started working remotely, which means they had more time on their hands and were probably a little lonely. (Even though I'm an introvert, I experienced loneliness too). To build our skills and community, we latched on to platforms like YouTube, Twitch, Twitter, TikTok, and blogs. Businesses faced an issue as well. With fewer in-person conferences, they had fewer opportunities to market their products and educate developers on the optimal use of their products, which could decrease adoption and sales. Companies quickly shifted their strategy by employing more Developer Advocates and Tech Content Creators to build, teach, and learn on the internet.
What is learning in public?
Learning in public means sharing your learnings on the internet. That's it. That's the tweet.
Why learn in public?
It sounds scary, so I understand why folks would hesitate to learn in public. Arguments against learning in public include:
I'm not an expert
I don't want to be wrong
I don't want to be a target for trolls
I'm not ready to share my work
Technologists don't need to become content creators
You don't have to be an expert
Here's the good news – learning in public is not about expertise or perfection. Learning in public is an honest and open way to document your progress from a beginner to an advanced learner. Even though you're not an expert, sharing your learning process in public helps to educate those who find your content.
Many times, the people consuming your content are at a similar stage as you, so it's refreshing and beneficial for them to learn alongside you. Sometimes experts struggle to explain concepts to beginners because they are so far removed from the beginner stage. While it benefits your community, it also helps you. Teaching folks is one of the best ways to reinforce learning. (I used to study for tests by informally tutoring my classmates and friends in high school. It worked like a charm!)
It's okay to be wrong
It happens. That's a part of learning. People who learn from your content prefer authenticity over perfection. It gives them the space to feel comfortable making mistakes. Occasional unintentional wrongness is fine. However, if you're intentionally spreading inaccurate information or neglecting to fact-check, that's called lying. To mitigate spreading inaccurate information, admit that you need more clarification and use that as an opportunity to learn the correct information alongside your community.
Facing your fears helps you grow
Sharing yourself and your learnings online is scary. However, you can choose to stay scared OR receive the benefits waiting on the other side, such as an improved skillset, a larger network, and a strong portfolio. You'll find methods to help you face your fears. My approach is admitting that I'm scared. After I acknowledge that I'm nervous, I feel more relaxed. I'm setting the stage that I'm not here to bring expertise; I'm here to learn and would appreciate positive support while I learn. People respond well to that, and they've embraced me in return.
Community support is a motivator
Yes, trolls exist. Even the most popular and well-respected content creators encounter trolls. However, most people are excited to see you grow. For me, support from the community is more prevalent than negative feedback from trolls. Additionally, having supporters encourages me to keep going at times when I would usually quit. This doesn't mean you should ignore your feelings and mental health. Surround yourself with the people who uplift you, block the trolls, and take necessary breaks.
Perfection is the enemy of progress
You may feel tempted to wait until your project is perfect before sharing it. I understand completely. Don't wait until you have the ideal camera, deploy the final version of your project, or become a better writer; that robs you of the benefits of learning in public. Take these three scenarios as potential outcomes:
- In scenario one, you're learning in public. People get excited about the project you're building. They tune in to observe the process. As you progress, they begin to view you as knowledgeable because there's evidence that you're gaining knowledge over time. Your network expands, and you gain more career opportunities. People help guide you in the right direction. This ignites your motivation to continue learning and building. And you've documented your growth over time, so you can look back and appreciate how far you've come.
- In scenario two, you're waiting to share your work. It takes a long period until you finally complete your goal. You announce the completion of your project, but because people weren't anticipating the launch, it gains less traction.
- In scenario three, you're waiting to share your work, but you abandon the project because you lost motivation. Nothing ever comes of the project, even though it was an excellent idea.
When you learn in public, folks become invested in your journey, and documenting that journey allows you to look back at your growth.
Building a personal brand helps you take control of your career
Personal branding, marketing, and content creation feel cringe. You just want to code, get paid, and advance your career based on merit. This is a totally valid option. I know many successful software engineers who don't use social media and don't learn in public. However, it's harder to control the direction of your career when you are waiting for other people to advocate for you. Building your brand via learning in public is a form of self-advocacy. If you cringe at self-promotion, I'll ask you this question: what's the point of being a good programmer if nobody knows?
Take a look at the careers of folks who started learning in public years ago. From my perspective, the following people took control of their careers and pivoted into their preferred direction.
- Brian Douglas - After years of leadership in Developer Relations and building his open source project, he's now converted it into a business. He quit his DevRel job to work on his open source passion project full-time.
- Jason Lengstorf - Led many Developer Relations teams and hosted a Learn with Jason series. He recently left a corporate role to host his series full-time.
- Cassidy Williams- After years of learning in public and leading in Developer Relations, Cassidy is now CTO of a company called Contenda.
- Liz Fong-Jones - Also established a strong career of learning in public. Today, she works as a Field CTO at Honeycomb.
Do you want to be a CTO, entrepreneur, full-time content creator, or professional traveler? You don't have to wait for the opportunities to come to you. Instead, you can create the opportunities you want for yourself by learning in public. Your positive reputation among technologists will inspire more people to invest in your vision.
Please note that I'm not advising you to prioritize content creation over technical skills or learning. It's another issue to have everyone know you and believe that you're an expert, but you have yet to do any work to learn. The key is to learn and work in public – not that you're publishing content to gain clout.
Grifting is not learning in public
As people started recognizing content creation's profitability, they leaned into the unfortunate practice of grifting. People who grift often have little experience or skill regarding a particular concept, but they pretend they're experts. They build an audience of unsuspecting individuals and then sell inaccurate content to their audience members. This is wrong and unethical. Instead, you can genuinely admit that you don't know, but you're learning. Approach learning in public as a way for you to build your skills. Pretending to know and understand concepts leads to embarrassment and even legal trouble.
Not sure if you're grifting? If you post a thread that says, "Learn web dev in 10 days if you buy my book", that's grifting.
When I was a kid, my mom always warned me not to speak to strangers on the internet. Ironically, communicating with strangers on the web helped build my career! In 2022, talking to strangers on the internet is regular for internet users, but sometimes we tend to overshare. Learning in public also makes you feel more comfortable sharing everything, but it's okay to keep some things private to protect your physical and mental safety.
How to learn in public
Set a SMART goal
SMART is an acronym for specific, measurable, achievable, relevant, and time-bound. This framework helps us to create realistic goals. Here is an example of SMART goals that you can set:
- Specific: I'd like to learn CSS to contribute to my team's frontend tasks.
- Measurable: I'll stream weekly for one hour as I complete a CSS course.
- Attainable: I'm already adept at React and Tailwind, so I have some knowledge of frontend.
- Relevant: Although I'm a mid-level engineer, I cannot advise my junior coworkers on decisions around CSS, and I feel more hesitant to choose those tickets.
- Time-bound: I want to feel confident writing CSS in the next six months in time for reviews.
Identify the platform you prefer to use
There is a misconception that while you learn in public, you need to stream, tweet, maintain an open source project, blog, and speak at conferences. Executing all of these AND working a full-time job is not sustainable. It's easier to manage and share on multiple platforms in DevRel because that is your full-time job. However, I advise starting with one platform. To choose between platforms, think about your most comfortable medium. For example, I've always liked expressing myself through writing, so I decided to learn in public through Twitter. Eventually, that evolved into writing blog posts. When I wanted to challenge myself, I decided to try streaming. Then, I gained more confidence speaking at conferences. It was a gradual process for me.
If you're not sure what mediums exist to learn in public, here are a few:
- Blogging - If you like to write, leverage popular developer blogging platforms such as Aviyel, Dev.to, or Hashnode to talk about what you're learning.
- Open source projects - Maybe you don't want to speak or create content, but you can code in public by creating a public repo for other to see and collaborate with.
- Twitter/Mastodon/similar social microblogging platforms - If you're always on social media, like me try microblogging platforms like Twitter. These platforms have a large tech audience, including Developers, UX Designers, Developer Advocates, and InfoSec professionals who want to collaborate and learn from each other. Post in an authentic, non-pushy way about your discoveries, wins, and losses.
- Streaming - Stream yourself live coding on a project and pair program with your viewers. Eventually, they might tell other people about your project, or they might ask to contribute themselves. Note that you might not always come up with a solution on stream, but that's okay. Streaming while you learn is a different skill that improves with time.
- Public speaking at meetups or conferences - People attend meetups and conferences to gain inspiration. Don't be afraid; they're not necessarily looking for a PhD-level lecture. Take the stage to share what you're learning, why you're learning it, issues you have faced, and discoveries you have made.
- Also try TikTok and YouTube if you're a fan of video editing and production.
Choose a manageable cadence
You have school, you have work, you have coding bootcamp, you have a family, you have chores, you have alone time, you have friends, and NOW you're adding another responsibility – learning in public. Take a look at your schedule and pick a dedicated time to learn in public. Some folks use Fridays during the workday to learn and build in public. Try discussing with your manager if it's okay to dedicate a few hours a week to your learning journey.
People always want to do a lot of prep work like having the perfect camera or building their own blogging platform first. Just get started even if everything is not perfectly in place. You will refine the quality of your work as time goes on.
Ignore the numbers
Okay, so you started posting, and you have 1 viewer? That's okay. Remember you're not doing this for fame. You're doing this to learn and build a track record of your progress. Gaining an audience is a bonus.
Observe and absorb information from others who learn in public
Not sure how to approach your content or show that you're learning in public? Observe the work of other people who are learning in public. You don't need to copy everything they are doing, but you can use their work as inspiration to learn how to gracefully make mistakes, engage with audiences, and format your content.
Track your content in a central place
Over time, you'll find that you created a ton of content, but it might live on various platforms. I like to collect my content to show my work to my current and future employers as evidence of my knowledge and impact. I use Polywork to keep track of all my blog posts, talks, and videos, but you can research and choose the platform that works for you.
Occasionally reflect on your progress
Folks who exercise often take pictures of their progress over time because sometimes you can go to the gym for one year but feel like you made 0 progress towards your goals. It's nice to look back at photos or exercise journals and realize that you made so much progress between this week and last week. The same goes for learning in public. You might have bad days where you're feeling stuck. Take a look back at your documented journey to reflect on your progress.
You did it! Take the necessary time to relax and bask in your greatness. Go to dinner or buy yourself a gift. We often overlook our accomplishments and move quickly to the next goal, but you deserve to enjoy the results of your efforts.
You achieved your goal, but your learning doesn't have to stop there. After you celebrate and relax, evaluate if it's an appropriate time to create a new plan and continue your journey of self-improvement!
Call to action
I'm still learning how to learn in public. I started by posting quick tidbits that I learned while studying computer science. Then, I started blogging about GitHub Actions. Then I blogged about my first contribution to open source. The community support helped me realize that it's more fun to learn with community support. I'm not alone!
This upcoming year I want to become better at learning in public. Let's make a resolution to learn in public together!
How do you plan to learn in public? Comment below!