Because it is not free.
I think its awesome. Image processing, handling really large matrices, creating GUIs… It’s a very well-rounded tool and the learning curve is almost non-existent (you start doing really crazy stuff with no effort). There is tons of documentation, there are lots of users and user-created content. There are tons of forums and places you can get help. You can pay mathworks for help… Its fast if you take advantage of matrix calculations (Don’t touch a for loop, it will take for ever). It does have some downsides, but overall it’s an excellent tool to work with.
The problem is that it’s not free. Please don’t misunderstand me. I’m not going to start a movement that might eventually coerce Mathworks into releasing a GPL version of Matlab. I’m not interested in creating a new interpreter that will run Matlab scripts (It has already been done: Octave). I’m not mad at Mathworks. As far as I know they have all the right to charge some money for their cool product. Now that I think of it, I indirectly payed for the license through my taxes to the Danish government that ultimately ended up paying for the campus license that I am using.
No, I’m not mad at all those things. What pisses me off is that there is one more reason NOT to use my code. It’s actually a pretty big deterrent for prospective users. Think of it this way: If someone wants to use my code (In a legal manner), they have to pay a Matlab license. In their mind, my code will cost them whatever the Matlab licence costs (which depends on specific situations). Moreover there is no easy way that the user can “try out” my code. They would have to know that there is a possibility of getting Matlab for 15 trial, they would have to know where to go to get it and they would have to be willing to go through the pain of filling out forms (Its possible, but they need to jump through hoops).
It would be much easier if it were just free and open.