We’re pleased to announce that Greg Fairbanks and Nicolas Badia have accepted becoming SproutCore Committers. These two have been especially active in submitting fixes and improvements to the framework and are great examples of persevering through the process of vetting pull requests with the core team in order to ensure each change meets the high standards of SproutCore. It can be a tedious process to get something approved, but the end result is better code that stands the test of time. Now that they are official Committers this will become even easier for them.
For those that aren’t sure of the difference between Committers and Reviewers, Committers are actually required to work in their own branches in the repo and submit every change as a pull request to be accepted by a Reviewer. The Reviewers are allowed to make direct fixes, but will most likely submit anything at all substantial as a pull request too in order to get a few other Reviewers’ feedback and acceptance. Both roles also include the responsibility to try to move the outstanding issues and pull requests towards a resolution.
As you can tell from the above description, both roles are a lot of work and it takes people with a real dedication to the project to accept what can be a thankless and demanding task, so please take a moment to catch all of these people on #sproutcore and email@example.com and show them your support.
Tom and Yehuda showing off (a) their general awesomeness, but more importantly, (b) their nifty new SproutCore t-shirts
As previously mentioned, we’ll be sending these to our fantastic SproutCore Guides contributors, so if you haven’t participated yet, here’s a bit of motivation.
We’ll also be distributing a few at the upcoming San Francisco and New York Meetups — RSVP now!
We, on the SproutCore Team, would like to introduce the community to our newest Core Team member: Michael Cohen! Michael has been a very enthusiastic member of the SproutCore Community and has release some amazing code for SproutCore. He is the main author and designer of the Lebowski Framework. Lebowski was developed to use-case test large SproutCore applications namely Eloqua10. He has worked extensively with Core Team members: Mike Ball (@onkis) and Evin Grano (@etgryphon), on the statechart implementation for SproutCore (formerly called Ki).
Michael has also been a incredible community member and helping people understand how to learn SproutCore with his blog: Keeping Sanity One Smelting Accident at a Time. He is currently employed at Eloqua as a Senior Developer along with other core team members: Evin Grano and Mike Ball. We expect great things from this gentleman from the north. You can follow him on Twitter and Github.
Every so often a few technology trends converge that yield results much greater than their individual parts. I think we have reached one of those moments with mobile devices (like the iPad) and HTML5.
In many ways, the iPad is the perfect web device. It’s a lean-back experience optimized around consuming content. With HTML5 (which mobile Safari does better than just about anything else), the kind of experience you can create on these devices is just really spectacular. You only need to use the NPR demo we wrote earlier this year for a few minutes to realize this is obviously the future of software.
For this reason I decided about a month ago to leave Apple and form a new company centered around helping companies bring great native-style app experiences to mobile device. The center of this company, of course, is SproutCore. Monday was my last day at Apple.
This change may seem big to some of you so i want to make a few things really clear up front:
First, SproutCore is now and will always be totally free and open source. I think this business of charging for a commercial license is not an effective way to grow a project. Sure you make a little cash, but at what expense to the community? My goal is to make SproutCore and all of the developer tools that surround it totally free to everyone. All I ask is that you participate in the community somehow to make things a little better for those who come after you.
Second, now that I am no longer held back by big-company legal restrictions, I am going to be much more involved with the platform. Very soon I will post some new example code. Some others are working on new documentation and build tools to ease that pain as well. Starting this fall, my new company will also start to offer online and in person training and mentoring courses to your team get up to speed quickly. We can also finally get started in that book.
Alex Iskander is working on Ace 2.0, including some great new support for pluggable renderers. Theming in SproutCore is about to get awesome.
Read more on Alex’s Blog
Also check out the new Sample Controls
I pushed a new gem today. SproutCore 1.0.1041/1.0.1042 (both build numbers point to the same release due to a bug in Gemcutter) is mostly a maintenance release with lots of minor bug fixes, but it also includes experimental support for an exciting new feature called SC.Animatable.
SC.Animatable is a mixin you can apply to a view which will then automatically animate certain properties on the view (such as layout or opacity). Animatable makes it terribly easy to make your UI rich and fluid. Over the next year, we will be building on this API to make sure it works well across all browsers and scales well with bindings, so stay tuned.
Along those lines, I am also pleased to announce that the author of SC.Animatable, Alex Iskander (ialexi on Github) is joining the SproutCore Core Team. He owns the new sproutcore/animation framework for now along with some other cool features he has in the pipeline. For a preview of his work, checkout his profile on Github.
Welcome to the team Alex!
Here’s a full rundown of the changes in 1.0.1041:
- yui-compressor now runs once at the end of a build, significantly shortening build time for many projects.
- Added Button Hold behavior for SC.Button. Holding a button will repeatedly fire an action (think arrow buttons on a scroll bar)
- Improved SC.Logger
- Incorporated rough draft of new SC.Animatable framework
- Minor bug fixes – mostly tweaks required for better IE7 support
- Improved documentation on a few methods
- Added a logging for invokeOnce() and invokeLater() making it easier to track when these events occurs and what caused them
- Moved some images into themes so they won’t load when Apple uses its own private theme
- Fixed some bugs in SC.SheetPane introduced when merging the public source code
- Added didAppendLayer and willRemoveLayer callbacks to SC.View so we can add events for video tags
- Added SC.get() which works on any object, even null values
- Added SC.WellView
- New animating SC.SheetPane
- Better support for SC.DateTime
Martin Ottenwaelter is a developer based on Paris (lucky) who has contributed immensely to the development of SproutCore 1.0 over the last year. He has helped to fix dozens of bugs and most recently contributed the excellent SC.DateTime class for handling multiple timezones.
I’m very pleased to welcome Martin to the core team which means he’ll be making commits directly to the main source. You can also now file tickets in Lighthouse related to the parts of SproutCore he is responsible for and he can pick them up.
Welcome Martin and thanks for all your great work!