How To Call A Function With Some Arguments, Or, Put Down The Metaclass And Step Back
"how to write library code which is both readable for the initial author, extensible for future maintainers, and easy to use for the application developer"
Python's considerable run-time flexibility can sometimes lead advanced programmers astray, to build incomprehensible abstractions out of metaclasses, context managers, dynamic proxies and decorators. It can also provide the temptation to build deep inheritance hierarchies with mysterious interactions both up and down the inheritance chain. And finally there is always the siren song of putting just a little too much global state into your module. All of these sins are committed in the name of the greater good; specifically, ease of use for the application programmer. But they almost always backfire eventually, and some sooner than others. In this talk, I will discuss how to write library code which is both readable for the initial author, extensible for future maintainers, and easy to use for the application developer by using simple idioms. I'll also talk about how to judiciously use some of Python's dynamic magic, without making any infernal pacts.
In the future, Glyph is perhaps best known for his leadership of a ragtag cabal of rogue humans, cyborgs and AIs to prevent the ADCN (Autonomous Devices Collective Network) and the UHN (United Human Nations) from escalating their cross-species conflict into a perpetual war. To date, however, his most prominent work has been the invention and continued development of the Twisted event-driven networking engine. Echoes of his future work to subvert the global State can be seen in his present work to reduce the amount of global mutable state within Twisted itself. Glyph has used Twisted to develop enterprise information management software, massively multiplayer online games, peer-to-peer networking software and eventually, with the help of his strong-AI allies, will use it to unite and heal a world at war.
6:15p - Check-in and mingle, with Pizza and Beer provided by our generous sponsor Yelp!
7:00p - Welcome and announcements
7:10p - 3-4 Lightning Talks (5 minutes each)
7:30p - Glyph speaks
8:20p - Q & A, followed by advanced mingling
9:30p - Doors close
Sam Bolgert: Testing for people who hate writing tests: tips and tricks for organizing and writing simple tests with pytest
Bryce Verdier: lambdas sell, but who's buying?
Simon Forman: Laws of Form
Please sign up to give a lightning talk at a future meetup.
Please take note of the important check-in details at Yelp
1. Doors open at 6:15pm to allow enough time for the check-in process. Before 6:15pm, please wait outside without blocking the building entrance.
2. Hy will be greeting downstairs and Yelp Security will be checking IDs upstairs. You will only be allowed into the event if we have your first and last name (that matches the name on your ID), so please update your meetup handle to reflect your first name and last name beforehand. You may alternatively input your full name here.
3. Since alcohol will be served at the event, we ask that any underage attendees RSVP directly to the meet up host.
4. Waiting list folks will be allowed into the event AFTER we admit all confirmed attendees.
Yelp is generously providing pizza, drinks, and beer in addition to their venue space.
As usual, looking forward to meeting you and feel free to ping me, Simeon or Hy with questions or suggestions.