river
CPython
Our great sponsors
river | CPython | |
---|---|---|
17 | 1302 | |
4,715 | 59,047 | |
2.0% | 1.7% | |
9.2 | 10.0 | |
4 days ago | 2 days ago | |
Python | Python | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
river
-
🔍Underrated Open Source Projects You Should Know About đź§
River is a Python library for online machine learning. Online machine learning can dynamically adapt to new patterns in the data, or when the data itself is generated as a function of time, e.g., stock price prediction, content personalization.
- Ask HN: What Underrated Open Source Project Deserves More Recognition?
-
Unexpected Expected Thriller: A Tale of Coding Curiosity
Today, I'm going to take you on a thrilling coding adventure inspired by a LinkedIn code snippet, where I tangled with FastAPI, River, Watchdog, and Tenacity. Ready? Buckle up!
-
Elevate Your Python Skills: Machine Learning Packages That Transformed My Journey as ML Engineer
Complimentary: river and skorch
-
What are your favorite tools or components in the Kafka ecosystem?
River - https://github.com/online-ml/river (Online machine learning, best used with Bytewax for Kafka integration)
-
Show HN: Want something better than k-means? Try BanditPAM
Hey, great work. Do you think this algorithm would be amenable to be done online? I'm the author of River (https://riverml.xyz) where we're looking for good online clustering algorithms.
-
Python's “Disappointing” Superpowers
If you don't know Rust, but know Python, you can install Python libraries written in Rust with pip. Like, pip install polars or pip install robyn. In this case you follow the two bottom links. But then you don't write your own libraries and stuff so.. I guess that's not what you want.
But, if you want to learn Rust, you probably wouldn't start out with pyo3. You first install Rust with https://rustup.rs/ and then check out the official book, and the book rust by example, that you can find here https://www.rust-lang.org/learn - and maybe write some code on the Rust playground https://play.rust-lang.org/ - then, you use pyo3 to build Python libraries in Rust, and then use maturin https://www.maturin.rs/ to build and publish them to Pypi.
But if you still prefer to begin with Rust by writing Python libraries (it's a valid strategy if you are very comfortable with working with multiple stacks), the Maturin link has a tutorial that setups a program that is half written in python, half written in Rust, https://www.maturin.rs/tutorial.html (well the pyo3 link I sent also has one too. You should refer to the documentation of both, because you will use the two together)
After learning Rust, the next step is looking for libraries that you could leverage to make Python programs ultra fast. Here https://github.com/rayon-rs/rayon is an obvious choice, see some examples from the Rust cookbook https://rust-lang-nursery.github.io/rust-cookbook/concurrenc... - when you create a parallel iterator, it will distribute the processing to many threads (by default, one per core). The rust cookbook, by the way, is a nice reference to see the most used crates (Rust libraries) in the Rust ecosystem.
Anyway there are some posts about pyo3 on the web, like this blog post https://boring-guy.sh/posts/river-rust/ (note: it uses an outdated version of pyo3, and doesn't seem to use maturin which is a newer tool). This post was written by the developers of https://github.com/online-ml/river - another Python library written in Rust
-
[D] How do you deal with covariate shift and concept drift in production?
Have a look at here: https://github.com/online-ml/river
-
Integration test: Complexity of privacy-preserving bird call bio-sensor for distributed ecological monitoring?
Some of the technologies which could be integrated include differential privacy, distributed online machine learning, misinformation resilience and multi-party computation, all within the context of smart contracts and bioinformatics.
CPython
-
Open source at Fastly is getting opener
Through the Fast Forward program, we give free services and support to open source projects and the nonprofits that support them. We support many of the world’s top programming languages (like Python, Rust, Ruby, and the wonderful Scratch), foundational technologies (cURL, the Linux kernel, Kubernetes, OpenStreetMap), and projects that make the internet better and more fun for everyone (Inkscape, Mastodon, Electronic Frontier Foundation, Terms of Service; Didn’t Read).
-
C++ Safety, in Context
In my understanding, no. I believe it was bpo-4489 [1], and I couldn't find a matching advisory from the PSF's database [2] which should contain all historical advisories as well.
- The GIL can now be disabled in Python's main branch
-
Eloquent JavaScript 4th edition (2024)
How do you mean? CPython uses karatsuba's for large numbers which should be asymptotically fast
https://github.com/python/cpython/blob/d864b0094f9875c5613cb...
-
Top Paying Programming Technologies 2024
24. Python - $78,331
-
What is really an API? Examples, Code + History
a. Setting Up: Make sure you have Python and pip (package installer) installed. If you do not have Python, you can install the latest version from the Python ecosystem here
-
How to make a turtle racing game in Python
First, if you don't have Python installed on your machine, go to python.org to download the latest version of Python and then install it right away.
-
PySimpleGUI 4 will be sunsetted in Q2 2024
You missed that they gave an example that does work—Java Swing is bundled with the JVM, making it more or less part of the standard library. Python itself also has Tkinter, which exists inside the cpython repo and is installed with Python [0].
C++ may not work, but most other languages (especially VM-based) can and many do.
[0] https://github.com/python/cpython/blob/3.12/Lib/tkinter/__in...
-
Memray – A Memory Profiler for Python
I collected a list of profilers (also memory profilers, also specifically for Python) here: https://github.com/albertz/wiki/blob/master/profiling.md
Currently I actually need a Python memory profiler, because I want to figure out whether there is some memory leak in my application (PyTorch based training script), and where exactly (in this case, it's not a problem of GPU memory, but CPU memory).
I tried Scalene (https://github.com/plasma-umass/scalene), which seems to be powerful, but somehow the output it gives me is not useful at all? It doesn't really give me a flamegraph, or a list of the top lines with memory allocations, but instead it gives me a listing of all source code lines, and prints some (very sparse) information on each line. So I need to search through that listing now by hand to find the spots? Maybe I just don't know how to use it properly.
I tried Memray, but first ran into an issue (https://github.com/bloomberg/memray/issues/212), but after using some workaround, it worked now. I get a flamegraph out, but it doesn't really seem accurate? After a while, there don't seem to be any new memory allocations at all anymore, and I don't quite trust that this is correct.
There is also Austin (https://github.com/P403n1x87/austin), which I also wanted to try (have not yet).
Somehow this experience so far was very disappointing.
(Side node, I debugged some very strange memory allocation behavior of Python before, where all local variables were kept around after an exception, even though I made sure there is no reference anymore to the exception object, to the traceback, etc, and I even called frame.clear() for all frames to really clear it. It turns out, frame.f_locals will create another copy of all the local variables, and the exception object and all the locals in the other frame still stay alive until you access frame.f_locals again. At that point, it will sync the f_locals again with the real (fast) locals, and then it can finally free everything. It was quite annoying to find the source of this problem and to find workarounds for it. https://github.com/python/cpython/issues/113939)
-
Setting Up the Environment
Python, a versatile and powerful programming language, can be easily installed from its official website: https://www.python.org/. This section will guide you through the installation process on various operating systems, including Windows, macOS, and Linux.
What are some alternatives?
RustPython - A Python Interpreter written in Rust
ipython - Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.
Vulpix - Fast, unopinionated, minimalist web framework for .NET core inspired by express.js
Visual Studio Code - Visual Studio Code
Automatic-Udemy-Course-Enroller-GET-PAID-UDEMY-COURSES-for-FREE - Do you want to LEARN NEW STUFF for FREE? Don't worry, with the power of web-scraping and automation, this script will find the necessary Udemy coupons & enroll you for PAID UDEMY COURSES, ABSOLUTELY FREE!
Pandas - Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more
Camunda BPM - Flexible framework for workflow and decision automation with BPMN and DMN. Integration with Quarkus, Spring, Spring Boot, CDI.
Django - The Web framework for perfectionists with deadlines.
go - The Go programming language
Plex-Meta-Manager - Python script to update metadata information for items in plex as well as automatically build collections and playlists. The Wiki Documentation is linked below.
git - A fork of Git containing Windows-specific patches.
alibi-detect - Algorithms for outlier, adversarial and drift detection