Save your Series 60!


These days I’ve been thinking about objects obsolescence. All manufacturers improve their products (ranging from electronic devices to cars), giving us the perception that any old product (that is, what we’ve bought just some weeks ago) is obsolete. Upcoming products are faster, simpler, cheaper, beautiful as no other previously released. In a word: better. Even if we don’t need to change what we previously get (it still works as good as expected), new features are provided only by new models and keeping old ones implies to miss new possibilities. Implications can be surprisingly strong. Think about cars: some municipalities prohibit city access to cars not compliant with Euro 4 specification. Something similar happens with computers: new applications may require most recent operating systems, that require new hardware (that luckly doesn’t require you to update your house to get it!).

Obsolescence is pervasive in the mobile phone market. Not only manufacturers improve performances of hansets, fueling them with faster connections, larger displays and huge memory capacity; they also transform mobile phones in "fashion objects", as clothes or jewels. Developers know that just one or two new models per year are actually revolutionary: the others are just well-known-old-phones with a different case and name.

Obsolescence invokes update, which produces disposing: any time we update our devices with new models, we usually have to dispose obsolete items. For a limited time, we may try to keep both… but… after a while, we will prefer one (usually the newer!), so that the other will be disposed (usually the older!). Considered that there are about 2 billions of mobile phones and that average lifetime of each is 23 months, we will have a lot of "small yet connected intelligent devices" ready to be disposed.

Is there any way to reuse and/or recycle them? Recycle (disassembling devices and ruse part of them as components for new devices) is not so easy; plastics and electronics have been designed and tailored to work together, to separate and reassemble them requires a complex integration plan. Reuse (use those devices as they are even for different applications) is more practicable for "common people". In general, reuse beats recycle. Reuse is feasible for devices that provide enough power (CPU, memory, communication facilities) to be programmed and interfaced with the rest of the world.

Not any mobile device can be reused as an embedded system. Many devices can’t be programmed, many others have so frustraing limitations that any idea dies before starting to write one line of code! 🙁

Among others, Nokia Series 60 is one of the most used smartphone platforms. Handsets based on this platform, once announced, are considered as state-of-the-art devices for a certain period of time: high resolution displays, enhanced multimedia capabilities, extended communication interfaces, robust and mature programming environment with a rich set of languages and tools. Month after month, the finnish manufacturer invades the mobile phones market with new award-winning families of handsets. Series 60 was born with 7650, but maturity arrived with 6630 and N70. Most recent devices, based on the 3rd edition of the platform, are market leaders and new models will appear during the Mobile World Congress.

We are pleased to get new devices, but what happens to old Series 60? Unfortunately, they can’t compare with upcoming, styilish smartphones, which expose unbelieveble performances. However, they are still powerful enough to be used for anything but as phone! Can we consider Series 60 2nd edition handset just programmable devices with communication capabilities? I believe we can. There should be an initiative to encourage people (mostly developers) to reuse their Series 60 as "new" embedded devices instead of considering them as "obsolete" phones. Something like "Save your Series 60" (let’s say "SyS60"), would be an attempt to find a wait to avoid that 100 millions of Series 60 sold till the end of 2007 would be trashed in less than two years.

Thanks to my friend Davide, pioneer in mobile application development, I’ve been introduced to Python development on Series 60. I believe that Python for Series 60 is not suitable for industrial projects, for which Java Micro Edition or native C++ are still best solutions. In fact, JME portability and C++ performances are unbeatable. However, Python is excellent for fast prototyping, powerful as C++ and simpler than Java. Python can be the driver to “Save our Series 60” and reuse them as funny and useful devices.

I spent some hours playing with Python, it is funny as Davide said! 🙂 Take a look to this interesting PyS60 tutorial, by Jurgen Scheible.

VM e librerie Sun SPOT rilasciate su licenza open source


Su segnalazione di Massimiliano Dessì, ho il piacere di diffondere questa notizia: Sun ha finalmente rilasciato con licenza open source il codice sorgente della virtual machine e delle librerie dei Sun SPOT! Maggiori dettaglio qui:

https://spots.dev.java.net/

Attendiamo ora che siano finalmente disponibili i developer kit per il mercato europeo…

JavaFX Mobile: si muove qualcosa


Nel maggio dello scorso anno, in occasione della JavaOne 2007, Sun annunciò JavaFX e JavaFX Mobile. Di JavaFX apparvero subito esempi di codice e moduli per Netbeans, mentre di JavaFX Mobile fu pubblicata solo qualche informazione frammentaria e piuttosto varia.

Dopo il tam tam su blog e newsletter, l’interesse per JavaFX Mobile è andato pian piano scemando. In effetti, non essendoci nulla con cui "giocare", era inevitabile che gli sviluppatori indirizzassero la loro attenzione altrove (Android?).

