Podcast appearances and mentions of Stephen Hanson

South African cricketer

  • 23PODCASTS
  • 27EPISODES
  • 41mAVG DURATION
  • 1EPISODE EVERY OTHER WEEK
  • Apr 29, 2025LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about Stephen Hanson

Latest podcast episodes about Stephen Hanson

New Books in Political Science
The Good Father Syndrome: Why Strongmen Still Seduce

New Books in Political Science

Play Episode Listen Later Apr 29, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices Support our show by becoming a premium member! https://newbooksnetwork.supportingcast.fm/political-science

New Books in Sociology
The Good Father Syndrome: Why Strongmen Still Seduce

New Books in Sociology

Play Episode Listen Later Apr 29, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices Support our show by becoming a premium member! https://newbooksnetwork.supportingcast.fm/sociology

New Books in Politics
The Good Father Syndrome: Why Strongmen Still Seduce

New Books in Politics

Play Episode Listen Later Apr 28, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices Support our show by becoming a premium member! https://newbooksnetwork.supportingcast.fm/politics-and-polemics

New Books in American Politics
The Good Father Syndrome: Why Strongmen Still Seduce

New Books in American Politics

Play Episode Listen Later Apr 28, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices

New Books in European Politics
The Good Father Syndrome: Why Strongmen Still Seduce

New Books in European Politics

Play Episode Listen Later Apr 27, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices

New Books Network
The Good Father Syndrome: Why Strongmen Still Seduce

New Books Network

Play Episode Listen Later Apr 26, 2025 32:50


In this episode of International Horizons, RBI director John Torpey speaks with Stephen Hanson and Jeffrey Kopstein, co-authors of The Assault on the State: How the Global Attack on Modern Government Endangers Our Future (Polity Press, 2024). In this conversation, they discuss how today's right-wing movements, from the United States to Hungary, are waging a new form of politics that undermines the very foundations of the modern, rules-based state. Drawing on Max Weber's concept of “patrimonialism,” Hanson and Kopstein explore how these leaders erode public trust, demolish impersonal bureaucracies, and replace rational governance with personal loyalty and whim. Along the way, they examine the role of conspiracy theories, the rise of “deep state” narratives, and the uneasy alliances connecting libertarians, Christian nationalists, and advocates of an all-powerful executive. Learn more about your ad choices. Visit megaphone.fm/adchoices Support our show by becoming a premium member! https://newbooksnetwork.supportingcast.fm/new-books-network

Keen On Democracy
Episode 2049: How the Populist Attack on Modern Government Endangers our Future

Keen On Democracy

Play Episode Listen Later Aug 4, 2024 47:37


Much of the critical writing about authoritarianism warns that contemporary populism threatens democracy. But as Stephen Hanson and Jeffrey Kopstein argue in their interesting new book, The Assault on the State, this global attack on legalistic government by wannabe dictators like Putin, Erdogan and Modi endangers not just democracy but also much of what we take for granted about the convenience of modern life. It's a return to what they call the “patrimonialism” of The Godfather - a chillingly dysfunctional future in which to get a road fixed or a school built, we have to kiss the ring of a Don Corleone or a Donald Trump. Weird, eh?Stephen E. Hanson is the Lettie Pate Evans Professor in the Department of Government at William & Mary.  At William & Mary, he served as the Vice Provost for Academic and International Affairs from 2011 to 2022. Hanson received his B.A. in Social Studies from Harvard University (1985) and his Ph.D. in Political Science from the University of California, Berkeley (1991). He served from 2011–2021 as the Director of the Wendy and Emery Reves Center for International Studies, while also serving as Vice Provost for International Affairs at William & Mary. In 2016, William & Mary received the Senator Paul Simon Award for Campus Internationalization from NAFSA: Association of International Educators. Hanson served from 2009–2011 as the Vice Provost for Global Affairs, and from 2000–2008 as the Director of the Ellison Center for Russian, East European, and Central Asian Studies at the Jackson School of International Studies, at the University of Washington, Seattle. Hanson is the author of Post-Imperial Democracies: Ideology and Party Formation in Third Republic France, Weimar Germany, and Post-Soviet Russia (Cambridge University Press, 2010) and Time and Revolution: Marxism and the Design of Soviet Institutions (University of North Carolina Press, 1997), which received the 1998 Wayne S. Vucinich book award from the Association for Slavic, East European and Eurasian Studies. He is the co-author (with Richard Anderson Jr., M. Steven Fish, and Philip Roeder) of Postcommunism and the Theory of Democracy (Princeton University Press, 2001).Jeffrey Kopstein is Professor of Political Science and Director of the Center for Jewish Studies at the University of California, Irvine. In his research, Professor Kopstein focuses on interethnic violence, voting patterns of minority groups, antisemitism, and anti-liberal tendencies in civil society, paying special attention to cases within European and Russian Jewish history. These interests are central topics in his latest books, Intimate Violence: Anti-Jewish Pogroms on the Eve of the Holocaust (Cornell University Press, 2018) and Politics, Memory, Violence: The New Social Science of the Holocaust (Cornell University Press, 2023).Named as one of the "100 most connected men" by GQ magazine, Andrew Keen is amongst the world's best known broadcasters and commentators. In addition to presenting KEEN ON, he is the host of the long-running How To Fix Democracy show. He is also the author of four prescient books about digital technology: CULT OF THE AMATEUR, DIGITAL VERTIGO, THE INTERNET IS NOT THE ANSWER and HOW TO FIX THE FUTURE. Andrew lives in San Francisco, is married to Cassandra Knight, Google's VP of Litigation & Discovery, and has two grown children. This is a public episode. If you'd like to discuss this with other subscribers or get access to bonus episodes, visit keenon.substack.com/subscribe

For Humanity: An AI Safety Podcast
"Artist vs. AI Risk" For Humanity: An AI Safety Podcast Episode #11 Stephen Hanson Interview

For Humanity: An AI Safety Podcast

Play Episode Listen Later Jan 17, 2024 79:15


In Episode #11, we meet Stephen Hanson, a painter and digital artist from Northern England. Stephen first became aware of AI risk in December 2022, and has spent 12+ months carrying the weight of it all. John and Steve talk about what it's like to have a family and how to talk to them about AI risk, what the future holds, and what we the AI Risk Realists can do to change the future, while keeping our sanity at the same time. This podcast is not journalism. But it's not opinion either. This show simply strings together the existing facts and underscores the unthinkable probable outcome, the end of all life on earth. For Humanity: An AI Safety Podcast, is the accessible AI Safety Podcast for all humans, no tech background required. Our show focuses solely on the threat of human extinction from AI. Peabody Award-winning former journalist John Sherman explores the shocking worst-case scenario of artificial intelligence: human extinction. The makers of AI openly admit it their work could kill all humans, in as soon as 2 years. This podcast is solely about the threat of human extinction from AGI. We'll meet the heroes and villains, explore the issues and ideas, and what you can do to help save humanity. Resources: STEVE'S ART! stephenhansonart.bigcartel.com Get ahead for next week and check out Theo Jaffee's Youtube Channel: https://youtube.com/@theojaffee8530?s...

For Humanity: An AI Safety Podcast
"Artist vs. AI Risk" For Humanity: An AI Safety Podcast Episode #11 Stephen Hanson Interview TRAILER

For Humanity: An AI Safety Podcast

Play Episode Listen Later Jan 16, 2024 1:37


In Episode #11 Trailer, we meet Stephen Hanson, a painter and digital artist from Northern England. Stephen first became aware of AI risk in December 2022, and has spent 12+ months carrying the weight of it all. John and Steve talk about what it's like to have a family and how to talk to them about AI risk, what the future holds, and what we the AI Risk Realists can do to change the future, while keeping our sanity at the same time. This podcast is not journalism. But it's not opinion either. This show simply strings together the existing facts and underscores the unthinkable probable outcome, the end of all life on earth. For Humanity: An AI Safety Podcast, is the accessible AI Safety Podcast for all humans, no tech background required. Our show focuses solely on the threat of human extinction from AI. Peabody Award-winning former journalist John Sherman explores the shocking worst-case scenario of artificial intelligence: human extinction. The makers of AI openly admit it their work could kill all humans, in as soon as 2 years. This podcast is solely about the threat of human extinction from AGI. We'll meet the heroes and villains, explore the issues and ideas, and what you can do to help save humanity. Resources: STEVE'S ART! stephenhansonart.bigcartel.com

Giant Robots Smashing Into Other Giant Robots
493: Mobile Development at thoughtbot with Stephen Hanson

Giant Robots Smashing Into Other Giant Robots

Play Episode Listen Later Sep 21, 2023 34:30


