Archive for September, 2008

Cappuccino has been in fact available since September, 4 ! The new site is very well done, and the documentation made during this summer is huge and great : tutorials and new demosdiscussions and newsclasses reference.

The framework can be downloaded here. Developing is made in the browser code editor, and debugging is available through FIrefox Firebug plugin for example.

The development staff may be working about integrating Cappuccino with Interface Builder, but we can still find a recent project, nib2cib, that allows to convert an IB Nib archive into a Cib archive (that can be loaded by Cappuccino). During the conversion process, the class names prefix have to be modified (from NS to CP), as the Nic archive format is different from the Nib one (it has to be optimized for web download), and the coordinate system is flipped (Y origin at top) compared with classic Cocoa AppKit. The supported classes to create interfaces under IB are those for now : NSButton, NSControl, NSFont, NSObject (and NSCustomObject), NSResponder, NSSlider, NSSplitView, NSView (and NSCustomView) and NSWindow.

On the famous Theocacao site, the author and most readers agree that Cappuccino has been conceived with desktop applications programming in mind (that includes enterprise/B2B applications), in fact it is not intended to develop B2C sites (SproutCore is far more appropriate for these cases : for example Cappuccino doesn’t directly manage hyperlinks, we have to use classic Cocoa AttributedString to call an url from a text control). Moreover it has to be confirmed if Cappuccino handles KVC/KVO like proutCore, but the developers may be working on it.

Access to server-side services seem to have to be managed through JSON (we can call javascript code from Objective-J code, the same as for C or C++ from Objective-C).

Finally the Cappuccino developers can’t do anything about accessibility features for now, they have to wait for the future versions of browsers (provide entry points to system features).

Cappuccino consists of 15000 lines of javascript code for the implementation of AppKit classes, and 5000 lines of code for the FoundationKit port (there is also some CoreAnimation implementation). The whole frameworks are said to weight only 100Kb if compressed (have to be downloaded before application execution, the same as for GWT).
It is possible to extend (subclass) the Cappuccino Objective-J classes, as we can read in this example at (extends CPTextField class to handle hyperlinks/url calls).

Beside the very useful comments on the Theocacao article (that have been resumed in the previous paragraphs), we can read some reactions at Ajaxian.

HTC G1 Android : very deceiving

Posted: September 24, 2008 in IT/Dev

Critizisms arise from everywhere about the new Android mobile prototype from HTC, the G1 : uninspired design, navigation interface that reminds the Nintendo DS one or Windows 3.1, horrible user interface that lacks consistency (widgets shapes and colors, fonts, etc.), lack of attention to details, no video player (only a Youtube application), no storage space for music (only available through SD card), no multitouch management (only single touch), mini-USB format for the headphones output ! Navigating in web pages (zooming, scrolling) is a pain compared with using an iPhone, due to the lack of multitouch support on the G1… so there is still the keyboard… very unuseful and unusable (the right part of the phone makes typing very difficult), and it doubles the thickness of the device (yet not that thin).

Finally it appears more like a Google services promoting platform than a really usefull micro computer for users.

Gizmodo : Android and T-Mobile G1’s Five Most Obnoxious Flaws

Following the Chrome (beta) release, Google fails again delivering (presenting) an elegant creation.

From the new page about X-plane 9 on iPhone (see a review here), we learn that a 9.0.1 update is due soon (was indeed developed in 3 days and is in approval stage). It brings 25% frame-rate improvement (what is huge), and some enhancements : higher-contrasted interface, calibration screen to set vertical or horizontal  neutral angles (allows to play more easily while on bed), reorganized interface screens, and automatic power and flaps triggering when in final approach.

In the FAQ the author states he plans to add two additional airplanes (and without needing more  ram) in a free update, but there isn’t any mention about new textures or landscape. The game is said to use close to the whole iPhone RAM, the cause of crashes when the memory is fragmented (so the device has to be rebooted and no other application should be launched before) – the other reason being some corrupted download (fixed by re-synch the iPhone through iTunes).

There is still to explain how a 6Mb size game can eat all the iPhone memory… in fact the iPhone RAM (rumored to be 128Mb) is used mainly by OSX and the phone call functions, so there is only 20-30Mb memory left for applications and games. The iPhone GPU is said to use 11Mb from the main memory for video, so there couldn’t be more than 10Mb used for textures… then X-Plane would have to unload textures for loading new ones when entering new areas.

The site reports that iPhone version of X-Plane took 14 days of development (conversion) initially, and then additional 7 days for optimizing and bug fixes (after a reject from Apple). It was then submitted September, 8, and Apple validated it and added it online just three days later.

We could find this weekend (in an mac office instead of the Apple Expo) the MacAlly mCase-2P for iPhone 3G at a special price (19,90 euros). It is finally bundled with a thin protection film, that is surrounded by two supporting plastic parts that have to be removed for application : remove the part stated before application, align the inner thin film side with the upper border of the iPhone glass, then apply it with pressing with the iPhone cleaning (on the side titled after application) from top to down, in order to avoid remaining air bubbles. There are however some remaining bubbles in above the upper mic, and around the Home button. A new try can be made by removing the thin film in these corners but it isn’t perfect.

