
29 segments available
Twitch https://twitch.tv/ThePrimeagen Discord https://discord.gg/ThePrimeagen ☕ ssh terminal.shop 📘 Carson’s book: https://hypermedia.systems 🧠 Grug Brained Dev: https://grugbrain.dev Timestamps: 0:00 Intro & chaos before the call 1:45 Meet Carson Gross (HTMX creator & professor) 3:29 What is "Coding Dirty"? 5:12 Why Carson hates small methods 7:24 The myth of clean code and method size 10:06 What the data actually says about long functions 13:11 Why abstraction is not free 15:06 Long vs short functions: maintainability & changeability 18:00 Why small functions make debugging harder 21:34 Beautiful at any size: the case for fat functions 24:19 The myth of good naming solving complexity 26:55 TDD, unit tests, and when they help vs hurt 35:39 End-to-end testing: the good, the bad, the bloated 43:23 Meme culture, cringe, and developer humor 🎙️ Standup Ep. 9: Breaking Clean Code | The Case for Big Functions, Fewer Tests & Cringe Memes In this episode of The Standup, the team is joined by a professor, framework author, and meme artisan to challenge everything you think you know about writing good code. From clean code myths to giant functions, unit testing philosophy, and the value of being strategically cringe, this one is pure gold. 📘 Bonus: Hear about the book Hypermedia Systems, writing with HTMX, and how software was meant to be written. 💬 If you've ever wondered why your code feels overcomplicated or why your test suite is a nightmare, this conversation is for you. 📩 Want to sponsor the show? Reach out: the.primeagen@gmail.com 🎥 Produced by Terminal Media #cleancode #HTMX #CodingPhilosophy #SoftwareDevelopment #WebDev #UnitTesting #BigFunctions #CodingMemes #SoftwareEngineering #DevelopersDevelopersDevelopers #TechPodcast #TheStandup
The episode kicks off with a light-hearted introduction filled with banter among the hosts. They discuss their current work challenges, including QA issues and student grading, setting a casual tone for the conversation. This segment highlights the camaraderie and informal atmosphere of the podcast, making it relatable for listeners.
"Okay. So, I don't really know how to introduce today's standup, but TJ, are we are we recording? Oh, we're recording. We've been recording. Oh, we're recording. Okay. Uh, my wife is calling me. Of cou..."
Carson Gross, the creator of HTMX and a professor at Montana State University, is introduced. He shares his background in programming and teaching, emphasizing his unique approach to web frameworks. This segment establishes Carson's credibility and sets the stage for the discussion on coding philosophies.
"just all configuration for my new Arch install. So, like I'm unblocked committing so much configuration. You're still sharpening the axe. I see. Sharpening the axe. You have no idea how sharp this axe..."
Carson explains the concept of 'coding dirty,' a philosophy that challenges traditional clean code principles. He reflects on his experiences with clean code advocates and introduces his essay that critiques the conventional wisdom surrounding coding practices. This segment lays the groundwork for a deeper exploration of coding methodologies.
"why don't you give us a quick introduction of what coding dirty is and and then maybe your kind of stance on why people should consider coding this way. Um, well, I you know, I have to say like so tha..."
In this segment, Carson discusses his disdain for small methods and the prevailing clean code ideology. He argues that the emphasis on small methods lacks empirical support and often leads to over-engineered solutions. This segment challenges listeners to reconsider their assumptions about coding practices.
"like I've had a pretty successful programming career and I do things pretty differently uh than the clean code uh suggests. Um and so like the three things that I really focus on in the essay is numbe..."
Carson presents data suggesting that longer functions may actually lead to higher quality code. He references studies that contradict the clean code mantra, arguing that larger methods can reduce bugs per line of code. This segment provides a data-driven perspective on function size and its implications for software quality.
"We won't take it offline. We're going to leave it in the standup. But we're going to keep it online. Yes. Keep it online. That's the name of the game for us for sure. Yeah. So I I would say that uh th..."
The discussion shifts to the costs of abstraction in coding. Carson emphasizes that while abstraction can be beneficial, it often comes with trade-offs that are not adequately addressed in clean code discussions. This segment encourages developers to critically evaluate the use of abstraction in their projects.
"the paper. Never throw a paper at an academic. They think they're not going to read it. And I went and read the paper and it was like okay first of all this the the paper here this paper says that met..."
Carson explores the balance between maintainability and changeability in coding practices. He argues that smaller functions can complicate debugging and maintenance, advocating for a more nuanced approach to function size. This segment highlights the complexities of software development and the need for thoughtful coding strategies.
"true too. I'm sorry I'm hot. I got to get out of the stupid robe. That's all right. I'll I'll solo ro it. It's all right. I can't take mine off. Um the other thing this one it's okay. No it's all righ..."
In a bold stance, Carson makes the case for 'fat functions'—larger methods that encapsulate more logic. He argues that these functions can enhance readability and debugging efficiency, challenging the conventional wisdom that promotes smaller, more fragmented code. This segment invites listeners to rethink their coding practices.
"most important thing for architecture long-term is how is it going to handle the fact that we have to change some things, right? Um short-term architecture, you know, is about does this thing work wel..."
Carson discusses how small functions can complicate debugging processes. He explains that having too many small methods can obscure the flow of logic, making it harder for developers to trace issues. This segment underscores the importance of considering function size in the context of debugging and code clarity.
""Okay, which one are we looking at? We're looking at this one." And you just do this progressive nail like drill down. And by the time you've hopped across two or three or four functions, I start to f..."
The conversation turns to the myth that good naming conventions can solve all complexity issues in code. Carson argues that while naming is important, it does not replace the need for thoughtful structure and design in coding. This segment challenges the notion that naming alone can simplify complex codebases.
"literally where I'm at on functions. I would point out one more thing because you brought up abstraction. So I feel like there is a uh in the in the didactic or in the in the pedagogical versions of t..."
Carson shares his views on Test-Driven Development (TDD) and unit testing, discussing when these practices can be beneficial or detrimental. He emphasizes the need for a balanced approach to testing, suggesting that not all projects benefit from rigorous unit testing. This segment provides valuable insights into testing philosophies.
"he's actually in a hot tub right now. I can't tell what's happening. I'm just absorbing all this great info. The thing that I was going to say about too sometimes when you split and I think you kind o..."
The discussion shifts to end-to-end testing, where Carson evaluates its advantages and pitfalls. He highlights the potential for bloated test suites and the importance of strategic testing practices. This segment offers a critical look at testing methodologies in software development.
"for that is that I really like any form of testing that I can drive a feature that I find too complicated to write once. Meaning that if you just ask me to like sum a list of elements, I'm not going t..."
In a lighter turn, the hosts delve into meme culture and its role in the developer community. Carson shares his thoughts on the intersection of humor and coding, discussing how memes can foster camaraderie among developers. This segment adds a fun and relatable element to the technical discussion.
"our end to end test suite got too big. And uh the Grug Brain essay there's a section on testing and I mentioned that like don't over you need to have you need to have an end to end test suite but that..."
In a light-hearted moment, Carson is introduced as a 'meme master.' The conversation shifts to his experiences with memes and humor in the developer community, showcasing his creative side and the cultural aspects of programming. This segment adds a personal touch to the discussion, illustrating the intersection of coding and humor.
"things that do not that you do not know about. Yeah. Things you things you that are that are too subtle for you to have thought of, you may just well not catch in in a test because you didn't think to..."
Carson discusses his book, 'Hypermedia Systems,' which aims to educate younger web developers about the fundamentals of the web and hypermedia. He outlines the book's structure and its relevance in today's development landscape, emphasizing the importance of understanding the web's design principles for effective software development.
"What's this book? Let's let's do a quick little uh for that actually. So Carson, tell us about this book. I'm interested now. I didn't know about it. Um so Hypermedia system, you can go to hypermedia...."
Carson shares insights on the intended audience for his book on hypermedia, targeting younger web developers who may lack a historical context of web design. He reflects on how older developers appreciate the nostalgia of the content, while younger ones are often entrenched in modern frameworks like React. This segment is crucial for understanding the generational divide in web development knowledge.
"boils down to what is called the uniform interface of the web. Um and so you can read the book and or there's some essays too about it. So all right, I'd say it's like I I read it uh it's 2025. What C..."
In this segment, Carson expresses his excitement about HTMX as a tool that allows developers to avoid excessive JavaScript while still creating dynamic web applications. He discusses the benefits of using HTMX with various backend languages, emphasizing improved user experience by avoiding full page reloads. This is essential for developers looking to enhance their web development practices.
"could still have a website that didn't reload the whole page anytime you wanted to do something which is like terrible UX and it's sad that browsers haven't found a way to give people that tool separa..."
The conversation takes a humorous turn as the hosts discuss a cringe-worthy recruitment memo from Microsoft aimed at interns. They analyze the tone and content of the memo, which includes informal language and emojis, reflecting the company's attempt to appeal to a younger audience. This segment highlights the cultural shifts in tech company recruitment strategies.
"five friends. So, I felt like it was a good time to talk about a personal experience that I had. Please tell me it's bird sex bird sex spiral. Sadly, you know, I wish that it was. I wish that it was, ..."
The hosts delve into the details of the Microsoft recruitment memo, which invites interns to a party with casual language and emojis. They discuss the implications of such communication styles in professional settings and how it reflects the company's efforts to remain relevant. This segment is significant for understanding modern corporate culture and recruitment tactics.
"right? So, back in the day, and this is maybe five or six years ago, I think, right? Back in the day, for some unknown reason, probably driven by this situation I was just talking about, uh, they, one..."
The discussion shifts to the creation of memes based on the Microsoft memo, with one host sharing their attempt to create a humorous image featuring the CEO. They explore the challenges of meme creation and the unpredictability of social media engagement. This segment is valuable for those interested in the intersection of tech culture and humor.
"actually know a guy named Kim. So, you know, I don't know exactly uh who the who the uh uh the u recruiter was. says, "Hi, I am Kim, a Microsoft University recruiter. My crew is coming down from our H..."
The hosts analyze why certain memes succeed while others fail, discussing the importance of timing and context in social media. They share personal experiences with meme creation and the frustration of low engagement despite high effort. This segment provides insights into the dynamics of online humor and audience interaction.
"Okay, so you got Do you have the idea now? Do you see what I'm talking about? I Let's throw this party, dude. Let's throw this party. I think we should throw this party. Not only should we do this par..."
The conversation emphasizes the importance of embracing cringe in meme culture, with hosts sharing their experiences of creating memes that didn't resonate. They discuss the need for persistence in meme creation and the acceptance of failure as part of the creative process. This segment is essential for understanding the evolving nature of online humor.
"Bill Gates. Bill G secretly. Yeah. Where open? Where's the metadata on this email? Did it is there like an eventually from Bill G? Yeah, we need a Freedom of Information Act situation here. Should I s..."
In this segment, the hosts brainstorm ways to improve a meme based on the Microsoft memo, discussing elements like image quality and context. They explore the idea of layering text over images to enhance relatability and engagement. This is a practical discussion for anyone interested in meme creation and social media strategy.
"that not become a meme? So, what I did, and this is obviously in the era before AI image generation. So, I'm loading up, you know, an image editing package, and I go and I find a picture of Sacha Nade..."
The hosts reflect on the timing of meme posting and its impact on engagement. They share strategies for maximizing visibility and interaction on social media, emphasizing the need for spontaneity in meme creation. This segment is crucial for understanding how timing influences the success of online content.
"Right. I photoshop those two together. I I even I like comp the lighting right. I work in computer graphics so I'm like so I comp the lighting. I try to get the shadowing right. I I get this big old s..."
The discussion continues on the importance of context in meme creation, with hosts suggesting that memes often gain traction when they are tied to current events or relatable experiences. They emphasize the need to adapt content to fit the audience's expectations. This segment is key for anyone looking to enhance their meme-making skills.
"it up. The Yeah, I think you maybe overcooked it a little bit. That's what I was thinking, too. I was like, did I go too too far? The image is too You need to jpegify it a little bit more. That's actu..."
The hosts conclude with a discussion on the necessity of persistence in meme creation, sharing anecdotes about their own experiences with failed memes. They encourage each other to keep experimenting and not to be discouraged by low engagement. This segment serves as a motivational reminder for creators in the digital space.
"already seen the meme before they hear it in the stand. Now, that would be cool. All right. So, I do I do want to I do want to throw this out here. I think something else is that this meme I personall..."
The discussion shifts to the idea that the medium influences the message, referencing Marshall McLuhan's famous quote. The hosts reflect on how memes created from genuine emotion or spontaneity often resonate better than those that are overly planned. They emphasize the importance of playing to the audience and having fun with content creation.
"shooting. There is something to be said though that every I'd say like every 10 minutes you spend on a meme, I do think it's it it goes down in its quality. There's something about that like because t..."
The hosts explore the comedic value of cringe, drawing parallels to popular shows like 'The Office' and discussing how discomfort can lead to humor. They highlight the shared human experience behind cringe-worthy moments and the importance of solidarity among those who create cringy content. This segment underscores the idea that embracing cringe can lead to genuine connections and laughter.
"things as well. It's why your tweets probably not going to change anybody's mind about anything. So, play to your audience and have fun instead. Real life advice. Sorry, I forgot. TJ, that was really ..."
As the episode wraps up, the hosts reflect on the themes discussed throughout the show, including clean code and the creative process. They mention the significance of Carson's book and the importance of understanding different coding philosophies. The conversation concludes with a light-hearted note about the potential for future collaborations and the ongoing journey of learning in software development.
"even does that mean? No one knows what that mean. I sent it I sent it in studio. I accidentally streamed on Twitch once for like 30 seconds. There you go. I was just like accidentally stream on Twitch..."