atlas news
    
Python Test
07  septembre     16h27
222: Import within a Python package
   In this episode we’re talking about importing part of a package into another part of the same package.We’ll look at: from . import module and from .module import something and also: import package to access the external API from with the package.Why would we use import package if from ....
03  juin     18h23
221: How to get pytest to import your code under test
   We’ve got some code we want to test, and some tests.The tests need to be able to import the code under test, or at least the API to it, in order to run tests against it.How do we do that How do we set things up so that our tests can import our code In this episode, we discuss two...
04  mai     21h54
220: Getting the most out of PyCon, including juggling - Rob Ludwick
   PyCon US is just around the corner. I’ve asked Rob Ludwick to come on the show to discuss how to get the most out of your PyCon experience. There’s a lot to do. A lot of activities to juggle, including actual juggling, which is where we start the conversation.Even if you never get a chance to go...
24  avril     00h52
219: Building Django Apps & SaaS Pegasus - Cory Zue
   I’m starting a SaaS project using Django, and there are tons of decisions right out of the gate. To help me navigate these decisions, I’ve brought on Cory Zue. Cory is the creator of SaaS Pegasus, and has tons of experience with Django.Some of the topics discussed:Building Django applicationsSaaS...
18  avril     04h26
218: Balancing test coverage with test costs - Nicole Tietz-Sokolskaya
   Nicole is a software engineer and writer, and recently wrote about the trade offs we make when deciding which tests to write and how much testing is enough.We talk about:Balancing schedule vs testingHow much testing is the right about of testingShould code coverage be measured and trackedGood...
11  avril     07h36
217: Podcasting SaaS Work Life Balance - Justin Jackson
   If you’ve ever thought about starting a podcast or a SaaS project, you’ll want to listen to this episode. Justin is one of the people who motivated me to get started podcasting. He’s also running a successful SaaS company, transistor.fm, which hosts this podcast.Topics:PodcastingBuilding new SaaS ...
11  mars     20h12
216: ruff, uv, and Astral: Python tooling, much faster, with Rust
   Charlie Marsh and team are using Rust to make Python tooling faster.Ruff can take the place of Flake , isort, and Black, and so much more.uv can take the place of pip, pip tools, and virtualenvAstral is Charlie’s venture backed company, and what they have with ruff and uv is just the start...
25  février     16h38
215: Staying Technical as a Manager
   Software engineers that move into leadership roles have a struggle between learning leadership skills, maintaining technical skills, and learning new leadership and technical skills. Matt Makai went from individual contributor to developer relations to leadership in devrel. We discuss how to stay...
07  février     05h20
214: Python Testing in VS Code
   If you haven’t tried running automated tests, especially with pytest, in VS Code recently, you should take another look.The Python for VS Code interface for testing, especially for pytest, has changed recently. On this episode we discuss the change with the software engineer working on the pytest...
19  janvier     22h09
213: Repeating Tests
   If a test fails in a test suite, I’m going to want to re run the test. I may even want to re run a test, or a subset of the suite, a bunch of times. There are a few pytest plugins that help with this:pytest repeatpytest rerunfailurespytest flakefinderpytest instafailWe talk about each of these in...
13  janvier     19h18
212: Canon TDD - by Kent Beck
   In , Kent Beck released a book called Test Driven Development by Example .In December of , Kent wrote an article called Canon TDD .With Kent’s permission, this episode contains the full content of the article.Brian’s commentary is saved for a followup episode.Links:Canon TDDTest Driven...
15  décembre     23h17
211: Stamp out test dependencies with pytest plugins
   We want to be able to run tests in a suite, and debug them in isolation, and have the behavior be the same. If the behavior is different in isolation vs in a suite, it’s a nightmare to debug. In this episode, we’ll talk about:Causes of dependenceTesting for dependencies using pluginsDebugging test...
