I want to text my family when I'm on my way home from work, but not when I'm going out for lunch. In this talk I'll show how I created a cloud-hosted, location-triggered SMS notifier with some decision-making smarts by combining IFTTT (If This Then That), AWS Lambda, Twilio, and just the right amount of Python, and inspire you to start experimenting with your own real-world integrations.
Python for .NET is a project dedicated to being able to call into Python from the CLR. Where IronPython has fallen off as the .NET Python prodigal son Python for .NET has picked up the slack. Python for .NET (or pythonnet for short) is an integration of the C Python engine with .NET. We'll be going through the uses and methods of integration of Python with your .NET projects.
It's really easy to write a Python program that goes over WiFi (IEEE 802.11). But what about wireless protocols that came out of IEEE 802.15 like Bluetooth or ZigBee? This presentation will familiarize you with these protocols and show you how to write Python programs that can exchange data wirelessly.
Learn how to increase the quality of your code and improve team productivity by leveraging a CI pipeline to run tests, lint, and measure code coverage. Then, integrate all that knowledge right into a GitHub pull request for easy team review & verification before deployment.
Legacy code is a hard problem for any growing application. Complete rewrites are expensive and prone to failure, so how does one go about replacing that large, crufty codebase with something easier to maintain? We’ll discuss the strategies used at Twilio to migrate a large REST API, piece by piece, out of a monolithic PHP system into a fleet of services federated by a Python proxy layer.
Technical interviews that cover computer science theory are frequently a part of the software engineering interview process. Recursion is a topic that is often covered in these interviews, but many developers find recursion confusing. This talk will introduce the concept of recursion in a simple and detailed manner. The talk will conclude with a real coding interview problem.
This talk will call various shared object files (created with Go) in Python and systematically check what we can and cannot do with the functions in the shared object file. This check includes passing various types, such as int, float, lists, and dictionaries, into the shared object file function, and checking what we can and cannot return from the shared object function.
Whether managing virtual servers in the cloud or actual hardware on premise, infrastructure automation has become an essential tool for all developers. This talk will introduce the basics of managing servers with Python using Fabric and Ansible. I will give a brief background on the theory of infrastructure automation, an overview of Fabric and Ansible, and show an outline of a complete system.
Bots are a fun, creative, community oriented project. They are perfect for a beginning programmer looking to build something cool, but open ended enough to hold the interest of an experienced developer. In this talk we'll go over the Python tools for building a great twitter bot, including where to find fun data sets, hosting your bot, delayed jobs, and examples of weird and wonderful bots.
I vowed never to become management and to keep on developing and building great stuff. I took a team lead position and that started my downfall of learning to take pride in leading a team, by collaborating, unblocking, mentoring, and architecting my way to building great stuff using the power of the team.
Virtualenv and/or pyenv have, for a long time, been the suggested way to begin a python project and practical necessities for production code with multiple python applications. In this talk, I'll introduce docker as a generalized alternative to virtualenv/pyenv's and try my best to convince you that Virtualenv/pyenv's reign can be usurped for most cases.
Follow the journey of a fictional technology startup, as they struggle to keep up with increasing infrastructure demands of their unexpectedly popular web application. Learn how to deploy and manage infrastructure as code, using familiar tools such as text editor of choice, Git, and of course lots of Python! (Level is Intermediate - Experienced)
Logging is a part of sane, stable development. Python developers should treat logging with the same weight that we take unit tests. Logs can be just as important as test coverage for unearthing breaking changes in code. This talk will introduce the concept of logging, its use cases, and how to set up a custom log formatter you can tailor to your application's specific needs.
To make Amazon Lambda production ready, it needs processes like Continuous Integration (testing) and Continuous Delivery. To achieve that, we will investigate how AWS lambda is powered. Next, we will cover creating a testing environment that can interact with AWS while allowing for inspection and exploration. Finally, lambda versions and aliases will be leveraged to accomplish ‘deployments’.
Let's explore how Simple, a consumer banking company, built its analytics capabilities from ad-hoc queries against production databases to a comprehensive data warehouse powering near-real time dashboards in less than a year. We'll discuss the high-level architecture, then dive into how Simple uses Python to support its warehouse with an admin interface and data transformation tools.
Python is great for making command line applications but a lot of the applications out in the world aren't that great. Why is that? Can we do better? Yes! Let's discuss how.
Auditing a code base for code formatting mistakes, potential security vulnerabilities or defects can be time consuming. Static code analysis will let the computer do that for you. Learn how to use code static analysis to catch errors early and improve code quality in your Python codebase.
OSINT - Open Source Intelligence - is not (just) espionage. It's just collecting public data and extracting information from it. You can do it by hand with a lot of Google and a lot more patience, but you'll want to automate as much as you can.
Come see what OSINT is and how its being used. We'll look at some Python-based tools and how you might use and improve them.
Mental disorders are the largest contributor to disease burden in North America, but the stigma surrounding it prevents us from meeting this challenge. In this talk, we'll examine the state of mental health awareness in the developer workplace, why most developers feel it isn't safe to talk about mental health, and what we can do to change the culture and save lives.
Most developers have used Google Analytics to record pageviews, visits, and events on their websites. Google Analytics does not allow you to track individual users events. At Noggin we needed that information at the user level so our customer success team could now how individual users where using our software. So we set about solving this problem. This talk is the story of that solution.
Learn how to build real Internet of Things (IoT) applications with pure Python and General Purpose Input/Output (GPIO). Thanks to devices like the Raspberry Pi and Intel Edison, full Linux systems with GPIO are accessible to the masses. Learn how build a true IoT device using only hardware and core Python libraries and hardware costing less than $50 US.
Testing python applications can be confusing, and leave you in a daze about what the proper way to test is when creating an API or accessing a remote service. Let's explore the testing world with a gentle introduction to unittest, py.test, mock, gabbi, and betamax. We'll learn how to isolate our tests from databases, APIs and third party libraries.
We all know that Python and Django can be used to write server-side software, but what about the client side? What about the browser? Can you use Python to power client-side interactions? Can you deploy Python logic (such as validation logic) on both the client and the server?
This talk is about creating diversity in the Python community and non-traditional methods of teaching and attracting a diverse population. This talk will cover the how and why of teaching python in a library to urban youth. We will talk about the current state of Detroit, as well as the benefits and challenges of educational programs in a public library.
HTTP/RESTful APIs are often designed and implemented before a client gets to see how they work. Then once an API is made public it can be hard to change. Let's discuss how we can improve this process by explicitly designing the API contract and getting client feedback before implementation. We will examine the process which promotes building HTTP APIs with a design first approach.
Learning how to contribute is the first fundamental step in joining the open source community. This talk will be based upon my own personal experience in creating my first PyPI package. As a seasoned developer, the task of uploading a package to PyPI seemed extremely complicated. But, in reality it is simple and anyone can do it.
Python's function annotations allow you to provide metadata about a function's inputs and outputs. Most often, these annotations are used for type checking or type casting. I'll talk through examples of each, including
typing from the Python 3.5 standard library and the
mypy static type checker. This talk expects basic knowledge of Python but no experience with function annotations is needed.
This talk will analyze a small example problem and explore various ways to improve its performance using various asynchronous tools available in Python.
Video games offer much more than just playing. Artists and programmers explore their internal working to modify them and offer unique new experiences. In this talk, open source 3d suite Blender is used to show how to import and export 3d models using its scripting language, Python 3.5, for both open and closed source formats, as well as tips and tricks for working with undocumented binary data
Python has some high-quality libraries for creating PDFs from scratch. But instead of using a library, why not let Libre/OpenOffice do most of the heavy lifting?
This talk will examine why and how to use gdb to debug python code and walk through a live example or two.
Today, services built on Python 3.5 using asyncio are widely used at Facebook. But as recently as May of 2014 it was actually impossible to use Python 3 at Facebook. Come learn how we cut the Gordian Knot of dependencies and social aversion to the point where new services are now being written in Python 3 and existing codebases have plans to move to Python 3.5.
Imposter syndrome isn't just a catch phrase, it's a real crisis of confidence that we all face as developers, one which can be especially hard for new developers who may not realize that it often comes with the job. This talk will help bring this topic to light by discussing things that can cause imposter syndrome and ways of coping and getting through these bumps.
This talk will be a retrospective on what was seemingly a weekend project that turned into an odyssey full of rabbit holes and dead ends. In this talk I'll touch on what was expected, what happened, what you should look out for during your own migrations, and what we learned along the way.
How many hours have you spent staring at walls of code or logs, hopping from file to file in an effort to find a bug or understand what your computer is doing? Let's explore a number of custom techniques and off-the-shelf tools you can use to see your program in a different light and better understand what's happening under the hood.