Jump to content

Software Engineering

From wiki.rayhan.com

Reading

Readme Driven Development by Tom Preston-Werner, founder and former CEO of GitHub.

The three virtues

Random notes

Software engineering is programming over time.

From ui.dev: "as a software developer, your primary job is to maximize the predictability of your program."

Related to the "principle of least surprise".


Two contributors:

  • Side effects
  • Inconsistent outputs

To make a predictable program:

  • No side effects
  • Consistent outputs

Benefits:

  • Composable: doesn't rely on outside state, so you don't have to think through what happens when you compose a few together or reuse them.
  • Cachable
  • Testable
  • Readable

Technology Specific

React Component is a function that accepts input and returns a React Element