datamade / how-to

📚 Doing all sorts of things, the DataMade way
MIT License
89 stars 12 forks source link

Foray into TypeScript #384

Open haowens opened 2 weeks ago

haowens commented 2 weeks ago

Background

TypeScript extends JavaScript (which we currently use for all frontend) but with more rigorous typing. This is kind of adjacent to the frontend testing issues open here, as the main motivator for Typescript existing is to preemptively catch errors at compile time that could indirectly result from interim changes to elaborate Javascript code.

I've used it in the past and it's ultimately been really useful and satisfying, but there are also times where it frustratingly tells you that you can't do something--and it's probably because it's right--but you just know JavaScript would let you do it and it wouldn't technically ~ break ~ anything.

Proposal

Basic research on the history of TypeScript and its maintenance, testimonial research into its effectiveness as a shorthand for frontend testing, what features it brings to the table that JS doesn't and why they're useful (i.e. generic typing, object oriented, supports functional interfaces), what using it with React looks like, etc.

Deliverables

Little write-up of sorts that covers the proposal.

Timeline

A day's worth of focus, I'm thinking

haowens commented 2 weeks ago

Ultimately don’t think we should change anything at this exact moment, but I also still think this is a good idea. But, this has been a fun first thing to look into because people have egos and Strong opinions. Also will say that looking at all the formatted, typed code does give me the itch to try writing things in TS.

promised deliverable: https://docs.google.com/document/d/1J6yJ4-EpQI8YnOKsJqhR5zfnA9I3wuLkp5LnOI06Bck/edit?usp=sharing