Librerie e framework open-source per sviluppatori iPhone

giovedì, 3 settembre 2009 15.57 by Marco Bellinaso

Da qualche mese a questa parte il mio lavoro è all'80% su progetti di sviluppo per iPhone (in un prossimo post dirò perchè questo mi dia molta soddisfazione :). Si tratta sia per progetti interni da pubblicare sotto il brand di AnguriaLab che per soluzioni custom per clienti (vecchi e nuovi) di GetConnected che si sono resi conto delle ottime potenzialità di questa piattaforma (sia tecnologiche che di penetrazione del mercato) e ne vogliono aproffittare sia per aumentare la propria visibilità che effettivamente per incrementare il proprio fatturato raggiungendo nuovi potenziali clienti e offrendo qualcosa di più rispetto ai propri competitor.

L'SDK dell'iPhone è veramente vasto e molto completo, e spesso rende molto semplici operazioni come dialogare con il GPS o la fotocamera on-board, scaricare dati da web, manipolare i contatti o gli appuntamenti presenti nel telefono, gestire animazioni ed effetti di transizione tra schermate ecc. ecc. Cose che su altre piattaforme possono a volte essere piuttosto complesse e problematiche (per i limiti intrinseci dell'hardwar, per i limiti dell'SDK, o per la non-uniformità dei vari modelli su cui gira un certo sistema operativo)

Nonostante queste belle parole, anche l'SDK dell'iPhone ha i suoi punti deboli. Se è vero che gestire alcune cose complesse è molto semplice, è quasi paradossale che gestire come in teoria "semplici" come riempire schermate di elenco con immagini o con testo su più righe, costruire menu di navigazione a più livelli, gestire una cache locale su disco per i dati scaricati da web, lavorare con JSON, XML, regular expression...siano cose non dico complesse, ma quantomeno macchinose e dispendiose da programmare. Perlomeno se si usano solo gli strumenti di default offerti da Apple.

Ecco allora un elenco di librerie di codice (tutte open-source e sotto licenza BSD o simili) che sto usando al momento e che permettono di ridurre molto i tempi di sviluppo per alcune funzionalità, rendendo il proprio codice anche più conciso, leggibile e manutenibile:

1) Three20: sviluppata da Joe Hewitt, autore dell'ottima applicazione Facebook Connect per iPhone, questo framework nasce appunto dal codice che Joe ha scritto per Facebook. La libreria è veramente ricca di classi; in pratica molti dei componenti di UI di base sono stati riscritti o estesi con nuove funzionalità. Ad esempio invece che usare UIButton, UILabel o UITableViewController si potranno usare le classi TTButton, TTLabel o TTTableViewController; queste versioni offrono nuove proprietà per renderizzare i componenti con stili grafici aggiuntivi, o magari per implementare una data source (nel caso di view che renderizzano elenchi, ad esempio) in poche righe e in modo centralizzato invece che dover ogni volta implementare delegate e protocolli che richiedono di scrivere un tot di metodi ogni volta. Altri componenti molto interessanti sono TTPhotoViewController e TTThumbsViewController che gestiscono schermate per visualizzare librerie di foto a tuto schermo o in versione miniatura, oppure TTURLCache per gestire una cache locale di immagini e altri contenuti scaricati via web. E altro ancora...date un'occhiata alla pagina linkata per saperne di più. Oltre a fornire una grande quantità di codice pronto all'uso questa libreria è anche un ottimo esempio di "codice ben scritto", da usare come modello per imparare i pattern e le best-practice più comuni della programmazione con Cocoa e Objective-C. 

2) OpenFlow: vi piace l'interfaccia tridimensionale CoverFlow che Apple ha usato dentro la sua app iPod quando l'iPhone è in orizzontale? Vi piacerebbe utilizzarla all'interno dei vostri programmi? In questo post Erica Sadun spiegava appunto come usare la classe UICoverFlowLayer per tale scopo; peccato la si possa usare solo in applicazioni che non saranno pubblicate sull'App Store ufficiale, perchè si tratta di una API privata e quindi Apple non gradisce che la si usi! OpenFlow invece è una totale reimplementazione custom, realizzata da Alex Fajkowski mediante CoreGraphics e QuarzCore per gli effetti di prospettiva e riflesso. L'effetto finale è pressochè perfetto! E' possibile caricare le immagini tutte in un colpo solo o in maniera asincrona via via che queste devono essere visualizzate (strada da seguire nel caso le immagini siano da scaricarsi da online magari) ed è possibile cambiare le dimensioni degli elementi visualizzati. Anche qui ci sono cose interessanti da imparare studiandosi i sorgenti ;)

3) JSON-Framework: ormai quando si interroga un servizio online è molto probabile che questo restituisca dati in JSON piuttosto che XML, data la sua maggiore compattezza e quindi maggiore velocità di download e minore consumo di banda. Questa libreria offre dei metodi "stand-alone" + una estensione alla classe NSString, per cui semplicemente chiamando la nuova proprietà JSONValue di una stringa contenente dei dati in formato JSON questi vengano "parserizzati" e inseriti in un array o dizionario, eventualmente gerarchico. Più semplice di così...

4) RegexKitLite: le regular expression sono una delle più belle invenzioni per i programmatori...e quelli che ancora non le conoscono non sanno quanto tempo stanno sprecando e cosa si stanno perdendo :) Cercare, estrarre, sostituire sottostringhe all'interno di un'altra stringa con le regex diventa un compito veloce e "pulito". Senza? Preparatevi a scrivere blocchi e blocchi di codice nidificato e indici di inizio-fine stringa che non potranno far altro che confondervi le idee :) Su Mac OSX esiste ICU, una libreria C/C++ statica che tra le altre cose implementa anche le regex. RegexKitLite invece è una libreria che wrappa queste funzioni C all'interno di classi Objective-C di semplice utilizzo. Come per JSON-Framework, anche in questo caso la classe NSString base viene estesa con nuovi metodi per cercare e sostituire sottostringhe complesse.

5) KissXML: certo, ormai molti servizi restituiscono JSON, ma XML ovviamente è tuttora usatissimo...e bisogna lavorarci. In Cocoa "full" (quello usato per app che girano su OSX) c'è NSXML, ovvero un set di classi (NSXMLDocument, NSXMLElement, NSXMLNode ecc.) in grado di effettuare il parsing di testo XML in un singolo passo e di rappresentarlo poi con una struttura gerarchica  in memoria, per una semplice navigazione ed estrazione dei dati. Probabilmente per motivi di performance e di consumo di memoria queste classi non sono state rese disponibili nel framework Cocoa Touch dell'iPhone e ci si dovrebbe invece accontentare della classe NSXMLParser: è un parser SAX, che quindi analizza l'XML in modalità asincrona e solleva vari eventi via via che legge e trova nodi ed elementi. E' inoltre a sola lettura, quindi non va bene per creare o modificare documenti XML. Soluzione più comoda? KissXML, che basandosi sulla libreria C libxml2 implementa un qualcosa in stile NSXMLDocument. Se vi trovate a dover lavorare con XML non enormi e magari già presenti in locale, è decisamente un'ottima alternativa in quanto a comodità.

===

Queste sono solo le librerie che sto usando nel progetto su cui sto lavorando al momento. Sul web c'è molto altro e ogni giorno trovo qualcosa di interessante e utile; nuovi progetti nascono e crescono. Molto è open-source e con una community di supporto che ci gira attorno. Sta succedendo un po' quello che è successo anche con .NET e con altri framework di enorme diffusione e successo...e di questo i programmatori iPhone di qualsiasi livello devono senz'altro rallegrarsi! ;)

 

Correntemente valutato 5.0 da 4 utenti

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   ,
Categorie:   Mac OS X | Sviluppo software
Azioni:   E-mail | Permalink | Commenti (61) | RSS CommentiRSS comment feed

