Topics
Posted 21 hours ago · 19,563 reads
Terminal emulators are primitive tools compared to modern IDEs, but they force a certain discipline. You can't rely on auto-completion and syntax highlighting to write code for you; you have to understand what you're writing.
Type systems don't prevent bugs—they just catch certain categories of bugs earlier. The real benefit is the documentation they provide about what a function is supposed to do.
Constraints breed elegance.
Terminal emulators are primitive tools compared to modern IDEs, but they force a certain discipline. You can't rely on auto-completion and syntax highlighting to write code for you; you have to understand what you're writing.
The most important insight I've had in the last few years is that constraints are a feature, not a bug. When you have unlimited resources, you can solve any problem in a hundred different ways. When you have constraints—limited memory, limited time, limited developers—you're forced to think more clearly.