Readit News logoReadit News
duncan-donuts commented on Compression culture is making you stupid and uninteresting   maalvika.substack.com/p/c... · Posted by u/kjhughes
afavour · 2 months ago
Oh boy does this ring true to me. Worked briefly with a contractor who wanted to do something with some internal tooling and couldn't figure out how. Said he asked ChatGPT and it doesn't know either. Terrifying how little supposedly qualified people understand what they're even doing.
duncan-donuts · 2 months ago
I think the terrifying part is just how fast software practitioners completely gave up trying to understand anything. As if these oracles actually know anything about our bespoke systems. It was almost overnight that SMEs were lost.
duncan-donuts commented on Please don't force dark mode   iamvishnu.com/posts/pleas... · Posted by u/vishnuharidas
loloquwowndueo · 8 months ago
Can someone share a guide or how to for detecting the device’s preference and honouring that? That sounds optimal.
duncan-donuts commented on SQL nulls are weird   jirevwe.github.io/sql-nul... · Posted by u/subomi
demurgos · 8 months ago
> select null = null; returns NULL, because each NULL is basically a placeholder representing any “unknown value”. Two unknown values are not necessarily the same value; we can’t say that they are equal, because we don’t know the value of either of them.

Agreed with all of this, it would probably have been better if they were named `unknown` instead of reusing the `null` keyword.

Note also that since Postgresql 15, you can use `NULLS NOT DISTINCT` when creating a unique index [0]. I'm less familiar with other databases.

0: https://www.postgresql.org/docs/15/sql-createtable.html

duncan-donuts · 8 months ago
Introducing “unknown” feels like another kind of hell like undefined in JavaScript.
duncan-donuts commented on Python with Braces   github.com/mathialo/bytho... · Posted by u/punnerud
necovek · a year ago
This is a great discussion with many a differing point of view.

To some, significant indentation is better.

Others — too used to braces — miss them dearly in Python.

Next ones, vie for the non-text source code, something to get us past these discussions altogether (editors working on .pyc files directly?).

For programs to be maintained, they need to be read, understood and improved. One—often undervalued—skill in programming is to write beautiful code, because that is more art than craft. And unfortunately, tools like Black prohibit the true artists from expressing themselves clearly with code formatting too. And to those, white-space or braces matters on a different level, and everything else is attempting to make up excuses for why one is better than other.

And while conceptual operations we do on the code seem simple on the surface, devising an editing tool that would do semantic operations on the AST is fricking hard and likely to be very non-ergonomic. Look at all the attempts to make code refactoring tooling: it's crazily complex and confusing that it's simpler to just go and grep for a string and fix anything you find.

As long as it's faster to use regular editing operations to shuffle code around, indent or unindent it (or wrap it with braces), tweak one thing here or there, simple text editors will mostly rule the world of programming.

duncan-donuts · a year ago
I think people are actually searching for Lisp far more than we are willing to admit.
duncan-donuts commented on Pg_lakehouse: A DuckDB Alternative in Postgres   blog.paradedb.com/pages/i... · Posted by u/eatonphil
swasheck · a year ago
off-topic but i’m so licensing ignorant that each time something like this comes up i have no idea what’s being said. is there a good ELI5 resource where i can get started with licensing permissiveness?
duncan-donuts · a year ago
GNU is a good source for copyleft license info. Iirc they also address other open source licenses. https://www.gnu.org/licenses/licenses.html. Also https://choosealicense.com/ is good for some tldr info

Dead Comment

duncan-donuts commented on Instead of “auth”, we should say “permissions” and “login”   ntietz.com/blog/lets-say-... · Posted by u/tambourine_man
recursive · a year ago
What could be a difference between identification and authentication? In my understanding they are completely synonymous. I frequently use an IdP (identity provider) to authenticate for web applications.
duncan-donuts · a year ago
I think authentication is about proof of identity. Identity can mean a lot of things imo. Applications identify me all the time without me giving them any proof of who I am. This happens in meatspace all the time too. People project identity and we make assumptions about what we observe. We don’t necessarily ask them to verify this identify through mutually agreed upon terms.
duncan-donuts commented on Ask HN: Which low-budget camera would you recommend for recording podcasts?    · Posted by u/mmathias
waffleiron · a year ago
I would even say that room treatment is a lot more valuable to a starting podcast. Sure don’t have the cheapest, shittiest mic but especially starting our room treatment grants a lot more value.

Of course, you could record in your closet ;)

duncan-donuts · a year ago
Second the room treatment. It should likely be prioritized over everything. Specifically you should look into getting bass traps and a gobo or three. There’s budget stuff out there but sound is fickle. Control those reflections. Expensive mics still sound bad if a room sounds bad.
duncan-donuts commented on Maybe Functions   blog.benwinding.com/maybe... · Posted by u/gitgud
bakhy · a year ago
This looks too easy, the first solution. If there is no logged on user, which User object is fetchUser going to return? Which friends? At the top level, if I were to forget to check if someone is logged in, who knows what would happen here.

I've worked on codebases where people were so allergic to the "billion dollar mistake" of nulls, that they created empty objects to return instead of returning null. This bit us in the ass a couple of times, e.g., when caller code was mistakenly passing the wrong ID variable into a fetch method, and just happily continued working and writing garbage into the DB, because it did not realize that its fetch had actually failed. It took data from the empty result object and happily continued its computation with it.

duncan-donuts · a year ago
I’ve had limited success with the null object pattern but there is one case that it worked really well for me. I worked on a feature that was highly dynamic and users could compose reports selecting data points from tangentially related models. Null objects were a really helpful pattern because it was hard to anticipate how models would be composed and if a developer made a mistake it was hard to notice there was no effect. Our null objects would raise exceptions in development and explain what you need to change but wouldn’t prevent execution in production.

You could easily argue we should have just presented this exception to the user in all cases but this is where we landed. It’s probably the only case this pattern was beneficial for me.

duncan-donuts commented on Another open-core project rejecting PR citing paid feature   github.com/ToolJet/ToolJe... · Posted by u/landingarea
caesil · a year ago
Well, they actually cite technical reasons:

>there will be a conflict in the architecture

Title makes it sound like they reject paid features out of hand.

duncan-donuts · a year ago
Idk if I’d take that explanation at face value.

I’m trying to recall a time in my career where I’ve heard this phrase and it was actually a technical problem. Most of the time this is a dismissive response that is more political than it is technical. And let’s be honest — we’re the ones inventing the architecture of the applications. If a feature is desired but it “conflicts with the architecture” then you figure out how to resolve the conflict.

u/duncan-donuts

KarmaCake day1068January 20, 2017
About
Sr. Software Engineer at Greenhouse Software.

Opinions are my own

View Original