Spedire vere cartoline dal proprio iPhone? Con Postino si può!

martedì, 2 giugno 2009 12.38 by Marco Bellinaso

Durante la notte di domenica scorsa Apple ha finalmente approvato e pubblicato su iTunes Postino, la nostra nuova applicazione per iPhone.

Questa volta si tratta di una applicazione a livello globale, a differenza di Locomotimes (la nostra precedente applicazione, che ha avuto circa 25.000 download in Italia). Come il nome suggerisce, si tratta di un'applicazione che ha a che fare con la posta, più precisamente le cartoline. Ma non si tratta della solita app per spedire e-card (anche se fa *anche* quello). Postino permette di spedire delle vere cartoline fisiche, stampate su carta di alta qualità, e che possono essere recapitate in tutto il mondo. Ovviamente è possibile scegliere una foto dalla photo gallery o scattarne una nuova, si scrive il messaggio e si sceglie l'indirizzo di destinazione (e-mail in caso di e-card o indirizzo fisico altrimenti). Ci sono varie "chicche" tra cui la selezione di una cornice (tra 20 built-in) per abbellire la propria foto, e il disegno "a mano" di una firma o disegnetto (si usa il dito sul touchscreen, similmente alle tante app di disegno). Nelle cartoline elettroniche è poi possibile includere automaticamente un link a Google Maps che mostrerà il luogo da dove è stata scattata la foto! E' disponibile una cronologia degli invii che mostra anche lo status di spedizione, e vari altri piccoli dettagli.

L'applicazione al momento è gratuita, ma lo sarà davvero per pochissimi giorni (a differenza di Locomotimes, che è rimasta gratuita, e per cui invece abbiamo rilasciato LocomotimesPRO a pagamento, con ritardi e binari di arrivo aggiornati in tempo reale ;)

Ovviamente i francobolli "virtuali" per spedire le cartoline fisiche hanno comunque un costo: si parte da 1.99$ (circa 1.4€) per il singolo francobollo (con spedizione ovunque nel mondo) ma si scende in base al numero di francobolli acquistati (si arriva al 20% di sconto).

Potete leggere ulteriori dettagli, oltre a vedere molti screenshot, sul nuovissimo sito http://www.angurialab.com

