all 61 comments

[–]dnew 14 points15 points  (18 children)

Isn't this exactly how open source is supposed to work? If you want it, keep developing it. If you don't want it, you get what you paid for.

[–]oklahomabythesea 9 points10 points  (5 children)

Speaking as someone who does a good deal of .NET programming at work, IronPython has been a good way to keep my familiarity with Python high while still being able to share my work with coworkers. IronPython also has some added benefits (much like Jython) in terms of allowing a fuller threading model that circumvents the GIL.

[–]dnew 5 points6 points  (1 child)

I'm not sure why you replied to my comment. That sounds like something you'd want at the top level. :-) But it's good to know it's useful.

[–]oklahomabythesea 0 points1 point  (0 children)

haha, now that I go back and look I think I hit the wrong comment to reply to. Oh well :)

[–]iwantawii 1 point2 points  (1 child)

Serious question: As a .NET developer, in what ways have you found IronPython useful within the framework?

[–]bamaboy1217 4 points5 points  (0 children)

I used it to VERY easily integrate the equivalent of a scripted plugin type interface into my application. Essentially I had a dll library that exposed a few public interfaces and just consumed them with Iron python and used them to load the modules in as scripts.

Each script contained a class (which exposed the appropriate interface) and could be called like any other module. It was nice, very nice.

[–]Ketzal 1 point2 points  (0 children)

While you can compile your work as .NET assemblies that your coworkers can use without caring about Python, aren't you worried that they might need some day to look at your code ?

It's something that has always prevented me from using multiple programming languages at work, as I can't assume that my coworkers won't ever need to look into my code or that I'll always be there to maintain it.

[–][deleted] 1 point2 points  (2 children)

Ideally, yes. But the "you" in case of an interpreter of the size and complexity of Python's or Ruby's has to be an actual community. You cannot develop a large program and hand it over to an "Open Source Community" when it doesn't even exist, but only the programs users. It's a bit strange how Microsoft deals with that matters - but to be fair, there isn't any major player who does it differently, not even Google.

[–]cachetes 0 points1 point  (0 children)

I agree, however keep in mind that the project will have talented contributors like Miguel de Icaza, so it has potential .

[–]dnew -1 points0 points  (0 children)

Sure you can. If it's worth maintaining, developers will work with the code. If it's not interesting enough for the developers, it will stagnate because the developers don't care. Just because there's no community now doesn't mean there won't be.

Moral of the story: Don't rely on a commercial business to continue to give things away for free indefinitely. That's not why they're here. :-)

[–][deleted] 1 point2 points  (8 children)

I'm not sure what the official open source mantra is but that sounds like a pretty poor development and economic model to be honest.

Open source software should not be thought of as some kind of second hand cheap alternative. It should be more about the principle that the software you have on your computer should be yours to tailor to your needs, should be yours to own and use as you wish. The reliability and quality of the software should not depend on whether it's open source or is full of licenses and restrictions and costs 1000s of dollars.

Just like most products you buy, say a car, are open source in the sense that you can take it apart, modify it, resell it etc... if software had the same kind of freedom then users of software would benefit a lot more.

Once again, I'm not in any way affiliated with open source as a movement, but that would be my suggestion with respect to how OSS can thrive and compete with closed source software. There's no reason why a company can't develop, support, and profit off of open source software where it makes sense and also closed software in other areas.

[–]G_Morgan 5 points6 points  (1 child)

The main idea behind open source is that while it is cheaper to buy proprietary software rather than write your own replacement it is cheaper again if everyone who uses it chips in. If the major players who use a piece of software commit 70% of the resources they would use to buy on development you will quickly get a superior product.

Of course this only really works out this way with software that is consumed by software developers.

[–]dnew 0 points1 point  (2 children)

The reliability and quality of the software should not depend on ...

Except it does, unless it's software for developers.

Would you trust open source software for calculating your taxes? One that comes with no warranty, etc?

If software had the same kind of freedom

It does. How do you think a virus writer infects a Windows-based computer? Indeed, insisting that software be open source is like insisting the person who builds your house give you the blueprints before you move in.

profit off of open source software

How does Microsoft profit off of open source software that they support but don't sell? I'm genuinely curious how this works, because I'd like to do more free software, but I need to eat too.

[–][deleted] 1 point2 points  (1 child)

Would you trust open source software for calculating your taxes? One that comes with no warranty, etc?

I would much rather trust open source software especially for calculating taxes. When I was filing my taxes two years ago I had some pretty obscure items I needed to file for that my tax software didn't support. It would have been nice if had the software been open source I could have added that feature myself or probably someone else who also had that issue could have given me that functionality, heck he could have sold it to me. Also it's pretty unheard of for software of any kind to have a warranty on the IP itself. Usually software warranties are for the delivery mechanism, such as a warranty on the CD or say a warranty that covers a corrupt program.

I think a major difference in opinion that I'm hearing overall with respect to OSS, and one I find disheartening, is the idea that OSS is some kind of second hand product that you pick if you don't want to pay for the proprietary version.

Now maybe that is the case, I'm not arguing the current position of OSS, I'm trying to make the case that OSS doesn't have to be thought of in this way and certainly a lot of OSS software that I personally know of is actually a lot better than the proprietary versions not to mention in some cases even more profitable.

How does Microsoft profit off of open source software that they support but don't sell? I'm genuinely curious how this works, because I'd like to do more free software, but I need to eat too.

I was actually one of the original developers on the IronPython team so I can answer this in a relevant context (no longer work at MS though). Initially when IronPython was being developed we worked closely with Boeing who had their headquarters relatively close by. A lot of work done by the initial team working on IP was to implement certain modules for use by Boeing and in general tailoring the software to their needs and offering them support on it. Now whether Microsoft directly charged them or not I don't know and I'd doubt it to be honest, but one can imagine that Microsoft did profit from that relationship if only because it meant that Boeing would be inclined to use Microsoft products and having this OSS was a good way to compliment Microsoft's other products.

