MATLAB's strong point (and it is a very strong point) is that it has good built-in math functions, particularly for operations on large matrices, which other programs don't have. This makes it very good for writing small to medium scripts for math algorithms. (Particularly with ML problems and computer vision problems, which I understand Andrew works with professionally.)
As a programming language, though, it's godawful and if I never have to write in it again it'll be too soon.
Yeah, I'd have to describe MATLAB as a mathematical computation language that happens to be somewhat programmable (ignoring whether or not it's Turing complete, by "somewhat programmable" I mean, "you can program in it, but it would feel like shit"). One of my best friends uses it to do research involving high-resolution MRI imaging. Using it as a full-blown programming language is just insanity. I don't know why anyone would make you use it to program an Arduino of all things.
My limited experience with it seemed just like a standardized scripting language for a calculator engine. I used it briefly in one of my more advanced calculus classes, but I think it was mostly used for the first calculus class which I took at another school that didn't use MATLAB. And we only used it for like 3 or 4 lab assignments.
I don't know why anyone would make you use it to program an Arduino of all things.
It was for an engineering class, we had already spent the last 2 months or so learning matlab. I think the idea was to make it easy for the noobs.
Geeze, what are they teaching engineering students these days? Back in my day, they taught us engineering students how to program in C, and we liked it!
MATLAB... well, yeah, there were a couple of assignments where using it was optional, but we were on our own to learn it.
MATLAB's strong point (and it is a very strong point) is that it has good built-in math functions, particularly for operations on large matrices, which other programs don't have. This makes it very good for writing small to medium scripts for math algorithms. (Particularly with ML problems and computer vision problems, which I understand Andrew works with professionally.)
As a programming language, though, it's godawful and if I never have to write in it again it'll be too soon.
But hey, at least it's not PHP.
Many of the functions only work on one level or are variable from function to function. e.g. "max" on a 2d numeric array, it won't return the max element, but you can either do the stupid way you have to write slicing (when compared to Python) or iterate through the elements anyway.
I don't know why anyone would make you use it to program an Arduino of all things.
It was for an engineering class, we had already spent the last 2 months or so learning matlab. I think the idea was to make it easy for the noobs.
Geeze, what are they teaching engineering students these days? Back in my day, they taught us engineering students how to program in C, and we liked it!
MATLAB... well, yeah, there were a couple of assignments where using it was optional, but we were on our own to learn it.
Schools should be making C the default language, my brother didn't take it when he was doing Engineering and had to learn it when switching from Chemical to Mechatronics Engineering.
Matlab is being replaced in many Engineering firms with faster interpretive languages (such as Julia) or Python with NumPy and SciPy.
I don't know why anyone would make you use it to program an Arduino of all things.
It was for an engineering class, we had already spent the last 2 months or so learning matlab. I think the idea was to make it easy for the noobs.
Geeze, what are they teaching engineering students these days? Back in my day, they taught us engineering students how to program in C, and we liked it!
MATLAB... well, yeah, there were a couple of assignments where using it was optional, but we were on our own to learn it.
As an EE at RIT, I had a single mandatory programming course with about 11 weeks of C and 4 weeks of Matlab.
I've definitely not had enough sleep recently. Or maybe it's the antibiotics for my pneumonia, or I don't know what.
I just went into the men's room and as usual, the motion-triggered lights went out while I was trying to take a shit. Whatever, that happens like every time. They're set for some absurd interval like 90 seconds or something, so I'm used to finishing my shit in the dark.
So, then I come out of the stall, the lights come back on, I wash my hands...
And then I stand in front of the unlocked door, frustratedly tapping my RFID badge against a blank switch plate on the wall, waiting for it to beep so I can get out of the bathroom...
Looking that over quickly, I'd say that only about half of his gripes are even really valid gripes that seem mostly based on PHP syntax not having a direct analog to [FAVORITE LANGUAGE], by which I mean, he expects semantic equivalence where equivalence is really only implied because some other language has it.
For much of the other stuff, it's valid, but other languages have similar/the same issues.
Not that PHP isn't a grab bag of glued together libraries, but what code project of any size have you worked on that isn't eventually a grab bag of glued together libraries? Who the fuck uses a core language without libraries for anything outside of a classroom?
His complaint isn't that PHP isn't semantically similar to one language he likes, his complaint is that PHP tries to be semantically similar to a bunch of languages and is itself internally inconsistent. I mean, there are functions that require you to make a call to check a global state to see if they failed even though PHP has exceptions and uses them for other functions.
And the nice thing about including libraries in code projects in other languages is that those times you actually get to choose what you include. Not to mention that PHP's lack of namespaces or scoping makes avoiding namespace collisions a pain and is a security nightmare.
PHP is the worst language that's currently in use professionally.
What I mean is that he expects like, a foreach loop, to use an assignment operator the same as an equality assignment, etc. There's no law of the universe that says it has to be that way. He just likes that from [other language], and so on.
PHP is not something I'd use in production code, but neither do I feel a pressing need to write a multiple page rant about it...
Comments
As a programming language, though, it's godawful and if I never have to write in it again it'll be too soon.
But hey, at least it's not PHP.
MATLAB... well, yeah, there were a couple of assignments where using it was optional, but we were on our own to learn it.
Schools should be making C the default language, my brother didn't take it when he was doing Engineering and had to learn it when switching from Chemical to Mechatronics Engineering.
Matlab is being replaced in many Engineering firms with faster interpretive languages (such as Julia) or Python with NumPy and SciPy.
I wouldn't try to launch a Mars probe with it, but for the puttering I do it's more than enough.
I just went into the men's room and as usual, the motion-triggered lights went out while I was trying to take a shit. Whatever, that happens like every time. They're set for some absurd interval like 90 seconds or something, so I'm used to finishing my shit in the dark.
So, then I come out of the stall, the lights come back on, I wash my hands...
And then I stand in front of the unlocked door, frustratedly tapping my RFID badge against a blank switch plate on the wall, waiting for it to beep so I can get out of the bathroom...
For much of the other stuff, it's valid, but other languages have similar/the same issues.
Not that PHP isn't a grab bag of glued together libraries, but what code project of any size have you worked on that isn't eventually a grab bag of glued together libraries? Who the fuck uses a core language without libraries for anything outside of a classroom?
And the nice thing about including libraries in code projects in other languages is that those times you actually get to choose what you include. Not to mention that PHP's lack of namespaces or scoping makes avoiding namespace collisions a pain and is a security nightmare.
PHP is the worst language that's currently in use professionally.
PHP is not something I'd use in production code, but neither do I feel a pressing need to write a multiple page rant about it...