Classical philosophy offers us multiple reasoning strategies for dealing with tricky bugs.
Kick-start your debugging process by turning implicit assumptions into explicit ones.
Test-driven development, object-oriented design, and functional programming converge on some similar ideas.
Some ideas from functional programming can help us improve the unit tests for our object-oriented code.
Opening up the archives! All of Joël Quenneville’s conference talk proposals, both accepted and rejected.
Various resources and techniques to help keep your team up to date.
The financial metaphor is often thrown around engineering departments, but how do you actually deal with it?
A look at syntactic sugar for chaining async functions in multiple languages.
A look at value-less types such as Elm’s Never
.
What should you be thinking about when scaling your product?