Hacker News new | ask | show | jobs
by bcheung 1408 days ago
I've had very similar thoughts and have wrote about them here. I would be interested in discussing more.

https://github.com/brennancheung/wasmtalk

Some key takeaways from the above link:

- The programmer's tool should be a tool for manipulating an annotated AST (not text)

- There should be many different types of UX's for different scenarios, each maps to and from an AST in a UX that is optimal for the developer for that scenario

- We must be conscious of human brain limitations and cognitive psychology and work within those constraints

- "Reading" and "Writing" code should have different UX's because they are radically different use cases

- Use RPN. It models the real world. Humans are designed to manipulate their environment in an incremental manner seeing the result each step of the way. When we have to plan out and write code for an extended period of time, trying to play compiler in our head, we overload our brain unnecessarily and highly likely to make simple mistakes.

- Testing should be a first class citizen in the developer experience and indeed baked into how we develop at a fundamental level that it seems strange that they are even decoupled to begin with.