RECENT TOPICS

When should you rewrite in Rust By: Adrian Garcia Badaracco
Date: Dec. 8, 2022, 6:30 p.m.

When does it make sense to use Rust? What are the top challanges a Python user will face when trying Rust for the first time?

Racket By: Joshua Herman
Date: Dec. 8, 2022, 6:30 p.m.

Contrasting the Python Programming language to Racket.

 

https://racket-lang.org

Ultimate Language Shootout: Craiyon, a language for generating pictures By: Phil Robare
Date: Dec. 8, 2022, 6:30 p.m.

Craiyon.com is a front end for a neural network that takes in free-form text and generates images.  It can be viewed as a "language" that "compiles" to produce a binary that is an image.  This is one future of programming.

SQL By: Heather White
Date: Dec. 8, 2022, 6:30 p.m.

SQL is a declarative, recursive language.  For this year's Ultimate Language Shootout, I'm going to talk about how SQL is the best language that's not Python. 

Micropython turns on a light By: Carl Karsten
Date: Nov. 10, 2022, 6:30 p.m.

 

 

Last time I talked about Micropython I didn't show any code. 

This time I have code:

>>> from machine import Pin
>>> p=Pin("D13", Pin.OUT)
>>> p.value(1)

That turns on an LED.  We will talk about what that means, how it happens and the implications of this is the software that makes electronics happen.

There are a few more lines of the same nature: check the state of a switch gives is the I in IO.  For extra credit, we will ...

Micropython wiggles a mustache By: Andrew Wingate
Date: Nov. 10, 2022, 6:30 p.m.

Show off a micropython framework for my mini mustached robot. It's the same robot the I showed the last time, but now it has code and works!

 

Topics include:
event loop

anyncio

state machines

synchronous event management

web hosted interface with repl like repl thing

Building Machine Learning Apps with Gradio By: Freddy Boulton
Date: Nov. 10, 2022, 6:30 p.m.

The best way to share machine learning models is through interactive web applications that let stakeholders try the models for themselves. By playing with the model through a graphical interface, stakeholders can develop an intuition for how the model works in a way that would be impossible by analyzing average performance metrics or hand-picked examples.

Building web applications for machine learning requires significant knowledge of web development (css, js) and web hosting which are not in the typical data scientist's tool box. 

In this talk, we will introduce a gradio, an open source python library for building and sharing machine learning applications entirely in python. 

Introduction to dependency injection and testable code By: Adrian Garcia Badaracco
Date: Oct. 13, 2022, 6 p.m.

Isn't dependency injection a Java thing? Not really!

Have you used Pytest? Fixtures are a form of dependency injection. What about just passing in file-like object to `json.load`? Also dependency injection! There's also FastAPI, one of the most popular Python web frameworks now days, that has depedendency injection as one of it's key features.

You see, dependency injection is very widespread in the Python world, it just looks so natual because of lack of a `new` keyword and first-class function support that you might not even know you are using the technique. Nonetheless it can help to be aware of the theory and jargon around it, which is what we'll explore in this talk by way of a joint refactoring exercise.

What's new in Python 3.11 By: Phil Robare
Date: Oct. 13, 2022, 6 p.m.

The Python core developers keep pushing out new functionality every six months.  Python 3.6 just went out of support and Python 3.11 is in pre-release.  This talk will look at the new features promised for 3.11 and maybe provide some opionated views on their usefulness or their potential to make Python code harder to understand.

Life without pip install 😱 By: Aly Sivji
Date: Oct. 13, 2022, 6 p.m.

The world has lost the ability to pip install... what do we do?!?! This talk explores a hypothetical Doomsday Scenario where the Python Package Index has gone offline. We examine three ways we can import libraries we have not installed.

After this talk, attendees will have a better understanding of what happens when a package is imported into Python.