I wasn't aware of the GNU Octave project until I saw a post on Reddit that it had hit version 4.0.0. If you're not familiar with it either, here's a brief overview:
GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation.
So why is this exciting? Aside from a Windows installer for all you people too lazy to switch to GNU/Linux, it apparently finally got a GUI (kind of a must for "modern" software):
Octave 4.0 is a major new release with many new features, including a graphical user interface, support for classdef object-oriented programming, better compatibility with Matlab, and many new and improved functions.
You can also get the full list of user-visible changes here.
Share and enjoy!
(Score: 3, Insightful) by richtopia on Monday June 01 2015, @10:05PM
...they need it.
Not to undermine Octave's accomplishments, but more to highlight how much money is available to MATLAB. I've used both, with my projects on a number of occasions starting on Octave and moving to Matlab when the IT department grants me a license. The speed difference is huge (MATLAB is faster).
It is also faster to write in MATLAB, thanks to the very useful GUI. MATLAB typically is written by people who don't want to code, so the GUI is huge in making their lives easier. On top of that there are advanced toolboxes giving lots of functionality that you need to write from scratch in Octave. I still have yet to see a good alternative to Simulink - even closed source struggles competing here.
I still have Octave available - in my "Portable Apps" directory of my USB key. However beyond that I just don't use it much anymore.
(Score: 5, Interesting) by physicsmajor on Monday June 01 2015, @11:04PM
Octave is basically trying to be like Wine - it's imitating MATLab including all of its faults, because that's what people are familiar with.
That doesn't make it the best, or even a good tool for the job. It's a good bridge to bring people from closed into open source tools.
If you want speed and performance, while retaining optimal usability, try Python. It's not a reimplementation of MATLab, but a massive improvement (namespaces! unit testing!) and it links into the same low-level libraries for math (BLAS/LAPACK). I've almost always been able to get NumPy code to run at equivalent or better speed to its MATLab counterparts. And when this isn't the case, it's easier to go from Python to Cython (C) than it is to rewrite everything in MATLab.
The tools are so much better in Python as well - the IPython/Jupyter project has a rich notebook including fun stuff like %profile and %debug which MATLab users can only dream about. The Python Package Index embarrasses MATLAB Central, with more tools which are actually robust and useful than anything available even for purchase through MathWorks. MATLab's machine learning is a toy compared to scikit-learn.
There are other options as well like Julia, which is faster than Python but has less of the support framework.
(Score: 2) by engblom on Tuesday June 02 2015, @04:48AM
A huge part of the GNU programs are badly made. Performance issues does not surprise me at all. FSF and GNU is not in first hand about getting excellent programs, it is about getting free programs, with quite a bit of features. Sometimes this means bad performance, sometimes it means really buggy programs, sometimes also good programs comes out.
(Score: 0) by Anonymous Coward on Tuesday June 02 2015, @05:12PM
I work in a research environment and I see more of my colleagues moving away from Matlab and IDL because they very expensive, and they are a real PITA dealing with the licenses and license servers. If you are in an academic environment, cost might not be an issue, but they really nail you for a non-academic license. And don't forget the back support they'll charge you. Of the people I know that are moving their code, most seem to be moving in the Python direction.
I've always seen the toolbox part of Matlab as a detriment, not an advantage. I get inundated with brochures about all the wonderful and great things Matlab can do for me, but it always boils down to whatever wonderful thing it is, you need to purchase yet another toolbox to do it. I've even gone to one of their day-long free courses (on signal processing or image processing, or something like that) and the whole thing was "if you purchase a license for this toolbox, this is how you use it".
I don't know about Matlab, but IDL has started putting Python hooks in so that you can call IDL functions from Python. They're doing this because they see users converting/rewriting their code.