Una domanda che spesso ci fanno (e che fa parte di un'intervista che sarà pubblicata a breve) è la seguente: Postino va oltre al virtuale offrendo la possibilità di spedire cartoline fisiche. Da cosa vi è venuta l'idea?

Risposta
: la vera rivoluzione sta nel rendere più semplice ed accessibili le attività di tutti i giorni. Mandare una cartolina è una di queste: spesso non troviamo quella che vorremmo, non sappiamo che francobolli acquistare (spesso all'estero...). Adesso si può mandare una cartolina personalizzata con la foto che vogliamo con semplicità e risparmiando anche! 

L'intervista completa è presente su MelaMorsicata.it

Correntemente valutato 5.0 da 1 utenti

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , ,
Categorie:   Mac OS X | Sviluppo software | Tecnologia
Azioni:   E-mail | Permalink | Commenti (64) | RSS CommentiRSS comment feed

Controllare gli orari dei treni con Locomotimes per iPhone

sabato, 4 aprile 2009 07.32 by Marco Bellinaso

Leggere libri di programmazione senza poi programmare e provare con mano quanto studiato vuol dire non aver imparato nulla. Mettersi li a realizzare i soliti esempi semplici e banali è ben poco divertente e anche poco utile. Ecco perchè per fare pratica ho voluto realizzare (assieme ai ragazzi di GetConnected) una applicazione reale, che non fosse troppo complessa ma che non fosse neanche un giocattolo.

Il risultato è Locomotimes, un'applicazione che permette di consultare in modo semplice e veloce gli orari dei treni per qualsiasi tratta nazionale e verso molte città europee. Le funzionalità sono parecchie; non mi soffermo qui sui dettagli perchè trovate tutto sulla pagina di iTunes o di GetConnected (qui c'è anche un video che mostra tutte le funzionalità), ma in breve:

- elenco indicizzato e filtrabile di tutte le stazioni supportate
- possibilità di includere solo le soluzioni di viaggio con determinati tipi di treno
- un sacco di informazioni nei risultati (partenza e arrivo non solo per il viaggio totale ma anche per tutti i cambi, alert se i cambi sono troppo ravvicinati, tipi di treno, durata del viaggio, tariffe di prima e seconda classe, link per l'aquisto online...)
- cronologia delle ricerche passate (così che fatta una volta sia possibile consultare i risultati in futuro senza dover fare un'altra connessione)

Per chi come me prende spesso il treno credo che l'applicazione possa essere molto utile. Si, lo so che il sito di Trenitalia può essere consultato tramite Safari...ma occorre 10 volte lo stesso tempo, pazienza e traffico dati. L'applicazione sarà gratuita per un po', quindi...se avete un iPhone andate a scaricarla subito! ;)

NOTA: in realtà lo sviluppo di questa applicazione è terminato da almeno un mese...nel prossimo post racconterò perchè ci abbiamo messo così tanto per essere pubblicati online e darò qualche consiglio per evitare un'attesa logorante :)

Correntemente valutato 5.0 da 6 utenti

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   ,
Categorie:   Business | Mac OS X | Sviluppo software
Azioni:   E-mail | Permalink | Commenti (64) | RSS CommentiRSS comment feed

Imparare a programmare per iPhone

mercoledì, 25 febbraio 2009 08.05 by Marco Bellinaso

Su questo blog ho già parlato varie volte dell'iPhone. Ho avuto prima la versione 2G e poi la 3G...e nonostante attualmente usi regolarmente un BlackBerry Bold continuo a pensare che l'iPhone sia un dispositivo assolutamente innovativo e con alcune qualità (e soprattutto con delle potenzialità) ancora molto superiori alla concorrenza. Alcuni aspetti in particolare poi dovrebbero interessare molto gli sviluppatori. Per questi motivi (e per soddisfare un po' la mia curiosità e passione per la tecnologia) ho ordinato il libro Beginning iPhone Development (APress) appena fu annunciato e prima che fosse effettivamente disponibile (causa il fatto che fino a pochi mesi fa l'SDK era ancora sotto NDA e non se ne poteva scrivere pubblicamente...). Solo recentemente però ho iniziato un progetto e mi sono messo a studiarlo realmente.

Sviluppare per iPhone significa dover usare Mac OSX, imparare l'IDE di sviluppo XCode (fornito gratis con il sistema operativo o scaricabile gratuitamente assieme all'iPhone SDK), imparare il linguaggio Objective-C e il framework Cocoa Touch (che è parte di Cocoa + estensioni specifiche per iPhone, allo stesso modo di quello che fa il .NET Compact Framework e l'SDK di Windows Mobile rispetto al .NET Framework full). Oltre a questo bisogna abituarsi a programmare secondo il modello Model-View-Controller (che molti conosceranno anche in ambiente .NET o Java...ma sicuramente non tutti) e a tutta una serie di piccole e grandi differenze rispetto al modo di lavorare con altri ambienti e linguaggi. Di sicuro ci vuole un po' di tempo per prenderci la mano ed essere produttivi, e non è che essendo esperti con qualche altra tecnologia il lavoro con l'iPhone sia subito un gioco da ragazzi.

Proprio per questo motivo è utile avere una guida come quella in questione, che che insegni come muoversi partendo dai concetti base e mostrando passo per passo come: disegnare una vista, associarci un controller, collegare gli elementi della UI alle proprietà del controller, gestire gli eventi (tramite delegate)...e poi via via fare cose più complesse come riempire una lista associata ad una sorgente dati, personalizzare l'aspetto delle tabelle, costruire dei percorsi di navigazione tra viste distinte, gestire l'accesso al file system, realizzare qualche piccola animazione ed effetto grafico, gestire touch e gesture, localizzare un'applicazione, gestire la fotocamera e fare 2 cose sul multimedia.

Il libro è strutturato proprio come un corso, e quindi va letto in ordine. Alla fine si avrà una buona idea di come si lavora su questa piattaforma e il tanto codice di esempio fornito potrà anche servire come base di partenza (e miniera per copia-incollare piccole parti) per i primi progettini. Alla fine non si potrà dire di essere esperti, ma non si sarà più neppure degli sprovveduti. Il libro ad esempio spende ben 120 pagine per parlare di liste e navigazione tra viste, dato che sono concetti fondamentali e importanti per praticamente tutti gli applicativi (ad eccezione probabilmente di videogame e applicazione esclusivamente "grafiche", che sono programmate in modo diverso), ma non parla di accesso a web service o risorse via HTTP, programmazione multi-threading (importante ad esempio per recuperare o elaborare dei dati mentre l'utente usa qualche altra funzione dell'applicazione), utilizzo avanzato di alcuni controlli, interazione con altre applicazioni (il browser o il programma Mail ad esempio), accesso ai contatti del telefono, debugging, deployment dell'applicazione su un iPhone reale di test, o del processo (pieno di insidie) di firma e pubblicazione dell'applicazione in AppStore. Altri argomenti come l'accesso ai database Sqlite, la gestione delle gesture, dell'accelerometro e del GPS sono appena accennati in poche pagine, in modo insufficiente per un utilizzo immediato proficuo.

Le mancanze elencate sopra non si possono però considerare dei veri difetti del libro; sono mancanze "by-design", volute, dato che il titolo inzia con "Beginning..." e non con "Professional...". Quello che però ci sarebbe stato proprio bene in un libro del genere è un capitolo sul linguaggio (sintassi, costrutti, programmazione ad oggetti, categorie, reflection, gestione delle memoria) e le classi base tipo NSString, NSDate, NSArray, NSDictionary ecc. Non vorrei ovviamente una trattazione dettagliata di questi argomenti, (ci vorrebbe ovviamente un libro dedicato solo a quello) ma solo "un riassunto", un "quick-start" per chi viene magari da altri linguaggi e si trova un po' spiazzato dalla sintassi e da alcuni concetti di Objective-C. Ad ogni modo, se si è già letta la documentazione ufficiale di Apple sul linguaggio, anche questo non costituirà un problema.

L'importante è che una volta imparati i concetti di base sarà molto più semplice cercare (e capire) specifiche informazioni online, nella documentazione ufficiale...o in un secondo libro più avanzato. Non si tratta quini della classica bibbia omnicomprensiva, ma è uno strumento efficace e quasi indispensabile per partire con il piede giusto. In conclusione, è una perfetta prima guida, altamente consigliata.

Correntemente valutato 5.0 da 3 utenti

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Categorie:   Mac OS X | Sviluppo software
Azioni:   E-mail | Permalink | Commenti (55) | RSS CommentiRSS comment feed

Web Development Server, Windows XP e richieste remote

martedì, 24 febbraio 2009 12.15 by Marco Bellinaso

In questo periodo – lavoro "normale" permettendo – sto sviluppando una applicazione iPhone che recupera dei dati da un web service .NET. Lavoro su un MacBook Pro con OSX come sistema operativo principale e Windows XP su VMWare Fusion. Chiaramente su OSX uso XCode per lo sviluppo del codice iPhone, e sulla VM con XP uso Visual Studio 2008 per lo sviluppo del web service.

Tutto bene con lo sviluppo, fino al momento di dover interrogare il web service che gira nella VM dal simulatore iPhone. Il problema è che in XP non ho neanche installato IIS, perchè la versione 5 ha troppi limiti ed è fin troppo diversa da IIS6. Quindi ho pensato che tanto valeva sviluppare usando il Web Development Server integrato in VS2008 e poi fare i test finali sul server Win2003 con IIS6. Il Web Development Server però non accetta richieste remote, ovvero processa solo richieste provenienti dalla macchina di sviluppo dove gira. Come fare quindi per testare l'integrazione iPhone/WS, senza dover necessariamente installare IIS o senza pubblicare ogni volta il WS sul server Win2003?

La soluzione è stata davvero semplicissima: basta scaricare Port Forwarding for Windows (programmino freeware, fornito anche di sorgenti, e che non richiede neanche installazione) e configurarlo per redirezionare le richieste che arrivano sulla porta 80 verso la porta gestita da Web Development Server. Un minuto ed il gioco è fatto.

Note
1) Io ho scelto la porta 80 per semplicità, ma potete scegliere la porta che volete...basta che vi ricordiate di aprirla nelle regole del firewall.
2) Di default la porta usata dal Web Development Server è dinamica, e questo è un problema perchè dovreste cambiare ogni volta la regola di forward. Per ovviare basta impostarla staticamente dalle proprietà del progetto ASP.NET.

Correntemente valutato 5.0 da 1 utenti

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , , , , ,
Categorie:   Mac OS X | Sviluppo software | Windows
Azioni:   E-mail | Permalink | Commenti (16) | RSS CommentiRSS comment feed

Backup remoto con Mozy

lunedì, 15 dicembre 2008 08.58 by Marco Bellinaso

Ultimamente, lavorando spesso a casa su progetti sia personali che per clienti, mi è cominciata a venire "l'ansia da backup". In realtà è una sensazione già provata parecchie volte, dopo che l'altr'anno mi era saltato un disco pieno di roba. Fortunatamente già da vari anni uso una qualche forma di software di backup che regolarmente copia tutti i dati importanti su un disco esterno quasi esclusivamente dedicato a quello scopo; quindi praticamente nessuna perdita seria in quell'occasione.

La preoccupazione è in realtà generata dal pensiero che se parto per le vacanze e qualcuno mi entra in casa rubando PC e disco esterno, ho perso anche il backup. Idem se scoppia un piccolo incendio o se un vaso di fiori pieno d'acqua mi si rovescia sulla scrivania inondando tutto. Certo, basterebbe anche fare il backup su un NAS opportunamente nascosto e collocato separatamente rispetto al PC. E se però il backup mi servisse mentre sono in viaggio di lavoro, magari per una o due settimane? Non mi posso certo portare dietro il disco esterno, avrei sempre il problema furto/smarrimento, oltre all'ovvio problema di ingombro / peso / scomodità. Beh ma mi potrei portare dietro una copia su DVD, no? No perchè non ho voglia di sprecare n DVD, e soprattutto non ho voglia di star li a far scrivere i DVD ogni volta. Configurare il NAS in modo che sia visibile dall'esterno? Mmm, già è una configurazione di troppo per i miei gusti (devo avere un IP statico, e se non ho un IP statico devo usare qualcosa come DynDns.org), e comunque richiede di tenere in casa una connessione costantemente attiva.

E allora? Allora ho cominciato a pensare all'opportunità di fare dei backup online, tramite dei servizi dedicati. Dopo un po' di ricerche tramite il fido Google e dopo aver letto decine di recensioni entusiastiche, anche per me la scelta è caduta su Mozy. Il piano base da 4.95$ al mese (3.75€ al cambio attuale) consente di archiviare dati illimitati! Niente male, considerando che non è affatto difficile spendere più di 45€ all'anno comprando software di archiviazione, DVD vergini e HD esterni...

Ma le cose sono anche migliori, perchè se dovete archiviare meno di 2GB di dati, Mozy è totalmente free. Certo non salverete la vostra collezione di musica e film, ma probabilmente in 2GB i documenti e i progetti di lavoro (parecchio codice, nel mio caso) ci potrebbero tranquillamente stare. Questa è pertanto l'opzione che sto usando al momento - nel caso dovessi aver bisogno di ulteriore spazio, l'upgrade è comunque immediato da effettuare.

A parte la versione Home da 4.95$ per spazio illimitato, ci sono anche le versioni Pro ed Enterprise che permettono di fare il backup di file server, SQL ed Exchange, oltre a poter girare sulle versioni server di Windows e OSX. Si veda questa pagina per un confronto. Per "l'utente normale" (e qui includo anche il professionista che lavora senza un'infrastruttura fantascientifica) la versione Home è comunque sufficiente nel 99% dei casi.

Una volta iscritti e scaricato il software Mozy Client, lo si configura scegliendo le cartelle da backuppare, e impostando la schedulazione preferita (quando il computer non sta facendo nulla, ad una certa ora del giorno, in una certa data, ecc.). In pratica si trova gran parte di quello che c'è in un software di backup "classico". Il backup effettuato è incrementale, funziona anche con i file correntemente aperti, e supporta il versioning, il che risulta perfetto per chi modifica spesso i propri documenti (es: i sorgenti di un programma in fase di sviluppo) e vuole tornare alla versione di una data specifica. Certo non sostituisce software di versioning come SVN o TFS, ma è già qualcosa di molto utile.
Oltre che tramite l'applicazione dedicata di configurazione, è possibile aggiungere un folder al backup tramite una nuova voce aggiunta al menu contestuale di Windows Explorer (Gestione Risorse) in fase di installazione. Davvero comodissimo.

Per quanto riguarda la sicurezza, tutte le comunicazioni client-server sono cifrate tramite SSL. I dati sul server di Mozy sono poi cifrati tramite una chiave a 448bit! La chiave può essere quella di default di Mozy, oppure una scelta dall'utente. La prima opzione è consigliata per utenti senza troppi segreti da proteggere, e che non vogliono o non sanno crearsi una propria chiave; la seconda opzione dovrebbe comunque permettere anche ai più ansiosi di dormire sonni tranquilli.

Infine, per il restore dei dati ci sono almeno tre scelte:
1) Si fa tutto tramite l'applicazione desktop
2) Da Windows Explorer si può accedere al proprio spazio remoto sul server di Mozy tramite un hard disk virtuale chiamato MozyHome Remote Backup, che si comporta come un disco locale!
3) Si va sul sito di Mozy e dalle pagine private del proprio account sfogliare il materiale salvato online e scegliere cosa si vuole scaricarsi. Dopo aver confermato la selezione Mozy si mette al lavoro zippando il materiale scelto, e informa l'utente via mail quando questo è pronto. All'arrivo della mail l'utente può quindi scaricarsi lo ZIP auto-estraente in locale; questa soluzione può rivelarsi davvero eccellente nel caso si voglia scaricarsi qualcosa (magari non tutto il backup, ma solo qualche documento specifico) mentre si è da un cliente, in vacanza o comunque in qualche luogo senza il proprio PC e soprattutto senza una copia locale dei dati con i quali si lavora da casa.

