Caktus Consulting Group: Our Favorite PyCon 2019 Presentations

Above: A view of the busy exhibit hall. Photo copyright © 2019 by Sean Harrison. All rights reserved.

PyCon 2019 attracted 3,393 attendees, including a group of six Cakti. When we weren’t networking with attendees at our booth, we attended some fascinating presentations. Below are some of our favorites. You can watch these talks and more on the PyCon 2019 YouTube channel.

From Co-founder & CTO Colin Copeland:

One tutorial and one talk stood out as my favorites.

Data Science Best Practices with pandas

I attended four tutorials and this was the last one on Thursday. Each tutorial is hands-on and lasts about three hours. By far, this was my favorite, primarily due to the exercise-based format. Kevin Markham was well organized and a great teacher, most likely because he runs Data School, which I discovered is in Asheville! The tutorial centered around analyzing the TED Talks dataset from Kaggle. Kevin live-coded each lesson, demonstrating best practices for slicing and analyzing the dataset with Pandas. Then he turned it over to us, providing several possible exercises with increasing levels of difficulty, which utilized the tools he just taught. I found the in-person exercises valuable as they made us practice the techniques right then, and therefore, learn through experience. I overbooked myself with four tutorials and didn’t have enough time to practice what I learned in all of them, so I felt like I got the most out of Kevin’s format, and I look forward to future tutorials with him.

Plan your next eclipse viewing with Jupyter and geopandas

This was the first talk I attended. I was excited to learn about using maps in Jupyter Notebooks, as I hadn’t had the chance to do so yet. Christy Heaton’s talk was very accessible with an easy to follow hypothetical question of: In what cities will we be able to see upcoming solar eclipses? After starting with a brief intro on eclipses, spatial data, and coordinate systems, she walked through a Jupyter Notebook, demonstrating the ease of mapping data in a notebook with geopandas. Eventually piecing together cities, eclipse paths, and years to show which cities would be best for viewing the 2024 eclipse over the U.S. I learned a lot from this talk, especially how easy it is to use matplotlib to visualize DataFrames with geometries. It’s great to see how notebooks can be used to easily explore spatial data with Pandas and Geopandas.

From Technology Support Specialist Scott Morningstar:

There was one PyCon talk that rose to the top for me.

Building an Open Source Artificial Pancreas

Sarah Withee spoke from the heart on this topic. She described the OpenAPS (open artificial pancreas system) which was created from an open source project that also involved hardware. It combines glucose monitors and insulin pumps to automatically manage insulin levels for those with type 1 diabetes. It was a project that the medical device companies didn’t want to take on because they didn’t think it’d be profitable. So Sarah and others took the matter into their own hands. From the talk, I learned a lot about how the pumps work and interact with each other and I saw how life-changing it is. Sarah is an adopter of the device, and she spoke about how her blood sugar levels went from being all over the place to being much more stable. The project really speaks to the power of people and open source. Now, the medical device companies are finally trying to incorporate it into their devices.

From Contractor Sean Harrison:

My top 3 picks this year included the following:

Leveraging the type system to write secure applications

Shannon Zhu from Instagram provided an informative overview of how Instagram has used type hints with the Pyre library to improve the security of millions of lines of Python. Type hints are a new area for me. This talk convinced me that starting to use them would be beneficial — not for improving performance, because they aren’t (yet?) used for that, but for the sake of validating the software’s interface security, particularly in terms of ensuring that “taints” from user input are “cleaned” before they are used.

Put down the deep learning: When not to use neural networks and what to do instead

Rachael Tatman from Kaggle gave an excellent overview of the different techniques of data science and encouraged people not to use deep learning until they know they need it. Machine learning has been and still is all the rage, and there were a lot of data scientists at PyCon. But I was glad to see some of the more traditional statistical methods being promoted alongside the newer ones.

Strategies for testing async code

Async was half the buzz at PyCon this year (the other half was machine learning), but a lot of places aren’t using asyncio very much yet. That’s one of the reasons I really liked this talk — not only did Neil Chazin, from Agari, give an accessible intro/overview to async programming, but he helped answer one of the key questions, which is “How do I write tests for it?” Watch his talk for the answer:

