MapleLeaf ๐Ÿ

MapleLeaf ๐Ÿ

@mapleleaf.dev

code โ€ข TTRPG โ€ข EDM โ€ข rhythm games โ€ข anime โ€ข he/they ๐Ÿณ๏ธโ€๐ŸŒˆ โ€ข not actually Canadian ๐Ÿ โ€ข opinions are my own https://mapleleaf.dev

1.9K followers331 following342 posts

MapleLeaf ๐Ÿ reposted

#rustlang hot take: We should rename .unwrap() to .or_panic(). (And .expect() to .or_panic_with().) "Unwrap" is a terrible name for the panicking function, especially since we also have things like .unwrap_or() and .unwrap_or_default() which never panic.

MapleLeaf ๐Ÿ reposted

Replying to @danabra.mov

so my position is โ€œit might be extremely bad to society as a whole and completely cook our brains but itโ€™s already here and will only accelerate, so we might as well learn to live with it and harvest the good parts and hope the generations that grew up with it will learn to live with itโ€

MapleLeaf ๐Ÿ reposted

Trump and Musk share a commonality of somehow being both quite clever and extremely dumb which I (and others) have found confusing. I have a model that has been working. I think theyโ€™re both clever guys with extremely narrow worldviews.

I'm close to thinking I just fundamentally can't work on a team. I don't _want_ to think that, but I've hit repeated friction in the past caring about things that others apparently don't, for better or worse

View full thread

but capitalism demands it. I can't delete capitalism. am i the problem? doesn't matter - I've tried and failed to change myself, so i either stay miserable, or the world fucking burns, I guess

I'm close to thinking I just fundamentally can't work on a team. I don't _want_ to think that, but I've hit repeated friction in the past caring about things that others apparently don't, for better or worse

And now, I'm buried into uselessness by the cognitive and social burden of fruitlessly trying to figure out what problems are worth mentioning and what isn't. I'm feeling like I have to come with a corporate slideshow with numbers, charts, statistics, and research papers to justify anything.

Sure, feel things around. Find a middle ground. Learn the tips and tricks. Or just rewire myself to stop caring. But I'd honest to god rather give the fuck up than put myself through an experience akin to grinding sandpaper against my eyes

one of my favorite things about discord chat is that the specific flavor and behavior of your mic environment, voice suppression, echo and stuff becomes a part of your personality

MapleLeaf ๐Ÿ reposted

@robpalmer.bsky.social makes a good point - `--strict`-by-default isn't the only thing to expect in TypeScript 6.0. We're trying to adopt better defaults and simplify for the future. Check out the current plans on our milestone: github.com/microsoft/Ty...

github.commicrosoft/TypeScriptTypeScript is a superset of JavaScript that compiles to clean JavaScript output. - microsoft/TypeScript
Rob Palmer@robpalmer.bsky.social

TypeScript excitement ๐Ÿ˜‰ TS 6.0 is planning a bunch of breaking changes to tsconfig options to deprecate some and change the defaults for others. This will simplify configuration and ease the transition to the Go-based TS 7.0 ๐Ÿ‘ The latest pitch is to enable strict type-checking modes by default ๐ŸŽ‰

kirby air ride (yes i know about Riders and I'm excited but conflicted because I hate the present state of Nintendo ๐Ÿฅฒ) runner-up: F-Zero GX

This post is unavailable.

MapleLeaf ๐Ÿ reposted

New blog post: Building smooth search experiences with React's concurrent features. Exploring how useDeferredValue() + useSuspenseQuery() creates stale-while-revalidate UX without manual loading and error states! aurorascharff.no/posts/buildi...

aurorascharff.noBuilding an Async Combobox with useSuspenseQuery() and useDeferredValue() | Aurora ScharffLearn how to build smooth search experiences by combining `useDeferredValue()` with `useSuspenseQuery()` for declarative async state management.

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

View full thread

but even if that wasn't the case, it's still frustrating because GDScript is _so close_ to being great. and it's not even tiny nitpicks, or maybe it is? but they're constantly present in frequent, basic usage. and like... it makes me feel like I'm using the language wrong? or something

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

View full thread

"just use C#/Rust/(my favorite objectively perfect language here)!" lol sure if i want to deal with sub-par engine integration, friction with translating from gdscript, and a tangled toolchain amalgamation with sluggish build times, like the babel/webpack days in JS land

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

View full thread

no generics! while Array and Dictionary (only recently, but thank god) can be generic, you cannot have custom generic classes or types, and generic _functions_ are nonexistent they needed to add lerpi and lerpf for ints and floats respectively because lerp is untyped and also works on vectors. ugh

no null safety! and it's honestly a miracle i can even overlook this in practice; it feels like a step 10 years backwards that still baffles me. be simple and pragmatic, sure, but most null-safe type systems, even if not perfectly so, have solutions for making null safety seamless and helpful now

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

View full thread

`is` doesn't narrow variable types... kind of? if you write this: if item is Actor and item.on_stage: the `item` variable isn't narrowed after `and`, but with this: if item is Actor: if item.on_stage: you get autocomplete, but the type is still seemingly unchanged? scary and confusing

... so the soundest way to check a casted type is this: var actor := item as Actor if actor and actor.on_stage: actor becomes null at runtime if it's not an instance of Actor i honestly don't hate this behavior, but the verbosity vs. what could be a simple narrowed check is not great

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

View full thread

and the big one: the type system on the positive, it's nice that it has good inference (usually) and runtime validation. I'm glad it exists, and I'd rather have what's here than have nothing. but what's here is rather... frustrating

map/filter/reduce - you'll run into problems 95% of the time using these functions because lambdas are not well-typed. map and filter don't narrow the type of array items, so you need to awkwardly and unsafely cast the resulting array a lot of the time

gdscript as a language is like... weird its elegance comes from how nicely it integrates with Godot, like the dedicated syntax for signals, exports, custom node types, etc. but elsewhere, there are so many papercuts and seemingly missing features that it feels awkward to write at times

no keyword arguments - feels puzzling that one wouldn't take one of the best features from its primary source of inspiration, Python no structs/record/dataclass equivalent - tiny small-scope well-typed structures are still best made with class definitions and verbose Java-style constructor init

anime be like: wow haha look at this cute girl and how she talks all cute and in third person ๐™ค๐™ ๐™ž๐™ฉ'๐™จ ๐™–๐™˜๐™ฉ๐™ช๐™–๐™ก๐™ก๐™ฎ ๐™ข๐™š๐™ฃ๐™ฉ๐™–๐™ก ๐™ž๐™ก๐™ก๐™ฃ๐™š๐™จ๐™จ ๐™›๐™ง๐™ค๐™ข ๐™จ๐™š๐™ซ๐™š๐™ง๐™š ๐™ข๐™š๐™ฃ๐™ฉ๐™–๐™ก ๐™ฉ๐™ง๐™–๐™ช๐™ข๐™– ๐™—๐™ฉ๐™ฌ