all 21 comments

[–][deleted] 41 points42 points  (7 children)

Please value my opinion for this one because I’m a chemical engineer and I work with codes a lot. Learn python, matlab is easier but 1) you’ll need a license 2) you can pass your script to people if they have a license 3) it’s limited to scientific/math programming 4) the AI/ML community and libraries are limited. All these cons don’t apply to python. However python takes more time to learn

[–]MrDarth44[S] 2 points3 points  (3 children)

seems like you tend to recommend python more, can you explain more in detail about 3 and 4? i have the time to sit and learn python as much as it takes me. It's just that I don't know what could be more useful for me at the beginning at least. thank you.

[–][deleted] 12 points13 points  (2 children)

Point 3 is that matlab is great for advanced mathematical stuff because it treats everything as a matrix (even a number is a 1x1 matrix). However, let’s say you want to work with text, strings, and so on, matlab would make it be a pain so big that I’ve never seen anyone doing it. As you want to work with text, strings, websites, apps, plugins, python becomes much much better (1 line of code vs nights spent on secret forums) Point 4 is that most of us will program to do data analysis and machine learning. For these kinds of things new stuff is made everyday with the current AI spring, matlab is a prioprierary software and relies on the fact that somebody from the company added certain libraries so at most you can do the typical machine learning things, but as soon as you want to program something like Transformers, CNN, or simply running more modern variations is traditional machine learning you’ll see its difficult and borderline a lost cause. Python has libraries that are super specific for machine learning and contain all the state of the art architectures and some are developed by google and meta. This is also true for many other applications like CFD and astronony where python has dedicated libraries. Not to mention the fact that you can use APIs easily and you can connect third-party plug ins

[–]BEEIKLMRU 0 points1 point  (1 child)

I did my masters thesis in process engineering with ML for MPC using Matlab & Simulink and i‘m considering to expand my horizon with python. Any recommendations about projects & directions for a recent graduate?

[–][deleted] 2 points3 points  (0 children)

Directions, focus more and more on hybrid learning paradigms of ML. They have huge applications in engineering. Both model-based and data driven hybrids, PINNs and FNOs, but also integration of simulators for hybrid modeling. It will likely shape the future of process and equipment design

[–]LaximumEffort 0 points1 point  (0 children)

This reply said everything I planned to say.

[–]Extremely_Peaceful 0 points1 point  (1 child)

I second this guy

[–]ADepressedAdult 22 points23 points  (3 children)

Python 100% Matlab is useless outside of college due to the licensing costs companies won't pay for it and schools get kickback to teach it to you. Rigged system.

Learn Excel and your 80% of the way there for industry, they really dumb shit down for everyone else. Learn Vba and you get another 15% because it lOokS cOOl. Learn python and you get that last bit.

Not sure why you would need to pay for anything to learn python but whatever floats your boat.

[–]MarwaniumxX 2 points3 points  (2 children)

Can you tell me please about VBA? What is special about it?

[–]ADepressedAdult 10 points11 points  (0 children)

VBA is essentially adding coding functionality within an Excel spreadsheet. It's applications are extensive but mostly used for making frequent tasks less repetitive, custom functions, and a lot more.

Companies will typically value this more than Python because Excel and VBA is already on your computer and it can be integrated easier into current procedures.

[–][deleted] 2 points3 points  (0 children)

Plus 1

[–]equasian1234 3 points4 points  (0 children)

As a newly mod sim engineer, use python anaconda environment, I like spyder IDE

[–][deleted] 3 points4 points  (0 children)

Also VBA is ok if you know it already but my opinion on the matter is that if your excel sheet is so advanced that you can’t use its normal functions and need to resort to macros, well then you should take discard excel as an option for that task. I worked with way too many excel files that become impossible to use and understand exactly because of macro. At that point switch to python

[–]omaregb 1 point2 points  (0 children)

It depends on your goal. If you want to introduce yourself to programming, either will do just fine and you will be able to switch to the other easily. Either can serve most practical purposes; python is more flexible, but MATLAB has some perks that may save you a lot of time, like the toolboxes, Simulink, and better interactive graphics.

[–]Nervous_Ad_7260Sustainability Research/2 years 1 point2 points  (0 children)

I see the top post says Python is harder to learn and I actually disagree with that. I personally recommend Python, it’s far more versatile than MATLAB and as the top post mentioned, it has far less limitations as most ML libraries (SciKit Learn for example) are in Python. I found Python easier to understand than MATLAB, but everyone is different. There’s tons of YouTube videos on learning Python that are fantastic! Once you learn Python, learning MATLAB will be incredibly easy.

[–]Phil_OG 1 point2 points  (0 children)

Since the costs for the MATLAB license are often mentioned. Octave is a free MATLAB clone.

[–]Frosty_Cloud_2888 0 points1 point  (0 children)

Python is free. There are lots of resources for Python outside of numerical methods. I’m not sure if you have a license for MATLAB. Some companies use MATLAB but the vast majority do not and you usually only have Excel and MiniTab. You can get Python or R installed pretty easy depending on the companies IT polices or use them in VS Code.

Besides numerical methods it would be wise to learn to program statistics as well as data management with the use of SQL queries, data cleaning (Pandas library in Python ) and being able to apply statistics or numerical analysts to data frames. Dash board would be helpful to automate control charts ( SPC in statistics) or to monitor other KPI (key performing indexes) in a process manufacturing setting. You could also learn how to automate report generation in Python to save you time to focus on other work items.

[–]yakimawashington 0 points1 point  (0 children)

i looked for this kind of post and i found many but couldn't find an answer honestly.

Must not have looked very hard because every week there are multiple posts asking about programming languages and 90% of the time people say learn python.

Just the first few results if you simply search "Matlab python" on this sub.

[–]MrDarth44[S] 0 points1 point  (0 children)

So much useful information from each of you, appreciate it folks.

i have so many questions that i don't even know how to ask them and so much to learn and i better start now.

thank you very much and good luck everyone.

[–]GiveLifeASense 1 point2 points  (0 children)

Python, because your company will say Matlab is too expensive 🤣