Remember, you can watch more presentations from PyCon 2019 on YouTube. Comment below on your favorites!

Planet Python

PyCoder’s Weekly: Issue #372 (June 11, 2019)

#372 – JUNE 11, 2019
View in Browser »

The PyCoder’s Weekly Logo

Python Predicted to Overtake C and Java in Next 4 Years

“Python’s ascent continues among software developers, bolstered by its usability compared with Java and C.”

CPython 3.8.0b1 Is Available for Testing

New features include: f-string debugging, “async REPL” mode, AsyncMock in unittest.mock, async-support for unittest, math.comb added, Python embedding got better, and more.

Leverage Data Science to Optimize Your Application


PyCharm 2019.1 Professional Edition has all-new Jupyter Notebooks support. You can use the same IDE that you use for building your application to analyze the data to improve it. Try it now →

How to Make a Twitter Bot in Python With Tweepy

Learn how to make a Twitter bot in Python with Tweepy, which is a package that provides a very convenient way to use the Twitter API. You can use your Twitter bot to automate all or part of your Twitter activity.

Current State of Python Packaging in 2019

“In this post, I will try to explain the intricate details of Python packaging. I spent the best part of my evenings in the past two months to gather as much information as possible about the problem, the current solutions, what is legacy and what is not.” Related discussion on Hacker News

Future Versions of macOS Won’t Include Python 2.7

The next macOS release deprecates built-in Python 2.7 and other system scripting languages, such as Ruby. The system scripting languages on macOS have always lagged behind the latest releases, for example, the macOS system Python is still on 2.7. You’ll still be able to install Python 2 or Python 3 as you would most likely anyway today.

Solving a Python Programming Puzzle, Step-By-Step

“This post is a write-up of a solution to part of a programming puzzle I did yesterday. It’s a little different than the usual ‘solution + theory’ approach, though: I’m going to talk about the actual steps you’d need to take to get to the solution (i.e. what to google, what intermediate code looks like, etc.).”

Writing a Toy Backend Compiler for PyTorch

“This tutorial is designed as an end-to-end walkthrough detailing all that is necessary for building and integrating a compiler into PyTorch’s JIT.”


Python Jobs

Senior Backend Software Engineer (Remote)


Lead Python Software Developer (Toronto, Canada)


SIPS Programmer (Madison, WI)

University of Wisconsin

Senior Python Developer (Malta, Europe)

Gaming Innovation Group

More Python Jobs >>>

Articles & Tutorials

OOP Method Types in Python: @classmethod vs @staticmethod vs Instance Methods

What’s the difference between @classmethod, @staticmethod, and “plain/regular” instance methods in Python? You’ll know the answer after watching this video series and playing with the accompanying code examples.

Killer Rabbits in Medieval Manuscripts

Why so many drawings in the margins depict bunnies going bad…

Join a Community of 3.5 Million Developers on DigitalOcean


Discover why Python developers love self-hosting their apps on DigitalOcean, the simplest cloud platform. Click here to learn more and get started within minutes →

Python in the Windows 10 May 2019 Update?

Python might be hard to install on Windows, but with the latest Windows 10 update, you can type python to find it in the Microsoft Store.

50,000,000 Twisted Downloads Can’t Be Wrong

Twisted’s release manager discusses decision to continue supporting Python 2.7.

Impostor at PyCon

“I’ve been working more with beginning programmers recently and have heard them talking about feeling like an impostor on a frequent basis, so this time when the feeling struck, I paid attention to it.”

How to Implement a Stack Data Structure in Python

In this tutorial, you’ll learn how to implement a stack in Python. You’ll see how to recognize when a stack is a good choice for data structures, how to decide which implementation is best for a program, and what extra considerations to make about stacks in a threading or multiprocessing environment.

Projects & Code



June 13, 2019

Python Atlanta

June 13, 2019


June 14 to June 17, 2019

PyCon CZ 2019

June 14 to June 17, 2019

