Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Designing a Pythonic Interface

EuroPython Conference via YouTube

Overview

Learn how to design a Pythonic interface for complex systems in this conference talk from EuroPython 2016. Explore the challenges and design decisions faced when creating an ORM-like library for Elasticsearch. Dive into the development of elasticsearch-dsl, a more user-friendly Python interface for Elasticsearch that maintains access to all underlying query language features. Discover key principles such as hiding complexity, extracting relevant code, being explicit, and maintaining consistency. Gain insights on creating interactive, well-documented, and safe APIs. Understand the importance of iterative building, proper commenting, and thorough testing in library design. Examine real-world examples and decision-making processes to enhance your skills in creating Pythonic interfaces for complex systems.

Syllabus

Introduction
Motivation
Principles
Disclaimer
API
API is vague
Hiding complexity
Extracting only relevant code
Be explicit
Dont hide
Leakiness
Be Familiar
Consistency
Exceptions
Be friendly
Python is interactive
Representation docstrings
Enable iterative build
Commenting
Safety
Failure
Testing
API Code
Decision Making
No Code is Perfect
Questions

Taught by

EuroPython Conference

Reviews

Start your review of Designing a Pythonic Interface

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.