We still see somewhat old browsers, especially from people using Safari on Apple devices (because IIRC it only updates when you update the whole OS). But it’s a lot better than it used to be thanks to most browser having auto-updates
We still see somewhat old browsers, especially from people using Safari on Apple devices (because IIRC it only updates when you update the whole OS). But it’s a lot better than it used to be thanks to most browser having auto-updates
Works fine for me. Which OS and browser are you using ?
I’m not sure how this relates to the shared post. I’m just searched the article for “radius” and only found one example where a variable is defined then used later. Were you talking about this ? Or can you clarify what “radius calculation” you hate ?
It seems to be working for me, it’s weird. I’ve updated the post with the same URL anyway, and you can try https://scribe.bus-hit.me/@karstenbiedermann/goodbye-sass-welcome-back-native-css-b3beb096d2b4 if that still does not work
Well it’s in the name, they are code smells, not hard rules.
Regarding the specific example you cited, I think that with practice it becomes gradually more natural to write reusable functions and methods on the first iteration, removing the need for later DRY-related refactorings.
PS : I love how your quote for the Rule of Three is getting syntax highlighted xD (You can use markdown quotes by starting quoted lines with >
)
Let’s rephrase my opinion, so that we can (hopefully) agree on something : What I’m arguing against is the “ChatGPT-style” (or “tutorial-style”) comments that I’ve seen all over juniors’ code, even before LLMs got widespread
When refactoring, it’s often the “what” that changes, not the “why”
I’m not sure how we disagree. At least, I don’t disagree with you. My whole comment was talking about “what” comments. “Why” comments are a very good thing to have where they’re needed
That’s not what I said. I said that comments can often (but not always) be replaced with good and explicit names.
This can be pushed to some extreme by making functions that only get called at a single place in the code, just for the sake of being able to give a name to the code that’s inside (instead of inlining it and adding a comment that conveys the same informations as the function’s signature)
It’s definetly not for everyone, but for beginners/juniors it gives something objective they can aim for when trying to build good coding habits
Apart from the fact that, as another commenter said, “smells” are not “rules”, I think most of these points come down to developing good habits, and ultimately save a lot of time in the long run by initially spending some time thinking about maintainability and preventing/limiting technical debt accumulation.
It’s often a good idea to make the code itself very explicit through verbose function and variable names, rather than writing comments that could lead to inconsistencies between code and comments (by not updating the comments at the same time as the code) (see “Fallacious Comments” from the catalog)
They are both serialization formats that are supposed to be able to represent the same thing. Converting between these 2 formats is used in the article as a way to highlight yaml’s parsing quirks (since JSON only has a single way to represent the false
boolean value, it makes it clear that the no
value in yaml is interpreted as a boolean false
and not as the "no"
string)
Anyway, I disagree with your point about YAML and JSON not being interchangeable
Did you find the article stupid, or are you talking about yaml parsing ?
The problem is specifically that in’t not exactly clear what’s considered ambiguous. For instance, no
is the same thing as false
, but as evidenced in the linked post, in the context of country codes, it means “Norway” and it’s not obvious that it might get interpreted as a boolean value.
It’s the same thing as this famous meme about implicit type conversions in JS :
In any almost other context (where boolean values exist), strings must be delimited by quotes, eliminating the ambiguity with false
as string contents and the false
boolean value
I think most open-source contributions come from a tiny fraction of users who initially get involved because they want to improve the project or fix a bug for their own usage
From a quick search on my instance, I could find 3 posts that are still up, and I could also find specific comments I remembered from a post that got removed since.
That’s at least 4 occurrences on Lemmy alone
I did not criticize people sharing it here, but rather Ente themselves for making vague fear-mongering claims for viral marketing purposes
What’s up with this website popping in my feed for the 6th time in less than a week ?
Edit : nevermind, after digging the website for a grand total of 5 seconds, it appears to be an advertising website for Ente (which has a paid plan besides being self hostable). That’s shitty marketing from them if you ask me
You’ve probably read about language model AIs basically being uncontrollable black boxes even to the very people who invented them.
When OpenAI wants to restrict ChatGPT from saying some stuff, they can fine tune the model to reduce the likelihood that it will output forbidden words or sentences, but this does not offer any guarantee that the model will actually stop saying forbidden things.
The only way of actually preventing such an agent from saying something is to check the output after it is generated, and not send it to the user if it triggers a content filter.
My point is that AI researchers found a way to simulate some kind of artificial brains, from which some “intelligence” emerges in a way that these same researchers are far from deeply understanding.
If we live in a simulation, my guess is that life was not manually designed by the simulation’s creators, but rather that it emerged from the simulation’s rules (what we Sims call physics), just like people studying the origins of life mostly hypothesize. If this is the case, the creators are probably as clueless about the inner details of our consciousness as we are about the inner details of LLMs
Oh I missed this. I think it’s only here to showcase doing math between different units, which is really nice in my opinion. I’m thinking about a few instances where I had to resort to dirty JS hacks just because CSS did not support this at the time