The inner case in synthetic leather is hard in fact, far more than expected. The two parts are stuck together with visible glue, so it isn’t smooth and could lead to think it can damage the iPhone borders. The lower parts aren’t stuck, in order to insert the iPhone, but we have to put it hard the first times (ok later), what isn’t very confident. Moreover the iPhone has to be turned off because it triggers the controls (volume, etc.). Hopefully the hard inner case doesn’t seem to damage the iPhone (contrary to the the Griffin Elan Form as reported here, there, on that forum and at the US Apple Store).

The opening for headphones isn’t that wide, so the AKG 240 plug cannot be inserted fully (ok with the Apple bundled headphones and most of non pro ones). Furthermore the opening for Home button is a bit too small, as the case covers some of its lower part. However the iPhone feels great in hand with that case. Finally the screen bright doesn’t seem to suffer from the invisible shield, and it is easily cleaned.

iPhone X-Plane 9 review

Posted: September 23, 2008 in Games

X-Plane 9 graphics on iPhone didn’t look that great at first, especially when flying close (reminds in someway Playstation 1 coarse texturing – some large squares), but it is ok for farther landscapes (use mipmapping). Finally from some height it looks convincing (far more better than a Playstation 1 game, but less good than mac games like FA/18 Korea, Fly or X-Plane). The sky looks great from below, but it isn’t volumetric (only one or two pixels wide, and few details from above, so the transition is somewhat abrupt), and there isn’t really clouds (were really outstanding in Fly 1 & II games).

Camera views are stunning, they remind those found in mac X-Plane or Fly versions. We can even change the camera angle through touch, and zoom in/out using two fingers ! The control through accelerometer is perfect, the best experience on the iPhone, and there isn’t any slowdown in framerate. Sometimes when changing the day of time while on fly the controls stop responding, and the game has to be exited and relaunched (switch the time at start then). The interface and settings are well designed, all are intuitive.

We expect more maps and landscape textures to load (and perhaps higher res ones) from future updates, along with other airports and some “missions” to follow. The additional maps and textures could be downloaded from Wifi into main memory to reduce the size used on the iPhone (only 6Mb however for now, so there is space left). There is still to see if Laminar Research will sell aditionnal scenery (should then be priced one or two $ max to remain acceptable) besides required updates. For now this looks more a demo, but still amazing.

A new bench at presents performances of SquirrelFish Extreme, that is said to be at least two times faster than the previously announced SquirrelFish javascript engine some months ago (brougth a high performance bytecode interpreter), the later still being two times faster than Safari 3.1 javascript engine (WebKit 3.1). These enhancements come from 4 new technics : bytecode optimizations, polymorphic inline caching, a lightweight “context threaded” JIT compiler, and a new regular expression engine that uses our JIT infrastructure.
Considering the javascript engine speed will be a bit lower when integrated into the browser, Safari 4 should be at least 3 times faster than actual Safari 3.1 for javascript (still 3 times faster than Safari 3.0’s WebKit 3.0 engine for this task).

Following this week release of Starwars The Force Unleashed on the AppStore (9,99$, comments are goods but some seem to have been deceived due to huge expectations, however the result seems ok overal), today was released X-Plane 9, an iPhone targeted version (only one landscape but we can modify the wheather conditions, 6Mb only, 9,99$). First comments say it is really great, and the controls work very fine. There will probably be an update (through wifi) to add maps and textures. The game is however said to crash after some minutes playing, so a fix update should be available soon (the game’s developer was used to be very quick on it). We can watch a stunning video at macworld or Youtube(many camera views, with the angle being modified through touch, zoom using two fingers as for photos editing). AppleInsider provides a short review.

On the free games side was put online BiiBall 3D Lite, a game where a ball evolves in a 3D environment, that reminds in someway MarbleMadness. The realization seems great (very stunning graphics and easy and usable controls). We can watch a video here. So it is probably the best (free) game available for now. The full version, BiiBall 3D, is also listed on the AppStore (priced 2,39 euros), but the difference between the two versions (number of available levels) isn’t stated.

Finally Pangea Software lowered its Billy Frontier game price, now 2,99 euros.

As expected Spectrasonics released Omnisphere yesterday, priced 499$. The description page brings new details : 40Gb of samples (includes, besides the new samples from psychoacoustic sound design, the original samples from Atmosphere, and also a best of from Spectrasonics samples libraries), 8 multitimbral parts, a new audio engine that covers all kinds of synthesis (subtractive, FM, granular, waveshaping), up to 10 oscillators per patch (can be of synth type or be samples), 6 LFOs per patch, 32 effects racks (up to 12 effects per patch).

A new video presents the software interface. A G5 or Intel mac at 2Ghz is required (also 2Gb of ram and 50Gb of disk space).

