Chad fowler website

Chad Fowler

Developer Advocacy Lead Microsoft

Chad Fowler leads Developer Advocacy at Microsoft. He is also an author, speaker and has started and co-organized a couple of Ruby-related conferences including The International Ruby Conference and RailsConf.

Description

Chad Fowler is an author, developer, speaker, and investor. He's been a CTO, he founded Ruby Central, the non-profit behind RubyConf and RailsConf, and is a recognizable tech figure, particularly in the Ruby community. But before he knew what code was, he was a professional musician. He shares how he switched careers without a computer science degree and how he's ended up with such an incredible tech career. He also shares how he's managed his bipolar disorder over the years, and how mental health has affected him and his career.

Show Notes

Transcript

Printer Friendly Version

[00:00:00] (Music) SY: Welcome to the CodeNewbie Podcast, where we talk to people on their coding journey in hopes of helping you on yours. I'm your host Saron and today we've got a special guest with us to tell us his coding journey. (Music) Chad has had a very full tech career.

 [00:00:25] CF: I'm Chad Fowler, and I'm general manager of developer advocacy at Microsoft.

[00:00:30] SY: He's an author, a developer, speaker, investor. He's also been a CTO. He founded Ruby Central, the nonprofit behind RubyConf and RailsConf and Ruby Gems. He's done a lot with his coding skills, but he wasn't always a developer. In fact, he went to school for music and was a professional saxophonist. He tells us how he got started in the world of code and how he built his incredible tech career. After this.

[00:01:00] Flatiron School teaches you how to code from anywhere. They've got an awesome community of career-changers and a number of different options for you to pick from to become a software engineer. They've got full-time in-person courses, self-directed introductory courses and a remote online web developer program. They even have a free 75-hour online prep course where you can learn JavaScript, Ruby and do some interview prep. Go to flatironschool.com/podcast to learn more. That's flatironschool.com/podcast. Link is in your show notes.

[00:01:33] One of the best parts of being a coder is finally being able to bring your passions to life. You have the skills to design, to code, to create the thing you're excited about and share that passion with the world. And Hover can help you with the first step of sharing your passion with the world: getting your domain name. They've got a really beautiful and easy-to-use interface where you can find and register your new domain name in just a few steps. And to give you full control, they separate your domain name from your hosting so you're never stuck with one service. They keep your domain name safe while giving you the flexibility to use whatever hosting service is best for you. They also give you free WHOIS privacy, so your personal information is safe, too. To get started, go over to hover.com/newbie to save 10% off your first purchase. That's hover.com/newbie. Link is in the show notes.

 [00:02:22] DigitalOcean provides the easiest cloud platform to deploy, manage and scale applications of any size. They remove infrastructure friction and provide predictability so you can spend more time building what you love. Try DigitalOcean for free by going to do.co/codenewbie and get $100 of infrastructure (Music) credit. Link is in your show notes.

[00:02:46] SY: So right now you are currently at Microsoft. Tell me about that. How did you end up there? 

[00:02:53] CF: I was CTO at a company called 6Wunderkinder in Berlin, and we were building Wunderlist, which was a very popular to-do list app. 

[00:03:01] SY: Yeah. I know Wunderlist.

[00:03:04] CF: Yeah. I love the product, and, and I can say that 'cause I didn't come up with it, I just helped as CTO. And anyway we sold the company to Microsoft a little over three years ago, and I've been there ever since.

[00:03:15] SY: Nice. And what's it like to go from CTO being, you know, the absolute top technical person at a company to a manager now. That feels like a very different role.

[00:03:26] CF: Very, very different. Yes.

[00:03:28] SY: Yeah.

[00:03:28] CF: And in fact, when we first came in, I went from CTO of the company to general manager of the team, which is sort of like CEO of the team. That was quite different. And we were in the, the office group, which is maybe one of the more conservative areas of the company. It's still a great bunch of people and, and some incredible technology going on there, but definitely felt different. Fortunately, now with my new job I feel like I'm now surrounded by my people again. I'm surrounded by people who are coming from startups and working with startups. And, and like native to the developer community so, you know, developer advocacy. It's all about being out in the communities, not just the Microsoft, you know Office and .net communities, but the various open source communities around the world.