Dalla Mobile & Embedded Developer Days conference che si svolge in questi giorni arrivano finalmente nuove notizie su JavaFX Mobile! È confermato lo "stato di salute" del progetto, nato dalle ceneri di Savaje e basato su Linux e Java Standard Edition. Segnalo la presentazione Developing JavaFX Mobile Applications fatta da Noel Poore, che chiarisce alcuni aspetti dell’architettura di questa piattaforma, in particolare la coesistenza di CLDC/MIDP e Java SE (piuttosto, dov’è finita CDC?).

javafxmobile.png

Si attende a breve un apposito modulo per Netbeans, con emulatore dedicato.

JSR-82 su IBM J9 per Windows Mobile (CDC e CLDC)


Segnalo a tutti coloro che lavorano con Java Micro Edition su Windows Mobile che è disponibile il porting della Bluetooth API JSR 82 per le virtual machine Mysaifu e IBM J9 (sia CLDC che CDC!):

http://code.google.com/p/bluecove/wiki/WindowsMobile

Purtroppo l’API non è supportata totalmente (ad esempio, manca il supporto L2CAP), ma è più che sufficiente per effettuare il discovery di dispositivi e servizi e gestire connessioni RFCOMM.

Vengo anch’io?


No, tu no! Iannacci aveva ragione…

Signore e signori, ecco a voi l’iPhone!
Spiacente, non è disponibile per l’Europa.
Ladies and gentleman, ecco a voi Sun SPOT!
Sorry, non è disponibile per l’Europa.
Madames et monsieurs, ecco a voi i BUGs!
Désolé, non è disponibile per l’Europa.

Ma dov’è la globalizzazione quando serve?

The uncomplicated desire to connect

È evidente che chi ha preparato questa presentazione non ha mai configurato le impostazioni di rete di un Series 40! 😀 😀 😀 "The uncomplicated desire to connect", infatti, trova qualche ostacolo su certi telefoni. Battute a parte, è fuor di dubbio che Nokia faccia i migliori telefoni in assoluto:

Buon weekend.

La Casa del Pescatore


Le vacanze natalizie sono l’occasione per trascorrere serate piacevoli con i parenti, scambiarsi doni e consumare assieme i tipici piatti invernali della cucina locale. Il mese di dicembre, oltre che portare panettoni e zamponi, è il mese giusto per gustare un prelibatezza di mare: i ricci. Così, prima di essere sommersi da cenoni interminabili (e dunque perdere qualsiasi desiderio di andare a mangiare fuori casa!) e avere almeno una mezza giornata per noi, ci siamo regalati un pranzo sul lungomare Poetto di Cagliari. Quel che segue è la cronaca di un pranzo da oscar.

La “Casa del Pescatore” e’ uno dei tanti ristorantini che offrono cucina tipica cagliaritana a base di pesce fresco, a pochi metri dal mare .

casadelpescatore_small.jpg

Il pranzo e’ iniziato con due dozzine di ricci:

ricci_small.jpg

a cui abbiamo fatto festa su piccoli pezzetti di pane:

ricci_pane_small.jpg

Il primo e’ stato uno spettacolare piatto di spaghetti con ricci, arselle e bottarga:

spaghetti_ricci_small.jpg

È la terza volta quest’anno che mangio pasta ai ricci, ma sicuramente quella preparata alla Casa del Pescatore le batte tutte! Molto condita, molto saporita, sapiantemente cucinata. La cosa sorprendente è la quantità di condimento: anche a fine piatto, dopo parecchie forchettate, la pasta restava sempre molto condita, segno che il cuoco non è andato al risparmio:

spaghetti_ricci_fine_small.jpg

Come secondo abbiamo gustato le orziadas, anenomi semolati e fritti:

orziadas_small.jpg

Qui i commenti non bastano: occorre assaggiarle per scoprirne il gusto! Vista la qualità del primo e delle orziadas, abbiamo chiesto dei calamti fritti. Ovviamente niente prodotti surgelati, ma solo calamari freschi, affettati e fritti sapientemente:

frittura_calamari_small.jpg

Difficile stabilire se siano stati migliori della frittura mangiata a Silvi Marina, molto particolare per il tipo di pescato offerto. Un caffè ha chiuso il pranzo e la bella sorpresa è arrivata con il conto, quando abbiamo scoperto di aver speso davvero poco in proporzione alla qualità e ai sapori che questo pranzo ci ha regalato.

Visto tutto il pesce di cui ho parlato finora, credo sia arrivato il momento di parlare di carne 😉 Alla prossima!