4 ms·
"Developers we’ve spoken with have praised the framework, calling it one of the best ways to make applications with little programming knowledge." Surely they
by superk 16y ago
"Developers we’ve spoken with have praised the framework, calling it one of the best ways to make applications with little programming knowledge."
Surely they mean "little web programming knowledge" and a lot of Objective-C knowledge. I don't really understand this page either:
http://techcrunch.com/2008/09/04/cappuccino-brings-cocoa-like-programming-to-the-web/ http://techcrunch.com/2008/09/04/cappuccino-brings-cocoa-lik...
"There are other advantages to basing things in Objective-J as well: advancements in the Cappuccino frameworks don’t wait for the slow emergence of new standards, developers only deal with one language, and Cappuccino comes with useful language features simply not available in JavaScript."
Isn't that backwards? New features come out in Javascript and I have to wait until they're incorporated into Objective-J to use them?
- boucher 16y agoWhat new feature has been released in JavaScript in any widely usable way in the last decade?
- superk 16y agoFunny you should ask that because the internet is just now taking a big lurch forward with Canvas and everything in HTML5. Would Objective-J quickly adopt new features in Javascript or stay closer to developments in Objective-C? Since everything gets compiled down to Javascript in the end (and Objective-J doesn't feature 100% browser compat either) I don't see how they can offer anything not possible with Javascript to begin with. Actually that's a question? I don't understand how it is different than, for example, CoffeeScript - but I would be happy if you could explain how it is.
- boucher 16y agoIt's very similar to CoffeeScript. It is a strict superset of JavaScript, so all valid JavaScript remains valid Objective-J. You also shouldn't confuse the language (Objective-J) with the Cappuccino framework. Objective-J is just about providing certain language level features on top of JavaScript, the same way Objective-C implements features on top of C. It's also 100% cross browser, so I'm not sure what you mean by that. Cappuccino is a full fledged framework for building apps which run in a browser. I'd argue that it's the best, but my opinion would hardly be unbiased. It does in fact implement an API for using Canvas (which also works in IE). Though, that isn't a JavaScript feature. And pretty much nothing in HTML5 is present in 50% of the browsers out there.
- paulbaumgart 16y agohttp://github.com/280north/cappuccino/blob/master/AppKit/CoreGraphics/CGContextCanvas.j http://github.com/280north/cappuccino/blob/master/AppKit/Cor... But if you don't like a particular part of the abstraction layer provided by Objective-J/Cappuccino, you're definitely free to use raw JavaScript. Just like in Objective-C you're free to use structs, function pointers, and C-style arrays.
- dstein 16y agoXSL became widely usable in 2007 when Safari 4 was introduced (on the iPhone too). Nobody even noticed.
- tolmasky 16y agoObjective-J is a strict super set of JavaScript. All JS features are "automatically" picked up by Objective-J the second they are added.
- saikat 16y agoObjective-C knowledge helps, but if you have little programming knowledge and need to learn either Javascript or Objective-C, I think Cappuccino makes it really easy for you to rapidly get a non-trivial web application working because they've just done a really good job of abstracting out a lot of the annoying-to-implement parts of a desktop-like application. I didn't know either Objective-C or Javascript when I started work on Mockingbird, and it took me about a week to learn enough to have a prototype running that had canvas (and VML) drawing, drag and drop links, and undo/redo support.
- superk 16y agoThanks. That's awesome - gomockingbird.com is a great site, and if you did that in a week that's a compelling case for Cappuccino, although... I find it surprising you studied CS at Harvard and worked as a Software Development Intern at Apple and never used either Objective-C or Javascript.
- saikat 16y agoHeh - I should clarify. Gomockingbird.com definitely didn't get made in a week, but I did make a working prototype in a week. At Apple, I did all OpenGL stuff (worked on Keynote), and Harvard was all C/C++.
- superk 16y agoMakes sense ;) Was there any reason why you went with Cappuccino instead of, say, SproutCore or Coherence or Dashcode? Or even GWT? Have you looked at Apple's PastryKit/iAD? It's _very_ similar to Cocoa development, just without the ObjC notation.
- saikat 16y agoI spent a lot of time looking at different frameworks, but in the end, it's pretty hard to judge them without diving in and actually making an app in it. So I have some knowledge of the Cappuccino competitors from my initial research, but obviously nothing as in-depth as my knowledge of Cappuccino, so take anything I say about the other frameworks bearing that in mind. Also this initial research was done around May of 2009. The main selling points that drew me to Cappuccino at the time were 1) there was a live app using it (280Slides) that demonstrated doing a lot of the things I wanted to do with Mockingbird, 2) Even if there weren't tons of docs at the time, Cocoa documentation is very extensive and applicable, 3) Because it pretty much implements the Cocoa API, I knew I was getting an API that had been used successfully in tons of applications, 4) The promise of Atlas, 5) it made my app decent looking without my having to try very hard (though my co-founder Sheena did end up customizing the Mockingbird look and feel a lot), and most importantly (at least when picking a framework when you don't have time to get more than superficial knowledge of it) - 6) after spending some time in the IRC channel/asking a few questions on the mailing list, the creators and other members of the community were extremely helpful and welcoming, the 280North guys seemed to have a very good sense of where they wanted the framework to go and ideas for awesome features they wanted to implement, and because they were such good developers, I was pretty well convinced that they would actually ship their promises (and they have - Atlas, automatic mage spriting and app flattening options were all things that didn't really exist when I picked Cappuccino). As for the other frameworks (and there were a ton, but I'll just talk about the ones you mention): GWT - I didn't like the compile step, and I've done some Java and I don't prefer it. Also, bigger communities like GWT's have their pros and cons - you probably have more resources you can Google for, but it's not always as easy to just ping one of the core devs and get personalized help/get him to help you write your patch. SproutCore - probably the closest competitor to Cappuccino back then. In this case, Atlas was a selling point for Cappuccino, and I thought Cappuccino apps looked nicer by default. I also don't remember seeing any impressive SproutCore apps in 2009 other than MobileMe, but I might be misremembering. PastryKit didn't exist in the summer of 2009. I believe Dashcode emerged as more of a web application creator with version 3.0, which was fairly recent. If not, I may have simply not looked much into it. I don't remember looking at Coherence.