[00:04:15] SY: And as CTO, my understanding of that role is that you are in charge of, of product, of the technical aspects of, of the product, making sure its architecture is sound and it's, you know, it's on its roadmap and doing well and that sort of thing whereas developer advocacy is—that's kind of more like marketing, right? 

[00:04:37] CF: In a sense, yes. You're exactly right on the CTO definition. Developer advocacy is kind of like marketing and in the past, evangelism groups in various companies including Microsoft have been in marketing, but our group is not in marketing. We are actually all engineers, and our job is to connect with developers and teach as opposed to sell.

[00:04:59] SY: Ok. So as a general manager of this, this teaching and helping other people and advocating for them it sounds like, how much coding do you get to do? Do you get to be in the weeds at all on a technical level? 

[00:05:14] CF: Over the years I've learned there's a certain point when you're in a technical job and you become a manager for a while, it's okay to program. And then there's a certain point where you realize okay it's now officially irresponsible for me to be trying to write code. (Laughing)

[00:05:31] SY: Irresponsible. Interesting.  

[00:05:32] CF: Irresponsible. Yes. And it's irresponsible because—the obvious reason is you're not gonna do your real job, which is leading a team. And, you know, I have tens of people on my team, and the team is growing. And they need leadership. They need a manager. They need a boss. They need an advocate themselves. If I get into my passion of programming too heavily I'll ignore that, but the other part of it is I'm focused on my job, and if I try to program, too, I'll end up writing bad code. You know, I found that even at Wunderlist, at certain points I had to just back up and say "ok, I, I can't be the lead programmer anymore 'cause my code is terrible 'cause I'm distracted.

[00:06:11] SY: Ok, so before you got to Microsoft you were CTO of—how do you pronounce that one more time?

[00:06:17] CF: In English, it's Six Wunderkinder.

[00:06:20] SY: Ok, that's what I wanna call it. What do you call it? You, yours is much better.

[00:06:23] CF: Sechs Wunderkinder.

[00:06:25] SY: OK. So that company—you said it was not your idea. It was someone else's idea. You were the CTO, and I know you've talked a lot and thought a lot and written a lot about what it means to be CTO, how to be a better CTO. When you signed on to be CTO of that company, why did you decide to do that? Why did you decide that that was a good fit and also frankly worth your time?

[00:06:48] CF: You know how we were talking about managers getting far away from code and not being able to program? I was at LivingSocial at the time, and we had grown the team in two years from the ten engineers before I started to hundreds. I was the V.P. of engineering and then SVP of technology. And... 

[00:07:07] SY: Wow.

[00:07:08] CF: After a couple of years of intense management work like that, I just wanted to be a programmer again. And I got contacted by the Wunderlist team. They sent me this description of the job, the profile they were looking for, for a CTO. And I, I read it, and I thought it's as if they wrote this for me. It was amazing.

[00:07:27] SY: Wow.

[00:07:28] CF: Turns out they actually did write it for me and that's why it (Laughing) looked like that. They only had...

[00:07:32] SY: That's awesome.

[00:07:32] CF: ...a couple of candidates in mind when they reached out. But the main thing was that I, as I used the product myself and then looked at how people talked about it online, customers talked about the product and used the word "love" constantly. And I thought, "this is worth exploring anyway." So when I went to Berlin and I met the team, I also felt that in the team. And I also honestly saw that they had some serious problems that I could help solve. 

[00:08:02] SY: Ok. And just to be clear, when you were at LivingSocial, that was in the U.S.

[00:08:07] CF: Yes. Yeah, that was in Washington, D.C.

[00:08:10] SY: Right. And so you ended up moving to Berlin?

[00:08:13] CF: Yep, yeah. I mean... 

[00:08:15] SY: Wow.

[00:08:15] CF: ...just up and moved.

