Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Community > MacNN Lounge > SproutCore - Apple's Javascript Based Animation Framework

SproutCore - Apple's Javascript Based Animation Framework
Thread Tools
Big Mac
Clinically Insane
Join Date: Oct 2000
Location: Los Angeles
Status: Offline
Reply With Quote
Sep 1, 2009, 09:47 AM
 
Anyone following SproutCore? It appears to be the Javascript based framework Apple is using for browser animation effects. I think there was a thread about this technology previously, but I don't know if it identified the platform by name.

"The natural progress of things is for liberty to yield and government to gain ground." TJ
     
Warren Pease
Mac Enthusiast
Join Date: Jan 2007
Status: Offline
Reply With Quote
Sep 1, 2009, 11:47 AM
 
I have been interested in this for a while, but kind of lost track of the project for a while patiently waiting for the 1.0 release, since the build tools and API's were being rewritten. Now that it looks like that has solidified somewhat, I should have another look.

This kind of interface would be perfect for the type of apps I write at work, but I've been regulated to traditional web interfaces due to fears that the project would be maintainable only by me (presumably, my co-workers don't have the ability or desire to learn anything new).
     
nonhuman
Posting Junkie
Join Date: Jun 2001
Location: Baltimore, MD
Status: Offline
Reply With Quote
Sep 1, 2009, 11:57 AM
 
I remember vaguely hearing about it before, but never really looked into it.

Looks like it's a lot more than a 'Javascript based animation framework'. Appears to be a full Ruby based web application framework in the vein of Rails, Django, Symphony, &c.

I'll definitely be taking a look at it for work.

Edit:
Actually, the more I look at the wiki the less I'm actually sure what this thing is. Not very impressed with the documentation thus far...
     
olePigeon
Clinically Insane
Join Date: Dec 1999
Status: Offline
Reply With Quote
Sep 1, 2009, 12:01 PM
 
If they can put together an interface as easy to use as Flash, it'll quickly take over the web.
"…I contend that we are both atheists. I just believe in one fewer god than
you do. When you understand why you dismiss all the other possible gods,
you will understand why I dismiss yours." - Stephen F. Roberts
     
Warren Pease
Mac Enthusiast
Join Date: Jan 2007
Status: Offline
Reply With Quote
Sep 1, 2009, 12:11 PM
 
Originally Posted by nonhuman View Post
Looks like it's a lot more than a 'Javascript based animation framework'. Appears to be a full Ruby based web application framework in the vein of Rails, Django, Symphony, &c.
Sproutcore is only meant to be run in the browser, there is no server component. SproutCore interacts with the server (be it ruby, php, python, erlang, etc.) via JSON requests.

One advantage is that you can host the app anywhere that serves html, javascript and css.

The build tools do use ruby.
     
nonhuman
Posting Junkie
Join Date: Jun 2001
Location: Baltimore, MD
Status: Offline
Reply With Quote
Sep 1, 2009, 12:13 PM
 
Originally Posted by Warren Pease View Post
Sproutcore is only meant to be run in the browser, there is no server component. SproutCore interacts with the server (be it ruby, php, python, erlang, etc.) via JSON requests.
Yeah, finally managing to tease that out of the docs... So it's a jQuery competitor not a Django competitor (currently my two main tools at work).

Edit:
Actually it appears to be more of a combining of the two: a JavaScript web framework complete with ORM. Sigh, this is so confusing...
     
Warren Pease
Mac Enthusiast
Join Date: Jan 2007
Status: Offline
Reply With Quote
Sep 1, 2009, 12:34 PM
 
I think it's not appropriate to compare it to a JavaScript library since it does a lot more. A JavaScript library is designed to interact and enhance an already existing HTML page. With SproutCore, you use JavaScript to create your views (it writes the HTML for you) and sets up the behaviours for you. I think parts of it are modeled off of jQuery (and previous 0.x releases used Prototype iirc), but it is overall framework agnostic, meaning you could add any library you wanted to expand functionality if needed.

While you can easily create a rich user interface, it does not work if a user doesn't use JavaScript. If this is a consideration, it's not the way to go. Still it's shiny
     
Chuckit
Clinically Insane
Join Date: Oct 2001
Location: San Diego, CA, USA
Status: Offline
Reply With Quote
Sep 1, 2009, 01:40 PM
 
