I'm sorry that you were turned off by the Ruby build tools.
Many people see the build tools and assume that you need to know Ruby to use SproutCore. This isn't true. SproutCore apps are written 100% in JavaScript, and Ruby just happens to be the language we used to create the tooling needed to build serious web applications.
For example, the build tools will automatically concatenate your JavaScript and CSS files, minify them, ensure that dependencies are loaded in the correct order, provide a proxy so you can work around the single-origin policy during development, generate unit tests, and much more. We think that the trade-off is worth it, especially since all Linux and Mac OS X distributions come with Ruby and RubyGems.
One of the guiding principles behind SproutCore is that it allows you to build well-architected JavaScript applications where the separation of concerns is clear. Being able to organize your JavaScript files is an important part of that. I think you'll find that when you start building web apps of any serious scale, you'll end up assembling a collection of command-line tools that do all of these things. We just put them all in one place for you.
Thanks for the response. I wasn't annoyed by any means. It's just really confusing and I think sending mixed signals (hence, "what the hell?").
Most need to be sold on what's possible before I can be sold on organization and architecture. If that's not your target audience then I don't think this is a big deal. But if you want to get your hard work out to the masses then show them what's possible and worry about the organization and architecture later :).
I had a similar reaction when I saw the mention of Ruby. I think it's a subconscious thing. It would help if you put this explanation up on the site in a prominent place as well.
Comments
I'm sorry that you were turned off by the Ruby build tools.
Many people see the build tools and assume that you need to know Ruby to use SproutCore. This isn't true. SproutCore apps are written 100% in JavaScript, and Ruby just happens to be the language we used to create the tooling needed to build serious web applications.
For example, the build tools will automatically concatenate your JavaScript and CSS files, minify them, ensure that dependencies are loaded in the correct order, provide a proxy so you can work around the single-origin policy during development, generate unit tests, and much more. We think that the trade-off is worth it, especially since all Linux and Mac OS X distributions come with Ruby and RubyGems.
One of the guiding principles behind SproutCore is that it allows you to build well-architected JavaScript applications where the separation of concerns is clear. Being able to organize your JavaScript files is an important part of that. I think you'll find that when you start building web apps of any serious scale, you'll end up assembling a collection of command-line tools that do all of these things. We just put them all in one place for you.
Thanks for the response. I wasn't annoyed by any means. It's just really confusing and I think sending mixed signals (hence, "what the hell?").
Most need to be sold on what's possible before I can be sold on organization and architecture. If that's not your target audience then I don't think this is a big deal. But if you want to get your hard work out to the masses then show them what's possible and worry about the organization and architecture later :).
I had a similar reaction when I saw the mention of Ruby. I think it's a subconscious thing. It would help if you put this explanation up on the site in a prominent place as well.