[00:08:17] SY: That's a really big step.

[00:08:19] CF: So the first time I moved for a job was from Memphis to Louisville, Kentucky. 

[00:08:24] SY: Ok. 

[00:08:24] CF: And I was terrified to go from Memphis to Kentucky. I mean it's literally the next state.

[00:08:29] SY: Yeah, I was gonna say. 

[00:08:29] CF: And I just thought it was like going to another planet. And she—my wife, Kelly—she instilled this idea that that's just no big deal. And, you know, I mean really looking back on it, it sounds silly. But we went from Kentucky and then we moved to Colorado from there without ever even looking at Colorado we decided to move. 

[00:08:48] SY: Yeah. 

[00:08:48] CF: In the meantime, we moved to India.

 [00:08:52] SY: Oh wow.

[00:08:52] CF: And she agreed to move to India without having been there before.

[00:08:56] SY: Wow.

[00:08:57] CF: So we just have this mobile nature and a desire to seek adventure and explore...

 [00:09:06] SY: That's amazing.

[00:09:06] CF: ...new cultures and meet different people.

[00:09:07] SY: Very nice. Ok. So we covered Microsoft. We covered the CTO of—I'm gonna call it 6Wunderkinder.

[00:09:16] CF: Good choice.

[00:09:16] SY: But this is like kind of... These are both relatively recent roles because your journey as a developer started all the way back when you used to be a professional saxophonist.

[00:09:28] CF: Yeah, exactly. I studied music in school. I double majored in jazz saxophone and classical music composition. And I was playing music at nights on Beale Street in Memphis, and I got really into the video game, Doom. And I wanted to learn how it worked. So I asked a friend who was also a saxophonist in the band to explain how, you know, how is it you can type into a word processor and somehow it can be an executable program? 

[00:09:57] SY: Yeah. 

[00:09:57] CF: And he explained how compilation worked to me. And anyway, I started learning on my own, and he actually—that's the same guy named Walter—ended up applying for a job on my behalf where he worked.

[00:10:11] SY: Wow.

[00:10:12] CF: And kind of tricking me into going to interview for it. (Laughing) So...

[00:10:18] SY: That's a good friend.

[00:10:19] CF: ...that's how I got, that's how I got in the business. He took me; he picked me up for lunch and drove me to the office. And the manager that was hiring said, "Walter says you're good. So when can you start?"

 [00:10:28] SY: Wow. Oh my goodness. Oh, that's a really good friend. That is a… (Laughter) What did you, what did you say to that? How did you react? 

[00:10:37] CF: It was fun. I had, I had picked up programming as a passion, and I got really obsessed with it even before that point. I would go play gigs all night, and I'd go home and read up on C and Visual Basic and Delphi. Delphi is a language. I don't think it exists anymore, but it was pretty awesome. And my musician friends thought I was wasting my time with the stupid hobby. So, you know, I was really into it to the point where I honestly was I was being irresponsible and not practicing and, you know, not really organizing my music career. But I was excited, you know, and ended up flipping around and becoming the thing I did.

[00:11:17] SY: So when you started getting really obsessed with programming and spending all your days learning it, did you plan on it becoming a career eventually? Or was it just this hobby you were obsessed with? 

[00:11:30] CF: So pretty quickly I thought, "hey, you can make a lot of money with this." Yeah, once I realized that, it was, it was kind of like a self-preservation thing, you know? And instinct like, "wow I could make so much money from this." I could make more than my parents ever did, and I could help buy them a house and that kind of stuff. So I got pretty motivated.

[00:11:50] SY: When you decided to, to actually do the interview, you took the job, were you self-conscious at all about having been a musician? Because I feel like of all the careers you can transition from, saxophonist feels pretty far away from developer. 

[00:12:08] CF: I'm still self-conscious about it, actually.

[00:12:10] SY: Oh really.

