IMO type checking is the best thing to happen to Python in recent memory and eliminates a whole class of developer errors. Getting linters to pass 100% also scratches a weird itch for me, like collecting items in a video game haha.
I do like working with memory, seeing a custom slab allocator used in production code was one of the more interesting aspects of the little experience I had with c++, but always having to be "on guard" so as to not shoot myself in the foot with pointer manipulation was kind of exhausting.
I like both.
That "itch" is exactly what I meant, lol! And I agree! I'd definitely give Rust a try. Playing around with types and traits until they click is genuinely addictive - it feels like solving a puzzle or something