All new blogs without doubt start with the intention of regularly publishing useful information. This one is no different!
For me, the challenge is being able to put into words in some meaningful way, the experience, knowledge and concepts in my mind. The words do not typically come easily for me.
This is excacerbated by the fact that my views on many matters relating to information technology may be at adds with what is popular or fashionable today. I attribute that, however, to the modern tendency to not learn, value or remember lessons from the past, or to not question modern development techniques, mechanisms and "ceremony".
I’m writing predominantly for myself. I seek neither influence or notoriety.
Also, I have recently started mentoring a Computer Science (CS) graduate. It is also for her that I am prompted to put various topics in writing.
For others, take from it what you will.
I’m planning to write here predominantly on a theme of how to object model complex problem domains into code.
How do you go about modeling "business logic" independent of changing user-interfaces (UI), system-interfaces (SI) and data persistence?
In today’s programming world focused on technologies, languages, frameworks, plumbing and non-functional requirements, that is somewhat revolutionary.
To do so requires some explanation of how things have been done in the past. What lessons were learned and how are they are (typically not) applied today.
There are different types of software. Perhaps providing a way to distinguish between them is a place to start…