Today's episode of developer Tea is a personal episode with Michael Chan and today we're digging into faith, life and difficult situations. I challenge you as you're listening to part 2 of this week's two-part episode is to ask yourself how you would answer these same questions.
Instantly deploy and manage an SSD server in the Linode Cloud. Get a server running in seconds with your choice of Linux distro, resources, and node location. Developer Tea listeners can get a $20 credit and try it out for free when you visit: linode.com/developertea and use promo code: DeveloperTea2018
P.s. They're also hiring! Visit https://www.linode.com/careers to see what careers are available to you.
If you have questions about today's episode, want to start a conversation about today's topic or just want to let us know if you found this episode valuable I encourage you to join the conversation or start your own on our community platform Spectrum.chat/specfm/developer-tea
If you're enjoying the show and want to support the content head over to iTunes and leave a review! It helps other developers discover the show and keep us focused on what matters to you.
Transcript (Generated by OpenAI Whisper)
Every one of us. I mean if you look back, you know at any one of your heroes like at a certain point They they knew nothing right and they might have been making the same exact mistakes as you or worse and it's The this hero culture that we have I am I'm not really sure Why I think it's you know it goes beyond web development too, but I just man I I get excited when people really open up About the struggles that they have had Because I think that that is what we really want to see and yeah, we want heroes want people to look up to but I think also like we want some like camaraderie and solidarity and You know it's there you just kind of have to look for it really hard That was the voice of Michael Chan This is part two of my interview with my goal if you missed out on the first part I encourage you to go back and listen to that before you jump into the second part My name is Jonathan Cutrell and you're listening to Developer Tea and my goal on the show is to help driven developers like you Connect to your career purpose and do better work so you can have a positive influence on the people around you and And one of the ways that I help you connect to your career purpose is by talking to people like Michael who are in the industry they're doing work in the industry They are struggling with the same kinds of questions that you're struggling with the same, you know existential crises that all of us eventually have Why do I do what I do and And they have times where things are not clear where the future is uncertain That's true for all of us and then they have times of triumph and they have moments where Everything seems to be going in the right direction or they have an epiphany And I want to encourage you that Regardless of where you are in your career to listen to this episode and And try to find ways that you can see yourself in Michael or in myself and You can compare your experiences and try to learn from Others experiences from our experiences and do this with any other podcast that you listen to or anytime that you encounter another developer Who is in one of those moments in their career or even if they're in just a normal time in their career learning how you can look at your own life In light of the lives of others and the experiences of others is going to change the way that you think about career development Let's go ahead and jump into part two of this interview with Michael Chan You know when we when we deal with and this goes back to what we're talking about previously then when you view people in light of their pain that is Kind of an odd way, but it ends up equalizing us in some way Right because and another kind of trick that my brain has started using maybe accidentally It's recognizing that even for the people that I hold up as my heroes There's something that I know that they don't yeah something about something right and sometimes it could even be about Programming I might know something about JavaScript that some of my Ruby heroes don't and this this is kind of a moment of realization that you know Resources are not inless and there's also this this psychological effect And if you listen to the show for very long at all, you know I'm going to reference Danny Coniman in his book thinking fast and slow He talks about this this exact Kind of cognitive bias, but it's called the halo effect and what the what the halo effect does is it essentially says okay I have a person that is really good Let's look I'm just gonna talk about you Michael somebody who knows a lot about react so much so that they can create Teaching materials about the subject and so therefore Anything else that I imagine you doing I'm going to kind of approximate that you're gonna be as good at those other things And you are at that thing and it's easy to tear down for obvious things like you wouldn't want Einstein to be on your basketball team That's that's the the kind of the common example, but I don't know Maybe I do want Michael to write all of my PHP as well Maybe I do Believe that because you're good at CSS you could actually sit down and design a logo and it be world class And so we have these these kind of inflated perceptions that are results of this halo effect and they cause us To and we don't have the same perceptions of ourselves obviously, right? So we forget the things that we're good at And we inflate the things that other people are good at naturally Right, this is something we automatically do and so if we can remind ourselves and this is kind of like an unbiasing Attempt reminder selves that That we actually are probably and this isn't like a pride thing It's not to build yourself up, but it's more of like a reality check You probably know something that you're hero doesn't know yeah, I That whole thing is is It's so true and I feel that like every day every day I I jump on Twitter and I get kind of like immediately sad about the things that I don't know or the things that I don't have an Opportunity to try out in my job or whatever and I think the The resources that I've been able to make kind of back to when you're earlier questions have been an exercise for me in not getting stuck in that and a lot of times so I mean this little thing called react cheat sheet and It's really funny because a lot of people like you know, they'll be like oh, hey, thanks for making that That's awesome. I use it all the time. It helped me out like kind of helped me distill the concepts But I made it for me because I needed a reason to dive into all of the APIs and kind of try to understand them better enough to be able to say what they did and There's a lot of value in kind of running into the spike and being like you know what I don't know this But I'd like to so I'm gonna do something that you know even if it's the worst thing worst thing ever I have to go through that in order to grow and I watched I mean I watched this terrible movie Like I think it's called I can't set it up set it up and it's it's a terrible Romantic comedy it's it's oh it's a Netflix Produced comedy is not romantic on yeah, and I've seen the thing. Yeah, absolutely and I do not recommend it But I'm gonna ruin it for you so spoiler alert fast forward a couple seconds if you don't want to hear the The big turning point for the the heroin of the story is that all this time she has like built up in her mind like what her best work looks like and She's been unable to produce it because she's not actually like produced anything yet You know, and so she has this concept of like what she is capable of and what she's supposed to be doing that is totally divorced from reality and her big moment is when her best friend says hey you You just need to go and write the shittiest article sorry You need you need to write the worst article that you can like don't worry about quality You just need to go out there and you need to do it and And and that becomes like a mantra for her like okay. I'm writing the worst like the worst article on this subject that I could possibly write and Man, that's so freeing like those days. Yeah, I don't know this thing. I'm never gonna learn it And it's like no, I'm gonna write the worst Post about promises that have ever been written and I will learn something even if I get judged Judge for it. Yeah, that's so good. It's it's very similar to a concept that I learned from I think it was Adam Savage actually from myth busters. Yeah, and the tested podcast He talks about I can't remember exactly what resources is from it seems like it was on his on his website But in a video he was talking about Teaching his sons I believe his sons how to craft and how to build things like physical stuff because you know his He's climbed a fame before myth busters was building sets and stunt You know materials for movies. Yeah, and so one of his pieces of advice and it was so profound to me And I haven't forgotten it is to always plan to throw the first one away And it seems so simple right it's like oh well, of course you're gonna screw it up, but it's not it's not just about Like allowing for it. It's planning to yeah, so you you prepare for and that's exactly that same concept of going go and write the worst thing because it's disposable It's not you don't attach yourself so so much to what you're doing I actually recently bought the materials to buy my son or to make my son a little busy board for Christmas He's 18 months old and he's gonna you know has little knobs and buttons and stuff And I remember being in in the hardware store and looking at the materials And thinking well, okay, so what do I do? How much should I get then that stuck with me so strongly that I got two of all of the wood I can't say I can build two of them, but I'm probably gonna screw the first one up so bad that I'm gonna want to build the second one That's so funny that advice is incredible and I've never heard it which is surprising, but I have Found that I've been living in it. I'm trying really hard to learn how to cook over the past year because I Amatrocious in I could make eggs and that was it. That was basically just so I could survive I would make eggs And I have found that in this area where I know absolutely zero Every time I try something I'm like I just get double of everything because I'm gonna try it tonight That I do it and I know that it's gonna be terrible and my kids have told me they were like that was the worst broccoli cheddar soup that we have ever had And then the next day I do it again and I'm like hey, that was palatable and That's excellent That's so good. Yeah, man. That's that's so true. That's gonna stick with me now that now that you've revealed it to me There's another mantra that actually kind of sums it up and it works not just for You know having or I guess craft Whether that craft is code or not doesn't really matter if you by the way you can practice that in code too It's more of a mental mindset, right where you maybe you branch off and You write a bunch of crappy code Mm-hmm, and that's fine. You're kind of exploring the space the code is not really the output that you're looking for anyway, right? The code is just kind of like a byproduct of the work that you're doing if you look at that output as You know as the ideas coming to fruition finally, right and the code describes that and so you have to find those ideas and Use like a scratch pad essentially is what is is what it boils down to but the mantra that has really stuck with me that extends also into like for example having backups Is the idea that two is one and one is none It's so simple, but if you have a second anything Computer for example if you are privileged enough to buy a backup laptop Then the moment that your laptop fails you already have a plan, right? Yeah, and you can do this with a lot of things of course, but This is something that is especially important for developers because let's imagine for example That you want away for your users to reset their passwords. I don't know some future and for whatever reason that user can't follow that pathway Maybe it's an accessibility problem, right? Maybe it is that they don't have a cell phone so you can't do a text for authentication If you always think about a second option a backup option Another way to think about the problem even if you don't necessarily implement it If you have that second pathway, it becomes a much more Usually your first pathway ends up being more thought out. You don't even have to implement the second pathway the first one You actually explore it from multiple angles and it's a new way of thinking about code That there's more robust and typically is a little bit more failsafe It's kind of a weird like mind hack if you think about it that way. Oh, absolutely. I've done a lot of UI development and I Feel like the best thing that ever did was to start building up from the error state, right as soon as I Mean that feature I knew that a user wouldn't have in irrecoverable experience and I think a lot of people don't I mean it's not fun, right? Like as soon as you get a new project you want to like dive in and do all of the fun stuff And say you know push all that that gross stuff to the edge animation driven development Man it's so true kind of starting starting up from the the assumption that you will fail Or that or that you might right not that you will but that you might that you could That is within the realm of possibility, right? Yeah Yeah To my knowledge people aren't writing you know, there aren't a lot of people who are writing perfect systems on their first on their first push Yeah, no not at all Man, so that's such a good I guess it's kind of a zen way to think about your code, right? It's less about you know, what are the features and more about like trying to approximate The backdrop like a realistic picture of all of the things that could happen on you know This actually works out pretty well if you work with things like state machines for example I don't know if you've ever worked. I assume you've worked with some kind of state machine And I actually have a fuzzy understanding of what I'm talking about right now, but You know if you if you if you think through all of your cases is really what I'm what I'm trying to get at and you list out those cases In a reasonably detailed way Now you're creating a situation where yeah, you don't get into an irrecoverable state and What's strange about is like it creates a lot of confidence in your code. Yeah, oh absolutely and Yeah, I I think we all want to have that level of confidence, but for whatever reason it's it It's really uncomfortable to plan for the failures. I'm not exactly sure why that is but yeah Yeah, it's it's something we don't like to do. Yeah, and it maybe it's something to do with the idea that it's you know It's just not desirable. It's not the it's not the happy path. It's it's the thing that we don't want to happen Unfortunately, you know as much as we as much as we don't want it to happen. It's probably will at some point Yeah, that's that's one thing that I I kind of addressed at least in some versions of the the talk that you mentioned at the beginning of the show was That but now I can't remember the total hot garbage clean code is dead Yeah, the idea that we don't We really prize code and you said yourself like the code is really not the artifact that we need to be obsessed with That that's just kind of this thing that morphs and changes and will you know, maybe outlive us um if we you know leave teams or leave the company um and that The thing that we need to optimize for is uncertainty to say we don't know Necessarily all the parameters of what we're building so how do we set up a backstop so that when this This thing doesn't go the way that we thought it would Uh, we're well prepared to adapt it and to change it and to morph it into the thing that it needs to become um, yeah, I mean change is is the hardest thing for Developer To grasp the the the future will change things and this is You know, this is actually Really appropriate timing I guess to talk about change because uh right now specifically for react I'm sure for other things as well, but specifically for react things are changing pretty rapidly and pretty drastically um some of the really kind of core ways that People have learned about you know, how a react component works those are Essentially those are being um You know moved on from I won't say they're being deprecated. They're not it's gonna work for the foreseeable future Um to to use all of the the same code that you used in this you know the current um Master version of react um But as we move into the future we're having some pretty significant API changes And we don't need to necessarily talk about you know the changes themselves But I do want to talk for a moment about you know, why do you feel like This is such a um a dividing thing when we experience changes communities How can we have you know very smart people Um with really strong opinions and lots of good work under their belts and you take two of them And they may have wildly different opinions about the direction of this thing this tool we all use And I think a lot of it comes down to what we were talking about Earlier with with that experience that we went through becoming parents and realizing that we are not the hero of this adventure And I think a lot of people are threatened by things that are Uh by new ideas that might encroach on the space of the things that they have already mastered And it's hard for people to That kind of Become a beginner again And wow yeah, I It's so funny because I had a lot of conversations with people at react comp This year where all of these new APIs and thoughts were um announced And a lot of people there you know friends of mine We're saying like man This is such a great time for people to get into react and It's good to think like that to think hey There are All of these things make people's lives easier and it's a good thing It's a good thing for a community It's a good thing for people who are just getting in and that doesn't have to be threatening to us Just because we spend a lot of time learning things a certain way and they're You know maybe Falling falling away from favor Hmm. Yeah, wow Well, I think this was actually the original pushback when react started gaining popularity in the first place I mean I was a You know, I did my fair share of jQuery and Even before that my fair share of like mood tools back in the day and you know I built single-page apps with those things and you know I remember the as things came on the scene and this is not like back in my day, you know That's not at all Instead it's it's like We always have something to fear We always have Something that you know we can either see as a threat or we can embrace And I'm not saying that everything that comes on the scene that's new we should just accept and blindly you know Just agree right What I am saying is When you see something that You know that makes you have an immediate reaction I think it's useful to inspect not just the thing that you're reacting to but the reaction itself Oh, yeah, absolutely Really kind of dig in for your for your own good But also the people around you that you're making the argument too Because you're changing people's perspectives whether you know it or not There's a little bit of a responsibility there as developers For us to take a moment and balance a little bit and say hey, you know what maybe Maybe the reason that I'm reacting so strongly to hooks upon intended is Is that hooks are like a black box to me. I don't get it And and I don't like things that I don't understand or Maybe it's I feel so strongly About this being the right way, but I don't really know why I don't know why I feel strongly about it being the right way I can totally understand hooks, but I don't like them What you know, what is it inside of me that that doesn't like them? It's not that they don't work right is not that somehow this is going to you know break all of your code suddenly and You know the react team is not trying to sabotage you right Um, so what is it about you know whatever dog it can be dogmatic responses and those can be damaging Not just to the community, but to you as a developer. Yeah, it's so important to have to develop the skill to Be able to examine your feelings and manage your response And know that the feelings that you have are are true and they are like from you, but They are not immutable You can manage them and move forward and Kind of navigate a path around the way that you feel about a certain certain situation and It is It is one of the hardest things to do especially when you know again, you feel like your your intelligence is is being threatened or this You know long list of accolades in a certain technology or mindset Um is is is being threatened or feels like it's it's eroding um Yeah, and you know as much as we like to learn new things I think that we don't like being in a position where we have to learn new things and kind of You know on a certain announcement day feeling behind the gun Yeah, yeah, and and it will change again Hooks are not permanent It feels like oh man. This is this will be here for a while And it probably will be but it's not permanent. And none of this is permanent Eventually even a surprise react will go away and it may seem distant from now um, but it will feel It will feel fast, right? Um, it'll feel like just yesterday we were talking about how much we hate hooks and now React doesn't even around anymore and I mean it that's okay and and we have to we have to realize you know as Developer That We can either look at that and Allow it to really unsettle us Yeah, whether you're publicly, you know Uh angry about this on Twitter or if you're just kind of quietly Building resentment for the industry and hating your job Both of those can really hurt you. It can really harm you and um, I think you know, there are there are better ways to to look at change and Of course, I sit here asking everyone to change but um, perhaps it's more it's more a a moment of Just encouraging people right now that things are okay Yeah, um that this is gonna be okay if if hooks takes off and You know everybody starts using them things are gonna be okay if it doesn't if it falls apart if react Uh, the react team abandons it entirely that's okay. Can you okay? Yeah, it's gonna be fine I'm probably gonna be okay We're also gonna show up and help help users do something amazing Yeah, that's that's the goal, right? One of the goals I suppose I will say like very specifically about you know react um I think that we have enjoyed a position of Only having one construct in react for a really long time, which is you know We only had components for the longest time And I think that that has given that that level of focus has given us the opportunity to Not necessarily have to choose one way or the other inside of a framework and you know, we've had moments You know like higher-order components versus render props or whatever, but At its core like we've really only ever had functions and components and one of those is just provided by the language Right like you can't even get away from that Right. Yeah, and I think that I think that we're growing and react is growing to Incorporate certain you know needs and I think that we're Starting to experience maybe for at least in this This to this degree we're experiencing for the first time this like oh well, which one am I supposed to use? Which one should I use which one's the best and that's not really the right question to ask I think that You know as long as we can do the work Whichever one is you know best suited for the job that you're doing is is gonna be fine And sometimes that's just whichever one you want to use Like maybe this maybe it's as simple as that and you know, you had this wonderful quote that you tweeted out It's and I don't know if it's yours or if somebody else is there are no perfect systems only virtuous compromises And this is this this this is really speaks to this idea a lot That you know Yes, there are reasons to not use hooks. There are reasons to not use views state or whatever thing Just like there's reasons not to use react or there's reasons to just not be a developer at all right But we have these decisions to make In life and in our careers and we can't always optimize the world the way that we wish we could And it's it's a ecosystem. It's it's beyond um, you know a singular way and that's goes back to what we were talking about before That there are complex realities that we can't reduce yeah about people About the work we do about the code that we write about what it means and what it does Um, there's so many things that we just can't reduce to a single way And a lot of times we strive to do that perhaps because our brains want things to be simple And we don't want to have to make those compromises. We don't want to have to you know go through the hard work of deciding or the hard work of learning Yeah One of my favorite quotes about this is from a Musical actually I used to do musical theater and it's from into the woods and it's when Cinderella is on the steps of the palace and You know lost your shoe and she's trying to figure out what to do and Her her big moment in this song is to say that she's deciding not to decide And that's such a powerful skill to be able to have to say like you know what I actually don't have to make a decision about this right now Or maybe ever so I'm just gonna know What's disequilibrium for as long as I can until I absolutely have to make a decision and then I guess You know at that point hopefully I'll have enough information to be able to make it better than I would make it now Functional procrastination or something like that right Yes, yeah, it's it's totally a thing that developers have learned how to do for years and we're no different People have learned how to do this for years you delay until you absolutely can't anymore Sometimes you just don't have to make that call you weren't on the hook for deciding Exactly what is right and what is the perfect way? Yeah, you spent all this energy like hyper focusing on this one thing That you didn't even have to you never had to never had to worry about and out of this actually springs so much like practical advice like for example You know one of the things that I did on the show a while back. I guess it was two years now I did this developer career roadmap and the idea wasn't to be so prescriptive that's like this is the only way But instead to say this is a pretty reliable way to build a career right And one of the things that I mentioned is The idea that you know trying to pick just the right language Mm-hmm or just picking the right Whatever and instead of spending time learning those concepts a lot of people get stuck in this trap of uncertainty Where we ping pong between multiple languages and we write a bunch of like hello world apps in languages, right? Everyone who has done this you know exactly what this feels like and you learn just enough of a language um to get to a complex thing and then you You read an article about how that language is dying or you go and you look at you know those those charts that talk about the the growth What is it the top languages on GitHub? Yeah, and you're and you think oh man Maybe I shouldn't learn Java and I should learn Python or maybe I shouldn't learn Python I should learn Ruby or maybe it should go with something totally obscure and go and learn Julia And become a data scientist and then everything starts falling apart your entire picture of the world is changed Yeah in a moment right and we can stop her second We can look at what the history of programming tells us and Really kind of rely on one or two Kind of established languages and just spend time with them right and so what I encourage people to do is Spend six months before you change pick one mm-hmm and spend six months with that That's that's enough time to go beyond a hello world thing right and you're not investing so much time that your career is gonna fall apart because You know you spent so much time going in the wrong direction I can guarantee you that the top 10 or 15 or 20 languages on GitHub Every single one of those has people who have strong careers writing those languages Absolutely And that's a hard thing to grasp isn't it? Absolutely we condition ourselves to ask ourselves the question like what did I learn today? And I think it's the wrong question honestly especially if you're trying to break into or develop yourself in a career You should really be asking yourself what did I make today and Can ask yourself that question because you can make Anything in any language right it might be a little bit more difficult in some depending on the the job that you're trying to do But like you can do it and if you get better about asking yourself like what am I producing? What have I like put into the world? What have I hit publish on what have I deployed That is that is a very marketable skill in a land of people who want to be academic about The like nuanced performance differences in in these two languages that both end up compiling to the same application Yeah, yeah I'm very few of those people who are you know deep like Ruby scientists, you know very few of them Started out on day one when they said you know what I think today I'm going to start my career as a developer and I'm choosing Ruby and I'm going to become The you know a world-class Ruby tooling expert that understands everything about the internals and you know writing C extensions for Ruby like That that is not the way that careers evolve. Yeah, I mean mine didn't I I presume you're to yours didn't so there's no we too Yeah, I mean I so I guess I've made a you know a broad sweeping statement maybe somebody did do that But it certainly doesn't is that's not the kind of the recipe the only working recipe, right? That's oh you know your other ways to evolve your career absolutely and You know you you get better through failure and every one of those it's like you know like you said like breaking the first one or like ruining the first one um If you keep trying to prevent yourself from having the failures you're never going to learn anything You learn every you learn by Kind of trying to take a step and falling and realizing like oh I put too much weight on my toes and then you know Taking another step and I put too much weight on my heel and you have to you have to have those experiences where you tried to build something and realized You know what actually I I did in fact choose the worst possible language to build this certain thing yeah I would use this one Right. Yeah. Yeah, and and there are I mean there's there's boundaries like there's guidelines but those are Typically easily found Nobody is gonna go and And and tell you that you will need to become a web developer and in order to do that you need to learn assembly Like that's that's probably not gonna happen right um And so you know the reasonable guidelines that people are going to give you along the way like that rely on those don't you know Don't try to and I think this is something that we are in kind of condition to do in society in large is You know, what is the best? What is the thing that is perfect for me? It's this hyper optimization Not just for you know, what is the general consensus about what is the best? But what is my personal best? What is the thing that you know? I'm going to enjoy that is perfect for the city then I'm in that's perfect for the kind of work I want to do the community is perfect All of these things that we're trying to optimize for and there's no way that we can grasp and and optimize for everything all I want Yeah, the the world needs more makers and Fewer pedants I think and yeah, it's You there's there's no there's no perfect thing Well, you know, we're never going to find it and I find that for me that's just like a delay tactic and I like personally like right now um I I started this little thing. It's like a 25-day program called react holiday where I do like 25 lessons and About react that year Like a little advent thing and I find that Every day I know that I have to produce some degree of content and Instead of just sitting down and doing that I start Googling better microphones and USB interfaces and you know, what's going to be the perfect USB interface for me? It's going to really capture the the lower mid register of my voice Which feels like it needs to be a little bit warmer, but you know not heavy And That like that is a that is a smell for me. I'm like okay I'm focusing on something that does not matter at all like youtube is gonna compress all this audio to crap anyway So right like it really really doesn't matter and I just need to sit down and do the work Yeah, totally 100% and that is you know when you find yourself in a reading reviews or Digging through comments for hours. You're probably spending your time in an international way, right? It's it is both a a delay tactic, but it's also this kind of fear that When you do sit down to do the work, it will be inadequate in some way And so you're kind of trying to stillt it up with something else Right, rather than it it's standing on its own You're trying to stillt it up with a better microphone or with the right programming language or whatever the thing is and a lot of the time those things are much less powerful than you might think they are yeah I'm says you can't steer a stopped car The best decision is the the one that actually gets you going Yeah, that's excellent. That's so good. Well Michael. This has been enlightening interview and Just really enjoyed our discussion tonight. I have a couple of questions for you Um to kind of in this thing out. Sure and then we'll wrap up Let's do it. Okay, so What is one thing that you do outside of work On a regular basis that you feel like is is worth sharing or interesting? Oh Man, uh, I've been trying to be better about exercise Uh, I bought a bike a couple years back and I would cycle um to work in back and that was really fun hobby for me or continues to be a really fun hobby for me Um because it has a gear element to it um Which I I really like I like being able to research stuff and and uh, you know again not do the thing But just think about doing the thing better Yeah If that has been really fun. I really like I really like cycling um, I'm trying to get better at running one of my goals is Uh, to do a triathlon at some point. I'm not even close to that but I like to That's a that's an intense goal and uh, one that I think is um is certainly Valor's I don't know that I could I probably could I'm I'm not in the shape today to even uh to even imagine that goal is I suppose uh, I should listen to my own podcast I know sometimes you know they have short ones Uh, they have a it's like a 500 meter swim. Oh, okay, so like uh, maybe 40 mile bike ride So like the the junior triathlon. Yeah, yeah, yeah, I'm not as high as I aspire. I think is not triathlon in the name. Uh, I'll take the first one I can get you can put that sticker on the back of your car and yeah, that's that that's the ticket Make 2019 the year that you set up your personal website You have just a few days left for this special deal from Linode to help you do just that You can get the equivalent of four free months on linode services. It's $20 worth of credit by heading over to linode.com slash Developer Tea and using the code Developer Tea2018 of course that ends at the end of 2018 So I encourage you to go ahead and uh head over to linode.com slash Developer Tea and get started today Linode allows you to instantly deploy and manage an SSD server in the linode cloud You can get a server running in just a few seconds with your choice a linux distribution resources and the node location And this is the perfect way to get started on your personal site Because you can do a lot in four months. You can probably Uh, create some sustainability here. You can probably find a way To raise enough money to keep that server up and running because it's only five dollars a month in the first place This is their one gigabyte of RAM Plan by the way, and that's enough to keep a personal site running especially if you're doing something like a serverless architecture Which all of us know that even if you have a serverless architecture, you still need to server somewhere Linode can be the perfect solution for that Head over to linode.com slash Developer TeaThey have so many other features. We're not gonna list them all We certainly talked about linode on plenty of episodes of Developer TeaBut the most important feature that they have today is four months of free service for you Head over to the linode.com slash Developer TeaUse the code Developer Tea2018 and check out take it started thanks again to linode for sponsoring today's episode Okay, so so what is a recent moment of epiphany or like a I'm thought that you feel like Was was really important to you, but is is kind of the simple Atomic thing that you can share with other people something you've been maybe bringing up in conversation recently That's that's a heavy one I think so much of my life has become Being comfortable with uncertainty I'm in every degree so as we've mentioned in this podcast being comfortable with uncertainty around death uncertain about Whether or not there actually is you know anything after this and after life um uncertainty about how I'm performing as a father uncertainty about whether or not I'm ever gonna be able to cook anything that's halfway decent uncertainty about the the frameworks and tools that I use and um Not knowing whether or not I am you know improving meaningfully uh or kind of like stagnating and I think being more comfortable with that and You know tied with that idea from that terrible movie That I just need to get out and do the work and not worry about the quality of that work But just continue to do it and trust the process that I will inevitably get better over time if my goal is to sit down and learn and to make mistakes along the way um you know you might you might have some rocks thrown at you but I think a lot of times it's just from people who um are insecure with their relationship with uncertainty trying to keep Keep you from exploring and learning the way that they would like to if they had more confidence Yeah, that's excellent uh becoming uh closer to uncertainty and embracing it and almost Looking for it. That's that's something that I personally have kind of experienced more recently is seeking places where I can find uncertainty. It's kind of a weird backwards thing but um instead of Trying to hide away from it, which is the maybe the automatic thing we do Is looking for and then calling it out Right uh actually um when my wife was pregnant with her first child um She would ask me hey, you know, what do you think this this child is Yeah, you think it's a boy or girl or uh, you know, what what do you think is it maybe could it be twins and The truth was That I have absolutely no idea And that's it's something that we We seek for Hunches or maybe we hope for a particular outcome And we try to create Something that isn't there even in those small things and so invariably I would tell my wife that I think that it's a 50-50 chance that we're gonna have a boy or a girl and she got She I'm sure she got tired of it eventually because uh, I talk about statistics all the time with her and I'm sure it gets a little bit tiring but Um, seeking those opportunities to say I don't know Is actually like it can be invigorating um, it's a weird feeling But it can be enjoyable to say you know what I don't know let's just get back to doing the thing right like Maybe that's fine. Maybe we just we write some code And we don't even know if it's gonna work. Yeah, like we have no idea. We just try something and Uh, sometimes sometimes those are kind of the birth moments of Uh, true learning experiences, but also it's it's a little bit more peaceful to just say I don't know I just don't know yeah, I I fully agree and all of the things that Are kind of the most exciting parts are you know when you're going from going from zero to one and from one to ten Is way more exciting than going from like 90 to 100 and or 99 to 100 and all of those most exciting things that you're gonna learn and experience are going from I don't know this thing at all to like oh, I know it a little bit. That's neat Yeah, yeah, and that that change that dynamics that the dynamicism of that change is is again, it's an addictive feeling Yeah Okay, so uh, this is kind of the final question Um, and this is another loaded one, but if you only had 30 seconds to give developers a bit of advice. What would you tell them? Like career advice or kind of daily practice advice Uh, I would say those are one and the same. Okay Yeah, you know, I'll I'll just say that I have two maybe The first one is to just kind of like we've been talking about this whole thing is just um make the mistakes and live up to them and Kind of move on continue to put out work Uh, that will always set you apart and you know, always put you ahead of people who know all the things, but um Are less willing to just put in the hours and make the thing happen Um, that's the that's the biggest thing I I think The and and that's hard advice to follow. I mean admittedly I would just admitted to spending way too many hours on YouTube Like reading about interfaces when I didn't want to do the work. So none of us are exempt um, I think the second thing is to Give up your ego and to publish View whatever medium feels comfortable to you as frequently and as often as you possibly can Uh, friend of mine swix um, we have upcoming react podcast episode uh, maybe not month or so And he says that you can learn anything you want for the very low price of your ego Oh, wow, and it is the truest. I mean, that's that's his advice. I didn't come up with that I'll follow him on Twitter. I think it's s-w-y-x Um, maybe he didn't even kind of up with that. He stole from someone else. I don't know You know, um, it is so true if you're willing to put your stuff out there and kind of take that that momentary Ego hit and accept the criticism Man, you'll learn so stuff so like unbelievably fast that I remember going on to It was a very practical thing that I told the handful of younger developers at one point But I was like um, if you want to learn stuff fast, uh, don't go on to stack overflow asking questions Yeah, you're gonna get stuff that is meaningless to you Uh, go out there and put up post wrong answers And you learn faster than anything all of the nuance and I kind of trade-offs and everything around that thing And uh, you know, just take it down afterwards If you can get past your own ego, then that the world unlocks to you Yeah, it uh, even better it would be post slightly wrong answers It's a little bit to piss people off Oh, man. Well, that's excellent advice and and I think that um, you know, developers are challenged by the work that you do The vulnerability that you have Um, the honesty that you've displayed in today's episodes or I guess in today's episode in the last episode Uh, by the time that we cut this thing up And and just ultimately thankful for the work you're doing and and thankful for being graces with your time and coming on the show tonight Thank you so much. Oh thank you. This has been great for me and it's been fun to kind of dive into dive even deeper into things that I've divulged on the internet that I may regret Ha ha ha ha ha Well, um, what do you want people to know about go and visit? Uh, learn from you. Uh, this this will be coming out certainly in time for react to holiday So that would be an obvious one go to react to a holiday and sign up for uh, this is two years now that you've been doing this right? Yeah, this is the this is the second year and um, it's been super fun. I've been trying new mediums So I'm doing it at least um primarily right now just a email based Uh, and um also doing some youtube videos, which is um a real exercise in kind of just making it happen and shipping it Yeah, yeah, that is one of the hardest things he can possibly produce, right? Yeah, so it's it's been fun for me This is a very much an exercise in um, trying in doing something that I'm unfamiliar with I have you know I mean up until I think maybe Two months ago I'd never published anything to youtube. So this is a this is a really fun adventure for me um, but yeah, so you can go to a react holiday and um learn about all the new things that are in react Um, it's just kind of like a daily exercise um, I actually need to finish up today's but uh, it's it's um Yeah, it's really fun. We talk about suspense and hooks and kind of how that changes all of the stuff that we We know so far um and tries to take a really kind of one idea per day um approach um other than that I have a site called uh react patterns Um, which is just a simple kind of description of a lot of the existing patterns um I'm hoping to develop that and I think I'm not sure. I'm really bad about actually um linking to To like paid content um, but it has video courses available on a lot of that stuff at um school. That reacts patterns.com and that's where I teach um kind of But teach kind of ground up ideas on not just react, but kind of ecosystem stuff like you know, how to use npm and um You know kind of basic node or javascript type stuff. So I'm actively developing That and I'll be pushing more up as soon as react holidays over if you can't tell By listening to this podcast And chantastic michael chan is um this one of the most react positive people that isn't dogmatic about react So uh certainly um a powerful ecosystem and um something that if you haven't seen it um first of all man Maybe maybe you just aren't a developer or web developer you probably um You probably have seen react Um if you're a web developer if you haven't and using the technique that um you've taught me I'm just so excited for you right now I'm so excited for you to go and check out what uh what michael chan is producing and also what all of the wonderful people who are working on this stuff are producing for us Generally for free. Yeah, it's just pretty amazing, right? Um, but that's a that's a conversation for a different time michael thank you so much for spending your time with me this evening. Thank you. This is an absolute delight Thank you so much for listening to today's episode my interview the second part of my interview with michael chan If you missed out on the first part then you've missed a lot of context and a lot of other Great conversation with michael i encourage you to go and listen to that as well You can find michael on twitter and at chan tastic Of course, you can find me on twitter at Developer Teaas well as my personal twitter at j Cutrell Thank you so much for listening. Thank you again to linod for sponsoring today's episode Head over to linod.com slash Developer Tea and use the code Developer Tea 2018 that's 2018 at checkout of course you only have basically two days by the time this episode airs To actually get that Get that discount so go and check it out Develop linod.com slash Developer Tea. Thank you so much for listening and until next time enjoy your tea