We are thrilled to announce the third session of our new Incubator Program. If you have a business idea that involves a web or mobile app, we encourage you to apply to our eight-week program. We'll help you validate your market opportunity, experiment with messaging and product ideas, and move forward with confidence toward an MVP. Learn more and apply at tbot.io/incubator. We look forward to seeing your application in our inbox! __ Co-host Will Larry interviews Stephen Hanson, the Director of Mobile Development at thoughtbot. The two explore the complexities of mobile app development, focusing on the advantages and disadvantages of React Native and Flutter. Stephen, who initially started as a full-stack web developer specializing in Enterprise Java, discusses React Native's cost-effectiveness and the convenience of having a unified codebase for iOS and Android platforms. However, he notes that Flutter might be a more suitable choice for high-performance needs. Both hosts emphasize the nuances of the mobile ecosystem, covering topics like in-app purchases, push notifications, and the strict guidelines set by app stores like Apple's. They agree that a comprehensive understanding of these aspects is crucial for an entire development team, including designers and project managers. Additionally, Stephen shares that the driving force behind his career is the opportunity to create apps that enhance people's lives. Stephen wraps up the discussion by detailing thoughtbot's goals of improving mobile development practices within the company and the broader developer community. __ React Native (https://reactnative.dev/) Flutter (https://flutter.dev/) Follow Stephen Hanson on LinkedIn (https://www.linkedin.com/in/hansonsteve/). Visit his website: shanson.co (https://shanson.co/). Follow thoughtbot on X (https://twitter.com/thoughtbot) or LinkedIn (https://www.linkedin.com/company/150727/). Become a Sponsor (https://thoughtbot.com/sponsorship) of Giant Robots! Transcript: WILL: This is the Giant Robots Smashing Into Other Giant Robots Podcast, where we explore the design, development, and business of great products. I'm your host, Will Larry. And with me today is Stephen Hanson, Director of Mobile Development here at thoughtbot. Stephen, thank you for joining me. STEPHEN: Hi, Will. Thanks for having me. I'm excited to be here. WILL: Yeah. I'm excited to talk about mobile development. But before we get started, tell us a little bit about who Stephen Hanson is: your personal life. STEPHEN: You know this because we often talk about our families when we get together. But I have two young kids, two and four years old. When you say personal life to anybody who has young kids, that's what we're talking about. [laughter] WILL: Yes. STEPHEN: So, they're keeping me busy but in the best way. WILL: Yeah, definitely. And I totally understand that. So, I know we talk about this often, but you like to woodwork. You like to work with your hands like most of us in tech. Like, we think so much with our head and mental that we try to find something to do physically, and yours is woodworking. Tell me a little bit about that. STEPHEN: Yeah. I think it's exactly what you said. I think working on a computer all day, you know, many years ago, I was like, what's something I can do with my hands, right? Something a little more physical. So yeah, fine woodworking has been a hobby of mine for quite a few years. And we were even chatting the other day about, you know, I'm trying to take time during the day to sneak out to the garage for 15 minutes, you know, during my lunch break or whatever to just get that mental reset and just work on something. WILL: Yeah. I know that you built your office that you work out of. I've been wanting to ask you, one, how did you do it? Two, how did you have the confidence to do it [laughter] to make sure that it was going to...how can I say this? I would be afraid that would it still be standing [laughter] after a little bit? [laughs] STEPHEN: Yeah, to be honest, that was definitely a fear. Yeah, I built my office in 2020, you know, COVID hit. All of a sudden, I was working fully remote. And we had another kid on the way. You know, we didn't have space in the house. So, I was like, what am I going to do? [laughs] I was already doing woodworking, but I didn't have any construction or carpentry experience. So, yeah, I definitely had the confidence issue. And I think, you know, I was just like, I don't know, let's just give it a try. [laughter] That's really all I can say. I didn't have the skills yet. But I watched a lot of YouTube and read a lot of [laughs] forums or, you know, just found info wherever I could, so...[laughs] WILL: Yep. And it's still standing today, correct? [laughs] STEPHEN: Correct. Yeah. [laughs] No, I'm just sitting in, like, a pile of rubble right now. [laughter] WILL: That's awesome, yeah. It's kind of like development sometimes for me. Like, you just got to take that leap sometimes, so... STEPHEN: You do, right? It's like, you know, fake it till you make it. [laughter] WILL: Yep. That's awesome. Awesome. Awesome. So, tell us a little bit about how did you get started in development in general? And then, how did you get started in React Native? STEPHEN: Yeah. So, I started out as a full-stack web developer. So, I didn't initially set out and say, "I'm going to build mobile apps," right? And I started out in 2011. I was working in Enterprise Java. I worked for American Airlines for a couple of years, and then I did enterprise consulting. I eventually made my way to, like, Rails and front-end development. And around 2016, 2017, I was freelancing. And eventually, clients started asking me to build mobile apps. [chuckles] WILL: [inaudible 04:16] STEPHEN: And I didn't know how to build mobile apps. So, I did what any web developer would do who doesn't build apps, and I used web technology. So, those first couple of apps that I built were hybrid apps. I used Ionic. And those are, you know, web apps that you package in a Native Wrapper. So, developing these apps, I literally developed them in a browser, right? And they're web apps. [laughs] And that was my first experience building apps. Even if they were web-based, I still had to work with the native app stores and learn, you know, app review guidelines and implement some native functionality, even though it was through, like, the Ionic wrappers. You know, people kind of trash on hybrid apps, and sometimes for good reason. But that wasn't a bad first experience for me or outcome, honestly. The clients were happy. They had apps in the app stores that were working for a pretty reasonable development cost. So yeah, that was my first experience in mobile. The end result isn't something I'd be necessarily proud of today. [laughs] WILL: I think that's all devs. [laughs] STEPHEN: Yeah, you know, [laughter] yeah, I -- WILL: Looking back at their work, yeah. [laughs] STEPHEN: I was talking about that. I could look back to something I built a month ago. [laughs] WILL: Yes. [laughter] STEPHEN: You don't have to go back far. [laughter] WILL: Yeah, so true [laughs]. You started working with the client when you were freelancing. So, how did you go from the hybrid web apps to actually saying, okay, I want to change, and I want to go all in on React Native? STEPHEN: React Native came out around that same time I was building those hybrid apps. So, the hybrid apps were 2016, 2017. React Native came out in 2015. So it was out, but it was still pretty new. And I was really interested in React Native right from the beginning, but I was also a little intimidated by it [chuckles]. So, when those first clients came to me for mobile apps, I didn't feel confident enough to say, "Yes, I can build you a React Native app." But a year or two later, I was working for another client on their Rails app. And I was building an API for their new React Native app. You know, I was really interested in React Native. So I said, "Hey, [chuckles] why don't I help out on the app side, too?" And they were like, "Sure, that sounds great." So that was kind of where I got my foot in the door with React Native. And then more opportunities like that just kept popping up over the next year. So, I got to work on a couple of other React Native apps. And like we talked about, I just started calling myself a React Native developer [laughs]. The rest is history. WILL: Yep. So true. We'll touch more on that later. But what would you say to a client who is trying to figure out if they should build native versus React Native? STEPHEN: There's a few things to consider when making that decision. But I think, usually, what I've seen is it comes down to budget and user experience. The bottom line is React Native is going to be a lot cheaper. You're basically building one app instead of two, right? Most of your code in a React Native app is going to be in JavaScript, and you can reuse all of that code across Android and iOS. If you're building a native app, you're just building two completely separate apps. So, it's just going to be cheaper to build that React Native app, and a lot of times, that's what it comes down to. For most companies, it can be really hard to justify that extra cost of building a completely native app for each platform. But then the question is when we talk about how can you justify the cost? Well, what would justify the cost, right? [laughs] I think probably the biggest trade-off when you build a React Native app versus a purely native app is there is a little bit of a performance penalty by building in React Native versus native. So, I think apps that will need to have a very flashy cutting-edge experience with lots of user-driven animation and effects, you know, when you get into that domain, I think that's where we see pure native starting to make more sense. But most apps and users would never feel that performance penalty of React Native. So, for most apps, that's not really something that enters into the equation. WILL: I want to dig into something you said. You were talking about if you do go native, you usually have to build an iOS and an Android separately. But with React Native, you could do it together. So, for someone who's maybe never done either one of them, can you kind of dig into, like, what does that look like? So, when you say I have to build an iOS and an Android portion versus I can do one codebase for React Native, can you walk us through kind of what that looks like, just a sample feature? STEPHEN: When I say React Native is a single codebase and, you know, native apps, you're building two apps, the way React Native works is you're basically building a React app. So, all of your business logic is going to be in React. And when your React code renders some UI, that gets translated into native UI. But your business logic is still going to be living in that JavaScript React app. So, one, when I say performance penalty, that's what I'm talking about is: there's a little bit of a performance penalty communicating back and forth between your JavaScript thread and the native system thread. But when we talk about one codebase versus two, that's what a React Native app looks like. You basically are working on a React app. It's one codebase with one set of business logic. And when you say, "Show a modal on the screen," that gets translated into a native Android modal or a native iOS modal, but in your code, you're just saying, "Show a modal." [laughs] So, you're just writing that one time. So yeah, a React Native project is just one codebase. Now, one thing that we haven't really touched on is in a React Native app, you do have the ability to drop down into native code. So, you have access to the native Android project and the native iOS project in your React Native app. So, you can write completely native code if you want to. But the appeal of React Native is you don't have to, you know, unless you get into one of those situations where you need to do something native that isn't supported out of the box with React Native or by an existing third-party library, or you want to have a very performant, very interactive part of your app. Maybe there's a reason you want to do that in native. You know, you do have that option in a React Native app of dropping down into that native code level. But to contrast that with a purely native project, you will have two completely separate codebases, one for Android and one for iOS. You'll have a development team for Android and a development team for iOS, you know, typically with different skill sets. The Android project will be Java, Kotlin. And your iOS project is swift. So, just in every sense, you really have two different projects when you're working on a purely native app. WILL: Okay, yeah, that makes sense. So like, for React Native, that show modal is just however many lines to show that one modal, and it does it for iOS and Android. But when you talk about native, you're saying that; however, iOS says to show that modal, you have to do it that way. But then Android, you also have to do it the Android way. And one developer, unless they know both of them, may not be able to handle both for those cases, correct? STEPHEN: Yeah, exactly. React Native abstracts away those underlying platforms. So, you really just need to know React Native for most cases. Though, there's definitely a benefit of knowing the underlying platforms. WILL: Definitely. Especially, like you touched on if you wanted to go into that native portion to add in a feature. You know, for example, I know we both worked on a project where we had a scanning app. And we had to tap into that native portion and React Native in order to get the scanning app to work, correct? STEPHEN: Yeah, that's right. We had to support some barcode scanning devices and hook into those barcode scanning frameworks that were proprietary [chuckles] to those devices. So yeah, we had to build native modules for Android and iOS to support those. WILL: Gotcha. Okay. I want to touch back on something you said earlier about the flashy experiences. You said sometimes you may not see it or whatever, but sometimes, if you want that flashy experience, it's better to go the native route. Can you explain that a little bit more? STEPHEN: So yeah, it's kind of what I was touching on a second ago. You know, in a React Native app, you have the JavaScript thread that is always running and coordinating UI changes with business logic. So, you've got your business logic in JavaScript. You've got the UI in native. And those need to be coordinated to interact. So, that's kind of where that performance penalty can happen. You know, again, most apps and users would never feel this penalty. I've never been, like, using my phone and been like, oh, this is a React Native app; I can feel it, you know. [laughs] It's not something that typically enters the picture for most apps that we work on. But there are certain types of apps that might be more important, you know, highly interactive games or things that just need to have that extra flashiness and interactive flashiness specifically, where it could make sense to build that natively. Another interesting thing in the React Native space is React Native recently re-architected their rendering engine to be written in C++ and be more efficient. So, this performance overhead might be a little bit less of a trade-off. They've re-architected the way that React Native JavaScript talks to the native layer, which might make this even less of an issue going forward. WILL: I looked it up for the podcast. But do you know some of the companies that we probably are familiar with, like they built apps on React Native? Can you name a couple? STEPHEN: Yeah, I was recently looking at this, too. And, you know, the big one is Facebook, right? Facebook built React Native. So, they're the sponsor of that project. So, Facebook and Facebook Messenger, I believe those apps are built with React Native. I don't know if the entire apps are or not [chuckles]. Do you know by chance? [laughs] WILL: React Native on their website says, "Hey, we're going to showcase these apps that they're built in React Native." So, I'm guessing a huge portion of it was built in React Native, so... STEPHEN: Yeah. That's a good point. Yeah, you're right. They're showcasing it there. So yeah, you know, other ones, you know, lots of brands, Shopify, looks like PlayStation. I'm looking at the list now on the React Native website: Pinterest, Flipkart, Discord, Walmart, Tesla, Coinbase, Mercari. Yeah, I mean, it's just a lot of big-name apps built in React Native, including quite a few that we've [laughs] that we've built. [laughter] MID-ROLL AD: Are you an entrepreneur or start-up founder looking to gain confidence in the way forward for your idea? At thoughtbot, we know you're tight on time and investment, which is why we've created targeted 1-hour remote workshops to help you develop a concrete plan for your product's next steps. Over four interactive sessions, we work with you on research, product design sprint, critical path, and presentation prep so that you and your team are better equipped with the skills and knowledge for success. Find out how we can help you move the needle at tbot.io/entrepreneurs. WILL: If I'm absolutely sold on getting that flashy experience, is native the only route to go? STEPHEN: I think until pretty recently, that would have been your option [laughs]. But Flutter has been picking up a little bit of momentum. So, Flutter is developed by Google. And it's kind of a challenger in that React Native space. It kind of has the same write once, run anywhere, you know, philosophy as React Native. You have one codebase. But they tout kind of being a more performant option than React Native. So, it compiles down to native ARM or Intel code, which can give better performance without, you know, not needing that JavaScript bridge kind of handling that communication between the UI and the business logic. WILL: So, when would you use Flutter versus React Native? STEPHEN: I kind of keep going back to, like, you know, we talk about the performance overhead of a React Native app. I don't think that's even on the map for the vast majority of apps. Like, this isn't a performance penalty that you can typically feel. So, looking at Flutter versus React Native, React Native has several advantages. I think the biggest one is it's React. So, every team has React developers already on the team, pretty much nowadays. So, you know, if you've got an organization that says, "Oh, we need to build a mobile app," they probably already have a team of React developers somewhere working on their web app [laughs]. So, there's a big benefit of kind of centralizing their team around that technology. You know, you can have a little bit of cross-pollination between web and mobile, which can be really nice. I think, similarly, it's a lot easier to find and hire React or React Native developers right now than it is to find and hire Flutter developers. So, Flutter is written in Dart, and it has its own front-end framework. So, this isn't necessarily a technology that you're going to have on your existing team. Like, I've never worked with Dart, personally. It's not nearly as common as React developers. You know, that, to me, is going to be a big downside. You know, the talent pool is a lot smaller for Flutter/Dart developers. Also, the ecosystem with Flutter being newer, it's not as established. It doesn't have as large of an ecosystem as React Native. So, for those reasons, I think React Native is still, at least for us, like, it's usually where we would steer a client over Flutter, unless they're in that category of, like, they're really going for something, you know, groundbreaking. And, you know, the choice is either, you know, they've ruled out React Native. They need to get that native performance, and maybe they could achieve that with Flutter, and maybe Flutter would be a good option then. WILL: Okay. You mentioned that—and I agree with you—like, you probably have some React devs on your team somewhere. Most companies does. So, say if I am bought in, I'm going all in on React Native, and I have React web developers on my team. Is that an easy transition for those developers, or what does that transition look like? STEPHEN: Yeah, this is something...I think you and I have talked about this a lot because we both transitioned from React Web to React Native. And, you know, it wasn't all that easy, right? [laughs] WILL: No, it was not [laughter] at all. [laughter] STEPHEN: So yeah, you know, it is a fallacy to say, "Hey, we've got a React team, you know, let's just start tomorrow on building an app, and it'll be smooth sailing. And, you know, no one needs to learn anything, and we'll be good to go," right? [laughs] So, you know, what I always say is a React web developer can successfully work on a React Native app. But I don't think they have the skills yet to lead that initiative because there's just so much to the mobile ecosystem that needs to be learned. And really, you know, my first couple of React Native apps, I wasn't the lead developer. There was somebody on those projects who really knew that space better than I did. And that was really helpful for me to have. How about you? What about your first, like, React Native project? What did that look like? WILL: It was at another company, and the exact words paraphrasing was, "You know React, so you can easily work on React Native." And so, I got on the project. And I really struggled, to be honest with you, because there's a lot of things that I didn't know: in-app purchases, push notifications, how to deal with Apple store, Android store, deploying to those stores. Like all of those things, navigation is totally different than React navigations and routes. It was a lot. It was a lot more than they led on to what it was. Eventually, I caught on. It took me a while. I needed to work with some more senior React Native developers, and I was able to really pick it up. But yeah, it was tough. I'll be honest: I struggled for a while because I went in feeling like I should have known all those things because that's the way it was conveyed to me. Now that I look back on it I was like, there's no way I could have known those things. It's just a different language. So, I had to get in there and learn it. And I even...I'm trying to think I've learned a couple of new languages. But it's almost like learning a new language just with, you know, the, like I mentioned, the in-app purchases, push notifications. It's just totally different. STEPHEN: Yeah, that's been my experience also. I think the challenges weren't, like, coding [laughs] because, you know, building a React Native app is coding in React. The challenges that I faced were, like you said, it's just the mobile ecosystem and learning all the intricacies, the functionality that users have come to expect in mobile apps, you know, like password manager, integration, and background execution modes, and deep linking strategies, all that kind of stuff. You know, if you don't know what questions to ask or what features to be thinking of, it's just really hard. And [laughs] I think it's more than just the developer needing to know that too. I think anytime it comes, you know, down to building an app, the whole team needs to have that mobile background. It's just a completely different platform than building for the web, right? So like, product owners, project managers, designers, developers all need that context so we can be prioritizing the right features and building a UI that matches the patterns that people have come to expect in a mobile app. And then, of course, developing those apps using the, you know, the proper native modules. WILL: Yeah, definitely. And I [chuckles]...you mentioned that it's mostly on, like, the mobile side. I don't know the best way to say that. But, like, I can tell you, when I first got onto the React Native project, there were numerous features that I could implement, and to a certain point to where I had to go that mobile. So, like, I was like, oh yeah, I can learn these new components that's in React Native. Okay, I got it to work. It's finished. You know, my PM would be like, "Well, it's not completely finished because you have to deploy it." And I was like, oh, I have no idea what I'm doing now. Like, I just know [laughs]...I know up to this point. STEPHEN: [laughs] WILL: But anything over that, I'm like, yeah, I have no idea. STEPHEN: Especially with consulting, right? With consulting, you need even more expertise, right? The clients are counting on you to build their app. And that's where, you know, having that deep, deep familiarity where you can say to a client, "This is how we're going to do the deployment process, you know, and I need, you know, X, Y, and Z to help set it up. And here are the deliverables, and here's when we'll have it," that kind of thing. Like, it really takes it up a whole nother notch what you need to know. WILL: Definitely, yeah. Because I think compared to mobile, I feel like web development can almost be like the Wild Wild West. And what I mean by that is, like, there's no rules for you to push out a website in web. Like, you know, you build it. You push it out. It can be out there, you know. Whoever is hosting it, unless you go against their rules, maybe, but their rules are very relaxed and stuff like that. Mobile, there's a totally different set of rules. Because, like, I was laughing not too long ago. There was rumors that Elon Musk was going to remove the blocking feature on Twitter [chuckles]. And it was funny because all the mobile devs they came out. And if you're a mobile dev, you know this. Apple is very strict. STEPHEN: [laughs] WILL: If this is a social media app that you're building, you have to have that blocking feature, which I agree it needs to be there. But it's funny, like, all the mobile devs was like, yeah, that's not going to work. Good luck [chuckles]. Good luck being an app again. STEPHEN: Yeah, [laughs] good luck. WILL: Like, they're going to kick it off. And yeah, they're very big on kicking it off if it doesn't follow those rules and things like that. So yeah, for React Native, you have to learn those rules, or, like I said, they won't approve it. They won't push it out to their store. STEPHEN: Yep, exactly. Yeah. I feel like the new one at every client project; I have to say, "We have to offer a way to delete your account in the app," because [laughs] that's a new one that launched last year, and I think has just started being enforced more recently. Like, all those little gotcha rules, you know, like, if you don't know about that, then you're going to go to submit your app to the stores, and you're going to get rejected every single time. [laughs]. WILL: And they're not shy about rejecting you [laughs]. STEPHEN: Yeah. But I would say, like, a lot of the rules, I'm like, yes, this is amazing that we have these rules, you know. It does help keep the community safer like things like blocking. But then there's the other rules of, like, Apple's like, hey, you've got to use our payment system and pay us 30% of every sale. WILL: Yes [laughs]. STEPHEN: I was, like, you know, there's some evil stuff happening there, too. WILL: I totally agree. And we ran into that issue. We had an app that used Stripe. And we actually had to remove it in order to use in-app purchases because...I forgot the rules around it, but it was essentially for digital content. I think it's what it was. And so, we had to use Apple's in-app purchases. So yeah, I totally agree with you on that. STEPHEN: Yeah. I feel like I've been a part of so many apps where we're, like, reading those rules. And we're like, okay, you know, it's like, we're watching a live stream of birds. WILL: [laughs] STEPHEN: You know, like, the birds aren't digital [laughter], you know. It's like, [laughs] where does this fall in the rule? [laughs] WILL: Yes [laughs]. I've done that, too [laughter]. Yep. It's almost like, you know, I feel like lawyers, okay, like, is this what this rule is, or the law what is written, or does this fall underneath that? So yeah, totally, totally agree. STEPHEN: Yep [laughs]. WILL: So, you've been here a couple of years at thoughtbot. What has been your experience building React Natives here for clients at thoughtbot? STEPHEN: Yeah, yeah. I've been at thoughtbot for about five years now. And I have been building React Native apps that whole time. And, I mean, I started at thoughtbot a little more in the full-stack space, web development, and have transitioned to where I'm mostly only building React Native mobile apps now. It's been a great experience. I think that React Native is really a sweet spot of; we're able to build these apps really efficiently and much less expensively than when we're doing pure native. And the end product is a really good app. So, it's been a great experience, you know, React Native is really...it has a really nice development experience. You know, it's the JavaScript React ecosystem. And we use TypeScript, and we have a really good developer experience with it. And then we're building apps that clients are really happy with and with a good budget. So, I think it's kind of that, you know, like, win-win-win kind of scenario where everybody is happy. And yeah, I don't see it going anywhere. And I think we're going to be building React Native apps for quite a while to come. WILL: Yeah, I totally agree with that. Where do you see React Native and mobile dev going here at thoughtbot in the next six months or even the next year? What are your goals for the mobile team? STEPHEN: We've got a couple of goals. One of them is around kind of what we've talked about with the mobile space in general. This isn't really specific to React Native, but it can be. But, consulting in the mobile space is challenging because there's a lot of mobile-specific domain knowledge that a team really needs to have. So, that's something that we've started looking into is, like, how do we build up our resources internally and then, hopefully, externally as well to help guide us on our projects and ensure that we have, like, you know, we are developing apps consistently and efficiently every time? So, that's something we're looking into is, like resources to help our teams—not just developers, but project managers, designers, and developers—help us navigate the mobile space. Okay, you're going to do push notifications. Here's the library we use. Here's things to think about, and interactions to think about, and iOS-specific functionality that we could support, and Android-specific functionality that we can support. You know, you're going to do deep linking; do you want to use universal links, or do you want to use a different strategy, a scheme-based link? So, basically, building up that set of resources so that our teams are all able to consult and build efficiently and consistently across the board. So, that's kind of goal number one. And then, goal number two is to kind of bring some of that out into the community a little bit more. So, thoughtbot is very well known in the Rails space for all of the open-source content we've put out and blog posts, and courses, and books. I mean, there's just so much on the Rails side that thoughtbot has done. And we're just a little bit less mature on the React Native side in terms of what we've put out there. So, that's kind of the second goal is giving back, helping others kind of do that same thing. I feel like we have developed our practices internally, and we're building some great apps. And it's kind of time to contribute back a little bit more. WILL: Awesome. I'm looking forward to reaching those goals. If you can go back and give yourself advice, what would you tell yourself? STEPHEN: I would maybe say, read the documentation [laughs]. I don't know when I got into mobile; I think I just jumped in. And, you know, we've talked about some of the mobile-specific domain, and not knowing what you don't know, and app review guidelines. I feel like early on, I just responded to challenges as they came up, as opposed to just digging into, you know, Apple's documentation and Android's documentation and just really understanding the underlying operating systems in stores. That's probably a piece of advice. If I could go back, I would just start at the documentation, you know, go to developer.apple.com and read about all of the underlying APIs of StoreKit and, you know, associated domains and all of these sorts of things. Just learn 'em, and then you know 'em. [laughs]. So, maybe that could have saved me some heartache if I just was a little more intentional about, okay, I'm getting into app development. I'm going to set aside some time and just really learn this stuff, as opposed to kind of where I had one foot in the door, one foot out of the door for a while. And I think that kept me from just sitting down and really going deep. WILL: That's really good advice. Just read the documentation. And that's not just Apple. STEPHEN: [laughs] WILL: That's a lot of departments, sections of my life. So, yes, I like that. [laughter] STEPHEN: I actually...that's something I did early in my career. So, I started as an Enterprise Java developer in 2011, and I was using the Spring framework. I downloaded the entire PDF. It was, like, 250 pages, the documentation [laughs]. And I remember just being on, like, airplane flights, and I just read the documentation, just cover to cover. That served me so well. I was, like, the expert, you know [laughs]. I don't always do it, but when I do, I'm like, oh yeah, why didn't I do that sooner? [laughs] WILL: Yeah, totally agree. I like that. What is the wind in your sails? What motivates Stephen? STEPHEN: Like, I think what attracted me to software development is just being able to build stuff, you know, probably the same thing that attracted me to woodworking. So, I think what motivates me is that prospect of, hey, I'm building an app that people are going to use, and it's going to make their life better. So, that's really what gets me up and gets me motivated. It's less so the actual coding, to be honest. It's really the prospect of, like, hey, I'm building something. WILL: Awesome. Yeah. Is there anything that you would like to promote? STEPHEN: If you're interested in building a mobile app, come talk to us. We'd love to build your mobile app. Go to thoughtbot.com/hire-us; I believe hire-us. We would love to talk to you about your mobile project. So, don't hesitate to reach out. We'd love to hear about what you're interested in building. WILL: Awesome. Well, Stephen, it was great to chat with you. It's always great to chat with you about mobile development and just personal life things. So, I really appreciate you being on the podcast today. STEPHEN: Thanks for having me, Will. It was a lot of fun. Always good talking with you. WILL: You can subscribe to the show and find notes along with a complete transcript for this episode at giantrobots.fm. If you have any questions or comments, email us at hosts@giantrobots.fm. You can find me on Twitter @will23larry. ANNOUNCER: This podcast is brought to you by thoughtbot, your expert strategy, design, development, and product management partner. We bring digital products from idea to success and teach you how because we care. Learn more at thoughtbot.com. Special Guest: Stephen Hanson.

