this post was submitted on 24 Jul 2025
226 points (96.3% liked)
Showerthoughts
36191 readers
1601 users here now
A "Showerthought" is a simple term used to describe the thoughts that pop into your head while you're doing everyday things like taking a shower, driving, or just daydreaming. The most popular seem to be lighthearted clever little truths, hidden in daily life.
Here are some examples to inspire your own showerthoughts:
- Both “200” and “160” are 2 minutes in microwave math
- When you’re a kid, you don’t realize you’re also watching your mom and dad grow up.
- More dreams have been destroyed by alarm clocks than anything else
Rules
- All posts must be showerthoughts
- The entire showerthought must be in the title
- No politics
- If your topic is in a grey area, please phrase it to emphasize the fascinating aspects, not the dramatic aspects. You can do this by avoiding overly politicized terms such as "capitalism" and "communism". If you must make comparisons, you can say something is different without saying something is better/worse.
- A good place for politics is c/politicaldiscussion
- Posts must be original/unique
- Adhere to Lemmy's Code of Conduct and the TOS
If you made it this far, showerthoughts is accepting new mods. This community is generally tame so its not a lot of work, but having a few more mods would help reports get addressed a little sooner.
Whats it like to be a mod? Reports just show up as messages in your Lemmy inbox, and if a different mod has already addressed the report, the message goes away and you never worry about it.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
It's methodology. Basically what you need is the correct amount of process - you can pick agile or scrum or whatever, and then you follow it to the amount that it makes sense. If you over-adhere to it, it slows things down to a crawl
Once you get up to 10 team members, you need to do things like feature branches, code reviews, and rigid style. You should also add in tests... At 10 you don't have to have full coverage, but you need to be able to exercise your system enough to know when something breaks immediately
You also need ownership. You need one primary person who is the heart and soul of the code base, and they're going to be the one who knows the whole thing and gives everyone direction. You can spin off another team at solid interface points, like an API or a plug in system, but you need one person who owns the core system and holds the code debt back
You also can add in code pipelines, enforce docstrings to generate documentation, you need diagrams so people understand how things flow through the system, etc
Ultimately, a lot of it comes down to mentorship. You have to be very hands on teaching people how the code works, and really hold their hand until they gain proficiency over an area. Then let them be secondary owners over that part of the symptom... And you have to make sure to stick them in a place where they'll be a benefit - as you grow in numbers, it gets easier for each new person to be a drain on progress.
I'm not sure about academic sources...I dropped a lot of keywords in there that might help search, but ultimately it's about team culture. You can't just shove it all in at once, you have to slowly add new processes and make sure everyone is moving in the same direction
I know these concepts - after working in the industry for a while. Computer science education barely touched these topics. One professor was passionate enough to hint at test driven development, but that’s about it.
I had a nice teacher who gave us IRL clients over the course of a full year, and basically guided us through the process while teaching us methodology theoretically as we went through the process
I don't think there's a better way, honestly the theory is important, but methodology is learned by doing. I really benefitted by learning from my brother... He taught me best practices as he went through school and the workforce. So I pay it forward
I think courses should focus more on teaching how to use libraries and debug tools... Past that, you get into skills that can't be taught, only learned