Octave is a great tool, and it addresses a very real need - breaking MATLAB's stranglehold on academic computing.
Every programming course I took as an EE undergrad (other than Intro to Programming) was in MATLAB. 14 years later, and it's still the standard tool in my alma mater's EE department. Having a FOSS equivalent is huge.
So raise a glass to the Octave dev team. They work hard to provide a FOSS tool that can run MATLAB code, which gives you the software you need for self-guided learning from university materials. Or for your all your computational needs.
And Octave is a great tool even if you don't need MATLAB compatibility. Try it out the next time you've got some numerical computing to do.
Agreed that:
A) it and Scilab are great projects
B) these would suffice fine for pretty much any undergraduate course in linear algebra, but many courses need Simulink and I'm not sure Scilab's Xcos is good enough. Since Matlab is like $20 for students, it is basically free and makes sense especially when you consider the IDE. Sure, Python and Julia are great options once you can code. There are many students who honestly just aren't very good coders by their sophomore and junior years. Engineering students have to code here and there in various projects, but often don't have a full class just for programming. Long story short, inverting a matrix in Matlab/Octave/Scilab is more straightforward than in Python. I think Julia's syntax has enough similarities with Matlab and is similar, but the tooling would be confusing to students.
> 14 years later, and it's still the standard tool in my alma mater's EE department.
Unfortunately it's still omnipresent. Even in very basic courses, where the abilities of Octave would be enough by a large margin. I don't think it changes until the next generation comes.
I had a few younger EE professors try to get us to use Python for our coursework just to get pushback from the status quo students talking about "but what about preparing us for industry??". It was pretty disappointing since Python's so much nicer than Matlab for signal processing IMO.
What? The industry doesn't use matlab except a few big places. Of those, most are also now considering switching to Python. They need to get out there and do some polling.
My undergrad university was really involved with "heavy industry"-type companies for co-ops and recruiting, like utilities, chemical processing/manufacturing, and military-industrial for the 4.0 GPA kids. All the fields who offer you a gray cubicle to waste your life in while they kill the environment, and they're pretty resistant to changing anything. It was really unhealthy for getting a well-rounded engineering education.
I've been doing some hobby signal processing in Ruby just for the challenge and checking the results with Octave. Ruby is such a nice language, it's a shame it doesn't have anything like Python's scientific libraries.
Octave is a great tool, and it addresses a very real need - breaking MATLAB's stranglehold on academic computing.
Every programming course I took as an EE undergrad (other than Intro to Programming) was in MATLAB. 14 years later, and it's still the standard tool in my alma mater's EE department. Having a FOSS equivalent is huge.
So raise a glass to the Octave dev team. They work hard to provide a FOSS tool that can run MATLAB code, which gives you the software you need for self-guided learning from university materials. Or for your all your computational needs.
And Octave is a great tool even if you don't need MATLAB compatibility. Try it out the next time you've got some numerical computing to do.
Not an Octave dev, just a fan of the project.