£480 – £1,917.59

Higher Performance Python

Event Information

Share this event

Date and Time

Location

Location

Prospero House

241 Borough High Street

London

SE1 1GA

United Kingdom

View Map

Refund Policy

Refund Policy

Refunds up to 7 days before event

Eventbrite's fee is nonrefundable.

Event description

Description

This is a 1 day on-site course held in Central London near to London Bridge Station in a small group of circa 10 people mixing numeric scenario solving, new high performance tools and processes to explore ways to help you and your team be more performant, and to write more performant solutions with Python. This is particularly focused on scientific Python.

This is the first release in 3 years of Ian's former Higher Performance Python class, it has been significantly updated alongside Ian's work creating the 2nd edition of his High Performance Python book with Micha Gorelick for O'Reilly (due May 2020). This book is not a prerequisite for this class but will make for excellent reading for you.

These testimonials are from students in another of Ian's 2019 classes - "Successfully Delivering Data Science Projects" (since Ian hasn't run his Higher Performance Python class in several years!):

"One of the highlights from Ian’s Successfully Delivering Data Science Projects course was being introduced to the concept of a specialised project specification document. This provides a systematic framework to directly tackle numerous problems I have experienced when trying to move a project beyond an initial prototyping stage. I have now applied my own tailored specification document at my organisation and it immediately surfaced critical questions and issues that otherwise would not have been realised for months." - Thomas Brown, Data Scientist at aire.io

"After attending the course I can identify and communicate to the project team and client the uncertainties of the project efficiently. I am using the techniques covered on the course to write project initiation documents and put in place the necessary processes to reduce uncertainty. The course was very engaging and I was very happy to learn from Ian's experience to ensure a successful delivery on all future projects." - Dani Papamaximou, Data Scientist at Arcadia

"I found the day extremely useful. My aim was to understand the gap between software delivery and data science and to try to bridge that gap. Looking through the lens of a large group of senior data scientists gave me perspective to understand which parts of the standard agile approach can be applied in data science, what to avoid, and when and how to collaborate with the wider team. The ideas and learning we picked up from this course are being used at Seatfrog right now to deploy features into production." - Dirk Stewart, CTO Seatfrog

This Higher Performance Python course is aimed at any Pythonic scientific or data science developer who:

  • Feels that their numeric code should run faster
  • Wants to explore ways of solving problems faster in Pandas and Dask (along with getting an opinion on Modin, Vaex and cuDF)
  • Knows that effective profiling to identify slow-spots is key to effectively developing higher performance solutions - if only they knew of an efficient process for profiling (answer: line_profiler and PySpy!)
  • Wants to see how Numba can quickly speed up their Numpy code with hardly any code changes
  • Wishes that they could use unit testing in their process but has run into problems - we'll look at at a clear workflow that supports Test Driven Development along with profiling and code optimisation

During the course we'll:

  • Work through Best Practice to make you and your team "highly performant scientific developers"
  • Review my best tip for being "performant and trusted over the long-term" (it involves unit tests!)
  • Learn to profile to understand where code is slow so you can focus your efforts efficiently
  • Review approaches to speeding up numerical code using better algorithms, numpy and Numba
  • Learn to parallelise problems using Joblib and to cache effectively
  • Figure out how to make Pandas code faster on a single machine by using better approaches, compiled functions and all of your CPUs
  • Review Pandas alternatives to understand their strengths and weaknesses
  • Work through various exercises designed to get you thinking about all aspects of higher performance development
  • Learn how to use unit tests to support higher performance refactoring - get speed without sacrificing correctness
  • Review the take-home homework that you can use back in the office to further refine your understanding

After the course you'll:

  • Get an invite to a complimentary 1 hour group retrospective call where we'll discuss progress and problems, we'll focus on untangling any blockers so that you're working effectively back in the office
  • Have take-home code to demonstrate faster approaches to common problems with your team
  • Have optional home-work to deepen your understanding
  • Have gained answers to the questions you arrived with, so your personal blockers will be resolved
  • Have access to our Slack channel to continue the conversation with class mates and to download any shared material - you'll also see the discussions from past versions including the post-course tips that were shared by previous students and you can continue to talk with all students through the Slack
  • Receive a Certificate of Professional Development
  • Optionally come to the pub directly after the training to decompress and unwind - the first drink (non-alcoholic or your preference) is on me

You have some prior experience with Python and data science tools like Jupyter Notebooks and Pandas. You might be a scientist, data scientist or system engineer. You've experienced slower Python solutions - particularly with numeric calculations - and you want faster options for you and your team.

This course is not aimed at first-time Python users who want to learn about the language. This is aimed at practitioners who can code their own solutions on single machines using tools like Pandas and Numpy. We won't be looking at traditional Big Data tools (no Spark, no Hadoop) but we'll discuss clustered Dask a little.

"Ian's Software Engineering for Data Scientists course provides an excellent overview of best practices with focus on testing, debugging and general code maintenance. Ian has a wealth of experience and also makes sure to keep on top of the latest tools and libraries in the Data Science world. I would especially recommend the course to Data Science practitioners coming from an academic rather than software engineering background." - LibertyGlobal, Mirka

You'll need your laptop with Anaconda installed with Python 3.7+. I'll check-in with you before the course to make sure you have everything you need installed. You can also install before the class by arriving earlier.

Note that Ian's "High Performance Python (2nd edition)" book with O'Reilly is optional for this course, the material here is related to the book. Reading the book before or after the course is encouraged but not required. If you bring a paper copy of the book I'd be pleased to sign it for you and your team!

If you have questions please contact Ian@MorConsulting.com. Ian's blog has a long list of past public talks and videos. Ian also has a training email announce list if you'd like advance notice of future events. Read many glowing testimonials about Ian Ozsvald's work with past clients on LinkedIn. Ian also writes a "Thoughts and Jobs" email aimed at Data Scientists and Data Engineers every 2 weeks containing tips, recommendations and new relevant jobs.

Location:

Prospero House is a dedicated training facility 5 minutes walk south of London Bridge station, opposite Borough tube station (on the Northern Line). It is easily reached from Kings Cross, Paddington and Victoria. The venue has tea and coffee and snacks all day, light continental breakfast for early arrivals, natural daylight and air conditioning.

Lunch is included in the price, options include vegetarian/meat/fish and other diets may be accommodated (please contact me if you have dietary requirements). I've visited the venue and eaten their lunch - this location is ideal for a great day's training.

Refund and change policy:

Please be sensible when booking any accommodation or travel and get refundable tickets. In the unlikely event that we have to cancel this event we are not responsible for any expenses you've incurred. Make sure your hotel or travel is refundable, just in case.

Eventbrite offers you a 100% refunded cancellation up to 7 days before the event (I'd happily talk to you about why you need to cancel to see if we can figure something out). I can move a ticket to another colleague, just get in touch. In the extremely unlikely event that we have to cancel the course then you will be offered either a 100% refund or the option of moving attendance to another workshop. Mor Consulting Ltd and Ian Ozsvald are not liable for any other costs incurred including travel and accommodation.

Share with friends

Date and Time

Location

Prospero House

241 Borough High Street

London

SE1 1GA

United Kingdom

View Map

Refund Policy

Refunds up to 7 days before event

Eventbrite's fee is nonrefundable.

Save This Event

Event Saved