Ancora non vi basta per convincervi a provarlo?

Correntemente valutato 4.5 da 4 utenti

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:  
Categorie:   Business | Mac OS X | Sviluppo software | Windows
Azioni:   E-mail | Permalink | Commenti (28) | RSS CommentiRSS comment feed

SMS non letto fantasma nell'iPhone: come correggere il contatore

venerdì, 17 ottobre 2008 18.23 by Marco Bellinaso

A molti possessori di iPhone (2G o 3G) capita di sperimentare un antipatico bug per il quale l'iconcina degli SMS presente nella schermata home mostra costantemente il bollino rosso di "1 messaggio non letto", quando in realtà questo non esiste. All'arrivo di un nuovo sms il contatore passa a "2", si legge il nuovo sms, il contatore torna a "1", e sembra non esserci modo di fargli intendere ragione e riportarlo a zero come dovrebbe essere. Anche ri-aprire e scorrere tutte le discussioni presenti nell'applicazione di messaggistica, per assicurarsi di non aver davvero saltato alcun messaggio, non sortisce alcun effetto.

La causa è di uno di quegli SMS che gli operatori inviano per notificare che mentre il telefono era spento, occupato o senza rete qualcuno ha cercato di chiamarci. Per qualche sconosciuto motivo quell'sms è in grado di confondere il not-always-smart-phone. Cancellare l'sms incriminato non risolve il problema. La soluzione è tuttavia molto semplice e veloce (una volta scoperta :). Ecco come fare:

1) Spegnere l'iPhone.
2) Farsi chiamare dalla persona che ha originariamente causato l'invio dell'sms da parte dell'operatore. E' possibile capire quale sia questa persona perchè quando si lancia l'applicazione di messaggistica questa tipicamente aprirà automaticamente la discussione con quel contatto.
3) Riaccendere l'iPhone.
4) Entro pochi secondi dovrebbe arrivare l'sms di notifica dell'operatore. Cliccare "Close" nella popup di notifica, e il contatore dovrebbe rinsavire!

Correntemente valutato 3.3 da 7 utenti

  • Currently 3,285714/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , ,
Categorie:   Mac OS X | Tecnologia
Azioni:   E-mail | Permalink | Commenti (51) | RSS CommentiRSS comment feed

Applicazioni mobile, traffico dati e web service

lunedì, 8 settembre 2008 09.00 by Marco Bellinaso

Nella mia recensione dell'iPhone dicevo che finalmente è davvero possibile avere Internet in tasca, grazie alle ottime capacità di Safari Mobile e grazie alla facilità di interazione offerta dalla UI e dallo schermo multitouch del device. Questo vuol forse dire che le informazioni che ci servono (per lavoro, per svago ecc.) possono essere sempre ricercate e consultate tramite i siti web esistenti, piuttosto che tramite applicazioni native ad-hoc? La risposta è: certamente no.

