Do you know how a spreadsheet works? Can you imagine building one, from scratch, in Python? This talk will be a whirlwind overview of how to do just that. Based on the source code of Dirigible, a short-lived experiment in building a cloud-based Pythonic spreadsheet (now open-sourced, for the curious).
We’ll start from scratch, with a simple data representation for a two-by-two grid, and then gradually build up the functionality of our spreadsheet: - Cell objects, and the formula/value distinction - Evaluating cells, from simple arithmetic up to an Excel-like dialect - Building up the dependency graph, and the ensuing fun times with recursion (arg!) - Integrating custom functions and user-defined code.
Showing and explaining code examples, and alternating with live demos (don’t worry, I’ve done this before!)
And it’s all in Python! You’ll be surprised at how easy it turns out to be, when you go step-by-step, each building on the last… And I promise you’ll be at least a couple of moderately mind-blowing moments :)