Archive for October, 2011

AppCode : lite Cocoa/iOS editor

Posted: October 27, 2011 in Apple, IT/Dev
Tags: , , ,

JetBrains, now the editor of famous IntelliJ IDEA, presents AppCode, an Objective-C editor that manages MacOSX and iOS targets. It requires XCode (notably to edit Nib archives through Interface Builder, now part of XCode since version 4) and uses Google Protocols Buffers technology to launch iOS Simulator (as it isn’t available on Windows, AppCode can’t be cross-platform). Among first reviews (see here and there) some problems are reported with files/imports, however auto-completion seems more powerful than the one in XCode, and the interface looks closer to Eclipse one (and simplier than XCode one), despite being less Cocoa compliant then (see AppCode UI overview).

As for IDEA the solution isn’t free (131 euros for a commercial license, 61 euros for a personal license), however its quality and support level, and its lite interface that allows faster acceptance for developers used to Eclipse, may be interesting. A mac will always be required however. A demo version (30 days trial) is available.

Google : Android 4 not the cream of UI

Posted: October 20, 2011 in IT/Dev
Tags:

Google presented Ice Cream Sandwich, the new user interface from Android 4. As usual, Google still does not show any experience in UI design, and then provides a minimalist one :

very simple, clean, tile-based interface. There are no rounded corners, no brushed metal textures, visual contrast is very high, and most of all, content is king.

Moreover it only uses stack principles from Hypercard…

Indeed Google seemed to have to give justifications for this lack of innovating, by slaming iOS UI design (and even Microsoft WP7’s one !) :

if you look at all of these applications that are designed in this real-objecty, faux wood paneling, faux brushed metal, faux jelly button kind of thing… if you step back and you really look at them, they look kind of juvenile.

Google however did only copied iOS user interface in previous versions of Android, in every details, wich explained why it took it years to just try to catch up with Apple. And finally the new Android interface took fare more less time to complete, as it simply does not feature graphical work nor real innovation.

The sole reason for this switch may be to avoid cases for copy cat, as Google indeed knows what it did.

Lastest tribute / memories / trend

Posted: October 20, 2011 in Apple

Today’s official tribute to Steve Jobs took place not only at Apple’s campus and stores (that were closed), however also through its website, that displayed an updated list of messages sent by people at rememberingsteve@apple.com (about a new message per 5 seconds).

It uses CSS transforms and transitions, and scripts paths are /stevejobs/scripts/util/UTIL.js and stevejobs/scripts/message.js (retreive messages through an Ajax call). The css paths are /stevejobs/styles/messages-webkit.css, /stevejobs/styles/messages-moz.css and stevejobs/styles/messages-ie.css.

These feels are understandable, and are finally better that some recent comments from famous engineers (this article at cimgf, Why so serious, indeed reports that jealous trend)  :

More recently, perhaps within the last year, there has been a disturbing trend in the community. Surprisingly, sadly, this trend has not come from the new developers but from some of the older grey beards. There has been a trend to “piss on” things written by other developers. A new app comes out, good or bad, and the claws come out. People are quick to blast it; the more press it gets, the more it gets blasted.

We will then instead discover (or read again) this long statement from Steve Jobs back to 2005 during commencement at Stanford university (the video is also available here), notably :

My third story is about death.

Remembering that I’ll be dead soon is the most important tool I’ve ever encountered to help me make the big choices in life. Because almost everything — all external expectations, all pride, all fear of embarrassment or failure – these things just fall away in the face of death, leaving only what is truly important. Remembering that you are going to die is the best way I know to avoid the trap of thinking you have something to lose. You are already naked. There is no reason not to follow your heart.

Or, as in famous Ubik from Philip K. Dick :

I’m alive and you are dead.

Indeed we learn that Steve Jobs was still working on the next important Apple’s project the day before he died.
And in his latest public message (about he leaving Apple’s head), he provided a clue, in an elegant manner as usual :

Unfortunately the day has come.

Composers salary / rate

Posted: October 15, 2011 in Audio
Tags: , ,

An article at professionalorchestration.com reports results from a study about composers’s salary and rate. Incomes did grow for theatrical movies musics, however went lower for TV movies. Meanwhile they did rise in videogame area.

Lexicon announced MPX Native Reverb Plugin, a plugin that provides 7 reverb algorithms and 100 presets. The price isn’t known yet and an ilok2 key is required.

Vaadin : still way behind Cappuccino

Posted: October 14, 2011 in IT/Dev
Tags: ,

The recent Vaadin framework, that has been developed for at least one year (however far later than Cappuccino) brings application navigation/logic on the server side (en Java), by limiting json messages to widgets (GWT) state changes. Moreover, as the communication layer is generic (common, many bridges still available), GWT’s Java to Javascript generation step isn’t required anymore while developing (contrary to ExtGWT and Smart GWT). However this solution still does not catch up with Cappuccino in practical use, both in terms of achieved result, performance, and concepts :

– Interest of Java on the server side is less obvious for navigation application code (only UI management and actions). Using Javascript is sufficient for these, and Java is more useful at services layer (more complex, connectors to heterogeneous systems).

– Defining the user interface is based on Swing syntax and principles, that is very limited use of design patterns, and not in the elegant manner found in AppKit (responsability chain, dynamic bindings, KVC, KVO, delegates instead inheritance). There is no real/elegant architecture, nor innovative. The provided features are limited to widgets, whereas AppKit adresses most of applications needs, thanks to proven best practices.

– Such a solution to generate Cappuccino client side would be long and not fun, as it would require to define Java wrappers/generators for each control. Moreover as previously said the AppKit is more than just a widgets library. This redondancy would also be unuseful, as client side service proxy (using CP2JavaWS) seems comfortable for agile development.

– Objective-J 2.0 will bring a modern parser, and WebKit still allows powerful and easy debugging. Validating using Java compilation doesn’t seem so great, besides adding weight/complexity. Moreover state changes and/or display bugs would still require digging into generated Javascript code (despite it being simpler since most of navigation/application has been moved on the server side).

– Some controls (notably Table view) are limited in Vaadin. Most importantly, performances look really behind : while live scrolling, it takes many seconds to update the rows. The developers choosed then to display a waiting message (range of rows being loaded – however not accurate).
Cappuccino and CP2JavaWS allow live scrolling among thousands of rows without any pause (on WebKit), or really slight ones using Firefox. The lite client side application code in Vaadin may require more messaging with the server (the client side is less autonomous – probably no caching in table view, etc.), that might lead to this performance concern.

– Vaadin does not provide abstraction for media layer, contrary to Cappuccino’s implementations of Quartz/CoreAnimation above its DocumentBridge.

– provided layouts arent’s as evolved as the constraint based one from Cappuccino (with automatic recursive calculation).

-the interface builder, whose design is derived from Atlas/IB, faces same limitations as other common editors (as they do not follow the principles that did make IB great)

– the default theme, despite being (too much) derived from Aristo, isn’t as polished. We just can compare Vaadin Tunes with ThatMusicApp. Recent buyout of Sofa (that created Aristo) by Facebook tends to confirm their advance. Even Google didn’t try to compete in this area, where they have always been known to be weak.

Through a ranking of programming languages popularity (based on presence on forums and available conferences, that is not on lines of code used) we learn that Objective-C did have the best grow rate, ranked 6th (was 38th 5 years ago), close behind C# (did grow a little) and php (4th and constant).

Python, Ruby, Perl and even javascript are 2 to 3 times less popular. In fact we can find more and more threads about iPhone, notably at stackoverflow.
Among other listed languages are ActionScript (37th), Smalltalk (43th), and Scalla (50th).