swyxio / swyxdotio

This is the repo for swyx's blog - Blog content is created in github issues, then posted on swyx.io as blog pages! Comment/watch to follow along my blog within GitHub
https://swyx.io
MIT License
339 stars 45 forks source link

Learn in Public #103

Closed swyxio closed 2 years ago

swyxio commented 2 years ago

title: Learn In Public slug: learn-in-public subtitle: The fastest way to learn category: essay tags: ['Advice', 'Principles', 'Learn In Public'] date: 2018-06-19 description: The fastest way to build your expertise, network, and second brain.

Translations welcome! (한국어, 日本語, Español 1, 中文, Español 2, Español 3, 中文, 中文 2, Português 1, Português 2 Português 3, Deutsch, Français, فارسی, हिंदी. Add yours here!)

If there's a golden rule, it's this one, so I put it first. All the other rules are more or less elaborations of this rule.

You already know that you will never be done learning. But most people "learn in private", and lurk. They consume content without creating any themselves. Again, that's fine, but we're here to talk about being in the top quintile. What you do here is to have a habit of creating learning exhaust:

Whatever your thing is, make the thing you wish you had found when you were learning. Don't judge your results by "claps" or retweets or stars or upvotes - just talk to yourself from 3 months ago. I keep an almost-daily dev blog written for no one else but me.

Guess what? It's not about reaching as many people as possible with your content. If you can do that, great, remember me when you're famous. But chances are that by far the biggest beneficiary of you trying to help past you is future you. If others benefit, that's icing.

Oh you think you're done? Don't stop there:

If you're tired of creating one-off things, start building a persistent knowledge base that grows over time. Open Source your Knowledge! At every step of the way: Document what you did and the problems you solved.

The subheading under this rule would be: Try your best to be right, but don't worry when you're wrong. Repeatedly. If you feel uncomfortable, or like an impostor, good. You're pushing yourself. Don't assume you know everything, but try your best anyway, and let the internet correct you when you are inevitably wrong. Wear your noobyness on your sleeve.

People think you suck? Good. You agree. Ask them to explain, in detail, why you suck. You want to just feel good or you want to be good? No objections, no hurt feelings. Then go away and prove them wrong. Of course, if they get abusive block them.

Did I mention that teaching is the best way to learn? Talk while you code. It can be stressful and I haven't done it all that much but my best technical interviews have been where I ended up talking like I teach instead of desperately trying to prove myself. We're animals, we're attracted to confidence and can smell desperation.

At some point you'll get some support behind you. People notice genuine learners. They'll want to help you. Don't tell them, but they just became your mentors. This is very important: Pick up what they put down. Think of them as offering up quests for you to complete. When they say "Anyone willing to help with __ __?" you're that kid in the first row with your hand already raised. These are senior engineers, some of the most in-demand people in tech. They'll spend time with you, 1 on 1, if you help them out (p.s. and there's always something they want help on). You can't pay for this stuff. They'll teach you for free. Most people don't see what's right in front of them. But not you.

"With so many junior devs out there, why will they help me?", you ask.

Because you learn in public. By teaching you, they teach many. You amplify them. You have one thing they don't: a beginner's mind. You see how this works?

At some point people will start asking you for help because of all the stuff you put out. 80% of developers are "dark", they dont write or speak or participate in public tech discourse. But you do. You must be an expert, right? Don't tell them you aren't. Answer best as you can, and when you're stuck or wrong pass it up to your mentors.

Eventually you run out of mentors, and just solve things on your own. You're still putting out content though. You see how this works?

Learn in public.

p.s. Eventually, they'll want to pay you for your help too. A lot more than you think.


Author's Note: I have written an expanded version of this essay and its related canon (below) in The Coding Career Handbook.

Read this next: The Ultimate Hack for Learning In Public (expanding on "Pick Up What They Put Down")

This essay was originally drafted in a gist and republished in Letters to a New Developer.

I continue to talk about it on podcasts even in 2022 - see the live updating list here: https://www.swyx.io/ideas/?filter=learn%20in%20public


Related links

In some places, Knowledge Management is about creating systems that get around people’s knowledge deficiencies. At Goddard, it really seems like it is about empowering people to share and reflect on what they know best. It’s a subtle distinction, but I really like that they put people in the center of this work, and start from a place of abundant knowledge in people rather than a lack of information in systems. Social media has a lot of potential, but you need to think about how to facilitate different kinds of (online and offline) relationships between people so that their thinking is improved, innovation occurs, they can get quick answers to complex problems, in order to enhance and accelerate business outcomes. One of the great benefits of using social media as a KM tool is that you are creating and capturing the knowledge at the same time. However, in order for this to truly work people have to be willing to collaborate in the open throughout the project lifecycle. “Learning in Public” is scary for many reasons – people can find and cling to outdated information and users are exposing their knowledge during a vulnerable time in the project (i.e. when they don’t yet have all the answers). However, during this part of the process is when learning can be most valuable. If you share what you know and what you don’t know in the middle of a project, you give people an opportunity to share specific knowledge that can help you in the moment. If it works, this can help save time and money.

