atlas news
    
Matt Layman : Python
14  août     00h00
Detecting Code Vulnerabilities Using Python with AI and LLMs
   Let’s take a look at how easy detecting vulnerabilities in code can be using the latest and greatest technologies, including scale challenges and costs.
01  août     00h00
Python and AI workflow with LangGraph
   In this stream, I worked on a personal AI workflow that I’m building using LangGraph. I discussed human-in-the-loop and how to bring a person into the workflow process.
18  juillet     00h00
Enhancing Chatbot State Management with LangGraph
   Picture this: it’s late and I’m deep in a coding session, wrestling with a chatbot that’s starting to feel more like a living thing than a few lines of Python. Today’s mission? Supercharge the chatbot’s ability to remember and verify user details like names and birthdays using LangGraph. Let’s...
12  juin     00h00
Python AI Agents: Overview to Generative AI and Intro to Agents
   Glenn will start by providing an overview of Generative AI, a groundbreaking technology that enables machines to produce human-like text, images, and even code. This innovation is transforming various industries by automating tasks, enhancing creativity, and improving efficiency.
30  mai     00h00
Love2D Game Dev
   In this episode, I worked on the hard mode of my pong clone game. We tried to improve the CPU AI without much success, then found some simple alternatives to make a fun hard mode.
23  mai     00h00
Love2D Pong Clone
   In this episode, I worked on my pong clone some more. I made the game work in full screen mode (dealing with scaling) and started to add a menu system.
16  mai     00h00
Love2D Game Clone
   In this episode, I played more with Love2d. I tried to use Grok to add more features to my pong clone, then played with the particle system in Love2d. Note: my streaming software crashed after the first 12 minutes of streaming, so the start on this recording is a somewhat abrupt.
09  mai     00h00
Love2D Vibe Coding
   In this episode, I worked on some Love2D code and explored how to use AI tools within my Neovim configuration. Ultimately, I found that working with Grok directly proved to be more useful for my scenario than working with the xAI model through the avante plugin.
11  avril     00h00
Goodbye JourneyInbox - Building SaaS 218
   In this episode, I declared to the stream that I’m done working on JourneyInbox as a SaaS product. I didn’t see any meaningful market adoption, so I’ve decided to pivot the project to serve only my personal needs. I used the stream to do a retrospective on the project and then convert the core...
10  avril     00h00
PySpark 101: Introduction to Big Data with Spark
   Unlock the PySpark for Big Data. This is a beginner-friendly course designed to introduce you to Apache Spark, a fast and scalable distributed computing framework. This class covers the fundamentals of PySpark, including:
21  mars     00h00
Onboarding Form and Template - Building SaaS 217
   In this episode, I updated my new onboarding form on the School Desk app. This form is vital for the first experience of new users, so I spent a lot of time making sure it will do what is needed.
05  mars     00h00
C and .net Core - What They Offer
   If you want to know what C# and .net Core is as of 2025 and how open source it really is, or not. What it gets right, what it gets wrong, and an objective comparison to Java, Go, C , etc. we will give you a quick overview. C# and .net core offer many things that prior versions of .NET did not offer.
28  février     00h00
Email Reputation and Onboarding - Building SaaS 216
   In this episode, I did checking on the email reputation of my SaaS apps because I got feedback from a customer that my emails were going to spam. Along the way, we learned about DMARC as a capability to track and report on email compliance. After making some DNS changes to enable DMARC, I worked on...
14  février     00h00
Deployment Snafus and AI - Building SaaS 215
   In this episode, I finished up the sign in simplification feature for the homeschool app. I planned to do deploy it quickly and move onto the next thing, but we hit a comedy errors and challenges while trying to get Docker Desktop working again on my dev machine. On the stream, we also began to...
13  février     00h00
Easy Python Parallelism using Ray
   In this talk, we explore the Ray library and how it can be used to easily parallelize Python code. We cover the basics of using Ray Core, including installation, spinning up a local Ray cluster, and running remote actors and tasks.
07  février     00h00
Better Onboarding - Building SaaS 214
   In this episode, I returned to the homeschooling application and started to improve the sign up and onboarding experience. We simplified signup to eliminate passwords and work via email. I talked through the design changes that I plan to make to the first time experience for new users.
