Apple's SproutCore, OSS Javascript-Based Web Apps
99BottlesOfBeerInMyF writes "AppleInsider is running an article about Apple's new SproutCore Web application development framework, utilizing Javascript and some nifty HTML 5 to offer a 'Cocoa-inspired' way to create powerful Web applications. Apple built on the OSS SproutIt framework developed for an online e-mail manager called 'Mailroom.' Apple used this framework to build their new Web application suite (replacing .Mac) called MobileMe. Since SproutCore applications rely on JavaScript, it seems Apple had good reason to focus on Squirrelfish for faster JavaScript interpretation in Webkit. Apple hosted a session last Friday at WWDC introducing SproutCore to developers, but obviously NDAs prevent developers from revealing the details of that presentation. Apple has a chance here to keep the Web becoming even more proprietary as Silverlight and Flash battle it out to lock the Web application market into one proprietary format or another. Either way, this is a potential alternative, which should make the OSS crowd happy." TechDIrt's writeup on the browser evolving towards acting as an OS expands on the theme AppleInsider raises.
http://www.roughlydrafted.com/2008/06/14/cocoa-for-windows-flash-killer-sproutcore/ This is from Roughly Drafted.
That's my question. I have seen too many apps that "help" you create websites but the code it generates is a mess. And if you want to integrate it with another app forget it.
For example where I work we were building a B2C app and instead of wasting coder time building the bla bla stuff around the real working site. They used go live and in the end we had to re-do it all.
I think the iPhone would disagree there. Pretty much as long as Apple refuses to put Flash on the iPhone, anything iPhone-friendly will have to be some flavor of HTML. The fact that it would also work well on Linux is a bonus.
Don't thank God, thank a doctor!
I think "retard" is a little strong. Obviously you're not in MobileMe's target market, but there is an integration between Apple's products that makes things easier for those "retards" who don't mind paying money for having things handed to them instead of spending time digging around the internet like you (and I) do.
And any time someone brings something new and interesting to the web, especially something they're willing to open source, it's a positive thing.
E pluribus unum
You've linked to Roughly Drafted - the site that was caught trying to spam digg.
Roughly Drafted is poorly written & not credible. Please don't link to it - as the unofficial apple weblog puts it:If you're an Apple fan - don't link to RD; that website actually hurts, rather than helps Apple.
There are shills on slashdot. Apparently, I'm one of them.
You can get "some" services which are "similar" to .mac for free.
But not all of them and not in the same way.
There are a number of nuances that can not be completely replicated by the free alternatives and they certainly will not be as tightly integrated into the OS and into 3rd party apps that run on the OS.
Sorry, but you're dismissing some things you don't know everything about.
And calling people retards certainly does not help your case.
It's not true that Flash is completely proprietary. There are multiple open-source compilers, and there's an open-source browser plugin. You do have to work hard to develop in flash using an OSS software stack, but there are people doing it. Gnash, the open-source browser plugin, has gotten to the point where it can play you-tube videos, provided you have the right hardware and sacrifice an unblemished calf. Adobe has also been slowly moving in the right direction as far as open-sourcing some of their code, and relaxing some of the more onerous licensing restrictions. A lot of the problems with making flash more open are actually problems with codecs, and that situation is also showing signs of improving, with support for less patent-encumbered codecs being added to newer versions of flash.
Find free books.
I started writing on DOS. (I won't count the Apple ][.) Wrote for PDP-11s. Wrote for Windows. Wrote for SGI GL (before OpenGL). Each new platform was yet another paradigm, yet another set of non-portable libraries or techniques.
I like POSIX, and I like portable languages and toolkits that I can take from platform to platform. I like writing little graphical apps or command-line tools in Perl, Python, GTK, SDL, OpenGL that I can run on Linux, Windows, Mac OS X, or even my Nokia N810. All the knowledge is transferrable, all the benefits of the little tools are transferrable with a little work to smooth out details like widget placement or font decisions.
I never bothered to get deep into Objective C, because while it's theoretically transferrable, it is really just used to write for the Apple Carbon/Cocoa/Core/Whatever/Don'tNitPickItsJustAnExample* stack. Same went for DirectX on Windows when I still wrote software for Windows. I would like to make apps that do whizzy things with Core Animation or whatever, but I just can't make myself get excited at the prospect of learning yet another vendor-lockin technology. The hardware-accelerated compositing is cool, the effortless scripting of visual objects is interesting, but not interesting enough to actually learn something that won't be portable.
If I really want a visual effect like Core This or Direct That, I will write a portable library to do it in OpenGL on Python or something. Or if the need isn't extreme, I'll just wait for someone else to write the general library if it ever happens.
[
From TFA, SproutCore is basically a rich set of JavaScript libraries. Flame/mod away, but it's true.
Flash/Silverlight don't only contain the same app struts for you to build upon, but they are also incredibly powerful application hosting frameworks with rich graphics and multimedia libraries to go beyond what HTML can render.
Comparing SproutCore to Flash and especially Silverlight is nonsense. Saying it's a Flash/Silverlight killer is delusional.
using System.Awesome;
How do those seekrit sh-h-h-h-h don't tell nobody! NDAs work with OSS? The "O" part starts for "open". "..and now here we show you these open source new goodies, but you can't tell anyone about them, no details, nor show them, but they are really open, honest!"
Good luck with that. Apple makes some good stuff, but let us not confuse them with being some sort of "open" champions, because they are *not*.
No, it's intentional. Think of it as a Rorschach test for your opinion on Apple. Putting in “from” means pro-Apple. Putting in “from not” is the opposite. As it is, I think we all know which category you fall in. No wonder you posted anonymously.
The photo gallery demo on SproutCore.com fails to work on Opera - the right photo pane not even rendering. Although Opera isn't widely used, with its exceptional standards-compliance it's a great barometer for how compatible something may ultimately be.
It's an interesting idea, and maybe I'm missing the "awesomeness" of it, but I don't find a compelling reason to switch to this over a standard development stack. It just seems as though it's a highly widgetized javascript framework, running on ruby.
I develop in Rails and C#, and I'd just as soon use jQuery and it's host of extensions to build my own application like widgets that I could use across any backend.
I've looked through the documentation and I'm hoping I'm just missing something about SproutCore's awesomeness.
just Fyi, I, and roughly a million others (probably more) have been loading binary apps on iPhone for a year or so. Some of these apps, such as the package manager, rely on HTML... and every so often they update and it gets even slicker. I really can't understand what you mean by 'inconvenient,' when it seems the whole point of webapps is precisely for convenience.
The Admin and the Engineer
http://www.alleyinsider.com/2008/3/apple_s_iphone_smashes_larger_market_on_web_video_music_usage
The most important thing about the iPhone isn't the sleek design, the touchscreen, iTunes integration, or any other single feature. It's the way that people use the device. Specifically, it's that people actually use it to do stuff besides making phone calls. Examples:
Almost 85% of iPhone owners browse the Web on their phones, versus 58% of the U.S. smartphone market and 13.1% of the overall U.S. mobile market, according to mobile research firm M:Metrics.
Some 31% of iPhone owners watch mobile TV or video, like Google's (GOOG) built-in YouTube software, compared to 4.6% of the overall market.
About 20% of iPhone owners access Facebook, versus 1.5% of the overall market.
And 74% of iPhone owners listened to music on their phones, compared to 28% of the smartphone market and 6.7% of the overall market.
Even if the usage is overstated that's still a hell of a lot of mobile Internet users.
The iPhone isn't like a regular smartphone. Rather than trying to supplement an experience for someone with existing shitty expectations of the big boy Internet on mobile devices, it's trying to broadly appeal to the market and it's becoming a catalyst that is literally changing the dynamics of the mobile data market.
Saying that people will be loading binary apps will kill off web development is like saying Web 2.0 is pointless because we all have Windows.
Tags on the article at time of posting: apple, rails, ruby, rubyonrails (tagging beta)
...is ruby really that lame that people are tagging unrelated articles to grassroots this bitch into existence?...
Sorry that's not true and you know it.
Over a thousand of my readers wrote Digg to ask it to stop censoring my articles (and cc:ed me) after a small contingent of Digg users complained that I was poking at their Xbox, Zune, and Windows Enthusiast views.
Digg has never accused me of creating scores of accounts, and some anonymous blog entry is not "credible evidence."
Promoting articles I write by submitting them to sites designed for that purpose is not spam.
According to real statistics, well over 80% of iPhone users "use more than ten functions," and even more use Safari for browsing. That's why the phone has a majority share (~75%) of mobile website traffic in stats despite "only" taking 27% of the new phones sold in the US and only having been on the market for a year.
Web development is for the web, not targeted at the iPhone. Whether or not key customers can view your content is a big deal. iPhone users will have more impact than their numbers suggest, just as Mac users do.
The fact that this also benefits Linux users is just a nice finish.
Almost. The iPhone is the most viable portable (as in, in-pocket) mobile web platform out there right now. So much so, in fact, that I would say that the awkwardness in having to pinch and squeeze websites to view them is cancelled out by the convenience of having the web without lugging around a laptop.
Flash & anything javascript related is a security bomb waiting to go off.
Just because this is coming from Apple doesn't remove the deficiencies in Javascript.
/I don't actually know anything about Silverlight's security or lack thereof, so I left them out of this.
[Fuck Beta]
o0t!
After reading a bit about this, it sounds like something similar to Google's GWT (with Gears), except that SproutCore uses Ruby instead of Java.
How do the two compare?
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
The author just happens to use Ruby on Rails, but you can use Java also (Apple is using WebObjects) or PHP ...
The best way to predict the future is to invent it
taking 27% of the new phones sold in the US
Wrong
The iphone took about 2.5% (you were off by an order of magnitude). Don't get me wrong, this figure is very impressive for a new entry to the mobile market, but falsely inflating figures just makes you look stupid.
Or perhaps you don't know the difference between 'phone' & 'smartphone'?
There are shills on slashdot. Apparently, I'm one of them.
It seems like the guys at 280 Slides have been working on something similar. They have an Apple background and called their language Objective-J, from what I can tell it's an extension on JavaScript in a similar manner to way Objective-C is to C. Their Cocoa like framework on Objective-J is called Cappuccino.
Now I don't know if SproutCore is anything like what they are doing (wasn't at WWDC so I don't know the details), but the end goals of both projects seem like the same thing. A language and framework where whatever you make should just work across browsers. It's very early days for both, so we will have to see. From the article it seems like SproutCore is going to be fairly open. The 280 North guys seem like they want something similar for Objective-J and Cappuccion but they are still working on cleaning up the frameworks.
Either way, the competition should be good and hopefully bring sanity to the client side scripting world.
What of the Nokia N810? You get a Mozilla browser w/full Java support, Flash 9.0, keyboard, 800x480 screen. Sure, you need wifi or a bluetooth phone to connect, but it seems much more viable for easy surfing with the flash support, keyboard and nice wide screen.
Also-to add to the above. I pay for .Mac (soon to be MobileMe)
it gives me auto synced mail, bookmarks, contacts, storage, gallery etc etc for the aforementioned price. being a contractor, every hour I'm not working is an hour I'm not making money. now at $75/hr exactly how many hours do you think I need to spend finding/configuring these other services that "do exactly the same" over a year, before I'm worse off, from a purely financial point of view.. i'll give you a hint: it's not many.
What is...?
I'm sure he was talking about smartphones because that number accurately describes the iPhone's sales compared to other smart phones in the USA.
Apple is also working on getting CSS transformations into the CSS standard. This will allow you to do to your arbitrary image rotations with only CSS and you can control it with javascript by just setting the element's style attribute. They're also working on CSS animations and transitions to bring Core Animation like effects to the web browser. Check out the Webkit nightlies if you want to see it for yourself. It's quite impressive and easy to use. Hopefully it'll be supported by more than just Webkit soon.
Stop utilizing that word!!!! AAaaaaaargghhhh!!
If it helps to get the retards to pay $100 per year for a set of services they can get elsewhere for free,
.me? To manage them?
.me a cost of exactly 1 hour of my time. Strikes me as a good deal less than I'd sink into replicating it with "free" services.
How long does it take you to find those services? To integrate them all to the convenience level provided by
I currently bill out at $100/hr, which makes
If you're not worth that much, or if you choose to not optimize your time as sensible people do -- that being the only absolutely limited resource there is! -- I respectfully submit that it is you, and not worthwhile people, who is the retard.
I was one of the ones who wrote. I'm a very real person, one who dislikes censorship of any form - the rest of you should be ashamed for promoting attacks on someone who is simply strongly opinionated. I am no minion or sock puppet, but someone concerned that very small groups are controlling most content that users see on digg, that kind of story inbreeding is really healthy for any site (and indeed on any given day you can see that over the years Digg frontpage story quality has dropped significantly).
I just wanted to throw in some words of support in the midst of the AC wasteland from people who can't even post with a real userID.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I've got an n800. Trust me - you do not want to compare the actual web browsing experience.
microb was a big step forward, and I hear it's getting ever better in the dev builds. But even with the bigger screen and higher resolution, the act of browsing the web is more awkward on an NIT than the pan-n-zoom iPhone. Even on an NIT you need to pan and zoom a great deal. However, it's not optimized for that kind of use, and switching zoom levels and scrolling about is a choppy experience.
The Flash support is also largely theoretical; the device has neither the horsepower nor the video bandwidth to actually handle a flash file of any complexity. If you let it fully buffer a youtube video, it does 'ok'. If you save off smaller flash games to the internal memory, then dump the browser and play the files directly, it can do some files passably. But it's not the experience anyone thinks of when you say 'flash support'. It's the kind of experience that makes me disable the flash plugin because it's a net negative on the act of browsing.
And the points below about the horrible UI in general are sadly accurate. The Nokia Internet Tablets are still heavily stylus-focused, awash with lazy desktop-style interfaces, with a disappointing half-effort toward finger support. Don't get me wrong: I love having a stylus. I love being able to sketch, doodle and jot with accuracy. I just don't want the device to assume its presence means they can ask me to drag it out every time I need to choose between 'Ok' and 'Cancel'. Nor do I want the apps to assume that since it's there, they can load up every screen with tiny buttons, checkboxes, etc.
As the devices stand today - there's no contest. For a handful of geeks, the NITs are wildly superior devices. For everyone else, they're a mess; a promising mess, but a mess none-the-less. And a mess that Nokia doesn't seem to know what to do with.
Here's to hoping that their Trolltech acquisition means good things. But after comparing maemo's last two years to the iPhone's last one -- I have little reason to believe the NITs will ever be better browsing devices for the average user than the iPhone at any given point in time -- despite its advertised java and flash support.
// "Can't clowns and pirates just -try- to get along?"
well... right above the code I think you are looking at, is the line:
console.log("This browser does not support HTML5 client side storage. Will proceed with fixture data.") ;
It looks like the SQL is run on the client side, which is not the same security risk as if it was run server side, where it would most certainly be bad.
Lars T.
To the guy who modded me down from perfect to terrible Karma - Apple haters still suck
SproutCore was built while SproutIT developed Mailroom. Mailroom was launched in February 2006 (Interview with Charles Jolley, SproutIt.com).
...
So the core is much older and tested rather well. The only thing that's new is the hype
Btw. The Ars Technica article on SproutCore is good as well SproutCore: rich web apps in JavaScript, no Flash needed
-- "As a human being I claim the right to be widely inconsistent", John Peel