7 ms·
Just wondering why Matlab ? Why no Python ? Why not C ? What about Lisp ? And Haskel ? Hey did I mention D ? I can agree that JS is not the best suited langua
by siscia 12y ago
Just wondering why Matlab ?
Why no Python ? Why not C ? What about Lisp ? And Haskel ? Hey did I mention D ?
I can agree that JS is not the best suited languages for this task but, JS is extremely well know so it is perfect to explain something.
Matlab... Humm is not so widely know...
- Swizec 12y agoYou can't have taken a college-level course in applied mathematics without touching Matlab. Maybe not all statistics courses use it, but we definitely used it when we were learning about newton elimination, linear/poly regression and other things where you solve mathematical equations that aren't analytically solvable. And yes, that was a mandatory course for CompSci. You mean people get through CS without touching Matlab and such? That's bonkers.
- RBerenguel 12y agoYou definitely can. I only ever touched Matlab in a course on Signal Theory (wavelets, Radon transform, Fourier...) All other courses involving anything needing solving 'somehing, were programmed from the ground up in C (off the top of my head this included Numerical Methods, Numerical Analysis, Dynamical Systems). In more algebra focused classes we used gp/pari or Mathematica.
- Swizec 12y agoCall me silly, but implementing Numerical Methods/Analysis from the ground up in C sounds like something that would put me in a fetal position in a dark corner somewhere. Why would anyone do that to their students? Did they also make you implement operating systems in assembler?
- tacos 12y agoWell at Carnegie Mellon they did. That's why I wanna know how some punk got his Caltech paper stamped without even learning C. He did seem sad that SpaceX wouldn't touch him. Apparently you need more than friends at the Jet Propulsion Laboratory and an ability to talk endlessly about Haskell to send shit to Mars. So that's good news at least.
- RBerenguel 12y agoI'm a mathematician, not CompSci (but I taught CS students and they had to also implement some things in C on their second semester.) So, no operating systems. Tough stuff was taken for granted when I was in the University.
- eli_gottlieb 12y agoIf you've never implemented a bootloader and some trampolines or interrupt handlers in assembler, you didn't really learn about operating systems.
- dagw 12y agoThere seems to be two schools of thought when it comes to teaching numerics. You either teach how to effectively implement the algorithms or you teach how to effectively select and apply the algorithms. It seems to be tied to if the computational science department comes out of the Computer or Math department. I'm personally of the opinion that knowing how to select and apply the right algorithm is far more important to learn for undergraduates. Implementing numerical algorithms correctly and efficiently is serious high level PhD territory, and if you're not going to learn how to do it right you're much better off not doing it at all and leaving it to the experts.
- Lawtonfogle 12y agoOnly after we built the CPU pipeline using nand gates.
- S4M 12y agoWell, I had some classes you mentioned (statistics, numerical methods, linear regressions) and never touched matlab.
- chestervonwinch 12y agoApplied math grad student here. C/C++ or Fortran was required for my computational/numerical courses. Part of this was because of the emphasis on numerical stability and complexity. I was, however, surprised starting out to find out how many of my fellow students had never programmed in a compiled language before - different focuses during undergrad, I suppose.
- dagw 12y agoAnother applied math grad here. Our intro numerical course was taught in Matlab since it made it a lot easier to focus on stuff like numerical stability and complexity without getting stuck in the details of teaching people C. Everybody who ever uses a computer to do any sort of math needs to know about concepts like stability, truncation, accuracy and precision, not everybody needs to know C or Fortran. It seems unnecessary to me to tie the learning of the one to the learning of the other It wasn't before the intermediate courses that Fortran (77 and 95),C and assembly where taught. And even there Matlab was used to illustrate most higher level concepts.
- Rainymood 12y agoIf you've ever done anything with matrices (and are lazy) you should have encountered Matlab. And if you haven't, it's worth checking out. Matlab made my life so much easier!
- collyw 12y agoMy order of preference would be Python, because I know it already, and its my day to day language. As far as I know it has decent libraries. GNU Octave, as it was reccomended on the Coursera course. R as it is an open source alternative, no expensive licensing cost, so I can try it out a no risk. Would I gain anything going to Matlab, as I can see advantages with the others being open source?
- tacos 12y agoAre you planning on getting work done? Or are you looking forward to digging into the source of yet another GNU tool that is stuck 20 years in the past? "One of the biggest new features for the Octave 3.8.x release series is a graphical user interface. It is the one thing that users have requested most often over the last few years and now it is almost ready." If you're planning on spending more than a few hours in the tool, consider spending the $200 on the one that's from this century. I picked up Matlab late and wish I'd done so sooner. It's a REPL for higher-level thinking and quick experimentation. It makes some hard things very very simple and some simple things very hard. They've dropped the price and fixed a lot of shit in the last 5 years. It's replaced a lot of goofing around in Python and Excel for me. Edit: I have a love/hate relationship with R and more of a love relationship with Python but they don't do ANYTHING like what Matlab does.
- GordyMD 12y agoIsn't Octave built with Matlab compatibility in mind? And Octave 3.8.0 was released back in December 2013 - so the GUI is already present, and from this decade. It's a great open source alternative to Matlab in my eyes for anyone that does not want to stump up $200. http://en.wikibooks.org/wiki/MATLAB_Programming/Differences_between_Octave_and_MATLAB http://en.wikibooks.org/wiki/MATLAB_Programming/Differences_...
- evgen 12y agoAgreed. You use Matlab if you want to do work that will not been seen outside of academia. You use R if you have some hope of getting a real job after your postgraduate years, and you use C/C++ code with Python (or Lua if you like the Torch work) as your glue if you plan on being one of the rock-stars that people actually compete over.
- cafebeen 12y agoMatlab is popular mostly because there's a lot of code in place to do optimization and to compare to past work. I personally stay away from it these days because its pretty horrible for anything but that, e.g GUIs.