30  novembre     00h29
210: TDD - Refactor while green
   Test Driven Development. Red, Green, Refactor. Do we have to do the refactor part Does the refactor at the end include tests Or can I refactor the tests at any time Why is refactor at the end This episode is to talk about this with a an example. Learn pytestpytest is the number one test...
16  novembre     20h07
209: Testing argparse Applications
   How do you test the argument parsing bit of an application that uses argparse This episode covers:Design for Test: Structuring your app or script so it’s easier to test.pytest capsys for testing stdoutAdding debug and preview flags for debugging and testingAnd reverting to subprocess.run if you...
30  octobre     00h28
208: Tests with no assert statements
   Why on earth would you want to write a test with no assert statements After all, aren’t assert statements how you decide wether a test passes or fails In this episode, we walk through a handful of useful examples of test code without asserts.We also talk about how these types of tests are a great...
26  septembre     01h37
207: pytest course, pytest-repeat and pytest-flakefinder
   New course: The Complete pytest Course pytest repeat, which I’m starting to contribute toGive repeat scope a try. You can use it to change from repeating every test to repeating the session, module, or class.pytest flakefinder, which is an alternative to pytest repeatpytest check is completely...
23  août     23h36
206: TDD in Context
   TDD Test Driven Development started from Test First Programming, and has been around at least since the ’s. However, software tools and available CI systems have changed quite a bit since then. Maybe it’s time to re examine the assumptions, practices, processes, and principles of TDD. At least...
01  août     00h55
205: pytest autouse fixtures
   On a recent episode of PythonBytes, I suggested it’s hard to come up with good examples for pytest autouse fixtures, as there aren’t very many good reasons to use them. James Falcon was kind enough to reach out and correct me. In this episode, we describe:what fixtures arewhat autouse fixtures...
18  juillet     21h01
204: Free Your Inner Nonfiction Writer - Johanna Rothman
   Learn how to write nonfiction fast and well.Johanna Rothman joins the show to discuss writing nonfiction.Johanna’s book: Free Your Inner Nonfiction Writer Learn pytestpytest is the number one test framework for Python.Learn the basics super fast with Hello, pytest Then later you can become a...
17  juillet     16h35
203: Open Source at Intel
   Open Source is important to Intel and has been for a very long time.Joe Curley, vice president and general manager of software products and ecosystem, and Arun Gupta, vice president and general manager for open ecosystems, join the show to discuss open source, OneAPI, and open ecosystems at Intel. ...
31  mai     21h15
202: Using Towncrier to Keep a Changelog - Hynek Schlawack
   Hynek joins the show to discuss towncrier. At the top of the towncrier documentation, it says towncrier is a utility to produce useful, summarized news files also known as changelogs for your project. Towncrier is used by Twisted, pytest, pip, BuildBot, and attrs, among others. This is the last...
25  mai     07h00
201: Avoid merge conflicts on your CHANGELOG with scriv - Ned Batchelder
   Last week we talked about the importance of keeping a changelog. This week we talk with Ned Batchelder about scriv, a tool to help maintain that changelog.Scriv is a command line tool for helping developers maintain useful changelogs. It manages a directory of changelog fragments. It aggregates...
19  mai     07h00
200: Keep a CHANGELOG
   A changelog is a file which contains a curated, chronologically ordered list of notable changes for each version of a project. This episode is about what a changelog is, with an interview with Olivier Lacan, creator of keepachangelog.com. The next two episodes talk about some tools to help software...
04  mai     16h45
199: Is Azure Right for a Side Project? - Pamela Fox
   For a web side project to go from working on desktop to live in the cloud , one decision that needs to be made is where to host everything. One option is Microsoft Azure. Lots of corporate sites use it. Is it right for side projects Pamela Fox, a Cloud Advocate for Python at Microsoft, joins...
27  avril     20h15
198: Testing Django Web Applications - Carlton Gibson, Will Vincent
   Django has some built in ways to test your application. There’s also pytest django and other plugins that help with testing. Carlton Gibson and Will Vincent from the Django Chat Podcast join the show to discuss how to get started testing your Django application. Learn pytestpytest is the number...
