Languages and Standards

I’ve been wondering on what are the consequences of languages imposed programming standards on the productivity on open-source projects…

Pre-defined programming language standards make it easy to understand code written by other people because you don’t need to read any aditional docs to know how a certain application was organized.

For example, Java imposes a file/archive structure that must reflect the class packages structure and suggests a standard for naming your class namespaces (the reversed version of your domain: br.com.mysite.mypkg, org.opensourcetool.foopkg, etc). In my opinion, stuff like this make it easy to understand more rapidly other’s code because my hacking is already based on a java universal pattern and not on a application specific one.

In languages like PHP, C/C++ (which doesn’t impose any standards), every application has its own way to organize “things”, and sometimes it gets very hard to understand the internals of some program…

There are some tradeoffs of course! These standards may turn themselves into a limitation factor on the development practice because they force you to think in way that maybe is not what you think is apropriate.

well, that’s it…

Got something to add? Find me on Twitter and Google+