This is the first post in a series of How to ship maintainable product
I have been programming for over 10 years now. I have built from scratch several fairly large system (what is the right definition of a large system?). Systems with unclear upfront requirements. Systems made in the Agile way :).
I made many mistakes during that time. Now, from a time perspective, I think those mistakes were inevitable. Inevitable in a positive way. They allowed me to learn, to seek for a better solution and to improve.
If you ask me for one and only one advice regarding programming I would say Prepare for evolving requirements
The main purpose of this series existence is to list all crucial parts of programming maintainable software in one place for future reference.
We - software engineers - need to learn constantly new frameworks and languages. During daily programming routines, it's easy to miss the larger picture of the system we create. Often we ship an unfinished product. Main functionalities work, but there is some technical debt to be paid off. How to ship maintainable product blog series should help us to develop better products. Products with less technical debt.
Below is a list of upcoming blog posts in this area. (The list is most probably not finished and will be extended as we go.)
So please stay tuned for the first blog post in HTSMP series to come any soon.
Of course, any advice and ideas to the list above are welcome.comments powered by Disqus