About MatLab, I think that the best solution is to organise a group for programmes in order to improve Octave or write a new MatLab-compatible Free package.
I agree with you. But then, it is really hard to convince people to switch to Octave if they think that using Matlab they are still Free because they are using/publishing GPL code. The problem is that if this situation continues at the end there will be more Free than non-Free value to Matlab and then, how are we convince people to switch to Octave or any non-Free alternative?
It is like if everyone started writing MS Windows-only Free Software. Who would want to use GNU/Linux then?