DEV Community

Jonathan Hall
Jonathan Hall

Posted on • Originally published at on

The science of software development

I want to talk about the science we use every day in software development.

I don’t mean “science” in the sense of “knowledge,” as when one says “Science says we should exercise.”

I also don’t mean “computer science” as in the topic of study.

I mean the actual scientific method, which I’ll simplify for the sake of discussion to: Observe, Hypothesize, Experiment, Analyze, Repeat.

In how many ways do you use the scientific method in your daily work?

  • If you’ve ever built an MVP (a real MVP, I mean), the sole purpose was testing a hypothesis about a product.
  • If you use Scrum, each sprint is one iteration of the scientific method (or at least it should be). Your team observes the current state, sets a goal (hypothesis), experiments to find a solution, then analyzes the results in a retrospective, before iterating again.
  • If you practice Behavior-Driven Development or Test-Driven Development, you’re using the scientific process on the story, or even function level.

Where else do you use the scientific method? Send me a message and let me know!

If you enjoyed this message, subscribe to The Daily Commit to get future messages to your inbox.

Discussion (0)