-
Notifications
You must be signed in to change notification settings - Fork 5
Tutorials
The tutorials at PyCon Canada have a limited capacity of up to 50 people. If you're interested in attending one of the PyCon Canada tutorials, please sign-up in advance below. Note that you must already have a ticket to PyCon Canada 2016 to attend.
We will also be using this list to send out any tutorial requirements (things that you should have installed on your laptop before arriving at the tutorial).
pandas is a powerful data analysis library that can quickly churn insights from datasets, even massive ones. Learn how to get started quickly and see statistical summaries and pivot tables. We'll also see how easy it is to group data by categories and whip up quick exploratory charts so you can see what your data looks like.
To follow along, attendees will require a laptop with pandas, numpy, matplotlib and Jupyter packages pre-installed. Roberto recommends the Anaconda data science platform which provides an easy, cross-platform installation of all of these tools.
Attendees should also download the exercise data from the Ontario open data portal. We'll be exploring a public sector salary database. Download it here.
- Andre Erler
- Ashley Beattie
- Atul Bhardwaj
- Bhaag Marway
- Chee Won
- Chelsea Ma
- Darrell Aucoin
- Dean Wang
- Felix C
- Haris Bin Zahid
- Hyuck Won
- Jia Cheng Hu
- Joel Babcock
- Josh Morel
- Maryan H.
- Maxim Girbu
- Melanie Maddix
- Michael T.
- Mustafa S
- Peter Schwanke
- Raul S
- Rick Oliva
- Ryan Weir
- Sai Wai Maung
- Sam Bull
- Sophy O
- Tam Le
- Jon Deng
- Olivia Lin
- Naresh Vempala
- Jonathan Lin
- Liav Koren
- Vijay Shankar Venkataraman
- Luis Hernandez
- Bill Tubbs
Names in Python probably cause more subtle confusion than any other feature. Sometimes it's because people think they work just like variables in other languages. Often it's because people don't understand how exactly they work.
This tutorial, targeted at beginner and intermediate Python developers, will focus on how names and namespaces work in all the major language features that change them.
No software is required for this tutorial. Most of the 70 minutes will be explanation and demonstration with no time for hands-on exercises. However, feel free to have a Python REPL or Jupyter Notebook open to explore as you learn. The Jupyter Notebook I'll be using in the tutorial should be available afterwards.
- Vince Lau
- Melanie Maddix
- Peter Schwanke
- Mary McDonald
- Jenny Midwinter
- Riegie Jeyaranchen
- Rick Oliva
- Atul Bhardwaj
- Gary Tam
- Chelsea Ma
- Jia Cheng Hu
- Andre Erler
- Renee Chan
- Jon Deng
- Carol Tam
- Naresh Vempala
- Jonathan Lin
- Willie Ausrotas
- Luis Hernandez
Everyone knows that the earlier you fix a bug the cheaper and easier it is, this rings true for security bugs as well. This talk will argue that security needs to start in the development phase, and that the power to find most common security issues needs to be put into the developer's hands.
This talk will include hands on demo of how to find security flaws, how they happen in the first place, and most importantly, how to fix them. If you've written a fast, beautiful application that meets all your requirements but it isn't secure, then it's not the best. This talk will enable you to write the best code possible, by making your code secure.
- Ryan Wilson-Perkin
- Jean-Yves Razafy
- Bhaag Marway
- Sam Bull
- Sai Wai Maung
- Chelsea Ma
- Jason Cornell
- Liav Koren
Imagine writing a Python program that could just as easily process a few gigabytes of data locally or hundreds of petabytes in a distributed cluster without changing a single line of code? Too good to be true? It isn't, it's PySpark! In this tutorial we'll learn how to write PySpark that perform basic analysis and fancy machine learning and can run on your computer or thousands of servers.
See instructions at https://github.com/msukmanowsky/pyconca-2016-spark-tutorial.
- Andre Erler
- Ashley Beattie
- Atul Bhardwaj
- Chelsea Ma
- Darrell Aucoin
- Dean Wang
- Haris Bin Zahid
- Jenny Midwinter
- Josh Morel
- Mary McDonald
- Maryan H.
- Melanie Maddix
- Mustafa S
- Peter Schwanke
- Rick Oliva
- Riegie Jeyaranchen
- Ryan Weir
- Sai Wai Maung
- Sam Bull
- Vince Lau
- Da Kuang
- Hyuck Won
- Carol Tam
- Naresh Vempala
- Vijay Shankar Venkataraman
Tesseract is an amazing library for doing Optical Character Recognition on printed text. In this tutorial learn how to get started with (Tesseract and Flask libraries) and integrate them for creating a simple web application. We will also see how easy it is to customize the Tesseract library for different cases.
To follow along, attendees will require a laptop with Python (>=2.7) and the Python packages Flask and Pillow installed.
For OCR below are separate instructions for Mac and PC:
###Mac:
Run following command in terminal:
- brew install automake libtool jpeg libtiff libpng leptonica tesseract ghostscript
- Ensure the following path exists first: /usr/local/Cellar/tesseract/3.04.01_2/share
- Add the below line to your .bash_profile:
- export TESSDATA_PREFIX="/usr/local/Cellar/tesseract/3.04.01_2/share"
- Run “tesseract - v” to ensure that Tesseract installed successfully
###PC:
- Download from here: https://code.google.com/archive/p/pytesser/downloads
- Extract the .zip file and copy the folder to your \lib\site-packages folder. Most probably, this was located at: C:\Users\UID\AppData\Local\Continuum\Anaconda2\Lib\site-packages
- If you are having trouble finding this location, you can do the following:
- Start python
- import site
- site.getsitepackages()
- Rename folder you copied from pytesser.v.1.0 etc to just pytesser
- Open the folder (pytesser) and add a init.py (you can leave it blank)
- Open pytesser.py and change the path tesseract_exe_name so it points to the location of tesseract.exe (for the above site-packages location, you would use): r'C:\Users\UID\AppData\Local\Continuum\Anaconda2\Lib\site-packages\pytesser\tesseract'
- You should now be able to run this in python: import pytesser
- Chelsea Ma
- Ibrahim Ahmed
- Maryan H.
- Sai Wai Maung
- Umar Ahmed
- Jia Cheng Hu
- Jon Deng
- Jonathan Lin
- Cesar Osorio
- Vijay Shankar Venkataraman
In this tutorial, we will build a real-time machine learning web app using Python and MLDB.ai. We will use MLDB's Tensorflow integration to use a deep learning model to embed images in a high dimensional conceptual space, and use that representation as features to do transfer learning. This will allow us to build a real-time image classification endpoint.
The companion repo for this tutorial is here: https://github.com/mldbai/pyconca-2016 Screencast of the tutorial: https://www.youtube.com/watch?v=CN5Vd_7iyYk
The repo contains a built version of the web app along with slides.
To be able to follow along the tutorial, you have two options:
-
You can use the free hosted version of MLDB: https://mldb.ai/#signup. Please create an account and try to launch an instance before the tutorial.
-
Install MLDB on your laptop. We provide a Docker image for Linux and VirtualBox OVAs for MacOs and Windows. Follow the instructions here to install a trial of MLDB Enterprise edition: https://docs.mldb.ai/doc/#builtin/Running.md.html#packages. It's a big download so don't wait to get it on the conference wifi. You'll also need a free activation code that you can get on the mldb.ai website. Please make sure you version of MLDB is activated and try to connect to it prior to the tutorial.
- Ashley Beattie
- Atul Bhardwaj
- Bhaag Marway
- Chee Won
- Chelsea Ma
- Darrell Aucoin
- Jenny Midwinter
- Jia Cheng Hu
- Josh Morel
- Joshua Weissbock
- Maryan H.
- Matthew Mirvish
- Myles Braithwaite
- Rick Oliva
- Riegie Jeyaranchen
- Sai Wai Maung
- Sam Bull
- Liav Koren
- Vince Lau
- Da Kuang
- Jon Deng
- Steven Seguin