A forum for software engineers
Work through code, together.
Jimineering is a community where software engineers collaborate, talk through code and solve problems side by side. Bring a question, a pull request or a stubborn bug, and leave with a clearer answer.
For professionals and learners, 18 and over.
Why does my counter lose updates when threads share it?
self.value += n reads, adds and writes in separate steps, so two threads can overwrite each other. Guard the update with a lock:
1import threading
2
3class Counter:
4 def __init__(self):
5 self.value = 0
6 self._lock = threading.Lock()
7
8 def increment(self, n=1):
9 # One thread at a time past this line
10 with self._lock:
11 self.value += n
12 return self.value
An example of the kind of answer you’ll find on the forum.
What you can do here
Everything is built around getting to a working answer, and learning something on the way.
-
Ask questions, get accepted answers
Post what you’re stuck on with the code and context that matter. When an answer solves it, mark it accepted so the next person finds the fix right away.
-
Get your code reviewed
Share a function, a query or a whole approach and get thoughtful feedback from people who have shipped similar work. Return the favor when you can.
-
Find your corner
Conversations are organized into focused categories, so you can follow what you work on and skip what you don’t.
-
Suggestions that stay private
We suggest topics based on what you read. Those suggestions are worked out on our own servers, and no outside AI provider ever sees your posts.
How it works
Getting started takes a few minutes.
-
Create your account
Sign up and choose a username. That’s all you need to start reading and posting.
-
Follow what you work on
Choose the categories and subjects you care about, and your feed fills up with the conversations that matter to you.
-
Ask, answer and review
Post a question, help someone with theirs, or review a bit of code. Every good answer makes the next search easier.
Who it’s for
Jimineering is for adults, 18 and over, who write software or are learning to.
- Working engineers who want a second pair of eyes on a tricky problem.
- Learners building their skills who want clear, patient explanations.
- Anyone who enjoys helping others get unstuck and sharing what they know.
What we value
A good forum depends on the people in it. We ask everyone to keep a few things in mind.
-
Respectful
Critique the code, never the person. Everyone started somewhere.
-
Practical
Share working examples, explain the why, and follow up when something is solved.
-
No spam
No self-promotion, link dumps or low-effort posts. Keep it useful for the next reader.
Ready to dig in?
Join the forum, follow a few categories and ask your first question. We’re glad you’re here.