Writing React from Scratch or Why React Hooks make senseI have recently watched the talk "Getting Closure on React Hooks" presented by Shawn "Swyx" Wang at JSConf.Asia 2019 and I found it to be interesting, enlightening and fun! I got to follow and code along a minimalist implementation of React and the u...Oct 2, 2023·2 min read·8
Don't Pay Inheritance Tax2 types of inheritance: as a way of combining types: to specify "this is like that except" dynamic organization of behavior Problems with Inheritance Inheritance is coupling. All entities involved in inheritance are coupled together (child, pare...May 16, 2023·2 min read·11
Design Principles - DecouplingDecoupled code is easy to change code. This is because the code that is linked needs to be changed in parallel. Decoupled code is reusable code. When writing reusable code, you put it into a function/method call, you give it clean interfaces. Reusabl...May 9, 2023·2 min read·21
Design Technique - Design By ContractProgram Correctness = program that does only what it is expected to do (no more or less). Reasoning for this is that a program cannot do everything Programm correctness is defined by its roles and responsibilities. The concept is based on the metapho...Apr 26, 2023·2 min read·24
DebuggingDon't Panic Carve out the scenario of the bug Gather all hard facts about the behavior of the bug and not make assumptions about it. Try to define the scope of the bug to be as precise as possible. Take the gathered hard facts and use them to cons...Apr 26, 2023·2 min read·19
Design Principles - OrthogonalityGeometry: 2 lines are orthogonal if they meet at a right angle (90 deg). But the lines are independent. Computing: 2 parts of a system are orthogonal if changes in one do not affect the other. Other words for orthogonal are modular, layered, compone...Apr 18, 2023·1 min read·12
Tracer Bullets vs PrototypesTracer Bullets Context The end goal of the project is not set (WIP). Advantages get immediate feedback on a project under real conditions users get to see something working early developers build a structure to work in that they can iterate over ...Apr 18, 2023·2 min read·31