Because we don't know in advance what method is going to be successful, we have to try many things, so our bottle neck is programming time, because our code will most often run a few times to get the results to publish, and that's all. Matlab is often slower at execution time, but we don't care much. And most often only a tiny sub-part of what we code will be useful. In research environment, we have (hopefully) often new ideas, and we want to test them really quick to see if it's worth keeping on in that direction. Most of the computer vision researchers are using exclusively matlab. I am a computer vision phD student and have been using matlab for 4 years, before my phD I was using different languages including C++, java, php, python. There is ONE reason matlab is so good and so widely used: EXTREMELY FAST CODING But mostly Python isn't all that good at MATLAB's core strengths, and vice versa. In the areas where they do overlap a bit, it's hard to say what the better route to go is (depends a lot on what you're trying to do). MATLAB comparison, they are mostly different tools for different jobs. There's a company with reasonable support and who knows how many man-years put into it. On the other hand, for the things it is good at, it is very very good. It's a lousy choice for a general programming language it's quirky, slow for many tasks (you need to vectorize things to get efficient codes), and not easy to integrate with the outside world. The key point is that the majority of people who use MATLAB are not programmers really, and don't want to be. However, it's a decade or so behind in terms of the tools. Python, warts and all, is a much better programming language (as are many others). There is a large community of users that share numerical codes (Python + NumPy has nothing in the same league, at least yet) There are a large number of `toolboxes' with good code for particular tasks, that are affordable. It is very good at generating plots and other interactive tasks. The notation is simple and powerful, the implementation fast and trusted. It's about as good as it gets for doing floating point linear algebra. However, if you look at it as an environment for doing certain types of research in, it has some real strengths. As a language, it has grown very organically, and there are some flaws that are very much baked in, if you look at it just as a programming language. For a long time, it had an attitude that "all the world is an array of doubles (floats)". Something you have to realize about MATLAB is that it started off as a wrapper on Fortran libraries for linear algebra. It's also used heavily in industry in some areas. Engineering departments, on the other hand, often rely on it and there are definitely useful things for some applied mathematicians. If there is a computer tool used at all, it's going to be something like Mathematica or Maple. Many, if not most, mathematicians will never touch it. I'm interested in its capabilities and if it deserves a deeper study (I won't need anything more than basic MATLAB in oder to pass the exam :P ) it will really be better than Python for a specific kind of task in the real world.Īdam is only partially right. The university has the possibility to give me a copy of an old version of MATLAB (MATLAB 5 I guess) for free, without breaking the license. My question is not about buy or not to buy MATLAB. UPDATE 1: One of the things I'd like to know the most is "Am I missing something?" :D In the "real" world, what should I think to use it for? When should it can do better than Python? For better I mean: easy way to write something performing. I'm still at the start, what am I missing? Writing a function or parsing a file is just painful. (things that can be done easily in Python using some libraries). I saw it's cool to work with matrices and plotting things. What does make it so cool for researchers and people that works in university? I've been recently asked to learn some MATLAB basics for a class. It is not currently accepting new answers or interactions. This question and its answers are locked because the question is off-topic but has historical significance.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |