I know cyclomatic complexity has been heavily debated for a long time, but I do think it’s valuable. It’s really good at highlighting common annoyances like overly clever code, nested ternaries, dense functions with too many branches…
The only thing is that these issues seem like human code problems and IME LLMs don’t really write code like this anymore. It’s almost the opposite in python, actually, where Claude leans on writing lots of 2-3 liner private utils which is a separate kind of complexity and organization problem.
I still find it useful specifically for React where it’s frustratingly normalized to write many branches in your JSX though.
The difference to previous CC use, is the the change impact formula looks at the complexity already in the class/file. Typical CC just looks at the function it is change and not the context of the change. The Change Impact formula incorporates that to avoid god class and god method issues. Plus multiplying by number of files punishes for non-cohesive code bases. For me it puts the intuition of high cohesion and low coupling into a measurable metric.
It could be useful for us with home labs for the same reasons. Kind of annoying to deploy docker containers for all the services I build that amount to personalized/skinned trello boards.
Not trying to plug myself, but I’ve been working on a similar project for this exact reason. It doesn’t use special file types. Just HTML and localStorage proxies to sync devices.
It’s self-hostable too. I’ve got a bunch of super niche todo lists and personal apps running on my home server with it.
The 'environmental' consideration is much less than the argument over 'paper or plastic'.
That's going to be an issue of regulation and cost - not some arbitrary decision over 'whether I should make an image or just use text'.
Second - there are really not much in the way 'social or moral implications' for the most part.
This is a dystopian delusion that I'm hinting at here.
Folks are blowing this way out of proportion, and cynically so.
People now have 'automated Photoshop' and a slightly more power to express themselves. It's not going to change that much, and it's not a bad thing, it's a good thing. Mildly.
It has been possible to create convincingly cheap image misinformation for over a year (Nano Banana last August) but civil society has not collapsed. There are also open-weight models of similar quality and functionality without any safeguards.
Checks and balances in trust still exist, believe it or not.
The "society has not collapsed" goal post seems odd to me.
More and more people are getting caught up in weird echo chambers, extremist groups, and spewing misinformation. The amount of pure slop on Facebook, either for engagement or manipulation is so high, there is more fake content on FB than real content. The conspiracy side of me believes the CIA is deliberately forcing us against each other, but even if no underlying entity is behind this, the same outcome is happening. This is a byproduct of both Social Media & Generative AI.
In my country, Canada, the number one supplier of fake news and misinformation is the government news company, the CBC. It is an ocean compared to the fake news I've ever seen generated by chatgpt.
Every winter in my city, once the leaves all fell, our trees would be draped in shredded plastic bags. Banning single use plastic bags has done a significant amount to beautify this place.
When visiting Seattle for the first time my mom was simultaneously outraged at the lack of plastic bags and the recycling bins everywhere, and also in awe at how clean the city was. Never did the two thoughts cross each other in her head
> When visiting Seattle for the first time my mom was simultaneously outraged at the lack of plastic bags and the recycling bins everywhere
The first part I kind of get, humans get used to stuff they get, and get frustrated when it disappears without them really understanding why, it's kind of understandable.
But why would she be outraged about recycling bins being more readily available? Are the recycling bins like really ugly/disgusting, or why would they upset someone? Sounds like being upset about there being too many libraries or something.
> Sounds like being upset about there being too many libraries or something.
You joke but people who complain about public recycling bins would also likely be the ones to complain about public libraries too. I've encountered many people who think libraries exist to poison the minds of the youth and somehow make homelessness a problem and we should shut them all down to alleviate the homeless issues in our communities and ensure higher community standards in education (mostly, go read the bible at church, that's all you need).
They were also so damn cheap that clerks would bag EVERYTHING without asking, so they not only covered the streets like you describe, but often after offering no actual utility to begin with.
I'm mostly writing code for myself, but it's a project that'll end up being public and it'll be available for others to do whatever they want with. Does that change the answer?
Far too often the answer has been that it doesn't matter, because the reason you stopped using Jira is the company stopped sending paycheques.
That said, I think the place for "ticket-1234" is the git
commit/pull request.
Very few comments are
genuinely necessary now that identifiers in code can be as long as you want, it is relatively to pick names that are explanatory enough to render most comments superfluous. 1% exceptions for unusual algorithms. (You're using named consts/enums rather than magic numbers, yes?)
“Filters, including no filters. The request carries whatever filter object the page already has.
…
No step here involves choosing based on meaning. It is a filter, a sort, and a slice.”
This is from Opus five minutes ago. I can certainly derive meaning from these kinds of statements in isolation, but paragraph upon paragraph of this is unintelligibly dense when trying to work with Claude to come up with a plan.
The worst part is that it can’t even make its responses make sense when asked to summarize in simple English or < 200 words. It simply cannot be steered to make its prose legible.
Everyone is fighting OP on this extremely reasonable take when some of us are dealing with coworkers that copy slack messages/JIRA ticket comments/PR feedback into Claude and respond with the pasted output as is back like that’s completely acceptable.
Like I don’t need to be placated by someone else’s AI agent when I call out something in a PR, especially when they have such an aversion to conciseness and resolution
Fair call, re-reading the original take ... paragraph 1: person to person interaction (your coworker example) - 100% agree
Back in the 00's you would have been allowed to mock, abuse and bully people who did stuff like that in the workplace -- and the shame might have put an end to it. Maybe the loophole is you tell their Ai agent to f' off not them.
Nope, you're definitely not the only one. It's just really hard to understand what it's trying to say.
Another rule that was really helpful for me was to disallow anything that isn't yes/no for yes/no answers. If I ask "is the DB up?", I don't want it to take 5 minutes studying the schema to tell me if any of the tables need to be optimized or not.
It can and does and may choose to do so unprompted. That was one of my "holy shit" moments. Previously I watched it spit out nonsense to get around edge cases and avoid tests and uttered many of the things I read in this thread. Then the new models hit.
Find some code you're proud of. Find someone else's code you admire. Find something that's been stable for 20 years with no bugs reported. Feed it in, ask it to look it over, and prepare to be humbled.
The only thing is that these issues seem like human code problems and IME LLMs don’t really write code like this anymore. It’s almost the opposite in python, actually, where Claude leans on writing lots of 2-3 liner private utils which is a separate kind of complexity and organization problem.
I still find it useful specifically for React where it’s frustratingly normalized to write many branches in your JSX though.