05  avril     01h30
Python project trove classifiers - Do you need this bit of pyproject.toml metadata?
   Classifiers are one bit of Python project metadata that predates PyPI. Classifiers are weird. They were around in setuptools days, and are still here with pyproject.toml. What are they Why do we need them Do we need them Which classifiers should I include Why are they called trove classifiers ...
31  mars     00h30
I am not a supplier
   Should we think of open source components the same way we think of physical parts for manufactured goods There are problems with supply chain analogy when applied to software. Thomas Depierre discusses some of those issues in this episode. Links:I am not a supplier article
08  mars     08h00
What would you change about pytest?
   Anthony Sottile and Brian discuss changes that would be cool for pytest, even unrealistic changes. These are changes we’d make to pytest if we didn’t ahve to care about backwards compatibilty.Anthony’s list:The import systemMulti process support out of the boxAsync supportChanges to the fixture...
30  août     15h15
The Good Research Code Handbook - Patrick Mineault
   I don’t think it’s too much of a stretch to say that software is part of most scientific research now. From astronomy, to neuroscience, to chemistry, to climate models. If you work in research that hasn’t been affected by software yet, just wait.But how good is that software How much of common...
06  août     23h15
Learn to code through game development with PursuedPyBear - Piper Thunstrom
   The first game I remember coding, or at least copying from a magazine, was in Basic. It was Lunar Lander. Learning to code a game is a way that a lot of people get started and excited about programming. Of course, I don’t recommend Basic. Now we’ve got Python. And one of the game engines available...
01  juillet     17h45
Running your own site for fun and absolutely no profit whatsoever - Brian Wisti
   Having a personal site is a great playground for learning tons of skills. Brian Wisti discusses the benefits of running a his own blog over the years.Links:Random GeekeryJamstackEleventyNetlifyPlausible AnalyticspytestBeautiful Souppyinvoke Invoke rsyncInternet Archive : archive...
21  juin     12h00
Testing PyPy - Carl Friedrich Bolz-Tereick
   PyPy is a fast, compliant alternative implementation of Python. cPython is implemented in C. PyPy is implemented in Python. What does that mean And how do you test something as huge as an alternative implementation of Python Special Guest: Carl Friedrich Bolz Tereick.Links:PyPyHow is PyPy Tested ...
07  juin     21h30
attrs and dataclasses - Hynek Schlawack
   In Python, before dataclasses, we had attrs. Before attrs, it wasn’t pretty.The story of attrs and dataclasses is actually intertwined. They’ve built on each other. And in the middle of it all, Hynek.Hynek joins the show today to discuss some history of attrs and dataclasses, and some differences...
17  mai     13h15
Python’s Rich, Textual, and Textualize - Innovating the CLI
   Will McGugan has brought a lot of color to CLIs within Python due to Rich. Then Textual started rethinking full command line applications, including layout with CSS. And now Textualize, a new startup, is bringing CLI apps to the web.Links:richrich clitextualTextualize.ioRich GalleryTextualize...
13  mai     12h45
Teaching Web Development, including Front End Testing
   When you are teaching someone web development skills, when is the right time to start teaching code quality and testing practices Karl Stolley believes it’s never too early. Let’s hear how he incorporates code quality in his courses.Our discussion includes:starting people off with good dev...
12  mai     07h00
Developer and Team Productivity
   Being productive is obviously a good thing. Can we measure it Should we measure it There’s been failed attempts, like lines of code, etc. in the past. Currently, there are new tools to measure productivity, like using git metrics.Nick Hodges joins the show to discuss the good and the bad of...
11  mai     07h00
Python Django Rich Testing Awesome
   Django has a handful of console commands to help manage and develop sites. django rich adds color and nice formatting. Super cool. In a recent release, django rich also adds nice colorized tracebacks to the Django test runner. Links:django rich PyPIepisode : Boost Your Django DX Adam...