[00:12:11] CF: Yeah, 'cause I have this impostor syndrome thing because I never studied computer science. And yeah I, you know, still today I—people say things and I have to go look them up or I think "man that's a thing I, I've been wondering about." Like people would use Big O notation. I finally learned what that was, but I just thought "wow that sounds like math that I, I'm not gonna be able to understand so never, never understand it. Turns out to be pretty easy. 

[00:12:37] SY: So that first developer job that you had, what was it? What were you doing? 

[00:12:42] CF: It was actually a help desk thing that quickly morphed to network automation. 

[00:12:45] SY: Ok. 

[00:12:46] CF: So I got in, got into this help desk thing, and since I was so intimidated, I thought, "how am I gonna deal with this?" You know, there's no way. I'm, I'm not only under-qualified—or completely unqualified is the right way to say it—but I'm an absolute introvert. I'm shy. I mean, I already told you I was afraid to move to the neighboring state because (Laughing) I'm, you know, so uncomfortable. In that job, I was so shy that I had to get people to go with me to help open a bank account because I was nervous to talk to anyone at the bank...

[00:13:18] SY: Oh wow. 

[00:13:19] CF: ...to, to do it. And I needed to do it for, for direct deposit.

 [00:13:24] SY: That's precious.

[00:13:24] CF: So I, I decided that I was gonna view my career as a role-playing game.  

[00:13:27] SY: Oh.

[00:13:28] CF: And think about it as like levels and skill paths, and skill trees, you know? Like you can do in World of Warcraft or one of those things. So I, I pretty quickly decided that like Level 1 is sitting at the help desk; level 2, you got to go out and do service calls; level 3, you're sitting in the back office and doing some, I don't know, smart stuff whatever that would be. And eventually you get to be the one designing the systems that all the people on the help desk are supporting. And it took me, I don't know, six or seven months to get through all the way to the end here. So... 

[00:14:02] SY: Oh, wow. 

[00:14:02] CF: ...pretty quickly I was programming a lot of stuff and automating things.

[00:14:06] SY: Wow. What do you think helped get you through the levels so quickly?

[00:14:12] CF: I think it was the fact that I realized that there could be levels and that I realized there could be skill trees. And I actually owed the skill tree idea—he didn't call it this, but—to a guy named Ken, who is just a nice guy who worked in the back, you know, where I was at the help desk and decided he was going to be my mentor even without me asking. The first time we met, he said—well the first time we met as mentor kind of relationship, he said, "you should learn Novell NDS," which I don't know how to describe what that is to someone who doesn't know. But it's an old thing that you don't need to know about anymore, but it was...

 [00:14:44] SY: Ok. Fair enough

[00:14:45] CF: ...it was really good for the time. "And then you should learn a Unix operating system." And I chose Linux. "And you should learn a scripting language." So I chose Perl at the time. And you need one in each of those categories. That'll round you out is basically the idea. And so I pretty much stayed along the, that path. And for a few years, I probably continued with those being like the categories I was advancing in. And I think that structure coupled with the idea of treating my career as levels like a game allowed me to go really fast. 

[00:15:22] SY: So in six to seven months you finished all the levels of the video game. So at that point what was next? How did you decide the next set of levels?

[00:15:33] CF: I was working at the University. And you know, university IT is a wonderful place to be, but I realized there was, there was another world out there, you know? There were commercial opportunities, and they were doing stuff at a much larger scale. In Memphis, that means somewhere like FedEx or International Paper or AutoZone. And I ended up at FedEx. And once you get to a new environment you see there's a whole new world, and that's when I started thinking about management, had exposure to like CIO-type people. And so for a few years of my career, I assumed that the end goal was I would become CIO at a place like that, which sounds like a wretched job to me now. I know I would hate it, actually. (Laughing) But, you know, I was young and stupid. So I, I think once you have the end (Music) in sight, you know, your desired end, then it's pretty easy to figure out what the steps are between you and that end.

[00:16:31] SY: Coming up next, Chad shares his thoughts on how you can build a great career and maybe get to do some of the awesome things that he's done. He also shares how he's learned to manage his bipolar disorder over the years. After this.