CruxCasts
Investing in Lithium: Navigating Trends and Fundamentals

CruxCasts

Play Episode Listen Later Aug 18, 2023 43:30


In the dynamic realm of lithium mining, leaders like Robin Dunbar of Grid Metals, Jeffrey Wilson of Eureka Lithium, and Stephen Hanson of ACME Lithium stand out. Grid Metals, situated in southeastern Manitoba's Bird River greenstone belt, controls prized high-grade lithium pegmatites at Donner Lake and Falcon West, with a strategic advantage given their closeness to the Tanco mine, one of Canada's two lithium producers. Their journey doesn't end with lithium; their Ni-Cu-PGM-Co project, Makwa-Mayville, is also generating significant interest. Eureka Lithium, on the other hand, stands as a dominant force in Quebec's Nunavik region. They hold vast projects in emerging areas like Raglan West, Raglan South, and New Leaf Lithium Camps, and have ties to the illustrious prospector Shawn Ryan. The territory they oversee is mineral-rich, housing two active nickel mines with invaluable deep-sea port access. Meanwhile, ACME Lithium, backed by a team of industry veterans, is laser-focused on exploring and developing battery metal projects. Their expansive interests range from Nevada's Clayton Valley and Fish Lake Valley to sites in southeastern Manitoba and northern Saskatchewan. Join us for a deep dive into the innovative endeavors, hurdles, and openings these trailblazers navigate in the fast-evolving lithium sector. Subscribe for a deeper look into the multifaceted world of mining!

