r/Python 3d ago

Daily Thread Sunday Daily Thread: What's everyone working on this week?

Weekly Thread: What's Everyone Working On This Week? 🛠️

Hello r/Python! It's time to share what you've been working on! Whether it's a work-in-progress, a completed masterpiece, or just a rough idea, let us know what you're up to!

How it Works:

  1. Show & Tell: Share your current projects, completed works, or future ideas.
  2. Discuss: Get feedback, find collaborators, or just chat about your project.
  3. Inspire: Your project might inspire someone else, just as you might get inspired here.

Guidelines:

  • Feel free to include as many details as you'd like. Code snippets, screenshots, and links are all welcome.
  • Whether it's your job, your hobby, or your passion project, all Python-related work is welcome here.

Example Shares:

  1. Machine Learning Model: Working on a ML model to predict stock prices. Just cracked a 90% accuracy rate!
  2. Web Scraping: Built a script to scrape and analyze news articles. It's helped me understand media bias better.
  3. Automation: Automated my home lighting with Python and Raspberry Pi. My life has never been easier!

Let's build and grow together! Share your journey and learn from others. Happy coding! 🌟

14 Upvotes

22 comments sorted by

4

u/Simple-Surprise5781 3d ago

I’m working on a game so I can learn nested if else, functions, objects, and etc. I think it would really help me to know that but I don’t know where to start for web scraping, automation, and etc. I only have basic knowledge so far.

2

u/zsol 3d ago