Il motivo è semplice: una pagina web pesa tranquillamente 500 KB (o anche molto di più, se siamo un po' sfortunati) tra html + css + immagini, ma le informazioni testuali che effettivamente ci servono saranno probabilmente pochi KB; se il problema fosse solo il maggiore tempo di attesa prima che i contenuti vengano scaricati basterebbe essere più pazienti, ma c'è ovviamente dell'altro. Il vero problema è che - in Italia ma in parecchi altri Paesi - non c'è una connessione flat per il traffico dati sui device mobili, ma si paga a traffico effettuato, eventualmente con dei pacchetti prepagati a tariffa "conveniente" (relativamente alle tariffe normali, altrimenti di conveniente ci sarebbe ben poco...). Ad esempio il Vodafone Pack prevede un traffico di 150 500 MB settimanali al costo fisso di 3€. Un traffico di questa entità è sufficiente per controllare la posta tramite i client integrati, e per visitare sporadicamente qualche sito web piuttosto leggere. Se però bisogna frequentemente consultare un paio di pagine da 500 KB di un certo sito, per ricavare poche informazioni relative ma disperse in più pagine, è chiaro che a 1 MB al colpo si stà presto a consumare una fetta troppo grossa del traffico disponibile.

Ecco dunque il senso di una applicazione nativa: questa si dovrebbe scaricare - tramite un web service o qualcosa di simile - solo i dati "grezzi" necessari, e poi formattarli, manipolarli e visualizzarli localmente. Ho provato a scrivere un web service classico (in ASP.NET...tecnologie MS forever dove possibile ;) che restituisse solo i dati: 45 KB di testo. 1/22 del traffico richiesto dalla navigazione via web per ottenere gli stessi dati...non male come risparmio no? Certo c'è da mettersi lì ed investire tempo a sviluppare una applicazione nativa custom, il che può non essere semplice, ma probabilmente l'applicazione potrà essere molto apprezzata da chi ha spesso bisogno di quelle info ma non vuole consumarsi tutto il suo traffico settimanale. Chissà, magari per un risparmio del genere sui costi di connessioni potrebbe essere pure disposto a pagare qualcosa per ringraziarvi del lavoro...

45K è un valore accettabile, ma pensandoci un po' si può fare di meglio. In quei 45K ci sono anche tutti i tag XML della risposta, dato che si tratta di un web service. XML/SOAP sono lo standard per un web service multipiattaforma, interoperabile e facilmente interpretabile...ma tutto ciò ci serve nel caso di una applicazione mobile che usa assolutamente in esclusiva quel servizio? No, non serve. In un caso del genere va benissimo un HttpHandler che si prende i parametri in querystring, e restituisce del plain text dove tutte i dati di risposta sono accodati in un ordine conosciuto e sono separati da un carattere particolare specifico. Come si faceva una volta ai tempi di ASP insomma. Il servizio di test che ho sviluppato con questo approccio produce delle risposte medie di 15K. 1/3 del traffico richiesto dal WS, e 1/66 del traffico richiesto dalla navigazione di 2 pagine web. Un risparmio che difficilmente non si può apprezzare. Come al solito quindi ogni soluzione o tecnologia va contestualizzata alla specifica situazione e necessità.

Correntemente valutato 4.0 da 5 utenti

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   ,
Categorie:   Business | Mac OS X | Sviluppo software
Azioni:   E-mail | Permalink | Commenti (43) | RSS CommentiRSS comment feed

La mia esperienza con AppleCare e la sostituzione dell'iPhone

martedì, 2 settembre 2008 18.53 by Marco Bellinaso

Lo scorso 8 febbraio ho scritto un post sul fatto che i MacBook(Pro) di Apple valgano o meno il loro prezzo, tipicamente parecchio più alto di un notebook non-Apple di pari specifiche. In quell'occasione sono stato molto critico soprattutto per un fatto: nonostante il costo elevato, l'assistenza tecnica per professionisti non è decisamente all'altezza, in quanto avevo dovuto aspettare più di una settimana per un cambio di batteria difettosa. Viceversa, in caso di problemi con hardware Dell ho sempre avuto il pezzo di ricambio o il supporto di un tecnico on-site in casa mia, il giorno successivo alla chiamata, perdendo al massimo 1/2 - 1 giornata di lavoro. La mia opinione per prodotti destinati all'uso lavorativo resta invariata: se il PC vi serve per lavoro, Apple non offre (neanche pagando qualcosa in più del normale) di avere un'assistenza ai livelli di Dell.

In questi giorni ho però avuto a che fare con l'assistenza di Apple anche per un prodotto consumer, restando questa volta estremamente colpito in modo positivo; per correttezza voglio riportare anche quest'esperienza. Dopo pochi giorni dall'acquisto del nuovo iPhone, ho tristemente scoperto che il suo accelerometro funzionava molto male, tanto da essere completamente inutilizzabile (Safari, Calcolatrice, iPod e le altre app rotation-aware erano sempre in orizzontale...e ovviamente erano inutilizzabili i giochi che sfruttano i movimenti del dispositivo).

Triste e sfiduciato (vabbè che capita di beccare l'unità sfigata con qualche difetto quando si compra roba elettronica...ma sempre a me??) ho subito chiamato l'assistenza Apple (numero 199 a pagamento, cominciamo bene, mi son detto...), riuscendo fortunatamente a prendere subito la linea con un operatore umano. Spiegato il problema e fornito il codice seriale del prodotto, l'operatore mi spiega che organizzerà subito una sostituzione dello stesso. In pratica mi avrebbero mandato via UPS tutto l'occorrente per impacchettare l'iPhone e spedirlo alla loro sede nei Paesi Bassi. Dopo aver verificato la situazione sempre via UPS mi avrebbero mandato un device nuovo. Era mercoledì sera. Venerdì mattina mi arriva la busta UPS contenente il seguente materiale per imballare l'iPhone:

Era anche presente un vero e proprio manualetto che mi spiegava (con descrizioni dettagliate e disegnetti) come:
1) Rimuovere la SIM dal mio iPhone (tramite la graffetta anch'essa fornita)
2) Inserire l'iPhone nella bustina
3) Inserire la bustina in una prima scatolina imbottita
4) Inserire la scatolina in una scatola più grande, fornita da 3 strati di imbottitura di gomma piuma
5) Inserire la scatola nella busta UPS fornita
6) Applicare sulla busta l'etichetta precompilata con tutti i dati per la spedizione (compresa la dicitura che la spedizione verrà pagata dal destinatario, ovvero Apple)
7) Chiamare UPS Italia al numero indicato per prenotare il ritiro del pacco

Completati in pochi minuti i 7 semplici passi, chiamo UPS e prenoto il ritiro per il pomeriggio dello stesso giorno. Lo stesso corriere che mi ha consegnato la busta ripassa quindi dopo 3 ore dalla prima consegna, e questa volta si prende il mio pacco.

Oggi, martedì, 4 giorni dopo la spedizione e 6 dopo la prima chiamata all'assistenza (compresi i 2 giorni di weekend) mi è arrivato a casa l'iPhone nuovo (all'interno di un imballo identico a quello usato per la mia spedizione ad eccezione della scatolina interna, in questo caso nera e con la scritta "iPhone" invece che bianca e senza scritte), questa volta perfettamente funzionante (incrociando le dita! :). Devo ammettere che non l'avrei mai detto...mi sarei aspettato di dover attendere come minimo la fine della settimana! Il servizio è stato preciso e veloce in tutte le sue fasi, dalla chiamata all'assistenza alla consegna finale, nonchè totalmente gratuito.

Se quindi credo che Apple possa/debba ancora migliorare il supporto per prodotti business, dove anche 4 giorni sono troppi per chi senza notebook non può fare il proprio lavoro (e sarebbe costretto a comprarsene uno d'emergenza al supermercato, piuttosto), l'assistenza per prodotti consumer si è dimostrata veramente ottima, perlomeno nella mia personale esperienza.

Correntemente valutato 4.5 da 4 utenti

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , ,
Categorie:   Business | Mac OS X | Personale
Azioni:   E-mail | Permalink | Commenti (44) | RSS CommentiRSS comment feed

Pro e contro di iPhone 3G, veri o presunti

mercoledì, 20 agosto 2008 19.11 by Marco Bellinaso

Nel post precedente ho parlato del perchè il Samsung Omnia, con Windows Mobile 6.1 on-board, mi abbia convinto così poco da farmi decidere di venderlo dopo pochissime ore dal suo acquisto. Finalmente ora sono tornato ad essere un possessore di iPhone. A causa della mia curiosità avevo già avuto la versione non-3G, presa in UK e opportunamente sbloccata per funzionare con gli operatori italiani. Ho venduto il primo iPhone qualche tempo fa con l'idea di aggiungere qualcosa a quello che avrei racimolato, e comprare la nuova versione 3G non appena fosse uscita, da usare in modo "ufficiale". Poi invece è uscita la fantastica promozione del Samsung + Xbox venduti allo stesso costo dell'iPhone, e mi sono lasciato tentare...

Avendo avuto device Pocket PC / Windows Mobile dal 2002 circa li conosco piuttosto bene, sia nei pro che nei contro. Dopo la positivissima esperienza con il primo iPhone (che ho venduto proprio a malincuore - a differenza di quello che avviene solitamente - e con l'idea di stare senza solo per poco), tornare nuovamente ad un Windows Mobile è stato quasi traumatico, e nella recensione dell'Omnia credo di averne almeno parzialmente spiegati i motivi. Ovviamente anche nell'iPhone non tutto è rose e fiori, anzi...però si resta parecchi passi avanti alla concorrenza. Di seguito cercherò di analizzare i principali pro e contro (o presunti tali).

CONTRO

1) Manca il supporto per le videochiamate: questo non sapevo se considerarlo un pregio o un difetto :) Non ho mai usato le videochiamate in vita mia e la cosa non mi manca. Conosco anche pochissima gente (nessuno?) che le usi. Un po' è sicuramente per i costi alti, ma un po' è anche che non mi piacerebbe parlare con l'auricolare guardando una faccia su uno schermino, e mostrare la mia all'interlocutore. Già non mi piace usare la webcam al PC, ma almeno lì sono davanti al PC nella mia privacy. Immagino che chi le usa lo faccia con la ragazza/moglie/marito/amici stretti, e non per chiamate di lavoro o con sconosciuti...ma non mi convince comunque. Questo è comunque un mio parere personale e ciò non toglie che questa mancanza sia effettivamente un limite tecnico e che per alcuni sia significativo.

2) Manca il supporto per gli MMS: più o meno come sopra. Ne avrò spediti 2-3 da quando sono usciti. Se faccio delle foto con la fotocamera preferisco spedirle via mail (questo è possibile), così che chi le riceve le possa vedere con risoluzione un po' più decente. Però ogni tanto qualcuno me li manda, e in effetti è fastidioso non poterli visualizzare. Per chi poi a differenza di me ne fa un uso consistente, questa limitazione può essere un problema.

