Wednesday, December 10, 2014

Why not to develop code on Windows

I have been developing code professionally for the last 17 years. Most of these years I used MS Windows because this operating system is mostly used in Israeli Hi-Tech industry. However years spent with Linux were them most productive and fun for me. 

So, I decided to write the reasons why not to develop code on Windows. Obviously this is irrelevant for people that develop applications for Windows. 
  1. windows is not free
  2. you have to install office that is not free too
  3. shell is owfull
  4. even linux-like shells (cygwing, gitshell etc) do not work exactly as Linux shells. 
  5. security issues make mad. Often you cannot remove file although you are administrator. For example on Windows 8.1 java method File.canWrite() returns false unless file is under user home although the file is indeed writable. 
  6. Often files remain locked even if process that locked them is killed. 
  7. Back slash as a delimiter instead of forward slash causes lots of mistakes.
  8. "Program Files" folder is very important. Space in its name causes many bat files that do not wrap each path with quotes to fail.
  9. Most open source tools are developed and tested on Linux. Even if the tools are cross platform some issues often happen on Windows only.
  10. It is not Linux

Thursday, January 23, 2014

Usage trends of JavaScript MVC Frameworks


JavaScript MVC frameworks became very popular during the last 5 years. Naturally there are a lot of such frameworks. I spent most of my time as a developer at server side, so I am not very familiar with those framework but want to learn them. But where to start? I do not want to spend time on framework that will be obsolete in a year because I do not want to look like people that start learning J2ME, applet programming, Log4J API and configuration or start new project with Ant and CVS these days.

So, I googled "JavaScript MVC framewors" and found the following articles:

I know that it the list is not full but if it is good enough for authors it is good enough for me :).
Then I wanted to check whether these libraries are good for other people using google trends. Unfortunately Google trends does not allow to compare more than 5 search targets, so I splitted the list into groups and then compared the best libraries from the first round. 

Here are links to the results.

Semi final


According to this graph AngularJS wins.


It seems that AngularJS is the most popular JS MVC framework now and its popularity is growing very fast, so I am going to learn it.