Thu, Apr 10 2025 at 06:00 PM at Slalom Build
(15 Minutes)
By: Jack Thompson
Experience Level: Intermediate
Microsoft sponsored. Best way to build vertical agents. Server and Tool kit for Model Context Protocol server written in python. Run multiple tools on a single server.
(30 Minutes)
By: Carlos A Aranibar
Experience Level: Novice
As programmers, we spend a lot of time typing, but we often overlook how keyboard designs affect our comfort and productivity. In this talk, we'll explore custom keyboards and how Python can help us create our own typing experiences.
We'll start by looking at the history of keyboard design and the limits of standard layouts like QWERTY. Then, we’ll discuss the advantages of alternative layouts, such as ortholinear and split designs, which can help reduce strain and improve typing speed.
Next, we’ll go through how to design a custom keyboard PCB and learn from Python tools like GDSFactory. You’ll learn to arrange the keys based on your hand shape and create a layout that focuses on the keys you use most in your favorite programming languages.
Once we have our PCB design, we’ll move on to building our custom keyboard. We’ll cover basic assembly to turn our design into a real device. Finally, we’ll talk about getting used to our new keyboard layout. We’ll look at online tools and Python scripts to analyze our typing habits, helping us identify our most common keys and monitor our progress as we retrain our fingers.
No prior experience with keyboard building or PCB design is needed – just bring your curiosity and eagerness to create a custom typing experience. By the end of this talk, you’ll know to question the design of your current keyboard and might want to build and improve your own custom keyboard using Python.
(30 Minutes)
By: Paul Zuradzki
Experience Level: Intermediate
Outline
-
Setting up a test harness. How to use parameterized tests to refactor safely.
-
Simplifying conditionals
-
Guard clauses and early returns
-
Method extraction vs inlining. Tradeoffs (“Clean Coder Uncle Bob” vs “Philosophy of Software Design Ousterhout).
-
Pattern matching with Python 3.10+ `match-case`
-
Boolean logic tricks (from discrete math)
-
DeMorgan’s Law
-
Double negation
-
Distributive laws
-
Understanding Python boolean semantics
-
Short-circuit evaluation
-
`and` / `or` behavior return-value behavior
-
Tripwires: when truthy expressions return unexpected values
-
Decoupling Behavior from Branching
-
Intro example
-
Strategy pattern in functional style. Dispatching callables with dicts.
-
functools.singledispatch for type-based dispatch
-
Strategy pattern in OOP style
-
With duck typing
-
With inheritance-based polymorphism
-
With protocol-based structural typing
-
If IF ain’t broke, then don’t fix it.
-
Evaluating design tradeoffs.
-
When the overhead of encapsulation or indirection might not be worth it.
-
Recap: when to use what
-
Summary of techniques, tradeoffs, and when each is favorable
Algo SIG @ Holiday Club (Uptown): Thu, Apr 03 2025 at 06:30 PM at Holiday Club
Thu, Mar 13 2025 at 06:00 PM at Northeastern Illinois University, Girls Who Code, and Google Developers Group
(15 Minutes)
By: Heather White
Experience Level: Novice
According to the StackOverflow annual survey, Python and Java are ranked in the top ten programming languages in terms of popularity. This talk will contrast these languages, with the goal of helping those coming from Java understand the key features of Python.
(14 Minutes)
By: jorgoose
Experience Level: Intermediate
Slides Link
Every word from the Federal Reserve moves markets, but their statements are often cryptic. In this talk, I’ll aim to break down my work for a class I took in college on using machine learning and natural language processing (NLP) to analyze Federal Open Market Committee (FOMC) statements and minutes to “predict” interest rate changes. By applying sentiment analysis, text processing, and neural network modeling, I tried to explore whether AI can help us potentially decode central bank language and anticipate monetary policy shifts. I will share some key findings and challenges.
(15 Minutes)
By: Aline Lerner
Experience Level: Intermediate
I'm one of the authors of Beyond Cracking the Coding Interview (the official sequel to CTCI) and the founder of interviewing.io.
I've been around eng hiring for almost 20 years, as a candidate, and eng leader, a recruiter (both in-house and agency), and finally as the founder of a mock interview and recruiting platform.
I keep seeing engineers make the same, very avoidable mistakes. In this talk, I'll walk you through them. Note that there are no shortcuts to getting good at technical interviews. There, you have to practice. But, there are a bunch of job search things that you can get good at after a short talk, and those are the ones I'll focus on.
Algo SIG @ Holiday Club (Uptown): Thu, Mar 06 2025 at 06:30 PM at Holiday Club
Thu, Feb 13 2025 at 06:00 PM at American Planning Association (APA)
(20 Minutes)
By: Colin Vallance
Experience Level: Intermediate
Development (and execution) environments for Ansible can be tricky. I’ll go over how utilizing the devcontainer spec can make it easy to develop Ansible plugins, run Ansible, and share environments with a team so that everyone has the same experience. This concept also extends to python environments in general and can help with complex setups that might include databases, web front ends, and so on.
(45 Minutes)
By: Akshay Mestry
Experience Level: Intermediate
In this talk, I’ll take you on a journey through the creation of xsNumPy, a minimalist implementation of core NumPy features using Python’s standard library. I’ll begin by sharing the inspiration behind the project — my curiosity to unravel the mechanics of NumPy and deepen my understanding of numerical computing. Then, we’ll explore the step-by-step development process, including designing a basic array object, implementing element-wise operations, and tackling challenges like scalability and performance optimization without external libraries. Along the way, I’ll highlight the Pythonic principles and best practices that guided the project, compare xsNumPy’s functionality with NumPy, and reflect on the lessons learned. Finally, I’ll discuss how xsNumPy can serve as a learning tool for developers and educators, and invite the community to join this open-source experiment in computational discovery.