3) Memoria non espandibile: ho preso l'iPhone da 8GB perchè di 16 non avrei saputo che farmene. 16 credo sia già una bella cifretta comunque, anche per chi ha molta musica e video. Credo ci possano stare agevolmente migliaia di album, se opportunamente codificati. Certo probabilmente non ci starà l'intera collezione casalinga da 200GB di MP3 che qualcuno sicuramente possiede...ma è indispensabile portarsi costantemente dietro tutta la libreria, o può essere sufficiente modificare ogni tanto la playlist da sincronizzare con l'iPhone? Sicuramente una memoria espandibile può fare comodo a qualcuno, ma direi che non è esattamente una cosa essenziale avendo già 16GB già on-board. Per i veri amanti della musica/video portatile esistono pur sempre dispositivi più consoni allo scopo (non telefoni o smartphone, comunque)

4) Batteria non rimovibile: in 10 anni di possesso di telefoni e device di tutti i tipi non mi è mai servito cambiare una batteria. Certo dopo 2-3 anni la durata della batteria non è più lo stesso, ma probabilmente dopo una tale quantità di tempo la vita di questi dispositivi è comunque verso la fine perchè nel frattempo saranno uscite altre mirabolanti trovate tecnologiche (non vale per tutti i telefoni ovviamente, ma per chi prende l'iPhone probabilmente si). Se dopo 3 anni voglio comunque cambiare la batteria, l'assistenza Apple permette di farlo, anche se solo tramite il loro supporto, e anche se ad un costo piuttosto elevato. Per contro, il fatto che la batteria sia integrata consente di risparmiare un po' di spazio e di evitare di avere parti deboli nella scocca.

5) Fotocamera da solo 2 Mpx, e di pessima qualità: questa è una cosa piuttosto grave, almeno per le mie necessità. Mi sarebbe piaciuto aere un dispositivo con cui fare foto decenti...certo non per fare delle stampe da appendere al muro, ma almeno delle foto discrete da stampare in piccolo o da pubblicare sul web. Purtroppo la fotocamera di Apple non è proprio all'altezza: 2 mpx andrebbero pure bene come risoluzione, se solo la qualità fosse superiore. Peccato, perchè questa è forse la parte hardware peggiore del dispositivo. Il Samsung Omnia offre un'ottima fotocamera da ben 5mpx, che scatta foto nitide e pulite. Perchè Apple ha invece deciso di offrire così poco in questo comparto, sempre più importante e in continuo miglioramento nella maggior parte dei modelli degli altri produttori?

6) Costo elevato: ad un prezzo di listino di 499€ per la versione da 8GB (senza contratto telefonico, che è la soluzione sicuramente migliore) direi che il prezzo è perfettamente allineato con la concorrenza di Samsung, HTC, Nokia ecc. Se l'iPhone ha qualcosa in meno (qualità fotocamera, videochiamata e MMS mancanti, ecc.) non c'è dubbio che abbia anche parecchi pro in più, come vedremo in seguito. Pertanto ritengo che il prezzo sia alto ma giustificato.

7) Manca la possibilità di scambiare file via bluetooh: c'è poco da dire, è un limite software a cui spero pongano rimedio prima o poi, perchè in effetti la possibilità di scambiarsi file, seppure non frequentissima, può essere piuttosto comoda. Soprattutto se poi neanche via mail è possibile inviare file, ad eccezione delle foto...

8) Non e' possibile usare il telefono per connessione dati: anche qui ci sono poche giustificazioni. E' sicuramente comodo per chi viaggia avere un telefono che possa fare da modem al notebook, condividendo la connessione UMTS/EDGE. L'iPhone non permette di farlo nativamente (a differenza di Windows Mobile), ma era uscito un software - NetShare - che sopperiva alla mancanza. Peccato che Apple abbia pensato bene di rimuoverlo dallo store, tornando al punto di partenza. A quanto pare però non è affatto un limite tecnico (hardware o software), ma è solo un problema di policy. Gli sviluppatori del software fanno sapere che sperano di rilanciare il programma a breve, perlomeno in alcuni stati dove gli accordi tra Apple e gli operatori telefonici non neghino una procedura di questo tipo.

9) Manca la possibilità di upload di file tramite Safari: questa cosa immagino potrebbe servire quasi esclusivamente per pubblicare foto nei vari siti alla Flickr. Ma esistono talmente tante di quelle applicazioni di terze parti (spesso free) per fare questa cosa (tra l'altro con una grafica e un'usabilità spesso maggiori di quello che offre il corrispondente sito web) che il problema è un non-problema.

10) Manca il supporto a Flash in Safari: vero, ma chi ce l'ha? Come dicevo nella recensione del Samsung Omnia, il supporto a Flash presente in Opera Mobile 9.5 è così povero da risultare praticamente inutile; solo animazioni codificate con vecchie versioni di Flash saranno visibili...a questo punto tanto vale che non ci siano, e che il browser guadagni in affidabilità e performance. Tra l'altro, mi pare di notare che sempre più il Flash è relegato a siti-vetrina di piccole società, mentre praticamente la totalità di siti di contenuti, o servizi web interattivi, usano HTML + AJAX, che Safari Mobile supporto alla grandissima.

11) Un solo allegato per e-mail spedita: un limite software scomodo quando si vogliono ad esempio mandare varie foto in un colpo solo, ma che si sentirà credo piuttosto raramente. Tuttavia mi auguro che in un prossimo aggiornamento software estenderanno il supporto per gli allegati. Dato che ci siamo magari aggiungete anche la possibilità di copiare e incollare singoli allegati da una mail all'altra, invece che dover per forza fare il forward dell'intera mail con tutti gli allegati (in ricezione ne supporta di multipli infatti, ovviamente)

12) Gli allegati tipo Excel e Word non si possono modificare: personalmente non ritengo questa limitazione un grosso problema, perchè la comodità di un device portatile di queste dimensioni è di poter leggere agevolmente questi documenti (e questo in effetti accade, anche grazie all'onnipresente zoom e scrolling), non tanto di modificarli. Pensate che su Windows Mobile, che ovviamente supporta anche la scrittura (e beh, se non lo fanno loro...), sia comodo modificare un foglio Excel destreggiandosi tra scrollbar, pennino, celle da selezionare e tastierino virtuale? Oppure scrivere anche 2 righe di testo con Word, con una qualche formattazione. Preferisco poter solo leggere un documento, e farlo con grande facilità, piuttosto che poterlo leggere e anche scrivere scomodamente. Ad ogni modo, se aveste proprio la necessità di modificare documenti complessi on-the-go, potete sempre considerare l'opportunità di usare Google Docs o Zoho.

13) Manca il supporto per la registrazione di video: questa limitazione è veramente scandalosa, ormai la registrazione di video è presente anche nei telefoni che costano 1/10 di iPhone. Non si capisce bene perchè non ci sia tra l'altro: nel mondo del software per iPhone craccati, queste applicazioni esistono e funzionano bene. Perchè dunque Apple non ne ha fatta una da dare integrata? E perchè non dà la possibilità ad altri di farla? (dò per scontato che qualcuno ci abbia provato, dato l'interesse che c'è attorno a questa feature, ma che Apple non l'abbia accettata). Mah...

