Hey Apple, please be nice and share


My name is Matt Aimonetti, and in my free time I work on Apple’s open source Ruby implementation named MacRuby. I’m also the author of O’Reilly’s MacRuby book. As you can imagine, I’m very thankful that Apple initiated the MacRuby project a few years ago and have been an avid supporter. MacRuby is awesome to develop OS X native applications using the Ruby language and even allows you to compile down your apps to machine code. It’s a great alternative to Objective-C.

MacRuby is so awesome that Apple is even using it in its upcoming OS. The only problem is that Apple apparently decided to not share MacRuby with other OS X developers and put MacRuby in the OS private frameworks. While this doesn’t affect the project itself, it does affect OS X developers like myself who can’t link to Lion‘s private MacRuby framework and are forced to embed MacRuby with their applications.

That’s why I have opened a ticket on Apple radar system to ask that MacRuby be made a public framework.

If you also want Apple to make this change, please take a minute and let them know.


Similar Posts

  1. #1 by nick - March 7th, 2011 at 10:10

    I’d love to help. How would I find the ticket?

  2. #3 by Ryan Bates - March 7th, 2011 at 10:20

    Should we all be adding a new problem on the RadarWeb for this? If so, what do we put in the Component field?

    • #4 by Matt Aimonetti - March 7th, 2011 at 11:19

      yes, I used Product: Mac OS X, Version: 10.7, classification: Enhancement

      • #5 by Ryan Bates - March 7th, 2011 at 11:27

        I might be seeing something different then you are. Mine has a “Component” field that is required and no Product field. If I place Mac OS X in that field it doesn’t work saying invalid component. http://dl.dropbox.com/u/1415348/radarweb.png

        • #6 by Matt Aimonetti - March 7th, 2011 at 11:32

          did you go through https://bugreport.apple.com ?

        • #7 by Ryan Bates - March 7th, 2011 at 11:58

          I did go through https://bugreport.apple.com. I looked into this and it appears that some ADC accounts are configured differently so they access a different bug reporter. One needs to contact Apple to get them to fix the account.

        • #8 by Amedeo - March 8th, 2011 at 03:03

          Does anyone solved the “Missing Component” issue? I can not create the ticket.

      • #9 by Amr - March 7th, 2011 at 14:21

        I have the same problem “No matching components found.”

  3. #10 by Josep - March 7th, 2011 at 10:23

    What does that mean? What is the difference making the framework private?

    • #11 by Joshua Ballanco - March 7th, 2011 at 11:49

      PrivateFrameworks are not allowed to be used by applications submitted to the app store. They are also not guaranteed to not change or disappear without warning. Generally speaking, it’s bad form to use a Private Framework unless you work for Apple.

  4. #12 by Ed Ruder - March 7th, 2011 at 10:28

    I’d like to help, too. If I should create a new ticket, what value sshould I enter in the Component and Version fields?

    • #13 by Matt Aimonetti - March 7th, 2011 at 11:19

      Product: Mac OS X, Version: 10.7, classification: Enhancement

  5. #14 by Igor Evsukov - March 7th, 2011 at 10:51

    I think this isn’t necessary because MacRuby versions will updating a lot more often than OS X minor version.

    What we should do is to ask Apple to make a public AppStore list of 3rd-party libraries and framworks and add them as dependencies for our apps(like in apt or rpm on Linux).

    Otherwise, I don’t think that any Mac user in 2011 cares about app size on disk

    • #15 by Mark - March 7th, 2011 at 14:47

      This.

      Matt, remember how apple bundled ruby 1.8.6 and libxml2 2.6.16 in OS X 10.5. Do you really want the same story all over again?

  6. #16 by Zef Houssney - March 7th, 2011 at 10:55

    Matt, can you walk us through this a bit more? I haven’t used radar much and it would be nice to have some more info. We should file a duplicate bug, correct?

    Josep, it means that you can’t submit an app built with MacRuby to the Mac App Store for lion without embedding MacRuby in your app. Apple does not allow you to link to private frameworks for applications in the App Store. This makes the application a lot bigger to download and has other disadvantages.

    • #17 by Matt Aimonetti - March 7th, 2011 at 11:21

      Yes, it’s somewhat a duplicate bug report to show Apple that users care about having MacRuby as a public framework. However if the text is the same they will probably discredit it.

      • #18 by Joshua Ballanco - March 7th, 2011 at 11:52

        Speaking from experience…sometimes many duplicate radars from third-party devs help Apple engineers convince Apple managers to do “the right thing”. I have personally seen this strategy work before.

  7. #19 by Bas - March 7th, 2011 at 11:14

    Could you post your ticket on Open Radar (http://openradar.appspot.com/)? That way we can make better dupes (I’m not saying copying the text is good, but taking inspiration from it could help) and reference your original ticket.

  8. #21 by Gavin Stark - March 7th, 2011 at 11:21

    Yes, please let us know the most effective way to have our voices be heard regarding MacRuby making it to be a public framework.

  9. #22 by Thomas - March 7th, 2011 at 11:22

    Can’t find the Ticket either. Would love to drop a note.

  10. #24 by Kai - March 7th, 2011 at 11:29

    Hi Apple,

    Please make MacRuby a public framework. Don’t lock it away and start making it proprietary. The community is great and it is a fantastic tool.

    —Kai

  11. #25 by Matt Aimonetti - March 7th, 2011 at 12:11

    A Hacker News entry has been added by Peter Cooper: http://news.ycombinator.com/item?id=2298348

  12. #26 by Morgan Schweers - March 7th, 2011 at 12:31

    Greetings,
    I’m not certain. If MacRuby were 1.0, I’d be all for it, but until then… Encouraging app developers to link with an installed, in-progress framework is probably not the best idea.

    I love MacRuby, and am working on an App Store app with it, but I’m aware that MacRuby is changing and getting better constantly, and I think that for now until a 1.0 gets released, app developers are better off embedding it. That way if a critical bug gets fixed, they can immediately ship a new version, rather than waiting for Apple to ship an update.

    Post-1.0, when the framework is supposed to be more stable, I would be very strongly supportive of getting it made into a public framework.

    – Morgan

  13. #27 by rd - March 7th, 2011 at 12:44

    All API at Apple start out as private framework
    for at least one release until they
    can work out the bugs in terms of backward
    compatibility.

    So you are just breaking NDA and creating
    a controversy for your own publicity.

    May be you have never had to support API so
    you don’t actually understand.

    • #28 by Matt Aimonetti - March 7th, 2011 at 13:07

      Hi rd, I’m not sure where the anger comes from but my point is just to ask Apple to reconsider. Without Apple, there wouldn’t be any MacRuby and on top of that they made it open source since day 1. I’m very thankful for what they are doing for the project.

      But there is a huge difference between understanding and agreeing, while I can understand the motivations behind this decision, it doesn’t mean that I can’t suggest otherwise.

      Finally, I didn’t breach the NDA, I only linked to 3rd party information published on the web. As a matter of fact, I do not have a copy of Lion and I did not enroll in the Mac Developer Program for OS X Lion.

      • #29 by foljs - March 8th, 2011 at 04:43

        But there is a huge difference between understanding and agreeing, while I can understand the motivations behind this decision, it doesn’t mean that I can’t suggest otherwise.

        No. In technical matters there is NO difference between understanding and agreeing.

        If you cannot find a convincing technical argument why despite the negative concerns raised a public MacRuby on OS X is still a good thing, then you CANNOT suggest otherwise.

        Or, rather, you can.

        But then it would just be an INVALID personal opinion, and not what’s DEMONSTRABLY good from a technical standpoint for developers and users.

        • #30 by Levi Figueira - March 10th, 2011 at 12:09

          But there is a huge difference between understanding and agreeing, while I can understand the motivations behind this decision, it doesn’t mean that I can’t suggest otherwise.

          Wait: WHAT? Are you serious? o_O You, sir, need a new dictionary.

          Point in case: I understand your comment; I don’t agree with it. Assuming that I didn’t understand being the reason I don’t agree is, not only, a very demeaning concept, it would also be incredibly short-sighted… even in technical terms. If you argue that your comment was not “technical”, then I’ll argue Matt’s post wasn’t either.

          Also, you need to learn to express yourself in writing a bit better. It took me a while to really make sense of your words. They look great but distilled… you’re not saying much. PS: proper use of commas would help convey your message better.

          As to MacRuby, I think it’s great that folks are letting Apple know how important it would be to have MacRuby as a public framework. Furthermore, I’m on the camp of those hoping Apple is just setting it as private during development, and that later builds will have it made publicly available. Fingers crossed. ;)

  14. #31 by Rob Gleeson - March 7th, 2011 at 13:08

    @matt

    Do you think that MacRuby is stable enough to be anything but a private framework right now?
    Maybe this is a transition phase. I don’t see MacRuby being mature enough just yet.

  15. #32 by Americo Savinon - March 7th, 2011 at 13:27

    We love you Apple and we love Ruby. Don’t be evil

  16. #33 by donncha - March 7th, 2011 at 13:30

    Can you not provide the ticket ID?

  17. #35 by RandyInLA - March 7th, 2011 at 14:09

    Just submitted my ticket. Thanks for pointing this out.

  18. #36 by victor - March 7th, 2011 at 14:10

    Great initiative, Matt!

    I’ve opened another clone of your ticket.

    Apple is Apple, but I don’t know why, I’m pretty confident this will work ;)

  19. #37 by RandyInLA - March 7th, 2011 at 14:11

    Igor Evsukov :
    I think this isn’t necessary because MacRuby versions will updating a lot more often than OS X minor version.

    They wouldn’t have to release a MacRuby update as part of an OS X miner revision. It could easily be an update on its own. Just like when they update a security issue or put out an updated version of any app.

  20. #38 by John Bender - March 7th, 2011 at 14:43

    Matt,

    Wondering if its private because its relatively new? I haven’t been following MacRuby as closely latetly and it might be (speculation here, I’m sure you would know better than I) that they are concerned about supporting it as a dependency in the long term.

  21. #39 by sam - March 7th, 2011 at 14:50

    I think it’s a good idea for apple to make it a private OS framework. Otherwise, they’d become like Microsoft and have to tread lightly when upgrading to a new version of macruby as this could kill all sorts of applications.

  22. #40 by kevin - March 7th, 2011 at 15:02

    heres a solution, don’t submit to the latest un-needed walled garden :)

  23. #41 by Gerardo Santana - March 7th, 2011 at 15:41

    I’m sure Matt took it the wrong way. Before folllowing hin initiative please think that it’s highly probable that Apple doesn’t consider MacRuby to be ready for developers outside Apple.

    This a good thing, not a bad one.

    The least you can do is not bugging them.

  24. #42 by kyle - March 7th, 2011 at 18:31

    crap! apple is so greedy

  25. #43 by Matthew Savage - March 7th, 2011 at 21:37

    Posted: https://skitch.com/broc/ru1qe/apple-bug-reporter-new-problem

    Hopefully this call to action will see them make the change :)

  26. #44 by Svoop - March 8th, 2011 at 00:34

    Bug submitted. Thanks for your work, Matt!

  27. #45 by millenomi - March 8th, 2011 at 06:40

    Everyone and their dogs have said it by now, but one point to underline the scale we’re talking when talking about public frameworks: OpenStep apps can still be recompiled and run under Mac OS X. 10.6, not 10.0.

    When Apple believes MacRuby is not going to change for a VERY, VERY LONG period of time, then by all means they will release it in /System/Frameworks. Before then, anyone can embed it in their .app. No big deal.

  28. #47 by James Thompson - March 10th, 2011 at 08:33

    Added my bug to the pile. I would love to see MacRuby available as a stable public framework in OS X. Even better if it makes it to iOS eventually!

  29. #48 by Graham Roy - March 10th, 2011 at 11:06

    Thanks Matt, ticket raised! It’s good of you to raise awareness of this so that we can support it. Keep up the good work and looking forward to the final version of the book

Comments are closed.