How, What, Why: The Three Essences of Software Development | Hacker News Reader