Abstract Art Getting Abstraction Right
Presenter Jeremy Clark
I agreed with much of what was presented. Abstraction has its upsides and downsides, there is an appropriate middle ground. I agree that following good practice (DRY, YAGNI, SOC, KISS and DDIY) will help you get there.
- Why abstraction is awesome
- maintain
 - extend
 - testablility
 
 - Why abstraction is awful
- adds complexity
 - confusion
 - debugging difficulty
 
 - Over Abstractor
- we’ll find a use for this in the futrue
 - overly complex
 
 - Under Abstractor
- Let’s keep things simple
 - Ridgid
 
 - Priniciples to apply to push to right middle ground
- DRY – Don’t Repeat Yourself
 - Soc – Separation Of Concerns
 - YAGNI – You’re not going to need it
 - KISS – Keep it simply stupid
 - DDIY – Don’t do it yourself
 
 - Use the principles so you don’t end up with rigid, hard to maintain untestable code
 - If you are an under-abstractor and you can find an over-abstractor you can become a good team since can find balance, or vice/versa