14) Mancano le funzioni taglia/copia/incolla: queste operazioni potrebbero sicuramente essere comodo in alcuni casi, ad esempio per copiare del testo tra contatti in rubrica, mail, sms ecc. Attualmente non ci sono, ma vari rumors danno quasi per certo che saranno aggiunte nell'imminente versione 2.1 del firmware.

15) Non si possono inoltrare gli SMS: operazione tanto banale quanto a volte essenziale. Inspiegabilmente mancante. No comment.

16) Manca un contatore di caratteri negli SMS: come sopra. Ma Apple, come si fa a trascurare una caratteristica così basilare che anche i telefono più economici hanno praticamente sa sempre? Mi chiedo veramente quale sia il motivo e il ragionamento che stanno dietro a questa mancanza. Fosse stata una semplice dimenticanza o distrazione, penso che avrebbero fatto a tempo a provvedere nel corso dell'anno e più che è passato dal lancio della prima versione dell'iPhone.

17) Manca la possibilità di cancellare un singolo SMS da una chat, o chiamata dal registro: come sopra, sono senza parole.

18) Forward numero di telefono: come sopra, sempre più allibito...

19) Non è possibile registrare telefonate: questa è un'operazione un po' più avanzata delle 4 precedenti, ma neanche di molto. Non solo Windows Mobile, ma anche la maggior parte degli altri smartphone o cellulari avanzati permette questa cosa, che spesso si può rivelare veramente utilissima (ad esempio per registrare un numero o un indirizzo dettato dal proprio interlocutore, senza doverselo scrivere temporaneamente a mano).

20) Manca un software di navigazione satellitare: c'è Google Maps, che segna la posizione attuale, traccia un percorso verso un indirizzo prescelto, e mostra il puntino in movimento. Ma non è un software di navigazione, nel senso che gli mancano le istruzioni vocali e le tantissime opzioni disponibili nei software di navigazione ai quali molti di noi sono ormai abituati. Questa di per se non è una mancanza dell'iPhone, perchè sono ben pochi i PDA che sono distribuiti con già un software di questo tipo on-board. Però di solito si possono aggiungere. Per iPhone invece non ce ne sono ancora di disponibili. Sebbene si sentano tantissime voci riguardo il rilascio di varie soluzioni da parte di vari produttori, non mi pare ci sia ancora un annuncio ufficiale e confermato. Non ci resta quindi che attendere speranzosi. Nel frattempo Google Maps una mano la dà, pur senza la voce (questo per alcuni è un vantaggio però :), a patto però di avere una connessione dati per scaricare le mappe in tempo reale.

21) Manca un File Explorer: in Windows Mobile c'è da sempre, per quanto ricordo, e permette di copiare, spostare, cancellare, rinominare folder e cartelle. Nell'iPhone non c'è, ma del resto mi chiedo se lo si userebbe. Quello che metto nell'iPhone nel 99% dei casi sono foto, video, suonerie, foto e applicazioni. Tutti questi tipi di documenti/file vengono sincronizzati con iTunes, con pochi click del mouse, in maniera davvero semplice. Sebbene all'inizio fossi scettico anch'io, dopo pochissimo mi sono reso conto di quanto sia comodo questo strumento, e penso "ma perchè mi serve un file manager? cosa mi interessa di vedere dove sono fisicamente salvati i file, in che struttura e con che nomi?". Ok, in realtà a volte potrebbe essere comodo avere un file manager per prendere più file, zipparli assieme e spedirli via mail (tutto ciò è possibile con Windows Mobile), ma l'utente "normale" sicuramente non lo farà, e anche l'utente avanzato ne avrà bisogno molto raramente a dire il vero. Se solo migliorassero la gestione degli attachment nella mail, il problema del file manager non ci sarebbe più neanche per questi utenti poi.

22) Non è possibile usarlo come HD esterno: con l'iPod è possibile creare una partizione gestita come un normale disco esterno dal proprio computer. Con iPhone non c'è questa possibilità, purtroppo. Esistono software di terze parti che cercano di risolvere il problema, senza però riuscirci, perchè richiedono che il software sia installato non sul device (una volta), ma sul computer da collegarci (quindi su ogni computer che deve accedere ai dati, cosa improponibile). E' pur vero che andare in giro con il cavetto USB sempre in tasca non è comodissimo...il cavetto probabilmente intralcia molto più di una microscopica e autonoma chiavetta USB, che ormai si trova anche quasi in regalo nei pacchetti di merendine!

Sono arrivato in fondo alla lista: 22 "contro", decisamente non pochi, e sicuramente qualcuno avrebbe da aggiungere altro. Però bisogna dire che i difetti hardware o della piattaforma sono veramente pochi (fotocamera), gli altri sono mancanze software più o meno serie, e più o meno semplici da risolvere. E' ragionevole pensare che alcuni software (ad esempio quello di navigazione) richiedano un grande investimento, ma molte altre lacune (tutti i problemini con la gestione SMS, chiamate, mail) potrebbero essere risolti in pochissimi giorni, se solo Apple volesse. Il Copia e Incolla dovrebbe arrivare...speriamo che si decidano a dimostrarsi all'altezza della situazione e ci accontentino anche per il resto (o parte del resto).

PRO

E' difficile elencare i pro di iPhone in una lista; le liste funzionano molto meglio per i difetti. I pro in questo caso non sono dei semplici dettagli o un elenco di feature che gli altri non hanno. E' l'esperienza di utilizzo innovativa che fanno di iPhone quello che è, ovvero uno strumento eccezionale con cui portarsi sempre in tasca telefono, divertimento (video, musica, giochi) e Internet.

Safari
Partiamo da Internet, che è forse il principale motivo per il quale adoro l'iPhone nonostante tutte le sue tante pecche. Safari è il miglior browser mobile attualmente in circolazione, senza alcun dubbio. Ha un livello di fedeltà altissimo con la versione desktop...in effetti non so se ho ancora trovato un caso in cui non si comporti come il fratello per Windows/Mac (supporto per Flash a parte). E in effetti Apple non lo descrive come un browser mobile, ma come un browser desktop che gira su un device mobile. La differenza è sostanziale.

Ma la fedeltà di riproduzione da sola non basta, bisogna che il software sia anche facile da usare; anche in questo caso Safari eccelle e non ha concorrenti: spostarsi all'interno della pagina e leggere tutti i contenuti è facilissimo e perfettamente agevole, grazie all'ampio display ma soprattutto grazie alle potenti capacità di scaling grafico, all'utilizzo del doppio tap per zoomare su una colonna, all'utilizzo di due dita per restringere o allargare nel dettaglio una specifica area, e allo scrolling sensibilissimo e precisissimo tramite dito appoggiato ovunque sul display.

Sempre per ottimizzare l'usabilità, Safari renderizza in modo particolare i controlli di input quando questi hanno il focus: ad esempio quando si seleziona una dropdownlist questa non mostrerà la tipica lista a discesa (come fa IE Mobile o anche Opera), ma verrà visualizzata una grande rotella con tutte le selezioni disponibili. Grazie ad accorgimenti come questo non capita più di selezionato un valore sbagliato perchè si sta cliccando con il dito (ma capita anche col pennino) una riga di una lista troppo piccola.

