 Do I do I use this mic as well as this? Oh, hello Wow, I have presentation mode This is very unusual for me. Hang on If I just click play This works. Okay Hi everyone. Okay, so I'm Sean I and thanks so much way for that awesome intro and I'm I'm super impressed. This is my first time at Shopee and You know, I'm I'm this is my first time actually speaking at a react event in Singapore even though I'm Singaporean I live I live in New York And I do a lot of stuff. I'm pretty active in the react scene over there And it's very it's very encouraging for me to see local tech companies employees staying after work To like talk about tech It's like you have nothing better to do But don't worry neither do I So, um, I want to make this I want to I this is more this my first ever Soft skills talk like non technical talk. Uh, it's it consists of advice that um has helped me a lot in my career Um, I think that uh, it's it's really beneficial to me. I don't think it applies to everybody There's some people for which this will not be good advice But I think for for people who might who who need to hear it I want to be there and available for you. Um as someone who's been on that same journey Um, and so so, yeah, I'm just going to introduce myself a little bit. Um, I go by switch on twitter. Um I work at netlify as a developer experience engineer focusing on react in general. Um, I Also am a moderator on the r slash react jara subreddit. There's 120,000 of us Talking and sharing and writing about react Um, and I'll tell you the story about how I got to be a moderator. That's part of this journey um, and and the last thing I do is is learn in public which is A little bit of like a hashtag movements, whatever you call it. It's just Uh, some piece of advice that I decided to write down one day and then it went viral Um, and and now and now I'm here. So so, uh, so thanks very much for for inviting me Um, there are two pieces of there are two like groups of topics that I wanted to discuss Uh, and this is very much a work in progress. So It's very open to interpretation. Um But I'm just gonna I'm trying to give you a try high level opinion high level overview and then Also give time for questions because I think that there there's some people with who've already read some of this Um, and want to have questions. Um, so actually, uh, the first the first part Is is the seven opinions piece. So basically what this was was, um, I graduated from bootcamp I'm not I'm not a cs grad. I'm not a cs grad. I only changed careers about two years ago A lot of people don't don't even know that from from from looking at me. Uh, that's a little bit of the secret but But but I wrote this I wrote this series of essays as uh, so like a Like going back and giving advice to to former students for people who are also trying to advance their careers in tech And I originally started with seven. I have some ideas for seven, but I only wrote four. So, um, if you're interested in like the question marks Um, uh, you can you can approach me later and I'll I'll spit ball I I don't think I I don't think I have them finalized yet But I wrote that I wrote these things about a year ago And the the key one is learning public. Um, and then the second one is a follow-up that I wrote like a couple months ago Um, which is a lot of people like A lot of people when they when they're convinced about that they should learn in public Um, the the the next question is how do I start? Um, and so this this goes this essay goes into a little bit about that But that's the rough structure of what we're going to do. Okay, so the sales pitch for learning public Basically, it sums up it can be summed up in the concept that you you have a choice of either Learning in private or learning in public by default most of us learn in private The everything that we that we consume we just kind of passively absorb it and then try to practice it in the future We don't really create learning exhaust. Um, and that's something that I picked up from Brad Frost. He's um Author of like CSS he created the the the concept of uh, um, I guess the the design system Layers and you know that I forget what the name of it is. Um But create learning exhaust. Um, I I have one question in in the pre q&a Um about like how it's so hard like you're you're doing a day job You're doing like maybe some open source or self-learning. Um, it's hard to write extra blog posts on top of it I fully agree. Um, the benefit is, um, you don't have to write for anyone but yourself Write for past you and then keep that keep that as a daily log It doesn't have to make sense to anyone else, but you just like notes Um, and more often than not you actually you actually find that the the main benefit beneficiary is future you So, uh, if if you need to suddenly look back or something that you did six months ago You have the logo that um, but it's from there if you establish that daily habit It's actually not too far to to then polish that up into a slightly nicer blog post for other people to to look up um And mainly the the the thing that you're going for is documenting what you did and the problems you solved Um, and after a while like when you when you you start feeling that you're comfortable doing this, um You you should uh, you should then start publishing for the purposes of um consumption by other people Right blogging on on like free code cam css tricks, whatever and A lot of people stop themselves or don't ship because they want it to be perfect They want they want to like sit on it like make sure they have the right research every last thing I do that. Um, I don't even like just to be clear I don't even follow my own advice most of the time like I just this is like this is me at my best. Um, so The the the point is like just do your best Do your due diligence and then like let yourself be wrong like if you're wrong on the internet There's one thing you can count on the internet is they will come and correct you This is called conningham's law and I know it's called conningham's law Why because once on the podcast I called it godwin's law and guess what? Someone came and corrected me and told me it's conningham's law So so it literally is just how the internet works and once you've been publicly wrong You will never forget it, right? Like it's just impossible physically impossible for you to to forget it Let me show you some of the things I've done. Um, just to make it real for you Like this is not theory. This is actually what I've done So a lot of people in the room are react developers. A lot of people People in the room have seen the introduction of react suspense. Yeah concurrent react So that was the Danny mobile thing it started in March of last year And basically what I did Around about then again like I was a nobody The first thing I did went when that when that when uh, so that happened. Oh, you cannot see my screen. Shit Um, hang on Displays, are you just going to mirror? Okay, thank you Better, okay, cool. So this is my dev2 account dev2 is medium for developers. Don't use medium use dev2 just a pro pro tip um and uh So what what happened so march 1st was that introduction of react suspense March 2nd, I had gone through that entire talk multiple times. I looked for the source code I cloned it. I worked through the entire source code and then I wrote this piece up So this is the first thing that actually and this is like a year and a bit ago And that's the first thing that actually explained in detail every single, um There was a lot of blah blah blah, right? Don't uh, that's not necessary But it's explain it in in in detail And walking through the code everything that daniel vermont presented So this is really just like me making notes for myself, right? But I also took care took care to write it up in in a consumable way Um, and that got me Noticed by daniel vermont like it's it's a mathematical like it's not that hard right like to to like If you're learning in public about the things that someone else is presenting Um, uh, first of all, they want to correct you because that's how the internet works Um, if you if you got anything wrong But second of all, if you explain it in a different way in a beginner's mind's way You have something that the experts do not do not have you can talk to your previous self Who is someone that didn't know this topic before so you can explain it in in new terms and uh, if that's if that helps That that actually helps them because they're not they're already experts and they don't have time to like Write all these super long explanations and so all that so so obviously he like, you know Start sharing it for me and like I can start building Some expertise in react suspense, um, which I have by the way zero expertise because at the time I was Only in my second month in my react job um, so then I started, um Creating this timeline of events. So I started like creating community resources, right? I was like, all right. Let's let's let's let's like check in all the this is a github repo Let's let's like log to put put like create one central place to log all the The massive amount of information coming out about this new api. That's that's that's in react So here's all the here's all the public team communication Here's a community code from from either the the official official demos from from people or Stuff that other people other react developers have have have collected together like I'm not doing anything technical here I'm just being a repo guy. Like, you know, you can in in, um In another world, this would be like, you know, one of the syndrome is like awesome dash react or awesome Whatever, right. Um, I just don't like awesome because a lot of things are no longer awesome after a while, right? Um, and people don't don't have a process for removing that So so, um, I call it fresh, uh, because like I want to keep it fresh I want to keep a timeline because this thing is quickly evolving. Um I also uh split things up into for people into information about concurrent react react suspense um time slicing streaming ssr Basically deaf tools profiler, which was actually has nothing to do with concurrent react, but it was also a new thing at the time Um, so so I didn't start collecting all that info as well as some history from like 2017 all the way to 2014 when concurrent react was first introduced or first mentioned about Which is by the way, like anybody doing research on react suspense and concurrent reacts Will eventually find this repo because it like now has all the all the links, right? So it's like the the number one research resource And then and then eventually I was like, okay, I have all this info. It's in unstructured format Let's actually make it structured and and and so now we have what what it is today, which is Essentially docs for the first version of docs anywhere for react suspense So I have I have um, you know, this is how to use it. This is the this is the api And and and I have all the I have all the you know the the undocumented like you know This is like borderline Not cool with the react team because they don't want people to actually start using it But this is good for enthusiasts and and people doing demos to understand What is the what's the current state of things? So I at least provide a view of the historical state of things allow you to create a timeline But then also have a snapshot of the current state of things. I think that's very cool So so that was essentially my learning public thing for for early early last year. I also did I think like a hundred days of css stuff and that was that was really cool More recently My my my most successful thing so far has been the react text to the cheat sheet I know that multiple devs at I don't know airbnb uber. I like I can't I can't even keep track of like I can now These guys have learned typescript from me because because I just wrote down my own learnings as I As I try to adopt typescript within react These are just docs that did not exist So I just started writing creating these reusable resources And then and then it just grows and grows and grows because obviously as people as people need You know and and and being me being me being An experienced developer going in the typescript I wanted things like okay. I have a problem. How do I troubleshoot? So I just made a troubleshooting handbook This is not the kind of things that you have to ask permission for like just make it No, no one no one's like no one's saying you can't do that Like it doesn't exist in the official ts docs. Therefore like you're in a tough luck No, like, you know, I think I think that I think that people should create their own resources and make that useful for other people And therefore people will start contributing like a lot of these are not even made by me They're contributed by the community And therefore I have people teaching me And and for example, like the entire typescript team has a core team has reviewed this And you cannot pay for this. That's that's one of the that's one of the the key facts about this about learning public You get the the the kind of mentorship and advice and review that you cannot pay for Let me give you one more example on the reactjs.org site, so I I contributed exactly once to react And that was to pick up one of these issues. If you know, there's like a good first issue tag on github so Contributing docs So I contributed it at the merge in the pr I got the nice fancy contributor tag and then I never contributed ever again Because that process sucked But what I did was I double dipped on my experience I was I was I have I now have this experience that 99 percent of react developers have never had How do I like share that? So I made that into a talk and it is now the Introductory video So this is this is me From the react docs So It's it's like it's nothing major like I want to emphasize like I know I know this is very newbie beginner stuff But like being able to tell that story and being able to like make the most out of your experience Like helps to start you off on that learning public journey and And then people are incentivized like you're you're it's like When you once when you once help from some people, right? I think it should be a equal value like they should be getting something from you and you should be getting something from them It's very difficult if it's just a one-way street And but even even even as someone as like it's relatively more beginner You you still have something to offer and in your in your like energy your ability to share your ability to like pull in others Because by by like by the time that they're reached for example, like the react core team No one ever believes they're human anymore Like they're like, oh just come in trying that and it and no one believes them But if you are you know a recent beginner and you say that you did it That's more convincing to other people Okay, so um and that's and like a lot like just a history of uh of community contribution contributions got me Invested I was also on reddit for quite a while and that's that's how I eventually got the job of um The react moderator on reddit Okay, so i'm not here to holly end right like i'm just like I want you to know that like this is me. Oh, I'm also not alone This is chris quayer. Anyone know chris quayer? Yeah uh css tricks guy He attributes his success is to showing up persistence and just working in public um, so here um, this uh Where's the other sorry? I think I clicked the wrong link So chris chris quayer has this thing about working public like basically I looked at successful devs in our industry and like the few times that they've talked about like What made them like successful? Um, it's all the same shit. It's just do stuff in public and and then like just get good Over like over many many years um, this is this is chris quayer and and how and how Um, he started css tricks because no one else did he wasn't like the world's leading authority on css tricks But 20 years later he here he is like and he is the world's leading authority on css tricks It's because he's been doing it so long Um, it's it's not it's not something that you you like earn on day one It's not something you're ever qualified for but you you earn it by Um, just showing up repeatedly and learning in public. This is kenzie dodds He calls it intentional career building. He has a he has a he has a talk as well about how um, he uh, he's only he like gone to the angular core team like three years out of university Um, and then and then now it's like a leading react Instructor, um, and he calls communicating double dipping already told you about how I double dip Create value. Um, so again, this is this is more sort of advanced like once you're you have the the habit of creating Learning exhaust owning a content like he does. Yeah So everyone has everyone has has little pieces of advice. This is patrick mckenzie Those of you on hacker news will will will be familiar with that name. He he's one of these like Laotiel like give advice on the internet guys Um, and he's and his his advice is don't end the week with nothing like you you spend most of your week working for shopee what At the end of the week is part of you like what what leaves with you If one day God forbid you should ever leave shopee He should he should also be thinking about your own career and your own development as well What else corey house? I really respect this guy Becoming an outlier again. These are all like very different perspectives on career success personal success and growth as a developer. This is jeff adwood He he's he's more. He's a co-founder of stack overflow and he's more direct Just stop sucking and be awesome And the and the how-to is embrace the suck because it's gonna suck when you're wrong in public You do whatever you do in public and then you pick stuff that matters So picking that is a little bit of like investing and like making bets you do have to make bets And you will be wrong on some of them, but overall It should be pretty easy and that's that's one of the arguments that I have in my essay Okay, blah blah blah, right I have more I have more so that was the first of What should be seven essays in the learning public series? But I don't have time to present everything. I also want to present a little bit about learning gears How to start learning in learning in public for for people who who haven't really begun Basically, I have a theory that there are three gears like gears of learning kind of like bicycle gears like Gear one is like very powerful, but very slow gear three is most powerful Fastest but least powerful. So you if you need to climb up a steep slope You're gonna want to drop the gear one So so the the first gear is explorer gear. So I don't have slides prepared for this, but So so this is and and all this is on my side, but this this is actually the idea of learning gears So the first gear is the explorer gear. The main problem is that you don't know what you don't know The creative exhaust that you write are mainly notes to self. Let me show you my notes to self actually. They they suck But Again, I've been doing this every day more or less since 2017 And some of them have like random notes like like this. I don't know what this is Yeah, I don't know. This is some I was working for the Gatsby team at the time And then we had some meeting and I just took some notes Again, this means nothing to to people who are not me, right? But it will be relevant at some point to people. I have vim tips for myself. What is vim tips? Yeah, things I like about vim Yeah Yeah, again, so so again, like no effort right like I think someone was asking me Was asking the q&a like it takes so much effort to write blogs. No, it doesn't it doesn't You're just writing it for yourself. So that's the explorer gear. Let me let me go back to my my essay about that So no mostly notes to self You want to level up a little bit put it in tweets Put it on stack overflow questions You know, you can ask can answer your own questions or answer someone answer someone else's that time commitment Just make that very low. But just make sure you keep showing up and make it a habit You're no one expects anything from you when you're when you're in explorer mode There's no unifying theme. You're not the x person or x Whatever, you're just like this is currently what you're working on the public commitment level Is low, right? So, um, you're not you're not you you're you're usually operating in one day sprints of like, what do I feel like doing today? So that's the explorer gear the connector gear is like kind of like the next level up the connector gear is Is the the problem here is that you know many you know things that others don't know and you're now you're connecting Them to your knowledge or or different fields with each other that don't usually talk Which I which I do a lot for example with reactant typescript or graph ql and reactant that kind of thing Over over in the connector gear the creative exhaust that you make is explicitly meant for others to read So here you're actually putting some polish into your work So i'll i'll give you one example. This is my article on css tricks Basically rehashing a bunch of different different trends going on in um in design systems typescript apollo and react I just pulled together data points Information put it in some historical context again. Nothing new right? I haven't come up with anything new But I was just like all right. I see I see like striped through a little zappio all the all adopting this airbnb as well Like try to explain what's going on And then and then and then start and then like leave some areas for research but basically All i'm doing is like writing up in a nicer blog post that does take more effort And you're not typically like laying down everything that you know But it does help other people because it's it's made for them to consume And this includes making talks right like like this one. I'm making my own advice more consumable for you Even though it's all in my head And making like blog posts and and books and and other and other things Including the the Even this right this is like i'm connecting people with like You know what what is in current react or i'm connecting people with what is in typescript So these are all valid examples You still don't have a grand overall arching theme to your work people don't know you as one particular person But you're and you're usually juggling multiple themes and the public commitment is usually moderate like a few weeks or months You'll be doing a certain thing For example, if I if I commit to giving a conference talk and i've given quite a few That's usually four to six months out and i'll be i'll be preparing for that talk in that in in that time So that's you see how that's different from the explorer gear And that's that's that's the that's the meaning i want to impress upon you A lot of a lot of instructors and teachers and workshop people are here as well They're not teaching anything that they made themselves But they're just rehashing and making more consumable for people and that is extraordinarily valuable That in fact that is what you you pay for when you go to a university a lot of the stuff that you learn It's not created by the people teaching you it's created by others and you know, you write textbooks and stuff to To learn that um, and then the last gear is mining So this is when you really struck something that no one else is doing that is gold because other people are interested in it and um And really your your your what you do here is you plant your flag you say this is the thing that I do I do nothing else The main problem to solve is that something important to you or to the world is too hard Or the world's to a world too knows too little about something that's important and therefore you dive deep into it So your this is like if you're in academia, you're doing your phd in this And you just like you're obsessed by it. You're or you're I'm normally good at it. Whatever it is You start going deeper way deeper than anyone else. Um, and therefore You're doing basically very specialized r&d or you're building community infrastructure um Why did Tobias copper's create web pack? Why did sebesa mckenzie create babel? It's not because they like set out to like I will I want to make my name What let's look around and like and like get famous for for this thing No, they were just solving this thing that they were just abnormally obsessed by and they were like screw it I'm just going to do it. Um, and that's that's essentially it the community infrastructure like they no longer Yeah, neither Tobias coppers or a sebesa mckenzie or Even jordan walk the creator react None of them do talks anymore because they don't they don't need exposure. They don't need anything They're they're just off in their own world like creating creating stuff And the world finds them right like you in in the in the connector gear You're still trying to get distribution and reach like hey, have you read my blog post yet? That's stupid what Once you once you start mining and you're like really like the world's foremost authority on something Then people come to you which is very nice And so now you have one overall uniting theme whenever someone thinks about hey For example, if I think about Animations in svg. There's only one person in the entire world. I think about is sarah jasner and as a as a As a company, let's say I have a problem. I want to hire consultants That's where you want to be as a consultant. You want to be recognized as the x person I used to say this is like you want to be the guy, but this is more sort of gender bias so don't don't take the gender thing, but like There's there's literally a ride sharing guy. Let me just like ride share guy Is he the best ride share guy in the world? I don't know but google says he is The points guy. What does he do? maximize your travel like Personal branding is about Being the guy again, please like if you're if you're not if you don't identify as a guy just like The person like the the the the dominant person in that category because you have just invested So freaking heavily in the thing that no one else is even going to come close Um, so people come to you. That's a very nice aspect of that Okay, so um, I'm I'm a little bit running out of time. Um I have other pieces of advice as well about knowing your tools Cloning open source apps as well as specializing in new things These are all the things that I've touched upon briefly in this talk But I also wanted to leave some time over for q&a. Um, I think I have Some questions coming in from the the shoppy thing So whoever tzink is I think I've um spoken to you As well. Yeah, um, was that was that helpful? Do you have a follow-up? Okay And honestly like this this something I this something I care a lot about as well People ask me to be their mentors and I'm like that's stupid. That's a job that I do not want But if you have specific questions about something I can help you with I will help you And then if you if you come back the next day with another question I will help you again come in the next day and the next day and the next day And eventually I'm doing that job But like let's just not let's just not call it a mentorship thing Time how how can you share a bit more of a daily routine weekend routine? um That's very that's very personal And Honestly and again, like I do not follow my own advice all the time right like this is the best of me And and I have my weak points my lazy points as well I I do I do seek to be better Myself as something I'm currently in the connector gear. I really want to be a minor One of the things I'm mining on is a proposal for single fund components and react and possibly A new framework that that might potentially kill create react app So this is single file components and react and and I have I have a basic working prototype But again, this is something that I don't quite believe in it Fully yet So there is no routine. I'm not a routines kind of guy I'm more of a like what is interesting to me right now and what is cool Also my I have a lot of speaking So these these are the talks that I do A lot of A lot of them a lot of them are so like a lot of a lot of the work will be driven by the the conference schedule when the um And the the other day to day stuff that's going on in my company For example the past three months I've been a cli developer because of the new product that my company launched an LFI dev um And obviously I spent three months working on on a cli what happens at the end of that three months I do a talk about it Uh, so then I randomly got invited to do this talk about adaptive intent base cli state machines I still don't know what that means, but I Yeah But basically like, you know, just make the most out of out of your day, right like double dip And and all that uh, curious about learning probably. Yeah, okay So I I probably answered that just look at my my talk stuff and my writing stuff Okay, let's go to waste questions. What are you learning now? So I'd say I'm mostly learning typescript stuff now. Um Yeah, but I want to I want to do more Yeah Um, I don't I don't yeah, I feel I feel like I'm like I have I have a lot of pot cooking right now and I'm sort of juggling a lot of different things How do you pick your subjects to learn? Uh, yeah, this one is this one I care a lot about which is um I think the the market will tell you like people's people's interests will tell you people what people other people are talking about And I also have some advice in there about You like whatever is hot right now you pick the thing that's adjacent to it because that will be That will be the next hot stuff And there's there's a lot of there's a lot of economic reasoning behind that What are some subjects of non or topics that non CS majors miss? Okay, anyway, I want to leave some time for like any like maybe two audience questions if anyone has audience questions I've answered absolutely everything Um, no and again like this is this just for this just like my own personal journey. Um, I absolutely think that There are some advice that I can learn from from everyone. So Yeah, have a chat with me afterwards Hey