That's party pooperism. I know. But I invested a lot of time to Flow and recently I realized it's a dead horse. Sure, close it, be explicit, I don't care. Maybe this will help someone else.
@steida Could you please provide exact list of missing or broken features?
To be honest, this was the last drop https://github.com/facebook/flow/issues/7218
I wasn't able to use the last two versions of flow-bin in last month because of strange Atom Nuclide errors. I checked Nuclide repo, but without a success and similar problems were reported without any response.
Also, I spend a lot of time with broken intersection types. But what is more important, smart type inference leads to cryptic errors messages.
And, recent changes in type system brought another dose of errors, which I had to fix returning Node type from some Components without any obvious reason. https://github.com/facebook/flow/issues/7209
As a result, Flow is considered harmful. That's sad but it's true.
TypeScript is mature, and less inference more explicit code leads to less confusion.
Flow is dead no-go for me.
Two days with TypeScript, everything is DefinitelyTyped, so far so good. I do not miss anything from Flow ecosystem.
Btw, TypeScript interface is Exact by default. No need to write {| |}. It just works.
@steida Exact by default is coming plan for future versions.
https://medium.com/flow-type/on-the-roadmap-exact-objects-by-default-16b72933c5cf
AFAIK all types in TS are nullable by default. Is it better?
@TrySound It is just a feature flag in TS.
A developer can specify --strictNullChecks
option to exclude null from the domain of every type.
Well, not default. And all vendors should also use this flag, right?
The default for me is --strict rule enabling that and some other good rules.
I loved Flow, but to be honest, it was wasted time fighting with all those errors.
Also, TypeScript with VSCode on MB Air 2018 seems to be much faster than on MB Pro 2017 (the fastest configuration).
I'm glad you are having a better time using Typescript, but this kind of material seems better suited to a tweet instead of our github issues.
One can so much hate only what he really loved.
Despite being a long-time heavy Flow user, I sympathize with @steida...we are humans, not robots, and sympathy for developer suffering is important.
Most helpful comment
One can so much hate only what he really loved.