Back in 2007 Chris Coyier launched a site called css-tricks.com. It was a site dedi- cated to teaching people how to code websites. (CSS is the language that describes how websites should look.) When CSS-Tricks first came out I remember reading a tutorial and arrogantly thinking, “I know that already.” Chris and I were at about the same skill level, so I didn’t learn anything new from him. This continued for a while as he kept putting out new tutorials. But over time, as friends started asking me CSS questions, I found it easier to link to one of Chris’s articles (since they were really well written) than explain everything myself. Years later Chris ran a Kickstarter campaign to redesign his site. Those who con- tributed would get behind-the-scenes access to additional tutorials and content re- lated to the redesign. The goal was set fairly low at $3,500. He quickly blew past the goal and by the end of the campaign had raised $89,697. Incredible. The point is that he did it with relative ease, all because he had built up an audi- ence who loved his work. He and I started at the same point and our skills progressed at about the same rate. The difference was that he taught and shared, whereas I kept what I was learning to myself. That made the difference between being able to make tens of thousands of dollars on a new project versus releasing to no one.

Nathan in general has a lot of riffs on LIP:

pjerryhu commented 2 years ago

I think this post touched a lot on the HOW of learning in public, but for people new to this concept, you probably should spend more volume on the WHY of learning in public. Motivating the effort is more important than doing it. It's after reading Pick Up What They Put Down then I realized, one of the biggest benefit is the feedback loop that it creates that can fuel further learning.

cnavarroe commented 2 years ago

Gracias por la explicación de esta forma de adquirir conocimiento de manera pública. A seguir disfrutando de este proceso y a aplicar!!!

swyxio commented 2 years ago

thanks very much @pjerryhu and gracias @cnavarroe !

RamonEspinosa commented 2 years ago

Thanks for sharing! 😄

farlandliu commented 2 years ago

Thanks for your post. I just have a new Chinese version : https://www.farland.vip/2022/04/29/learn-in-public/. Can you add it to the post?

AliLastReza commented 2 years ago

Link behind "The Ultimate Hack for Learning In Public" text not working here and in your blog post. Wrong link: https://www.swyx.io/PUWTPD/ Correct link: https://www.swyx.io/puwtpd

swyxio commented 2 years ago

thanks @farlandliu - updated! and @AliLastReza - that should be fixed!

architchandra commented 1 year ago

Thanks for writing this post. After spending years in the wilderness, this has given me a recipe for hope, growth and joy.

I've translated it in Hindi (https://architchandra.com/articles/hindi-translation-learn-in-public-swyx) to reach more audiences in India. It would be great if you can add link it to your post.

Thank you. 🙏🏽

ademidun commented 1 year ago

A part of me wishes I was fluent in another language so that I could also spread this beautiful post to other people. I'm doing what I can by sharing the link to the english version to many of the people I work with and mentor.

Learning in public has been one of the most important mental models I've learned in my life. Thank you so much for creating this @sw-yx

hillairet commented 1 year ago

This is a very inspiring article that gives a nice framework for the constant learning habit I've been working on. I noticed that the link to the French translation is broken so I did my own as a good exercise of learning in public! I got feedback from my French friends and got to practice writing in my mother tongue that I don't use often enough. So super successful already!

My French translation of your page

joemmalatesta commented 1 year ago

Thanks for writing this, the messages you portray in this blog and others you've written remind me a lot of Atomic Habits by James Clear. I urge you to read it if you have not. Also love that you've built your website with svelte and I'm taking inspiration from you for my own.

ubsoydan commented 1 year ago

Hey Shawn! How awesome this essay is! I sincerely appreciate it!

Learning is an extremely subjective process and has its own intricacies but at least there is one common ground all learners share which is 'teaching'. Teaching (or trying to teach) definitely helps because being able to teach means that you have a well built abstraction of the topic in your mind already and that is, of course, only happens if you learn it very well.

By the way, I wanted this gem to get read by others so translated it to Turkish.. Thanks for the quality content!

RickyWChew commented 1 year ago

Awesome😇

MichalGre commented 1 year ago

Thanks for your post. Very inspiring!

kowyo commented 1 year ago

Thank you! But I wonder what if I am a slow learner and always learn slower than other does. Does it still make sense when I learn in public?

Dzhango commented 1 year ago

This essay was very inspirational, thank you!

thasvarit commented 10 months ago

Hi, I've translated your article 'Learn in Public' into Thai to reach a broader audience in Thailand. You can find it here: https://touchvarit.com/2023/12/27/learn-in-public/. It would be great if you could add a link to this translation in your original post. Thanks!

jazsouf commented 10 months ago

Thanks for the inspiration. Sharing stuff with others benefits everyone.

pgersl commented 6 months ago

Hey, I try to live by the rules of this article for a few years now and helped a few people around thanks to this approach. I have translated the text to Czech, it would be great if you could add it to your site. Thanks!

isushmoy commented 6 months ago

I translated the article into Bangla (বাংলা), It would be amazing if you could add this translation to your article! Here's the link https://medium.com/@hiraku.kazuma5/শিখুন-জনসম্মুখে-learn-in-public-cb97047139f4