[00:16:48] When I learned to code, I was so excited to finally bring my passions to life. I could build things that I really cared about and share them with the world. And the first step in sharing is getting a great domain name. That's where Hover comes in. They've got a really slick east-to-use interface. They've got awesome domain names to pick from and they separate your domain from your hosting so you have full control and flexibility over your online identity. So go to hover.com/newbie to save 10% off your first purchase. That's hover.com/newbie. Link is in the show notes.

[00:17:19] You want to get serious about learning to code, but where do you start? Flatiron School's got the perfect thing. They're offering their free 75-hour online prep course, where you dig into Javascript, Ruby and more. If you're not sure where to start, start there. And when you're done, you can keep learning with their self-directed introductory courses, remote online web developer program or full-time in-person courses. Whatever your schedule, they've got options to help you reach your coding goals. To learn more, go to flatironschool.com/podcast. That's flatironschool.com/podcast. Link is in your show notes.

[00:17:55] DigitalOcean is the easiest way to deploy, manage and scale your application. Everything about it was built with simplicity at the forefront. Setting, deploying, even billing. Their support is amazing. They've got hundreds of detailed documentation and tutorials, so if it's your first time deploying an app, they've got great tools and community to make it nice and easy. Try DigitalOcean for free by going to do.co/codenewbie and get $100 of infrastructure (Music) credit. Link is in your show notes.

[00:18:28] SY: So I wanna switch gears a bit because you started an organization—I think technically a nonprofit—that is really, really important to the Ruby community. You founded Ruby Central. Tell me about that. How did you, how did you go about doing that?

[00:18:45] CF: So I was working at GE at the time in enterprise IT. I was an application architect, and on the weekends—I'm answering more than you asked, but it'll be alright. I promise. 

[00:18:52] SY: No, that's fine. (Laughing) 

[00:18:52] CF: On the weekends, I, I used to every weekend learn a new programming language just superficially, you know? And I was actually searching for what my passion project would be, you know? Which language was I gonna really dig into? It was gonna be something strange I knew, but I decided it was gonna be Smalltalk. And that last week before I decided to focus on Smalltalk, I learned Ruby on the weekend, and I just absolutely fell in love. And I got stuck on it for years. The Ruby community online then was tiny. So I got on the what is now Freenode IRC Ruby Lang channel, and there were twelve people in there at the time roughly. And one of them was Dave Thomas from the...

[00:19:34] SY: Yeah. 

[00:19:34] CF: ...Pragmatic Bookshelf. Matz was in there. Me, David Alan Black; who is also an author and one of the co-founders of Ruby Central; Rich Kilmer, who's one of the co-founders of Ruby Central—so it was just this—oh, Jim Weirich, who unfortunately we lost a few years ago... 

[00:19:50] SY: Yeah. 

[00:19:50] CF: ...but created Rake and co-created Ruby Gems with us. So it was what became a who's-who of the, the early Ruby community.

[00:19:58] SY: Yeah, that's a solid group of people

[00:20:00] CF: It is, and, and it was, you know, an amazingly high-quality conversation pretty much all the time in there. Anyways, this guy named Gee Hurst had organized the first Ruby conference. He ran his own contracting business, and a few months before the conference was supposed to happen, life got too busy for him and he couldn't follow through with it. So it was basically gonna fall apart. And Dave Thomas contacted via IRC me and David Black and said, "hey guys, we need to make this conference happen. We can't let this die." It was kind of like a, a Mark Twain, Tom Sawyer moment, I think, or Huckleberry Finn moment where he ended up having us do the work. And (Laughing) we, we founded RubyConf and Ruby Central. It's not very exciting the way it happened, but the next year we wanted to do it again. And something told us we probably ought to not pay for this with our own credit cards and stuff. Like let's, let's... 

[00:20:55] SY: Good idea. 

[00:20:56] CF: ...form an entity so if we get sued for something, it'll be the nonprofit that gets sued. 

[00:21:01] SY: Yeah. 

