Porting my 2016 Rust project from getopts to clap, and it's amazing how far the ecosystem has come.
clap gives me a nicer help, automatic value validation, and can even generate completions for shells!
First screenshot is getopts, second is clap.
miniblog.
Related Posts
LLMs have been really helpful for me porting some JS projects to TS.
Since the types are erased and annotations are optional, I can go gradually and safely with more minimal human oversight.
(I'm not sure if it'll significantly help robustness, but it's lovely for navigation.)
Porting some JS to typescript, I've been surprised at how many bugs it's highlighted. It's caught more issues than when I've done the same thing to Python code (adding mypy).
I wonder why this is? I have three (complementary) theories:
The future of Yarn: https://github.com/yarnpkg/yarn/issues/6953
Breaking up into libraries to enable reuse, and porting to Typescript!