PyCon Thailand

June 15 to June 17, 2019

Dash Conference

July 16–17 in NYC

Happy Pythoning!
This was PyCoder’s Weekly Issue #372.
View in Browser »


[ Subscribe to 🐍 PyCoder’s Weekly 💌 – Get the best Python news, articles, and tutorials delivered to your inbox once a week >> Click here to learn more ]

Planet Python

InterWorks Blog Roundup – May 2019

InterWorks Blog Roundup - May 2019

Last month on the blog, we saw more of our data and tech insights in full bloom. From a deep dive series examining Tableau Prep to looking ahead at some exciting conferences from our partners, the blog offering was diverse. With over 20 different content pieces that featured more than 15 distinct contributors from every corner of our organization, this blog roundup is sure to offer something meet your needs, no matter where you are on your data journey. Check out the list below to find the right resource for you:

News, Events and Culture

Tableau Tips, Tricks and Community

Tableau Vizzes

Understanding Tableau Prep and Conductor

Advance with Assist

Portals for Tableau

Podcast Your Data

UX and Design

The post InterWorks Blog Roundup – May 2019 appeared first on InterWorks.


Bound for Berlin: InterWorks Awaits Tableau Conference Europe 2019

Tableau Conference Europe

It’s nearly that time of year again! I am really looking forward to Tableau Conference Europe 2019 this month! Soon, I’ll be flying from London to Berlin, where I’ll get to see my European colleagues. The last time I saw them was in December when we had a snowball fight in Bulgaria, so I’m incredibly excited to reunite with them after such a long time.

Connecting with Friends Old and New

Tableau Conference is always such a great opportunity to catch up with the other attendees and meet new people! I love chatting with people and hearing about their experiences with Tableau. In fact, a few weeks ago, I led a training course in which some of the attendees said they were attending. Talking to them about the conference only served to increase my excitement, and I hope to catch up with them in Berlin.

I’ll also be seeing one of my old colleagues, Mark Corbridge, where he’ll be co-leading the breakout session From Tabl-oh.. to Tab-WOAH! that examines standardising account-management dashboards. Hopefully, I’ll get a chance to be in that session as I really enjoy seeing how other people have used Tableau to transform their reports.

Tableau Conference Europe

Sessions Designed for Every Tableau User

Attending the conference sessions are fantastic opportunities to learn. Plus, there are all sorts of different session types, so you can be sure to find the right fit for how you want to engage with Tableau: breakout, hands-on training, meet-up, etc. Plus, the hands-on sessions are each designated with a level, ranging from Jedi to brand-new user, so you can select the one that will best meet your needs.

The days at the conference are PACKED full of exciting things to see and do. My recommendation is to get to the keynotes early, so you can get a good seat with the best view. As far as the sessions are concerned, you can find the full listing of available options here. Some sessions I’m keen to attend are:

Next-Level Viz in Tooltip: Breakout Session

This will focus on teaching users how to customise and experiment with the Viz in Tooltip. It will feature different ways to make it interactive, multi-leveled, drill-able and more. I found the Viz in Tooltip component incredibly powerful when it came out, so I’m pretty excited to see what people have been doing with it since then.

Football Analytics with Tableau & Exasol: Breakout Session

I’m a big fan of Makeover Monday, and its co-creator, Eva Murray, is hosting this breakout. I’m really interested to see how she uses Exasol and Tableau in achieving some fantastic analytics.

Let’s Talk About Sets – Set (and Parameter) Actions II: Breakout Session

Ever since set actions came out, they have enabled me to do so much more in Tableau. Roadblocks I had previously experienced have been overcome with help from this feature. Now that parameter actions have come out in 2019.2, I’m really keen to see their impact and learn how to use them effectively.

Iron Viz: Keynote Session

Iron Viz is always what I’m most excited about. This is on Wednesday, 19 June, from 13:00 – 14:00. In this keynote session, you watch the finalists build their visualisations on stage within a 20-minute timeframe. It’s definitely something to witness!

InterWorks booth at Tableau Conference Europe 2018

