Day #1 |
A Domain Object represents my domain and is UNAWARE of storage and persistence.
Day #2 |
No, Microservices won't fix your broken monolith. Proper Scope encapsulation, S.O.L.I.D principles and Design Patterns will.
Day #3 |
Setters in OOP is just pure evil. Setters and that unfortunate USA president.
Day #4 |
As a software/hardware engineer building products FOR PEOPLE you should strive for QUALITY > quantity. Right Intel/Apple/Every damn company after year 2000?
Day #5 |
A Class name should be a noun.
Day #6 |
Don’t accept illogical tasks! | Moein Akbarof
Day #7 |
Use Composer to manage your dependencies and for Class auto-loading. https://dev.to/enchanterio/the-magic-behind-autoloading-php-files-using-composer-1e19
Day #8 |
Avoid NULL. No Null, no need for IF(is_null(...)) condition, always valid state, no problem.
Day #9 |
Your soft skills are as important as your technical skills.
Day #10 |
Always consider what project parts could be affected by your code change before doing so.
Day #11 |
Don’t trust other developers nor yourself. Always double check the code you rely on.
Use CodeSniffer to ensure a consistent code style across your codebase.
Day #13 |
Treat your *Repository as a Collection.
Software design, documentation is perfectly Agile, Scrum sprint compatible.
Day #15 |
Build a habit of diving into vendors, libraries occasionally, if time permits, instead of just googling answers. You will learn and expand your vision much more.
As stubborn as we developers are, taking a short-mid break from a logical world of programming often leads to the most elegant solutions.
As a Class should have 1 responsibility, a technical diagram should have 1 purpose. Avoid mixing different level of details in 1 canvas.