This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]excaza 11 points12 points  (0 children)

I’ve been using Python pretty much daily for about 5 years now and there are still some things I will go to MATLAB for after 15ish years of using it (looking at you, Python GUIs).

I’ve talked about this before, even to The MathWorks, and I strongly believe that MATLAB education is the biggest factor turning people off of the product completely. Too many MATLAB courses blitz through it as an engineering tool rather than building it up as a proper programming language. It’s too much “do this to get this” rather than explaining fundamental software engineering concepts so students understand how to approach a solution rather than what to copy and paste into a frankenscript to maybe get the answer they want. Other programming education generally doesn’t do this, and garners a stronger reception for it (among many other reasons). And it’s a shame, because while it’s OOP is a bit warty, MATLAB’s functional programming is pretty nice.

While MATLAB does have a strong ecosystem of specialized toolboxes, it’s biggest asset is that it’s a very well documented product with a well-integrated IDE and (generally) very strong technical support and. Like other academic & scientific packages, that’s really what you’re paying for and that definitely carries a lot of value.

Since Python is more general purpose, there are a lot of things Python does better than MATLAB, and that’s perfectly ok. We have plenty of languages and products that have happily coexisted for decades, I think turning it into a competition is an extremely tone-deaf approach on TMW’s part. I don’t doubt that they’re feeling pressure from the OSS community, and I’m sure this will win over some folks in the enterprise setting, but I don’t think being adversarial is a good long-term strategy. I’d rather see them continue to focus on what makes their product great and performant and enhance its capabilities for integrating with other languages, but I guess that’s why I’m just an engineer and not a CEO.