Test & Code

Brian Okken
undefined
Jun 11, 2019 • 23min

77: Testing Complex Systems with Maintainable Test Suites

Creating maintainable test suites for complex systems. The episode describes some complexities involved with hardware testing, then shares techniques for shifting complexity out of the test cases. quick overview of what test instruments are discussion of API and communication with instruments techniques for shifting complexity out of test cases These techniques should apply to all test suites dealing with complex systems: Creating test cases that are easy to read and debug and tell a story about what is being tested. Pushing setup complexity into fixtures. Pushing lengthy repetitive API call sets into helper functions. Using stable, documented, interfaces. Links:VoltmeterOscilloscopeSpectrum analyzerFunction generatorArbitrary waveform generatorWireless Communications Testers & SystemsR&S CMW PlatformSCPI - Standard Commands for Programmable InstrumentsVISA - Virtual instrument software architecturePyVISA: Control your instruments with Pythonpytestpytest book
undefined
May 29, 2019 • 36min

76: TDD: Don’t be afraid of Test-Driven Development - Chris May

Test Driven Development, TDD, can be intimidating to try. Why is that? And how can we make it less scary? That's what this episode is about. Chris May is a Python developer and the co-founder of PyRVA, the Richmond Virginia Python group. In this episode, Chris shares his experience with adding testing and TDD to his work flow. I really enjoyed talking with Chris, and I think his story will help lots of people overcome testing anxiety.Special Guest: Chris May.Links:Don't be afraid of Test-Driven DevelopmentEveryday Superpowers
undefined
May 23, 2019 • 40min

75: Modern Testing Principles - Alan Page

Software testing, if done right, is done all the time, throughout the whole life of a software project. This is different than the verification and validation of a classical model of QA teams. It's more of a collaborative model that actually tries to help get great software out the door faster and iterate quicker. One of the people at the forefront of this push is Alan Page. Alan and his podcast cohost Brent Jensen tried to boil down what modern testing looks like in the Modern Testing Principles. I've got Alan here today, to talk about the principles, and also to talk about this transition from classical QA to testing specialists being embedded in software teams and then to software teams doing their own testing. But that only barely scratches the surface of what we cover. I think you'll learn a lot from this discussion. The seven principles of Modern Testing: Our priority is improving the business. We accelerate the team, and use models like Lean Thinking and the Theory of Constraints to help identify, prioritize and mitigate bottlenecks from the system. We are a force for continuous improvement, helping the team adapt and optimize in order to succeed, rather than providing a safety net to catch failures. We care deeply about the quality culture of our team, and we coach, lead, and nurture the team towards a more mature quality culture. We believe that the customer is the only one capable to judge and evaluate the quality of our product We use data extensively to deeply understand customer usage and then close the gaps between product hypotheses and business impact. We expand testing abilities and knowhow across the team; understanding that this may reduce (or eliminate) the need for a dedicated testing specialist. Special Guest: Alan Page.Links:Tooth of the Weasel – notes and rants about software and software qualityAB Testing – Alan and Brent talk about Modern Testing – including Agile, Data, Leadership, and more.Modern Testing PrinciplesThe Lean Startup
undefined
May 21, 2019 • 27min

74: Technical Interviews: Preparing For, What to Expect, and Tips for Success - Derrick Mar

In this episode, I talk with Derrick Mar, CTO and co-founder of Pathrise. This is the episode you need to listen to to get ready for software interviews. We discuss four aspects of technical interviews that interviewers are looking for: communication problem solving coding verification How to practice for the interview. Techniques for synchronizing with interviewer and asking for hints. Even how to ask the recruiter or hiring manager how to prepare for the interview. If you or anyone you know has a software interview coming up, this episode will help you both feel more comfortable about the interview before you show up, and give you concrete tips on how to do better during the interview.Special Guest: Derrick Mar. Links:72: Technical Interview Fixes - April WenselPathrise
undefined
May 3, 2019 • 28min

73: PyCon 2019 Live Recording

This is a "Yay! It's PyCon 2019" episode. PyCon is very important to me. But it's kinda hard to put a finger on why. So I figured I'd ask more people to help explain why it's important. I ask a few simple questions to people about Python and PyCon and get some great insights into both the language popularity and the special place this conference holds to many people.
undefined
Apr 29, 2019 • 38min

72: Technical Interview Fixes - April Wensel