06  février     00h00
Learning to Löve game development - Designing games with Lua
   Experience the magic of game creation We delved into the enchanting world of Lua, the language that powers the lightweight, open-source Löve game engine. Here’s what you’ll find:
31  janvier     00h00
Finishing Simple Signup - Building SaaS 213
   In this episode, I completed the simplified sign up process for my JourneyInbox app. I finished off the final features that add account verification and initial engagement features to make sign up and nice and functional experience.
17  janvier     00h00
Building SaaS with Python and Django 212.2
   In this episode, we continued on the sign up workflow simplification. The focus of this stream was on adding the background task that will send the magic link email to allow sign in. This is the second half of the stream because my internet cut out.
    00h00
Signin Email - Building SaaS 212.1
   In this episode, we continued on the sign up workflow simplification. The focus of this stream was on adding the background task that will send the magic link email to allow sign in.
10  janvier     00h00
Simplified Signup - Building SaaS 211
   In this episode, we began an update to the signup process to simplify things. I am replacing email and password with just email. Users will receive ’magic links’ via their email client to sign in. To do this, we are using django-sesame.
27  décembre     00h00
Optimizing SQLite - Building SaaS 210
   In this episode, when worked on the newly migrated JourneyInbox site and focused on the database. Since me moved from Postgres to SQLite, I needed to make sure that SQLite was ready for users. We examined common configuration to optimize the database and applied that config to JourneyInbox.
20  décembre     00h00
Bootstrap Kamal On Droplet - Building SaaS 209.1
   In this episode, I worked to finish the cloud migration to DigitalOcean for JourneyInbox. We started the stream by bootstrapping Kamal on the server. I hit network issues so this stream is split into multiple parts and is of lower quality than normal.
    00h00
Docker Image For Kamal - Building SaaS 209.2
   In this episode, the second portion of the stream worked on fixing up the Docker image so that we could get the DigitalOcean droplet functional. This is the second stream chunk because I was having network issues and the first stream cut out.
    00h00
Postgres To SQLite - Building SaaS 209.3
   In this episode, the third portion of the stream covers how I migrated my Heroku-backed Postgres database to SQLite. I finished the migration of my app from running on Heroku to running on DigitalOcean.
13  décembre     00h00
1Password and DigitalOcean Droplet - Building SaaS 208
   In this episode, I continued a migration of my JourneyInbox app from Heroku to DigitalOcean. We configured the secrets using 1Password and created the droplet that will host the app.
12  décembre     00h00
UV and Ruff: Next-gen Python Tooling
   Dive into the dynamic duo of modern Python development - UV and Ruff
22  novembre     00h00
Huey Background Worker - Building SaaS 207
   In this episode, I continued a migration of my JourneyInbox app from Heroku to DigitalOcean. I switched how environment configuration is pulled and converted cron jobs to use Huey as a background worker. Then I integrated Kamal configuration and walked through what the config means.
15  novembre     00h00
Heroku To DigitalOcean - Building SaaS 206
   In this episode, I began a migration of my JourneyInbox app from Heroku to DigitalOcean. The first step to this move, since I’m going to use Kamal, is to put the app into a Docker image. We got the whole app into the Docker image, then cleaned up local development and the CI system after making...
06  novembre     00h00
Deploy Your Own Web App With Kamal 2
   Kamal offers zero-downtime deploys, rolling restarts, asset bridging, remote builds, accessory service management, and everything else you need to deploy and manage your web app in production with Docker. Originally built for Rails apps, Kamal will work with any type of web app that can be...
18  octobre     00h00
Epic Debugging, Hilarious Outcome - Building SaaS 205
   In this episode, I dug into an issue with sign up. What I thought was going to be a minor issue to fix turned into a massively intense debugging session. We ended up going very deep with the django-allauth package to understand what was going on.
27  septembre     00h00
Postgres to SQLite - Building SaaS 204
   In this episode, we worked on the cloud migration’s data strategy. I focused on how to convert a Postgres database into a SQLite database and planned out the process that I will follow to do the actual migration.
20  septembre     00h00
Docker Go, JS, Static Files - Building SaaS 203
   In this episode, we continued on the cloud migration path. We need to build a Docker container with all the necessary static files. Some of these come from Go via Hugo for a content blog. Some comes from JavaScript via Tailwind for CSS. Some come from Python via Sphinx for documentation. All need...
