Hacker News new | ask | show | jobs
by sethammons 2136 days ago
It is all about feedback cycle. You want a fast process to tell you if $thing worked.

Unit tests are that are fast, a dev environment with your running service that can be edited/updated quickly, acceptance tests that run automatically before merging to master, structured logging and log analysis tooling like splunk, and metrics emitted/collected. I need to be able to update a line of code and get feedback on that update in a few seconds (or faster, thank you IDE). Add onto that a great deploy story (solid ci/cd), alerts, historic metrics to compare to, etc. These are things that are mostly independent of the language you are in, and the tooling for the language is super important too. Self documenting method signatures in the form of static typing is huge for me. I can't stand when I find myself in python or perl and don't know what the incoming variable is - I'm stuck putting some logging or a break point to see what kinds of data are coming into that function.