[00:21:02] CF: So we founded it in 2002 after the first Ruby conference to be really just a container for RubyConf, but then it grew from there over time.

[00:21:13] SY: Very cool. So did you realize that Ruby Central would end up being in a lot of ways kind of the central point of a lot of the Ruby community? Was that the, was that ever the intention along the way?

[00:21:29] CF: We had that ambition. We didn't realize it would be. But you know, it was so early that you could almost declare anything was true. You know, you could, you could stake any ground you wanted in the Ruby community pretty much except for the language itself. The community was small. There wasn't a lot of commercial interest in it. There were a lot of things that didn't exist, you know, like Ruby Gems, for example. And so you could decide that you were gonna be the person that created the centralized container, you know, nonprofit container for stuff in the Ruby community. And no one else was doing it. And honestly it's not very fun to do. So it was pretty easy to get that role and that's how a lot of stuff happens in open source, too. You know, Ruby Gems is sort of the same way. We made it, and nothing else existed at the time so it became the package manager. It ends up being a gamble though because you spend a lot of time and energy. And if you're, if you're doing it because you want to be the person that has an effect on what might be an important language of the future, it's a gamble. So it could be that you just waste your time and no one ever cares about it. We got lucky, and it turned out that Ruby actually mattered. 

[00:22:39] SY: Tell me about the motivation for you. Was it just that you wanted to help Ruby along and, you know, kind of advocate for it, you know, in, in a sense because you love the language so much? Or what was the, what was the thing that, that drove you in those—especially early years when it seems like the community wasn't really that big?

[00:22:54] CF: The community was small but brilliant. And I wanted to facilitate the community so I could be part of it and so it could be healthier. And, you know, like the first RubyConf, it was 34 people. I think there were four original signatories and authors of the Agile Manifesto. And there were three or four people who were language designers. It was just a room full of geniuses. 

[00:23:23] SY: Yeah. 

[00:23:24] CF: And then me, the stupid saxophone player who worked in corporate IT. (Laughing) So I was, I was the secretary for the Ruby community. 

[00:23:32] SY: Oh.  

[00:23:32] CF: And I did administrative work in exchange for being able to hang out with them. That's the way I thought about it.

[00:23:41] SY: And yeah, and that was, you know, a good bet because Ruby is very important. I mean you know, I’m a Rubyist. It is very important. It's a beautiful language, a beautiful community. And you're obviously a big part of that.

 [00:23:50] CF: Yeah. It was lucky. I, I wouldn't even say I made a bet in that case. I just wanted to hang out with those people.

[00:23:57] SY: I feel like that's a, a good, a good lesson, a good theme almost in your, your life. Like hang out with good people, follow where the good people are. And they'll get you surprise interviews at jobs. (Laughing) They'll, you know, help you start nonprofits. They'll, you know, do a lot for you.

[00:24:14] CF: Yeah, I mean like really I could attribute a lot of my success and my career to just Dave Thomas. He also asked me to write a chapter for programming Ruby. It was a chapter on Ruby Gems. So in one action, he both validated the software that I was trying to push out into the world and had me write a chapter for the most important Ruby book. I only wrote one chapter but he put my name on the front as a co-author. 

[00:24:37] SY: Wow. 

[00:24:38] CF: Those two things...

[00:24:39] SY: That's awesome.

[00:24:39] CF: ...together absolutely changed my life. And then he asked me to write Rails recipes, and everything was different after that. 

[00:24:45] SY: How did it change your life? 

[00:24:47] CF: Well I became quote unquote one of the greatest Rubyists in the world by that. And I say that in quotes because it's silly, but that's how people perceive things. I became a famous Ruby programmer in what was a, you know, a community of just a few at first suddenly blew up in like 2004 and five when Rails came along. From there, it was conference keynotes 'cause I'd written the books. And if you also care about people and you're not a jerk, you can pretty much go far. You have things made at a point. 

[00:25:20] SY: Wow. Besides you having this amazing career with it sounds like lots of twists and turns, what's also interesting is that you have bipolar disorder. Tell me about that. When did you discover that you were dealing with that? 

