Jump to content

Software Engineering: Difference between revisions

From wiki.rayhan.com
No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 3: Line 3:
[https://tom.preston-werner.com/2010/08/23/readme-driven-development Readme Driven Development] by Tom Preston-Werner, founder and former CEO of GitHub.
[https://tom.preston-werner.com/2010/08/23/readme-driven-development Readme Driven Development] by Tom Preston-Werner, founder and former CEO of GitHub.


 
[https://thethreevirtues.com/ The three virtues]
 


== Random notes ==
== Random notes ==
Line 28: Line 27:
* Testable
* Testable
* Readable
* Readable
== Technology Specific ==
React Component is a function that accepts input and returns a React Element

Latest revision as of 16:21, 16 June 2025

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