Above: Some of the InterWorks team at our TC booth in 2018.

What We’re Most Excited About for Tableau Conference

This conference is very significant in the Tableau community, and it is a crucial way for Tableau users across the continent to connect, learn from one another and hear the new ways Tableau continues to pioneer in the data industry. Below are some takeaways from past attendees that demonstrate the lasting impact of attending TC, as well as some hopeful anticipation from first-timers:

  • Eugenia Kis | Meeting colleagues and people from the Tableau community is the most exciting for me. I love hearing of different use cases, what users are dealing with and what they are able to solve with Tableau!
  • Jess Walker | This will be my very first Tableau Conference, so I am honestly excited about the entire experience. After reading through the event line-up, I am most looking forward to the sessions on R and Python integrations with Tableau, establishing an analytics culture within an organization and the Data + Women meet and greet. I am currently supporting the new Data + Women chapter in the Netherlands, so I am jazzed to chat with other community members about their personal experiences with this awesome initiative.
  • René Mutzbauer | I’m very excited to attend my very first Tableau Conference! I can’t wait to catch up with people and meet new attendees. It’s a great chance to talk with others face-to-face about Tableau and how we can support them with our services and solutions.
  • Raphael Teufel | I am most excited about meeting the Tableau community again! It’s a great chance to share the expertise, knowledge and stories around our work with Tableau.
  • Nisa Marques | What I look forward to most is the possibility of meeting long-time friends and being able to make new ones. It amazes me how many people share my same enthusiasm and dedication for using data analysis and Tableau to empower people and do good. I also can’t wait to participate in the Data + Women and Viz for Social Good events. The keynotes, Devs on Stage session and the Iron Viz competition are always special, and on a personal note, it will be great to attend my first European conference.
  • Stefanie Niemzok | Honestly, everything I know about TC at this point is from stories my colleagues have told, some marketing videos and a few TC attendees’ blogs I’ve read. And it sounds pretty amazing. For my first Tableau Conference, I am definitely ready to spend three days with awesome, likeminded and creative problem solvers. Plus, I can’t wait to hear about upcoming features. The list of recent releases is sublime, so what could possibly come next? I’ll be working at the InterWorks booth and can’t wait to see you all. Come talk data!

See You in Berlin!

The days are full of things to do, the food is great, and Data Night Out is not to be missed. Drop by our booth to say hi and grab some freebies. We love meeting new people, and we hope to see you at TC!

The post Bound for Berlin: InterWorks Awaits Tableau Conference Europe 2019 appeared first on InterWorks.


PyCoder’s Weekly: Issue #371 (June 4, 2019)

#371 – JUNE 4, 2019
View in Browser »

The PyCoder’s Weekly Logo

Pointers in Python: What’s the Point?

Get a clearer understanding of Python’s object model and learn why pointers don’t really exist in Python. You’ll also cover ways to simulate pointers in Python without the memory-management nightmare.

Concurrency With Python: CSP and Coroutines

Nice overview of “communicating sequential processes” (CSP), a concurrency model similar to the notion of actor models, and how it can be implemented in Python.

Find a Python Job Through Vettery


Vettery specializes in developer roles and is completely free for job seekers. Interested? Submit your profile, and if accepted, you can receive interview requests directly from top companies seeking Python devs. Get started →
VETTERY sponsor

CNNs, Part 2: Training a Convolutional Neural Network

A nice walkthrough of deriving backpropagation for CNNs and implementing it from scratch in Python.

Rewriting the Slack Python SDK

The lead maintainer of the Slack Python SDK gives a retrospective about refactoring the current SDK and migrating it from Python 2 to Python 3.

Python’s Caduceus Syndrome

“Which of the two should the ecosystem tackle as a priority? Should they clean up all backwards compatibility first? (that would be PEP 594, ‘removing dead batteries from the standard library’) Should they focus on moving everyone over to the new features?”

PyPI Now Supports 2-Factor Auth

Protect your PyPI login with two-factor authentication using Time-based One-time Password (TOTP) app.

Language Summit Lightning Talks (Summaries)

