Home >Backend Development >Python Tutorial >Jupyter Notebooks Are Like Spreadsheets. Learn Both.
Spreadsheets are "the dark matter of business software": they're everywhere, they're invisible, and they hold everything together. Business and finance run on spreadsheets; no other software tool has empowered so many people to build solutions to so many different problems. In this context, you have to understand any assertion that "Jupyter is the new Excel" as intentionally sensational.
Jupyter notebooks do, however, share some key similarities with Excel spreadsheets. Notebooks are ubiquitous in scientific and statistical computing, in the same way that spreadsheets dominate business operations and front-office finance. In this post, we'll explore some philosophical and practical similarities and differences between the two tools in an attempt to explain why both have such passionate fans and critics.
Both Excel spreadsheets and Jupyter notebooks are criticized by software engineers as not being "real software". Aside from the obvious limitation that both artifacts require another program to run, they also make it difficult to adhere to software engineering best practices:
Microsoft's efforts to integrate Python into Excel won't significantly erode Jupyter's dominance in scientific and technical computing. Spreadsheets lack a natural narrative structure, which makes them less suitable for education and reproducible research. Moreover, the "open science" community will never adopt a closed-source tool built by an American tech giant.
Tools and "best practices" will emerge to mitigate the operational disadvantages of Jupyter notebooks3, just as they have for spreadsheets. Most front-office users will ignore such guidelines4, engendering ongoing tension with IT departments. Having witnessed how things turned out with Excel, many IT departments view supporting Jupyter like opening a Pandora's box of security vulnerabilities and maintenance headaches.
Both platforms will survive into the foreseeable future. Neither will supplant the other because they target user bases with fundamentally different skill sets. People working at the intersection of quantitative modeling and business decision-making will continue to need familiarity with both tools.
Use the tool that best fits into the culture of the organization in which you're solving problems. There are situations where technical requirements will force you to use one tool over the other, just as there are organizations that will only allow you to use one tool or the other. If you work in an Excel-dominated field and do need Python's capabilities, in my experience it's easier to read and write Excel spreadsheets from Python code than it is to get Excel users to open a Jupyter notebook.
Software engineers and IT departments worldwide will continue to look down on Jupyter notebooks, just as they have done with spreadsheets for decades. The fact that MBA-types don't use Jupyter notebooks makes it easier for IT to enforce draconian restrictions on their use. Ironically, many front-office users may only gain access to Python once Microsoft finishes integrating it into Excel.
Some holdouts still use MATLAB, R, SPSS, or SAS, but hefty licensing fees will continue to push users towards free and open-source alternatives over time. Capturing the education market is a key part of the business strategy for firms like MathWorks, but it's unlikely they'll hold on forever. ↩
Tools like nbdime can help with version control for Jupyter notebooks, but using them adds another layer of complexity. ↩
Tools like papermill aim to streamline running notebooks in production environments. Cloud providers also support creating pipelines involving Jupyter notebooks in production. ↩
How many people have even heard of the FAST standard for building spreadsheets? ↩
The above is the detailed content of Jupyter Notebooks Are Like Spreadsheets. Learn Both.. For more information, please follow other related articles on the PHP Chinese website!