Hey Apple, Please Be Nice and Share MacRuby
merbist.com
merbist.com
Not at all.
There's a big difference between saying "this version of MacRuby is good enough for this particular application", vs. "this version of MacRuby is good enough for all applications".
Once it's added as a public framework to the OS then Apple is committed to maintaining the framework's security, stability, and backward compatibility in perpetuity, or at least for a very long time. OS and platform vendors never make those decisions lightly.
It is an encouraging sign that MacRuby is at a point where Apple is comfortable using it their some of their code.
2. You may modify your copy of the software in any way, provided that
you do at least ONE of the following:
a) place your modifications in the Public Domain or otherwise
make them Freely Available, such as by posting said
modifications to Usenet or an equivalent medium, or by allowing
the author to include your modifications in the software.
b) use the modified software only within your corporation or
organization.
c) rename any non-standard executables so the names do not conflict
with standard executables, which must also be provided.
d) make other distribution arrangements with the author.
http://www.ruby-lang.org/en/LICENSE.txtNot sure how this is compatible with "Apple apparently decided to not share MacRuby with other OS X developers" but I do not know much of MacRuby, maybe someone else can weigh in.
He's complaining that MacRuby isn't in a shared location, like say libc or some other standard library. He wants to just be able to type 'macruby foo.rb' (or whatever) and have it work an any Apple anywhere, so he doesn't need to distribute his own versions of the library.
Hardly the end of the world. And if apple did include it, then people would just complain that they only had 0.9 instead of 1.1 or whatever.
Anyone who remembers the days of redhat being stuck on a particular python version because all the internal tools used 1.5 might even think it's a good idea to make the system copy private.
If they're using an unmodified copy, then section 3 applies, which means they basically only need to the macruby site somewhere in the docs:
3. You may distribute the software in object code or executable
form, provided that you do at least ONE of the following:
a) distribute the executables and library files of the software,
together with instructions (in the manual page or equivalent)
on where to get the original distribution.
b) accompany the distribution with the machine-readable source of
the software.
c) give non-standard executables non-standard names, with
instructions on where to get the original software distribution.
d) make other distribution arrangements with the author.I've seen so many messages from people on Twitter that I follow about what Lion contains, and what it does not. There is a pretty strict NDA in place covering the prerelease software, and there's exactly one forum (well, two, if you count Radar) where you can voice your concerns.
It's a sad state of affairs when people do not care about the contracts that they sign. It'll lead to further secrecy in the future, and it's just disgusting how lax some people are being re: the new OS.
Apple isn't remotely selective in applying NDAs. When anyone can get at the information, there's nothing actually private about it. If there were any kind of secrecy to begin with, people would be more concerned about preserving it.
It's like when folks post to mailing lists with signatures reading "THIS MESSAGE IS CONFIDENTIAL AND ONLY MEANT FOR THE NAMED RECIPIENT." People start to take it less seriously.
A perfect analog to the grandparent's point.
What is it with people being lax towards confidentiality notices, especially when they aren't anonymous?
I've seen so many messages from people on mailing lists reading and replying to mail with confidentiality notices. There is pretty strict language covering these confidentiality notices; they often consist of five or more lines of ALL CAPS text that's hard to miss!
It's a sad state of affairs when people do not care about the contracts that they read. It'll lead to further secrecy in the future, and it's just disgusting how lax some people are being re: confidentiality signatures.
That's where your analogy fell off the rails. Signing an NDA is a binding agreement, while reading an email footer places one under no obligation whatsoever.
As far as being lax about caring for contractual obligations, I think it's a side-effect of living in an overly litigious society where you have to agree to umpteen EULAs a day to get anything done on a computer (and many electronic devices).
For instance, when Apple gives you a copy of Lion it is obligated to give you access to the source of every GPL'ed part of it and you must be free to redistribute it or modified versions. If their NDA prohibits this, they have no right to distribute any GPL'ed code in the first place because they are in violation of the terms of the GPL.
If Apple forbids you to get the source of their GPL'ed parts and passing this source on to others, they are in violation of the GPL and their own right to distribute it is voided.
But maybe people don't care about apps starting fast on their macs anymore, since a lot of them come with SSDs :)
I think the GP post was simply referring to the fact that a vast majority of software is 'installed' on the mac. Just drag it to the application folder. And drag it to the trash to uninstall. This almost certainly means you have a bunch of duplicated library files on your computer, but also means each app doesn't have any external dependencies.
Yes, the App Store rules would prohibit apps with external dependencies such as that one, and at least for self-contained apps distributed through the app store, Apple themselves would be paying for the bandwidth resulting from their own poor decision, so an argument could be made for both ways.
http://www.macruby.org/trac/wiki/HotCocoa
http://www.slideshare.net/reborg/writing-apps-with-hotcocoa-...
Basically, you'll be maintaining and distributing your very own fork of MacRuby.
This is pretty important if Apple are planning on using Ruby for important OS tasks.
(and now I'm officially feeling old - who else remembers this exact same argument from over a decade ago? Did the "private" Sun perl binaries catch anyone else out? How many times did I cause myself trouble forgetting to type #!/usr/local/bin/perl instead of #!/usr/bin/perl ?)
And your old Perl problem is a Python problem for me. Too many Red Hat servers have 2.4 installed where Python is supposed to be. I have to build my own and call it from the /usr/local tree
Linking to a shared library should be painless unless the public interface changes in a way your app breaks.
As other commenters have pointed out, somebody somewhere may been under an NDA for this feature of Lion.
So Apple's response could very well be a DMCA takedown of this poor guy's site. Or they may just send the police to his house and seize all his computers like they did the guy from Gizmodo.
The only reason they rely and build upon free software is because it saves them some work.
You open-source the projects you don't consider strategic assets and/or projects that would cost too much or take too long to develop internally. Open-sourcing is a tool - a development model. That's also why NeXT based its OS on Mach and BSD (and licensed Display PostScipt) - because that shortened their time to market and allowed them to build a computer will a full operating system with enough competitive differentiation to survive for some time (and be resurrected later in the form of OSX)
NeXT was very reluctant in sharing their GCC front-end but was eventually forced to comply with the GPL. Apple has no such obligations with LLVM-clang.