Some typical technical interview practices can be harmful and get in the way of hiring great people. April Wensel offers advice to help fix the technical interview process. She recommends: hire for mindset and attitude look for empathy and mentorship skills allow candidates to show their strengths instead of hunting for weaknesses have the candidate leave feeling good about themselves and your company, regardless of the hiring decision Some topics discussed: interview questions to bring out stories of skills and successes stereotype threat diversity interview hazing white boards coding challenges unconscious bias emotional intelligence myth of talent shortage pair programming and collaboration during interviews mirrortocracy cultural add vs cultural fit empathy mentoring This episode is important for anyone going into a technical interview, as a candidate, as a hiring manager, or as a member of an interview team.Special Guest: April Wensel.Links:Compassionate CodingLeave Your “Gut” Out of Hiring DecisionsIf You Can Use a Fork, You’re “Technical” — April WenselProject Include
undefined
Apr 5, 2019 • 49min

71: Memorable Tech Talks, The Ultimate Guide - Nina Zakharenko

Nina Zakharenko gives some great advice about giving tech talks. We talk about a blog series that Nina wrote called "The Ultimate Guide To Memorable Tech Talks". This episode is full of great help and encouragement for your own public speaking adventures. Some of what we discuss: overcoming the fear of public speaking breathing and pausing during talks planning your talk as well as planning your time to get ready for the talk writing proposals and getting feedback on proposals Nina's talk in PyCascades on programming Adafruit chips types of talks that are often rejected pre-recording demos to avoid live demo problems why you should speak, even if you are an introvert benefits of public speaking a super cool announcement at the end Special Guest: Nina Zakharenko.Links:The Ultimate Guide To Memorable Tech Talks — Nina's series of posts with lots of advice on giving excellent tech talks.Azure for Python developers — Tutorials, API Reference | Microsoft DocsHow to Do a Deep, Diaphragmatic Belly BreathingExample accepted and rejected conference talk proposals — Nina's examplesAllison Kaptur's PyCon Proposal examplesEmily Morehouse's proposal examples.Brandon Rhodes' example PyCon talk proposalsNina's PyCascades talk on Python and LEDs — PyCascades – Light Up Your Life – With Python and LEDs, starts at 13:26.Nina has a keynote at PyCon 2019 — woohoo!
undefined
Mar 29, 2019 • 31min

70: Learning Software without a CS degree - Dane Hillard

Dane and Brian discuss skills needed for people that become software developers from non-traditional paths. Dane is also writing a book to address many of these skill gaps, Code Like a Pro, that's currently in an early access phase. Use code podtest&code19 to get a discount. And, sign up as a Friend of the Show to enter for a chance to win a free copy of the eBook version. We also discuss the writing process, testing with a multi-language stack, music, art, photography, and more.Special Guest: Dane Hillard.Links:Dane HillardCode Like a Pro — Dane's bookNoiselyLittle Leviathan — Dane's musicDane Hillard Photography — Dane's photographyNvidia AI turns sketches into photorealistic landscapes in seconds
undefined
Mar 21, 2019 • 49min

69: Andy Hunt - The Pragmatic Programmer

Andy Hunt and Dave Thomas wrote the seminal software development book, The Pragmatic Programmer. Together they founded The Pragmatic Programmers and are well known as founders of the agile movement and authors of the Agile Manifesto. They founded the Pragmatic Bookshelf publishing business in 2003. The Pragmatic Bookshelf published it's most important book, in my opinion, in 2017 with the first pytest book available from any publisher. Topics: The Pragmatic Programmer, the book The Manifesto for Agile Software Development Agile methodologies and lightweight methods Some issues with "Agile" as it is now. The GROWS Method Pragmatic Bookshelf, the publishing company How Pragmatic Bookshelf is different, and what it's like to be an author with them. Reading and writing sci-fi novels, including Conglommora, Andy's novels. Playing music. Special Guest: Andy Hunt.
undefined
Mar 13, 2019 • 38min

68: test && commit || revert (TCR) - Thomas Deniffel

With conventional TDD, you write a failing test, get it to pass, then refactor. Then run the tests again to make sure your refactoring didn't break anything. But what if it did break something? Kent Beck has been recommending to commit your code to revision control after every green test run. Oddmund Strømme suggested a symmetrical idea to go ahead and revert the code when a test fails. Kent writes that he hated the idea, but had to try it. Then wrote about it last September. And now we have TCR, "(test && commit) || revert". What's it feel like to actually do this? Well, Thomas Deniffel has been using it since about a month after that article came out. In this episode, we'll hear from Thomas about his experience with it. It's a fascinating idea. Have a listen and let me know what you think.Special Guest: Thomas Deniffel.Links:test && commit || revert — Kent Beck's original articleTCR: (test && commit || revert). How to use? Alternative to TDD? — Thomas Deniffel's articleTCR Variants (test && commit || revert)TCR: A pulverizer for coding tasks — Another interesting opinion from someone else trying TCR - Jason Crawford(test && commit || revert) Questions Answered — Written after this interview.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app