I talk about my experience in college and in my professional career developing code for MATLAB and Python. I discuss the pros and cons of each option, and give my recommendation as to which one I would have preferred to have focused on.
Matlab is an entry level drug peddled by academic institutions and MathWorks is the supplier. I have worked at more companies that use Fortran than Matlab. And these days, almost everyone is using Python (an interpretid scripting language that is used to make C/C++ libraries like Numpy easy to use).
I am currently doing my BA degree for chemical eng. And i have to say that i do massively appreciate the “on ramp” course Matlab offers. It was such a huge help getting into scripting for the first time.
I’ve been using python for 12 years (I was that nerd 11 year old kid who came from from school and learned to code) and matlab for just above 2 years for my mecheng degree. Goddamn, I cannot express my hate for numpy after extensive use of matlab. Matlab makes vector and matric operations intuitive and an absolute breeze. In comparison, numpy has so many conditions and shit it makes my head hurt when something doesn’t work because the shape is (12,) instead of (12,1)
I think it depends on what you are trying to do, but I generally agree. I definitely use python a lot more now that I am primarily in industry. The tools that Mathworks has developed are exceptionally good for some niche applications. It is vastly easier to model heat transfer, or tune a simulated PID, or dip your toes into deep learning, or do a variety of other tasks that Mathworks has built into MATLAB on that platform than it would be to build a similar application (gui included) in python. A professor COULD prebuild those tools in python, but that is a lot of work. I feel like, similar to how publishing companies offer pre-made slides and lectures to professors if they use their newest edition book, MATLAB makes professors lives easier for teaching their undergrads. Modelling heat transfer between two buried parallel pipes was one of the first things we did in my Intro to Mechanical Engineering class, and that would have been a semester project for a junior level class at least, if it had been required to be completed in python. In grad school, I have had classes that require both MATLAB and Python, and I have worked in labs that use both.
Can you tell me what should i learn to use python like like a matlab (replace matlab with python), my professor suggest us to use matlab for modelling dynamic system but i want to use python instead
Hey Vincent Hope you are doing Well Just wanted to have your opinion that what’s your view on learning Python after mechanical engineering (adding a skill for career enhancement)
I've had this conversation with MATHWORK support team and they're really embedded in this marketing model where they are focused on retaining Big corporates (Boeing , GE etc) and don't give rat's A** about students / Hobbyists. I pay $300 every year for their home license which , functionally speaking, is much inferior to what Python can do for FREE. The only reason I am paying for this license is because MATLAB is quite popular in my industry and I have to keep my MATLAB skills sharp.
Hey Vincent, Hope you are doing well. Just wanted to know your opinion on learning Python as an skill after mechanical engineering. As I am a mechanical engineer and looking for some add on skill for career enhancement. Kindly suggest
@@rahadyanmuhammad271 to start with, literally any youtube channel is fine. to be more domain specific, you can just type the topic and find someone already have uploaded a video on that or there would be some github repository. or NPTEL lectures are great for python as a mechanical engineer. I am a MechE and I follow these too. for basics you can go with Mosh hamdani or amigoscode videos. they cover even upto ML concepts. so they are pretty good.
Python is required on job applications not because it is better than Matlab, but because it is more compatible with other software used by commercial companies. Matlab Stats and ML toolbox is more organized and comprehensive than Python's Scikit Learn.
nice. been using python for a long time. I get a bit pissed off by it being too multidisciplinary, which is both an advantage and a disadvantage. I see Julia as having a great potential as a programming language exactly because of this: it is not mixing the indie and professional world in a single box, and this is why I am learning Julia at the long term... Because... I don't know if you understand me. We start wanting to do a simulation and end writing an app in Flask... Have we missed the point? How far?
The workspace environment in MATLAB is by far the thing I miss most when writing code in Python because it essentially acts as a variable debugger. If anyone can suggest a similar system for Python that would be great, but none exist as far as I know. Element-wise operations in MATLAB are more intuitive to me (even though the dot operator syntax is hot garbage) and large matrix operations seem to be considerably faster from my experience coding FEM and FDM solvers from scratch. Python is just better though and I'm fully making the switch. It's free, open-source, and can be used for fun projects on the side in addition to more serious computational work.
@@MikleyLyeah I use spyder and I love it! It’s lighter and faster than Matlab’s gui, and faster than Jupyter notebook too. I also hate doing things in browser prefers to do it locally. The interface is also really pretty
@@aleempashashaik3318 For System Engineering, in college my first programming language was C. Then it was (basic) Matlab. Basic means that we weren't provided with explanations about how arguments are passed, what kind of language Matlab is, how its memory work. In my college I wasn't taught how to program in Python.
Hello, Thank you for the amazing explanation. My Masters in Industrial and Systems Engineering classes will begin from Aug 2023 and I want to know which skills should I learn?. Thank You.
Depending. I think that Matlab works very well when one writes code about dynamics systems such as computational fluid dynamics, control theory, and any object related with matrix operations. Numpy, scipy and matplotlib are very good alternatives, but I feel that they still lack a lot. The other thing is Simulink, is a power-up of Matlab, one can edit entire systems without write code directly. But if one don't have money to pay the license, well, one must code in python better, because each one of toolboxes of Matlab are very expensive. There is another advantage of Python over Matlab, besides it's open source, free and a language with a good syntax, is that there are libraries such as Pandas well constructed and supported with a big community, and other thousand of libraries of general purpose anywhere. Another thing is Jupyter Notebooks, and I can execute code anywhere, I love it, is better that its equivalent in Matlab. I'm an user of both, but I migrating my efforts to python.
I am not with your opinion for some reasons, Yes I agree that Python is open source but MATLAB come with a huge advantage for example it is not only about the scripting language but Simulink/Stateflow give a huge advantage over the other candidates you can built a graphical-based control system that is above the high level language call it (High pro max +). so block diagrams are near to the language of mind the way we represent the initial ideas and you can also have a framework to test these ideas Automatically for validation and verification and also you can follow the requirements of your prog and change it flexibly easily and integrate your solution, after that you can generate codes with much lower bugs than hand-based, run it in real time all together, do PIL-HIL and validate your code. that right that MATLAB is really expensive but No one would buy something just because it is a standard but because what the product gives as I guess.
agreed. matlab is a bad habit, an arbitrary, proprietary, non-intuitive industrial garbage. python, at least, is free to use and somewhat more intuitive.
I noticed something guys! Python steals MATLAB ideas, then you find people saying Python is better. This is like Huawei stealing Apple market share after stealing Apple ideas lol.
@@WojciechowskaAnna MATLAB and Python both use LINPACK for their linear algebra calculations. LINPACK is written in Fortran. Therefore neither MATLAB or python ripped off anything from each other. They just use Fortran libraries in both cases.
Hi, I made a quick speed test of matlab vs python. Let A, B NxN matrices. Solve the linear problem Ax=B. For N=1000. Matlab is over 20 times faster (using simple backslash) than python using linalg.spsolve. Any comment on this?
Try use python with dask libary for matrices "Regular" python may not use the power of multicores in the CPU and that could be reason lower performance
i was wrestling with the same issue, scipy has some good tools for solving sparse linear systems, but unfortunately they work on a single core, you'd probably have to either stick with matlab or look for more advanced linear algebra libraries for C++ or fortran.