[00:25:39] CF: That was about the time I got into programming, I guess. I used to experience something where I thought I was just a normal depressed teenager in my late teens, but then I started noticing that the days like it could be a beautiful sunny day, and then suddenly for no reason it just feels gray and lifeless and, you know, you feel despair. It was bad enough that I eventually ended up going and getting professional help because it's like, you know, such a severe change that would happen. And it would happen maybe several times a day. At first, I thought that writing music was making me crazy. I actually quit, quit writing music back then, classical music, and have not ever done it again because I thought it was making me crazy. Turned out not to be the case, of course. But yeah, I went and I got diagnosed, which all people should do if they, if they suspect there's something wrong with their mental health. And my diagnosis was something called bipolar mixed, which, you know, bipolar disorder—a.k.a. manic depression—you think of as being waves of up followed by waves of down and mania followed by depression. For me, it was mania and depression at the same time. 

[00:26:51] SY: Wow. 

[00:26:51] CF: And unfortunately, the mania part manifested not in happiness usually but an irritation. So, you know, like a... 

[00:26:58] SY: Oh. 

[00:26:59] CF: ...extremely angry and depressed at same time all the time. So yeah, that's, that's how I discovered it. And I guess I was around 20 years old when I was in the, the worst of it. 

[00:27:17] SY: How did that affect—it sounds like it affected your, your music—how did it affect your tech career, your programming?

[00:27:25] CF: Well the positive side is before I was really had it under control, I would go play music on Beale Street, as I said. And when I finished the gig, I'd get home at 3 a.m., and I'd just stay awake learning stuff until I had to go out again and play. And I got sort of agoraphobic. I didn't ever wanna leave the house unless I had to, to play music. So I was pretty much always either learning something or playing and then maybe a little sleeping. I started doing polyphasic sleep where you sleep for, you know, a couple of hours and you wake up for one hour and do that all day kind of a thing. So it had that effect. I think the, the long-term effect though is bipolar disorder could've killed me. And, you know, as it has killed many people. And I had to learn a lot to get through it. You know, you start with medication. What it did for me is it reined me in enough to where I could actually learn mindfulness ultimately. It was about always observing your feelings as they happen in real time and then thinking about the cause of feeling. So ultimately, I did this enough, I practiced so much through a combination of hypnosis then self-hypnosis a.k.a meditation and then constant practice out in the world. Like oh, I feel something bad. What is that thing? Let me think about why I feel it. Well, there isn't actually a reason in this case. It's probably something chemical. Or there is a reason. Let me examine why that made me feel bad, right? And I, I got to where I was just doing this so often that I was able to ultimately with the help of my psychiatrist wean myself off the drugs. And I have not taken them since I was in my like—I was 21 or 22 when I quit. The long-lasting effect of that is that I still have those muscles, those, you know, emotional muscles, and they're constantly being enforced and practiced. And I think it's why I can do things like lead teams or even speak empathetically to an audience or as a trainer teach people because I'm constantly thinking about what they may be feeling and then, and also analyzing my own words as they're coming out. 

[00:29:41] SY: Yeah. So when you are having such a, a rich career, so many things going on—you're writing books, you're, speaking, you're traveling, you're CTO-ing, you know, companies—and then you have this mental health issue that you have to deal with I think one of the things that makes it really hard to properly deal with it is figuring out how much of what you feel is life and how much of it is frankly chemicals and is, you know, in your head. And I can, you know, imagine a lot of people in our community who might be dealing with mental health who are also dealing with this new stressor, this very real stressor of learning to code and trying to manage and, you know, get out of a job and apply for a new job. And when you're in that mix, what personally has helped you kind of separate the two, you know, deal with the fact that, you know, I, I feel this way because it's my brain versus, you know, this coding thing really is the cause today.

[00:30:38] CF: Yeah. Well I don't think external stimuli can ever actually be the cause of unhappiness. That's one of the things that I learned for myself. Happiness is intrinsic. And if you think about it that way, you can also think of the, the chemical imbalance as an external stimulus. So all of these things come at you, and you have to train yourself to process them properly. So in a way, it doesn't matter to me if it's the world or my brain because I have to process it, and I have to react to it the right way. I can ultimately recognize it. And, you know, if you, if you practice enough, you can feel okay. I feel—it's almost like a drug. Actually there—I think a lot of people who are bipolar get addicted to the mania because it feels really good. And so I feel that thing and sometimes it even feels good, and I say "oh that's it. You know, I gotta be careful." Like for me, if I ever have to be really mean to someone like, you know, a company that has screwed something up—like destroyed my saxophone in transit, you know, on an airline or something—if... 

[00:31:41] SY: Yeah. 

[00:31:41] CF: ...if ever have to do that, I know that I have to be careful and I have to not allow myself to do it often because if I get to a point of being angry, it messes me up. And it basically creates this mania thing, which I have to explicitly come down off of. But you know, I'm, I'm lucky because I did this I think early enough in my life that most of the time I'm not having to deal with this anymore. 

[00:32:05] SY: That's great. 

[00:32:06] CF: I believe you're never cured, but I'm kind of cured. And you know, feel pretty normal...

[00:32:14] SY: You're treated. Yeah. 

[00:32:15] CF: ...most of the time. Yeah.

 [00:32:16] SY: Yeah. Ok. So thank you so much for sharing all of your, your knowledge and your—I feel like your whole life with us. I know there are a lot of people listening who are wondering "how can I do that? How can I have a career as exciting and fulfilling as Chad's?" And I know you did a whole talk on this. It's like an hour-long talk called "How to be Accomplished," which we will put in the show notes, but if you can maybe sum that up or give one piece of advice for people listening who might wanna follow in, in some of your footsteps. What might that advice be?

[00:32:48] CF: I hate it when people say "you can do anything you put your mind to" because it's not actually true, (Laughing) but I think that the reason that that platitude is so popular is that most people don't think that they can do much of what they put their mind to, and they're afraid to go after goals like that. I am just not the smartest person that you'll ever meet. And, you know, when I'm in a room of my co-workers and employees at Microsoft, I'm the dumb one. I, I guarantee you. And I don't have an education to support this. I just got lucky, and then I tried really hard. And then I got lucky some more. And I cared about people along the way. But I almost didn't do any of it because I was afraid, and I just thought I was too dumb to, to make it. So my advice is just it's not hard to be a programmer actually. And once you become a programmer, there's so much—especially for career switchers. I wanna say this 'cause I'm one. There's so much about being successful in the software business that has nothing to do with how much you know or even how fast you can solve technical problems. You need a mix of that in the software world but you also need people who are empathetic and good communicators and just excited everyday. And, and I don't mean those are all the same person. There are attributes that you have that you can amplify. Once you learn sort of the bare minimum in software as long as you care about it and you wanna do a good job and you wanna keep learning, then figure out what your strengths are and really play to those and understand that they can take you really far really fast, (Music) even if you feel unqualified. 

[00:34:32] SY: Yeah. Very nice. Well thank you so much, Chad, for talking to us today. You wanna say goodbye?

[00:34:36] CF: I don't really wanna say goodbye, no. (Laughing) Let's just, let's just leave it like this. Pretend that it didn't end.

[00:34:42] SY: Ok, sounds good. And that's the end of the episode. Let me know what you think. Tweet me @CodeNewbies or send me an email hello@codenewbie.org. Make sure to check out our local CodeNewbie meetup groups. We've got community coding sessions and awesome events each month. So if you're looking for real-life human coding interaction, look us up on meetup.com. For more info on the podcast, check out www.codenewbie.org/podcast. And join us for our weekly Twitter chats—we've got our Wednesday chats at 9PM EST and our weekly coding check-in every Sunday at 2 PM EST. Thanks for listening. See you next week.

Thank you to these sponsors for supporting the show!

Thank you to these sponsors for supporting the show!