21  mars     12h00
Twisted and Testing Event Driven Asynchronous Applications - Glyph
   Twisted has been supporting asynchronous event driven applications way before asyncio. Twisted, and Glyph, have also been encouraging automated tests for a very long time.Twisted uses a technique that should be usable by other applications, even those using asyncio or other event driven...
17  mars     04h15
Managing Software Teams - Ryan Cheley
   Ryan Cheley joins me today to talk about some challenges of managing software teams, and how to handle them. We end up talking about a lot of skills that are excellent for software engineers as well as managers.Some topics discussed:handling code reviewsasking good questionsbeing honest about what...
08  mars     16h15
An Unorthodox Technical Interview and Hiring Process - Nathan Aschbacher
   Don’t you just love technical interviews, with someone who just saw your resume or CV minutes ago asking you to write some code on a whiteboard. Probably code that has nothing to do with anything you’ve done before or anything you will do at the company.No Neither does Nathan Aschbacher. So...
01  mars     06h00
Boost Your Django DX - Adam Johnson
   We talk with Adam Johnson about his new book, Boost Your Django DX . Developer experience includes tools and practices to make developers more effective and efficient, and just plain make software development more fun and satisfying. One of the things I love about this book is that it’s not just...
21  février     08h00
Lean TDD
   Lean TDD is an attempt to reconcile some conflicting aspects of Test Driven Development and Lean Software Development.I’ve mentioned Lean TDD on the podcast a few times and even tried to do a quick outline at the end of episode .This episode is a more complete outline, or at least a first draft...
09  février     05h45
Exploratory Testing
   Exploratory testing is absolutely an essential part of a testing strategy. This episode discusses what exploratory testing is, its benefits, and how it fits within a framework of relying on automated tests for most of our testing.Full Transcript
31  janvier     20h00
The Five Factors of Automated Software Testing
   There are five practical reasons that we write tests. Whether we realize it or not, our personal testing philosophy is based on how we judge the relative importance of these reasons. Sarah MeiThis episode discusses the factors.Sarah’s order:Verify the code is working correctlyPrevent future...
28  janvier     05h15
Unit Test vs Integration Test and The Testing Trophy
   A recent Twitter thread by Simon Willison reminded me that I’ve been meaning to do an episode on the testing trophy. This discussion is about the distinction between unit and integration tests, what those terms mean, and where we should spend our testing time.Full TranscriptLinks:Simon Willison’s...
18  janvier     08h00
SaaS Side Projects
   The idea of having a software as a service product sound great, doesn’t it Solve a problem with software. Have a nice looking landing page and website. Get paying customers. Eventually have it make enough revenue so you can turn it into your primary source of income. There’s a lot of software...
12  janvier     08h00
Who Should Do QA?
   Who should do QA How does that change with different projects and teams What does doing QA mean, anyway Answering these questions are the goals of this episode.Full TranscriptLinks:Test Automation Who Should be Involved Thoughtworks
22  décembre     19h00
pseudo-TDD - Paul Ganssle
   In this episode, I talk with Paul Ganssle about a fun workflow that he calls pseudo TDD. Pseudo TDD is a way to keep your commit history clean and your tests passing with each commit. This workflow includes using pytest xfail and some semi advanced version control features.Some strict forms of TDD...
17  décembre     20h00
Why NOT unittest?
   In the preface of Python Testing with pytest I list some reasons to use pytest, under a section called why pytest . Someone asked me recently, a different but related question why NOT unittest .unittest is an xUnit style framework. For me, xUnit style frameworks are fatally flawed for...
30  novembre     08h00
Designing Better Software with a Prototype Mindset
   A prototype is a a preliminary model of something, from which other forms are developed or copied. In software, we think of prototypes as early things, or a proof of concept. We don’t often think of prototyping during daily software development or maintenance. I think we should. This episode is...