Slashdot Mirror


GNU Octave Gets a GUI

jones_supa writes "GNU Octave — the open source numerical computation suite compatible with MATLAB — is doing very well. The new 3.8 release is a big change, as it brings a graphical user interface, a feature which has long been requested by users. It is peppered with OpenGL acceleration and uses the super fast FLTK toolkit for widgets. The CLI interface still remains available and GNUplot is used as a fallback in cases where OpenGL or FLTK support is not available. Other changes to Octave 3.8 are support for nested functions with scoping rules, limited support for named exceptions, new regular expressions, a TeX parser for the FLTK toolkit, overhauls to many of the m-files, function rewrites, and numerous other changes and bug fixes."

40 of 166 comments (clear)

  1. Is it a competitor? by Toe,+The · · Score: 3, Interesting

    In the past year, I've never seen a time when Mathworks wasn't hiring hundreds of people. They even run sponsorships (read: ads) on NPR all the time about how many jobs they have.

    How does Octave or any other open source tool hold up against something with so many resources behind it?

    I'm asking honestly. I know Apache and Firefox certainly do pretty well, but the former has a huge business community using it, and the latter has an enormous consumer user base. How do smaller projects compare to big software tools? For example, isn't it generally understood among graphic artists that Gimp doesn't measure up to Photoshop?

    1. Re:Is it a competitor? by wonkey_monkey · · Score: 4, Funny

      For example, isn't it generally understood among graphic artists that Gimp doesn't measure up to Photoshop?

      Yes, but you get a lot more bang for your buck.

      --
      systemd is Roko's Basilisk.
    2. Re:Is it a competitor? by Lehk228 · · Score: 4, Interesting

      Open source projects have three competitive advantages which allow a slow but relentless domination.

      1) available at no cost
      2)project immortality independent of it's creator's solvency.
      3)ability to be adapted to fit a specific need.

      who would have guessed in 1991 that linux would dominate mobile computing like it has

      --
      Snowden and Manning are heroes.
    3. Re:Is it a competitor? by grqb · · Score: 4, Insightful

      Most of those jobs are for "application engineers" and not developers. An application engineer is a little like tech support and a little like sales. They will work closely with existing customers to make Matlab work for their customers application and they'll also try to upsell new features.

      Octave wouldn't have the same type of support structure but might have similar numbers of man power contributing to the development.

    4. Re: Is it a competitor? by vlueboy · · Score: 4, Insightful

      Error: Divide by zero.

      Does not compute.

      In a perfect world where piracy is zero, all people who will not pay for Photoshop are forced to use GIMP and other alternatives, or just stay out of the race. The problem in our world is few people see piracy as a problem and make statements such as this as if Adobe's boxes were all marked "MSRP: $0" instead of $600 or $1000 for the non-student versions. Just skip this post if you advocate otherwise. I don't want your reasons.

      If you basically have no barriers to acquiring Photoshop, then sadly there's no reason to "invest" on the less developed product, even if it is ALSO free.

      Adobe and Microsoft both know that piracy tends to drive adoption out of increased eyeballs on the de-facto tools. This hurts the number of developers who would otherwise improve Gimp out of sheer need. We have Linux today because someone in the nineties wanted a free alternative. Someone like that living in today's pirate friendly world would have few reasons to bother working with others, when he can just shut up and torrent multi-thousand dollar software.

      Does all that free work up on deviantart get made with paid copies of Photoshop, especially for broke amateurs contributing from humble third-world countries? nobody there buys personal software.

      If you're one of us who won't pirate, you'll find the problem. Just by the power of numbers, intentional or unknowing free-loaders *dictate* practices for everyone. It's free for them to send you their work in PSD format, or ppt and docx for Windows office work, so they'll do it and assume you have the reader for free on your machine.

      Not so much a problem for geeks who know of Openoffice, Gimp or the free converters online, but things get to the point where you have random computer illiterate friends expecting you to have those installed on your mother's machine to read some random forward, and think YOU are the one with the problem for not having pirated. But most of them are clueless that their PC is "fine" because someone else skirted paying hundreds of dollars for Office and other software. They just assume all PC's can read all files and that yours is broken. They're driving up the pressure for others to pay for Office and Photoshop. More realistically, it's just more pressure to pirate!

    5. Re:Is it a competitor? by hax4bux · · Score: 4, Insightful

      We all wish Mathworks/MatLab well. I used it at university and I use it at work. I use Octave at home (and sometimes at work). Octave is good for getting answers, not so good at graphing.

      Are they competitors? Yes. Is there room for both? Yes.

      Regarding Gimp vs Photoshop: I've never used photoshop (because of price) but I use Gimp all the time. The price is right and the functionality is there. I will never care about Photoshop because I'm not an artist. I think the same is true for Octave, many people have a light simulation or similar and Octave is good and available.

    6. Re:Is it a competitor? by mbkennel · · Score: 4, Informative

      | How does Octave or any other open source tool hold up against something with so many resources behind it?

      It's enormously cheaper. I'm now at a commercial analytic software company which could use MATLAB productively, but it isn't completely essential. Just one machine-locked license with a small array of basic toolboxes was $35,000 with a substantial yearly fee. Mathworks obviously didn't want our business. The attitude from management was that they pay money to hire smart people who know how to figure out things and we can use R or python or octave for free on all of our servers and PC clients. At $500 they might have had a sale.

      I compiled it from source and use octave, and yes commercial MATLAB is certainly a better and more comprehensive product.

    7. Re: Is it a competitor? by colinrichardday · · Score: 2

      From http://en.wikipedia.org/wiki/FreeBSD#History

      FreeBSD development began in 1993

      Wow, Linus couldn't just have waited two years?

    8. Re:Is it a competitor? by guacamole · · Score: 2

      How does Octave or any other open source tool hold up against something with so many resources behind it?

      It doesn't. Yes, Octave has a significant community as demonstrated by the activity of the mailing lists, but Maltab's user base is huge. It's like comparing Moon with Sun. Once you look at Matlab's advanced packages (which cost extra), Octave doesn't have much to offer against many of them. Matlab's GUI/IDE system is pretty nice and the help system is great. However, I also know tons of people in the academia who keep on using Matlab, even though they use only the basic language without much of third party packages. For them, switching to R or Octave should have been a no-brainer like a decade ago. In the end, Octave will never overtake Matlab because Octave is the follower. To take on Matlab you need something fundamentally better, and R is a good example. R has been a de-facto standard among academic statisticians for like a decade.

  2. scilab is better but french. by Ateocinico · · Score: 3, Interesting

    Scilab is far better and always had native 3D graphics, a GUI and a simulation engine: scicos/xcos. It atonishes me that it is systematically ignored. Is it because is french?

    1. Re:scilab is better but french. by tie_guy_matt · · Score: 5, Informative

      As others have pointed out, octave runs (mostly) unmodified matlab code. Scilab doesn't. However scilab is just close enough to matlab to be really annoying if you are used to matlab. I think that is really why octave is more popular than scilab (probably doesn't have anything to do with scilab being more French but who knows.) Don't want to pay $$$$ for matlab? Install otave for free and do almost everything you would normally do with matlab w/o relearning much of anything. One thing about octave though is that the graphics aren't as nice as scilab and aren't nearly as nice as matlab. I am not to excited about the gui (even use the cli on the latest version of matlab) but hopefully this new version will make the graphics in octave more in line with the other packages.

    2. Re:scilab is better but french. by chipschap · · Score: 2

      Sagemath seems like quite a good freeware alternative as well. I've come to prefer it to Scilab (though the Scilab simulation feature is pretty awesome).

  3. The point of most Open Source... by MAXOMENOS · · Score: 2

    ...is to keep vendors of commercial, closed-source software honest. Do you think Microsoft IIS would be half as good as it is if Apache and nginx weren't perfectly capable of doing the same job, for free and with the source code open to anyone? Come on. Octave will hopefully do the same for MATLAB.

  4. Re:What is the added value over Python? by tulcod · · Score: 5, Informative

    Yes. This runs unmodified MATLAB code.

  5. Re:Who the fuck wants to use GNU trash? by PurpleAlien · · Score: 5, Informative

    As someone who does science with Octave, I disagree.

    --
    My blog, if you're interested: http://www.purp
  6. Re:What is the added value over Python? by professionalfurryele · · Score: 5, Informative

    MATLAB compatibility. From my experience that is just about it, both are pretty feature complete but as Octave basically copies MATLAB warts and all so I don't know why anyone would use it if they knew other nicer programming languages. And if you have access to MATLAB and use it every day then MATLAB is just way faster than Octave (or at least was last time I used it).

    Being a copy of MATLAB is really useful though, and Octave serves a role there. I code primarily in python (or C/C++) for work, but most of my colleagues use MATLAB. The Linux MATLAB client is crap and a pain to install and keep working, but Octave is one apt-get away and usually does the trick when I need to run my colleagues scripts or write something for them. It has a permanent spot on my hard drive for that.

  7. Re:What is the added value over Python? by Peaquod · · Score: 5, Informative

    The main advantage is that you can run pre-existing MATLAB code, often without any modification whatsoever. When composing new code, I certainly prefer python/scipy. Also, many engineers and scientists know MATLAB because it is pervasive in industry, but do not have experience with Python.

  8. Good by Anonymous Coward · · Score: 3, Informative

    .. but Matplotlib + iPython Notebook + Pandas is worth a look, for those trying to escape "Matlab Prison"

  9. Re:What is the added value over Python? by Anonymous Coward · · Score: 2, Interesting

    * In most cases. I used to manage an octave and a matlab library and there were plenty of places in the code where we had to fork the code on a test "Is this octave?" to call the right function.

  10. Photoshop cloud different, not better by raymorris · · Score: 5, Interesting

    I have the complete Adobe suite. I use Gimp more often. Photoshop, like MS Office, is the de facto file exchange format in certain fields. Photoshop is also much slower than Gimp and in my opinion harder to use, hiding commonly used tools like rectangular selection underneath other tools.

    Neither is BETTER in an absolute sense. Most professional software engineers use/used C. That doesn't make C better than JavaScript.

  11. Re:Who the fuck wants to use GNU trash? by grqb · · Score: 3, Interesting

    Personally I switched from Matlab to python with spyder as the GUI interface and I'll never look back.

  12. Re: GIMP vs. Photoshop by Anonymous Coward · · Score: 3, Insightful

    Whenever there's a comparison between an open source product and a proprietary somebody always brings up the statement that "GIMP" is inferior to Photoshop like it's the "incontestable, revealed by Jesus Christ himself, truth" without *any* kind of supporting evidence.

    The Toe, I don't hold you personally accountable for repeating what's become a cultural FUD meme, but I do feel that somebody has got to set the record straight here.

    I would not consider myself an expert on image manipulation software, but I would consider myself competent enough to detect the stench of bullshit when it's spoken. I would very much like to see someone provide a valid metric for comparing Photoshop vs. GIMP and then proceed to provide real, valid data that either demonstrates that GIMP really is "inferior" to Photoshop or there's no real difference or that comparing the 2 products is inappropriate because they have different uses.

    Examples of bullshit metrics would be something like "has to support Photoshop plugins", or "has to have an interface like Photoshop" because that's not comparing capability, but comparing preference.

  13. Re: Graphical REPL? by Anonymous Coward · · Score: 2, Informative

    Mathematica replacement.
    http://www.mathics.org/

    You are welcome.

  14. qtoctave by JohnVanVliet · · Score: 4, Interesting

    it has one ALREADY

    I have been using Qtoctave for a VERY long time
    the current in SUISE12.3
    ---
    Repository: Packman Repository
    Name: qtoctave
    Version: 0.10.1-2.28
    Arch: x86_64

    --
    "I don't pitch OpenSUSE Linux to my friends, i let Microsoft do it for me
    1. Re: qtoctave by Anonymous Coward · · Score: 4, Informative

      you will, however, find that no one works on it any more, the last active dev (me) now directs contributions to the official gui.

  15. Re: GIMP vs. Photoshop by Anonymous Coward · · Score: 3, Insightful

    I would not consider myself an expert on image manipulation software, but I would consider myself competent enough to detect the stench of bullshit when it's spoken. I would very much like to see someone provide a valid metric for comparing Photoshop vs. GIMP..

    Good luck with that quest.

    Just before Christmas, I did some graphics work for a customer, and most of the 'grunt' work was dome in Gimp (and yes, I have fully licensed copies of CS4 and CS5 at my disposal).

    It's just another tool, and I use it when I need it. (I know of other 'professional' graphics artists who still use PSP)

    (Just for completeness, the final output design for this project was generated via Coreldraw X5).
       

  16. Re:Who the fuck wants to use GNU trash? by chthon · · Score: 4, Interesting

    From experience, when doing my thesis:

    For my thesis, I had to implement something (DSP) which was part of my advisor's doctorate. This entailed computing a whole lot of constants for a FIR filter. My advisor had implemented this using symbolic computation, which apparently worked up to MATLAB 2007, but not any more on more recent versions. When I tried his code on the school computers, I got no answers, or the code kept on running, so I could not obtain implementation constants for this filter.

    Well, symbolic computation did not work either on Octave, but I could install it on all my computers, so I did not need to either buy a version, run with an illegal version or only do my computations in school.

    I solved the problem, by the way, using convolution, which was much faster, and always worked.

    I suppose that the main reason for people using MATLAB professionally, is in the more advanced tools which are built on top of the basic layer, like Simulink and model-based design, which are missing in Octave. Anyone know how SciLab stacks up in this region against MATLAB?

  17. Re: GIMP vs. Photoshop by TechyImmigrant · · Score: 4, Interesting

    I used Photoshop a long time ago on Macintoshes. It was supremely intuitive to use. GIMP today is much worse than Photoshop of old. I've recently paid the Adobe tax (wife has a business that requires it) and the new Photoshop is a nightmare. Current versions of GIMP and Photoshop are both non intuitive and break the expected select/act behavior.

    The same is true of illustrator. The current interface is very unclear. I purchased a book to get past the initial confusion.

    I don't understand the rationale. They don't explain it. The manuals should perhaps start with a "Look it works like this and here's why" section. It's so much easier to follow the logic of a UI when you understand what the rationale is.

    Of course it could just be bad design.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  18. Re: GIMP vs. Photoshop by Anonymous Coward · · Score: 2, Interesting

    Ouch, GIMP is a usability disaster since they separated Save As and Export. I use Save As, every. single. time. And then realize it's wrong every. single. time. I am unable to override decades of muscle memory, even if I consciously know I should not use Save As in GIMP.

    Photoshop is only considered usable because people train themselves to use it. For someone who does use Photoshop often, trust me, its user interface is bizarre, unintuitive, and just plain wacky. It's like WordPerfect 5.1 in the way you have to just memorize how to do things. Then the user interface makes perfect sense, because you've trained yourself in how it works. It seems obvious if you've practiced and use it all the time.

    JASC Paint Shop Pro, up to version 9 before it was sold to Corel, was the only intuitive graphics program I've ever seen. It had one flaw which is why I never use it any more: You can't resize the selection rectangle.

    Corel PhotoPaint used to be good, too, except it was slow, slow, slow, slow, slow.

  19. Not really by Anonymous Coward · · Score: 4, Interesting

    The cost of using Gimp is not really zero. At least, if you are coming from a Photoshop background. You have to invest some time (surprisingly little!) in getting to know the software. It is, however, very capable software and the out-of-pocket cost is nil. It may be that investing some time is a good business proposition. It has been for me, as an independent graphics artist.

    I find Gimp to be a very capable application. My workflow isn't, in any way, hampered by choosing Gimp in stead of Photoshop. Yes, that took some time, and at times it was a steep learning curve. But I wouldn't go back to Photoshop for the kind of projects I do. I'd feel cramped if I'd have to.

  20. Photoshop as a platform by tepples · · Score: 3, Informative

    Examples of bullshit metrics would be something like "has to support Photoshop plugins"

    Would "has to support industry-standard, proprietary plugins A, B, and C, which are critical in my company's field of work and whose developers refuse to take our money for a port to GIMP" be more honest?

  21. Re:What is the added value over Python? by Anonymous Coward · · Score: 2, Informative

    Matlab itself can be easily replaced by Octave. But the value of matlab is in the available domain specific toolboxes and companies are willing to pay the 4- and 5-digit prices for these extension because they can save man-months or even man-years with them.

  22. Re:Who the fuck wants to use GNU trash? by PurpleAlien · · Score: 2

    Two examples of things I've done in the past and am currently doing:

    - count points on elliptic and hyper elliptic curves on a distributed parallel system for cryptography research
    - simulating electric motor magnetic fields, forces and temperatures on said parallel system

    --
    My blog, if you're interested: http://www.purp
  23. Re:What is the added value over Python? by Trepidity · · Score: 3, Informative

    Yeah, the fact that it runs always, while MATLAB does only sometimes, is why I use it when I need to run MATLAB stuff, even though my institution actually has a MATLAB site-license. Octave generally just works, while MATLAB has a bunch of license-server nonsense. Among other things, it doesn't work at all if you're offline (e.g. on a plane), since it has to contact the license server, and network-licensed copies have no Steam-style "offline mode", even a temporary one. And even online, the license server appears to be run on a toaster and down half the time, although that's probably my university's fault rather than MathWorks's fault.

  24. Re:What is the added value over Python? by professionalfurryele · · Score: 2

    I agree this is subjective, and I agree this is a horses for courses situation. But MATLAB isn't designed for abstract numerical computing, it is designed for linear algebra. If you have a task which you know can be reduced entirely (or at least almost entirely) to linear algebra (like a prototype neural network training scheme I was looking at a while back in MATLAB), then sure I'd say I find MATLAB's syntax a bit easier to work with. But if we are talking general numerical computing, or numerical computing involving a large chunk of code that needs to be properly organised then I think python's (with numpy and scipy) features wins out. Where exactly that line is depends.

  25. even better: R by cellocgw · · Score: 4, Insightful

    I'm a bit surprised to find that, 60 comments in, nobody's yet suggested R , e.g. http://cran.r-project.org/ as an alternative. There are several different GUIs available for R (Rstudio, Rcommander, Rjava,...), it's 100% opensource, and frankly most of us R users find the syntax and flexibility to be far better than MatLab. And the graphics have to be seen to be believed. You can do anything and then some.

    --
    https://app.box.com/WitthoftResume Code: https://github.com/cellocgw
  26. Re:Who the fuck wants to use GNU trash? by buchner.johannes · · Score: 2

    From experience, when doing my thesis: ...

    Well, symbolic computation did not work either on Octave...

    Did you try sympy? I was amazed recently how well it works -- you can start with certain assumptions and derive formulas/equations from them, output latex, and finally evaluate the equations, for instance for matplotlib plotting. Then you can change your assumptions and rederive new equations / plots.

    Of course it depends what kind of math you do.

    --
    NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
  27. Re: Drawing in GIMP by Anonymous Coward · · Score: 5, Informative

    Speaking as someone who uses these kinds of programs mainly for drawing/painting, GIMP is useless to me; I've yet to find a way to rotate/flip the viewport (not the image itself), save as/export issues as you've mentioned, no easy way to configure some necessary shortcuts (though it's been some months since I've used it, so I may be misremembering or it may have changed), the number bars for brush size, etc. are fucking awful, etc.

    You can't find viewport adjustment because it doesn't exist; GIMP is oriented toward image manipulation, not creation. Using GIMP or Photoshop as a drawing tool is a case of forcing the tool to be used in ways it wasn't originally intended, and unlike Photoshop, GIMP doesn't have the development resources for adding those sorts of things.

    What you should really be using is Krita, which lives somewhere between the extremes of GIMP and MyPaint. It isn't as powerful for editing as GIMP is, but it still has various editing tools, while still being focused on creation tools.

    Some interesting Krita features:
    * Non-destructive (i.e. viewpoint only) canvas rotation.
    * Non-destructive mirroring of the canvas.
    * Multiple viewports of the same canvas with independent zoom, mirroring, rotation.
    * Different layer types, including paint, vector, and filter.
    * Layer grouping.
    * Filter layers can be applied to either a single layer or a layer group, modifying the composite of the group's layers.
    * These Filters are non-destructive: they can be added or removed, and the layer(s) they affect can be edited while they're in use.
    * An excellent pop-up colour and brush selector. The centre is a normal colour selector, the middle ring lists the last twelve used colours, and the outer ring has ten brushes of your choice.
    * Multiple brush engines, all very flexible. The normal pixel brush engine is powerful by itself, but there is also a colour smudge brush for smooth blending (not mixing), a brush that emulates the harmony brushes, another that emulates Alchemy's shape brush, and "deform brush" that can nudge and move strokes on the canvas.
    * An editable perspective grid. Brush strokes can be forced to follow it for striaght, accurate lines.
    * Pseudo-infinite canvas. The canvas is finite, but when you scroll past the edge, an arrow appears; click it and the canvas extends in that direction. Not as nice as MyPaint, but still better than using a resize UI for quick extending.
    * Sessions. You can set up different UI layouts and change them on-the-fly with a click.
    * Different colour and shade selectors available, including the MyPaint one.
    * CMYK, RGB, and other colour models available, as well as varying bit depths

  28. Re:even better: R by hubie · · Score: 3, Informative

    R has everything I need for linear algebra.

    I love the graphics on R as well. Matlab always looks too computer-y for me. However, the thing I love the most about R is that not only is it free and top-notch quality, but I run it on my Windows box, linux box, for giggles I've loaded it on Raspbian on a Raspberry Pi, and if I ever get around to rooting my phone, I could even load it on there as well. No license files.

    With regard to Octave, when I've been given m-files, I've found Octave to be a very good substitute for Matlab.

  29. he used Minix, wanted 32 bit and modifiable by raymorris · · Score: 2

    Linus used Minix to write Linux. His motivations included pure geek fun, 32 bit support, and the ability to modify and distribute. Minix was free of charge, but not 100% freedom. You weren't allowed to modify Minix and distribute your own version. At the time, BSD included code written and controlled by AT&T.

    http://www.learnlinux.ie/content/linus-torvalds-original-announcement-usenet