Maintainable

  • Autor: Vários
  • Narrador: Vários
  • Editor: Podcast
  • Duración: 161:30:58
  • Mas informaciones

Informações:

Sinopsis

Feel like you’re hitting a wall with your existing software projects? You're not alone. On Maintainable, we speak with seasoned practitioners who have worked past the problems often associated with technical debt and legacy code. In each episode, our guests will share stories and outline tangible, real-world approaches to software challenges. In turn, you'll uncover new ways of thinking about how to improve your software project's maintainability. We're in this together. Enjoy the show!

Episodios

  • Dave Bryant Copeland - Quantifying the Carrying Cost

    03/10/2023 Duración: 42min

    Robby has a chat with the Author of Sustainable Web Development with Ruby on Rails, Dave Bryant Copeland (he/him/his). Dave is a Senior Software Engineer and speaker. Reflecting on his experience, Dave believes that well-maintained software is software that people understand what it does, how it works, and that it can be changed. He starts off by highlighting the challenges that developers face when trying to retrofit software with more testing.He also shares his expert insights on how software engineers can navigate design decisions while ensuring that they speak up if a proposed feature is difficult to build, test, and maintain. When it comes to software engineers getting advice from experienced practitioners, Dave says that the engineers should make sure they understand their own context and biases. He introduces us to his book and shares a very interesting story about the disappointment he got after building and releasing a frontend in Angular. Stay tuned for more!Book Recommendations:The Culture Map by E

  • Cameron Jacoby - Am I Learning From This?

    26/09/2023 Duración: 49min

    Robby has a chat with Cameron Jacoby (she/her/hers), a Senior Full-Stack Engineer at BetterUp, a platform that uses world-class coaching and science-backed solutions that help people grow personally and professionally. The one thing that Cameron says should stand out about code being maintainable is that it should be easy to read and understand. She explains why procedural code can often be easier to communicate with and highlights the importance of having helpful data metrics for most new features one works on.Robby and Cameron also discuss real-world approaches to tracking metrics for monitoring purposes, the benefits of using feature flags, especially within internal-facing software applications, the struggles engineering teams have with maintaining a staging environment, how being on-call is one of the fastest ways to ramp up one’s debugging skills and build intuition as a software engineer, and so much more. Stay tuned!Helpful Links:Personal Website - https://www.cameronjacoby.com/LinkedIn - https://www.

  • Adriana Villela - On Being a Serial Refactorer

    22/08/2023 Duración: 51min

    Robby has a chat with Adriana Villela, a Senior Developer Advocate at Lightstep. Adriana highlights that well-maintained software should be software that one can understand when they go into the code even if they’re not super familiar with it. She shares why she values being a serial refactorer and describes what beautiful code should look like. Adriana views debuggers as her best friends because as she says, “I do find maintaining documentation very difficult. That’s where a debugger comes in very handy so that he can step through the code to figure out what is going on”She will share a story about joining a software project that required a lot of refactoring, why asking for forgiveness is often easier than asking for permission, her involvement with the OpenTelemetry project and the standardization of observability protocols, and how to think about observability on a practical day-to-day level as a software engineer. She will also introduce us to Lightstep and what being a Senior Developer Advocate role is

  • Ahmed Wasfy - Thriving as an Engineering Manager

    08/08/2023 Duración: 55min

    Robby has a chat with Ahmed Wasfy (he/him/his), the Senior Development Manager at Amazon. On the topic of the common characteristics of well maintained software, Ahmed feels that one critical thing is that software should serve a purpose in terms of what values it adds and the trackable business goal it fulfills. He shares some valuable insights about legacy code based on his vast experience and dives into how to approach the management of technical debt so that an engineering team trusts there is a time and place to work on that.Robby and Ahmed discuss how to strike a good balance between new feature development and incremental improvements, challenges that large organizations face when recruiting a lot of engineers in a short period of time when there are no local domain experts, the Ageism bias in the software engineering industry, Ahmed's coaching work under TheThrivingEM.com, and how to approach your first 90 days in a new role. There is that and so much more software engineering wisdom to gain from this

  • Naomi Ceder - People-Centric Community Building

    04/07/2023 Duración: 48min

    Robby has a chat with Independent Python Instructor and Consultant, Naomi Ceder (she/her/hers). Naomi values clear organization, separation of concern and capsulation, visibility instrumentation, and tests when it comes to creating a legacy piece of code that will be continuously useful. She will talk about the importance of weighing up the costs of using 3rd party tools vs rolling your own solution, working in small teams through a career, and what to consider when weighing up a rewrite vs refactoring.They will discuss her involvement in the Python Foundation and what a foundation typically offers to a community on the global and local levels. Naomi will tell us about her book, The Quick Python Book, 3rd edition, and give us an overview of who the ideal audience is for it. For those of you who want to become technical writers, she will share considerations for how you can get more involved in open-source communities.Book Recommendations:Debt: The First 5000 Years by David GraeberPaula by Isabel AllendeHelpfu

  • Nadia Odunayo - Don't Try to Solve a Pain Point For a Problem You Aren't Experiencing

    19/06/2023 Duración: 57min

    Robby has a chat with Nadia Odunayo (she/her/hers), the Founder and CEO at The StoryGraph. Nadia starts off by highlighting solid test coverage, up-to-date GeM language platform versions, all security patches, and proper documentation as some of the few common characteristics of maintainable software. She talks about when it makes sense to document debugging processes for your future self, the tradeoffs made when you're the solo developer and founder of a software project, how she approaches product management, how working within Pivotal Labs influenced her approach, and the differences one experiences going from an environment of constant pairing to being a solo developer.They also dive into why every engineer should be comfortable clearing out their product's icebox, the realities of being a solo developer and thinking about vacations, the fine line between premature and proactive optimization, and everything that The StoryGraph app has to offer. Nadia’s engineering wisdom will be super insightful so don’t

  • Daniela Baron - About Those Docs

    12/06/2023 Duración: 49min

    Robby has a chat with Senior Staff Engineer, Daniela Baron (she/her). Daniela starts by listing the following things about the characteristics of well-maintained software; it should be easy for new people to join and get the project running on their laptops just by following the README, it should have conventions in place for what kind of code goes where, and several less obvious aspects like how to integrate with third parties and how to deploy to a test environment.Daniela will share ways to improve the onboarding experience for new developers to a project, examples of reliable traceability from code to tests to business goals across repositories and project management tools, how to avoid bikeshedding in pull-requests, and approaches to managing maintenance tasks within your team's workflow.In addition, Robby and Daniela will discuss the importance of having a process for addressing deprecation warnings, documenting the non-obvious aspects of the system, tips on how to start documenting how to test and/or d

  • Cory House - Finding Opportunities for Improvement

    05/06/2023 Duración: 35min

    Robby has a chat with Cory House (he/him/his), the Founder at Reactjsconsulting.com, a software developer, author, speaker, and consultant. “I love the old saying that we write software for humans. So, I think about that regularly”, Cory says about what the maintainability of software is all about. When it comes down to it, he thinks more about his fellow developers than the compiler. He talks about the importance of good variable naming, shares the tactics for writing good tests for your regular expressions, and lists the benefits of automating pull-request feedback on potentially subjective feedback so that we can focus our attention on objective curiosities. He will also dive into testing strategies for React JS applications, how granular unit testing patterns don't apply well to automated browser tests, why it's valuable to keep a running list of opportunities for improvements rather than a list of technical debt, and why he believes that not every software project requires a dedicated architect but there

  • Avery Quinn - Can You Quantify the Impact?

    22/05/2023 Duración: 39min

    Robby has a chat with Senior Software Engineer, Avery Quinn. Avery was previously a Senior Software Engineer at Remotion. Avery starts by sharing that she finds well-maintained software to have cohesive modules, be singularly responsible in its functions, and have just a general level of refinement over time.They will dive into the benefits of having a skeleton project that you can experiment with when weighing up different dependencies, tips for onboarding engineers to your teams, things to consider when building desktop applications, what it is like to work as a consultant, and later at a product company, the software product that Remotion is building for remote software engineers, why measuring velocity on a team can be a useful metric to track, and how her recent employer tracks and prioritizes technical debt work. Avery will also share advice for those who are struggling to get buy-in to prioritize technical debt work. Stay tuned for more!Book Recommendations:Just Enough Software Architecture By George F

  • Carlos Blé - Código Sostenible

    24/04/2023 Duración: 50min

    Robby has a chat with Carlos Blé, the CEO of Lean Mind, an organization focused on boosting the growth of developers and teams. Carlos is a software crafter, entrepreneur, mentor, speaker, podcaster, blogger, and author of several tech books in Spanish (Diseño Ágil con TDD and Código Sostenible). He is also the Founder of Savvily, a publisher specializing in tech books. Carlos will start off by sharing the four important traits of well-maintained software and examples of what maintainable tests are. He will dive into the benefits of mutation testing and exploratory testing, why engineers should advocate for a TECHNICAL_DEBT.md file in their git repository, why software engineers should aim to reduce the technical burden for their product team, services that Lean Mind offers, his latest book, Código Sostenible, and how to be a good guest in another team's codebase. Stay tuned for that and so much more!Book Recommendations:Nonviolent Communication by Marshall RosenbergHelpful Links:Carlos on LinkedInCarlos on G

  • Lena Reinhard - How Will People Get Stuff Done?

    17/04/2023 Duración: 56min

    Robby has a chat with Executive and Leadership Coach, Lena Reinhard (she/her/hers). Lena is a speaker, writer, and Founder of Lena Reinhard Leadership Coaching and Consulting. Previously, Lena served as the VP of Engineering with CircleCI and TravisCI, as well as the startup Founder and CEO of The Neighbourhoodie Software GmbH.From Lena’s perspective, well-maintained software is supposed to serve a business’s goals and continuously improve not just reactively. She highlights the importance of organizations investing in their engineering team's skills. Lena will also talk about software as a team sport, strategies for managing technical debt, how technical debt is a loaded term, challenges teams have faced with micro-services, and what engineers might be encountering after teammates have been laid off. Tune in for that and so much more.Book Recommendations:Into The Planet by Jill HeinerthHelpful Links:The lettuce pact

  • Eric Normand - Grokking Simplicity

    13/03/2023 Duración: 47min

    Robby has a chat with software engineer, trainer, and author of the book Grokking Simplicity, Eric Normand (he/him/his). As Eric reflects on his experience, the first thought he has of well-maintained software is that it’s like a unicorn (Something you can’t find in real life), but on a more serious note, he emphasizes that smaller code bases are easier to maintain and that the maintainability of a code base is also highly dependent on the team of engineers that are working on it.Robby and Eric will dive into the pros and cons of microservices in small organizations, why teams need to ensure they know where they're going with the future of their codebase, Eric's book - Grokking Simplicity, the differences within a functional programming language, higher-order functions, Eric’s journey toward authoring a technical book, and the value of engineers being able to get comfortable moving code around in a project without needing to ask for permission first. Tune in and enjoy!Book Recommendations:Book Recommendation:

  • Henrik Warne - There is No Software Maintenance

    06/03/2023 Duración: 42min

    Robby has a chat with Henrik Warne (he/him/his), the Senior Software Engineer at Talos. In Henrik’s view of well-maintained software, he talks about the importance of code having structure early on because, without structure, code tends to inevitably drift over time toward complexity. He highlights the importance of engineers being able to not only read code when they join a project but also be able to run the code and test it.Henrik will share the details of his blog titled, "There is No Software Maintenance," where he argues that software maintenance is simply software development, and how software is better seen as a product versus a project. He will talk about why all software engineers should spend a portion of their time working on bugs, tactics engineers can use to reflect on and capture their thoughts after fixing a bug, and strategies for teams to improve software and avoid rot. Stay tuned for more and enjoy.Book Recommendations:How to Win Friends & Influence People by Dale CarnegieHelpful Links:

  • Andy Croll - Keep the Weird Stuff Weird

    06/02/2023 Duración: 49min

    Robby has a chat with Andy Croll (he/him/his), the CTO at CoverageBook, a Rubyist, the Organizer of the Brighton Ruby Conference, an author, speaker, and bootstrapper. The most important thing when it comes to the maintainability of software is “That code is read much more than it’s written”, Andy says. He insists that the core focus should always be on readability. Andy will dive into the rationale for why weird things in our code should stay weird until we find a better way to express it and even shared some specific examples within a Ruby on Rails environment. He will share his career journey from the front end into the backend, what prompted him to start the First Ruby Friend project to connect newcomers to a community with people who want to be mentors, examples of how to manage technical debt in a small team and why it's okay to let some stuff "sit in the air", and so much more. Stay tuned. It’s going to be an epic one.Book Recommendations:The Overstory by Richard PowersHelpful Links:Andy's websiteOne R

  • Marianne Bellotti - Building Empathy by Asking, "How Would You Write This in 2007?"

    16/01/2023 Duración: 01h01min

    Robby has a chat with Marianne Bellotti (she/her/hers), the Engineering Manager at Rebellion Defense. Marianne is the author of the books, “Hiring Engineers” and “Kill it with Fire”. She talks about the maintainability of software being about whether software can be changed and how easily changes can be made to it. She dives into her experience with legacy modernization and talks about how to effectively judge software.Marianne also shares her insights on the challenges teams face when people don't understand how older code works, the value of developing a plan around tests to naturally build confidence within an organization, why it's important to have a safe space to break things (e.g., staging/QA environments), how onboarding metrics can be difficult to compare when dealing with regulatory systems, and building empathy toward previous engineers on a project. Tune in for that and a whole lot more in this value-packed 61-minute episode.Book Recommendations:Drift into Failure: From Hunting Broken Components t

  • Arpit Mohan - Aspiring To Be Boring As Possible

    26/12/2022 Duración: 51min

    Robby has a chat with Arpit Mohan, the Co-Founder and CTO of Appsmith, an open-source low-code tool that helps developers build dashboards and admin panels very quickly. Appsmith helps businesses build any custom internal application within hours. In regard to well-maintained software, Arpit points to the importance of engineers writing code for humans and not machines while also focusing a lot on readability. He believes useful code comments are also very crucial in facilitating well-maintained software.Arpit will share his wisdom on the importance of conveying the why over the how behind any code being developed, how open source and closed source projects have different code commenting/documentation needs, why engineers should always keep an eye out for code smells and friction in their ability to deliver software functionality, the problems that AppSmit helps organizations solve, the differences between B2C vs B2B when it comes to the benefits of automated testing, performance concerns, etc, and much much

  • Noah Clark - Maintainable Software is a Team Sport

    19/12/2022 Duración: 59min

    Robby has a chat with Noah Clark, a consulting applications developer at Merchants Bonding Company, one the top 15 largest surety writers in the United States. On the top of Noah’s list of things that facilitate the maintainability of software is team dynamics. Well-maintained software can never be achieved by a single individual refactoring code or having grand ideas/visions. It’s not made possible by a team coming together and committing to a practice of well-maintained software. He highlights trust and communication between a team and the company they’re developing software for as key. He also advises engineers to avoid writing code just to solve problems.Tune in as Robby and Noah discuss why engineers should ensure that their software code leans on the business domain especially when it comes to naming things, how teams can determine when it’s necessary to refactor and/or improve existing software, the complexities that come with basing software development projects on best practices, why and how to avoid

  • Ben Parisot - Documentation Just Needs To Be Used Once

    07/11/2022 Duración: 01h01min

    Robby has a chat with the Engineering Manager at Planet Argon, Ben Parisot. Ben has worked in the tech industry since 2010 and has worn many, many hats: blogger, web designer, web developer, technical producer, scrum master, technical project manager, copywriter, and more. He loves all parts of the software development lifecycle and always has a creative personal web or mobile app humming along outside of work. The first thing Ben says he looks for that represents well-maintained software is thorough and up-to-date documentation. He feels that every developer or project manager must ensure that they leave a good paper trail of the work they do. He encourages engineering teams to do regular documentation audits of internal and external documentation they use in order to find outdated and obsolete documentation. Drawing from his experience working on multiple client projects, his advice is to build processes around auditing and improving documentation to make sure it's effective. This convo will prove incredibl

  • Stefanni Brasil - When Is Tackling Tech Debt Possible?

    17/10/2022 Duración: 40min

    Robby has a chat with Stefanni Brasil, the Co-founder and Educator at hexdevs, Co-creator of the Get to Senior online course and community, and most recently joined thoughtbot as a developer. Reflecting on her experience in the industry, Stefanni says that well-maintained software can only be a result of teams agreeing on conventions before coding starts. She feels that the term technical debt facilitates better communication and her perspective around it has shifted over time due to the fact that most projects that have employed it are the ones that have been generating revenue. Stefanni notes that software engineering teams can work seamlessly when they document their decisions (on Trello, Google Docs, etc) for future reference. Creating an environment where every team member feels safe and comfortable to speak up about any issues also contributes to project success. Steffani will also share her knowledgeable insights on how to be a good guest in another team's codebase as a consultant and the steps to take

  • Andrea Goulet - Empathy-Driven Software Development

    10/10/2022 Duración: 54min

    Robby has a chat with Andrea Goulet, the CEO of Corgibytes, a software development shop dedicated to maintaining and modernizing software applications. Named by LinkedIn as one of the top ten professionals in software under 35, Andrea is the host of the podcast Legacy Code Rocks, is the author of the forthcoming book, “Empathy-Driven Software Development”, has co-founded several successful technology companies, and has taught over 50,000 students how to turn soft skills like empathy and communication into software skills.Through her newest venture, Heartware.dev, she is on a mission to operationalize empathy for tech teams and keynotes frequently about building a business based on balance, empathy, and trust; the perils of the technical/non-technical divide; and the technical philosophies around working with legacy code. Andrea says that the maintainability of software comes down to trust and while she doesn't find the term technical debt useful, she uses it in instances where it’s being widely used especiall

página 4 de 11