Walnut356

joined 1 year ago
[–] Walnut356@programming.dev 1 points 11 months ago* (last edited 11 months ago)

Qownnotes

It's a desktop app, but can sync with self-hosted cloud servers. It's also literally just text/markdown files.

[–] Walnut356@programming.dev 4 points 1 year ago

For sure, but as long as clickbait works they'll keep doing it.

[–] Walnut356@programming.dev 1 points 1 year ago (1 children)

I mean yeah, but why? Like what did you like about it?

[–] Walnut356@programming.dev 2 points 1 year ago* (last edited 1 year ago) (2 children)

To be fair, "an entire x" does have markedly different connotation than "x". The emphasis is that it's, well, the entirety of x. It's the difference between "i ate the cereal" and "i ate all the cereal".

[–] Walnut356@programming.dev 1 points 1 year ago (3 children)

Claymore (the end was kinda mid)

Genuinely curious - why do you like it? I see this at the top anime of all time. I watched it a few years ago and i thought it was absolutely horrible. Like 2 or 3 out of 10.

I feel like the only reason i can see is "the main character is a bad guy" but that doesnt excuse trope-y terrible writing, flat characters, and mid-2000's animation that aged horribly. Am i missing something?

[–] Walnut356@programming.dev 6 points 1 year ago

Honestly, it's because a bunch of programs i used disappointed me (performance, functionality, [being a web app at all], etc.) and i figured it couldnt be that hard to do it better. In some cases i was right, in most i was wrong. As it turns out though, I really like programming so i guess i'm stuck here

[–] Walnut356@programming.dev 1 points 1 year ago

I mean to be fair, those errors arent really meant for you (the end user) in the first place.

[–] Walnut356@programming.dev 2 points 1 year ago* (last edited 1 year ago) (1 children)

I’m not sure I understand your point about fall through having to be explicit

As far as i understand it, every switch statement requires a break otherwise it's a compiler error - which makes sense from the "fallthrough is a footgun" C perspective. But fallthrough isnt the implicit behavior in C# like it is in C - the absence of a break wouldnt fall through, even if it wasnt a compiler error. Fallthrough only happens when you explicitly use goto.

But break is what you want 99% of the time, and fallthrough is explicit. So why does break also need to be explicit? Why isnt it just the default behavior when there's nothing at the end of the case?

It's like saying "my hammer that's on fire isnt safe, so you're required to wear oven mitts when hammering" instead of just... producing a hammer that's not on fire.

From what i saw on the internet, the justification (from MS) was literally "c programmers will be confused if they dont have to put breaks at the end".

[–] Walnut356@programming.dev 4 points 1 year ago* (last edited 1 year ago) (3 children)

the ergonomics expected of modern languages.

As someone learning c# right now, can we get some of those "modern ergonomics" for switch statements 💀

I cant believe it works the way it does. "Fallthrough logic is a dumb footgun, so those have to be explicit rather than the default. But C programmers might get confused somehow, so break has to be explicit too"

I miss fallthrough logic in languages that dont have it, and the "goto case" feature is really sick but like... Cmon, there's clearly a correct way here and it isnt "there is no default behavior"

[–] Walnut356@programming.dev 2 points 1 year ago (4 children)

Generators probably. It's the one thing i genuinely miss about python when i work in rust.

[–] Walnut356@programming.dev 1 points 1 year ago

Ick. At the very least, i've seen it a LOT less in VSC. The fact that something as simple as rainbow brackets uses the freemium model in intellij sucks. I mean the fact that it's not a builtin setting is dumb too but that's beside the point

[–] Walnut356@programming.dev 5 points 1 year ago* (last edited 1 year ago)

I feel like it's like pointers.

"Variable" refers to the label, i.e. a box that can contain anything (like *ptr is a pointer to [something we dont know anything about])

Immutable describes the contents, i.e. the stuff in the box cant change. (like int* ptr describes that the pointer points to an int)

Rust makes it very obvious that there's a difference between constants and immutable variables, mainly because constants must be compile time constants.

What do you call it when a variable cant change after its definition, but isnt guaranteed to be the same on each function call? (E.g. x is an array that's passed in, and we're just checking if element y exists)

It's not a constant, the contents of that label are "changing", but the label's contents cant be modified inside the scope of that function. So it's a variable, but immutable.

view more: next ›