DiscoverThe Real Python PodcastPySheets: Spreadsheets in the Browser Using PyScript
PySheets: Spreadsheets in the Browser Using PyScript

PySheets: Spreadsheets in the Browser Using PyScript

Update: 2024-11-01
Share

Description

What goes into building a spreadsheet application in Python that runs in the browser? How do you make it launch quickly, and where do you store the cells of data? This week on the show, we speak with Chris Laffra about his project, PySheets, and his book “Communication for Engineers.”


As a software engineer, Chris has worked at IBM, Google, Uber, and several financial institutions. He speaks about developer productivity and communication skills as an engineer. We begin our conversation by digging into his background, his approach to building engineering teams, and strategies for improving communication.


Chris’ idea for PySheets is to have Excel inside Python with everything running locally in your browser. He was inspired by the success of Jupyter Notebooks but wanted to develop a tool more suited to a spreadsheet’s non-linear graph structure.


PySheets is built to run locally in the user’s browser, taking advantage of PyScript. We discuss finding the right solution for storing data in the browser and developing a graphic toolkit to create the UI. Chris also shares the novel method he found to get the interface up and running while the larger assets are loading.


This episode is sponsored by Sentry.



Course Spotlight: Understanding Python’s Global Interpreter Lock (GIL)


Python’s Global Interpreter Lock, or GIL, is a mutex (or a lock) that allows only one thread to hold the control of the Python interpreter at any one time. In this video course, you’ll learn how the GIL affects the performance of your Python programs.



Topics:



  • 00:00:00 – Introduction

  • 00:02:25 – Background with building engineering teams

  • 00:08:43 – Communication for Engineers book

  • 00:16:17 – What do customers want and experiences at IBM

  • 00:24:28 – Starting the development of PySheets

  • 00:27:19 – Working with the DOM

  • 00:29:41 – Success of Jupyter notebooks

  • 00:35:46 – Sponsor: Sentry

  • 00:36:52 – Little Toolkit for PyScript

  • 00:43:24 – Finding funding

  • 00:46:58 – Building a product before selling

  • 00:52:27 – Video Course Spotlight

  • 00:53:46 – Finding the right data storage in IndexedDB

  • 01:01:57 – Exploring the trial page and extensibility

  • 01:08:26 – Contributing to the project or forking

  • 01:11:56 – What are you excited about in the world of Python?

  • 01:16:20 – What do you want to learn next?

  • 01:17:25 – How can people follow your work online?

  • 01:18:05 – Thanks and goodbye


Show Links:



Level up your Python skills with our expert-led courses:


Support the podcast & join our community of Pythonistas

Comments 
loading
00:00
00:00
1.0x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

PySheets: Spreadsheets in the Browser Using PyScript

PySheets: Spreadsheets in the Browser Using PyScript