Before we began today’s blog let me tell you, the importance of principles
- Think of principles as a lighthouse or a compass that help you find the right direction in the ocean or the thick fog
- Principles will give you a framework for thinking so, that you won’t get lost in the jungle and principles are deep fundamental truths or natural laws which is independent of you, if you don’t obey them, you will face the consequences of your actions
So, principled decision’s will help you to write effective software without getting lost in any trap
Principle #1: the reason it all exists
Before we begin any software project always make sure it has a business purpose and meaning that user’s perceive value in it
Be clear in mind, that software exists only for reason is to provide value to users all decisions should be made by keeping this framework in mind
- Before you write requirements
- Before you design an architecture
- Before you select any hardware platform
- Before you write any piece of code or functionality
So, first, ask a question? Does the project add any value and meaning? If not? Then don’t do it
Principle #2: Keep things simple
The solution has to be simple so, that you can do it right now and has to be affordable to some extent
It has to be easy to implement or use
If it is very complicated or complex then users might not use it
Reduce and simplify: means getting rid-off everything then what is essential and fundamental
Simplifying doesn’t mean quick and dirty, it often takes multiple iterations to simplify to the point of invisible
Principle #3: reuse the code and designs
“George Santayana: those who cannot remember the past are condemned to repeat it”
One thing, an expert will do when we compare him with novice, is that he will not solve every problem that comes to him rather he will reuse the solution’s that have worked in the past
So, when they find a good solution they will use it again and again
Principle #4: write the code that other’s can understand
Write the code that is helpful to the user’s or to the other’s who use it so, that they can extend it, maintain it, and debug it
Make the job easier for other people to use your code by specifying the design, and implementation of the logic behind the code
Remember: what you produce others have to consume
Principle #5: maintain the vision
A clear vision statement is essential for a software project to get succeed or to get a hit desired target without wasting a lot of time wandering around the bushes because it helps you as a compass that shows you the directions in the thick forest
also, vision or conceptual integrity has to be maintained throughout the project otherwise, it will end with two or more minds and your work will also become a patchwork of incompatible design’s held together by the wrong kind of bolts
Leave a Reply