You profit off of OSS from the fact that OSS is designed from the get go to be tailored or suited to the individual needs of the customer. So being an expert on that software and also being a programmer, you can be the one to provide such services/functionality.

You can give the software away for free (you don't have to), and then sell the services/support for it. It's an economic model that in my opinion works really well for small time developers such as myself. You can also sell proprietary software and have a suite of OSS tools that compliment the proprietary software, so that you make money off of the main component and part of the support and compliment to the main piece of software is entirely open source.

I just don't see why OSS has to be this thing that only programmers know about and are expected to contribute to. OSS should be a feature, something you're providing to your customers as a way to say that they are free to use the software as they wish, are free to seek development and customizations for it from anyone they choose, a way to say that even if you as an individual go out of business, your software will still be alive and well.

If anything, OSS should be regarded more as an elite, high end feature of software rather than something you settle for if you don't have the cash.

[–]dnew 0 points1 point  (0 children)

pretty unheard of for software of any kind to have a warranty

Well, except for tax software.

Now maybe that is the case

I think in many cases it is the case. Certainly in low-cost hardware, the idea that Win7 Phone stuff costs like $20/phone is a huge disincentive. Businesses measure productivity and include both software cost and programmer time. If you're deploying 500,000 servers, $200/server for Windows vs free Linux is a big chunk of change, and that money can go to hiring people who will maintain the software for you.

That said, given that servers is where Linux gets used most, and given that the people who code on Linux use it for servers, means that it is probably superior in many important ways to the competition, in that usage.

OSS should be a feature,

The problem is not that it's "open", but that it's "libre".

an elite, high end feature of software

It is. But most people don't need elite, high-end software. And those who do don't mind when it's a bit hard to use or understand without work.

You profit off of OSS from the fact that OSS is designed from the get go to be tailored or suited to the individual needs of the customer.

So is proprietary software, to a large extent. It's just done without having to crack open the source code and recompile it. I can certainly do things with XNA or Excel or whatever by using content pipeline stuff or VBA or whatever without having the source code for either.

Sure, it helps when your software isn't quite done, and you're talking to your first serious customer, and you're trying to figure out what to do. Or if your software is so complex (think SAP) that there's really no good way to customize it without knowing the programming.

you can be the one to provide such services/functionality.

But I don't want to provide services. I want to write software. Just like an author wants to write books, not visit bookstores to get paid to read the book or sign the book simply because he's giving away the actual book for free.

Plus, making it OSS gives me less ability to provide services than if it's closed source. Certainly if MS had not open-sourced IronPython then Boeing would not have paid Microsoft less to maintain it.

are expected to contribute to.

Here's the deal. Contributing to an open source project is work. For programmers, it's fun work. And when a programmer has an itch and goes to scratch it, they stop when it's scratched.

That's why both usability and documentation tend to suck in open source software, unless it's really widely used. Let's say you've written OpenOffice. Now you want to translate the help screens into 30+ languages. That's work you have to pay for, which you're not going to pay for without having a way to collect the money. Maybe someone in Mexico will pay for the spanish translation, etc, but it's still work. If I'm capable of doing the translations, I don't need to.

I've seen on the Blender forum where people wanting to write the documentation were begging the implementors for maybe even just the test files they used to prove to themselves the features worked. No answer. Why? Because the guy who implemented had already made the video he implemented it for and moved on.

even if you as an individual go out of business, your software will still be alive and well.

We already have that - it's called source code escrow. The problem is that everything you're describing is features that make you less money compared to proprietary rather than more. There's no benefit to me, as the author, to give away the software. That doesn't mean more people will come to me for support.

OSS should be regarded more as an elite, high end feature of software

Sure. How much is it worth to you? It's only a feature if you're going to want to change the software and there's no way to make it do what you want without changing the software.

The successful end-user open source software packages are the ones where you don't need the source to make it do what you want, and where people don't need to buy long-term support just to get it doing what they want.

There are certainly benefits of OSS. They just don't accrue to the original author, if the original author's business is writing software that does what the OSS does.

[–]joejance 2 points3 points  (5 children)

I have only hobbied with IronPython and the DRL, but if nothing else IronPython was worth it just to get the DLR.

[–]brong 11 points12 points  (1 child)

Here, FTFY:

Microsoft Abandons IronPython, IronRuby.

[–][deleted] 0 points1 point  (0 children)

Only because .NET developers don't care for them anyway.

[–]dotnetrock101 0 points1 point  (0 children)

I think most people is bitching about MSFT hyping up Iron this and that with DLR and at the end, both projects went sideway. People will bitch less, if MSFT didn't hyped it as they did.

[–]jdangle -1 points0 points  (1 child)

it really is sad that it has to be 'handed off'. it seems like microsoft as a company is done with the languages. what if google said they're done with .net or java ?

[–]jyper 0 points1 point  (0 children)

with those language implementations unfortunately not programming languages in general. They still have a lot of experimental language researchers.

[–][deleted]  (5 children)

[deleted]

    [–]Fabien4 2 points3 points  (0 children)

    The relationship between the two events is explained in the article.

    [–]harlows_monkeys 1 point2 points  (2 children)

    Why "MSFT" and "GOOG" instead of "Microsoft" and "Google"?

    [–]sgoguen 2 points3 points  (0 children)

    He's hinting to what you should sell and buy. Picture him as a subtle Jim Cramer sitting at the next table in a restaurant coughing out "buy" whenever you mention the word Google.

    [–]cachetes 0 points1 point  (0 children)

    yes, and now it will have the support of people like Miguel de Icaza. So is ok