CruxCasts
ACME Lithium (ACME) - Despatches from the Lithium Front Line

CruxCasts

Play Episode Listen Later Apr 3, 2023 15:55


Interview with Stephen Hanson, President & CEO of ACME Lithium (CSE: ACME)ACME Lithium is a mineral exploration company focused on acquiring, exploring and developing battery metal projects in partnership with leading technology and commodity companies. ACME has acquired or is under option to acquire 100% interest in 266 lithium and lode mining claims totaling approximately 5,415 acres in Esmeralda County, Nevada, which are prospective for lithium contained in tertiary claystones.

CruxCasts
ACME Lithium (ACME) - Drilling 2 Projects Near North America's Only Li Mines

CruxCasts

Play Episode Listen Later Mar 9, 2023 29:31


Interview with Stephen Hanson, President & CEO of ACME Lithium (CSE: ACME)ACME Lithium Inc. is a Canadian mineral exploration company focused on advancing its battery metal assets in Nevada and Manitoba. The company's asset portfolio consists of the Clayton Valley and the Fish Lake Valley projects in Nevada and the Cat-Euclid Lake, Shatford Lake and Birse Lake projects in Manitoba. The Clayton Valley project of the company holds a land position of approximately 2,975 acres and is located next to the Silver Peak lithium mine owned and operated by the Albemarle Corporation. The project has the potential to host lithium brines similar to the Silver Peak lithium mine. The Fish Lake valley project of the company has shown mineralisation of up to 200 ppm of lithium within claystone and is located next to the Rhyolite Ridge Lithium-Boron Project owned by Ioneer Ltd. The Shatford Lake project is a lithium pegmatite deposit which consists of 21 claims totalling approximately 8,883 acres in the southern limb of the Bird River Greenstone Belt of south-eastern Manitoba, Canada.

Discussions by Domain
What IT Leaders Are Facing, and How to Fix It

Discussions by Domain

Play Episode Listen Later Sep 12, 2022 23:16


Anthony sits down with Stephen Hanson, Regional Director of Sales for Integris in the midwestern region, for a discussion on the problems and opportunities that IT leaders across the country are facing, and the possible methods of resolving these issues in the short and longterm.

The Bike Shed
306: If You Want To Go Far, Go Together

The Bike Shed

Play Episode Listen Later Aug 31, 2021 45:14


