The Parsons community hosts regular trainings, most often as part of our biweekly Parsons Parties. A list of past trainings is below. Please request re-runs of these trainings, or new trainings, if there’s something you would like to learn about.
Getting Started With Parsons
Intro to the command line, Python virtual environments, version control with Git, plus how to install Parsons.
Guide
Recording
Introduction to Python Programming
Intro to basic Python programming using Parsons as an example. Covers Python data types, if statements, for loops, and functions.
Guide / Code Gist
Recording
ETL Best Practices Part I
Introduces the basic concepts behind the Extract, Transform and Load (ETL) process. Walks through writing a basic Parsons script that moves data between one platform (Mobilize) and another (Google Sheets).
Guide
Recording
ETL Best Practices Part II
Introduces more advanced concepts such as data warehouses, platforms like Civis, and the use of log tables and schedulers to make your workflow easier to run and debug.
Guide
Recording available upon request.
All About Authentication
Walk through authenticating your connectors in Parsons, including getting credentials from third party platforms and setting them as environmental variables. Learn about what Parsons is handling behind the hood, such as making API calls and finding authentication info set in environmental variables.
Guide
Recording
Scheduling Scripts
Schedule your Parsons (or other) script to run automatically with Google Cloud Platform.
Guide
Recording
Introduction to Contributing
Learn how to contribute to Parsons, and other open source projects. Covers issue trackers and picking tasks, automated testing in Python, and the basic git + Github workflows.
Guide
Recording
Debugging Your Python/Parsons Scripts
Covers: common Python errors, understanding and reading stack traces, printing vs logging, and debugging problems in dependencies. Stay tuned for a follow-up mini training on how to debug using integrated development environments like PyCharm and Visual Studio!
Recording
Software Testing In Python
This training covers the basics of testing, including introducing key concepts like unit tests vs integration tests, staging vs production, and mock data/data factories.
Recording
Intro to Pull Request Review
How do pull request reviews work? What kinds of things are we looking for when we review, and why? Who can review pull requests (spoiler: anyone!)? This training covered general skills like how reviews work in Github, and how continuous integration works in Github Actions, through the lens of learning how Parsons in particular does PR review.
Recording
Guide
Learning About OAuth
Recording
Intro to Python Data Classes
This training looked at the pros and cons of using different data formats in Python, comparing and contrasting working with JSON, using objects like Parsons Tables, and using Python's inbuilt Dataclasses. There was also a group coding exercise where we worked together to add dataclasses to a Parsons connector.
Recording
Using Parsons and Docker (Demo Day #1)
Recording
Web Development 101 With Django
Get a little taste of web development in Python as we work through the first part of the world famous Django tutorial.
Recording
Infrastructure as Code (Panel)
Three professionals who use IaC (Infrastructure as Code) tools to manage data workflows for their progressive organizations talked about what tools they use and why, as well as demoing their IAC setup. Tools covered included CloudFormation, Terraform, Pulumi, Jinja, Docker, and more.
Recording
Making Decisions With Less data Using Bayesian A/B Testing
A/B testing is a great way to try and see what messages get the best responses, but you often may need thousands of tests to get good statistical results. What do you do when you're working for a campaign with a smaller email list than that? By using Bayesian analysis, you can start making informed decisions even with much smaller sets of data.
Recording
Making a Generalized Parsons Operator: One Script to Run Multiple Parsons Connectors
The Parsons Operator is a script developed to run multiple Parsons connectors. It’s part of TMC’s "scripts as building blocks" approach to data syncing infrastructure, where redundancies across various syncs are simplified into a single script. This training discusses the reasonings and maintenance advantages behind this design decision while running through some example workflows (orchestrated in Civis).
Recording
The Parsons community also collaborates with organizations to provide dedicated trainings. We have worked with America Votes, DigiDems, Re:Power and Generation Data to provide trainings for their communities. If your community is interested in a Parsons training, let us know!
In the Fall of 2023, a group of Parsons community members went through a free, interactive course on DBT fundamentals together. We got together five times over the course of two months. All sessions were recorded, and you can follow along here: session 1, session 2, session 3, session 4, and session 5.
Description: There are a lot of tools out there for collecting, analyzing, and using data! How do progressive organizations stitch these tools together into effective workflows? How can you decide which tools are right for your organization? How can you even keep track of them all?! Come listen to engineering and data specialists from The Movement Cooperative, Community Tech Alliance, MoveOn, and the Working Families Party as they describe how they use different tools to achieve their data goals.
If you missed the panel, or if you just want to review, you can now access the recording at this link. We’ve also got some slides for you: Shauna Gordon-McKeon’s intro slides, Ilona Brand’s on Redshift, Fivetran and Redash, brittany bennett’s on dbt and hex, Michael Fisher’s on Airbyte, Big Query and Google, and Soren Spicknall’s on Redshift and Civis. Plus we've got a guide for you on evaluating data tools.
There were a lot of great questions asked during the panel, including some we didn’t get to, which our panelists graciously provided answers to afterwards. A list of all questions is in this doc.
In addition to trainings, our Parsons Parties also include informal panels and discussions. These tend not to be recorded, so that community members who prefer not to be recorded can still participate freely. Topics we have discussed include:
growing a career in progressive tech & data (discussion focused about half on getting started in progressive tech, and half on how experienced community members could get to a more senior level)
best practices for progressive tech & data, and how we can do a better job of getting orgs and vendors to adopt them
the pros and cons of contracting in this space, and how to get started doing it
campaign tech: what’s new this cycle, what’s no longer relevant and what still is, and how we can support each other to skill up