This entry is a response to the online assignment of our Graduate School on Programming Language Criteria
I was once asked in a job interview as to what is my most preferred Programming Language. If my memory serves me right, my answer was Java. The reason goes beyond my experience developing applications using that language and familiarity on its core codes. It is because the language was then an “in demand” and I heard that Java developers are sent abroad. I got the job. But as I develop more and more projects, the criteria of self-improvement and high salary are not enough to settle on a programming language. There are these criteria which are simple in nature but have direct impact on your output. I once again encountered them here in Graduate School and will reiterate the importance of choosing a language that blends them. These are readability, writability, and ease of use.
The first criterion, readability, is important for huge applications that require group effort and constant code refactors. It is easier to maintain a code which at first glance you can easily understand. This also contributes to your customers as manipulation will be easy for them particularly if the requirement specification states that users should be able to do some editing in the codes. Though this is easier to use, it usually contradicts with the writability as programming languages such as these would require more statements that should follow more syntax and has the greater probability of generating error.
Writability on the other hand primarily focuses on the consistency and simplification of statements. The best part here is the mere fact that most commonly used programming languages now follows a standard pattern in the way statements are designed. Let us consider the code snippet below:

This is how Ruby and Java use the For loop statement to iterate the showing of the value of the variable “i” on the screen. Notice that the syntax may differ but the way it was presented are similar. If you are an experienced programmer, this will be an ease. On the other hand, if you are a neophyte, documentation for Ruby is indeed necessary. That is the reason why writability usually contradicts with readability’s objective. Is there such a programming language that blends the two? That is something that we need to find out. But they say, Ruby was a good example of this as the one who design such programming language considered the blending of these two
Ease of use is a more general criterion. This can be subjective in nature depending on factors such as user experience, familiarization on the language, or even its direct impact to solve the problem. Though, this criterion is usually associated with the user interface and how easy it is to use the language with the development environment. For me, it is a combination of the first two criteria. If you can easily read and write the code then it is easy to use. The developer has a great contribution on this area. If you want to make an effective system that satisfies the customer, be familiarized with the language you use. If you are designing a language, make this as your topmost criteria. Development is a two way street – if the developer enjoys building systems using your language, customers will surely enjoy the developed application
If I will be again asked as to what programming language will I prefer? My answer is this – “I will not name any language. Instead, I prefer a programming language where I can read easily, write with pleasure, and develop applications as if I am browsing my Facebook account”
Reference:
- ALBACEA, ELIZER A (2002). PRINCIPLES OF PROGRAMMING LANGUAGES. University of the Philippines Open University, 30-31.

