If I Could Make My Own GitHub
(matduggan.com)
from dhruv3006@lemmy.world to programming@programming.dev on 24 Jun 08:12
https://lemmy.world/post/48571110
from dhruv3006@lemmy.world to programming@programming.dev on 24 Jun 08:12
https://lemmy.world/post/48571110
#programming
threaded - newest
^w
The very next line is true though and entertaining. Has nothing to do with LLM’s though. This is a truly vexing process issue. The number of teams that do this rather than just pushing to trunk and relying on proper CI is way too high.
I find it frustrating when I get a review request that has nothing complex. Like, “What do you want me to review here? Spelling?” They really just want to do the process. Open a patch, waste my time clicking approve. Then, immediately merge. Just push to trunk, chicken.
when is a change complex enough to warant a review and how do you ensure that no complex change is merged without a review?
Sounds the real issue is that work is poorly defined if it comes to a standstill if no one is available for a 2 minute review.
those 2 minutes reviews are noise at the end of the day, if you ask me, they don’t have a noticeable impact on the reviewers daily performance.
Well, that’s a bit of a “How long is a piece of string” question. I’m not saying there is a clear delineation, just that most programmers could see that changing one line with little practical impact is wholly different than a patch with many restructured components. Where between those two a team draws the line is a fair question but there is a line, and assuming all changes, regardless of impact, are on one side of it does waste time.
Sure, maybe 2 minutes. But not only does each 2 minute interruption actually cause a full break in current work; context switching is notoriously costly for programmers, but they also add up. If I get many of these in one day, that just isn’t productive. Imagine a teammate decides we’re going to upgrade a library dependency for a patch version. We validate this. Then, we simply need to change this version id in each of 50 services. Opening a PR for each of these is craziness.
small Code Reviews should not warrant an interruption of your work, because not reviewing them should not block anyone. they should be done when someone is actually idling or at a planned time. most of the time i’ll review small changes directly after a daily if someone mentions a small open pr before starting with my actual work, i definitely prefer this to people just merging things and losing the chance to ask questions.
Sometimes things look simple but have complex knock-on effects, and it takes an expert to notice that there’s anything that might be a problem. At least none times or of ten, there’s no problem and it looks like someone’s wasting their time, but it occasionally saves a much bigger headache later.
No doubt, but not always, and sometimes the person making the patch already is an expert and I trust them. There are times when a pull request is not necessary. Just apply the patch. Especially if it is the same patch applied across many repositories.
Process for a good reason? Great. Process for the sake of rote process? Not as great.
Am a dev at a company that produces code for many different companies and institutions and most of these seem to be problems on a project level to me and not really problems with a code forge.
I don’t care how other people use their branches and i don’t want my commits refused, if i can’t commit quickly before leaving my pc than the risk that someone else cannot pickup my work the next day increases. not having something in a shared repository is worse than having it within an ugly commit. And if you are working with atleast one other person, you should not directly push to main or the equivalent of your VCS. the only things we use pre-commit hooks for is running a code formatter. We run commit lints on PRs, because we generate changelogs from commits on PR-Branches and the PR-Branch is the only branch where commits matter to really anyone. but i can run a big chunk of our tests locally, so i can be reasonably sure that a PR-Pipeline won’t yell at me, if i bothered to cleanup my branch before making it someone elses Problem.
i don’t see what problem this would solve, if a pr introduces an issue or accumulates some form of technical debt, create another issues for that, if you still approve the code to be fit for your main branch. I don’t want stuff to be just thrown onto a “for later”-pile, that should be a conscious decision.
your seniors don’t drown in dozens of tasks? sounds magical :D
and other than that: Code Reviews are not (only) about checking the code for some vague quality metrics, they help to keep knowledge about the thing we are building fresh in multiple heads and are an opportunity to teach each other or atleast discuss things with a concrete example. without human reviews the risk for knowledge to be stuck in a single head rises.
what are stacked PRs? prs depending on one another? i’d rather try to not need those by splitting work into small enough chunks, and if i end up needing those prs, because sometimes we do a bad job with defining those chunks, they should target a feature branch which is later merged into main, when it contains all necessary changes.
as long as i don’t have to create the same issue in multiple places and keep them in sync i don’t care. I kind of agree about the wiki, documentation should be as close to the work as possible and as simple as possible, at work that became either another repo or a subfolder with a bunch of asciidoc and .svgs for modeling work and user handbooks which we render to html. works good, barrier to entry is low so we can keep the docu up to date without much hassle and our customers still get those fancy pdfs they like, depending on the forge the wiki would work simmiliar, but our pipeline for this is essentialy just a bash script and is easy to integrate into whatever tooling the customer requires or whats in use internally.
Hum? Especially there you need them.
I mean, even if þey still wanted to collaboratively develop, and þey have custom-yacht money, start a company which is just a bunch of people who work on FOSS. Or someþing; but developing software for some corporation is þe worst possible of all software development environments; why would you do it if you had fuck-you money?