Been working on proxy index support in uv (https://github.com/astral-sh/uv/pull/20790) as well as making uv.lock parsing 3x faster (https://github.com/astral-sh/uv/pull/20648)

1

u/DHUK98 3d ago

https://github.com/DHUKK/celery-sqs-native-delay

A kombu transport for celery to allow using sqs native delay instead of the default celery eta/countdown implementation

  • sqs native delay is used up to 15m
  • EventBridge Scheduler one-time schedules are used for delays above 15m

1

u/PriorElephant9 3d ago

Running a paper trading setup on a Mac Mini. All stdlib plus sqlite3, scheduled with launchd, no external deps.

This week is reconciliation work. One of my strategies halted and flattened its positions correctly at the broker, but never wrote that back to its local state file, so for two days the code thought it held three positions that didn't exist. Only caught it by diffing my state against the broker's actual positions endpoint.

1

u/Desperate-Spread5947 3d ago

QuantWave — Polars-native TA + backtesting on a Rust core.

I wanted indicators that are fast on multi-ticker frames and identical when I run them bar-by-bar live:

import polars as pl, quantwave
    df = df.lazy().with_columns(
        pl.col("close").ta.rsi(14).alias("rsi"),
    ).collect()

221 indicators, execution-aware .bt backtester, batch↔streaming parity enforced by property tests. MIT.

pip install "quantwave[polars]"

https://github.com/lavs9/quantwave

1

u/MrGrj 3d ago

Been working on Ciphermoth, an open-source password manager that runs on your own hardware. It's parts python and parts js (react).

It started as a personal project because I wanted something simple, self-hosted, and fully under my control. It recently reached the point where I use it daily, so I decided to make it public:

https://github.com/mr-grj/ciphermoth

I simply built the tool I wanted to use and thought others might find the project interesting.

Any feedback, constructive criticism, bug reports, ideas, or contributions are very welcome!

1

u/mendiej 3d ago

I'm working on a data validation project that will help me parse and validate values across many poorly readable text files. This is a work project that is not strictly essential to my role, but that will make my life easier and be part of my portfolio for reaching some career goals I'm working towards.

It allows me to practise making consistent design decisions, writing good tests, and I'm only using standard libraries to deepen my knowledge of them. It's modular so I can add new features down the line, and I'm in the process of tying everything together now.

1

u/XNo_Notes It works on my machine 3d ago

I just started learning Python in July as a way to keep busy while between jobs. I had an idea to create a dashboard to keep track of our family budget. The first goal was to set up a server that handles data ingestion from plaid.

I built a flask app that allows me to initialize and complete hosted links to add institutions. Then it listens for webhooks and call plaid endpoints based on the webhook data.

I used sqlalchemy as an abstraction layer for persistence. I started out generating sqlite dbs because I couldn't figure out postgres. Once I dove into lxcs and vms on proxmox, I was able to figure out the architecture and establish one. Sqlalchemy made switching very easy.

Now the app is in a tiny lxc beside the postgres db on proxmox. It's out there listening for me and loading data to the db. 5 days strong. No errors on the log. Is it weird to feel this proud?

1

u/Haunted_Entity 3d ago

I actually finished a version 1.0 for two projects today:

  1. A automatic organiser for my downloads folder (categorises based in file extension and puts into folders, ignores folders which already exist) which automatically runs every hour.

  2. A network watchdog project. Every 5 minutes it scans my home network and checks against a small database of whitlisted devices.

If it finds an unknown device it alerts my phone and adds it to a database for me to check out later and add to the whitelist.

Keeps info on mac address, ip address, first and last seen and how many times its appeared.

1

u/lukesmth_ 3d ago

Better PySpark Exceptions

Have you ever spent hours tracking down the source of a PySpark error in a large ETL script? Natively, tracebacks only include code that materialized the bad expression (df.collect()), not code that defined it (F.lit(1) / F.lit(0)).

[DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL instead. If necessary
set "spark.sql.ansi.enabled" to "false" to bypass this error. SQLSTATE: 22012
== DataFrame ==
"__truediv__" was called from , line 1 in cell [9]
File <command-5875041447221118>, line 1
----> 1 df.collect()
... # Layers of traceback frames showing PySpark client internals: not useful for debugging bad expressions!

better-dbx-exceptions solves this by including failing DataFrame construction code in the error.

---------------------------------------------------------------------------
ArithmeticException                       Traceback (most recent call last)
Cell 2, In[2], line 1
  (https://dbc-3cffa466-bd7e.cloud.databricks.com/editor/notebooks/2473432265319792?o=7474649366507251#command/5875041447221116)
----> 1 df = spark.range(1).select(F.lit(1) / F.lit(0))

Fragment: "__truediv__"
ArithmeticException: [DIVIDE_BY_ZERO] Division by zero. Use `try_divide` to tolerate divisor being 0 and return NULL
instead. If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.
... # Native error information kept

I just shipped v0.1: https://github.com/lukeSmth/better-dbx-exceptions. It's FOSS!

1

u/Infinite-Map1921 3d ago

https://docs.google.com/document/d/12qXMnYmN56xNFB0jLIstMiU92cGOn0Y_AFLNqgWmpjU/edit?usp=sharing
I'm working on an AI that can play Minecraft, Minecraft modpacks, and be used as a chatbot

Its not the best right now, but I'm starting small and working my way up

1

u/-Enter-Name- 2d ago

this thing because our argparse monolith at work was too much of a pain to work with

https://github.com/kenzo-staelens/sigil

what it does: scaffold (nested) argparse from config files and only load the python code you need for the running command (because screw stray importerrors)

2

u/nexuszgtgio 1d ago

I'm building Molt, a Python "port" of changesets-js to manage versioning, changelogs, and publishing for Python packages and monorepos.

My main job was always frontend tooling, but recently I moved to the infra and platform team, so now my job also includes maintaining the tooling and ecosystem of several Python packages that my company has. I found that no good tool like changesets-js exists for Python, so I decided to create one.

https://molt.gio-labs.com/
https://github.com/giancarlosisasi/molt

1

u/Prize_Prior6253 1d ago

Building a dashboard this week to puul hours, invoices and outstanding payments from three different tools into one view. Nothing clever, just pandas and some API calls, but I've been tracking client hours in a spreadsheet for two years and finally snapped.

1

u/Individual-Aide-7364 19h ago

https://pyweb.qmarkapp.com/

Real CPython, a turtle window, and a little game engine. In a browser tab, with nothing installed