The writer is not wrong however I have an issue with the fact that you try to shoehorn it in some design pattern.
Every time someone creates a design pattern, you end up being taken over by complete idiots that thinks it is the holy grail and all other developer should bow bow down and accept it as the only truth.
The issue with software is that you need a creative skill to solve things, not logical skills. Logical skills will actually make your code worse. Logical skills will prevent you from searching solutions that works better than what you have now. Logical skills will prevent you form asking the most important questions "Is there no other way to make this code more readable?"
Most developers I encounter have a 2D way of thinking. because they are constraint to 2D thinking they don't realize that there is a 3D dimension the can also program into. A 2D solution sometimes gets simpler in 3D developing. And sometimes very creative developers can think in 4D or higher.
If you motivate developers to think in higher levels than pure logical design patterns they may find better solutions that fits as a glove. Not only is the code ascetic pleasing, but faster, better more robust and reusable.
For me software is like having clay. I take, it reshape itt, reshape reorder it, add, subtract, until I get a form that is mental pleasing. The structure of the software should guide you to what it does and why it does it. without effort. I do it by morphing it into 1000 different stages until I get the perfect fit for that job!
1 comment
0 u/roznak 05 Mar 2019 17:05
The writer is not wrong however I have an issue with the fact that you try to shoehorn it in some design pattern.
Every time someone creates a design pattern, you end up being taken over by complete idiots that thinks it is the holy grail and all other developer should bow bow down and accept it as the only truth.
The issue with software is that you need a creative skill to solve things, not logical skills. Logical skills will actually make your code worse. Logical skills will prevent you from searching solutions that works better than what you have now. Logical skills will prevent you form asking the most important questions "Is there no other way to make this code more readable?"
Most developers I encounter have a 2D way of thinking. because they are constraint to 2D thinking they don't realize that there is a 3D dimension the can also program into. A 2D solution sometimes gets simpler in 3D developing. And sometimes very creative developers can think in 4D or higher.
If you motivate developers to think in higher levels than pure logical design patterns they may find better solutions that fits as a glove. Not only is the code ascetic pleasing, but faster, better more robust and reusable.
For me software is like having clay. I take, it reshape itt, reshape reorder it, add, subtract, until I get a form that is mental pleasing. The structure of the software should guide you to what it does and why it does it. without effort. I do it by morphing it into 1000 different stages until I get the perfect fit for that job!