In this episode, Steph and Chris talk about things they've changed their minds about over the course of their careers as software developers. Steph talks about as it turns out, arm chair rests are good, feature flags and comments are also good, she's changed her mind about how teams structure the work that each person is doing at once, and believes strongly in representation in the field. Chris is not a fan up upgrading his operating system and when he first started out, he gravitated towards learning dynamic languages, and since then, much prefers functional languages, static typing or more broadly, static analysis. He also no longer believes in the 10x engineer, and also very much believes that URLs matter on the internet. So basically, don't call them single-page applications; call them client-side applications instead! Arq (https://www.arqbackup.com/) Karabiner-Elements (https://karabiner-elements.pqrs.org/) Kent C. Dodd's Epic React Course (https://epicreact.dev/) The Art of Code Comments by Sarah Drasner (https://www.youtube.com/watch?v=yhF7OmuIILc) Gary Bernhardt: Functional Core, Imperative Shell (https://www.destroyallsoftware.com/screencasts/catalog/functional-core-imperative-shell) Transcript: CHRIS: I still have dreams that I missed an entire semester of math class, and now it's time for the final. I don't know that I'm ever going to grow out of that. STEPH: That's wild. CHRIS: You don't experience that? It's a mixture of I'm in elementary school, but it's a college final. Like, the physical school that I'm in is my elementary school, but it's a calculus college course that I missed. And now it's time for the final, and I won't graduate college as a result. But it's also high school at the same time. Just every part of education sort of melded together into this nightmare scenario. Do you not experience that? I thought this was normal. STEPH: [chuckles] Not in a very long time, not since I was in college. But I'm imagining this very cute, young Chris showing up with a backpack to the calculus final like, "Oh no." [laughs] CHRIS: Yeah, pretty much, yeah. I really thought I would grow out of it at some point. But it shows...I think it manifests when I have anxiety about something else in the world, and then I have a math terror dream. STEPH: That's your stress sign. That's your terror dream. CHRIS: Apparently. STEPH: Hello and welcome to another episode of The Bike Shed, a weekly podcast from your friends at thoughtbot about developing great software. I'm Steph Viccari. CHRIS: And I'm Chris Toomey. STEPH: And together, we're here to share a bit of what we've learned along the way. Hey, Chris, how's your week going? CHRIS: Oh, it's going fine. Yeah, I'll go with fine. I had to upgrade my operating system. Enough things had stopped working or seemed to be pestering me about it regularly, which normally I'm going to ignore that for as long as I can. That's sort of where I'm at in the world these days. Like, I don't want to upgrade because I don't know what's going to break and whatnot, but then things had broken already. Text messages were no longer showing up on my computer. And it turns out that the primary way that I interact with text messages is by replying to them through my computer. I don't want to type on my phone, that's not a thing. I'm already grumpy enough about text messages, to begin with, that I will regularly respond switching to email, and then I'll go off from there. But yeah, they stopped working, it stopped connecting. And then I got this really weird message from Apple when I tried to sign in. And I was like, I feel like I should at least try to upgrade to the new operating system, which I think has been out for a long time, and I've just been ignoring it. But then I had the added problem of I didn't have enough space on my computer to install it, which I tried once before. So I downloaded the installer, but the installer downloader doesn't check whether or not you have enough space to do the install. So it's just like, hey, so you know how you didn't have enough space? Well, we took up the remainder of it, and now you can't do anything about it. And the installer is hidden somewhere in the computer. So at one point, it just went away, and then suddenly had a lot of space on my computer. But finally, I decided to bite the bullet. I found a bunch of caches on my computer. So there was a cache for my backup utility, which is called Arq, A-R-Q, which was a lot of space. It was like 20 gigs or something like that. So it was like, sorry, you have no more cache. I'm pretty sure my computer's going to light on fire the next time it tries to do a backup because it has no cache to rely on, and it's got to try a lot harder, pull a lot more data down. I don't know what it does, but whatever. It's going to do that. And then, I found the more general application caches on the computer. Spotify had like six gigs of cache. Well, what are you doing? Aren't you streaming from the internet? Stop it. That's not okay. That is not acceptable. Yarn had three gigs. I was like, what is everybody doing? And I busted all of these. I threw away everything, and my computer seems to be doing fine after the fact. So, were the caches even doing anything? I ask. Anyway, so I upgraded, and then some stuff didn't work. And so then I had to find the versions to make stuff work. The particular one that stood out was Karabiner-Elements, which I used to make my mechanical keyboard do the right things for the function keys. That stopped working. And I tried to upgrade it to the newer version because I figured okay; they probably hopefully released a new version, but it failed in the upgrade process. And it turns out the secret was I had to upgrade to an intermediate version. I was on 12.3, and I needed to go to 13.4. But in between, I had to go to 12.10. And if I went to 12.10, then the upgrade to 13...everything about it was everything that I hate about upgrading software. It's like, I just know it's working right now, and I feel like if I even just look at it wrong, this whole tower of software is going to fall over. The worst thing, the thing that I have not been able to fix, is now I use iTerm as my terminal, my terminal emulator as it were. And I typically run with transparency mode on which some people look at and say, "Wow, that's a choice." And I say, "I kind of like it. I don't know; it makes me feel like a hacker or something." I don't know, whatever. [chuckles] Let me live my life. But for some reason, switching to Big Sur, the version of OS X that I'm on now, iTerm doesn't have transparency anymore. And I just haven't been bothered to fix it yet. But, man, I got rambly. I clearly have some feelings about upgrading software. STEPH: You have so many feelings. The fact that you kept going...People can't see me, but I'm just dying because of that whole story. [laughs] CHRIS: I kind of felt like I had to get through it. I had to exorcise the demons, tell my tale, and then be done with it, which I think I'm at now. STEPH: When I start laughing that hard, [laughs] I try to hide from the camera view because I want you to keep going for people to listen. CHRIS: But what's fun is you bob and weave. You'll hide for a minute, and then you'll come back and be like, okay, I'm composed, never mind. And then you'll just fade off to the side again. So yeah, but I powered through. [laughs] STEPH: Oh, all right, there is so much there. [laughs] Upgrading is the worst. I agree with that. That was actually something I ran into earlier this week. Well, it was a mix of where upgrading presented a problem and then upgrading something else resolved that problem. And so that was an adventure where I shared a tweet. I can link to it in the show notes as well. But Ruby was just taking up 100%, a full core, just all the time, and I couldn't figure out why. I wasn't doing anything with Ruby. We weren't talking at the moment, but it was just turning up one of those 100% CPU or higher. And so then I did some searching. And I did find the resolution, which was to upgrade the Listen gem because there was something in the Listen gem that didn't fully support Big Sur. Is that the name of the thing that I am on? CHRIS: That's the new one, yeah. I know because I've just upgraded to it. I have thoughts on the matter. [chuckles] STEPH: Cool. [chuckles] Yeah, when I upgraded to Big Sur. But then someone had kindly marched in to fix it, then upgrading resolved that problem. And Ruby is back to a peaceful level as to the amount of process, the amount of CPU that it should be taking up. Transparency mode, I'm thumbs up on it. I like how you called that out, how that's a choice. And I'm with you on that choice, although I didn't realize that's broken. I guess I just hadn't...I guess I don't care deeply enough that I've tried to restore my transparency, but you're telling me to hold on. CHRIS: We're going to get realer now in this moment. So I have a very old version of iTerm because it has a different way of going fullscreen than the default operating system level fullscreen. I really hate that it animates to fullscreen, and it doesn't quite fill the full screen. Like, it still had a border around it or something. So I have a very old version of iTerm that I've been running with forever, and I refuse to upgrade in any way as a result of I want to cling to this old version of things working. But as a result, I think I finally hit the end of the road on that. This is like years running now too. I remember I kept it in a Dropbox folder so that each time I upgrade or get a new computer, I'm like, okay, good. I still have my old special version [chuckles] of iTerm. But I think that time is over and I got to find...I feel like there are new terminal emulators out there. It's like Alacritty and other stuff that people talk about. So maybe it's time for me to try and find something new as long as I can get that transparency because I want to feel like an uber lead hacksaw. STEPH: You have such a brand of new-new that I'm now discovering that you are also a software hoarder, so you have both in your personality. [chuckles] CHRIS: There was a period early on in my software career that was like, oh, I got to find all this stuff. I got to figure things out and configure it. And then I was like, wow, that's taking up a lot of my time, I should stop it. And I think since then, I haven't upgraded anything. If you go look at my .files, I don't know the last time I pushed to them, but it's been a while. I'm still doing things, of course, but not as much. I know the cost of it, and I know the cost of maintenance. And really, this is an allegory for software overall. This isn't just about our local development environments, but entropy exists in software. Software does not exist at rest, and it will decay over time. And so the idea of we've worked with so many clients where they're like, yeah, we're on Ruby 1.8, and it's Rails 0.9. So okay, all right, well, we're going to have to deal with that, it turns out. We can't just keep ignoring that. So really, it's the same story played out but in my local hoarder cavern. STEPH: There was a part of the saga, the story that you shared with the installer and that you don't have enough space, and it took up the rest of the space, and you can't do anything. I'm very nervous; what happened to your stuff, your space? How did that resolve? [chuckles] CHRIS: I finally bit the bullet. And so I have a bunch of...I've tried a bunch of the different pieces of software that will visually analyze your disk space. So they crawl the whole directory starting from the very root of your computer, and it will be like, all right, applications has this much, and the library directory in your home directory has this much. Here are all of the different places that stuff might be hiding on your computer. And then you can visualize and be like, okay, that's where the most of it is. Node modules, as an aside, we did not choose an efficient way to approach how to put code on my computer because Node modules take up a lot of space on my computer, but they're so spread out. Multiple times I've seen people share a version of rm -rf, and then it's some subshell that does find every Node modules directory underneath a code folder. So you can find every single Node module and just blow them away. That will regain you some space. But that was not the solution this time. I've tried lots of piecemeal solutions over time. But eventually, the thing that got me there was just busting all of those caches. So I cleared the backup utility, Arq's cache. I cleared a bunch of them, Spotify Yarn, et cetera. And that cleared enough space for the installer to actually run. And then, once that was done, the installer program itself was no longer around, so I reclaimed that space. But it was this weird chicken and egg thing where I had to have enough space to complete the installation such that the installer could go away. And now...actually, let me see what my hard drive looks like now. So somehow, according to the Macintosh hard drive info, I have 50 gigabytes of available space, which is really frustrating because there were a number of weeks where we went into a Bike Shed recording, and I was like, I have one gigabyte. I'm not safe right now because this audio is going to be more than that. And so I don't know how now I'm sitting at 50. I guess all those caches that I cleared and the installer being gone probably puts me in a good spot. But anyway, I'm living in an upgraded, wonderful world. As an aside, Big Sur is ridiculously rounded and colorful and almost cartoonish. They're really leaning into the iOS vibes. And I'm not sure it's my personal aesthetic, but that's fine. I spend most of my time in the terminal anyway. But I think that's enough of me ranting about upgrading my operating system, which apparently I had a lot to say about. But what else is up in your world, Steph? STEPH: I do appreciate the ranting, though. You're not often grumpy, and when you are, it's quite humorous. [laughs] I really enjoy the grumpiness. And it's often a painful process. So I appreciate all of that story. Something that I really need to share with you and get off my chest is a couple; I don't know, x number of episodes back, you and I were talking about computer chairs. And I bragged about the fact that I have a computer chair that has no armrest, and I love it. I love my chairs like this, and it's wonderful. And I just think it's the best way to live. And it turns out that that's bad because I happened to go see a massage therapist who's also very well-skilled in physical therapy and other areas. And they were talking to me about my desk setup. And I mentioned the fact that I get these typical headaches, and I have my chair, but there's no armrest. And they're like, "Oh, that would do it." I was like, "Why? I like my setup. What's wrong with it?" And they're like, "Well, if you don't have armrests, then your back is having to compensate and to hold up your arms and your shoulders all day. So while you're typing, you're using more muscles to then hold that. And then they eventually tighten and contract, and then that can cause headaches." So in case, I have led anyone astray into having no armrest, they are apparently very important to not having headaches or having your back overworked to the point that you have headaches, which I'm a bit sad about. But on that front, I have ordered a new chair, and we'll see how it goes. I will have to assimilate into the world of chairs with armrests. CHRIS: We welcome you with open armrests. [laughs] Sorry, I saw it, and then I went with it. Anyway, I'm realizing now I actually don't use the armrests on my chair per se. I actually end up putting my arms on the desk, which is probably not ideal either. I have a little wrist pad so that my wrists are brought up and so that I don't have the upward breaking of the wrist thing going on. I think that matters a lot. And then my arms are supported by the desk, but it is just right on the desk, and I wonder if that's worse. But I've never...I don't know, getting the armrests just right and then also having the wrist pad. But I can't adjust my desk is probably the main problem. If I could bring my desk down a little bit, and if it were a thinner top, then I'd have more flexibility. The chair that I have is wonderful and has flexibility. The arms can go up and forward into the side and lumbar and this and that. And so I'm able to make the chair work to the desk. But I do wish I had more of an adjustable...ideally, like a stand-sit desk. But I haven't made that jump just yet. STEPH: When you're ready to make that jump, I'm going to share with you where I bought my desk because I'm really happy with it. And it's also not nearly as expensive as most of the other desks that will go up and down. CHRIS: Presumably, we can include it in the show notes as well so that we share it with everyone. STEPH: Definitely, yeah. CHRIS: Otherwise, that's just kind of mean. [laughs] You and I have a weird back channel that we talk about on the show, but they're not actually put in the show notes. STEPH: We're not mean. We wouldn't do that. I love my desk. And it was from someone else. They're the ones that shared it with me, so I'm happy to pass it along because it has served me well. And yeah, I'm also not sure about how this is going to work with the chair and the armrest because I'm just worried they're going to be too wide, and they're not going to actually offer support. I have doubts. I have lots of doubts, but I'm willing to investigate. And we'll see how this goes because I would like for the headaches to stop. CHRIS: Good luck on that front. That definitely seems like an indication of worth putting in some effort there. STEPH: Agreed. I also have some other exciting news. Stephen Hanson at thoughtbot has organized a number of other thoughtboters to get together who are interested in really diving into leveling up, learning React, and specifically focusing on purchasing the Kent C. Dodd's Epic React course. And it's for anyone that is comfortable writing code, whether you know React really well or if you're new to it. Everyone's welcome to join. So we just kicked that off today where we're going to go through the course together and then meet every Friday. I think the cadence is probably three hours, three and a half hours every Friday, that then we're going to commit to working through the course together. And I have to admit, I always nerd out a bit over how does someone build a course? Like, I'm really excited about the content as well, but I just want to know how did someone go about producing this content and then sharing it with everyone? And then what's their outline? How do they help people that are getting stuck because they can't be there in the same room? How do they record their videos? So I'm really excited to see all the ways that Kent has crafted this workshop. And so far, there's so much content, but I'll have more to report as we really start to dive in. But I'm excited to revisit React because I haven't been in React land for at least a year and a half; it's been a while. And so it's one of those areas that I know some bits, but a lot has also changed. And I would like to just revisit that world. So I'm really excited to dive into the course. And so far, I really like the structure that Kent has taken with the curriculum where we're focusing first on what exactly is happening and all the effort that goes into if you wanted to actually write HTML and then layer on JavaScript on top of that. But then here's how React makes that easier for you. Here is how JSX makes it even easier on top of the React API. I really liked that. Here's some pain; feel a little bit of pain, let's get a little bit better. And then let's get even better on top of that. And that has been a really nice reminder and progression into the course. CHRIS: I'm definitely a fan of the way you're describing it like, feel some pain, and then let's get better. But then, like, what's the hook? With any educational content, this is the sort of structure where there can be full education. But this is the thing that I feel very deeply about conference talks is my goal isn't to teach you everything if I'm giving a conference talk; it is just to get your attention just to say, "Here's the thing, here's why you might care." And starting from the problem, starting from the pain is always such a good way to do that. Because you know how this stuff is hard? What if I had an option that was easier? And then building from that totally makes sense. I want to say that course, Kent's course was built in conjunction with the egghead team, egghead.io. And it's a distinctly branded course. But it was built on top of the framework in the platform that's there and all of that, and then some of the editing support. I don't know this for certain, but I think there was some teamwork there. And I love just pushing forward the envelope of how we do educational content in the world of development because it is such an interesting world that has, frankly, such a need for ongoing development. The world is changing out from underneath us every two days. And therefore, having great educational content is so important. So yeah, definitely interested to hear how your experience goes both with the course and then also diving deeper into React. Well, switching gears just a little bit, I had a topic that I wanted to dig into with you today. And so to give some context, the topic, the thing that we're going to be talking about today is what have we changed our mind about? So you and I have both done a little bit of thinking and tried to come up with some answers to this. The background, this was actually inspired by a tweet that I saw between Shawn Wang, aka "Swyx" on the internet, and Charity Majors, a recent guest here on this podcast. And Charity is someone who is known for having strong opinions. But Shawn asked the question of what are some opinions that you've changed your mind about? And Charity actually had a wonderful list, which we'll link to her tweet thread where she shared some of her both technical and then also more personal ones, but really talking about the sort of evolution of thinking and the way someone's thoughts can change over time. And I thought it was just such an interesting thing because, for most points in time, we experience someone's sort of snapshot of where are you at now? What do you believe to be true? But I think there's such an interesting story and sort of the arc there of what did you believe to be true that you don't anymore? What have you softened your beliefs on? What have you strengthened your beliefs on? So yeah, with that as the context, what have you changed your mind about, Steph? STEPH: Yeah, this one really got me thinking, and I feel a little stumped on it. I have a few that I'm excited to share. But I'm very excited to hear your list to see if that also helps me reflect more on some of the things that I have changed my mind about. And I have found that there's only a couple maybe that I feel like I've really solidly changed my mind about. The others, I've either dialed up the strictness, or I've dialed it down. So the ones where I've really changed my mind about are feature flags and comments. Those are two of them. Well, there's a third one, but I'll get to that in a moment. So starting with the first one, feature flags I was more in the camp where I very much appreciate feature flags, but I use them sparingly because then there is a tedious nature of introducing them and then having to clean them up, and then having to maintain two states of code. But now I've really seen the value of feature flags and how we can make sure that we have calm releases and ensuring that main is always in a deployable state. So feature flags is one for me. I'm very invested in having more of a robust feature flag system because I see the benefit to that. The other one was comments. I used to be very rigid about comments are bad. We should never have comments in our code. They are just waiting to go out of date, and they're not going to be helpful. But I have since dialed down that strictness where I have certainly seen moments where comments do feel very helpful, and I can see how people use them. I still want to avoid them for the most part, but I am less strict now in regards to people who really find value in comments. I'm more open to that discussion. I want to understand what it is they find helpful about that comment, and if it is something that we can't capture with code or a test, where does that live? CHRIS: Those are both interesting. Feature flags, for me, I think I actually was more strongly opposed in the beginning. Earlier on in my career, I saw them as added complexity, as noise. I often would encounter them left behind in a codebase. And so, I had this negative association with them. And I didn't see the value; I hadn't yet felt that pain. And over time, I've definitely shifted to where you're at where I'm like, I love feature flags. This is a critical tool in our toolset of how we actually…like you said, calm deploys, being able to always deploy main, making sure that we don't have long-running feature branches. There are so many benefits that come out of it that I'm now very strongly in favor of them. But it's interesting; I think I would say that I started in a more strongly opposed place. So that wasn't on my list, but it's an interesting one that you've brought up and probably one that I've moved more on. Code comments, I think, actually started in my career being like, obviously, you comment your code. It's the thing that I read about and stuff. And slowly, over time, I think I've just dialed in on I don't think we should be doing that. There are, of course, going to be exceptions. And actually, one of the things that I discovered about myself as I was trying to go through this exercise is there are very few things that I believe are black and white. If anything, that maybe is one of the things that I've leaned into over time. It's like, nothing is binary. Nothing is black and white. Everything is on a continuum or shades of gray. There are things that I believe a little more seriously. But there's almost nothing that I can be like, nope, absolutely I will not equivocate on this beyond how we interact with other humans and being reasonable, kind people. And in terms of software practices, not really. Comments, though, are one that I still am pretty strongly not going to lean into. So it's interesting that you're like, eh, I've kind of opened up to that one. STEPH: There's a particular talk, The Art of Code Comments by Sarah Drasner, and that's the one that really shifted some of my opinions around comments, and then how we talk about them, and what benefits they can play. But I will admit, if I see a PR that has code comments, I still immediately have a negative reaction to that. And I want to have a conversation around why that comment was added and if we can remove it, and how we can remove it. But even with that negative perspective, I still find that I'm more open to that discussion versus before, where I would have been like, no, that's just unequivocally bad. CHRIS: I do like that you always bring up that talk whenever we talk about comments. This is a great talk. And in the background, I just looked up Sarah's Twitter profile because every time you bring it up, then I mention that she has a still from the movie Labyrinth in her Twitter background, but she actually changed it. And so now that's not true anymore. It's now something from The Force Awakens. Well, it's actually a joke, but I'm still going to suggest that you watch the movie Labyrinth at some point. That's the thing that I feel actually kind of weird about. It's a weird movie. STEPH: I'm going to take your suggestion, but not watch it. But thank you. [laughs] To share my truth today. CHRIS: That's fair, that's fair. STEPH: What are some of the things on your list? CHRIS: Okay, I have a couple, some more on the technical. Let's lean into one of the technical ones. Early on, I started with dynamic languages. I think I started with Python primarily and a little bit of JavaScript. I eventually found my way to Ruby and felt very at home there. And then, I started to explore functional languages. And I started to lean into them really hard and felt that immutability and functional programming and true pure functional programming was the thing. It was the answer, and I just needed to figure out how to do it. And so I would say that is the belief that I have since changed my mind on and decided, you know what? Actually, it feels like a bit of a force fit. I have tried. And maybe for others, it is actually a really fantastic way to build software. But having worked with a number of other people in more functional contexts, I find that it is a bit of a force fit. It's a bit rough. And in particular, of late, I've been working with Svelte as opposed to React, and React does sort of lean into the functional paradigm, especially with Hooks and all those sorts of things. And it's a little bit rough because it turns out UIs are these deeply mutable things. We're changing values or typing things in. There are actions that are changing the state over time, and having a system that just more directly models that feels very natural. I still love functional programming for the more core of an application. So again, I reference this talk often, but Gary Bernhardt's Functional Core, Imperative Shell. Gary has really formed some of my thinkings on this. And now I've started to find the examples in the work that I'm doing of like, oh, okay, I see that pattern actually applied here. But much as I would love to use them, the functional languages I find just aren't quite landing for me. And additionally, the mutability, particularly in the front end right at the edge of the UI, is not quite as good of a fit. STEPH: So I think that resonates with me although I do still get very excited about following more patterns that represent more immutable state just because I felt so much pain and found bugs from the fact that we have mutated state in surprising ways. I'm honestly not quite sure how I feel about it. I'm going to have to think on that one. That's a very interesting one that you've changed your mind on. CHRIS: Yeah, similarly, my feelings are lukewarm, whereas before, they were stronger. I was like, oh, okay, I think I found something here. And then, in attempting to use it across a wide variety of applications, it just didn't quite feel right. I felt like I was swimming upstream sort of thing. Actually, there is an interesting counterpoint. One thing that I have leaned into and definitely changed my mind on and embraced is static typing or, broadly, static analysis. But I think static typing being the most pointed version of that. Early on, like I said, I got my start in very dynamic languages in Ruby, and Python, and JavaScript. And so that dynamic duck typing runtime can be anything. We just make our systems respond to the messages, and all of that sounded great. But it turns out I really love having a compiler that can tell me some truths about my program before it ever reaches runtime. And the idea that a typo can make it to production feels absurd at this point. And actually, as I'm working in Ruby, I'm like, man, I really got to go look at that whole Ruby typing thing we got going on. I don't know what the state of it is. I've looked at it in the past, and I need to revisit it soon. But like TypeScript, I've definitely embraced that very strongly. And I would not work without TypeScript in a JavaScript project at this point. I've loved the work that I've done in Elm, although that also sort of blends into the functional stuff where it's like, it was a little bit noisy, though, I'll say that. But the type system and the fact that the compiler can give you so much rich information about your program, I would not trade that at this point. And I don't see myself going back on that front, which is an interesting place for me to be on of actually, I'm not that into the functional programming as the core way that I build my applications. But I do like static typing. And I feel like functional programming and static typing actually go together incredibly well. And functional programming and, more imperative, whatever it is that I'm doing with my day-to-day life these days is a more interesting fit. But it is interesting to me to observe that sort of combination of opinions where I really like static typing, and having a compiler, and something that can tell me about my program before I get to runtime. But also saying that I don't quite want the functional programming thing, or at least not as the entire way that I modeled my application because I found it a bit difficult to work with. Because I think static typing or compilers and functional programming go really well together. But I think generally, what I'm finding is a more middle ground dynamic optimization of a bunch of different things. And the answer is like, well, it depends which I guess if you've listened to the show before, you'll have heard those words said, so I guess it makes sense. STEPH: Yeah. All of that makes sense to me. And I can see why you might have a favor for types or why that feels more valuable initially because that is giving us so much feedback right off the bat versus following a more functional paradigm is something that could feel like more of a force fit and doesn't provide that same immediate feedback. But it has a longer-term or a longer cycle of that reward system. So I can see why you might favor one over the other or why I myself would favor one over the other. CHRIS: How do you feel about types? STEPH: I'm a big fan, although I say that, but I work in Ruby. [laughs] I don't have them. But when I have worked with types, I very much enjoyed it because it makes me think more about the design of my code in a way that I don't as much with Ruby. And working with types has heavy influence than when I am working in Ruby and thinking about the design of my code. So I think working with types is a wonderful thing that, frankly, all of us should do as developers at some point because it is so influential. So I'm for types, but I'm not using types in my day-to-day. Another thing that I have changed my mind about is how we structure the work that each person is doing. So I used to be more in the camp of everybody can work on their own very complicated piece of codebase, their own complicated feature. We can have a bunch of complicated things in the sprint, and everything will just be great; it'll be fine. And we'll get a bunch of work done, and we'll ship it. And then we're an even more productive team. And I very much disagree with that now where I have found where everybody is working in their own silo on a complicated feature has slowed down the progress of then being able to ship that feature. Because we often want to collaborate with someone, we need to collaborate with someone. Then the PR review process is tough if I really have no idea what you're working on, and I don't have a context that then when I look at your code, not only am I evaluating at the code level, but then I'm also trying to understand the feature and gain all of that context. And that's a heavy cost for me to have to pay to then pick all of that up and then for you to have to reintroduce me to what's happening. Or I might make the bigger mistake, and I may look at your code and just evaluate it from the code perspective but not really understand the feature, the value that's being delivered. And that doesn't feel useful. And I have a recent example where that happened where someone was working on a very complicated feature that I didn't have any insight into. So then, when I was looking at the PR, it was easier for me to just look at the code and get feedback on that. But then it was probably a day or two later. It wasn't until then that I finally started asking, what are we building? Like, what purpose is this serving? And that opened up a much larger discussion where we realized what was being built didn't actually really deliver what we needed to deliver. So I no longer agree with the idea that everybody should be working on their own complicated features independently, and there should be some collaboration. And, you know, it's the buddy system; we all need a buddy. CHRIS: Well, I like that one. I feel like I've shared similar ideas where it made sense. It was just the efficient thing to do, to split the work up and have everybody very independent. I also feel like earlier on in my career; I was more scared of Git conflicts and things like that or people interacting with the same parts of the code. And so in my mind, it made sense to really strongly separate like, oh, you shouldn't even be touching the controller for this. I'll handle the views, and you handle the controller; it'll be separate. And I care less about that now. And I think what you're saying of like, it's actually better if we have some shared context, and we understand what we're working on, and it's more of a collaborative process. Yeah, I like that one. I think I followed a similar arc, and I'm at a similar place now as well. Interestingly, to go into another one of mine that I think you'll probably be most surprised by on my list is I think I used to believe in 10x engineers. I used to believe in the idea of that one developer just off in the corner fueled entirely by Mountain Dew that would just produce the perfect code. They would just solve it. Over the weekend, they would write the entire billing system, and it would be great. And I think it was predicated on the idea that the coding is the hard part, which I no longer believe. I think coding at its core is communication. It's taking this thing that we want to be true in the world and then communicating it to a computer but also ideally communicating it to our teammates, and to future versions of ourselves, such that we can revisit that code, we can maintain it over time, other people can add to or augment it. And so the idea of this loner that can just do incredible volumes of work and have that be a good outcome that just doesn't make sense to me anymore. I've worked with incredibly talented developers, to be clear, folks that I was sort of in awe of. I've worked with people who have, I think, just truly photographic memories. They seem to remember every single bug that they've ever had and exactly where they can look it up. Or from the top of their head, they can just intuitively know, oh, this bug means this. Go look at this line of code. I'm like, how did you do that? How did you do that magic trick? And they're incredibly capable developers. But at the end of the day, the folks that I see being most impactful on a team are the folks that are able to communicate and collaborate most effectively and make the whole team more effective. STEPH: Maybe it's the Mountain Dew; maybe that's actually the secret sauce here. That's what I'm missing from my life to take me into that status. CHRIS: I'm now imagining Mountain Dew but in a more viscous form, like a barbecue sauce, but it's Mountain Dew flavored. That's the secret sauce because it's a very…anyway, moving on. [laughs] STEPH: It's a terrible product. We should make it and sell it. [laughter] CHRIS: Career pivot, we now sell Mountain Dew sauce. STEPH: [laughs] CHRIS: But yeah, I do not believe in 10x engineers anymore. If anything, I believe that that is a huge warning sign if you have anyone that's behaving in something close to that space. STEPH: Yeah, I'm super interested in that you've shared because I don't think...We've talked about 10xers, but we haven't talked about the fact that you used to think that they were more of a thing and that they existed. And now it's all I'm sorry, but it's all crap. [chuckles] That's super interesting to me. Do you remember what changed your mind? Do you remember that pivotal moment of where you were like, oh, maybe this is all bullshit? CHRIS: I think it was just an amalgamation of experience over time. I've encountered people who fit the archetype. But if anything, I would say they're deeply problematic in teams. They're that individual who refuses to collaborate, who just goes off and heads down, writes a bunch of code, but then it doesn't integrate with the other pieces, or no one else knows how to use it, or they won't let anyone contribute to it. And yeah, I've seen that just be very, very problematic. So the folks that most fit, I think the imagined version of this, actually end up, in my experience, leading things astray. And the folks that are actually most productive and really cause teams to improve in a drastic way behave very differently. They're much more collaborative; they're much more engaged with the team. It's less about their individual contributions and it's more about building a system together, collaborating, communicating, engaging external stakeholders, et cetera, et cetera. It's all that stuff that matters. And so, it's very much in contrast to what the 10x engineer ethos is about. But there's no one day where suddenly this idea that I had in my head crumbled when I saw that behind the pile of Mountain Dew cans, there was nothing there. [laughs] STEPH: It's all a mirage. [laughs] I do like what you just said around that there are very impressive people out there. And those impressive people often focus less on their individual contributions and more at a higher level around communication. And then they are the powerhouses that then is helping facilitate everybody else be their best and have high levels of individual contribution. Those are the ones that...I'm still not going to endorse a 10xer, but they are the ones who, to me, embody the idea of someone that is incredibly efficient and really good at their job. CHRIS: There's an adage that comes to mind here that "If you want to go fast, go alone. If you want to go far, go together." And that does ring true to me. I think an individual can have their individual productivity be higher if they're working entirely on their own, if they understand every line of code because they wrote every single line of code if they know where every feature of the platform is integrated because they wrote the whole thing. But they're going to be fundamentally limited. And in order to do bigger, more complex things, fundamentally, we have to work as a team. And then the way you have to interact just fundamentally changes. So I think it started from that, like, one person on their own I think can be individually more effective. But the minute you start to have a team, that one person acting on their own is actually dragging the team down because other people can't then work in that space, and that's a problem. STEPH: I really like that adage that you just shared where, "If you want to go fast, go alone. If you want to go far, go together." And that touches on something else that I have really changed my mind about, and that's representation. And this is more specific to me. So when I joined engineering and became a web developer, and I joined a team, and I was the only female engineer on that team, my initial feelings were I am the only female engineer, and that is fine. We're all just a group of engineers. We're here to solve problems together. It really doesn't matter if there's anyone here on this team that's like me. It's fine if there's no one that I can see myself in that's in leadership because we're all just people, is what I was coming down to. And I've completely changed my mind and realized that that's not true. And I've experienced this where I've worked on other engineering teams with female engineers, and it's fucking awesome, and it does make a difference. And then when I can see someone that I can see myself in, in a leadership position, that is also inspiring. So that is something that I went in where I think it was more of I was trying to shield myself from the idea that I am different from everybody else in this room, and that could be a problem. And instead, I just tried to neutralize it by saying it's not. But I think representation is incredibly important. People are not just people. We all have very important social and racial, and cultural identities. And it's very important that we get to feel that we can express all of those identities and see people that represent those identities in spaces where we would like to go. That's a big one that I've changed my mind on. CHRIS: Yeah, I certainly agree that representation certainly matters, and being able to bring your full authentic self to work and seeing others around you that reflect that. And frankly, having teams that are made up of people that represent the users of the software that we're building feels so critically important. And it's very interesting to hear about the arc that you've had on that where initially, you tried to downplay it, but then you found a little more truth in it. And so yeah, thank you for sharing. STEPH: You're welcome. It feels good to say that, too, because that's something that I've admitted and realized on my own, that that is something that has changed and shifted. But it's nice to be able to share that here with you as we're going through the things that we've changed our mind about. What else is on your list? CHRIS: Well, to round us off with one more very technical version because, of course, that's where I'm going to take us after a much deeper and more nuanced topic that you led us on, single-page applications. Broadly, I'm opposed to the name; that's a side conversation. But, man, URLs matter on the internet. So don't call them single-page applications, but client-side applications or whatever. Broadly, the idea of a bundle of JavaScript, and so you send down an empty HTML document, and then you reference a bundle of JavaScript, which that thing boots up and it then makes a bunch of API requests to the backend, and then it starts to fill in the page. I was convinced for a while that this is a reasonable and perhaps even necessary way to build software. We need APIs for our mobile apps anyway. So if we're doing that, then let's have that be the consistent way that we are accessing information. This is going to be fine; it's not a problem. And then eventually, we found some problems. So then we got GraphQL, and we tried to solve it that way. But overall…and I have spent a lot of time trying to make this thing work, trying to find a version of this that I'm happy with that I find the end outcome of the software to be as pleasant to work with from an end-user perspective as a server-driven application, and I can't find it. And so, to be clear, I'm still doing client-rendered applications these days. But Inertia.js is the framework that I've leaned into that helps me bridge that gap. And the idea that the server owns routing, that the server owns statefulness, things like that, not having to think about client-side routing, not having to think about client-side state management, being able to use traditional auth mechanisms built into cookies, all of these familiar things that we've had. Leveraging the fact that the server is the more privileged in terms of the information it has access to, the more secure, the more powerful environment, all of these things feel right to me. And the nature of the application that I can build just feels more robust, more consistent, easier to evolve. There were a lot of promises that I heard when we started building applications in these ways. And I just haven't seen an example or have not worked on an example, at least of an application that is built as a client-side bundle that boots up and does some stuff and had a good experience with that. So Inertia, as an aside, is my answer to this. And I continue to be extremely happy with that as a solution, as really a middle-ground solution. Because going all the way back to true HTML server-side rendering is limiting in other ways that I didn't like. But I find that Inertia really strikes an ideal balance in the middle there. STEPH: I feel like I completely agree with everything you're saying. But I also feel like I have a developer secret to share where I really haven't worked on single-page applications, and I am okay with that. [laughs] CHRIS: It's fine, skip it. Just go straight to Inertia. It's better. STEPH: Cool, cool, cool. I am working on leveling up React, and then the plan is to go to Svelte and Inertia. So I'll just completely...I'll skip that. I'll skip that part of my career. CHRIS: I actually want to back up just a little bit as I'm saying this because I really try to avoid being in a more negative space. And I think this space, this architecture for building applications, is complex, and there are things that will warrant it. So things like Google Maps, it makes sense to have a lot of Dynamic JavaScript and to be doing complex things on the client-side. Trello is another example of an application that that as a server-rendered thing, doesn't really make sense. And frankly, using a tool like Inertia wouldn't quite work there. That said, that is, in my mind, truly a single page within the broader application. So the Trello board page is a very, very complex stateful application, and I think modeling it as such makes sense. Google Maps, similar. But there's still the profile page, and the login page, and all of these other things. I think routing is probably where it breaks down for me. I think client-side routing is the thing that I feel the most pain on. Because at the end of the day, the server still needs to know the answer. And if we do client-side routing, we end up with this duplication of logic across the client and the server-side. We end up with disagreements from time to time. We end up with the weird flashes of half-rendered layout, and then we go to the login page because we get an API response that is different. And so, I think that is probably the kernel of the thing that I struggle with. And, of course, it is possible to build great things using any of these technologies. But I think my summary is I've really tried on that front, and I've just not been able to make the fidelity of application that I want using…primarily; I'd say it's client-side routing is the thing that I struggle with the most. STEPH: Yeah, it sounds like you're saying there are very valid use cases for using a single-page app or following that structure. But we haven't really gotten there in terms of our web development expertise, where we've made that easier to maintain and easier to implement. And there's still enough pain points around it that even though it seems like a very valid idea and approach, it still feels painful enough that you actively avoid it until it feels like something that you have to then invest in at that point to then really deliver the user experience that you want to provide. CHRIS: Yeah, I think that's an accurate summary. And I think adding on to that, I'm noticing it becoming more and more of the standard approach; this is the way we build applications, and I don't agree with that. That is probably the thing that is the kernel of what I don't believe in. I think actually server rendering is a great way to start, and then you can slowly augment or move more things into complex client-side behavior. But starting with this as the mode that we're building our applications just feels like a less stable foundation than I would want. So it's perhaps an architecture that you want to evolve to at some point as the complexity necessitates it, but I definitely wouldn't be starting there. Similar to service-oriented architecture, not going to start there. Client-side routing, I'm not going to start there. STEPH: Ooph. I feel like I've been holding my breath this episode. I feel like this was a very interesting topic that has been challenging to reflect on what we believe and what we've changed our mind about. CHRIS: I think it's perhaps more nuanced than a lot of our episodes where often we're saying this is what we did, and this is how we felt in the moment. And that can be very experiential and true. But this, yeah, we had to draw the line in the sand and say what do we believe? I similarly definitely feel more tension in this episode than other ones. But hopefully, it was useful. Hopefully, folks found some value in the things, and hearing our story, also, the idea that we have singular formed opinions. Hopefully, this episode has broken that idea in anyone's head. And we're all on a journey. STEPH: I really like how this has prompted me to reflect on the things that I used to hold dear and really cherish or follow strictly to then reflect on what are things that I used to believe versus what I believe now? Because that transition often happens so seamlessly for me that I don't really stop to think about it to be like, oh, something just happened that is really changing how I approach things, how I build, how I work with teams. And I really like this reflection point to be like, oh, what did I used to believe, and what's different today? I'd like to keep this practice going and just try to track the things...I'll have to make a list of all the things I believe. That seems like an easy list. [laughs] CHRIS: Just the easiest list to write. STEPH: The easiest list to write. And then I'll just check in with it every so often, scratch stuff out, or update it with the things that have changed my mind about. This is the good idea, terrible idea where you go, "Stephanie, that's a terrible idea." [laughs] CHRIS: I don't know, write it down on a list, and then look at it in six months and see if it sounds like a good idea, and then we'll be able to close the loop on the whole thing. But with that, should we wrap up? STEPH: Let's wrap up. I've got a list to write. CHRIS: The show notes for this episode can be found at bikeshed.fm. STEPH: This show is produced and edited by Mandy Moore. CHRIS: If you enjoyed listening, one really easy way to support the show is to leave us a quick rating or even a review on iTunes, as it really helps other folks find the show. STEPH: If you have any feedback for this or any of our other episodes, you can reach us @bikeshedor reach me on Twitter @SViccari. CHRIS: And I'm @christoomey. STEPH: Or you can reach us at hosts@bikeshed.fm via email. CHRIS: Thanks so much for listening to The Bike Shed, and we'll see you next week. All: Byeeeeeeee! Announcer: This podcast was brought to you by thoughtbot. thoughtbot is your expert design and development partner. Let's make your product and team a success.

Last Day on Earth
Episode 23 - Protector of Stretford

Last Day on Earth

Play Episode Listen Later Jun 8, 2021 60:22


This week Rochelle takes on the Mandela Effect and quizzes Adrian on very common misconceptions, which of course, leads to him calling people out. We're also joined by the actual grown up baby from the Teletubbies, the most hated man in Rochdale, Stephen Hanson. Together we discuss go to songs, we hold live auditions for the casting of Bane in an upcoming Batman reboot and debate the lessons we learned from boardgames to help us survive our last day on earth. Support this show http://supporter.acast.com/lastdaypod. See acast.com/privacy for privacy and opt-out information.

TalkPOPc's Podcast
Episode 40: Stephen Hanson: Galleries, Museums, and Embodied Experience

TalkPOPc's Podcast

Play Episode Listen Later Dec 20, 2020 25:28


Stephen, who worked until recently at David Zwirner Gallery, discusses the differences in the audience experiences in a gallery as opposed to a museum, arguing that museums give people a greater diversity of experiences. RP Flores asks the fundamental question: why should people go to museums? Stephen points out that they are re-designing themselves and that there is a thought-shift in museums about what to give audiences, but there is the fact that when you see something in front of you on the wall it is a different sensory experience than when you see it online. They both agree that the notion of Art as Cognition requires an embodied experience. But, as RP Flores points out, perhaps in the future it might shift how we engage in art, and perhaps people might want less information. Stephen points out that even now, with VR tours, that already cuts down on information and also cuts out certain demographics. Support the show (https://www.patreon.com/talkpopc)

art vr museums embodied cognition galleries stephen hanson david zwirner gallery
Hope Centre Podcast
Apostolic Prayers and Prophetic Promises

Hope Centre Podcast

Play Episode Listen Later Oct 20, 2019 55:48


This morning Stephen Hanson challenged listeners to trust the Lordship of Jesus no matter what, then moved into his main message of prayers and promises in the New Testament.

Hope Centre Podcast
Update on Hope Centre

Hope Centre Podcast

Play Episode Listen Later Sep 29, 2019 37:24


This morning Kristen Williams and Stephen Hanson shared that Hope Centre is going through some stresses but that God will prove Himself faithful.

Tribulation-Now
Coming Turmoil and Prophetic Guidance from brother Stephen Hanson

Tribulation-Now

Play Episode Listen Later May 22, 2019 181:00


Coming Turmoil and Prophetic Guidance from brother Stephen Hanson Join Johnny Baptist while he discusses the empirical events across the world leading up to World War III, the trickery and deceit of the New World Order, and the bizarre weirdness of the fallen angelic UFO phenomenon as we plunge head first into the forthcoming apocalypse and the Seven Seals of Revelation (chapter 6). Join us tonight for a visit from brother Stephen Hanson, who has had a prophetic ministry since the early 90's.  As of late the Lord has place powerful words of warning and edification upon his heart. God Bless You - See you there! To sign up for radio show Email Notifications click Mail Link: http://gem.godaddy.com/signups/185380/join

Russia and Eurasia - Audio
Of Putinism and Codes – Russian Roulette Episode 64

Russia and Eurasia - Audio

Play Episode Listen Later Aug 28, 2018 37:44


In this episode, Olga and Jeff sit down with Brian Taylor to talk about his new book, The Code of Putinism. Brian is a professor of political science at the Maxwell School of Citizenship and Public Affairs at Syracuse University and his book provides a framework for thinking about Russian domestic and foreign policy. This podcast is a companion to the book launch CSIS hosted for The Code of Putinism, so we strongly recommend you check out both. The book launch discussion, which also featured Stephen Hanson, Vice Provost for International Affairs at William and Marry College, is available here: https://www.csis.org/events/code-putinism-book-launch-event You can view Brian’s bio and other publications, here: https://www.maxwell.syr.edu/psc/Taylor,_Brian/ If you would like to purchase The Code of Putinism, it is available in many fine bookstores. If you prefer your books delivered to your door, Olya asks that you consider an independent seller: https://www.indiebound.org/book/9780190867324 As always, keep sending us mailbag questions! If you would like to have your question answered on the podcast, send it to us! Email rep@csis.org and put “Russian Roulette” in the subject line. And, if you have one, include your Twitter handle, so we can notify you publicly when we answer your question (or, if you don’t want us to, tell us that). We look forward to hearing from you.  

Russian Roulette
Of Putinism and Codes – Russian Roulette Episode 64

Russian Roulette

Play Episode Listen Later Aug 28, 2018 37:44


In this episode, Olga and Jeff sit down with Brian Taylor to talk about his new book, The Code of Putinism. Brian is a professor of political science at the Maxwell School of Citizenship and Public Affairs at Syracuse University and his book provides a framework for thinking about Russian domestic and foreign policy. This podcast is a companion to the book launch CSIS hosted for The Code of Putinism, so we strongly recommend you check out both. The book launch discussion, which also featured Stephen Hanson, Vice Provost for International Affairs at William and Marry College, is available here: https://www.csis.org/events/code-putinism-book-launch-event You can view Brian’s bio and other publications, here: https://www.maxwell.syr.edu/psc/Taylor,_Brian/ If you would like to purchase The Code of Putinism, it is available in many fine bookstores. If you prefer your books delivered to your door, Olya asks that you consider an independent seller: https://www.indiebound.org/book/9780190867324 As always, keep sending us mailbag questions! If you would like to have your question answered on the podcast, send it to us! Email rep@csis.org and put “Russian Roulette” in the subject line. And, if you have one, include your Twitter handle, so we can notify you publicly when we answer your question (or, if you don’t want us to, tell us that). We look forward to hearing from you.  

OTCQB Podcast
International Frontier Resources Corp.

OTCQB Podcast

Play Episode Listen Later Jun 1, 2017 4:40


Stephen Hanson, CEO and President of International Frontier Resources Corp. (OTCQB: IFRTF) explains the benefits of IFR being one of the first foreign companies to partner with the Mexico government to develop petroleum and natural gas assets.

Citizens Climate Radio
Ep 11 Dr Hugh Sealy Engineering Climate Solutions

Citizens Climate Radio

Play Episode Listen Later Apr 23, 2017 30:00


How do some people land on a path that leads them to climate action? Host, Peterson Toscano explores this question by featuring two passionate climate advocactes. Dr. Hugh Sealy, is an environmental engineer in the Caribbean. He has influenced environmental policy in Barbados, Grenda, St. Lucia, and Dominica. In addition to his work in helping low-lying island nations in a time of climate change, Dr. Sealy also served as a member of the Clean Development Mechanism or CDM for the UN Framework on Climate Change. He shares some of his story, discusses the CDM carbon pricing. Adia Samba-Quee, is just begining her career as a climate advocate. A 14 year old student in Springfield, MA, Adia makes connection between local pollution, asthma, and climate action. She hopes to use comedy to engage people in deeper conversations about climate. Art House We travel back to the future to hear from climate historian, Dr. Timothy Meadows. He broadcasts from the year 2176 to look back to our time. In this segment he highlights the incredible acheivements of three engineers known as The Three Beans. Starting around 2028 they made their mark as creative and skilled designers of major adaptation projects. They also operated with style and playfulness. The Three Beans stirred up hope in a difficult time. They became three of the biggest celebrities of the mid-21st Century. Hear from an eye-witness from the future and also discover what they are advertizing 150 years from now. Puzzler Last month Peterson asked listeners, In addition to the welcome of animal species and future generations, why are you passionate about climate change/ We hear from listener, Dr. Stephen Hanson who talks about climate change and health. Dave Barbier, the Sustainability coordinator for University of Wisconsin in Stevens Point, connects climate action with national security. New Puzzler Question You are talking to someone named Barbara. You helped her see that climate change is a serious issue that needs her attention. Barbara then asks you, What should I do next? This is the question climate communicators long to hear. So what do you say when someone wants to know more about climate change? What are resources you recommend that help people better undertstand the issues and how we can respond? Tell me about books, websites, video series, podcasts, and more. Send Peterson your answers. Leave your name, contact info, and where you are from. Get back to him by May, 15, 2017. You can email your answers to radio@citizensclimate.org or leave a voicemail of 3 minutes or less at 570.483.8194. (+1 if calling from outside the USA.) You can hear Citizens’ Climate Radio on iTunes, Stitcher Radio, Podbean, and now on Northern Spirit Radio. Also, feel free to connect with other listeners, suggest program ideas, and respond to programs in the Citizens’ Climate Radio Facebook group or on Twitter at @CitizensCRadio.

Animals Today Radio
Animals Today December 12, 2015: NIH retires Chimps. Vertebral disc disease in dogs. How well do dogs really smell? Helping animals without going crazy. California hotel supports military dogs.

Animals Today Radio

Play Episode Listen Later Dec 13, 2015 53:50


First on the show is Dr. John Pippin, Director of Academic affairs, Physicians Committee for Responsible Medicine, PCRM. We discuss the news that the NIH is at long last going to retire its chimpanzees warehoused for medical research. Sadly, this day could have occurred decades ago. Stephen Hanson, DVM, then joins Lori to discuss veterinary […]

New Philadelphia 2010
Messengers of the Light

New Philadelphia 2010

Play Episode Listen Later Jun 18, 2010 61:00


June 18, 2010, 11:30pm All Night Prayer Meeting Speaker: Stephen Hanson Duration: 01:01:00 New Philadelphia Church http://newphiladelphiachurch.com

Food by Thorn
Taking the Bull by the Horns

Food by Thorn

Play Episode Listen Later Jan 3, 2007 4:39


Taking the Bull by the Horns: To procure great beef, restaurateurs go straight to the source. Nation's Restaurant News food editor Bret Thorn, examines the extremes that chef David Burke and restaurateur Stephen Hanson go to for their steaks

bull horns david burke stephen hanson nation's restaurant news