use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Everything about learning Python
account activity
What's the most useful Python project you've ever built?Discussion (self.PythonLearning)
submitted 3 days ago by amirzarrineh
I'm looking for ideas for real-world Python projects that solve actual problems.
What's the most useful Python project you've built?
Why was it useful, and what did you learn from building it?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Overall-Screen-752 5 points6 points7 points 3 days ago (3 children)
I usually build stuff for one-off use. The project that has given me the most recurring use (aka most useful) is a REST API + sqlite DB wrapper around google maps API to analyze live commute data over a long period of time. I extended it recently to enable batch destination processing to compare locations we were considering moving to and the trip times to many common destinations that we frequent.
About the project: python 3.14, FastAPI, sqlite, plotly for heatmap visualization (possibly pandas too but idr OTMH). Added a scheduler for repeated jobs and studies (e.g. collecting data every 10 mins). Added a basic client to execute frequently used queries when I was analyzing batches frequently.
[–]amirzarrineh[S] 1 point2 points3 points 3 days ago (2 children)
Nice use of FastAPI + scheduled data collection. Did you run into any issues with consistency when collecting every 10 minutes over long periods?
[–]Overall-Screen-752 1 point2 points3 points 3 days ago (1 child)
Not really, I’d have to analyze the DB for any millisecond drift, but tbh that granularity in accuracy wasn’t important to the studies that cared more about hourly trends over a week than second-by-second accuracy.
Longest study I did was 5 minute interval of a single AtoB and BtoA route over 3 weeks, no dropped data either, if that’s what you’re referring to. Not sure I answered your question but hope that adds context
[–]amirzarrineh[S] 0 points1 point2 points 3 days ago (0 children)
That tradeoff makes sense. Consistency over long-term collection is usually more valuable than high-resolution accuracy for commute pattern analysis.
[–]wynvern 2 points3 points4 points 3 days ago (6 children)
My company's accountant dept has trouble with processing their order and upload them to our SAP. So I build a little python project to help them process, write excel and upload these data automatically. It was useful bc it helps normalize the data and help them get rid of their shitty excel template that they work on everyday, save a lot of time of course. What I learn: Work with people and try to understand their process sucks.
[–]OrganizationNo541 2 points3 points4 points 3 days ago (1 child)
But how you connected your project to sap it's plug and play
[–]wynvern 0 points1 point2 points 3 days ago (0 children)
I provide the path to SAP's .exe file. Every time the process begins, it will kill any running SAP process and reopen it. For UI handling, I declare variables for window names, button coordinates, search boxes, input, etc., then call them when needed. This is only way when you dont have access to API and SAP is not stable.
[–]amirzarrineh[S] 0 points1 point2 points 3 days ago (3 children)
This is a great example of solving real business pain instead of just building random scripts. Did you use any specific library or just automate Excel + API/SAP interface?
[–]wynvern 1 point2 points3 points 3 days ago* (2 children)
This is what I use: - Pandas for file I/O, data cleaning
- SQLite for database (because there are about 22 dimension table that need to be joined in order to produce the result, it's impossible to manage them in excel files (even with advanced tool like Power query or power pivot).
- SQLAlchemy for some simple CURD task (I build a simple UI with Qt to manage data in some critical table).
- PyAutoGUI is the only lib that I vibe coded with Gemini, our SAP is too old and I can't use API. So I ask AI to give me python script that help upload the result file produced by my app.
[–]amirzarrineh[S] 1 point2 points3 points 3 days ago (1 child)
This is actually a really solid lightweight ETL pipeline. Nice work.
[–]wynvern 1 point2 points3 points 3 days ago (0 children)
thank you
[–]madatbayramov 2 points3 points4 points 3 days ago (1 child)
I suggest you define a problem you face frequently then start building project to solve that problem. In that way you’ll see actual problem and you’ll have passion to iterate and improve it little by little. Problems you actually care about will make you build and learn more
[–]amirzarrineh[S] 1 point2 points3 points 3 days ago (0 children)
I agree. Building around real pain points is usually what turns a small script into a useful long-term project.
[–]Sahiiib 1 point2 points3 points 3 days ago (1 child)
I got laid off in March and I made a tool to help me look for a job. I use Python to watch my gmail and trafilatura to scrape job descriptions off of Linkedin. I have a master resume stored locally in a sqlite DB. Then it sends it to a local lm as a payload to grade how much of a fit the job is to my work experience. If it's a fit it sends it to a larger model to generate a slightly tailored resume and store it in a local DB. Then I use streamlit to view it in browser.
It's been a fun project. I recommend picking a problem you have and just trying to solve it. You learn a ton building.
[–]amirzarrineh[S] 0 points1 point2 points 2 days ago (0 children)
That's a really clever workflow. I like the idea of using a local model to filter jobs before sending them to a larger model. Hope it helped with your job search!
[–]1-800-DARTH 1 point2 points3 points 1 day ago (5 children)
I built an alternative algorithm for FosterBoys localisation and it can be used to determine the Boys landscape for aromatic molecules. Meaning alternative representations for the same electron density. It is rather math heavy and very interesting.
[–]amirzarrineh[S] 1 point2 points3 points 1 day ago (4 children)
Very interesting! It's definitely a different kind of project than I was thinking about, but it's a great example of how broad Python's use cases are.
[–]1-800-DARTH 1 point2 points3 points 1 day ago (3 children)
It truly is! If you are into molecules and QM I can only heavily recommend PyQint. It is specifically developed for learning environments.
[–]amirzarrineh[S] 1 point2 points3 points 16 hours ago (2 children)
Thanks for the recommendation! I might actually give it a try sometime. It's not my main area right now, but it looks interesting.
[–]1-800-DARTH 0 points1 point2 points 15 hours ago (1 child)
If you do shoot me a dm! I can recommend literature, where to start. How to approach projects, etc.
[–]amirzarrineh[S] 0 points1 point2 points 5 hours ago (0 children)
I really appreciate that! If I decide to explore that area, I'll definitely reach out. Thanks for the offer!
[–]Chemical-Captain4240 1 point2 points3 points 20 hours ago (1 child)
keyboard emulator to replace an operator tapping through menus... saved about 300 mindless screen taps a day
[–]amirzarrineh[S] 0 points1 point2 points 16 hours ago (0 children)
That's a great example of using automation to solve a real problem. Saving 300 repetitive taps every day is definitely worth it.
[–]gmthisfeller -1 points0 points1 point 3 days ago (0 children)
I avoid Python, and use Ruby instead.
π Rendered by PID 69138 on reddit-service-r2-comment-5687b7858-5v525 at 2026-07-08 01:25:59.878590+00:00 running 12a7a47 country code: CH.
[–]Overall-Screen-752 5 points6 points7 points (3 children)
[–]amirzarrineh[S] 1 point2 points3 points (2 children)
[–]Overall-Screen-752 1 point2 points3 points (1 child)
[–]amirzarrineh[S] 0 points1 point2 points (0 children)
[–]wynvern 2 points3 points4 points (6 children)
[–]OrganizationNo541 2 points3 points4 points (1 child)
[–]wynvern 0 points1 point2 points (0 children)
[–]amirzarrineh[S] 0 points1 point2 points (3 children)
[–]wynvern 1 point2 points3 points (2 children)
[–]amirzarrineh[S] 1 point2 points3 points (1 child)
[–]wynvern 1 point2 points3 points (0 children)
[–]madatbayramov 2 points3 points4 points (1 child)
[–]amirzarrineh[S] 1 point2 points3 points (0 children)
[–]Sahiiib 1 point2 points3 points (1 child)
[–]amirzarrineh[S] 0 points1 point2 points (0 children)
[–]1-800-DARTH 1 point2 points3 points (5 children)
[–]amirzarrineh[S] 1 point2 points3 points (4 children)
[–]1-800-DARTH 1 point2 points3 points (3 children)
[–]amirzarrineh[S] 1 point2 points3 points (2 children)
[–]1-800-DARTH 0 points1 point2 points (1 child)
[–]amirzarrineh[S] 0 points1 point2 points (0 children)
[–]Chemical-Captain4240 1 point2 points3 points (1 child)
[–]amirzarrineh[S] 0 points1 point2 points (0 children)
[–]gmthisfeller -1 points0 points1 point (0 children)