The Salon de la musique 2008 (Paris) also allowed us to check new Roland, Yamaha and Kurzweil : the Roland RD-300GX provides – at only 1450$, a good keyboard and great piano sounds (the same samples set as with the older RD700-SX – that is the same two pianos). The converters seem great and the sound is much more powerful than the SRX11 Complete Piano put in XV5050.
The new RD700-GX provides a third piano (besides the previous two pianos) with a piano panel setting modelisation, and a far more better keyboard (PHA II Ivory Feel with escaping). At 2200$ it will be a good choice for those who don’t own an XV or Fantom, as it provides two SRX slots, besides including the new SuperNATURAL electric piano, a better touch, an arpeggiator, XLR outputs, and probably even greater converters.

The Fantom G provides stunning evolving/sequenced pads sounds (even better than the ones in the V-Synth GT), and the demoed ARX-01 Super Natural Drums expansion sounded great (much more realistic and powerful than virtual drum softwares).
The new Yamaha Motif XS bring some really interesting sounds (basse, drums, great saxophones and solo violins, very realistic and expressive) and also stunning arpeggiator programs : guitar riffs that cover all the styles. However the XS is still much more expensive than the new Korg M50.
Finally the new Kurzweil (PC3/PC3X and SP2X) were somewhat deceiving (a bit muddy sound, short samples, despite a good low end power).

Globally the electric guitar sounds found on these workstations aren’t so much greater than the ones found on the old XV with COSM effects (shipped in 2000). The orchestral sounds can’t catch up with dedicated samples libraries (the patchs found on the syhths are full and expressive, but they lack realism in the high end an provide very few articulations). Only Motif XS solo vilolins are really convincing. On the ethnic area the synths have made great progress : the sounds are very expressive and much more various (Ehru, etc.) – notably on the XS and M50.

We could discover (and try) during the Salon de la musique (Paris) the new Korg workstation, the M50 (derived from the M3), that is just at the time it was officially announced by Korg. It is indeed a true revolution in price/quality ratio (the huge buzz generated on internet can confirm that fact) : at only 1400$ (61 keys models) it brings an incredible keyboard (semi-weighted synth keys for 61 or 73 keys models) that allows easily to trigger all the velocities (also the lowest), a very good design and elegant materials (panel texture, buttons, joystick), a large and really convincing touch screen (very readable, elegant and not too flashy nor colorful), an arpeggiator and even a sequencer !

We learn that it is bundled with a sound editor for Mac (universal binary) and Windows (USB connection), and that the M50 can even read patchs from the M3 through converting (it uses the same EDS sound engine). Finally the M50 can be used as an external instrument plugin from most sequencers !

The main limitation is about polyphony : it is restricted (less powerful processor) to 40 notes with programs using two oscillators (and even less if stereo samples are used) or 80 notes with one oscillator per patch (respectively 60 and 120 notes of polyphony on the M3). It offers however 16 parts (multitimbral), as with the M3. In fact Korg removed all M3 features but the essential from the M50 : no sampling, no extension slots (EXB-RADIAS extension for the M3, that brings Multi Modeling Technology, and also three EX-USB-PCM samples libraries, that add 256Mb of samples in the sampler memory extension), only one audio output (many and optical on the M3 – that also adds a Firewire connector) – however the M50 sound can be retrieved digitally by using it as an external instrument plugin. The EDS audio engine is said to be the same as with the M3 : 256Mb rom samples (1,077 Multisamples and 1,609 Drum Samples) and 170 effects types (same routing settings as with the M3).

While playing, the M50 sounded very full, crisp in the high end and powerful in the low end (so the converters seem great for that price), it was comparable with the M3 (the later however seemed to provide more subtile variations for some sounds, like church organ patchs). The dynamic is great, revealed by the stunning synth keyboard precision (really nice feeling). The included piano sound is very similar to the one in the older Fantom X, the evolving pads are great (somewhat inspired from Roland ones), the acoustic and electric bass are outstanding, the drums are very good (but a bit restricted in sampling frequency), and the new analog strings are great. Finally the arpeggio programs are stunning. Audio demos are available at Korg site.

The 88 keys model (RH3: Real Weighted Hammer Action 3 keyboard with 4-zone graded action response) is announced at a price around 2000$, that is 1000$ less than the average 88 notes workstations (it has to be confirmed, as it could be the 73 keys model price).

So the M50 is in some way the new pragmatic and affordable workstation (as was the Roland D20 in late 80s), without any true limitation.

This thread at OSdir gives very useful advices on programming a realtime audio engine, in order to avoid contention/lock from calls to low priority threads (GUI funcitons, etc.), that can lead to latency problems :
Most developers seems to do so, they are just too lazy to think about the constraints that real time programming imposes. They believe they can make full use of the operating system, call any system calls they like, C++ constructors, malloc()s etc, accesss to mutexes locked by low priority GUI threads and then after wonder why their application does not work with low latencies or why there are sporadic dropouts they cannot get rid of.

These advices are probably to compare with the statements about the reliability of the Logic audio engine.