Welcome!

From the Creator of SproutCore and CEO of Sproutit

Charles Jolley

Subscribe to Charles Jolley: eMailAlertsEmail Alerts
Get Charles Jolley via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories by Charles Jolley

The next release candidate for 1.11.0 will be out very shortly, but I thought it best to post a brief update on the past week’s work as this week saw a concentrated effort on core optimization. First we took another look at the use of arguments lists throughout the framework and found several more occurrences of it being accessed in an inefficient manner. Depending on the browser, accessing arguments in such a way that causes it to be allocated can be up to 80% slower and so it’s really good to have these all fixed. The other piece of optimization work undertaken has been much more difficult. We’ve been looking into high frequency event handling, such as during touch dragging or mouse moving, with an eye towards managing memory better. Since SproutCore already does as much as possible to avoid touching the DOM, the largest issue that affects the “fluidity” of the us... (more)

Google Adds SVG Compatibility to IE

Google adds SVG compatibility to IE: With this library, we finally have a generalized way to write vector graphics across all browsers.  Now we just need to make this code easier to generate. Next step: extend SC.RenderContext in SproutCore with methods to emit standard SVG code.  This way you can easily write vector graphics in any view without having to learn SVG. ... (more)

The Frozen Canuck Is At It Again

The Frozen Canuck is at it again.  This time with I think the first public explanation of how to build a custom view with the new SC.View class. Notice that SproutCore 1.0 views are built using a simple render() method where you generate HTML.  It’s a really easy API and it just so happens to be extremely fast, especially in IE where DOM manipulation is very expensive. Check it: Creating a Simple Custom View in SproutCore: Part1 ... (more)

Aspect-Oriented Programming and You

One of the coolest parts of the new SproutCore View layer is its ability to use aspect-based programming to add behaviors to views. Aspect-based programming is built on the premise that often objects that don’t follow from the same class hierarchy may in fact need similar behaviors. This is especially true in GUI programming when designers come to you and say something like “I came up with this new widget - it looks kind of like a progress bar but it acts like a button when you click on it”. In SproutCore, you capture these common behaviors in a “mixin”.  A mixin is just a colle... (more)

SproutCore Release Candidate 1 Hits the Streets

Last night I merged the final set of changes for the first release candidate of SproutCore 1.0.  I also published a new gem (build 1.0.1008) so you can get the official release quite easily.  Just open your terminal [on Mac or Linux] and type: sudo gem install sproutcore Then enjoy! If you just want a taste of what the release candidate can do, check out the demos at: http://demo.sproutcore.com Especially try the SampleControls app, where you can see an example of over 300 views rendered on a single page (in the Controls tab). What’s In the Box? In case you haven’t heard, Sprout... (more)