×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

GNU Octave 3.0 Released After 11 Years

kdawson posted more than 6 years ago | from the math-just-works dept.

Software 222

Digana writes "GNU Octave is a free numerical computing environment highly compatible with the MATLAB language. After 11 years of development since version 2.0, stable version 3.0 released yesterday. This version is interesting because unlike other free or semi-free MATLAB competitors like Scilab, specific compatibility with MATLAB code is a design goal. This has manifested itself in goodies like better support for MATLAB's Handle Graphics, a syntax closer to MATLAB's own for many functions, and many functions from the sister project Octave-Forge ported to the core Octave project for an enriched functionality closer to the toolboxes provided by MATLAB. GUI development is underway, but still no JIT compiling, which is a show-stopper for Octave newbies coming from MATLAB with unvectorized code."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

222 comments

meh (-1, Troll)

Anonymous Coward | more than 6 years ago | (#21793766)

Rob "CmdrTaco" Malda is a 29-year old white male with a stocky build and a goatee. He responded to my ad to be interviewed for this article wearing only leather pants, leather boots and a leather vest. I could see that both of his nipples were pierced with large-gauge silver rings.

Questioner: I hope you won't be offended if I ask you to prove to me that you're a nullo. Just so that my readers will know that this isn't a fake.

CmdrTaco: Sure, no problem. (stands and unbuckles pants and drops them to his ankles, revealing a smooth, shaven crotch with only a thin scar to show where his genitals once were).

Q: Thank you. That's a remarkable sight.

(laughs and pulls pants back up). Most people think so.

Q: What made you decide to become a nullo?

(pauses). Well, it really wasn't entirely my decision.

Q: Excuse me?

The idea wasn't mine. It was my lover's idea.

Q: Please explain what you mean.

Okay, it's a long story. You have to understand my relationship with Hemos before you'll know what happened.

Q: We have plenty of time. Please go on.

Both of us were into the leather lifestyle when we met through a personal ad. Hemos's ad was very specific: he was looking for someone to completely dominate and modify to his pleasure. In other word, a slave.

The ad intrigued me. I had been in a number of B&D scenes and also some S&M, but I found them unsatisfying because they were all temporary. After the fun was over, everybody went on with life as usual.

I was looking for a complete life change. I wanted to meet someone who would be part of my life forever. Someone who would control me and change me at his whim.

Q: In other words, you're a true masochist.

Oh yes, no doubt about that. I've always been totally passive in my sexual relationships.

Anyway, we met and there was instant chemistry. Hemos is about my age and is a complete loser. Our personalities meshed totally. He's very dominant.

I went back to his place after drinks and had the best sex of my life. That's when I knew I was going to be with Hemos for a long, long time.

Q: What sort of things did you two do?

It was very heavy right away. He restrained me and whipped me for quite awhile. He put clamps on my nipples and a ball gag in my mouth. And he hung a ball bag on my sack with some very heavy weights. That bag really bounced around when Hemos fucked me from behind.

Q: Ouch.

(laughs) Yeah, no kidding. At first I didn't think I could take the pain, but Hemos worked me through it and after awhile I was flying. I was sorry when it was over.

Hemos enjoyed it as much as I did. Afterwards he talked about what kind of a commitment I'd have to make if I wanted to stay with him.

Q: What did he say exactly?

Well, besides agreeing to be his slave in every way, I'd have to be ready to be modified. To have my body modified.

Q: Did he explain what he meant by that?

Not specifically, but I got the general idea. I guessed that something like castration might be part of it.

Q: How did that make you feel?

(laughs) I think it would make any guy a little hesitant.

Q: But it didn't stop you from agreeing to Hemos's terms?

No it didn't. I was totally hooked on this man. I knew that I was willing to pay any price to be with him.

Anyway, a few days later I moved in with Hemos. He gave me the rules right away: I'd have to be naked at all times while we were indoors, except for a leather dog collar that I could never take off. I had to keep my balls shaved. And I had to wear a butt plug except when I needed to take a shit or when we were having sex.

I had to sleep on the floor next to his bed. I ate all my food on the floor, too.

The next day he took me to a piercing parlor where he had my nipples done, and a Prince Albert put into the head of my cock.

Q: Heavy stuff.

Yeah, and it got heavier. He used me as a toilet, pissing in my mouth. I had to lick his asshole clean after he took a shit, too. It was all part of a process to break down any sense of individuality I had. After awhile, I wouldn't hesitate to do anything he asked.

Q: Did the sex get rougher?

Oh God, yeah. He started fisting me every time we had sex. But he really started concentrating on my cock and balls, working them over for hours at a time.

He put pins into the head of my cock and into my sack. He attached clothespins up and down my cock and around my sack. The pain was pretty bad. He had to gag me to keep me from screaming.

Q: When did the idea of nullification come up?

Well, it wasn't nullification at first. He started talking about how I needed to make a greater commitment to him, to do something to show that I was dedicated to him for life.

When I asked him what he meant, he said that he wanted to take my balls.

Q: How did you respond?

Not very well at first. I told him that I liked being a man and didn't want to become a eunuch. But he kept at me, and wore me down. He reminded me that I agreed to be modified according to his wishes, and this is what he wanted for me. Anything less would show that I wasn't really committed to the relationship. And besides, I was a total bottom and didn't really need my balls.

It took about a week before I agreed to be castrated. But I wasn't happy about it, believe me.

Q: How did he castrate you?

Hemos had a friend, Zonk, who was into the eunuch scene. One night he came over with his bag of toys, and Hemos told me that this was it. I was gonna lose my nuts then and there.

Q: Did you think of resisting?

I did for a minute, but deep down I knew there was no way. I just didn't want to lose Hemos. I'd rather lose my balls.

Zonk restrained me on the living room floor while Hemos videotaped us. He used an elastrator to put a band around my sack.

Q: That must have really hurt.

Hell yeah. It's liked getting kicked in the balls over and over again. I screamed for him to cut the band off, but he just kept on going, putting more bands on me. I had four bands around my sack when he finished.

I was rolling around on the floor screaming, while Hemos just videotaped me. Eventually, my sack got numb and the pain subsided. I looked between my legs and could see my sack was a dark purple. I knew my balls were dying inside.

Hemos and his friend left the room and turned out the light. I lay there for hours, crying because I was turning into a eunuch and there wasn't anything I could do about it.

Q: What happened then?

Eventually I fell asleep from exhaustion. Then the light switched on and I could see Hemos's friend kneeling between my legs, touching my sack. I heard him tell Hemos that my balls were dead.

Q: How did Hemos react?

Very pleased. He bent down and felt around my sack. He said that it felt cold.

Zonk told me that I needed to keep the bands on. He said that eventually my balls and sack would dry up and fall off. I just nodded. What else could I do at that point?

Q: Did it happen just like Zonk said?

Yeah, a week or so later my package just fell off. Hemos put it in a jar of alcohol to preserve it. It's on the table next to his bed.

Q: How did things go after that?

Hemos was really loving to me. He kept saying how proud he was of me, how grateful that I had made the commitment to him. He even let me sleep in his bed.

Q: What about the sex?

We waited awhile after my castration, and then took it easy until I was completely healed. At first I was able to get hard, but as the weeks went by my erections began to disappear.

That pleased Hemos. He liked fucking me and feeling my limp cock. It made his dominance over me even greater.

Q: When did he start talking about making you a nullo?

A couple of months after he took my nuts. Our sex had gotten to be just as rough as before the castration. He really got off on torturing my cock. Then he started saying stuff like, "Why do you even need this anymore?"

That freaked me out. I always thought that he might someday take my balls, but I never imagined that he'd go all the way. I told him that I wanted to keep my dick.

Q: How did he react to that?

At first he didn't say much. But he kept pushing. Hemos said I would look so nice being smooth between my legs. He said my dick was small and never got hard anymore, so what was the point of having it.

But I still resisted. I wanted to keep my cock. I felt like I wouldn't be a man anymore without it.

Q: So how did he get you to agree?

He didn't. He took it against my will.

Q: How did that happen?

We were having sex in the basement, and I was tied up and bent over this wooden bench as he fucked me. Then I heard the doorbell ring. Hemos answered it, and he brought this guy into the room.

At first I couldn't see anything because of the way I was tied. But then I felt these hands lift me up and put me on my back. And I could see it was Zonk, the guy who took my nuts.

Q: How did you react?

I started screaming and crying, but the guy just gagged me. The two of them dragged me to the other side of the room where they tied me spread eagled on the floor.

Zonk snaked a catheter up my dick, and gave me a shot to numb my crotch. I was grateful for that, at least. I remember how bad it hurt to lose my balls.

Q: What was Hemos doing at this time?

He was kneeling next to me talking quietly. He said I'd be happy that they were doing this. That it would make our relationship better. That kind of calmed me down. I thought, "Well, maybe it won't be so bad."

Q: How long did the penectomy take?

It took awhile. Some of the penis is inside the body, so he had to dig inside to get all of it. There was a lot of stitching up and stuff. He put my cock in the same jar with my balls. You can even see the Prince Albert sticking out of the head.

Then they made me a new pisshole. It's between my asshole and where my sack used to be. So now I have to squat to piss.

Q: What has life been like since you were nullified?

After I got over the surgery and my anger, things got better. When I healed up, I began to like my smooth look. Hemos brought friends over and they all admired it, saying how pretty I looked. It made me feel good that Hemos was proud of me.

Q: Do you have any sexual feeling anymore?

Yes, my prostate still responds when Hemos fucks me or uses the buttplug. And my nipples are quite sensitive. If Hemos plays with them while fucking me, I have a kind of orgasm. It's hard to describe, but it's definitely an orgasm.

Sometimes Hemos says he's gonna have my prostate and nipples removed, but he's just kidding around. He's happy with what he's done to me.

Q: So are you glad Hemos had you nullified?

Well, I wouldn't say I'm glad. If I could, I'd like to have my cock and balls back. But I know that I'm a nullo forever. So I'm making the best of it.

Hemos and I are very happy. I know that he'll take care of me and we'll be together always. I guess losing my manhood was worth it to make that happen for us.

Re:meh (-1, Offtopic)

Anonymous Coward | more than 6 years ago | (#21793870)

The parent was modded a troll (which is obviously correct), but still...there should be something like "-1 for trolling but +5 for all the work". Heh.

Re:meh (0)

Anonymous Coward | more than 6 years ago | (#21794740)

actually, it's a true. Offtopic, but true.

11 Years? (2, Interesting)

Anonymous Coward | more than 6 years ago | (#21793782)

11 Years no GUI, and no JIT and only partial MATLAB support. Tell me again why GNU FreeSoftware is a better development model if you don't mind.

Re:11 Years? (5, Funny)

nacturation (646836) | more than 6 years ago | (#21793824)

11 Years no GUI, and no JIT and only partial MATLAB support.

Tell me again why GNU FreeSoftware is a better development model if you don't mind.
It may not be the best now, but just wait until HURD is released... then this development model's superiority will be obvious!
 

Re:11 Years? (1)

dws90 (1063948) | more than 6 years ago | (#21793876)

I thought this was going to be about the GNU version of Duke Nukem Forever. When's that coming out?

Re:11 Years? (1)

LiquidCoooled (634315) | more than 6 years ago | (#21793904)

The guys got sidetracked managing the development of Duke Nukem Forever but now have free time once again since its been handed to another team to mull over.

Re:11 Years? (5, Insightful)

betterunixthanunix (980855) | more than 6 years ago | (#21794248)

Features? Maybe I can't beat you there. Reliability? Absolutely (GNU code is at least on par with BSD and other Unixes, and far more reliable than other systems, in my experience). GNU won't waste your time with a license check; when my school's Matlab license server went down, me and my peers were left out in the cold, with final projects looming over our heads.

My school will not give students a copy of Matlab for any purpose, because of license restrictions. We can either use a school terminal (ever wonder what a crowded computer lab looks like?), or run it off a Solaris server (X11 forwarding, leaving Windows and most Apple users out of the loop) which has strict resource limits imposed (forget processing anything big). Of course, with this setup, it is completely impossible to hook up any specialized hardware to the system running Matlab, so to process data from the real world, we must first collect it on one computer, then copy it over to a computer with Matlab installed (which is rarely in the same room as the equipment in use), and no, you cannot process anything as it happens, and yes, our disk space on the Solaris server is limited to 100MB, so your data can't be too large (not that you get enough CPU cycles to process anything large).

Octave? Right on my system. On any system I want, actually. I miss a few features, and bit of Matlab compatibility (not nearly as bad as it sounds, I have yet to have it be an actual problem), and a GUI (which I am not at all concerned about -- I'll take a functional CLI over a dysfunctional GUI any day), but in the end, I get what I needed: Something that allows me to work with other people's Matlab code, without having to wait in line for a computer or worrying about a resource limit on a Unix server. If Mathworks stopped screwing around with license restrictions, that are even worse than Wolfram (the maker of Mathematica, which is also mangled in license restrictions), I would never have even looked into Octave.

Re:11 Years? (0)

venicebeach (702856) | more than 6 years ago | (#21794542)

X11 forwarding, leaving Windows and most Apple users out of the loop
Why would X11 forwarding leave any Apple users out of the loop?

Re:11 Years? (3, Interesting)

betterunixthanunix (980855) | more than 6 years ago | (#21795056)

While I know that MacOS X ships with an X server, I have met only one Apple user so far who has set it up, and beyond that, none of the rest are even aware of X11. X11 is not enabled by default. The Apple users I've encountered have very little knowledge of X11, ssh, forwarding, non-Apple Unixes, or how a program can run on one computer and be displayed on another. Apple designed a GUI-centric OS, and its users are often loathe to open a shell and start typing in commands (considered to be too "unintuitive"), at least in my experience.

Most Linux or BSD users, who happen to be using a GUI, will already have X11 running, and will therefore have a much easier time running Matlab off our Unix servers. There is certainly no problem running an X server in MacOS, nor is there a problem running it in Windows -- but these systems are not being marketed to people who have the technical skill to set that up. Not to start a flame war, but Apple just isn't trying to attract users who are aware of X11, Unix terminals, programming, etc. If anything, Apple has tried as hard as possible to remove the "nerdiness" from computing, and present there systems as intuitive, simple, straightforward computers that any idiot with no computing skills whatsoever can figure out how to use. That's fine, but when it comes to doing something that doesn't fit into the desktop computer model -- running a program on a server, and having its GUI rendered on your PC does not fit into the desktop model, at least not as Apple has implemented it -- they are not marketing to people who are comfortable, knowledgeable, or appreciative of such things. You don't have to be their target market to use Apple systems, but you have to be aware of what their target market is, and that the overwhelming majority of Apple users have no interest in anything beyond the desktop metaphor that Apple has created.

It is necessary for me to stress that I am not criticizing Apple or its users; I am criticizing my university and the Mathworks company, for creating an environment where only people who are involved in computing can access Matlab outside of our computer labs. My point is that, because of the terms of Mathworks' site license, the software must be on a specific number of university owned systems, and that while there is nothing stopping Apple or Microsoft users from accessing that software, the majority are not knowledgeable enough to do that. The university doesn't do much to educate or encourage students to set up X servers and run Matlab/Mathematica/Maple on our servers (can't say I blame them; the increased network and server load would probably bring everything to a grinding halt), and most students who use this software aren't even aware that they can access it in that manner anyway.

Re:11 Years? (3, Informative)

EvilRyry (1025309) | more than 6 years ago | (#21795138)

Or windows users for that matter. There are plenty of X servers out there for Windows including Xming. Putty even has an option for X11 forwarding, so no one can really argue that its remotely difficult to set up.

Matlab and X11 forwarding (1)

r00t (33219) | more than 6 years ago | (#21794658)

First of all, it works great with Windows and MacOS X. When you install Windows or MacOS, one of the first things you do is get an X server. (for evil reasons, the OS is supplied without decent compatibility with open protocols and open file formats) Of course you also install an ssh client, a POSIX shell for Windows, etc.

Second of all, maybe that is where your CPU cycles are going. Last I checked, which was indeed some time ago, Matlab was fully capable of running without the GUI. You can make your graphical output go to PostScript files.

If you wish to print these files through a terminal emulator, use the vtprint program. (or write your own) It's just a shell script that sends the VT100 escape sequences for printing, your file, and the escape sequence to stop printing. It worked great for me. You can also print to image files, maybe in a directory that shows up on a web server somewhere.

Re:Matlab and X11 forwarding (1)

poopdeville (841677) | more than 6 years ago | (#21794748)

Uh, X11 comes with OS X. If I recall correctly, it's installed by default by the Leopard installer.

Your fanaticism is showing.

Re:11 Years? (1)

poopdeville (841677) | more than 6 years ago | (#21794726)

I strongly suggest you send a polite email to your school's IT staff explaining your academic needs. If that doesn't work, ask your professors to speak with the IT staff on your behalf. Don't let talk of 'policy' get in the way. Talk to policy makers on campus and get them to talk to IT on your behalf. Don't be rude. This isn't a crusade. You (presumably) have legitimate academic needs and a legitimate academic use for the resources IT would grant. That's their job.

I find it depressing when students let shit like this happen to them.

Re:11 Years? (4, Insightful)

lm317t (971782) | more than 6 years ago | (#21795132)

Well I've been a matlab and octave user for 10 years and I think I used the matlab GUI once, but its so much slower than vim that I ditched it.

Octave needs a gui like python or bash does.

Finally... (0)

Anonymous Coward | more than 6 years ago | (#21793810)

A Christmas gift we can ALL enjoy!

Well, if they ever become competitive to Matlab. (1)

ScrewMaster (602015) | more than 6 years ago | (#21793912)

This will be a good thing. That company really doesn't treat its customers very well at all.

Re:Well, if they ever become competitive to Matlab (4, Informative)

0100010001010011 (652467) | more than 6 years ago | (#21794680)

Define not "not treating customers well."

I've called them with a fairly high level support problem. I got patched directly through to an engineer and within 7 hours (we had been pounding our heads against the wall for a week) we had a solution.

I've heard numerous other stories of similar fate (which is where I got the idea to call).

While Octave is fine for supporting *most* of the features of Matlab. There is a segment of the market that Octave is never going to touch. Simulink, most of the extra toolboxes, direct from Simulink to ECM Flash software. Some of the high level Power Sim blocks, hardware in the loop stuff (From dSpace). "Matlab" is just the tip of the iceberg when it comes to Mathworks software. We even have people writing S-Functions, I'm picking up MEX to speed up some data routines.

I live and breathe on Matlab and for most of the stuff I do, Octave won't touch it. For 'us' Octave will never be competitive.

Re:Well, if they ever become competitive to Matlab (4, Insightful)

ScrewMaster (602015) | more than 6 years ago | (#21794870)

Okay, I'll define it. The math man at our company only uses Matlab intermittently (the occasional R&D project) and for the past few years it was decided that we couldn't justify buying support or upgrades. This year he was asked to look into what it would cost to upgrade. He was told that we'd need to make up all the money that Matlab didn't get all those years first, before we could even be considered for an upgrade, and conveniently just purchasing a new copy would be even more expensive. Now this was in spite of the fact that they had provided no support or services in that period. Ended up being about fifteen grand for one seat. Let me tell you, that's a sense of entitlement with a vengeance, one that even the RIAA could appreciate. In other words, play our game and pay us our yearly juice money or we'll shove it up your ass.

I know Matlab is a complex product that took decades to develop, but demanding money for services not rendered, just because you know the customer has nowhere else to go, is usurious at best. I presume you've never had to deal with them in that vein because you've obviously bought into their system and it's worth it to you to keep paying them. I have no problem with that. But their attitude left a very bad taste in our corporate mouth, and given that our needs are simplistic compared to yours, we'll be evaluating what else is out there. Their behavior in this regard is not what I expect of a truly customer-oriented operation, but it is what you expect when a single company achieves a de-facto near monopoly.

Re:Well, if they ever become competitive to Matlab (0)

Anonymous Coward | more than 6 years ago | (#21794916)

You do realize that it costs 1900 for a new single seat license of Matlab.

Re:Well, if they ever become competitive to Matlab (1)

ScrewMaster (602015) | more than 6 years ago | (#21794972)

Did you read what I said? Yes, I know MatLab is expensive, but the upgrade cost (including the required three or four years of past payments on software maintenance) put that seat at around fifteen grand. They provided no service during that period, yet they insist that they should be paid for it regardless. Apparently they feel that, once you've purchased the program, you are beholden to them indefinitely for support payments, whether you want to pay for support or not, whether you need their support or not.

Re:Well, if they ever become competitive to Matlab (1)

0100010001010011 (652467) | more than 6 years ago | (#21794962)

$15k for ONE seat? What the hell else did you buy?

From: http://www.socialtext.net/researchcomputingtest/index.cgi?matlab_site_license [socialtext.net]
* What is the cost of simply increasing our current licenses to 50/100/250 seats for concurrent use with all 50 toolboxes? How does that compare to the site license?

100 seats of concurrent licensing at the 50 toolbox level would be about $100,000; for the 250 seat level, about $300,000. The site license will be less than half the cost of the 100 seat level.

From Yahoo Answers:
"List price for the base MATLAB {commercial, single user License} is $1900.00/us. "

15k can get you some pretty shiny toolboxes for someone that doesn't use it that much.

Re:Well, if they ever become competitive to Matlab (1)

rasputin465 (1032646) | more than 6 years ago | (#21794966)

Ended up being about fifteen grand for one seat.

I don't buy that for a second. Even if you bought every single toolbox available (which no one would do because they cover such a broad set of tasks), it wouldn't add up to 15 grand per license.

I've only dealt with Matlab on the academic side, but I can say I've had good relations with their customer service. The last time I interacted with them, I had to buy new licenses for our research group; I had read through the various options and thought I had found the cheapest configuration that would meet our requirements, spoke with the sales rep, and he spent some time on his own digging around and found an even cheaper way to get what we needed.

My [admittedly uneducated] guess is that maybe "the math man" in your company is a moron at the negotiation table...

Re:Well, if they ever become competitive to Matlab (3, Insightful)

ScrewMaster (602015) | more than 6 years ago | (#21794984)

I didn't say it was the price for one seat. It was the cost to pay for the software maintenance that we had chosen not to pay for the past few years. I wish people would read what I post instead of just the first line. And there was no negotiation involved: just a simple email request for current pricing. I saw the response from Mathworks. We were all kinda surprised at the amount.

Re:Well, if they ever become competitive to Matlab (1)

datan (659165) | more than 6 years ago | (#21795126)

First of all, they make it very clear when you purchase the software that if you don't go on software maintenance, if you ever want to upgrade your license you have to pay back all the years you missed out. It's a decision that presumably someone made at your company not to go on support, so I'm not quite sure why you're complaining that they are enforcing their end of the deal.
Secondly, if the cost of paying back all the years you missed exceeds the cost of getting a new seat, then simply get a new seat and stop using the old seat. Your cost of $15k seems that you should consider simply getting a new seat.
Thirdly, when we move into the realm of "very expensive software", most software require you to pay an annual fee just to keep current and receive updates eg. Windows Software Assurance. The fact that your company declined to go on Software Maintenance means it should bear the consequences of not doing so.
Finally, I also must add that Mathworks is usually pretty responsive with technical issues that I've had.

Re:Well, if they ever become competitive to Matlab (1)

ScrewMaster (602015) | more than 6 years ago | (#21795194)

Well, personally I couldn't care less. I have no interest in the product so I'll take your word for it. I just know what I heard at work.

Re:Well, if they ever become competitive to Matlab (3, Interesting)

Anonymous Coward | more than 6 years ago | (#21794948)

> Define not "not treating customers well."

OK, I'll define it for you.

I have been a Matlab user since my first graduate classes in control systems in the early nineties, when it ran on old PCs in our controls labs and didn't have the current integrated GUI. It was a revelation to be able to perform matrix and control system analyses in such a simple way, with the many built-in functions (lsim, step, bode, margin, etc.) There was nothing else like it and it taught me a lot.

In my subsequent work as a controls engineer in the astronomy field, I have used Matlab consistently for many years, occasionally requesting technical support - as you mention - and normally getting a good response. I have downloaded free evaluations of new toolboxes and sometimes we have followed up with a purchase, if the product is worth it. We use Simulink a lot for design, and this is also a really good tool.

Over the last two years or so, Matlab - the company - has been getting more unfriendly. When I decided not to renew my ongoing 'maintenance' package with them, after I saw we were getting poor value for money per year (a few .x.x upgrades for more than a thousand US dollars a year), I received several of the usual reminders to renew, followed by a very strange email:

"September 25, 2006

Dear Mr. (Name Deleted):

(Company Name Deleted) is a valued customer of The MathWorks, Inc. and we appreciate your business. As you are probably aware from reading press and industry reports, software license compliance remains a challenge for the computer software industry. Like many of our peer companies, The MathWorks is implementing a license compliance audit process and has engaged an independent third-party auditing firm to assist us in performing this work.

This letter does not indicate that your company has been selected for an audit, but rather, serves as a general announcement of the program. While we are in the planning stages of the program, we wanted to take the opportunity to inform you of this activity. We realize it is very important to answer any questions you may have about the program and we want to work hard to eliminate any surprise if your company does get selected for review.

As we move forward with our program, we will begin to select various customers to conduct compliance audits pursuant to the terms of our software licensing agreement. If your company is selected, you will be notified in advance by a representative of The MathWorks. Our auditors will then contact your company to discuss the audit timing and procedures, and request documents to help make the process run as efficiently as possible.

The procedures our auditors will follow are designed to validate software licenses deployed and measure deployment against historical records. We understand that you are busy and every step will be taken to minimize the impact to your daily operations during the process.

If you have questions about your current usage of MathWorks products, please do not hesitate to contact the Installation and Licensing Team by e-mailing: support@mathworks.com

We value our relationship with your organization and look forward to your support.

Sincerely,

The MathWorks Licensing Compliance Team

To update your address, send e-mail to: service@mathworks.com

The MathWorks, Inc. - 3 Apple Hill Drive, Natick, MA 01760 - 508-647-7000"

I never heard more about this, but it looked suspiciously like applying a bit of pressure - 'if you don't want a visit - or the possibility of one - from our licensing compliance goons, why not just cough up that maintenance fee'. I mean, if piracy and so on is such an issue, then check out every single customer, irrespective of their maintenance status. What have you got to hide, eh?

What finally pissed me off was when I wanted to download a trial of a toolbox I was interested in purchasing. Here is the friendly reply:

"(Name Deleted),

Here is a quote to add the (Toolbox Name Deleted) to your license. Since your license has been out of maintenance since (Date Deleted) there are reinstatement fees for MATLAB along with back maintenenace fees. To add new tools to a license we require dependent tools to be up to date. I have left you a voicemail as well on this. Please contact me with any questions you may have.

Regards,

(Name Deleted)

(Name Deleted)
Geographic Sales Specialist
The MathWorks Inc."

I wrote back and declined to reinstate my maintenance fine (err... fee, sorry) for the privilege (once free) of downloading a fixed term trial. I am not going to reinstate my maintenance, and if I can move away from Matlab in the future I will do so and encourage others in the same direction.

Re:Innovation. (0)

Anonymous Coward | more than 6 years ago | (#21794774)

Ah! the innovation of open source.

Copy a commercial product.

Or clone things done before, such as all the old unix grep etc tools.

DNF (-1, Redundant)

Anonymous Coward | more than 6 years ago | (#21793930)

There is still hope for duke nukem forever!

11 years? (1, Insightful)

Anonymous Coward | more than 6 years ago | (#21793954)

Why is 11 years significant? 2.0 and 3.0 are just version numbers.

It's been over 11 years since Linux 2.0, and Linux 3.0 is nowhere in sight, but I don't see anybody complaining about its version number.

OTOH, GNU Emacs is at version 22, and I don't see either its proponents or its detractors claiming this is a good or bad thing.

Or maybe I'm just amused because it's on Slashdot. I mean, releasing a new major version of some numerical analysis software must be really easy, right? It's not rocket science, like, say, using CSS for a webpage, huh? Huh? *nudge*

Re:11 years? (2, Funny)

BlueParrot (965239) | more than 6 years ago | (#21794014)

Ok, I was supposed to make a joke about my kernel version here, so I pressed ctrl+alt+enter to spawn a terminal to run uname in. It took me a whole minute until I remembered that I'm visiting my relatives over christmas and that all this free software (firefox, xchat, VLC, Pidgin, Open Office, LyX ... ) is actually running on my dad's windows box. Microsoft are going to be in deep shit when KDE is released for windows.

Re:11 years? (1)

j-pimp (177072) | more than 6 years ago | (#21794792)

Microsoft are going to be in deep shit when KDE is released for windows.

Ok and why exactly is that? They still got a windows license fee from you. They can still sell you windows software.

Good and bad news (5, Insightful)

mangu (126918) | more than 6 years ago | (#21793958)

The good news is that they are doing in a free way what the Matlab Co. has been charging (a lot!) for, which is distributing an API to use all those libraries the US Federal Government labs give away for free [netlib.org] .


The bad news is that they are wasting their time using the Matlab syntax, while there is a much better alternative [scipy.org] for doing exactly the same thing. Python [python.org] is universal, if there's anything you can do with a computer, the simplest way to do it is with Python, so why do it the hard way?

Re:Good and bad news (1)

macshit (157376) | more than 6 years ago | (#21794038)

The bad news is that they are wasting their time using the Matlab syntax, while there is a much better alternative for doing exactly the same thing. Python is universal

Er, sure matlab syntax sucks, but has any syntax inspired more flamewars than python's?

Re:Good and bad news (1, Informative)

mangu (126918) | more than 6 years ago | (#21794128)

has any syntax inspired more flamewars than python's?

I suppose you mean the spaces vs. tabs thing, maybe you're right, but no one can deny that Python has an extremely simple syntax.


You can do anything with it, from HTML parsing [crummy.com] to a game physics engine [sourceforge.net] to 3d graphics [sourceforge.net] to Excel spreadsheets [markcarter.me.uk] to... you name it.


Even if Python isn't quite enough for your needs, you can very easily link it with C language [swig.org] or Fortran [scipy.org] modules in a trivial way.


If I have an alternative that is, at the same time, simpler and more powerful, then why should I bother with this whole Octave/Scilab/Matlab mess?

Re: You can do anything with it! (3, Funny)

WeblionX (675030) | more than 6 years ago | (#21794506)

Ah, but can it give me a larger penis and a rolex? Not that I need either, but I certainly wouldn't turn down the chance to get them.

Re:Good and bad news (1)

chromatic (9471) | more than 6 years ago | (#21794522)

no one can deny that Python has an extremely simple syntax.

Have you ever used decorators or nested list comprehensions?

Re:Good and bad news (1)

Just Some Guy (3352) | more than 6 years ago | (#21794862)

Have you ever used decorators

Writing decorators isn't always the most straightforward task, but using them is dead simple. If you have a decorator named trace, for instance, you can use it like:

@trace
def foo(): print 'This function call is being traced.'

Maybe trace is hideously complex, but you, the user, don't have to see it - you just get the straightforward usage pattern.

or nested list comprehensions?

Those correlate exactly to nested function calls ("composition" for compsci/math types):

a = [foo(x) for x in [bar(y) for y in range(10)]]

isn't any more complicated than:

a = foo(bar(range(10))

Re:Good and bad news (1)

chromatic (9471) | more than 6 years ago | (#21794882)

I'm familiar with both, and I have no problem with them as features, but I don't consider them "exceptionally simple", syntax-wise. Don't get me started on double-underscores and slots....

Re:Good and bad news (4, Insightful)

CaptainPinko (753849) | more than 6 years ago | (#21794544)

I suppose you mean the spaces vs. tabs thing, maybe you're right, but no one can deny that Python has an extremely simple syntax. You can do anything with it, from HTML parsing to a game physics engine to 3d graphics to Excel spreadsheets to... you name it.
You've also just described Lisp/Scheme (i.e. simple syntax and (a) languages(s) you can do anything with))... but switching to their syntax would be quite contentious. If you are gonna argue for a syntax switch you are going to have to have better points than that, especially when the default is (near-)compatibility with a popular product with a large codebase out there.

Re:Good and bad news (1)

grrrgrrr (945173) | more than 6 years ago | (#21794184)

To all the people who do not like python's syntax I like to say start indenting your java,ruby,c code for a while and yuo will see that that will improve readability a lot.

Re:Good and bad news (1, Funny)

Anonymous Coward | more than 6 years ago | (#21794450)

Is your python code as unreadable as your English?

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794760)

If you know that many people that do not indent their code, then you need to move in different circles.

Re:Good and bad news (1)

j-pimp (177072) | more than 6 years ago | (#21794820)

To all the people who do not like python's syntax I like to say start indenting your java,ruby,c code for a while and yuo will see that that will improve readability a lot.

I think the point is forcing you to indent a certain way. I will admit I've seen really badly indented code in many langiuages. I also admit that I usually end up writing code to match my IDEs beautifyer. However, sometimes I want the option to indent how I want to. For example. for long parameter lists for a function I want to be able to place the parameters on the next line indented by on tab, and when I want to split that line futher, each subsequent line will be indented by one tab and one space.

Re:Good and bad news (1, Informative)

Breakfast Pants (323698) | more than 6 years ago | (#21794846)

Huh? Python doesn't demand anything of your indention of parameter lists, anything in any kinds of braces (parameter lists are in parenthesis in Python) is complete free form.

Re:Good and bad news (1)

femtoguy (751223) | more than 6 years ago | (#21794080)

Two reasons.
1. I know how to code in Matlab. I have spent the last 13 years writing matlab code, and it works well. It is especially good at writing vectorized code without having to think about it too much.

2. I have a lot of working, tested code that I don't want to have to re-write. Much of it is special-purpose stuff, and I don't want to have to re-write it and then test it to make sure that it gives the correct answers.

3. Sometimes languages that are good for one thing are not good for another. Most scientific code is still written in FORTRAN for the above reasons, but also because there are few cases where it is worse than C or C++, and several cases where it is better. Ironically, the lack of pointers, something that computer scientists think is terrible, is actually one of its strengths. If you are trying to parallelize a section of code, having a routine mess with array values through pointers renders the code unparallelizable.

Re:Good and bad news (1)

fedtmule (614169) | more than 6 years ago | (#21794162)

Ironically, the lack of pointers, something that computer scientists think is terrible, is actually one of its strengths. If you are trying to parallelize a section of code, having a routine mess with array values through pointers renders the code unparallelizable.

You may be over-generalizing here. Not all computer scientists think that pointers is a wonderful idea. Take a look at Haskell. A language pretty much invented and maintained by computer scientists. To be earnest Haskell do have pointers, but they are almost exclusively used to interface with other programming languages. Mostly C. In ordinary Haskell code you never see any pointers.

And the reason you mention for not having pointers, is just one of the reasons a lot of computer scientists do not like them.

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794310)

lack of pointers
Not anymore! Fortran 90 [wikipedia.org] has pointers, and Fortran 2003 [wikipedia.org] adds function pointers. It's been years since I've used Matlab, but I know it has function pointers. Don't think it has plain ol' pointers though.

Re:Good and bad news (1)

Verte (1053342) | more than 6 years ago | (#21794528)

Two reasons.
Fencepost error? :)

I have spent the last 13 years writing matlab code
There are a lot of people like you, and of course that is the point. I avoid matlab where I can, but considering the sheer number of lines of matlab code used in industry, you can't be rid of it completely. Besides, if your office is using matlab, you usually have little choice besides Octave and Matplotlib.

It is especially good at writing vectorized code without having to think about it too much.
Well, that's a good point. Python as a language does not have any inherent problem that prevents it from doing those sorts of optimisations in the background, but none of the current implementations do. They have all been written from a single threaded point of view (see discussions on the Global Interpreter Lock for the C Python case).

However, if you're using Numpy, the situation isn't so dire. It uses the system's math libraries for matrix manipulation among other things, so only these need to be parallelised (as they do for FORTRAN or C code, so they almost always are).

If you are trying to parallelize a section of code, having a routine mess with array values through pointers renders the code unparallelizable [sic].
Actually, that's usually the only way to write parallel code in C :) but you are right, that means it needs to be written to be parallel explicitly.

I should also point out that it is very easy to get FORTRAN and C to play nice with Python, often easier than writing more FORTRAN or C code.

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794954)

So now in C/C++ hints can be given to the compiler that no aliasing takes place, ie. restrict.

Re:Good and bad news (4, Insightful)

betterunixthanunix (980855) | more than 6 years ago | (#21794138)

Matlab syntax is weird, but sometimes you are forced to work with other people who may be using Matlab. Python is not universal, 95% of the world's computers (that is to say, the ones running the most popular desktop OS) still do not ship with a Python interpreter, and many engineers are using Windows systems with Matlab and neither Python nor PERL environments.

Like Windows, Matlab has become too popular for everyone to just drop and move on to some other platform. Python may be great, maybe even for scientific computing, but Matlab is just what people are used to. It is good that Octave exists as a free software clone of Matlab -- a great way to show people (my fellow engineers included) that it is entirely possible to live without proprietary software, and a great way to bring non-programmers into the free software movement.

Re:Good and bad news (2, Informative)

mangu (126918) | more than 6 years ago | (#21794202)

95% of the world's computers (that is to say, the ones running the most popular desktop OS) still do not ship with a Python interpreter

Then I have great news for you, there's single package [enthought.com] that you can download for free and it will install everything you need to develop scientific programs in Python in a Microsoft computer.


Even if you have years of experience in Matlab, try it, you have nothing to lose. Wherever possible, they made the function calls the same as Matlab's [sourceforge.net] .

Re:Good and bad news (-1, Offtopic)

Anonymous Coward | more than 6 years ago | (#21794232)

Are you talking about Monty Python? [dwarfurl.com]

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794666)

This is a MyMiniCity link. Please treat the poster with utter disdain, and ignore the comment.

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794988)

Why would you want to censor a classic? That was great!

Re:Good and bad news (5, Insightful)

samkass (174571) | more than 6 years ago | (#21794382)

The good news is that they are doing in a free way what the Matlab Co. has been charging (a lot!) for

But taking their time at it. Don't get me wrong-- I'm glad open source exists. But this project kind of supports the idea that open source can't really innovate, only follow (sometimes far) behind what proprietary companies invent. It would have been really interesting to see what some of the open source folks could do if their goal was to surpass MATLAB instead of be an almost-free version that's almost as good as something that people almost like to use.

Re:Good and bad news (1)

JanneM (7445) | more than 6 years ago | (#21794560)

So go take a look at SciLab or other projects whose explicit goal is not compatibility with an existing closed system. Octave can by its very nature not innovate beyond what is possible within the restraints of compatibility (and for some inexplicable reason can't seem to drop gnuplot either, despite it being the cause of most of the remaining compatibility problems).

Re:Good and bad news (1)

Dr. Tom (23206) | more than 6 years ago | (#21794854)

Octave actually fixes a lot of the brain damage in Matlab. If you (like me) are forced to work with old matlab codes, then it's actually nice to be able to write in a "cleaner" syntax. Not to mention that it works on my laptop at home for free.

Re:Good and bad news (0)

Anonymous Coward | more than 6 years ago | (#21794980)

Slower response time is inherent in the nature of open source development, unless funded. As for innovation, in software like this there are basic abilities that are needed first and often times are requisites for more advanced abilities. A lot of the potential applications for Matlab will go commercial rather than wait for/develop open source - the goal is often to get a particular job done. Matlab does a great many jobs very well indeed - it is very impressive software. There is a reason open source duplication and innovation in these fields is slow - this is HARD stuff.

Re:Good and bad news (1)

ScrewMaster (602015) | more than 6 years ago | (#21795008)

There is a reason open source duplication and innovation in these fields is slow - this is HARD stuff.

And it will get even slower once lawyers and software patents start getting involved.

Re:Good and bad news about SciPy (0)

Anonymous Coward | more than 6 years ago | (#21794422)

The good news is that they are doing in a free way what Octave is doing, but without being tied down by Matlab syntax.

The bad news is that they are wasting their time using Python, while there is a much better alternative for doing exactly the same thing. Lisp is universal [paulgraham.com] (it doesn't change its syntax every year like some languages we could mention!). Python doesn't even have a native optimizing compiler, which is a dealbreaker for numeric computation for many people. It doesn't have macros, or even the concept of read-time evaluation, which makes some things harder, and often forces you to choose between readability and performance. SciPy wraps C/Fortran libraries to get performance, which means you get good performance only when you can use an existing function; if you can't, you can't just extend the framework from your HLL.

I've done scientific programming in the past, and I looked at Python. I used Lisp, Octave, and even Java instead. Python failed at just about every criteria I could think of.

Re:Good and bad news (1)

timeOday (582209) | more than 6 years ago | (#21794518)

Python [python.org] is universal, if there's anything you can do with a computer, the simplest way to do it is with Python, so why do it the hard way?
The whole point of special-purpose languages like matlab is to make it easier to write certain kinds of programs. Is Python really better than Matlab for matrix manipulation?

Re:Good and bad news (1)

Verte (1053342) | more than 6 years ago | (#21794772)

The short answer is yes.

Python does not get the benefit of syntactical sugar purely for the purposes of matrix manipulation- for example, matrix multiplication in scipy/numpy is a = matrixmultiply(b,c). However, Python is far more powerful (especially with libraries such as scipy) and simple to use in general, and in any real world application it makes a big difference. Python is the sort of language you don't actually have to think about- you think about the problem rather than how to solve it using the pathetic set of matlab tools. It's really more on par with Mathematica in terms of power and simplicity of code (albeit without symbolic manipulation, which is where Mathematica shines- but then there's always Sage ;-).

Re:Good and bad news (1)

martin-boundary (547041) | more than 6 years ago | (#21794978)

Well, that's a no then.

Anybody who proposes a = matrixmultiply(b,c) for an interactive numerics package simply has no clue about numerics. There's a reason why real mathematics writes that expression as A=BC, it's so that the notation gets out of the way as much as possible. This is vital when you get to do _real_ computations instead of toy examples.

Your python notation will fail miserably when it's time to write down an expression such as AB^{-1}Cu + DEFQF^{-1}v, which might be a matrix component of some function being evaluated. Matlab/Octave is popular precisely because its notation is fairly close to what's written in the textbooks.

Re:Good and bad news (1)

Beetle B. (516615) | more than 6 years ago | (#21795134)

Well, that's a no then.
Actually, it's a yes [scipy.org] . Just specify your variable to be a matrix, and you can use your nice A*B syntax.

Re:Good and bad news (1)

rasputin465 (1032646) | more than 6 years ago | (#21795062)

The short answer is yes.

You spelled 'no' wrong. The parent of your comment had exactly the right point. Python may be great as a general scripting language, but for specifically math/statistical applications, Matlab is wonderful. You say that "Python is the sort of language you don't actually have to think about- you think about the problem rather than how to solve it", but that's exactly true for Matlab. Matlab syntax is completely intuitive, provided you bother to learn the syntax. I've known plenty of people who came to Matlab, hated it, but then after a couple months started to love it. That is, of course, if they didn't have to pay for it.

Re:Good and bad news (1)

Beetle B. (516615) | more than 6 years ago | (#21795162)

Matlab syntax is completely intuitive, provided you bother to learn the syntax. I've known plenty of people who came to Matlab, hated it, but then after a couple months started to love it.
I came from the MATLAB world, and learned Python, and then NumPy/SciPy.

The original poster is correct. Python/NumPy syntax is more natural than MATLAB's. Much more so.

That sucks too, but we have a winner. (4, Insightful)

r00t (33219) | more than 6 years ago | (#21794588)

Python is about equally bad as far as syntax goes. Python behavior also presents difficult obstacles to optimization; the Matlab system apparantly does not (one can convert to C).

The LISP guy has a point, though that syntax is even uglier. (like being in a sensory deprivation tank)

If you really do want to crunch numbers, you don't screw around with any of the above. You use FORTRAN. Maybe that isn't cool, trendy, hot, exciting, whatever... but it works damn well. Assuming your idea of the C language doesn't include heavy use of the "restrict" keyword, FORTRAN optimizes even better than C. FORTRAN has a genuine international standard; it won't suddenly change because Guido gets a random urge. For number crunching, the world is full of FORTRAN code. Really, you can't do better.

Re:That sucks too, but we have a winner. (1)

Beetle B. (516615) | more than 6 years ago | (#21795188)

Python behavior also presents difficult obstacles to optimization
.

It's quite easy to write the bottleneck in C/FORTRAN and incorporate that into a Python module.

Not entirely compatable (4, Insightful)

Anonymous Coward | more than 6 years ago | (#21794028)

One of the reasons I haven't moved my students completely to Scilab or Octave is an excellent implementation of 802.11 in Matlab. It uses a bunch of toolkits and blocksets. I'm not even thinking of translating it.
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=3540&objectType=FILE [mathworks.com]

I wonder how many other such applications there are.

Re:Not entirely compatable (0)

Anonymous Coward | more than 6 years ago | (#21794484)

I don't know or use metlab but could you please explain what this provides? -- Why do I want a WLAN implementation in a maths tool? -- surely the physical layer shouldn't matter?

Forgive my ignorance.

You're right, it's not obvious (2, Informative)

Anonymous Coward | more than 6 years ago | (#21794638)

If I am going to process a signal, it doesn't much matter how I implement the program as long as the program does the right thing. For instance, I can implement a filter (IIR, FIR, you name it) on a mainframe, in a spreadsheet http://www.conestogac.on.ca/eet/courses/d-com1/lab1/lab1.html [conestogac.on.ca] , on a DSP chip, even on a fairly anemic microcontroller. Every implementation will do the same thing, albeit at different speeds.

In the case of the Matlab 802.11 model, every part of the protocol is implemented. That means you can look at the guts of the whole thing. Not only that but the channel is modeled for a fading channel. You can look at the eye diagram and watch the eye close as the s/n ratio deteriorates. You can also watch the constellation deteriorate from 64 tight dots to two blobs.

As a teaching tool, the model is amazing. In theory it could be done in any language (just about) or on any hardware (as long as speed doesn't matter). In practice, it was created in Matlab.

Linus is right (-1, Offtopic)

Anonymous Coward | more than 6 years ago | (#21794048)

I am with Linus on this one.

11 years?!?!?! Open Source **SUCKS** (-1, Flamebait)

Anonymous Coward | more than 6 years ago | (#21794094)

And it's Apple and Microsoft, for the win.

Re:11 years?!?!?! Open Source **SUCKS** (1)

larry bagina (561269) | more than 6 years ago | (#21794502)

MS is like a gas giant, expanding to the point it collapses in onto itself. For their own good, they really ought to split up and get rid of the huge bureaucracy that produces things like Vista.

No JIT a showstopper?? (1)

serviscope_minor (664417) | more than 6 years ago | (#21794146)

No way. MATLAB is notoriously slow with unvectorized loops. Actually, octave would be very useful even to MATLAB license payers if it's significantly faster with loops.

Re:No JIT a showstopper?? (1)

0100010001010011 (652467) | more than 6 years ago | (#21794776)

Matlab is short for MATrix LABoratory. There's a reason it sucks for loops and is slow. It's not what it was designed for. It'd probably be cheaper yet to hire an engineer that knew how to vectorize stuff.

I was young and stupid once. I thought the Way was with for loops. Then I started to run into bad stuff. I ran profiler on a few of my scripts and found that loops suck.

Say I have to find something with a hundred thousand or so data points. (We have .MAT files into the GBs).

Say I need to find a certain condition, there are 2 ways.

for i=1:length(var)
  if 100060&rpm60
if rpm1200
if clutch==1
coasting(j)=time(i);
j=j+1;
end
end
end
end

Re:No JIT a showstopper?? (1)

0100010001010011 (652467) | more than 6 years ago | (#21794800)

Dang it, even though I had "Plain old text" it still is reading the < and >

There are 2 ways to find times when RPM60 and clutch=on
Slow:
for i=1:length(speed)
if rpm(i)<1200&&speed(i)>60&&clutch(i)==1
coasting(j)=time(i)
end

OR the fast way
coasting=time(rpm<1200&speed>60&clutch==1);

Time savings enters the tens of seconds with large data sets.

Re:No JIT a showstopper?? (1)

rasputin465 (1032646) | more than 6 years ago | (#21795100)

Yes, that's why you vectorize your loops... it's what Matlab was made for. And if you can't (or don't want) to vectorize, your write a mex function and call it from within a matlab script (or the command line).

11 years to switch between 2.0 and 3.0 (3, Interesting)

coryking (104614) | more than 6 years ago | (#21794216)

But it was under development the whole time.

I know some people might disagree with me, but I'm beginning to think some open source projects would benefit from using a year for the public version number:

Octave 2008 (3.0.x)
Thunderbird 2006 (2.0.x)
Firefox 2008 (3.0.x)

FreeBSD 2006 (6.0)
FreeBSD 2008 (7.0)

PostgreSQL 2006 (8.1)
PostgreSQL 2007 (8.2)
PostgreSQL 2008 (8.3)

While internally, the product could use the same version scheme it did before, I think many open source projects are far too anal about version numbers. The stubborn refusal to bump up the "big" version field doesn't help public image because if it never moves up people think the project is dead.

The only version number that matters is the build number and repository version, the rest is marketing. Granted the year scheme isn't perfect in the early stages of a product when functionality is drastically changing every 3 months, but on mature products, I think we could all really benefit from number schemes that use the year the product was release.

Re:11 years to switch between 2.0 and 3.0 (1)

coldcell (714061) | more than 6 years ago | (#21794278)

Version numbers don't matter to Joe User, neither do year stamps (which would be broken if there's >1 release per year). I'm pretty sure all he wants is "the latest, newest, non-crashing version". Full version numbers should only matter to users when reporting bugs, or when specifically wanting an older build. Instead of Firefox 2008, it's simpler just have "Firefox", and let that be the name of the latest public stable release.

Re:11 years to switch between 2.0 and 3.0 (1)

HiThere (15173) | more than 6 years ago | (#21794694)

That's simple, you just use the month as a decimal version...07.10 for example. You could write it 2007-10 or 7.10 or 7/Oct. They'd all mean the same thing.

And if you have two releases in the same month (say an important bug fix) you could have 2007.12.07 & 2007.12.09. If you need tighter specs you could even append hour, minute, and millisecond (UTC, of course), but that seems rather silly for a public release.

Re:11 years to switch between 2.0 and 3.0 (1)

Aladrin (926209) | more than 6 years ago | (#21794304)

Yeah, because so many non-OS products did well with that... Windows 95, Office... Wait.. Yeah, that was a fad. It went on to even more cryptic naming with letters and then full words so you -really- can't tell what order they came in after all.

When you look at Octave 2.0 and 3.0, you -know- which one came out first. That's all that matters. The year means nothing at all, and even the numbers they -do- use are picked arbitrarily. There's no science, it's just what they feel like. For instance: "I feel we've added enough features that it warrants a new number." (Yes, sometimes a new number is chosen after a complete rewrite.)

Re:11 years to switch between 2.0 and 3.0 (4, Informative)

JohnFluxx (413620) | more than 6 years ago | (#21794312)

For a lot of projects, the major number indicates binary compatibility.

For example, in KDE 3, a KDE 3.0 app would run on the latest KDE 3.5.8 libraries, but not on KDE 4.

The second number indicates new API. a program written for, say, KDE 3.5 might not work on KDE 3.4 if it uses any of the new functions.

The third number is just minor patches and fixes, and shouldn't break anything.

Re:11 years to switch between 2.0 and 3.0 (2, Informative)

swillden (191260) | more than 6 years ago | (#21794868)

The third number is just minor patches and fixes, and shouldn't break anything.

To be very precise (at least for libraries that use this scheme):

There is no compatibility across major number versions. Applications built against a library of one major version are not expected to run with libraries of any other major version. API changes of any sort are allowed. Interfaces may be changed, added or removed.

There is forward compatibility across minor versions. An application built against library version x.y.z will run with any library with minor number y or greater. This means that API extensions are allowed, but API changes or removals are not.

There is forward and backward compatibility across sub-minor versions. An application built against library version 3.5.8 will run with library 3.5.1. This means that API changes of any sort are disallowed.

Octave is what Matlab should be (1)

Strange Attractor (18957) | more than 6 years ago | (#21794222)

An excellent free instructional interface to excellent free numerical libraries that undergraduates who don't want to learn to code can use for simple examples.

I've wasted way too much time trying to use such crippled languages for serious programming.

Development accelerating (4, Informative)

jpswensen (986851) | more than 6 years ago | (#21794460)

I have been using Octave heavily over the past few years (and done a little light development), and I can say for certain that development is accelerating. In the last few years, there have been several new large contributors. One of them has made significant improvements to getting the bleeding edge Octave running with all the bells and whistles and installers on Windows, another dedicated to putting out binaries for Macs. All the core distributions have fully optimized Octave packages available. Most of the handle graphics compatibility has been done in the last 12 months. I know there is a push by people who are not the core developers to make an IDE (some based on Eclipse, others on GtkSourceView/VTE, others on QT). There has been work to make the debugger better. I guess my point is that a lot of project like this can take time to develop critical mass and that I think Octave is well on its way. Just as an aside, I think the design and implementation of Octave is great. It is the first kindof big open source project that I have really been able to wrap my head around in terms of understanding the code base and where things are/how to hack on it.

Re:Development accelerating (0)

Anonymous Coward | more than 6 years ago | (#21794940)

Mod parent up. Score 5, Informative.

cat gack (2, Interesting)

epine (68316) | more than 6 years ago | (#21794468)

I was trying to preview my markup for this post, the preview function refused to work with a blank subject line, insulting me with "cat got your tongue?" so I'm posting under my working title.

Math software shows up here fairly regularly. I keep taking notes, but never get around to using any. The R statistical package also gets frequent good mention, which I understand is accessible from within Sage.

Where does Octave stand relative to Sage?

Re:cat gack (2, Informative)

mhansen444 (1200253) | more than 6 years ago | (#21795164)

Octave does not come included with Sage, but Sage can make use of any installed version of Octave. There is a Sage spkg for Octave which can be installed by running the command "sage -i octave-2.1.73". With the new release of Octave, that spkg should be updated soon.

For an interesting post by the lead developer of Sage (William Stein) on the relationship between Sage and Octave in terms of overall goals, see this http://sagemath.blogspot.com/2007/12/why-isnt-sage-just-part-of-octave.html [blogspot.com]

--Mike (a Sage developer)

you must be kidding (1)

m2943 (1140797) | more than 6 years ago | (#21794806)

Lack of JIT compilation is not a "show stopper"; MATLAB got along fine without it until fairly recently.

Running Sid(ux) on HP 2-core + sagemath (0)

Anonymous Coward | more than 6 years ago | (#21794900)

Working now to run VisIt. Can't wait for this, ooh, ahh, well, many years I already have. Thank asteroid-god-to-soon-hit-Mars (not Eros, she's the Woman) I might not must need to code so even to run some damned parallel-port-hell-controller to actually do lab physics. On the sly, in some hidden unknown W**ngshop. Now I might keep my job, by making it actually work. Neuyear Greetings!

Compatibility (2, Informative)

Dr. Tom (23206) | more than 6 years ago | (#21794906)

The standard line is that Octave is as compatible with Matlab as Matlab is with itself. Every new release of Matlab breaks something. Porting your code to Octave is similar. But Octave fixes some of the brain damage in Matlab's horrible syntax, making it easier to write cleaner code. And they also fixed a lot of the weirdness surrounding the whole 'one function per file' thing. In Octave, you can not only write complex programs in a single file, you can make them executable scripts!

Re:Compatibility (0)

Anonymous Coward | more than 6 years ago | (#21795036)

I don't like MATLAB a lot, but I use it for school assignments. I can tell you that you can place several functions in a MATLAB file, both in-serial and nested in each other. I don't absolutely know how that affects executing those functions from outside the file, but I know you can make a complex program inside one file if you like.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...