Sembra ieri che Adobe annunciava, in tono di sfida, che la prossima versione del suo Flash (ovvero la CS5) avrebbe permesso agli utenti di creare applicazioni per iPhone e iPod Touch.
Un vero e proprio strumento per convertire progetti in Flash in applicazioni Cocoa perfettamente eseguibili da iPhone; un gesto significativo, la prova che in qualche modo Adobe (dopo che Safari mobile ha tagliato fuori Flash dai suoi siti), voleva il suo spazio sul melafonino. Ma quando Apple si impunta non c’è strategia che tenga; e il nuovo firmware di iPhone OS (presentato ieri) sbatte letteralmente la porta in faccia a Flash CS5.
A darne la notizia è il sempre attento Gruber che spulciando la nuova versione dell’iPhone Developer Agreement (l’accordo di licenza relativo all’iPhone Developer Program, cui gli sviluppatori devono acconsentire) ha notato una differenza significativa rispetto alla versione precedente. Precisamente, la sezione 3.3.1 dell’accordo ora prevede che:
Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).
Quello che in prima lettura sembra poco più di una precisazione (nella precedente versione dell’accordo di licenza si specificava solamente che non potevano essere richiamate API private), in realtà nasconde un sottile riferimento a tutte le applicazioni compilate con strumenti come MonoTouch, e il Flash Cs5 che verrà.
Intendiamoci, non c’è scritto chiaramente da nessuna parte che sono vietate le applicazioni realizzate con Flash Cs5 (né tanto meno se ne è parlato durante l’evento), ma quelle quattro righe in più nell’accordo di licenza non lasciano molto spazio ad Adobe.
Per dirla alla Gruber, a proposito di Adobe:
“They’re pretty much royally fucked”
Onestamente, la faccenda Apple VS Adobe mi richiama alla mente l’epopea che abbiamo vissuto con Palm e la sua ostinata volontà di far interfacciare il Palm Pre con iTunes; per quanto si sforzassero, ovviamente Apple trovava sempre il modo di negargli ogni possibilità, con un semplice aggiornamento software.
In questo caso, però, lo stile è decisamente superiore: sono bastate poche righe per mettere le cose in chiaro, e considerato che dovrebbe risultare abbastanza semplice distinguere un’applicazione compilata con Flash Cs5 da quelle sviluppate interamente in C o C++, direi che la nuova funzione di Flash, tanto sbandierata da Adobe, ha le ore contate, e con lui tutti gli altri servizi anologhi:
“Apple isn’t going to let anyone else build a meta-platform on top of Cocoa Touch.”
Come sempre, aspettiamo una contromossa da Adobe. Ma come si risponde a uno scacco matto?
[Via|Daring Fireball]
Da quando è possibile sviluppare applicazioni in C e C++ per iPhone? Questo dettaglio per me fondamentale me lo sono perso!
..e dove sta scritto che sia uno scacco matto?
@ Andrea:
lo e uno scacco matto, flash deve sparire ,e un prodotto obsoleto ,lento orribile via flash dai nostri mac ,
nella presentazione: “…and it’s done in HTML5”
direi che piu esplicito di cosi si muore
@ Andrea:
Lo è. E basta.
Se c’è una cosa che più di tutte mi piace di Apple, questa è la coerenza e la forza di portare avanti le proprie idee. In questo caso non posso che essere totalmente con Apple.
@ Raffo85:
Any valid C code is valid Obj-C code.
Guarda anche cosa si intende per Obj-C++ (codice C++ con Obj-C wrappers)
http://developer.apple.com/Mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html
[…] the Objective-C compiler works for C, C++ and Objective-C source code […]
a me sembra più un dispetto che altro. cosa c’entra la capacità di fare applicazioni con la suite flash con il flash player? non sono due cose totalmente diverse?
Perché se io scrivo un’applicazione in Flash e poi genero codice Objective-C, chi lo dice cosa ho usato per scriverla? Secondo me non avete capito granché.
ma siete tutti così chiusi di testa da non capire? Ancora c’è gente che scrive “via fash, è vecchio è pesante” e roba simile? Hahaha, dio quanto è stupida la gente.
Prima di tutto trovo “l’articolo” un mucchio di fesserie, secondo, la campagna denigratoria di apple nei confronti di flash, ha solo ed esclusivamente scopi monetari, in quanto col nuovo flash cs5, io programmatore in as, potrei aprire un negozietto o un sito dove vendere o rilasciare gratis applicazioni scritte da me, la apple non permetterebbe mai una cosa del genere.. assurdo quanto mi è tornata simpatica la microsoft, l’atteggiamento di apple diventa sempre più pesante e palesemente disinteressato nei confronti dell’innovazione, giorno dopo giorno.Non fa altro che comprare comprare e comprare piccole aziende e società, inglobarle e metterle sil mercato, siamo tornati ai tempi della xerox?? Il conflitto di interessi di apple nei confronti di adobe è palese, si sta rendendo sempre più ridicola.
@ nuovobuio:
a parte che mi domando come potrebbe “aprire un negozietto” e vendere applicazioni fregandone dell’appstore su telefoni non jb.
Per vendere su cydia e simili non serve di certo flash cs5.
Mi raccomando poi di non confondere flash come media, da Flash cs5 che è un software per produrre flash media, e a detta di Adobe, di poter generare codice compilabile per Iphone OS. Su questo punto non conoscendo le parti interne di un compilato iPhone OS, non posso dire se ci potrebbero essere differenze (flash cs5 ha un suo compilatore oppure usa quello di Apple? ci sono voci criptate contenente il nome dell’IDE usato per produrre il software?) che potrebbero far scartare un app prodotta in flash cs5 da una con xcode.
Resta ovviamente il cavillo legale. Cioè scopro che l’hai fatta con cs5 e io te la chiudo. Non so se ci sono le capacità tecniche per dimostrarlo, ma legalmente rimane.
ma la guerra a flash da parte di Apple non e’ che potrebbe avere altre ragioni di fondo ed essere solo l’inizio? …. Per esempio con Flash e’ veicolata tanta pubblicità da piu’ parti ed ora iAD, che al momento si presenta solo su iPhone e iPad, permette di veicolare pubblicità mirata e misurata sull’utente …
apple uole la guerra e adobe deve dargliela!!!smetta di far scaricare flash player per mac os x!!!tolga il supporto e photo shop lo faccia solo per win!!!
Apple vuole sopratutto la qualità nelle app per iphone il che impone una programmazione nativa in cocoa.
non c’è scritto da nessuna parte che Apple lo abbia fatto apposta per fregare Adobe il fatto che adobe abbia annunciato un compilatore da flash a linguaggio compatibile iphone fa gridare allo scandalo, ma secondo me la mossa di Apple è coerente ad una strategia di qualità sopra tutto e sopra tutti. E sopratutto chi vuole scrivere un’ App per iphone si sforzi di farla in cocoa senza usare scorciatoie visto che tanto ci guadagna (sia con la vendita e poi con iAD), per il suo sforzo, con gli 85 milioni di device venduti + 450.000 ipad.
iphone, ipod touch e ipad non sono soli dirver dell’era “post pc” ma saranno nel breve anche i driver per l’abbandono del web di quella schifezza chiamata Flash (che guarda caso aveva iniziato ad imporsi sopratutto con i banner di advertising)
Adobe si becca un sacco di quattrini da chi utilizza Mac per lavoro, siamo veramente tanti, me compreso a rimpinguargli le casse acquistando i suoi prodotti in licenza, quindi non penso che gli convenga, anche perché io non tornerei mai ad utilizzare Windows, cercherei altre applicazioni per poter lavorare.
Si, è vero, al momento non esiste un reale concorrente a Photoshop, ma se Adobe smettesse di sviluppare per Mac penso che qualcuno non si farebbe sfuggire l’occasione di beccarsi quella fetta di mercato.
ovviamente la mia risposta era rivolta a peterjo86
@ Skillsfactory:
Concordo pienamente con te!
peterjo86 dice:
e certo, Photoshop solo per Win… dubito che Adobe rinunci a tutta la fascia PRO che usa CS e lavora su Mac
sarebbe la mossa giusta per Apple per creare un Photoshop-Killer magari dal codice di Shake.
Adobe per ripicca non sviluppo più Premier per Mac perchè Apple propose il suo FinalCut Pro, ma con la CS4 è tornata sui suoi passi…
nuovo buio
questione di soldi? certo. Ma ti sei fermato un secondo a pensare ad una cosa? se mettono flash non hanno più il totale controllo del dispositivo e se un giorno succede un patatrac per colpa di adobe come ti giustifichi di fronte ai clienti? la soddisfazione nell’uso è di primaria importanza per Apple e con flash potrebbe solo peggiorare.
Se posso avere tutto quello che ho con flash ma senza flash grazie mille io preferisco come sta facendo Apple. Su iPhone in anni mai servito flash. Su iPad l’html5 la farà da padrone. Apple mica è l’ultima arrivata e credimi che ne sa più di te e di me quindi sa bene quello che fa. E l’obiettivo finale è sempre la massima soddisfazione degli utenti perchè è proprio questo che poi li spinge ad acquistare prodotti senza preoccuparsi del fatto se funzioneranno bene o male perchè sanno già che funzioneranno bene.
peterjo86
un sacco di utenti win scaricano aggratis i sw adobe, mentre la stragrande maggioranza degli utenti mac i sw adobe li paga. Come mai? per il fatto che i Mac sono usati moltissimo nel campo grafico, dei progetti di ogni tipo e nel campo cinematografico. Sai quante vagonate di sw adobe ordinano le case cinematografiche più importanti OGNI anno?
Adobe che lascia il mondo Mac = suicidio commerciale.
ps e comunque apple non sta facendo nulla di scorretto o illegale. è un suo prodotto: sia l’hw che il sw. Potrà farci quel cavolo che le pare? grazie.
@ rogerdodger:
Straquoto tutti e 3 gli interventi qui sopra, specialmente il primo….
Incredibile, la apple è riuscita a rendere simpatica persino la adobe. brutto, bruttissimo segno per apple…
@ rogerdodger:
Esattamente, fossi ceo di Apple avrei fatto esattamente la stessa cosa.
Le applicazioni IPhone si svilupano in Objective-c. punto.
Salve a tutti,
sono un designer e sviluppatore Flash nonché utente Apple da qualche anno. Ho letto l’articolo e tutti i commenti e, mi sembra, ci sia un po’ di confusione. Da un lato c’è la questione della mancanza del Flash player nei dispositivi mobile Apple. Giusta o sbagliata che sia è una scelta di Apple su cosa far girare sui propri device, e questo può starmi bene. Giusto per dire i browser integrati nelle varie console, ps3, x360 e wii, hanno versioni limitate o addirittura è assente flash player, non mi sembra che nessuno si sia lamentato (io sì ma vabbè… ;)
Quanto fatto da Apple e riportato in questo articolo però è diverso. Non si parla di flash player o di codice interpretato, ma di applicazioni native. In pratica con la nuova CS5 io sviluppatore Flash potrò esportare la mia app scritta in actionscript per iPhone, sarà il compilatore Adobe a creare il codice C necessario. La mia app dovrà in ogni caso passare per il controllo Apple e l’appstore, come tutte le altre. A titolo informativo ci sono già delle applicazioni create con la beta della CS5 nello store, e funzionano brillantemente.
Questa mossa di Apple però è una vera mazzata, e con un certo tempismo direi. In pratica toglie la possibilità ai designer e sviluppatori Flash di portare le loro creazioni su iPhone. Se vuoi farlo devi farlo con gli strumenti che vogliono loro. Questo non lo trovo accettabile.
Se io scrivo la mia app con blocco note o con Eclipse, che differenza fa se il risultato è un’app nativa? Se l’app creata si interfaccia solo con le API da Apple definite, cosa importa come viene creata? Faranno storie se l’icona la disegno in Photoshop?
Penso che questa mossa sia da vedere in una chiave esclusivamente di marketing: Apple, tendenzialmente, non vuole che la stessa app sia disponibile su iPhone, su Android o altra piattaforma mobile. Cosa che con Flash CS5 sarebbe possibile. L’esperienza dei device Apple deve essere esclusiva e visto che Apple fa della user experience uno dei suoi punti di forza ha fatto una mossa per mantenere l’esclusiva.
Un’altra considerazione è lo sviluppo di software multipiattaforma. Se dovessi sviluppare un’app che gira identica su molti device devo per forza cercare il minimo comune denominatore tra i dispositivi. Molto probabilmente non sfrutterei al massimo il singolo device, ma avrei un parco vendite molto più ampio (si veda ad esempio i titoli multipiatta su console ps3 e 360, solitamente sono meno impressionanti delle esclusive). Chiaramente si possono fare delle ottimizzazioni per il singolo dispositivo, ma sono costi aggiuntivi che non tutti possono sostenere.
Dal punto di vista di Apple ha fatto una mossa sensata ed anche condivisibile.
Dal punto di vista dello sviluppatore è una cosa assurda che mi vengano ad imporre che strumenti usare quando il risultato è il medesimo. è come se mi dicessero: “da domani puoi solo lavorare con la mano sinistra, impara”.
Scusate per il post fiume :)
Ma scherzi? Imporsi grazie ai banner? Ma la volete finire di fare propaganda? Capisco che giocate in casa ma per spararle così grosse…
Le nuove condizioni poste da Apple sono davvero preoccupanti: Allo sviluppatore ed alle software house viene tolta qualsiasi possibilità di scegliere strumenti e linguaggi alternativi a quelli imposti da Apple. Non è solo un problema di Flash si o no, queste condizioni tagliano fuori anche altri progetti interessanti come Monotouch e limitano fortemente le realtà che non lavorano con object-c o c.
Il mercato del mobile è in rapida evoluzione e mi auguro che una sana competizione tra le varie realtà possa garantire a noi sviluppatori maggiore libertà di scelta e agli utenti finali un maggior numero di prodotti/app di qualità.