Whenever I sit with my boss I often hear these lines: Can you compress this time schedule? Why do you need an extra day? Haven’t you done it before and this time it should be easy to do? Can you compress the schedule by working late hours? You try to answer these questions and you […]
I tried to learn good programming skills. I tried learning object oriented programming, design, and principles because I wanted to be a good software engineer. For a small period of time, I was thinking that I know all about modularity, testability, readability, reliability and other ‘jibberish’ I used to talk about. Until I faced the […]
Have you ever feel the pain of being a beginner? Remember the time when you started your first job as a developer and people treated you like a noobie. You know you are good but they don’t know. You have done some good project in your undergraduate studies or in your personal time. You know […]
The goal of this post is to discuss a simple software development process model. Hmmm let’s see. A simple software development process. There are many software development process models. And I will be discussing the difference between agile processes and waterfall Process…. Naaaah! Not that old crap. Yeah I know agile/iterative is good and waterfall […]
A while ago, I was searching about comments. Specifically, strategies to comment better. I found the following example:
// Dear maintainer:
// Once you are done trying to 'optimize' this routine,
// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
// total_hours_wasted_here = 42
LOL. Who writes comments like that? Here is another one:
// somedev1 - 6/7/02 Adding temporary tracking of Login screen
// somedev2 - 5/22/07 Temporary my a**
And so on. You will find funny comments when you try to search for how to write effective code comments. The reason I was […]
I will start with a cliché
A software code should depict following qualities:
You may find yourself in a difficult situation when you ask a question about whether any particular code depicts above quality features or not.
A technique that helps is by looking at the development timeline of any software. If the software code remains easier to maintain, extend and modular over its lifetime then it means that the code has above quality features.
I have written difficult to read, hard to extend and rotten software code. I only knew this after six months into the development when a change happens. Hence development timeline is important in understanding quality factors.