For several years it's been possible to have a Python terminal in the browser. pythonanywhere.com was probably among the first to provide this. More recently, mybinder.org offered a full Jupyter experience without the need to install anything locally. All these technologies had a JavaScript terminal in the browser, and a backend able to run Python code, that was costly to host.
Just few days ago it was announced a new paradigm to the game: JupyterLite. A JavaScript terminal, powered by WebAssembly (using Pyodide). The idea is similar for the terminal, but there is no need for a backend, since Python is executed in the client browser using WebAssembly. You can deploy a 100% static site, and your users will be able to execute Python code. It also can provide complex dependencies like numpy and pandas.
You can read more in this blog post: https://blog.jupyter.org/jupyter-everywhere-f8151c2cc6e8 and you can try it in numpy.org. It takes a while to execute the first cell, while it needs to download and load all files internally required, but after that wait, it's fast and seems to work quite nicely.
Just few days ago it was announced a new paradigm to the game: JupyterLite. A JavaScript terminal, powered by WebAssembly (using Pyodide). The idea is similar for the terminal, but there is no need for a backend, since Python is executed in the client browser using WebAssembly. You can deploy a 100% static site, and your users will be able to execute Python code. It also can provide complex dependencies like numpy and pandas.
You can read more in this blog post: https://blog.jupyter.org/jupyter-everywhere-f8151c2cc6e8 and you can try it in numpy.org. It takes a while to execute the first cell, while it needs to download and load all files internally required, but after that wait, it's fast and seems to work quite nicely.
Medium
Jupyter Everywhere
Easily embed a console, a notebook, or a fully-fledged IDE on any web page.
🔥2👍1
A short list of movie classics about free software, computers and data:
2001: A Space Odyssey (1968)
TRON (1982)
WarGames (1983)
The Matrix (1999)
Pirates of Silicon Valley (1999)
Revolution OS (2001)
Antitrust (2001)
The Code (2001)
CitizenFour (2014)
The Imitation Game (2014)
More suggestions? Add a comment.
2001: A Space Odyssey (1968)
TRON (1982)
WarGames (1983)
The Matrix (1999)
Pirates of Silicon Valley (1999)
Revolution OS (2001)
Antitrust (2001)
The Code (2001)
CitizenFour (2014)
The Imitation Game (2014)
More suggestions? Add a comment.
🔥1
Sometimes bash can be a pretty decent analytics tool. For example, this oneliner command outputs the top 10 pandas contributors in 2018 based on the git log:
$ git log --pretty=format:%ci,%an | grep "^2018-" | cut -d"," -f2 | sort | uniq -c | sort -nr | head -n10
346 jbrockmendel
216 Tom Augspurger
103 gfyoung
99 Joris Van den Bossche
96 Jeff Reback
89 Matthew Roeschke
78 Marc Garcia
62 William Ayd
51 topper-123
50 h-vetinari
$ git log --pretty=format:%ci,%an | grep "^2018-" | cut -d"," -f2 | sort | uniq -c | sort -nr | head -n10
346 jbrockmendel
216 Tom Augspurger
103 gfyoung
99 Joris Van den Bossche
96 Jeff Reback
89 Matthew Roeschke
78 Marc Garcia
62 William Ayd
51 topper-123
50 h-vetinari
🔥3👏3👍1
Seems like the most popular topic at PyCon US is PyScript, a WebAssembly framework to be able to use Python in HTML, as it's commonly done in JS using <noscript> tags. You can see a hello world example here.
Personally, I don't see the value of trying to use Python for everything. Python is an amazing technology for many use cases. But there are many other applications that could better be done with other languages, in this case JavaScript.
Some other examples are Cython, a brilliant technology to transpile Python-like code to C, and compile it. But therr are probably better languages to do that. Another example is MyPy, to bring type annotations and validation to a previously dynamically typed language like Python. Making the syntax probably too complex for the value it adds. And there are many other examples.
I wonder if it'd make more sense to use Rust, Julia, Go, Lua... for many of these use cases Python is trying to conquer. And focus on making Python better for what it was good initially (adding multithreading, better packaging, smarter handling of single type lists, just in time compiling...).
Personally, I don't see the value of trying to use Python for everything. Python is an amazing technology for many use cases. But there are many other applications that could better be done with other languages, in this case JavaScript.
Some other examples are Cython, a brilliant technology to transpile Python-like code to C, and compile it. But therr are probably better languages to do that. Another example is MyPy, to bring type annotations and validation to a previously dynamically typed language like Python. Making the syntax probably too complex for the value it adds. And there are many other examples.
I wonder if it'd make more sense to use Rust, Julia, Go, Lua... for many of these use cases Python is trying to conquer. And focus on making Python better for what it was good initially (adding multithreading, better packaging, smarter handling of single type lists, just in time compiling...).
Pynoscript.net
PyScript is a platform for Python in the browser.
👍5
Interesting benchmark on array computing in the browser: https://jott.live/markdown/wasm_vector_addition
One of the most interesting talks I watched in a long time. About the imminent financial collapse, the nonsense of how the software industry works, how both are connected, and what as a software professional (in particular a manager) you can do about it.
Be ready for 1h20m of bad news. 😉
https://m.youtube.com/watch?v=oWSEb0_2hb0
Be ready for 1h20m of bad news. 😉
https://m.youtube.com/watch?v=oWSEb0_2hb0
YouTube
The Great Architecture Restructuring, Zurich, June 2022
The economic shock of 2020 will have profound implications for years to come. Many businesses will not survive, and even those businesses that do will face intense demands to restructure their systems and organization. However, merely reducing staff will…
Interesting article about databases vs dataframes. A lot of work is being done in this area besides Modin (the authors of the article). For example, Ibis, polars or datafusion.
https://ponder.io/pandas-vs-sql-food-court-michelin-style-restaurant/
https://ponder.io/pandas-vs-sql-food-court-michelin-style-restaurant/
Ponder
Pandas vs. SQL - Part 1: The Food Court and the Michelin-Style Restaurant
This is the first in a series of blog posts that contrast Pandas dataframes with databases (or equivalently, SQL). Both dataframes and databases are, in fact, old ideas, dating back multiple decades. Databases opt for scalability, robustness, and efficiency…
Looks like I'll be the release manager for pandas 1.5. Expect it in around a month
👍4
I had pending reinstalling my system for couple of years, but I finally had the time. Those are the main updates:
Fedora -> EndeavourOS (Arch)
Mate -> KDE Plasma
Bash -> zsh
Vim -> nvim
Each of the new software seems like a very good improvement compared to the previous.
Fedora -> EndeavourOS (Arch)
Mate -> KDE Plasma
Bash -> zsh
Vim -> nvim
Each of the new software seems like a very good improvement compared to the previous.
❤1👍1
datapythonista
Looks like I'll be the release manager for pandas 1.5. Expect it in around a month
The release candidate for pandas 1.5.0 is now ready to try, and we plan to release the final version in around two weeks. For more detailed info check the official announcement in the @pandas_dev channel.