- function signature should be small- the fewer the arguments the better
- what types should be passed into those arguments
- why switch and if cost such harm in the software structure ? -> how to get rid of them ?
- why assign operator is consider harmful ?
- Many software problems can be avoided by constraining state changing operators, and side effects.
- How to structure our functions making error handling clean and maintainable fashion ?