Here's the least confusing summary I can give: It's a browser-based Web application framework that shunts the task of actually storing data to another application on the server. It's similar to Jquery in the sort of things you'd use it for, but SproutCore is actually a framework (with an accompanying set of tools) for making rich, cohesive applications whereas Jquery just offers some extra Javascript functions. There's a lot more focus and organization to SproutCore, so as long as what you're doing is in line with what SproutCore wants to do, it can help you more.

Another framework similar to SproutCore is Cappuccino. Except the Cappuccino guys actually invented their own language on top of Javascript that you write your applications in. It's really interesting and kind of weird.
Chuck
___
"Instead of either 'multi-talented' or 'multitalented' use 'bisexual'."
     
hyteckit
Addicted to MacNN
Join Date: May 2001
Status: Offline
Reply With Quote
Sep 1, 2009, 09:31 PM
 
Forget SproutCore. I'm going with jQuery.
Bush Tax Cuts == Job Killer
June 2001: 132,047,000 employed
June 2003: 129,839,000 employed
2.21 million jobs were LOST after 2 years of Bush Tax Cuts.
     
nonhuman
Posting Junkie
Join Date: Jun 2001
Location: Baltimore, MD
Status: Offline
Reply With Quote
Sep 2, 2009, 09:29 AM
 
Originally Posted by Chuckit View Post
Here's the least confusing summary I can give: It's a browser-based Web application framework that shunts the task of actually storing data to another application on the server. It's similar to Jquery in the sort of things you'd use it for, but SproutCore is actually a framework (with an accompanying set of tools) for making rich, cohesive applications whereas Jquery just offers some extra Javascript functions. There's a lot more focus and organization to SproutCore, so as long as what you're doing is in line with what SproutCore wants to do, it can help you more..
Thanks, that's helpful! It looks like it would be very useful if you wanted to build an app that was entirely dependent on JavaScript. While it might be nice to do that, accommodating users who don't (or can't) have JS enabled is a requirement for what I do, not to mention just best practices. (You never know when you might need to access your site but be limited to using Links as a browser!) My usual approach to JavaScript is to build the entire site so that it works without it, then add a JavaScript layer on top that replaces the basic functionality with fancy-style functionality so that I can keep the JS-enhanced and basic interfaces as close to identical as possible.
     
besson3c
Clinically Insane
Join Date: Mar 2001
Location: yes
Status: Offline
Reply With Quote
Sep 2, 2009, 11:08 AM
 
Originally Posted by Warren Pease View Post
I think it's not appropriate to compare it to a JavaScript library since it does a lot more. A JavaScript library is designed to interact and enhance an already existing HTML page. With SproutCore, you use JavaScript to create your views (it writes the HTML for you) and sets up the behaviours for you. I think parts of it are modeled off of jQuery (and previous 0.x releases used Prototype iirc), but it is overall framework agnostic, meaning you could add any library you wanted to expand functionality if needed.

While you can easily create a rich user interface, it does not work if a user doesn't use JavaScript. If this is a consideration, it's not the way to go. Still it's shiny

I wonder how it handles search engine requests?
     
besson3c
Clinically Insane
Join Date: Mar 2001
Location: yes
Status: Offline
Reply With Quote
Sep 2, 2009, 11:14 AM
 
Originally Posted by nonhuman View Post
Thanks, that's helpful! It looks like it would be very useful if you wanted to build an app that was entirely dependent on JavaScript. While it might be nice to do that, accommodating users who don't (or can't) have JS enabled is a requirement for what I do, not to mention just best practices. (You never know when you might need to access your site but be limited to using Links as a browser!) My usual approach to JavaScript is to build the entire site so that it works without it, then add a JavaScript layer on top that replaces the basic functionality with fancy-style functionality so that I can keep the JS-enhanced and basic interfaces as close to identical as possible.
This is a smart approach, especially considering search engine requests (which I think is a much stronger argument than people using Links

My approach is just as you said, except I use Prototype for DOM manipulations via Prototype event handlers.

As far as Sproutcore goes, I'll have to learn more to better understand its usefulness. So far, I'm not sure I really understand the point of writing applications using it particularly if you are already immersed in a language such as Ruby or PHP (with or without an additional toolkit).
     
Chuckit
Clinically Insane
Join Date: Oct 2001
Location: San Diego, CA, USA
Status: Offline
Reply With Quote
Sep 2, 2009, 01:08 PM
 
You use Ruby and Javascript to write SproutCore apps, so if you're already immersed in Ruby, I suppose that works to SproutCore's favor.

Also, like I said, it's targeted at Web applications, not Web sites.
Chuck
___
"Instead of either 'multi-talented' or 'multitalented' use 'bisexual'."
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 01:51 PM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,