Summaries of the lightning talks presented at the Python Language Summit at PyCon 2019.
A. JESSE JIRYU DAVIS • Shared by Ricky White

PSF Q2 2019 Fundraiser

Support the Python Software Foundation by donating in the quarterly donation drive. Your donations help fund Python conferences, workshops, user groups, community web services, and more.


Python 3.8 Performance News

“Today, code was checked in that substantially sped-up global lookups and builtin lookups. They are still slower than accessing locals and non-locals but only modestly so.”

Python Jobs

Senior Backend Engineer (Remote)


Lead Python Developer (Toronto, Canada)


SIPS Programmer (Madison, WI)

University of Wisconsin

Senior Python Developer (Malta, Europe)

Gaming Innovation Group

Senior Backend Python Developer (Remote)

More Python Jobs >>>

Articles & Tutorials

Algorithms as Objects

“We usually think of an algorithm as a single function with inputs and outputs. […] This is fine until one actually attempts to implement it as a single function; all the little details add up until you’re left with a gigantic, monolithic function.”
ANDY G • Shared by Python Bytes

Making HTTP Requests With Python

The “requests” library is the de facto standard for making HTTP requests in Python. It abstracts the complexities of making requests behind a beautiful, simple API so that you can focus on interacting with services and consuming data in your application. This course shows you how to work effectively with “requests”, from start to finish.

Build a Custom Python Distro in Minutes


Create a free account and: choose from our 500+ vetted packages, automatically pull in and resolve dependencies, install the distro in a virtual environment with a single command. Supports Python 3.6+ on Linux. Try now →

Object-Oriented Programming in Python vs Java

Learn about the practical differences in Python vs Java for object-oriented programming. By the end, you’ll be able to apply your knowledge to Python, understand how to reinterpret your understanding of Java objects to Python, and use objects in a Pythonic way.

Accuracy: From Classification to Clustering Evaluation

Accuracy is often used to measure the quality of a classification. It is also used for clustering. However, the scikit-learn accuracy_score function only provides a lower bound of accuracy for clustering. This blog post explains how accuracy should be computed for clustering.
STANISLAS MORBIEU • Shared by Stanislas Morbieu

Python Function Unpacking (*args and **kwargs)

15 quick examples to get a new Python coder comfortable with *args and **kwargs as parameters.
CARLOS BALDERAS • Shared by Carlos Balderas

Evangelizing Python For Business

“Five to 10 years ago, it might have been quite an uphill battle to try to bring Python into your organization to solve your business problems. With the rise of Python’s popularity in the Data Science world, you will have a much smaller hill to climb.”

Dataclasses and Attrs: When and Why

Python 3.7 introduced dataclasses, which design is based on the attrs library. This article shows the way the author uses dataclasses and attrs, why they think you should use both, and why attrs is still very relevant.

Python Chat Tutorial With Django and React

Discover how to build a Python chat application with Django and React using Stream Chat with this in-depth tutorial.
STREAM sponsor

Using Data Validation for Robust APIs

How using schema-based data validation tools can help you write more robust web APIs.

An Overview of Python’s Datatable Package

Datatable is a Python library for efficient multi-threaded data processing, with the support for out-of-memory datasets.

Introduction to Git and GitHub for Python Developers

What is Git, what is GitHub, and what’s the difference? Learn the basics of Git and GitHub from the perspective of a Pythonista in this step-by-step course.

Production Django Deployments on Heroku

How to simplify the process of deploying, maintaining, and scaling a production-grade Django app on Heroku.

Projects & Code


PyCon Israel 2019

June 3 to June 6, 2019

Python Miami

June 8 to June 9, 2019

PyCon CZ 2019

June 14 to June 17, 2019

Dash Conference

July 16–17 in NYC

Happy Pythoning!
This was PyCoder’s Weekly Issue #371.
View in Browser »


[ Subscribe to 🐍 PyCoder’s Weekly 💌 – Get the best Python news, articles, and tutorials delivered to your inbox once a week >> Click here to learn more ]

Planet Python