Thursday Daily Thread: Python Careers, Courses, and Furthering Education!
# Weekly Thread: Professional Use, Jobs, and Education 🏢
Welcome to this week's discussion on Python in the professional world! This is your spot to talk about job hunting, career growth, and educational resources in Python. Please note, this thread is not for recruitment.
---
## How it Works:
1. Career Talk: Discuss using Python in your job, or the job market for Python roles.
2. Education Q&A: Ask or answer questions about Python courses, certifications, and educational resources.
3. Workplace Chat: Share your experiences, challenges, or success stories about using Python professionally.
---
## Guidelines:
- This thread is not for recruitment. For job postings, please see r/PythonJobs or the recruitment thread in the sidebar.
- Keep discussions relevant to Python in the professional and educational context.
---
## Example Topics:
1. Career Paths: What kinds of roles are out there for Python developers?
2. Certifications: Are Python certifications worth it?
3. Course Recommendations: Any good advanced Python courses to recommend?
4. Workplace Tools: What Python libraries are indispensable in your professional work?
5. Interview Tips: What types of Python questions are commonly asked in interviews?
---
Let's help each other grow in our careers and education. Happy discussing! 🌟
/r/Python
https://redd.it/1mpkzoc
# Weekly Thread: Professional Use, Jobs, and Education 🏢
Welcome to this week's discussion on Python in the professional world! This is your spot to talk about job hunting, career growth, and educational resources in Python. Please note, this thread is not for recruitment.
---
## How it Works:
1. Career Talk: Discuss using Python in your job, or the job market for Python roles.
2. Education Q&A: Ask or answer questions about Python courses, certifications, and educational resources.
3. Workplace Chat: Share your experiences, challenges, or success stories about using Python professionally.
---
## Guidelines:
- This thread is not for recruitment. For job postings, please see r/PythonJobs or the recruitment thread in the sidebar.
- Keep discussions relevant to Python in the professional and educational context.
---
## Example Topics:
1. Career Paths: What kinds of roles are out there for Python developers?
2. Certifications: Are Python certifications worth it?
3. Course Recommendations: Any good advanced Python courses to recommend?
4. Workplace Tools: What Python libraries are indispensable in your professional work?
5. Interview Tips: What types of Python questions are commonly asked in interviews?
---
Let's help each other grow in our careers and education. Happy discussing! 🌟
/r/Python
https://redd.it/1mpkzoc
Reddit
From the Python community on Reddit
Explore this post and more from the Python community
Python 3.13 REPL keyboard mappings/shortcuts/bindings
I couldn't find a comprehensive list of keyboard shortcuts for the new REPL, so here's the source code:
https://github.com/python/cpython/blob/3.13/Lib/\_pyrepl/reader.py#L66-L131
\\C means Ctrl, \\M means meta (Alt key on Windows/Linux, Option[?\] on mac).
Of particular interest, on the Windows 10 Terminal, pressing Ctrl+Alt+Enter while editing a block of code will "accept" (run) it without having to go to the end of the last line and pressing Enter twice. (Alt+Enter on Windows switches to/from full screen mode). on Ubuntu, it's Alt+Enter. i don't have a mac to test on -- if you do, let me know in the comments below.
Other related/interesting links:
https://treyhunner.com/2024/10/adding-keyboard-shortcuts-to-the-python-repl/
https://www.youtube.com/watch?v=dK6HGcSb60Y
|Keys|Command|
|:-|:-|
|Ctrl+a|beginning-of-line|
|Ctrl+b|left|
|Ctrl+c|interrupt|
|Ctrl+d|delete|
|Ctrl+e|end-of-line|
|Ctrl+f|right|
|Ctrl+g|cancel|
|Ctrl+h|backspace|
|Ctrl+j|accept|
|Ctrl+k|kill-line|
|Ctrl+l|clear-screen|
|Ctrl+m|accept|
|Ctrl+t|transpose-characters|
|Ctrl+u|unix-line-discard|
|Ctrl+w|unix-word-rubout|
|Ctrl+x Ctrl+u|upcase-region|
|Ctrl+y|yank|
|Ctrl+z|suspend|
|Alt+b|backward-word|
|Alt+c|capitalize-word|
|Alt+d|kill-word|
|Alt+f|forward-word|
|Alt+l|downcase-word|
|Alt+t|transpose-words|
|Alt+u|upcase-word|
|Alt+y|yank-pop|
|Alt+-|digit-arg|
|Alt+0|digit-arg|
|Alt+1|digit-arg|
|Alt+2|digit-arg|
|Alt+3|digit-arg|
|Alt+4|digit-arg|
|Alt+5|digit-arg|
|Alt+6|digit-arg|
|Alt+7|digit-arg|
|Alt+8|digit-arg|
|Alt+9|digit-arg|
|Alt+\\n|accept|
|Esc [200\~|enable_bracketed_paste|
|Esc [201\~|disable_bracketed_paste|
|Ctrl+<left>|backward-word|
|Ctrl+<right>|forward-word|
|Esc [3\~|delete|
|Alt+<backspace>|backward-kill-word|
|<end>|end-of-line|
|<home>|beginning-of-line|
|<f1>|help|
|<f2>|show-history|
|<f3>|paste-mode|
|\\EOF|end|
|\\EOH|home|
keywords: pyrepl, _pyrepl, pypy repl
/r/Python
https://redd.it/1mplowa
I couldn't find a comprehensive list of keyboard shortcuts for the new REPL, so here's the source code:
https://github.com/python/cpython/blob/3.13/Lib/\_pyrepl/reader.py#L66-L131
\\C means Ctrl, \\M means meta (Alt key on Windows/Linux, Option[?\] on mac).
Of particular interest, on the Windows 10 Terminal, pressing Ctrl+Alt+Enter while editing a block of code will "accept" (run) it without having to go to the end of the last line and pressing Enter twice. (Alt+Enter on Windows switches to/from full screen mode). on Ubuntu, it's Alt+Enter. i don't have a mac to test on -- if you do, let me know in the comments below.
Other related/interesting links:
https://treyhunner.com/2024/10/adding-keyboard-shortcuts-to-the-python-repl/
https://www.youtube.com/watch?v=dK6HGcSb60Y
|Keys|Command|
|:-|:-|
|Ctrl+a|beginning-of-line|
|Ctrl+b|left|
|Ctrl+c|interrupt|
|Ctrl+d|delete|
|Ctrl+e|end-of-line|
|Ctrl+f|right|
|Ctrl+g|cancel|
|Ctrl+h|backspace|
|Ctrl+j|accept|
|Ctrl+k|kill-line|
|Ctrl+l|clear-screen|
|Ctrl+m|accept|
|Ctrl+t|transpose-characters|
|Ctrl+u|unix-line-discard|
|Ctrl+w|unix-word-rubout|
|Ctrl+x Ctrl+u|upcase-region|
|Ctrl+y|yank|
|Ctrl+z|suspend|
|Alt+b|backward-word|
|Alt+c|capitalize-word|
|Alt+d|kill-word|
|Alt+f|forward-word|
|Alt+l|downcase-word|
|Alt+t|transpose-words|
|Alt+u|upcase-word|
|Alt+y|yank-pop|
|Alt+-|digit-arg|
|Alt+0|digit-arg|
|Alt+1|digit-arg|
|Alt+2|digit-arg|
|Alt+3|digit-arg|
|Alt+4|digit-arg|
|Alt+5|digit-arg|
|Alt+6|digit-arg|
|Alt+7|digit-arg|
|Alt+8|digit-arg|
|Alt+9|digit-arg|
|Alt+\\n|accept|
|Esc [200\~|enable_bracketed_paste|
|Esc [201\~|disable_bracketed_paste|
|Ctrl+<left>|backward-word|
|Ctrl+<right>|forward-word|
|Esc [3\~|delete|
|Alt+<backspace>|backward-kill-word|
|<end>|end-of-line|
|<home>|beginning-of-line|
|<f1>|help|
|<f2>|show-history|
|<f3>|paste-mode|
|\\EOF|end|
|\\EOH|home|
keywords: pyrepl, _pyrepl, pypy repl
/r/Python
https://redd.it/1mplowa
GitHub
cpython/Lib/_pyrepl/reader.py at 3.13 · python/cpython
The Python programming language. Contribute to python/cpython development by creating an account on GitHub.
How do you automate emails with Django?
Hello guys,
In my website I got a register form and I made it so that whenever I get a new registration (a new registry in my database) I will get an email so that I would check my admin panel.
First I used the standard Gmail SMPT 587, I set an App password and it worked locally just like butter, the emails were sent instantly.
But when I got to production (used Digitalocean) it stopped sending emails, or more precisely it keeps loading forever, it's like Django is trying to connect but can't. Chatgpt said that 'Some cloud providers block outbound SMTP ports (25, 465, 587) to prevent spam' and suggested that I switch to something like Brevo, I created an account and set up everything (port 2525) but I still can't send emails on registry. even though (unlike gmail smpt) I CAN connect to it from the server and CAN send emails from server but when I try to do it from my website it takes forever or crashes.
Any advice on what should I do or use differently ? and is there a good free option to it?
/r/django
https://redd.it/1mpmrs1
Hello guys,
In my website I got a register form and I made it so that whenever I get a new registration (a new registry in my database) I will get an email so that I would check my admin panel.
First I used the standard Gmail SMPT 587, I set an App password and it worked locally just like butter, the emails were sent instantly.
But when I got to production (used Digitalocean) it stopped sending emails, or more precisely it keeps loading forever, it's like Django is trying to connect but can't. Chatgpt said that 'Some cloud providers block outbound SMTP ports (25, 465, 587) to prevent spam' and suggested that I switch to something like Brevo, I created an account and set up everything (port 2525) but I still can't send emails on registry. even though (unlike gmail smpt) I CAN connect to it from the server and CAN send emails from server but when I try to do it from my website it takes forever or crashes.
Any advice on what should I do or use differently ? and is there a good free option to it?
/r/django
https://redd.it/1mpmrs1
Brevo
Email & SMS Marketing, CRM & Automation | Brevo
Brevo is the most intuitive all-in-one customer engagement platform: email and SMS marketing, automation, CRM, live chat, and transactional email. Try it free.
Tool that converts assembly code into Minecraft command blocks
Tired of messy command block contraptions? I built a Python tool that converts assembly code into Minecraft command blocks and exports them as WorldEdit schematics.
It's the very start of the project and i need you for what i need to add
**Write this:**
SET R0, #3
SET R1, #6
MUL R0, R1
SAY "3 * 6 = {R0}"
**Get working command blocks automatically!**
# Features
* Custom assembly language with registers (R0-R7)
* Arithmetic ops, flow control, functions with CALL/RET
* Direct .schem export for WorldEdit
* Stack management and conditional execution
**GitHub**: [Assembly-to-Minecraft-Command-Block-Compiler](https://github.com/Bowser04/Assembly-to-Minecraft-Command-Block-Compiler)
Still in development - feedback, suggestions or help are welcome!
The target audience is people interested in this project that may seem crazy or contributor
*Yes, it's overkill. That's what makes it fun! 😄 It's literally a command block computer*
For alternatives I don't know any but they must exist somewhere. So why me it's different because my end goal is a python to minecraft command block converter through a shematic
/r/Python
https://redd.it/1mptj7m
Tired of messy command block contraptions? I built a Python tool that converts assembly code into Minecraft command blocks and exports them as WorldEdit schematics.
It's the very start of the project and i need you for what i need to add
**Write this:**
SET R0, #3
SET R1, #6
MUL R0, R1
SAY "3 * 6 = {R0}"
**Get working command blocks automatically!**
# Features
* Custom assembly language with registers (R0-R7)
* Arithmetic ops, flow control, functions with CALL/RET
* Direct .schem export for WorldEdit
* Stack management and conditional execution
**GitHub**: [Assembly-to-Minecraft-Command-Block-Compiler](https://github.com/Bowser04/Assembly-to-Minecraft-Command-Block-Compiler)
Still in development - feedback, suggestions or help are welcome!
The target audience is people interested in this project that may seem crazy or contributor
*Yes, it's overkill. That's what makes it fun! 😄 It's literally a command block computer*
For alternatives I don't know any but they must exist somewhere. So why me it's different because my end goal is a python to minecraft command block converter through a shematic
/r/Python
https://redd.it/1mptj7m
GitHub
GitHub - Bowser04/Assembly-to-Minecraft-Command-Block-Compiler: A Python-based compiler that converts custom assembly language…
A Python-based compiler that converts custom assembly language into Minecraft command blocks and exports them as WorldEdit schematics. - Bowser04/Assembly-to-Minecraft-Command-Block-Compiler
Anyone Interested in Building a Django Course Upload Site with Me?
https://preview.redd.it/mr9ytu43dshf1.jpg?width=1280&format=pjpg&auto=webp&s=30f99841087d31f6a5837b04980c1423c2e017d1
https://preview.redd.it/ksezky74dshf1.jpg?width=1280&format=pjpg&auto=webp&s=af99c39e368a2df1df686ba7dc658ce617c25617
https://preview.redd.it/f0nktp45dshf1.jpg?width=774&format=pjpg&auto=webp&s=cbdb68213b5acc2cc976ee2208d5f8874c0b537a
Anyone interested in making this project with me?
I want someone who knows Django and frontend. You don’t have to be an expert. I have added lots of features. I’m making this site for blog-type course uploading for everyone. It can be your portfolio project.
/r/djangolearning
https://redd.it/1mktd7p
https://preview.redd.it/mr9ytu43dshf1.jpg?width=1280&format=pjpg&auto=webp&s=30f99841087d31f6a5837b04980c1423c2e017d1
https://preview.redd.it/ksezky74dshf1.jpg?width=1280&format=pjpg&auto=webp&s=af99c39e368a2df1df686ba7dc658ce617c25617
https://preview.redd.it/f0nktp45dshf1.jpg?width=774&format=pjpg&auto=webp&s=cbdb68213b5acc2cc976ee2208d5f8874c0b537a
Anyone interested in making this project with me?
I want someone who knows Django and frontend. You don’t have to be an expert. I have added lots of features. I’m making this site for blog-type course uploading for everyone. It can be your portfolio project.
/r/djangolearning
https://redd.it/1mktd7p
Hello
Hello friends, I am a beginner developer and I am creating a website, I almost finished my first project, I got stuck on adding a promo code, the intended page and the user must enter the promo code to receive the product. I am interested in your opinion, how good an idea is it to add promo codes to the database (in my case I use ssms) and from there check if such a promo code exists, then I will give the product to the user and if it does not exist then Flash will throw an error. Promo codes should be different and unique. I am also wondering if there is a way to solve this problem without using the database. Thanks for the answer <3
/r/flask
https://redd.it/1mpp01q
Hello friends, I am a beginner developer and I am creating a website, I almost finished my first project, I got stuck on adding a promo code, the intended page and the user must enter the promo code to receive the product. I am interested in your opinion, how good an idea is it to add promo codes to the database (in my case I use ssms) and from there check if such a promo code exists, then I will give the product to the user and if it does not exist then Flash will throw an error. Promo codes should be different and unique. I am also wondering if there is a way to solve this problem without using the database. Thanks for the answer <3
/r/flask
https://redd.it/1mpp01q
Reddit
From the flask community on Reddit
Explore this post and more from the flask community
Did anyone lese panic from 'integration' things when starting out with backend?
Hey there, I use Django for many projects and I'm planning to use it for more. The idea is, whenever I learn a new Django concept or backend in general, it always needs to be integrated with something else to work in real production level. For example, Django it self connects to DRF, DRF should include JWT or other type of auth system, Django again connects with Postgres or other type of DB, or if you want to make something different like a real-time communication app, you should be aware of different middlewares to perform auth, etc. This adding with the 'shiny object syndrome' it ends up with frustration (especially at the beginning). I know Django makes this kind of stuff a lot easier compared to other frameworks. What was your approach for this kind of process in your learning and dev journey, should I skip these parts for later and only focus on one solid concept, or should proceed integrating things that I don't know how they work internally? your insights will be help full.
/r/django
https://redd.it/1mpuvkf
Hey there, I use Django for many projects and I'm planning to use it for more. The idea is, whenever I learn a new Django concept or backend in general, it always needs to be integrated with something else to work in real production level. For example, Django it self connects to DRF, DRF should include JWT or other type of auth system, Django again connects with Postgres or other type of DB, or if you want to make something different like a real-time communication app, you should be aware of different middlewares to perform auth, etc. This adding with the 'shiny object syndrome' it ends up with frustration (especially at the beginning). I know Django makes this kind of stuff a lot easier compared to other frameworks. What was your approach for this kind of process in your learning and dev journey, should I skip these parts for later and only focus on one solid concept, or should proceed integrating things that I don't know how they work internally? your insights will be help full.
/r/django
https://redd.it/1mpuvkf
Reddit
From the django community on Reddit
Explore this post and more from the django community
DataCompose: Bringing shadcn's copy-to-own pattern to data engineering
# What My Project Does
DataCompose provides 100+ battle-tested PySpark primitives for cleaning contact data (addresses, emails, phones). Instead of importing a library, you copy the source code directly into your project (like Shadcn). Think of it as production-ready snippets that you own and can modify.
## Target Audience
- **Data Engineers** working in restricted environments (banks, healthcare, government)
- **Teams** tired of writing the same address/email/phone cleaning logic at every job
- **Anyone** who needs to customize data cleaning for their specific edge cases
- **Spark users** who want composable transformations without external dependencies
## Comparisons
- **vs pandas/polars**: Built specifically for PySpark at scale, not local dataframes
- **vs Great Expectations**: We clean data, and have validation functions
- **vs dbt**: We handle the messy cleaning before your dbt transformations
- **vs custom UDFs**: Pre-tested, composable, and includes 336 tests
This is the architecture that I went with, there is (supposed) a registry that lives where the datacompose cli copies and pastes the primitive (the data cleaner that you want) to your repo, and you can fully edit the code, and extend anyway you want. And then you can delete the cli and the code still works.
## Code Example
```bash
datacompose init
# Generate email cleaning primitives
datacompose add clean_emails --target
/r/Python
https://redd.it/1mq0v3w
# What My Project Does
DataCompose provides 100+ battle-tested PySpark primitives for cleaning contact data (addresses, emails, phones). Instead of importing a library, you copy the source code directly into your project (like Shadcn). Think of it as production-ready snippets that you own and can modify.
## Target Audience
- **Data Engineers** working in restricted environments (banks, healthcare, government)
- **Teams** tired of writing the same address/email/phone cleaning logic at every job
- **Anyone** who needs to customize data cleaning for their specific edge cases
- **Spark users** who want composable transformations without external dependencies
## Comparisons
- **vs pandas/polars**: Built specifically for PySpark at scale, not local dataframes
- **vs Great Expectations**: We clean data, and have validation functions
- **vs dbt**: We handle the messy cleaning before your dbt transformations
- **vs custom UDFs**: Pre-tested, composable, and includes 336 tests
This is the architecture that I went with, there is (supposed) a registry that lives where the datacompose cli copies and pastes the primitive (the data cleaner that you want) to your repo, and you can fully edit the code, and extend anyway you want. And then you can delete the cli and the code still works.
## Code Example
```bash
datacompose init
# Generate email cleaning primitives
datacompose add clean_emails --target
/r/Python
https://redd.it/1mq0v3w
Reddit
From the Python community on Reddit: DataCompose: Bringing shadcn's copy-to-own pattern to data engineering
Explore this post and more from the Python community
Revel: an open source, community-focused event management platform looking for contributors
https://github.com/letsrevel/revel-backend
/r/django
https://redd.it/1mpvdp1
https://github.com/letsrevel/revel-backend
/r/django
https://redd.it/1mpvdp1
GitHub
GitHub - letsrevel/revel-backend: The Django backend of the Revel event platform project
The Django backend of the Revel event platform project - letsrevel/revel-backend
About flask
Ok now I'm familiar with laravel and springboot now I wanna start with flask but I have to ask do I use vscode or inteliji also for sql can i use xampp or is it a good practice to use workbench, also Does it have something like spring initializer.io or not
Is there any youtube video that tackles a video tutorial on starting flask.
/r/flask
https://redd.it/1mq2e7s
Ok now I'm familiar with laravel and springboot now I wanna start with flask but I have to ask do I use vscode or inteliji also for sql can i use xampp or is it a good practice to use workbench, also Does it have something like spring initializer.io or not
Is there any youtube video that tackles a video tutorial on starting flask.
/r/flask
https://redd.it/1mq2e7s
Reddit
From the flask community on Reddit
Explore this post and more from the flask community
I built a terminal-based BitTorrent client in Python — Torrcli
**Hey everyone,**
I’ve been working on a side project over the past few months and wanted to share it. It’s called **Torrcli** — a fast, terminal-based BitTorrent client written in Python. My goal was to make something that’s both beautiful to use in the terminal and powerful under the hood.
**What My Project Does**
Torrcli lets you search, download, and manage torrents entirely from your terminal. It includes a built-in search feature for finding torrents without opening a browser, a basic stream mode so you can start watching while downloading, and full config file support so you can customize it to your needs. It also supports fast resume so you can pick up downloads exactly where you left off.
**Target Audience**
Torrcli is aimed at people who:
* Enjoy working in the terminal and want a clean, feature-rich BitTorrent client there.
* Run headless servers, seedboxes, or low-power devices where a GUI torrent client isn’t practical.
* Want a lightweight, configurable alternative to bloated torrent apps.
While it’s functional and usable right now, it’s still being polished — so think of it as **early but solid** rather than fully production-hardened.
**Comparison to Existing Alternatives**
The market is dominated mostly by gui torrent clients
/r/Python
https://redd.it/1mq5r48
**Hey everyone,**
I’ve been working on a side project over the past few months and wanted to share it. It’s called **Torrcli** — a fast, terminal-based BitTorrent client written in Python. My goal was to make something that’s both beautiful to use in the terminal and powerful under the hood.
**What My Project Does**
Torrcli lets you search, download, and manage torrents entirely from your terminal. It includes a built-in search feature for finding torrents without opening a browser, a basic stream mode so you can start watching while downloading, and full config file support so you can customize it to your needs. It also supports fast resume so you can pick up downloads exactly where you left off.
**Target Audience**
Torrcli is aimed at people who:
* Enjoy working in the terminal and want a clean, feature-rich BitTorrent client there.
* Run headless servers, seedboxes, or low-power devices where a GUI torrent client isn’t practical.
* Want a lightweight, configurable alternative to bloated torrent apps.
While it’s functional and usable right now, it’s still being polished — so think of it as **early but solid** rather than fully production-hardened.
**Comparison to Existing Alternatives**
The market is dominated mostly by gui torrent clients
/r/Python
https://redd.it/1mq5r48
Reddit
From the Python community on Reddit: I built a terminal-based BitTorrent client in Python — Torrcli
Explore this post and more from the Python community
Tasklin - A single CLI to experiment with multiple AI models
Yoo!
I made **Tasklin**, a Python CLI that makes it easy to work with AI models. Whether it’s OpenAI, Ollama, or others, Tasklin lets you send prompts, get responses, and use AI from one tool - no need to deal with a bunch of different CLIs.
# What My Project Does:
Tasklin lets you talk to different AI providers with the same commands. You get JSON responses with the output, tokens used, and how long it took. You can run commands one at a time or many at once, which makes it easy to use in scripts or pipelines.
# Target Audience:
This is for developers, AI fans, or anyone who wants a simple tool to try out AI models. It’s great for testing prompts, automating tasks, or putting AI into pipelines and scripts.
# Comparison:
Other CLIs only work with one AI provider. Tasklin works with many using the same commands. It also gives structured outputs, supports async commands, and is easy to plug into scripts and pipelines.
# Quick Examples:
**OpenAI:**
tasklin --type openai --key YOUR_KEY --model gpt-4o-mini --prompt "Write a short story about a robot"
**Ollama (local model):**
tasklin --type ollama --base-url http://localhost:11434 --model codellama --prompt "Explain
/r/Python
https://redd.it/1mq324g
Yoo!
I made **Tasklin**, a Python CLI that makes it easy to work with AI models. Whether it’s OpenAI, Ollama, or others, Tasklin lets you send prompts, get responses, and use AI from one tool - no need to deal with a bunch of different CLIs.
# What My Project Does:
Tasklin lets you talk to different AI providers with the same commands. You get JSON responses with the output, tokens used, and how long it took. You can run commands one at a time or many at once, which makes it easy to use in scripts or pipelines.
# Target Audience:
This is for developers, AI fans, or anyone who wants a simple tool to try out AI models. It’s great for testing prompts, automating tasks, or putting AI into pipelines and scripts.
# Comparison:
Other CLIs only work with one AI provider. Tasklin works with many using the same commands. It also gives structured outputs, supports async commands, and is easy to plug into scripts and pipelines.
# Quick Examples:
**OpenAI:**
tasklin --type openai --key YOUR_KEY --model gpt-4o-mini --prompt "Write a short story about a robot"
**Ollama (local model):**
tasklin --type ollama --base-url http://localhost:11434 --model codellama --prompt "Explain
/r/Python
https://redd.it/1mq324g
Reddit
From the Python community on Reddit
Explore this post and more from the Python community
Why rolling back via signals is not a good practice
so i have very complex relations of 5-8 table that are in postgree, and i have made signals for few , but lets go with an example so if lets say we have a transactions and when an instance is created of tpye A transacation_type then i handle credits accordingly , to rollback this transaction i have also added an audit log which keeps the previous state of instance. i can roll back via signals but i have read somewhere that do not use rollback in signals i want to know the context ,like some people say in signals should handle forwards operations that i want to know why
/r/django
https://redd.it/1mqbxwp
so i have very complex relations of 5-8 table that are in postgree, and i have made signals for few , but lets go with an example so if lets say we have a transactions and when an instance is created of tpye A transacation_type then i handle credits accordingly , to rollback this transaction i have also added an audit log which keeps the previous state of instance. i can roll back via signals but i have read somewhere that do not use rollback in signals i want to know the context ,like some people say in signals should handle forwards operations that i want to know why
/r/django
https://redd.it/1mqbxwp
Reddit
From the django community on Reddit
Explore this post and more from the django community
Friday Daily Thread: r/Python Meta and Free-Talk Fridays
# Weekly Thread: Meta Discussions and Free Talk Friday 🎙️
Welcome to Free Talk Friday on /r/Python! This is the place to discuss the r/Python community (meta discussions), Python news, projects, or anything else Python-related!
## How it Works:
1. Open Mic: Share your thoughts, questions, or anything you'd like related to Python or the community.
2. Community Pulse: Discuss what you feel is working well or what could be improved in the /r/python community.
3. News & Updates: Keep up-to-date with the latest in Python and share any news you find interesting.
## Guidelines:
All topics should be related to Python or the /r/python community.
Be respectful and follow Reddit's Code of Conduct.
## Example Topics:
1. New Python Release: What do you think about the new features in Python 3.11?
2. Community Events: Any Python meetups or webinars coming up?
3. Learning Resources: Found a great Python tutorial? Share it here!
4. Job Market: How has Python impacted your career?
5. Hot Takes: Got a controversial Python opinion? Let's hear it!
6. Community Ideas: Something you'd like to see us do? tell us.
Let's keep the conversation going. Happy discussing! 🌟
/r/Python
https://redd.it/1mqhp24
# Weekly Thread: Meta Discussions and Free Talk Friday 🎙️
Welcome to Free Talk Friday on /r/Python! This is the place to discuss the r/Python community (meta discussions), Python news, projects, or anything else Python-related!
## How it Works:
1. Open Mic: Share your thoughts, questions, or anything you'd like related to Python or the community.
2. Community Pulse: Discuss what you feel is working well or what could be improved in the /r/python community.
3. News & Updates: Keep up-to-date with the latest in Python and share any news you find interesting.
## Guidelines:
All topics should be related to Python or the /r/python community.
Be respectful and follow Reddit's Code of Conduct.
## Example Topics:
1. New Python Release: What do you think about the new features in Python 3.11?
2. Community Events: Any Python meetups or webinars coming up?
3. Learning Resources: Found a great Python tutorial? Share it here!
4. Job Market: How has Python impacted your career?
5. Hot Takes: Got a controversial Python opinion? Let's hear it!
6. Community Ideas: Something you'd like to see us do? tell us.
Let's keep the conversation going. Happy discussing! 🌟
/r/Python
https://redd.it/1mqhp24
Redditinc
Reddit Rules
Reddit Rules - Reddit
Create Music with Wolframs Cellular Automata Rule 30!
https://github.com/oppressionslayer/RedditCode/blob/main/rule30\_to\_midi.py
https://github.com/oppressionslayer/RedditCode.git
/r/Python
https://redd.it/1mqh3g5
https://github.com/oppressionslayer/RedditCode/blob/main/rule30\_to\_midi.py
https://github.com/oppressionslayer/RedditCode.git
/r/Python
https://redd.it/1mqh3g5
GitHub
RedditCode/rule30_to_midi.py at main · oppressionslayer/RedditCode
For Reddit Sharing! Contribute to oppressionslayer/RedditCode development by creating an account on GitHub.
Dreaded Django mistake
This happened in staging or UAT. Migrations and database are not in sync because database was hand edited (columns were dropped). Deployments happened since. I know see 0082A, 0083, 0083, 0084, 0084B. Database reflects 0082A and 0084B. How do I get migrations and database in sync? What is the best way out of this mess? Postgres database hosted in cloud. Staging is our Django app deployed on kubernetes.
/r/django
https://redd.it/1mql9p0
This happened in staging or UAT. Migrations and database are not in sync because database was hand edited (columns were dropped). Deployments happened since. I know see 0082A, 0083, 0083, 0084, 0084B. Database reflects 0082A and 0084B. How do I get migrations and database in sync? What is the best way out of this mess? Postgres database hosted in cloud. Staging is our Django app deployed on kubernetes.
/r/django
https://redd.it/1mql9p0
Reddit
From the django community on Reddit
Explore this post and more from the django community
Where Do You Normally Deploy Your Django Web Apps?
I'm a newbie to Django development and I would like to know which platform you can seamlessly deploy your Django apps.
/r/django
https://redd.it/1mpv9da
I'm a newbie to Django development and I would like to know which platform you can seamlessly deploy your Django apps.
/r/django
https://redd.it/1mpv9da
Reddit
From the django community on Reddit
Explore this post and more from the django community
MicroPie version 0.20 released (ultra micro asgi framework)
Hey everyone tonite I released the latest version of [MicroPie](https://patx.github.io/micropie), my ultra micro ASGI framework inspired by CherryPy's method based routing.
This release focused on improving the frameworks ability to handle large file uploads. We introduced the new `_parse_multipart_into_request` for live request population, added bounded asyncio.Queues for file parts to enforce backpressure, and updated `_asgi_app_http` to start parsing in background.
With these improvements we can now handle large file uploads, successfully tested with a 20GB video file.
You can check out and star the project on Github: [patx/micropie](https://github.com/patx/micropie). We are still in active development. MicroPie provides an easy way to learn more about ASGI and modern Python web devlopment. If you have any questions or issues please file a issue report on the Github page.
The file uploads are performant. They benchmark better then FastAPI which uses Startlet to handle multipart uploads. Other frameworks like Quart and Sanic are not able to handle uploads of this size at this time (unless I'm doing something wrong!). Check out the benchmarks for a 14.4 GB .mkv file. The first is MicroPie, the second is FastAPI:
```
$ time curl -X POST -F "file=@video.mkv" http://127.0.0.1:8000/upload
Uploaded video.mkv
real 0m41.273s
user 0m0.675s
sys 0m12.197s
$ time curl -X POST -F "file=@video.mkv" http://127.0.0.1:8000/upload
{"status":"ok","filename":"video.mkv"}
real 1m50.060s
user 0m0.908s
sys 0m15.743s
```
The code used for FastAPI:
```
import os
import aiofiles
from
/r/Python
https://redd.it/1mqnd7u
Hey everyone tonite I released the latest version of [MicroPie](https://patx.github.io/micropie), my ultra micro ASGI framework inspired by CherryPy's method based routing.
This release focused on improving the frameworks ability to handle large file uploads. We introduced the new `_parse_multipart_into_request` for live request population, added bounded asyncio.Queues for file parts to enforce backpressure, and updated `_asgi_app_http` to start parsing in background.
With these improvements we can now handle large file uploads, successfully tested with a 20GB video file.
You can check out and star the project on Github: [patx/micropie](https://github.com/patx/micropie). We are still in active development. MicroPie provides an easy way to learn more about ASGI and modern Python web devlopment. If you have any questions or issues please file a issue report on the Github page.
The file uploads are performant. They benchmark better then FastAPI which uses Startlet to handle multipart uploads. Other frameworks like Quart and Sanic are not able to handle uploads of this size at this time (unless I'm doing something wrong!). Check out the benchmarks for a 14.4 GB .mkv file. The first is MicroPie, the second is FastAPI:
```
$ time curl -X POST -F "file=@video.mkv" http://127.0.0.1:8000/upload
Uploaded video.mkv
real 0m41.273s
user 0m0.675s
sys 0m12.197s
$ time curl -X POST -F "file=@video.mkv" http://127.0.0.1:8000/upload
{"status":"ok","filename":"video.mkv"}
real 1m50.060s
user 0m0.908s
sys 0m15.743s
```
The code used for FastAPI:
```
import os
import aiofiles
from
/r/Python
https://redd.it/1mqnd7u
Harrisonerd
GitHub - patx/micropie: MicroPie is an ultra-micro ASGI Python web framework that gets out of your way.
MicroPie is an ultra-micro ASGI Python web framework that gets out of your way. - patx/micropie
A Playbook for Writing AI-Ready, Type-Safe Python Tests (using Pytest, Ruff, Mypy)
Hi everyone,
Like many of you, I've been using AI coding assistants and have seen the productivity boost firsthand. But I also got curious about the impact on code quality. The latest data is pretty staggering: one 2025 study found AI-assisted projects have an **8x increase in code duplication** and a **40% drop in refactoring**.
This inspired me to create a practical playbook for writing Python tests that act as a "safety net" against this new wave of technical debt. This isn't just theory; it's an actionable strategy using a modern toolchain.
Here are a couple of the core principles:
# Principle 1: Test the Contract, Not the Implementation
The biggest mistake is writing tests that are tightly coupled to the internal structure of your code. This makes them brittle and resistant to refactoring.
**A brittle test looks like this (it breaks on any refactor):**
# This test breaks if we rename or inline the helper function.
def test_process_data_calls_helper_function(monkeypatch):
mock_helper = MagicMock()
monkeypatch.setattr(module, "helper_func", mock_helper)
process_data({})
/r/Python
https://redd.it/1mqr6u7
Hi everyone,
Like many of you, I've been using AI coding assistants and have seen the productivity boost firsthand. But I also got curious about the impact on code quality. The latest data is pretty staggering: one 2025 study found AI-assisted projects have an **8x increase in code duplication** and a **40% drop in refactoring**.
This inspired me to create a practical playbook for writing Python tests that act as a "safety net" against this new wave of technical debt. This isn't just theory; it's an actionable strategy using a modern toolchain.
Here are a couple of the core principles:
# Principle 1: Test the Contract, Not the Implementation
The biggest mistake is writing tests that are tightly coupled to the internal structure of your code. This makes them brittle and resistant to refactoring.
**A brittle test looks like this (it breaks on any refactor):**
# This test breaks if we rename or inline the helper function.
def test_process_data_calls_helper_function(monkeypatch):
mock_helper = MagicMock()
monkeypatch.setattr(module, "helper_func", mock_helper)
process_data({})
/r/Python
https://redd.it/1mqr6u7
Reddit
From the Python community on Reddit: A Playbook for Writing AI-Ready, Type-Safe Python Tests (using Pytest, Ruff, Mypy)
Explore this post and more from the Python community
React + Django Channels Help (groupadd() and groupsend() not working)
Hi,
I am learning how to write a project using Django REST Framework + Django Channels + React for the first time and noticed that I for some reason methods like .groupadd() and .groupsend() do not seem to be working in my project, preventing me from joining the Django Channels room and sending messages between the room's members, respectively.
I have tried using ChatGPT to help me debug the problem but it keeps sending me around in circles by asking me to change the "type" field from "chat.join" to "chatjoin" (the name of my async def chatjoin() method), putting print statements before and behind groupadd() and groupsend() to see if those statements appear in the terminal and thus if execution has stopped during the execution of groupadd()/groupsend(), as well as wrapping the chatjoin() method's implementation in try-catch statements to see if it is silently failing, verifying if my Redis database is up and running at the right address (it is), and even overriding the init() and dispatch methods of the my Consumer class to verify if the "chatjoin" method is being received by my consumer (it is).
None of these have worked and it seems like my entire Consumer class is working (I
/r/djangolearning
https://redd.it/1mk8i2j
Hi,
I am learning how to write a project using Django REST Framework + Django Channels + React for the first time and noticed that I for some reason methods like .groupadd() and .groupsend() do not seem to be working in my project, preventing me from joining the Django Channels room and sending messages between the room's members, respectively.
I have tried using ChatGPT to help me debug the problem but it keeps sending me around in circles by asking me to change the "type" field from "chat.join" to "chatjoin" (the name of my async def chatjoin() method), putting print statements before and behind groupadd() and groupsend() to see if those statements appear in the terminal and thus if execution has stopped during the execution of groupadd()/groupsend(), as well as wrapping the chatjoin() method's implementation in try-catch statements to see if it is silently failing, verifying if my Redis database is up and running at the right address (it is), and even overriding the init() and dispatch methods of the my Consumer class to verify if the "chatjoin" method is being received by my consumer (it is).
None of these have worked and it seems like my entire Consumer class is working (I
/r/djangolearning
https://redd.it/1mk8i2j
Reddit
From the djangolearning community on Reddit
Explore this post and more from the djangolearning community