Con Safari su iPhone in conclusione è davvero possibile navigare, quasi come si farebbe su un mini-notebook (che avrebbe si risoluzione più alta, ma non avrebbe magari lo scaling e lo zoom), tant'è vero che spesso (anche con iPhone vecchio) mi trovavo a passare anche un'ora a letto leggendo comodamente pagine web e discussioni nei gruppi di Google. Pensare di fare altrettanto con un altro cellulare/smartphone/PDA è follia.

AppStore
A meno di craccare il proprio iPhone, AppStore di Apple (accedibile tramite iTunes o direttamente da iPhone) è l'unico marketplace di software di terze parti per iPhone che sia possibile installare. Devo dire che all'inizio non vedevo di buonissimo occhio questa scelta, perchè in pratica Apple non offre alternative, e la mancanza di alternative (distribuzione sul proprio sito personale, in altri marketplace, tramite altri canali ecc.) spesso non è buona per il consumatore finale. Alla fine però (ma in pratica dopo solo qualche ora di utilizzo) mi sono convinto che AppStore è davvero uno strumento fenomenale.

A parte il fatto che per arrivare su AppStore il software deve passare alcuni controlli sulla sicurezza/affidabilità (cosa che invece per uno sviluppatore è negativa, perchè non sa come cosa risponderà Apple riguardo il proprio software proposto) il vero vantaggio è un altro, ovvero semplicità e immediatezza (parole che non suonano nuove quando si parla/legge dei prodotti Apple). Per scaricare un software lo si cerca da iTunes (e si può ad esempio aggiungere un filtro per mostrare solo il software completamente gratuito), si legge la descrizione e review, si clicca Download, e si esegue la sincronizzazione con l'iPhone connesso via USB. Tutto il giro è a prova di neofita. Con Windows Mobile o si scarica un installatore per Windows (la cui procedura magari cambia da software a software), oppure bisogna copiare un file .CAB sul dispositivo tramite Windows Explorer sul computer, poi bisogna andare nel Windows Explorer del dispositivo e farci doppio-tap sopra per lanciare l'installazione. Non suona altrettanto immediato, non è vero?

Ma il problema con Windows Mobile è anche un altro. Prima di installare il software, bisogna trovarlo. E dove? Su siti di software commerciali tipo handango (che poi è anche quello che fornisce il catalogo al Mobile2Market ufficiale di Microsoft)? Su uno delle centinaia di altri siti che catalogano e recensiscono software commerciale e freeware? Direttamente su Google, con la speranza di arrivare sul sitino di un autore indipendente che non ha pubblicato anche altrove il suo software (magari ottimo)? Di solito bisogna seguire tutte e tre queste strade, con il risultato che spesso si riesce a perdere delle ore anche per una singola applicazione. Con AppStore tutto ciò non esiste: si esegue la ricerca per parola chiave direttamente all'interno di iTunes, si sfogliano i risultati (suddivisi in pagine, perchè ormai sono già moltissimi) e si sceglie. Non occorre andare in giro per il web...anzi non ha proprio senso perchè chiunque voglia proporre il proprio programma (o gratis o a pagamento) per device non craccati deve essere presente su AppStore. L'altra sera in un'ora scarsa ho trovato, scaricato, installato e provato la maggior parte delle applicazioni che mi interessavano (gestione password cifrate, gestione liste di vario tipo, qualche giochino ecc.).

Molto software presente su AppStore è completamente gratuito, e molto altro si trova per prezzi che vanno da 0,79 a 8 €. Credo che spenderò volentieri un paio di € quando mi servirà qualcosa di particolare e che non trovo in versione free...comunque avrò risparmiato estenuanti ricerche sul web che con un non-iPhone non mi sarebbero state risparmiate. Se è vero che il tempo è denaro...

NOTA: a quanto pare alcune applicazioni iPhone costano comunque meno delle rispettive versioni per Windows Mobile. Ad esempio eWallet (forse il più famoso gestore di password in WM) costa 7,99 € per iPhone, e 13,6 € per WM.

NOTA 2: sarà che cercano di essere in linea con la filosofia e la grafica del resto delle applicazioni di iPhone...sarà che storicamente la piattaforma Mac era dei grafici e c'è tuttora una grande sensibilità verso l'aspetto oltre che verso il funzionamento...fatto sta che la maggior parte delle applicazioni iPhone risultano essere più gradevoli ma anche semplici e comode da usare rispetto alle controparti per WM o Symbian. 




iPod
Avere un iPhone significa anche avere l'ultima generazione di iPod Touch, in tutto e per tutto. E' vero che player multimediali come quelli del Samsung Omnia supportano più formati (DivX, Xvid ecc.), ma superato questo scoglio (tramite software free o anche open-source che permettono di codificare qualsiasi video in formato supportato da Apple, riducendo tra l'altro di molto la dimensione del file...cosa che ovviamente non avverrebbe copiando direttamente il video originale sul palmare) l'utilizzo del software risulta a mio parere più pregevole dei concorrenti. Del resto questo è proprio il tipo di applicazione dove Apple cura i piccoli dettagli, quelli che fanno la differenza.

Interfaccia e usabilità in generale
Più che continuare questo elenco di pro con una sfilza di esempio di applicazioni ben fatte, o all'elogio del design dell'hardware, mi interessa sottolineare come l'iPhone non sia innovativo e desiderabile grazie al suo aspetto o alla grafica delle proprie applicazioni, quanto piuttosto grazie al fatto che è fornito di un sistema operativo, un framework e tutta una serie di funzionalità appositamente create per un device mobile dotato di touch screen come unico dispositivo di input. L'usabilità e la semplicità di interazione è stata una delle più grandi priorità, sempre per il solito discorso: se aggiungi 100.000 cose, ma queste sono difficili da utilizzare, il tuo sforzo sarà stato inutile. Ecco perchè sull'iPhone non si trovano le checkbox, combobox e scrollbar che si trovano su un sistema operativo desktop (Windows o Mac OSX che sia), ma si trovano controlli di input fatti su misura per essere visualizzati e utilizzati su un display con delle specifiche caratteristiche. Ecco perchè hanno investito molto per creare il miglior touch screen (come precisione, sensibilità e funzionalità multi-touch) disponibile oggi su un device portatile di queste dimensioni. Ed ecco perchè gran parte del software che ci gira attorno (Safari, la lista dei contatti, la homepage con i programmi, iPod) segue la stessa filosofia usando in modo uniforme queste caratteristiche.

CONCLUSIONI

Cercherò di farla breve a questo punto, data la prolissità delle mie considerazioni fino a questo punto. L'iPhone ha molti difetti, ma molti sono dettagli. Le fondamenta (l'architettura, il framework di interfaccia utente, la tecnologia del display) sono molto solide, e consentiranno sicuramente di migliorare sempre di più questo dispositivo. Quindi vedo un grande futuro per l'iPhone, perchè le premesse sono ottime (basta anche vedere quanta gente sta investendo tempo e soldi per sviluppare soluzioni, dopo neanche 2 mesi dalla pubblicazione ufficiale di AppStore).

Con Windows Mobile, ma anche con Symbian, le cose sono un po' diverse perchè sono le fondamenta a costituire il problema. Purtroppo avendo WM un pregresso di molti anni (con decine o centinaia di migliaia di software che devono continuare a funzionare) sarà molto difficile stravolgere l'architettura cercando di avvicinarsi a un qualcosa di più mobile-friendly. Di sicuro sarà interessante vedere che strategia seguiranno (perchè qualcosa penseranno di sicuro) per contrastare l'avanzata di iPhone oggi e forse anche Google Android domani.

Correntemente valutato 4.1 da 8 utenti

  • Currently 4,125/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5
Segnala:  
Tags:   , , , , ,
Categorie:   Business | Mac OS X | Tecnologia
Azioni:   E-mail | Permalink | Commenti (71) | RSS CommentiRSS comment feed