[-] lysdexic@programming.dev 1 points 1 week ago

(...) rust, since js is much higher level. you should be comparing it with c, c++, zig, maybe nim, etc

Obvious troll.

[-] lysdexic@programming.dev 1 points 3 months ago

You just referenced two languages that don’t have proper sum types. lol.

You're complained about "Proper HTTP implementations in proper languages".

I provided two concrete examples of two of the most popular and production-grade programming language ever developed.

I can provide more.

You then tried to weasel out by moving your goal post from "Proper HTTP implementations in proper languages" to "languages that don't have proper sum types".

I won't waste more of my time with you. Whatever you're posting lacks relevance and does not justify any attention from anyone.

[-] lysdexic@programming.dev 1 points 3 months ago

I would only recommend a monorepo if you’re a company with at least 5,000+ engineers and can dedicate significant time to internal infra.

It's funny because at least one FANG does not use monorepos and has no problem with them, in spite of being at the same scale or even perhaps larger than Facebook.

I wonder why anyone would feel compelled to suggest adopting a monorepo in a setting that makes them far harder to use and maintain.

[-] lysdexic@programming.dev 1 points 3 months ago

Proper HTTP implementations in proper languages utilize header-name enums for strict checking/matching (...)

I don't know what you are talking about.

Java provides java.lang.Object.HttpHeaders, which is a constants class that provides static final String fields for the popular request and response headers.

.NET does the exact same thing with it's class Microsoft.Net.Http.Headers.HeaderNames.

I can go on and on.

[-] lysdexic@programming.dev 1 points 4 months ago

Agile is not a system. It’s a set of principles, set by the Agile manifesto.

The Agile manifesto boils down to a set of priorities that aren’t even set as absolutes.

I strongly recommend you read upon Agile before blaming things you don’t like on things you don’t understand .

[-] lysdexic@programming.dev 1 points 5 months ago

Logging in local time is fine as long as the offset is marked.

I get your point, but that's just UTC with extra steps. I feel that there's no valid justification for using two entries instead of just one.

[-] lysdexic@programming.dev 1 points 1 year ago

sql was built so people other than devs can use it, but we got stuck with it.

Not really. Being designed with UX in mind, so that it sacrifices conciseness for readability, does not make it something for "people other than devs".

Likewise, BASIC was also developed with UX in mind, and no one in their right mind would ever claim that it's not a programming language.

[-] lysdexic@programming.dev 1 points 1 year ago

It’s long running, so you want a database so you can store your state. If you’re storing state, locking it into a state machine makes sense.

That's besides the point. Of course that the most fitting way to represent a state machine is with a state machine. The point is that implementing the transition table in a database table creates many problems while apparently solving none.

[-] lysdexic@programming.dev 1 points 1 year ago

So, you still have to go through all the dependencies, vulnerabilities and incompatibilities.

That's the point. There is no free lunch. Yet, you can live with stable, pinned versions and only upgrade the ones you really need to, and that means exercise your personal criteria instead of mindlessly upgrade everything just because there was a bump in a version number somewhere in an upstream dependency.

Yes, you can now kind of control the timing,

Timing, extent, scope, and impact. That's the point.

but it’s still unacceptable in my opinion, that you have to spend so much time just to not be an active danger to everyone.

You only spend the time you decide to spend. There are already vulnerability scanners that pinpoint exactly which versions need to be updated, and do that automatically for you. Mindlessly opening the floodgate to each and every change is by definition idiocy and a liability.

[-] lysdexic@programming.dev 1 points 1 year ago

In practice, Protocols are a way to make “superclasses” that you can never add features to (for example, readinto despite being critical for performance is utterly broken in Python).

Not really, and this interpretation is oblivious to the concept of protocols and misses the whole point of them.

The point of a protocol is to specify that a type supports a specific set of methods with specific signatures, aka duck typing, and provide the necessary and sufficient infrastructure to check if objects comply with a protocol and throw an error in case it doesn't.

Also, protocol classes can be inherited, and protocols can be extended.

https://peps.python.org/pep-0544/

view more: ‹ prev next ›

lysdexic

joined 1 year ago
MODERATOR OF