13  septembre     00h00
Cloud Migration Beginning - Building SaaS 202
   In this episode, we started down the path of migrating School Desk off of Heroku and onto Digital Ocean. Most of the effort was on tool changes and beginning to make a Dockerfile for deploying the app to the new setup.
06  septembre     00h00
Kamal On A Droplet - Building SaaS 201
   In this episode, we continued working with the Kamal deploy tool. Last time, we build a demo image. With this session, we created a Digital Ocean Droplet (i.e., VM) and deployed to that. Along the journey, we learned a lot about how Kamal operates.
30  août     00h00
Kamal - Building SaaS 200
   In this episode, we pulled out a new tool. We spent the session using Kamal, a tool to deploy web apps directly to servers. Kamal offers a complete tool set to get apps running on bare metal or cloud machines. We played with the tool to see how far we go to get an app deployed to a new server.
29  août     00h00
No Frills, Just Go: Standard Library Only Web Apps
   How much can you build in Go with zero extra packages? What is possible using nothing more than Go’s standard library? In this talk, you’re going to find out
26  août     00h00
Layman’s Guide to Python Built-in Functions
   Quick Jump List A: abs, aiter, all, anext, any, ascii, B: bin, bool, breakpoint, bytearray, bytes, C: callable, chr, classmethod, compile, complex, D: delattr, dict, dir, divmod E: enumerate, eval, exec, F: filter, float, format, frozenset, G: getattr, globals, H: hasattr, hash, help, hex, I: id,...
23  août     00h00
Golang Middleware and DBs - Building SaaS 199
   In this episode, we continued the break from JourneyInbox to look through more of the Go standard library. In this session, we talked about middleware, request context, and using databases.
16  août     00h00
More Go Standard Library - Building SaaS 198
   In this episode, we continued the break from JourneyInbox to look through more of the Go standard library. In this session, we explored JSON serialization, Go template support, and embedding of static files for easy access.
15  août     00h00
PDF Text Extraction With Python
   Is your data locked up in portable document format (PDFs)? In this talk we’re going to explore methods to extract text and other data from PDFs using readily-available, open-source Python tools (such as pypdf), as well as techniques such as OCR (optical character recognition) and table extraction....
09  août     00h00
Go Standard Library App - Building SaaS 197
   In this episode, we are taking a break from JourneyInbox and exploring what kind of Go app we can make by just using the Go standard library.
    00h00
Go Standard Library App - Building SaaS 197.2
   In this episode, we are taking a break from JourneyInbox and exploring what kind of Go app we can make by just using the Go standard library. This is a continuation after an internet disconnection.
    00h00
Go Standard Library App - Building SaaS 197.3
   In this episode, we are taking a break from JourneyInbox and exploring what kind of Go app we can make by just using the Go standard library. This is another continuation after an internet disconnection.
    00h00
Go Standard Library App - Building SaaS 197.4
   In this episode, we are taking a break from JourneyInbox and exploring what kind of Go app we can make by just using the Go standard library. This is the final continuation after an internet disconnection.
07  août     00h00
An Opinionated Introduction to CI CD
   Continuous Integration Continuous Delivery (or Deployment), CI CD, is a set of practices used by engineering organizations to improve the quality of software they deliver, how fast they deliver that software, and detect issues with that software before they affect end users. Unfortunately, the term...
19  juillet     00h00
Activation Email Job - Building SaaS 196
   In this episode, we chatted about managing dependencies and the cost of maintenance. Then we got into some feature work and began building a job that will send users an email as reminder to activate their account shortly before it expires.
12  juillet     00h00
Trial Banner Inclusion Tag - Building SaaS 195
   In this episode, we worked on a trial banner that could persist across all pages on the site. Because the banner needed data that was only available on the index page, we had to refactor the banner into an inclusion template tag to make the tag work consistently.
20  juin     00h00
Password Resets and Signal Handling - Building SaaS 194
   In this episode, we hooked up the email confirmation signal to the prompt sending code so that new users can use JourneyInbox immediately. Then we focused on handling all the functionality related to the password reset feature. This meant customizing a bunch of django-allauth forms.
13  juin     00h00
Boosting AI with Python: Using Click, Jinja2, and GPT Libraries
   n this session, we will explore how to use Python to enhance your AI projects with: