di  -  mercoledì 13 aprile 2011

Android sembra destinato a diventare il sistema dominante nel settore mobile (che in futuro sarà orientato per buona parte sugli smartphone), almeno secondo le ultime stime, grazie a una crescente adozione da parte dei produttori unita alla disponibilità anche su terminali di fascia più economica (se ne trovano sui 100€).

La presenza del Marketplace è anch’essa di fondamentale importanza per fornire agli utenti quello che ci si aspetta da questi dispositivi: il software. Sappiamo bene che una piattaforma può essere “bella” quanto si vuole, ma senza software è destinata al declino.

Un altro elemento che ha contribuito al successo, specialmente nella fascia d’utenza più “smanettona”, è il concetto di sistema “aperto”, che ha consentito il praticare e diffondersi di personalizzazioni fra le più disparate.

Questa “apertura” finora era stata garantita dalla disponibilità dei sorgenti di Android, rilasciati da Google (che comunque acquisì l’azienda ideatrice del progetto originale), che in teoria dovrebbero consentire un controllo e una customizzazione completi dei dispositivi.

In realtà la situazione non è così semplice, in quanto Android risulta costituito da un “cocktail” di elementi che, messi assieme, concorrono a definire la piattaforma finale: il kernel, le librerie, i driver, la virtual machine, il software (le applicazioni).

Il kernel è un fork di Linux (e tale sembra destinato a rimanere, a causa di alcune divergenze), di cui sono ovviamente disponibili i sorgenti, in quanto il codice di Linux è sotto GPL, per cui la distribuzione di eventuali binari comporta l’obbligo del rilascio dei sorgenti.

Delle librerie possono essere disponibili i sorgenti, oppure no (come nel caso di quelle per l’accesso al Marketplace o al GPS, ad esempio). Quelle rilasciate da Google in genere sono coperte da licenza Apache.

Lo status dei driver è simile a quello delle librerie, ma con una maggior tendenza a una chiusura dei sorgenti, in quanto si tratta di codice di interfacciamento con l’hardware, che è a carico del produttore; a maggior ragione se si tratta di prodotti coperti da brevetti e licenze (abbastanza comuni in questo contesto).

La virtual machine, Dalvik, deriva da un precedente progetto ed è open source. Come per molto altro codice, utilizza la licenza Apache.

Il software in dotazione va dagli strumenti di supporto al kernel (comandi vari e shell, ad esempio), ad accessori forniti dal produttore, fino alle classiche applicazioni utilizzate poi direttamente dagli utenti. Anche qui, è possibile che siano presenti i sorgenti oppure no (come nel caso di quelle di Google), e le licenze eventualmente utilizzate possono essere di tipo diverso.

Fino alla versione 2.3 (“Gingerbread”), Google ha sempre rilasciato i sorgenti di Android (tranne per le librerie e il software di cui ha sempre fornito soltanto i binari, come già detto), ma con “Honeycomb” (l’attesa 3.0) ha disatteso le aspettative, dichiarando che ciò avverrà in futuro, senza comunque indicare quando.

La decisione ha ovviamente suscitato scalpore e “scandalizzato”. Successivamente sono arrivate alcune precisazioni, ma francamente le motivazioni le considero risibili. Una volta rilasciati i sorgenti tornerebbe lo spettro della “frammentazione”, fonte di preoccupazioni in casa Mountain View.

In ogni caso quest’episodio non fa che confermare, semmai ci fossero ancora dei dubbi, che gli interessi di Google possono tranquillamente calpestare le filosofie e gli ideali che coltiva una certa frangia dell’utenza di questo genere di dispositivi.

Era già successo e ne abbiamo già parlato in passato, in occasione dell’ingiunzione di Google nei confronti di una famosa modifica, CyanogenMod. Ma potremmo citare anche la rimozione forzata di alcune applicazioni “scomode”, l’ultima delle quali, Grooveshark, ha destato anch’essa stupore, trattandosi di una politica affine alla concorrente Apple.

Un’altra tegola sulla testa potrebbe arrivare dalla decisione paventata di concentrarsi esclusivamente sull’architettura ARM, a discapito di altre soluzioni, prima fra tutte quelle di Intel (altra concorrente col progetto Meego).

Google conferma, insomma, la sua volontà di dominare e indirizzare Android, anche con decisioni molto forti e liberticide, alcune volte cozzando anche con la concorrenza.

D’altra parte lo sviluppo è interamente nelle sue mani. E’ sempre lei che concede l’utilizzo di determinate tecnologie soltanto a fronte di determinati requisiti che il produttore si deve impegnare a rispettare. Lo stesso vale per gli sviluppatori che vogliono accedere alle future versioni di questa piattaforma mobile.

Se nella mente cominciano ad affiorare Apple e Microsoft, con la loro gestione chiusa e centralizzata (di cui comunque si sono visti i frutti, almeno per la prima che ha, di fatto, cambiato questo mercato), con scrupolosi controlli, beh, non è certo un caso, visti i comportamenti tenuti da BigG.

La situazione non è chiaramente la stessa, ma considerati tutti gli elementi in gioco non possiamo parlare di piattaforma “aperta” e “libera”. Perché oggettivamente mancano i sorgenti (dell’ultima versione), e finché Google non li rilascerà la piattaforma di fatto è e rimane chiusa (e per il futuro potrebbe fare lo stesso o decidere di non rilasciarli); ma in ogni caso, e come già detto, alcuni pezzi rimarranno tali. E poi perché Google ha monopolizzato la piattaforma di cui tiene saldamente le redini, imponendo restrizioni a partner e sviluppatori.

Sì, sei libero di fare tante cose, ma non tutto quello che vorresti e, soprattutto, siamo ben lontani dai canoni con cui un progetto di questo tipo viene sviluppato quando parliamo di sistemi “aperti”, con buona pace di chi ama pensare che sia così…

72 Commenti »

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.

  • # 1
    Riuzasan
     scrive: 

    Tutto quello che vuoi Cesare, ma esiste un’alternativa che offre la medesima qualità e una libertà lontanamente simile?
    Assolutamente no.
    O si abbraccia in toto la filosofia di Apple (per restare in ambito “qualità”), oppure non ci sono altre scelte (personalmente non considero WP7 una reale alternativa nel mercato degli os per mobile devices).
    Il problema o la fortuna è tutta lì: attulmente il leader del mercato mobile è un OS mediamente aperto, mediamente libero, ottimamente strutturato, con un occhio di riguardo notevole per lo sviluppatore …
    Vogliamo prendere invece in considerazione chi è il leader nel mondo desktop ad esempio??
    Penso che il succo sia tutto lì. :)

  • # 2
    Pluto
     scrive: 

    Mi sembra strano che Google non rilasci i sorgenti, non dovrebbe essere un rilascio contemporaneo dei sorgenti con i binari?

    Spero comunque che in futuro Android possa essere più aperto di quanto non lo sia oggi.

  • # 3
    HostFat
     scrive: 

    A mio parere rilasceranno i sorgenti di Android 3.0 per tablet ( o 3.1 ) e 2.4 per mobile durante il prossimo Google I/O :)

  • # 4
    Daniele
     scrive: 

    Nell’ambiente desktop, dove hanno sempre dominato le soluzioni proprietarie, è nato GNU/Linux e si è ritagliato il suo spazio con centinaia di distro differenti.
    Nel mobile si parte da una situazione di gran lunga migliore, molto codice è già open, con il tempo nasceranno delle alternative open anche alle porzioni di codice oggi proprietarie, siano essere librerie, driver e applicazioni.

  • # 5
    Devon
     scrive: 

    Da licenza GPL, danno i sorgenti su richiesta e a chi distribuiscono il software compilato. ASUS, da parte sua, sta già re-distribuendo i sorgenti, poiché sta già vendendo le prime macchine con installato Android 3.

  • # 6
    zephyr83
     scrive: 

    http://www.androidiani.com/news/andy-rubin-pone-fine-alle-voci-su-honeycomb-27615

    E….
    http://www.androidiani.com/applicazioni/sviluppo/google-insieme-ad-intel-per-un-tablet-android-27724

    Finché usano certe licenze nn è che possono fare quello che vogliono! Qualche ritardo (magari voluto) ci può stare ma le licenze parlano chiaro.
    Riguardo il solo supporto ARM nn avrebbe senso, soprattutto cn le nuove piattaforme mobile di intel. Google in fondo nn produce hardware, poco le cambia supportare arm o x86! Poi una delle cose migliori di basarsi su una virtual machine è proprio questo.

  • # 7
    Cael
     scrive: 

    Credo che la scelta di Google sia anche tardiva. Evidentemente si sono resi conto che la frammentazione a cui sta andando incontro Android rischia di compromettere il positivo andamento del prodotto stesso. Non mi sorprenderebbe assolutamente trovarmi in futuro in una situazione con

    Interfaccia non modificabile, come i concorrenti
    Aggiornamenti direttamente da Google, come con WP7
    Standardizzazione dei requisiti per l’installazione, come i concorrenti.

    E tutto questo per affermare quella che in gergo tecnico si chiama Brand Identity, cosa estremamente importante ed estremamente remunerativa.

  • # 8
    zephyr83
     scrive: 

    Ma sta storia della frammentazione nn la capisco! ma dov’è il problema??? Su pc nn mi pare sia stato un problema quella della frammentazione, anzi ha contribuito a portare al successo i computer ibm compatibili con sistema operativo microsoft, al contrario di altre soluzioni.
    Inoltre è grazie alla possibilità di personalizzare l’interfaccia che i vari produttori hanno preferito android ad altri! Htc cn la SENSE ci sta puntando molto. Inoltre dal market si può installare un launcher a piacimento (ce ne sn di uguali anche a quello di WP7). Assurdo impedire ai costruttori di realizzare interfacce personalizzate e poi permette di installarle dal market!!
    A sto punto perché si dovrebbe preferire android a windows phone ad esempio?
    Per gli aggiornamenti se google voleva poteva già farlo cn i terminali marchiati google experience (vedi il magic di htc) e invece nisba! Questo perché è difficilissimo gestire una cosa del genere se nn sei tu a produrre direttamente il telefono! Fa già fatica Apple a gestire un modello l’anno e deve tagliare funzioni (anche se in alcuni casi lo fa per interessi propri) e ne sta avendo molti microsoft che è costretta ad avere il supporto dei costruttori (cosa ovvia) con soli 10 modelli (e nn sn mancati ugualmente inconvenienti). nn è come sui pc che se qualcosa va male ti vai a scaricare i driver! Su un telefono dopo l’aggiornamento deve funzionare TUTTO subito!
    Android si è diffuso perché i produttori hanno potuto personalizzarlo sia per quanto riguarda il software che l’hardware e arrivare a produrre terminali anche da 100 euro (e meno). Se uno si compra un ideos a 100 euro e pretende di avere le stesse prestazioni di un nexus one da 500 euro allora nn ha capito niente ed è un problema suo!! Idem per chi si compra un vecchio iphone (ovviamente usato) e si lamenta perché nn vanno alcuni giochi o manca addirittura il game center! ma lo stesso discorso vale per quelli che si comprano un computer cn scheda grafica integrata e vogliono giocare a crysis!!! Che facciamo, imponiamo hardware standard per i pc?
    E poi android è open e libero! ognuno può prendere i sorgenti e farne quello che vuole secondo le licenze! L’unica cosa su cui può far presa google sn le google app e quindi sul market e in parte lo fa: se vuoi avere accesso al market devi realizzare un modello cn modulo 3g (anche se si rimedia ugualmente, vedi tablet archos). Ed era proprio sulle google apps che avevano fatto storie a Cyanogenmod.
    Come ha scritto già qualcuno altro qui su AD (forse Alessio Di Domizio), android è davvero il nuovo windows in ambito smartphone e sta di nuovo funzionando nonostante un mercato molto agguerrito.
    Questo della frammentazione è un falso problema! Certo qualche inconveniente agli sviluppatori lo porta ma nulla in confronto ai vantaggi!!!

  • # 9
    Cesare Di Mauro (Autore del post)
     scrive: 

    @Riuzasan: volevo mettere in chiaro come stessero le cose.

    Il succo del discorso per me rimane il solito, e perdonami se scriverò un’ovvietà: l’importante è ciò che interessa alla gente. Ed è il motivo per cui iPhone prima e iPad poi hanno venduto e continuano a vendere così tanto…

    Sulla “libertà” ci sarebbe di che discutere. Sicuramente non si sarà sentita libera la ventina di sviluppatori che finora s’è vista rimuovere l’applicazione dal Marketplace…

    Riguardo alla citazione del desktop, non ho colto. Potresti essere più chiaro, cortesemente?

    @Daniele: dopo 17 anni Linux continua ad avere meno dell’1% di quota di mercato, e il fatto di avere più di 600 distro (non so se sono arrivate al migliaio adesso) non aiuta di certo.

    Vero è che Windows ha a che fare con la “frammentazione”, ma questa riguarda le periferiche, l’hardware. Per il resto il sistema è “omogeneo” e ben definito. Idem per OS X, dove la frammentazione, sempre riguardo all’hardware, è ancora più ridotta.

    Ma Linux deve avere a che fare con la frammentazione dell’hardware, come gli altri quindi, ma anche con quella delle interfacce grafiche, del software in dotazione, il gestore dei pacchetti, e persino sulle directory e i file che cambiano da una distro all’altra (alla faccia di LSB).

    Per Android la situazione non la vedo simile a Windows, ma a Linux, appunto.

    @Devon: come già scritto nell’articolo, per il codice coperto da GPL sono obbligati a fornire i sorgenti. Il problema con Honeycomb non è il codice GPL, ma quello coperto da licenza Apache, per il quale non c’è nessun obbligo del genere. E infatti finora non si trova.

    @zephyr83: il primo dei due link non dice NULLA che già non si sapesse e che è stato anche riportato nei vari siti (di cui ho fornito anche dei link nell’articolo).

    Di fatto la situazione è quella che ho descritto nel pezzo.

    Riguardo al supporto Intel, vedremo, visto che Meego è un concorrente diretto di Android. Al momento sono circolate le voci della chiusura a favore di ARM proprio per evitare l’n-esima frammentazione (ci metterei che MIPS, che è in corsa come architettura alternativa ad ARM, anche se è molto dura competere con quest’ultima), segno che qualcosa bolle in pentola sull’argomento.

    @Cael: riguardo all’installazione di Android, come dicevo nell’articolo, ci sono già dei requisiti che i produttori devono soddisfare. E idem per gli sviluppatori.

    @zephyr83: sulla frammentazione e sull’hardware “standard” dei PC vedi sopra. Poi se già Apple e Microsoft hanno difficoltà a gestire pochi modelli / produttori, puoi immaginare quanto sia difficile la situazione di Android con l’estrema personalizzazione che offre.

    Riguardo sempre all’hardware “standard”, Apple ha poche e precise specifiche, mentre Microsoft ha imposto delle specifiche minime, per cui gli sviluppatori hanno vita più facile da questo punto di vista (specialmente per WP7, al momento).

    Su Android “libero” e “aperto” come ho già detto si tratta di un’affermazione priva di fondamento.
    Non è libero perché hai dei vincoli anche stringenti (e proprio quelli di Cyanogenmod, che hai citato, lo sanno bene; per non parlare di quelli che si sono visti cancellare l’applicazione dal Marketplace).
    Non è aperto perché non ci sono TUTTI i sorgenti a disposizione.

    Sic et simpliciter…

  • # 10
    Devon
     scrive: 

    “Il problema con Honeycomb non è il codice GPL, ma quello coperto da licenza Apache, per il quale non c’è nessun obbligo del genere. E infatti finora non si trova.”

    Quale problema? Perché dovresti aspettarti di vedere le loro modifiche?
    Se non richiesto dai detentori del copyright, non c’è alcun motivo per aspettarsi la distribuzione dei sorgenti. D’altronde, mi chiedo come possa parlare di problema per la mancanza di libertà, riguardo software trattato correttamente con le licenze che dici di preferire ed essere più libere. Non era la GPL ad essere “liberticida”? Ti chiedo scusa, ma davvero non riesco a conciliare questi tuoi timori di oggi con le parole di tempo fa. Ad ogni modo, spero che nessuno stia trattenendo il fiato, altrimenti lo troveremo scoppiato come una rana. Corporazioni, bisogna aspettarsi sempre almeno un po’ di meno di quanto la legge le obbliga. Non è questa, la norma?

  • # 11
    Marco
     scrive: 

    “dopo 17 anni Linux continua ad avere meno dell’1% di quota di mercato”

    Ehm, parliamo specificatamente di desktop immagino, perché all’infuori di quel segmento la situazione è ben diversa in realtà.

  • # 12
    Riuzasan
     scrive: 

    Cesare intendo dire che Android, come OS per sistemio mobile, resta un sistema assolutamente libero ed appagante rispetto al suo “concorrente” in ambito dessktop (aka Windows).
    Ci saremmo potuti ritrovare oggi con il solo IOS semmai in concorrenza con WP7 …
    Insomma di nuovo un mercato ancorato al vecchio modello di total closed.
    Indi di poi non si avrebbero 20-30 sviluppatori su 20.000 scontenti, ma tutti bene o male scontenti per il tipo di modello di sviluppo/mercato completamente imposto dall’alto.
    Devo essere più chiaro: è più che ovvio che Android fa solo bene al mondo degli OS ed è una delle grandi speranze del futuro assieme allo sbarco di ChromeOS sui sistemi desktop.

  • # 13
    Marco
     scrive: 

    “Devo essere più chiaro: è più che ovvio che Android fa solo bene al mondo degli OS”

    Completamente d’accordo, anche se, giusto per contestualizzare, stiamo parlando di aziende con fatturati da 75, 65 e 30 miliardi di dollari (in ordine Apple, MS e Google), per le quali “free software” e “libertà” sono principalmente dei veicoli per il loro business.

  • # 14
    zephyr83
     scrive: 

    @Cesera Di Mauro

    Android è libero e aperto senza dubbio, le licenze parlano chiaro e il sorgente lo puoi liberamente scaricare….arriverà anche quello di honeycomb.
    Le google apps sn dei programmi! il sistema operativo funziona anche senza quei programmi. Il market nn è libero e ci sn delle regole, google ha la possibilità e il diritto di rimuovere tutte quelle applicazioni che secondo lei nn rispettano i termini del contratto. Certo critico anche io certe scelte (basta ricordare il primo caso quando hanno tolto le applicazioni per il tehtering su pressione degli operatori) ma volendo ci sn market alternativi! Anzi puoi scaricare l’applicazione da un sito internet e installarla dal telefono stesso.
    Riguardo il paragone cn linux per pc nn torna molto! Nn ci sn librerie differenti, parti del sistema operativo differenti, gestori di pacchetti differenti! Ci sn solo launcher differenti che sn programmi che si possono installare o disinstallare ma il sistema operativo è sempre quello e i programmi sn sempre quelli. C’è il “problema” della frammentazione hardware ma alla fine c’è anche in windows phone e in iOs. Ovviamente su android è più accentuata la cosa ma viene usato da più costruttori e vengono realizzati tantissimi problemi!!
    Anche per i programmatori il problema è “relativo”, c’è qualche inconveniente ma anche altri vantaggi! A proposito propongo un articolo recente pubblicato qui su AD
    http://www.appuntidigitali.it/15565/android-visto-da-dentro/
    a quanto pare nn sembra essere così problematica come cosa!
    Riguardo la licenza Apache, questa è una licenza di software libero (non open source, ma proprio libero), compatibile con la GPL v3 non copyleft. La cosa effettivamente nn mi è chiara, ho trovato soltanto che nn c’è obbligo di ridistribuire i sorgenti in caso di modifiche, quindi se i vari costruttori fanno qualche modifica nn sn costretti e rilasciare il lavoro fatto! Ma questo nn dovrebbe fare chi realizza il sistema.
    Che android sia open source e libero nn vi è dubbio, le licenze parlano chiaro! Che ci siano alcuni programmi come le gapps chiusi è un altro discorso………nn è che se su ubuntu installo Opera Browser allora il sistema operativo nn è più open source e libero!!!

  • # 15
    Cesare Di Mauro (Autore del post)
     scrive: 

    @Devon: non prendiamoci in giro. Quando si è parlato di “libertà” il discorso non era relativo ai sorgenti, ma alle imposizioni di Google.

    Non era relativo alla libertà concessa da una licenza come la GPL.

    Sono due discorsi diversi.

    @Marco: sì, parliamo di desktop perché Daniele nel suo commento trattava questo settore di mercato.

    @Riuzasan: sulla concorrenza nulla da dire. Fa bene ai consumatori.

    Da sviluppatore, invece, sono scontento della molteplicità di piattaforme, perché significa che se voglio realizzare qualcosa o deve scegliere il o i target, oppure devo avere abbastanza risorse per supportarli tutti.

    Per il resto non vedo perché gli sviluppatori avrebbero dovuto essere per lo più scontenti se non ci fosse stato Android e, quindi, soltanto con iPhone e Windows Phone 7. A parte il fatto che si tratta di prodotti recenti, visto che il mercato mobile c’era già, ed era… particolarmente frammentato grazie al caos della piattaforma J2ME.

    Prova a parlare con qualche sviluppatore J2ME e vedi un po’ se era contento della situazione esistente. E digli cosa ne pensa rispetto ad iPhone e/o WP7, se ha esperienza con queste piattaforme.

    @zephyr83: no, non ci sono dubbi, ma del contrario. Android NON è né “libero” né “aperto”, e t’ho già spiegato il perché.

    E no, non è soltanto per Honeycomb il problema, perché la situazione era preesistente a quest’ultima versione di Android.

    Infatti le imposizioni di Google esistevano già, come c’erano già le librerie closed e proprietarie, e idem per certe applicazioni. Honeycomb ha semplicemente portato nuovamente alla ribalta la questione perché, almeno per adesso, non sono disponibili nemmeno i sorgenti sotto licenza Apache che prima, invece, erano stati rilasciati da Google.

    Questo se parliamo di Android come piattaforma, e dovresti fartene una ragione.

    Poi se di Android prendi le sole parti (aperte e senza vincoli) che t’interessano puoi farlo sicuramente, ci mancherebbe. Ma parliamo di qualcos’altro allora, se era questo che intendevi. Per quanto frammentaria, Android una “base” ce l’ha; se togli qualche pezzo della “base”, non possiamo più chiamarlo così.

    Il paragone con Linux permane, perché ti ripeto che non c’è l’omogeneità che, invece, trovi su Windows oppure su OS X.

    Riguardo all’articolo di AD del mio collega, ovviamente l’ho letto, come tutti gli articoli che pubblichiamo. A maggior ragione visto che si tratta di un argomento che personalmente m’interessa. Ed è chiaro che Android presenti dei vantaggi e degli svantaggi, ma come per tutte le cose.

    Io, pur essendo sviluppatore (anche di applicazioni mobile negli ultimi mesi, visto che ho cambiato gruppo di lavoro e mi occupo di questo ormai), ho un punto di vista un po’ diverso, ma preferisco parlarne fra qualche mese, quando avrò consolidato la mia esperienza nel settore.

  • # 16
    zephyr83
     scrive: 

    @Cesare Di Mauro

    No android è open e libero! Alcuni programmi non lo sono ma sei liberissimo di prendere i sorgenti di android AOSP ovvero Android Open-Source Project. Ovviamente mancano le parti proprietarie come il market e altre google apps (maps, gmail e altre). Ma il sistema operativo c’è e funziona!! Ti richiedo, se su ubuntu installo Opera per caso il sistema operativo nn si può più definire aperto? nn mi pare! Idem per android! Frammentazione a livello software nn c’è, si può cambiare launcher, ma anche su windows si può fare!
    La frammentazione hardware richiede per gli sviluppatori qualche lavoro in più è ovvio ma le api aiutano (come scritto nell’altro articolo di AD che ho linkato)! i vecchi symbian a livello hardware nn cambiavano molto fra loro eppure da una marca all’altro c’erano più problemi di quanti nn ce ne siano adesso cn android (proprio perché le API messe a disposizione facevano schifo), li si che me le ricordo le lamentele degli sviluppatori!
    Il problema di java2me è che ogni costruttore implementava una propria JVM e alcuni aggiungevano anche qualcosa di proprio! Ovvio che era un casino inoltre nn tutti i produttori stavano al passo cn le novità! cn android NON c’è sto problema la virtual machine è uguale per tutti…….il sistema è sempre quello. Lo sviluppatore deve preoccuparsi del tipo di processore se vuole ottimizzare un meglio il codice sfruttando l’NDK (ad esempio flash, firefox e alcuni lettori multimediali richiedono degli arm V7) e la risoluzione del display. In fondo è così anche per iphone/ipod touch/ipad. E sarà così anche per WP…….anzi cn l’arrivo di nokia che potrà personalizzarlo un po’ (anche nell’interfaccia) ci sarà qualcosa di analogo ad android! ovviamente in maniera ridotta. Per ora gli sviluppatori di WP si lamentano perché ci sn troppe limitazioni, poche api, pochi terminali (vedi sempre articolo del tuo collega).
    Android è molto più simile a windows su pc che a linux desktop, ma mooolto!
    inoltre fare lo sviluppatore per molti è un lavoro e nn sta scritto da nessuna parte che la pappa deve esser sempre pronta :) certo sarebbe bello dover conoscere un solo linguaggio di programmazione per un’unica piattaforma, ma la realtà è ben diversa! Io vedo che ci sn software house (ma anche piccoli sviluppatori) che realizzano programmi addirittura per maemo e bada oltre a ios e android. Quelli di Angry Bird tanti problemi nn se li fanno, idem quelli di sygic (il navigatore). Se riescono a supportare addirittura più sistemi operativi vuol dire che il lavoro nn è così pesante e il gioco vale la candela! Io al massimo criticherei più che altro la scelta di usare java, “frena” più quello che la frammentazione dei sistemi operativi. Ovviamente parlo per chi è abituato a programmare con linguaggi c/c++. nn a caso i porting di alcuni programmi su android sn sempre più lunghi e spesso nn si ottiene lo stesso risultato! inoltre nn è neanche un java “standard” (diciamo così), ma una versione estesa di java2me

  • # 17
    Cesare Di Mauro (Autore del post)
     scrive: 

    @zephyr83:

    No android è open e libero! Alcuni programmi non lo sono ma sei liberissimo di prendere i sorgenti di android AOSP ovvero Android Open-Source Project. Ovviamente mancano le parti proprietarie come il market e altre google apps (maps, gmail e altre). Ma il sistema operativo c’è e funziona!! Ti richiedo, se su ubuntu installo Opera per caso il sistema operativo nn si può più definire aperto? nn mi pare! Idem per android!

    Capisco che con personaggi come Stallman sei abituato a cambiare i termini a tuo uso e consumo, ma Android non lo puoi ridefinire a tuo piacimento, per poter affermare che è “libero” e “aperto”.

    Android è una piattaforma (base) ben precisa costituita da diverse componenti, incluse quelle chiuse e proprietarie di Google. E inclusi anche i requisiti che quest’ultima impone a produttori e sviluppatori.

    E’ inutile che cerchi di rigirare la frittata cambiando le carte in tavola.

    Frammentazione a livello software nn c’è, si può cambiare launcher, ma anche su windows si può fare!

    Certo, lo possono fare ALCUNI smanettoni, ma normalmente nessuno fa; nemmeno tanti smanettoni.

    In ogni caso è una cosa che puoi fare DOPO; Windows di fabbrica te lo forniscono in un solo modo.

    Con Android, invece, appena accendi il terminale per la prima volta ti ritrovi con l’interfaccia che ti ha propinato il produttore.

    La frammentazione hardware richiede per gli sviluppatori qualche lavoro in più è ovvio ma le api aiutano (come scritto nell’altro articolo di AD che ho linkato)! i vecchi symbian a livello hardware nn cambiavano molto fra loro eppure da una marca all’altro c’erano più problemi di quanti nn ce ne siano adesso cn android (proprio perché le API messe a disposizione facevano schifo), li si che me le ricordo le lamentele degli sviluppatori!

    Il problema di java2me è che ogni costruttore implementava una propria JVM e alcuni aggiungevano anche qualcosa di proprio! Ovvio che era un casino inoltre nn tutti i produttori stavano al passo cn le novità! cn android NON c’è sto problema la virtual machine è uguale per tutti…….il sistema è sempre quello.

    Ti ricordi le lamentele, ma non com’era la situazione, e da quel che dici si vede che non ne hai la minima idea.

    Innanzitutto è falso il fatto che l’hardware non cambiava molto. C’erano anche grossi cambiamenti, e gli sviluppatori dovevano farsi un mazzo enorme per supportare display diversi, tastiere diverse, quantità di memoria (heap) estremamente variabile (da “è così poco che ci posso fare a stento una demo tipo Commodore 64″ a “ci faccio girare Half Life 2″), CPU con prestazioni dallo scandaloso all’eccellente, accelerazione video dall’inesistente al “ti faccio anche il caffé con tanto di shader”.

    Quanto alle API, non è che facevano proprio schifo: semplicemente si tratta di roba vecchia che, nell’arco degli ANNI (visto che J2ME è una delle piattaformi mobili più vecchie), sono state arricchite con le innovazioni hardware (all’inizio l’hardware era molto limitato e scarso) che hanno caratterizzato telefonini, palmari, e PDA.

    Ovvio che OGGI Android si presenti con delle API meglio organizzate, che coprono già tutto. Col senno di poi, sono tutti bravi (e neanche tanto, visto che Google ha cambiato API/ABI parecchie volte, scatenando le ire degli sviluppatori).

    In ogni caso è evidente che tu parli solo per sentito dire, perché non sai di nulla né dello sviluppo su mobile né dell’hardware che l’ha caratterizzato negli ultimi anni.

    L’unica cosa corretta che hai detto è che c’erano ANCHE VM sviluppate dai produttori, e che aggiungevano feature (che nessuno, però, prendeva in considerazione, a meno che non si trattasse di roba di Nokia che fosse disponibile su milioni di terminali).

    Lo sviluppatore deve preoccuparsi del tipo di processore se vuole ottimizzare un meglio il codice sfruttando l’NDK (ad esempio flash, firefox e alcuni lettori multimediali richiedono degli arm V7) e la risoluzione del display.

    L’NDK lascialo perdere che è immaturo, bacato, e documentato male. Difatti ne sconsigliano l’uso in favore dell’SDK (basato su Java).

    In fondo è così anche per iphone/ipod touch/ipad. E sarà così anche per WP…….anzi cn l’arrivo di nokia che potrà personalizzarlo un po’ (anche nell’interfaccia) ci sarà qualcosa di analogo ad android! ovviamente in maniera ridotta.

    Assolutamente no. Su iPhone ci sono 2 modelli di riferimento, per risoluzione e caratteristiche hardware; l’iPad è una piattaforma a se stante. Su WP7 c’è un solo modello (con soltanto la 480×800 come risoluzione), con delle specifiche hardware minime.

    Android a livello di hardware è estremamente variabile e ricalca, purtroppo, il caos di J2ME, Symbian, & co.

    Per ora gli sviluppatori di WP si lamentano perché ci sn troppe limitazioni, poche api, pochi terminali (vedi sempre articolo del tuo collega).

    Purtroppo continui a parlare per sentito dire, e nemmeno ti sei letto bene il pezzo del mio collega.

    Sulle limitazioni sono d’accordo. Ce ne sono, come quelle della gestione degli SMS, di cui ha parlato Fabio. E ci sarebbe di che discutere, comunque; sulla questione ho un mio personale punto di vista.

    Sul fronte delle API purtroppo non so su quale base fai affermazioni di questo tipo. Immagino che non hai la minima idea del framework .NET in dotazione a WP7 né di cosa offra Silverlight né, tanto meno, delle potenzialità di XAML. E ovviamente non ti sarai nemmeno preso la briga di provare uno dei tanti esempietti da far girare sull’IDE e con l’emulatore.

    Ti dico solo l’ultima cosa a cui ho lavorato di recente. Ha una gestione delle animazioni che è spettacolare (e me la sto ancora studiando, visti tutti gli strumenti a disposizione, che richiedono tempo e pratica per essere assimilati).

    In particolare, ho definito un paio di animazioni per due immagini, eseguendo un fading manipolandone l’alpha channel, tutto da XAML. Da codice m’è bastato un banale Transizione1.Begin() per far partire la prima, e Transizione2.Begin() per la seconda, e ho finito.

    Tutta roba per cui NON devi essere programmatore per lavorarci, visto che usi XAML per definirla. E usando Microsoft Blend Studio hai un IDE superlativo per lavorarci, definendo tutto a puntino senza toccare una sola riga di codice, e provando poi tutto con l’emulatore.

    Adesso dimmi tu se Android ti mette a disposizione qualcosa del genere. Dimmi se hai un IDE almeno lontanamente comparabile per fare le stesse cose, con la stessa facilità, comodità e velocità. Cioè, in soldoni, con una produttività comparabile.

    Android è molto più simile a windows su pc che a linux desktop, ma mooolto!

    Non mi pare proprio. Vedi sopra.

    inoltre fare lo sviluppatore per molti è un lavoro e nn sta scritto da nessuna parte che la pappa deve esser sempre pronta :)

    Guarda che non è che perché uno deve lavorarci deve anche soffrire e sbattersi a reinventare la ruota per l’n-esima volta.

    Anzi, chi lavora ha in genere l’esigenza di sbrigarsi quanto prima e di essere produttivo. La pappa pronta, se c’è, è meglio; MOLTO meglio. Così è possibile concentrarsi su “business logic” et similia.

    certo sarebbe bello dover conoscere un solo linguaggio di programmazione per un’unica piattaforma, ma la realtà è ben diversa!

    E’ difficile, e richiede dei sacrifici, ma è possibile. Ci sono degli strumenti che ti consentono di farlo.

    Io vedo che ci sn software house (ma anche piccoli sviluppatori) che realizzano programmi addirittura per maemo e bada oltre a ios e android. Quelli di Angry Bird tanti problemi nn se li fanno, idem quelli di sygic (il navigatore). Se riescono a supportare addirittura più sistemi operativi vuol dire che il lavoro nn è così pesante e il gioco vale la candela!

    Questo lascialo valutare a chi è del mestiere. Ci sono progetti, come i giochi, per cui vale la pena. Altri, come delle applicazioni, no. O comunque devi ricorrere a degli strumenti appositi (che spesso devi pagare profumatamente).

    La situazione non è così semplice come la vuoi dipingere. Soprattutto dimostri di non lavorare nel settore, perché non puoi prendere un caso e dire “ma questi sono riusciti a farlo”.

    Lavoraci anche tu, e poi voglio vedere se sei tanto ottimista e felice…

    Io al massimo criticherei più che altro la scelta di usare java, “frena” più quello che la frammentazione dei sistemi operativi. Ovviamente parlo per chi è abituato a programmare con linguaggi c/c++. nn a caso i porting di alcuni programmi su android sn sempre più lunghi e spesso nn si ottiene lo stesso risultato! inoltre nn è neanche un java “standard” (diciamo così), ma una versione estesa di java2me

    In realtà è molto simile alla classica J2SE (Java for desktop).

    Ti dirò: hanno fatto benissimo a puntare su Java, che almeno è un linguaggio managed e, quindi, più produttivo di roba come C/C++, oltre che molto diffuso.

    Se avessero scelto uno di questi ultimi, gli sviluppatori li avrebbero lapidati come minimo, e Android non avrebbe avuto tutto il successo che ha avuto e continuerà ad avere, con migliaia di applicazioni che arrivano.

    Soprattutto è da masochisti autolesionisti commettere lo stesso sbaglio che hanno già fatto Nokia con Symbian, Qualcomm con Brew, e parzialmente Apple con Objective-C (per la piattaforma mobile purtroppo NON c’è il garbage collector).

    Ripeto: tu non hai proprio idea di quello che c’è dietro lo sviluppo su mobile. Lascia perdere le leggende metropolitane, le mezze parole lette chissà dove.

    Informati, e poi ne riparliamo, ok?

  • # 18
    Z80Fan
     scrive: 

    Leggendo i commenti, mi sembra che il dibattito si crei principalmente sul significato di “Android”: solo un sistema operativo, cioè kernel, VM, librerie (zephyr83), oppure una completa piattaforma “chiavi in mano” (Cesare), con tutte le applicazioni a corredo.

  • # 19
    zephyr83
     scrive: 

    @Cesare Di Mauro

    Mi spiace ma sul settore della telefonia sei molto poco informato e si vede che nn lo segui! Non sn sviluppatore ma è un settore che seguo con passione da anni!!
    Intanto lasciamo perdere Stallman…..ma che ti ha fatto poveretto? hai gli incubi?
    Io la frittata non la giro, mi sa che sei tu che nn hai idea di come sia fatto Android! Il sistema operativo è libero e open source come da licenza. Ci sn dei software “accessori” di google proprietari! Certo importanti ma NON fondamentali. Le rom cyanogenmod NON comprendono le google apps che infatti si installano a parte DOPO. Il sistema operativo funziona benissimo anche senza! Lo scarichi tramite git, lo modifichi e te lo ricompili come vuoi! é come togliere windows media player da windows!!! Poi ripeto, su ubuntu mettendo Opera il sistema rimane sempre libero. Si può discutere sulle licenze e sull’obbligo di rilasciare il sorgente, forse c’è un “buco” a riguardo nn specificando i tempi di rilascio (anche dopo richiesta). E google può anche comportarsi in maniera poco corretta ma le licenze parlano chiaro! Se poi nn vengono rispettate o ci sn manovre per azioni poco chiare è un altro discorso! arrivavi prima al tuo obiettivo dicendo che google si fa il sistema operativo in casa e nn ha per niente uno sviluppo “open”! ecco così forse rendevi meglio l’idea del tuo discorso! Ma rimane un software libero….talmente libero che pure sul tablet di RIM si faranno girare le applicazioni di android e qualcuno ha già realizzato un virtual machine derivata per maemo/meego!

    Tanti anni fa il mio vecchi packard bell con windows 95 si avviava con il sistema Packard Bell Navigation :D Inoltre tutti i computer di marca hanno programmi preinstallati e utility proprie, a volte cambia anche il tema in maniera particolare. Il launcher differente su android nn mi pare un problema, è solo un programma, si può cambiare…….inoltre nn è che stravolge il sistema e riguarda soltanto home e launcher, basta! Alcuni comprano HTC proprio per l’interfaccia Sense che piace molto (interfaccia nata sul vecchio windows mobile).
    Sui vecchi symbian l’hardware nn era così eterogeneo come invece è adesso (per vecchi intendevo quelli al tempo del nokia 6600 o siemens sx1)! Le api facevano proprio schifo, chiedi a qualsiasi programmatore, era un inferno, spesso c’erano più api per fare la stessa cosa e nn si capiva bene quale si doveva usare, anche la documentazione era scarsina!!
    Per il discorso J2ME vedo che anche qui nn sei informato! Nn la faceva mica SUN! Ogni marca aveva la sua JVM e spesso il problema nn era l’hardware differente da modello a modello ma proprio la JVM che implementava meno “funzioni” rispetto ad un altra. I motorola si distingueva anche per avere una diversa gestione dei tasti funzione!!
    C’è un thread su hwupgrade su un bench java realizzato da sblantipodi dove puoi renderti conto di che porcherie di JVM che giravano anche su modelli cn hardware di rispetto (per l’epoca). Ripeto, non problema di HW ma di JVM troppo differenti fra loro! Il problema più grave era questo tant’è che molti preferivano concentrarsi solo sulle JVM di sonyericsson, nokia (e inizialmente anche motorola). Cn android nn è così, devi solo preoccuparti dell’hardware differente, ma il sistema è sempre lo stesso!

    I tool di sviluppo di windows phone non li conosco, nn ho mai detto che facciano schifo o che ci sia di meglio! non capisco perché hai sempre questa ansia per elogiare i prodotti microsoft! Ho detto che per ora gli sviluppatori si lamentano per i motivi che ti ho detto ma vedo che anche qui non sei informato! Ecco le novità che usciranno con Mango
    http://www.plaffo.com/2011/04/aggiornamento-mango-tutte-le-novita-sul.html
    hai letto? ben 1500 API introdotte!!! Attualmente manca addirittura il supporto socket! Si potranno anche avere finalmente navigatori turn-by-turn! Mi sa che quello che parla per sentito dire sei tu.
    Cmq android ha app inventor che è un tool di sviluppo ottimo anche per chi nn capisce niente di programmazione, puoi fare qualcosa in pochissimi minuti! Non so farti paragoni cn WP (nn mi pareva fosse questo il tema del discorso), ma forse meglio se chiedi ai tuoi colleghi più informati.

    Tornando sempre al discorso produttività e frammentazione io continuo a nn vedere il problema! Parliamo di numeri…….uno sviluppatore se vuole avere vita facile può prendere in considerazione solo il galaxy S e nexus S (praticamente stesso telefono) che hanno venduto milioni di esemplari in pochi mesi e hanno già una base di utenti enorme! Windows phone cn 10 modelli è circa a 2 milioni (in 8 mesi)! Che te ne fai dell’omegenità e della facilità di programmazione se nn vendi modelli? La frammentanzione di android ha contribuito a vendere così tanto!! I vantaggi li ha portati eccome!! Le grandi software house nel settore game hanno scelto un target e scartato molti modelli anche vendutissimi (vedi il vecchio milestone) tanto possono ugualmente contare su milioni e milioni di utenti! Se lo sviluppatore vuole ANCORA PIÙ mercato allora è costretto a sbattersi un po’ di più per supportare più modelli…….ma questo per avere ancora di più! Se nn ci fosse stata frammentazione, se nn ci fossero stati modelli da 100 euro questi sviluppatori nn avrebbero potuto contare anche su questi utenti, quindi è UN DI PIÙ, non un problema! Eppure a me il discorso sembra semplice!! ed è quello che è avvenuto nel mondo pc! nn mi pare che gli sviluppatori di crysis si siano preoccupati degli utenti cn scheda grafica integrata! Quindi perché dovrebbe essere un problema sta frammentazione?
    Inoltre ti ricordo che l’iphone 3gs è MOLTO più potente del 3g e il 4 è ancora PIÙ potente, ha display cn risoluzione maggiore, fotocamera frontale, giroscopio! e siamo a 3 modelli in 3 anni! poi ci sarebbero anche ipod touch e ipad! Se lo sviluppatore può decidere anche di basarsi solo sull’iphone 4! Se invece vuole il maggior numero di clienti possibili si preocucperà di supportare adeguatamente anche il 3g, l’ipod touch e magari pure l’ipad.
    Stessa cosa avverrà pure cn windows mobile appena si diffonderà maggiormente e soprattutto appena arriverà anche Nokia.

    Riguardo il linguaggio di programmazione ti sei smentito da solo con l’iphone! L’importante è avere numeri e fare successo, gli sviluppatori si adeguano! Infatti c’è stato il boom su iphone e i porting su android sn più difficoltosi! Android secondo me avrebbe avuto lo stesso successo (lato sviluppatori) anche cn un linguaggio “simil C”, anzi si sarebbero visti molto prima programmi multimediale (che sn stati molto problematici per molto tempo e alcuni porting tardano ancora ad arrivare), però avrebbe perso la comodità della virtual machine. Ogni cosa ha i suoi pro e contro!! Gli sviluppatori si buttano dove c’è campo e possibilità di guadagno!!

    Consiglio a te di informarti maggiormente sul settore mobile perché non sei molto ferrato! E lascia stare il povero Stallman tutte le volte, perché lo tiri sempre fuori? :D

  • # 20
    dotlinux
     scrive: 

    @zephyr83
    Occhio che non ne hai azzeccata una in due post lunghissimi.
    Se ne fai un terzo sbagliando ogni tua affermazione ti chiama Jerry Scotti per il Guinness dei primati.

  • # 21
    zephyr83
     scrive: 

    @dotlinux

    Davvero? Allora aspetto la chiamata anche se preferivo la D’Urso l’anno scorso!!! se intanto mi dici cosa nn ho azzeccato, me ne bastano 2 per ogni post, te ne sn grato!!

  • # 22
    Cesare Di Mauro (Autore del post)
     scrive: 

    @Z80Fan: cos’è Android lo definisce Google. Basta andare nel sito di riferimento ( http://www.android.com/ ), smazzarsi la documentazione a riguardo, e poi trarre le proprie conclusioni.

    @zephyr83:

    Mi spiace ma sul settore della telefonia sei molto poco informato e si vede che nn lo segui! Non sn sviluppatore ma è un settore che seguo con passione da anni!!

    Quindi tu, solo perché lo “segui”, vorresti insegnare al panettiere come si fa il pane?

    Intanto lasciamo perdere Stallman…..ma che ti ha fatto poveretto? hai gli incubi?

    E’ un esempio che calza. Stallman ama ridefinire le parole a proprio piacimento. Vedi libertà, ad esempio. O DRM.

    Tu fai lo stesso con Android. Per te Android è lo spezzatino che Google ti permette di fare togliendo di mezzo tutta la parte proprietaria.

    Io la frittata non la giro, mi sa che sei tu che nn hai idea di come sia fatto Android! Il sistema operativo è libero e open source come da licenza.

    Ma la licenza l’hai letta? Mi pare di no. Ecco qui http://static.googleusercontent.com/external_content/untrusted_dlcp/source.android.com/it//compatibility/2.3/android-2.3.3-cdd.pdf il link per la sola “compatibilità”. Adesso conta i MUST (sì, scritti quasi sempre in maiuscolo).

    Must. Che strano verbo. Chissà se suona bene accanto a “freedom”…

    Ci sn dei software “accessori” di google proprietari!

    No, ci sono anche delle LIBRERIE CHIUSE E PROPRIETARIE che fanno parte di Android. Ti è chiaro il concetto una buona volta o te lo devo continuare a ripetere all’infinito?

    Certo importanti ma NON fondamentali. Le rom cyanogenmod NON comprendono le google apps che infatti si installano a parte DOPO.

    Questo riguarda anche le librerie, se ti vai e vedere le indicazioni di questa modifica. Ti dicono come farti:
    1) il backup di tutto ciò che è proprietario;
    2) installare la modifica;
    3) rimettere a posto la roba di cui al punto 1).

    Ma Android non era “libero”?

    Il sistema operativo funziona benissimo anche senza! Lo scarichi tramite git, lo modifichi e te lo ricompili come vuoi! é come togliere windows media player da windows!!!

    Che funzioni anche senza nessuno lo nega. Puoi fare a meno delle Google Apps, del Marketplace, del GPS, e di chissà quanta altra roba proprietaria.

    Ma non lo chiamare più Android…

    Poi ripeto, su ubuntu mettendo Opera il sistema rimane sempre libero.

    Esempio completamente sbagliato. Su Ubuntu non puoi mettere librerie proprietarie senza averne la licenza. E Android senza tutte le parti di cui si compone non è più Android.

    Si può discutere sulle licenze e sull’obbligo di rilasciare il sorgente, forse c’è un “buco” a riguardo nn specificando i tempi di rilascio (anche dopo richiesta).

    Forse? Mancano i sorgenti con licenza Apache: più chiaro di così…

    E in ogni caso, anche quando li pubblicheranno, mancheranno sempre i sorgenti di alcuni componenti.

    E google può anche comportarsi in maniera poco corretta ma le licenze parlano chiaro! Se poi nn vengono rispettate o ci sn manovre per azioni poco chiare è un altro discorso!

    No, il discorso è chiaro, proprio grazie alle licenze proprietarie e ai requisiti imposti da Google: Android NON è né libero né aperto.

    arrivavi prima al tuo obiettivo dicendo che google si fa il sistema operativo in casa e nn ha per niente uno sviluppo “open”! ecco così forse rendevi meglio l’idea del tuo discorso!

    Veramente l’ho scritto. Li leggi gli articoli, o ti fermi solo al titolo?

    Ma rimane un software libero….talmente libero che pure sul tablet di RIM si faranno girare le applicazioni di android e qualcuno ha già realizzato un virtual machine derivata per maemo/meego!

    Come no. Vatti a leggere la documentazione e i requisiti a cui deve sottostare un produttore per utilizzare Android.

    Sulla virtual machine, sempre dal link di cui sopra:

    “3.7. Virtual Machine Compatibility

    Device implementations MUST support the full Dalvik Executable (DEX) bytecode specification and Dalvik Virtual Machine semantics”

    MUST. Che vorrà dire?

    Tanti anni fa il mio vecchi packard bell con windows 95 si avviava con il sistema Packard Bell Navigation :D Inoltre tutti i computer di marca hanno programmi preinstallati e utility proprie, a volte cambia anche il tema in maniera particolare. Il launcher differente su android nn mi pare un problema, è solo un programma, si può cambiare…….inoltre nn è che stravolge il sistema e riguarda soltanto home e launcher, basta! Alcuni comprano HTC proprio per l’interfaccia Sense che piace molto (interfaccia nata sul vecchio windows mobile).

    Come fai a confondere l’interfaccia di Windows, che non cambia, con le applicazioni installate dalle terzi parti, lo sai solo tu.

    Sui vecchi symbian l’hardware nn era così eterogeneo come invece è adesso (per vecchi intendevo quelli al tempo del nokia 6600 o siemens sx1)!

    Ma vecchi di quanto? Se ti riferisci ai PRIMI modelli dotati di J2ME, non ho diffocoltà a crederti.

    Ma già qualche anno dopo c’erano di versi modelli con hardware diverso.

    Le api facevano proprio schifo, chiedi a qualsiasi programmatore, era un inferno, spesso c’erano più api per fare la stessa cosa e nn si capiva bene quale si doveva usare, anche la documentazione era scarsina!!

    Sulle API proprietarie / aggiuntive non ti ho mica contraddetto.

    Io mi sono riferito a quelle offert da J2ME, che erano ben definite, anche se poi sono state nel tempo aggiungendo altra roba.

    Per il discorso J2ME vedo che anche qui nn sei informato! Nn la faceva mica SUN!

    Ogni marca aveva la sua JVM e spesso il problema nn era l’hardware differente da modello a modello ma proprio la JVM che implementava meno “funzioni” rispetto ad un altra. I motorola si distingueva anche per avere una diversa gestione dei tasti funzione!!
    C’è un thread su hwupgrade su un bench java realizzato da sblantipodi dove puoi renderti conto di che porcherie di JVM che giravano anche su modelli cn hardware di rispetto (per l’epoca). Ripeto, non problema di HW ma di JVM troppo differenti fra loro! Il problema più grave era questo tant’è che molti preferivano concentrarsi solo sulle JVM di sonyericsson, nokia (e inizialmente anche motorola).

    Ma non hai proprio idea di quello che dici. J2ME l’ha creato Sun! Hai capito? Sun! E ne detiene ancora i diritti (Oracle).

    E sempre Sun ha offerto un’implementazione di base (o riferimento), a cui i produttori, se volevano, apportavano delle modifiche, e le ottimizzavano per il loro hardware (ad esempio per sfruttare la Jazelle: http://www.appuntidigitali.it/4887/jazelle-laccelerazione-java-secondo-arm/ ).

    Ma questa è storia. Per chi la sa, ovviamente.

    Riguardo all’hardware, era ed è estremamente variegato, e bisognava provvedere a tante versioni J2ME per riuscire ad abbracciare quanti più terminali possibile. Anche qui, chi c’ha lavorato sa com’era e com’è la situazione.

    Cn android nn è così, devi solo preoccuparti dell’hardware differente, ma il sistema è sempre lo stesso!

    A livello di funzionalità di base non ho mai avuto nulla da dire.

    I tool di sviluppo di windows phone non li conosco, nn ho mai detto che facciano schifo o che ci sia di meglio! non capisco perché hai sempre questa ansia per elogiare i prodotti microsoft! Ho detto che per ora gli sviluppatori si lamentano per i motivi che ti ho detto ma vedo che anche qui non sei informato! Ecco le novità che usciranno con Mango
    http://www.plaffo.com/2011/04/aggiornamento-mango-tutte-le-novita-sul.html
    hai letto? ben 1500 API introdotte!!! Attualmente manca addirittura il supporto socket! Si potranno anche avere finalmente navigatori turn-by-turn! Mi sa che quello che parla per sentito dire sei tu.

    Fammi capire: aggiungere API per te equivale a dire che prima ce n’era poche? Ma hai idea di quello che stai dicendo?

    Soprattutto, hai idea di cosa offra Windows Phone 7 1.0 agli sviluppatori?

    Cmq android ha app inventor che è un tool di sviluppo ottimo anche per chi nn capisce niente di programmazione, puoi fare qualcosa in pochissimi minuti! Non so farti paragoni cn WP (nn mi pareva fosse questo il tema del discorso), ma forse meglio se chiedi ai tuoi colleghi più informati.

    MUHAHAHAHAHAH Addirittura hai tirato fuori App Inventor. E magari vorresti realizzarci delle applicazioni professionali, vero?

    Non ho parole. Tu vivi in un altro universo. Non c’è altra spiegazione.

    Tornando sempre al discorso produttività e frammentazione io continuo a nn vedere il problema! Parliamo di numeri…….uno sviluppatore se vuole avere vita facile può prendere in considerazione solo il galaxy S e nexus S (praticamente stesso telefono) che hanno venduto milioni di esemplari in pochi mesi e hanno già una base di utenti enorme! Windows phone cn 10 modelli è circa a 2 milioni (in 8 mesi)!

    ROFL. Parliamo di produttività e frammentazione e ci metti in mezzo l’installato, che non c’entra niente. E lo fai con WP7 che è arrivato da qualche mese, e che per ovvie ragioni al momento non può vantare un installato comparabile.

    Che te ne fai dell’omegenità e della facilità di programmazione se nn vendi modelli? La frammentanzione di android ha contribuito a vendere così tanto!! I vantaggi li ha portati eccome!! Le grandi software house nel settore game hanno scelto un target e scartato molti modelli anche vendutissimi (vedi il vecchio milestone) tanto possono ugualmente contare su milioni e milioni di utenti! Se lo sviluppatore vuole ANCORA PIÙ mercato allora è costretto a sbattersi un po’ di più per supportare più modelli…….ma questo per avere ancora di più! Se nn ci fosse stata frammentazione, se nn ci fossero stati modelli da 100 euro questi sviluppatori nn avrebbero potuto contare anche su questi utenti, quindi è UN DI PIÙ, non un problema!

    Stai confermando che Android è come J2ME a livello di frammentazione e dei relativi problemi che si porta dietro.

    Il problema è un altro. Te ne rendi conto, oppure no?

    Eppure a me il discorso sembra semplice!! ed è quello che è avvenuto nel mondo pc! nn mi pare che gli sviluppatori di crysis si siano preoccupati degli utenti cn scheda grafica integrata! Quindi perché dovrebbe essere un problema sta frammentazione?

    Infatti fanno delle scelte. Non tutto il parco hardware può essere raggiunto. E lo stesso vale per Android, appunto: c’è talmente varietà che non puoi sviluppare pretendendo che un gioco giri su qualunque dispositivo, anche il più scarso da sotto i 100€.

    Inoltre ti ricordo che l’iphone 3gs è MOLTO più potente del 3g e il 4 è ancora PIÙ potente, ha display cn risoluzione maggiore, fotocamera frontale, giroscopio! e siamo a 3 modelli in 3 anni! poi ci sarebbero anche ipod touch e ipad! Se lo sviluppatore può decidere anche di basarsi solo sull’iphone 4! Se invece vuole il maggior numero di clienti possibili si preocucperà di supportare adeguatamente anche il 3g, l’ipod touch e magari pure l’ipad.

    Boom! Hai fatto un minestrone. Dipende tutto dal tipo di applicazione o gioco.

    Ci sono applicazioni che trovi solo su iPhone, altre anche su iPad, altre ancora su iPod.

    In ogni caso il riferimento è l’iPhone, e se ne sviluppano generalmente un paio di versioni. Spesso ne basta anche una.

    Stessa cosa avverrà pure cn windows mobile appena si diffonderà maggiormente e soprattutto appena arriverà anche Nokia.

    Non credo proprio.

    Riguardo il linguaggio di programmazione ti sei smentito da solo con l’iphone!

    In cosa mi sarei smentito? Non è chiaro.

    L’importante è avere numeri e fare successo, gli sviluppatori si adeguano!

    Ma che dici?!? I numeri da soli non bastano! Se non offri una piattaforma appetibile, gli sviluppatori possono anche decidere di darti il benservito.

    Infatti c’è stato il boom su iphone e i porting su android sn più difficoltosi!

    Lo credo bene: le due piattaforme sono completamente diverse. Che pretendi?

    Android secondo me avrebbe avuto lo stesso successo (lato sviluppatori) anche cn un linguaggio “simil C”, anzi si sarebbero visti molto prima programmi multimediale (che sn stati molto problematici per molto tempo e alcuni porting tardano ancora ad arrivare),

    Sarebbe stata la fine di Android. Devi capire che per uno sviluppatore è importantissimo il “time to market”. Cosa che un linguaggio C/C++ NON ti può garantire, con tutte le rogne che si porta dietro.

    però avrebbe perso la comodità della virtual machine.

    Non solo. E’ importante la produttività. Un ambiente managed è comodo, ma servono anche gli strumenti.

    C ti dà pochi, e rozzi, strumenti. Java te ne dà una caterva. Il runtime di Apple pure. E idem per Windows Phone 7.

    Ogni cosa ha i suoi pro e contro!! Gli sviluppatori si buttano dove c’è campo e possibilità di guadagno!!

    Guadagnare implica anche perdere meno tempo possibile nello sviluppo, e senza trascinarti dietro problemi.

    Perché non chiedi a uno sviluppatore Android di lavorare soltanto con l’NDK? Tanto la piattaforma è molto diffusa, no? E vedrai cosa ti risponderà…

    Consiglio a te di informarti maggiormente sul settore mobile perché non sei molto ferrato!

    Ma LOL. Sì maestro Yoda, grazie del consiglio. :D

    E lascia stare il povero Stallman tutte le volte, perché lo tiri sempre fuori? :D

    Perché ha creato dei buoni allievi.
    @dotlinux:

    @zephyr83
    Occhio che non ne hai azzeccata una in due post lunghissimi.
    Se ne fai un terzo sbagliando ogni tua affermazione ti chiama Jerry Scotti per il Guinness dei primati.

    E per fortuna che si tiene informato. Immagina se non lo fosse… :D

  • # 23
    Marco
     scrive: 

    “Capisco che con personaggi come Stallman”

    Lo sapevo che anche qui prima o poi avresti tirato in ballo il tuo idolo :-D

    Per il resto sorvolo sull'(in)utilità di questo articolo e relative discussioni, IMHO.

    Molto più interessanti gli articoli di Fabio Bonomo.

  • # 24
    Emanuele Rampichini
     scrive: 

    Provo a dire la mia…
    Secondo me Android può essere vista allo stesso tempo come piattaforma aperta o come piattaforma chiusa. La piattaforma è aperta per i produttori hardware che possono prendere i sorgenti dal git e costruire una propria user experience intorno alle tecnologie core android eventualmente aggiungendo parti proprietarie. Nessuno vieta ad un produttore di distribuire una versione di android senza gapps e con magari uno store alternativo (amazon store per esempio). Le licenze su questo parlano chiaro. Per l’utente finale invece non si può parlare propriamente di piattaforma aperta. L’utente è a contatto con un tot di sistemi impacchettati dai produttori che potendolo fare cercano di differenziarsi (sia lato hardware che lato software) per avere un maggiore appeal sul mercato. Questo naturalmente ha i suoi pro e i suoi contro. In generale la parte positiva deriva dal fatto che viene offerta agli acquirenti una grandissima varietà di dispositivi spalmati su tutte le fasce di prezzo. D’altro canto questo procura qualche mal di testa agli sviluppatori che devono decidere il “target minimo”. La discriminante naturalmente non è solo hardware ma anche software, considerando quanto la user experience può fare la differenza in ambito mobile. Non possono esistere per esempio delle HIG che riescano ad armonizzare i comportamenti delle interfacce (se integro con HTC sense taglio fuori android vanilla e viceversa per esempio).

    Se dovessi scegliere oggi di fare un’applicazione (non giochi e in generale apps performance critic) per abbracciare il più possibile il mondo mobile nel suo insieme probabilmente punterei tutto sulle tecnologie web… se vai ad analizzare lo scenario attuale, quello che accomuna la fetta maggioritaria di smartphone di nuova generazione è la presenza di un browser web moderno. Di platform specific lascerei solamente i container per aprire una webview. Utilizzare tecnologie web mi permetterebbe tra l’altro di poter fornire gli stessi servizi in maniera ubiqua anche sui pc classici e su una miriade di altri dispositivi.

    Discorso a parte sul modello di sviluppo di android… non è un modello di sviluppo aperto, è un modello a cattedrale. Lavorare internamente alla nuova versione e rilasciare i sorgenti sul git a lavoro completato non significa avere un modello aperto.

    Uscendo dal discorso generale e entrando nelle considerazioni personali (da appassionato di tecnologia e smanettone) posso solo dire di essere un felice possessore di un terminale android su cui ho installato una rom custom, svincolandomi dalle limitazioni arbitrarie imposte dal produttore del device. Per adesso questo mi basta. :D

  • # 25
    Cesare Di Mauro (Autore del post)
     scrive: 

    @Marco:

    Lo sapevo che anche qui prima o poi avresti tirato in ballo il tuo idolo :-D

    Più che altro rispondendo a zephyr83 e visti i trascorsi, direi che la citazione di Stallman in quel preciso contesto calzava alla perfezione. :P

    Per il resto sorvolo sull’(in)utilità di questo articolo e relative discussioni, IMHO.

    Molto più interessanti gli articoli di Fabio Bonomo.

    E’ strano che per un articolo “inutile” tu abbia speso del tempo a scrivere poi due commenti, e soltanto al terzo abbia espresso questa tua opinione. Forse perché la discussione che s’è sviluppata ha toccato un nervo scoperto…

    Perché, normalmente, se uno non ritiene utile né l’articolo né la discussione, non vi perde altro tempo. O:-)

    Comunque, de gustibus. Gli articoli non devono piacere per forza a tutti. L’importante è che facciano informazione. Corretta.

    @Emanuele. E’ un discorso un po’ diverso, rispetto al concetto di “libero” di cui abbiamo parlato finora.

    Sull’utilizzo di tecnologie web sono d’accordo sul fatto che siano più facilmente portabili, ma non hanno le stesse potenzialità di una “tradizionale”. Inoltre già queste ultime possono avere problemi di fluidità; figuriamoci quelle web.

  • # 26
    zephyr83
     scrive: 

    @Cesare Di Mauro

    Ribadisco che nn è proprio il tuo settore e nn sei minimamente informato! Il fatto che sei “programmatore” non è che migliori la situazione, anzi! Forse meglio se uno smartphone android lo compri e vedi come funziona e soprattutto come funzionano le rom cucinate prese direttamente da AOSP. Per le cyanogenmod nn devi farti alcun bakcup, devi aver letto velocemente a suo tempo come funzionava all’inizio! si riferiva appunto al backup delle gapps cosa che adesso si possono installare a parte.
    Android è open source e libero come da licenza PUNTO! se poi google decide di non rilasciare momentaneamente i sorgenti è un altro discorso e la situazione è da chiarire! Così come non c’entra nulla che alcune applicazioni siano proprietarie. Per la tua solita invettiva sull’open source ti conveniva puntare solo su altro! Ricordi la discussione avuta in passato su webkit e khtml? Io criticavo lo sviluppo di apple definendolo un progetto aperto solo di “facciata” perché avevano fatto tutto in casa e rendevano quasi impossibile a quelli di khtml continuare a contribuire. Mi hai sempre risposto che è un progetto libero, tutti possono scaricare i sorgenti e contribuire se vogliono. Ecco è la stessa cosa per android! è un progetto aperto, tutti possono prendere i sorgenti e farne quello che vogliono!!! Si può criticare il metodo di sviluppo di android ed è una cosa che faccio anche io! ma dire che android nn è aperto e libero per via della gapps vuol dire nn aver capito nulla e non conoscere il sistema!!! Ed è questo che contesto, parli di una cosa che non conosci e nn ti sei informato abbastanza! Puoi prendere i bei sorgenti e farne quello che vuoi! molte rom cucinate sn realizzate così cn in più l’aggiunta delle gapps! Idem per le virtual machine derivate tipo quella per maemo/meego (e anche quella del tablet RIM). Se non fosse un progetto aperto ste cose non potresti farli! Le rom si sn sempre cucinate (anche cn il vecchio windows mobile), ma partendo dai sorgenti no!
    Tanto dove vuoi andare a parare tutte le volte nei tuoi discorsi è chiarissimo! i tuoi articoli si riconoscono già dal titolo!!

    Riguardo symbian e j2me fai un po’ di confusione! quando mi riferisco ai primi symbian io di quelli parlo (ok avevano anche una JVM ma io mi riferisco solo agli smartphone). Prova a chiedere cn qualche sviluppatore dell’epoca e vedrai che ti dirà le mie stesse cose!
    Per quanto riguarda invece J2ME è come ti sto dicendo io! Ogni casa aveva una propria JVM. Tratto da wiki:
    “Come le altre edizioni di Java, J2ME è stato progettato da Sun Microsystems (storicamente, sostituì la precedente tecnologia PersonalJava). A differenza di quanto avviene per J2SE o Java EE, tuttavia, la Sun ha in questo caso fornito solo poche implementazioni binarie gratuite della piattaforma, affidandosi principalmente a contributi di terza parte. In particolare, Sun non ha fornito un’implementazione per gli apparati basati su tecnologia Microsoft Windows Mobile.”
    Infatti su windows mobile (che ho avuto) si potevano installare JVM a parte che però facevano quasi tutte schifo (alcune di queste ora si trovano pure su android). Ora è più chiaro il discorso? nn c’era uniformità nelle Virtual Machine e le differenze spesso erano imbarazzanti! Nel topic su hwupgrade che ho citato prima ne n’è parlato spesso! Non bisogna essere programmatori per sapere ste cose, basta semplicemente seguire l’argomento nel corso degli anni!!
    Quindi nel caso delle applicazioni J2ME il problema era doppio ma spesso il problema maggiore era dato proprio dalle differenti JVM. Su android no, la virtual machine è identica per tutti i modelli, è molto differente! Se poi ancora nn lo capisci non so che farci!

    Riguardo a windows phone ora non ti arrampicare sugli specchi e non cambiare discorso! Io ho semplicemente detto che attualmente molti sviluppatori si lamentano perché il sistema è limitato e ha poche API (dovuto ovviamente anche alle molte limitazioni). Tu l’hai spostata subito sul lato “strumenti di sviluppo”, ma cosa c’entra??? Ho detto che è difficile sviluppare su WP? Ho detto che per ora molte cose non si possono fare e fra le novità del prossimo aggiornamento ci sn ben 1500 nuove API e tanti funzioni in più! Finalmente potranno anche esserci navigatore turn-by-turn e introduzione del socket! Ma scommetto che erano cose che ignoravi perché non informato sull’argomento!
    Non ho mai fatto un confronto cn gli strumenti di sviluppo e non conoscono quelli di WP come non conoscono quelli di android! Ti ho citato App Inventor perché è uno strumento semplice e veloce che permette a tutti di programmare senza conoscere alcun linguaggio di programmazione. Mica ho detto che devi farci chissà cosa! Esiste qualcosa di analogo su WP? Si? No? che importa? Ah si, volevi come al solito lodare un prodotto microsoft a prescindere ;)

    Vediamo se riesco a ribadire per l’ultima volta il discorso frammentazione e perché è un falso problema! è anche merito della frammentazione se android è diffusissimo. Senza frammentazione probabilmente nn ci sarebbero stati tutti questi modelli. Gli sviluppatori avrebbero vita più facile a supportare tutti i modelli (come avviene ad esempio cn windows phone…….per ora!) ma potrebbero contare su meno utenti. Ora invece possono contare su milioni di utenti e anche concentrandosi solo su alcuni terminali rimangono ugualmente milioni. Quindi dov’è il problema? E poi nn sembra così problematico riuscire a supportare più terminali, da quello che vedo (da possessore di android) eventuali incompatibilità si risolvono abbastanza in fretta! se poi lo sviluppatore nn vuole supportare anche terminali ad esempio cn display cn risoluzione qvga è una sua scelta, vuol dire perdere dei clienti ma ne ha ugualmente già tantissimi! Non si può avere sempre la botte piena e la moglie ubriaca! Non capisco perché sia un problema dover “lavorare”!!! Se molti riescono addirittura a supportare più sistemi operativi significa che il gioco vale la candela e nn è così problematico.
    Inoltre anche le altre piattaforme sn frammentate e lo saranno sempre di più! Vedi appunto iphone e in futuro pure windows phone. certo in maniera molto ridotta ma se qualcuno vuole realizzare ad esempio un gioco per sfruttare tutte le caratteristiche di iphone 4 taglia fuori tutti i modelli precedenti. Su android la situazione è più accentuata certamente ma la cosa contribuisce a incrementare mostruosamente le vendite! Il modello di apple nn è facilmente replicabile da altri, google nn ce l’avrebbe fatta e pure microsoft nn ci ha neanche provato (non ci è riuscita cn i lettori, vedi fallimento di zune nonostante la bontà del prodotto, figuriamoci con gli smartphone, mercato più agguerrito)!
    Ecco perché per me è un falso problema quello della frammentazione! ogni cosa ha i suoi pro e i suoi contro!

    Discorso NDK! Molte applicazioni, soprattutto quelle multimediali, la sfruttano altrimenti anche con un 1 ghz di processore avresti problemi pure a vedere uno stupido divx (cosa che cn i vecchi windows mobile o cn symbian nn c’erano problemi anche se cn hardware molto ridotto). Ovvio realizzare un programma interamente cn l’NDK nn avrebbe senso, mi sa che nn si può neanche fare! e ha diversi inconvenienti….ma non perché si programma in c/c++!
    Certo che la produttività è importante per uno sviluppatore ma forse esasperi un po’ troppo questo aspetto, anzi sembri valutare solo questo! Ti sei smentito proprio quando hai citato apple! A quanto pare nn è solo il linguaggio a fare la differenza! Se ha avuto successo su iphone perché non poteva avere successo pure su android in linguaggio “simil C”?
    Poi parliamo di un mercato dove si può guadagnare anche cn programmi semplici e addirittura stupidi! Le grandi software house che solitamente sn quelle che fanno programmi di un certo livello sicuramente c e c++ li conoscono e fanno prima a sviluppare su iphone o symbian che su android! Ed è anche per questo che ad alcune conviene pure sviluppare per piattaforme poco diffuse come maemo (il porting nn richiede troppo lavoro) e si vede che il gioco vale la candela!

    Nota finale su Stallman che è evidentemente il tuo incubo :D Capire il suo pensiero e condividerlo sono due cose diverse! TU ne’ lo capisci ne’ lo condividi! Io lo capisco e lo “ammiro” per quello che fatto, ci vogliono persone intransigenti in certi casi altrimenti è difficile ottenere risultati! Ma non per questo approvo o condivido tutto quello che dice! Non ho problemi a usare software proprietario e son ben consapevole che se android ha avuto successo non è certo perché è un progetto libero (tanto si sa che era qui che volevi andare a parare come in tutti i discorsi che fai sull’open source). C’erano anche prima progetti più interessanti che nn hanno avuto successo perché nessuno ci ha davvero puntato! Qui c’è google e le cose sn andate diversamente. Ha sicuramente CONTRIBUITO al successo ma nn è stata la sola causa. è il sistema operativo che serviva ai produttori, ha preso sia il posto di windows mobile che di symbian! Inoltre si può dire quello che si vuole ma di “libertà” (quella vera, non quella di Stallman) ne lascia tanta sia ai produttori che agli utenti! è vero può cancellare alcune applicazioni dal proprio market ma nn vieta market alternativi e c’è pure la possibilità di installare applicazioni direttamente dal telefono. Permette di usare browser e lettore alternativi! lascia all’utente la libertà di scegliere il programma preferito!! Mi sa che a riguardo sei più tu quello che la pensa come Stallman che altri ;) I buoni allievi di Stallman avrebbero tutti un freerunner!!! Ormai la tua è una fissa!!!!

  • # 27
    Marco
     scrive: 

    “E’ strano che per un articolo “inutile” tu abbia speso del tempo”

    E continuo pure :-D
    Sono curioso di natura e in genere apprezzo i tuoi articoli, per cui li leggo sempre ;-)
    Nervo scoperto? Non credo che Stallman abbia mai sostenuto che Android sia software libero, anzi, è sempre stato molto critico mi pare.

  • # 28
    j
     scrive: 

    zephyr83

    Le grandi software house che solitamente sn quelle che fanno programmi di un certo livello sicuramente c e c++ li conoscono e fanno prima a sviluppare su iphone o symbian che su android!

    mettiti bene in testa una cosa:
    quando sviluppi sw, produttività è sinonimo di:
    # di righe di codice funzionanti (non contenenti o non prone a contenere, errori, il cui fix va a sua volta contato come tempo di sviluppo) che riesci a scrivere,
    # di feature che riesci a implementare (nel senso di requisiti che riesci a soddisfare) in un dato lasso di tempo
    quindi: tra un linguaggio (e/o framework)che ti permette di realizzare la stessa feature in N righe di codice e uno che ti permette di farlo in una frazione di N (con possibilità di dedicarti più velocemente ad altre feature), o tra un linguaggio che impone al programmatore la rimozione esplicita degli oggetti (se non si vogliono leak) e accortezza nella loro tipizzazione, e uno che invece lo alleggerisce di tali incombenze (quindi gli consente di scrivere meno righe di codice, con meno bug) sceglierai il secondo se vuoi essere più produttivo…
    questo è un dato di fatto non opinabile che non dovrei nemmeno ribadire, ma tant’è…

    quindi, il fatto che dei programmatori o sw house conoscano C e C++ non significa assolutamente nulla riguardo alla loro effettiva intenzione di usare dei linguaggi più ostici (quindi, di scegliere di essere meno produttivi)
    e d’ altronde il fatto che da una parte si siano progressivamente imposti nell’ ultima decina d’ anni (lasciando scoperti solo certi ambiti quali il codice di sistema o inner loop time critical di applicazioni multimediali ed engine di giochi) dei linguaggi managed, e che d’ altra parte lo stesso C++ sia in effetti diventato a sua volta managed ( dotandosi di una GC) nell’ ultima versione dello standard, dovrebbe dirti qualcosa…

  • # 29
    Marco
     scrive: 

    @j
    “tra un linguaggio (e/o framework)che ti permette di realizzare la stessa feature in N righe di codice e uno che ti permette di farlo in una frazione di N”

    Bizzarro dunque il fatto che non programmiamo tutti in Scala, Erlang od Ocaml…

  • # 30
    j
     scrive: 

    Marco

    Bizzarro dunque il fatto che non programmiamo tutti in Scala, Erlang od Ocaml…

    … o anche già python, in effetti :P
    nemmeno tanto strano però, se si considera a quale sintassi la maggior parte dei programmatori era abituata (da cui la tendenza a orientarsi verso alternative che ispirassero un senso di familiarità), e quali società introducevano cosa (quindi quali nuove soluzioni si candidavano a divenire i nuovi standard di fatto) nel periodo di passaggio…

    zephyr83 (segue)

    Certo che la produttività è importante per uno sviluppatore ma forse esasperi un po’ troppo questo aspetto, anzi sembri valutare solo questo!

    direi che devi un po’ cambiare la tua prospettiva, perchè per un professionista conta solo (o in massima parte) quello…
    diatribe ideologiche, presunta superiorità sulla base di presunte qualità etiche… tutta fuffa, chi deve produrre righe di codice funzionanti per soddisfare dei requisiti imposti dal suo customer (che può anche essere una figura interna al team di sviluppo – con la responsabilità di analizzare, selezionare e mediare verso il resto del team i bisogni dell’ utenza target – eh) si pone un solo problema, soddisfarli nel minor tempo e col minimo sforzo possibile – da cui la ricerca di strumenti che comportino il minimo onere possibile (dato che lo sforzo richiesto dag questi si somma allo sforzo richiesto dallo *studio* della soluzione)
    ci si può chiedere dove finisca la ricerca di algoritmi innovativi o la scrittura di codice “pulito” e sofisticato, in questo contesto… la pulizia entro certi limiti perseguita (ai fini della manutenibilità futura, imponendo e facendo rispettare coding guidelines più o meno severe) ma la sofisticazione, se non strumentale al soddisfacimento di requisiti o alla creazione di valore aggiunto (cioè se proprio essa non costituisce un selling point) bellamente accantonata, visto che un mese perso nello studio di una feature innovativa ma fine a sè stessa è un mese di vantaggio dato ai concorrenti…

    Ti sei smentito proprio quando hai citato apple! A quanto pare nn è solo il linguaggio a fare la differenza!

    ogni volta che si parla di linguaggio in effetti si sottintende anche il runtime e la class library associati a quel linguaggio – e quella su iphone è parecchio vasta mi risulta…

    Se ha avuto successo su iphone perché non poteva avere successo pure su android in linguaggio “simil C”?

    perchè (a parte il fatto che se non il linguaggio, mi pare il framework consenta la creazione di ManagedObjects) objective c è “simil c” solo nel nome…

    Se molti riescono addirittura a supportare più sistemi operativi significa che il gioco vale la candela e nn è così problematico.

    l’ errore qui sarebbe pensare che se alcuni vi riescono, allora tutti possono riuscirvi…
    ogni differenziazione del prodotto dovuta a una diversa api /modello di smartphone / una versione dell’ OS equivale a un fork interno, da mantenere, sviluppare e supportare se non idenfinitamente per la durata del ciclo di vita del prodotto stesso – con conseguente moltiplicazione dei costi di sviluppo

    il gioco vale la candela se anche i possibili introiti si moltiplicano in proporzione ( se la mia utenza target si moltiplica per n) ma non è affatto detto che ciò accada, bisogna vedere caso per caso

    Poi parliamo di un mercato dove si può guadagnare anche cn programmi semplici e addirittura stupidi!

    se i programmi fossero davvero stupidi il problema non sussisterebbe (il porting sarebbe facile, ecc..), ma purtroppo spesso si tratta di applicazioni stupide solo in apparenza, ma celanti una certa complessità a livello implementativo

    Inoltre anche le altre piattaforme sn frammentate e lo saranno sempre di più! Vedi appunto iphone e in futuro pure windows phone.certo in maniera molto ridotta ma se qualcuno vuole realizzare ad esempio un gioco per sfruttare tutte le caratteristiche di iphone 4 taglia fuori tutti i modelli precedenti.

    ma questo è ovvio, visto che se scelgo di sfruttare le caratteristiche di iphone4 ho già deciso di sacrificare la base installata dei precedenti modelli (che d’ altra parte avendo una certa età potrei anche considerare obsoleti – quantomeno per quanto concerne il mio business), e viceversa…
    ma un conto è supportare 2 (due) modelli di uno stesso brand con hw in parte diverso ma api comunque retrocompatibili, un conto supportare come caso a sè stante ogni modello (e magari revisione) di smartphone di ogni diverso brand, considerando che ognuno può avere una versione diversa di android (quindi api e abi diverse) oltre a caratteristiche hw diverse (e con un eterogeneità molto maggiore)

    Nota finale su Stallman che è evidentemente il tuo incubo :D Capire il suo pensiero e condividerlo sono due cose diverse! TU ne’ lo capisci ne’ lo condividi! Io lo capisco e lo “ammiro” per quello che fatto, ci vogliono persone intransigenti in certi casi altrimenti è difficile ottenere risultati! Ma non per questo approvo o condivido tutto quello che dice!

    anche qua devi cambiare prospettiva… non è affatto detto che una volta compreso il succo della dottrina stallmaniana si decida di abbracciarla – ovvero, l’ accettazione implica la comprensione, ma la comprensione non implica l’ accettazione
    ovvero si può benissimo comprendere ciò che dice e dissociarsene con tutta l’ anima (ma proprio avendo compreso che il messaggio in realtà costituisce un’ offesa e una minaccia)
    tu puoi anche dire di non approvare incondizionatamente tutto ciò che stallman dice, e di usare sw proprietario a fianco di sw libero… MA questo vale per te
    le idee stallmaniane non cambiano di una virgola a seguito della tua personale condotta e libera interpretazione – stallman in ogni caso, fa che condannare il sw proprietario in tutte le sue forme (anche quando sia sw che non lede la libertà dell’ utente in alcun modo, vedesi quello impiegato sugli elettromedicali) e auspicare il “rimpiazzo totale” del sw proprietario da parte di sw libero omologo – in questo contando implicitamente sul cosiddetto “million programmers army”
    quello che non è chiaro e stallman non chiarisce però, è come degli sviluppatori volontari, sostanzialmente hobbysti estranei all’ industria, sostanzialmente allo sbando e in gran parte anche al mondo dello sviluppo sw (quindi all’ oscuro su molti aspetti di questo, da algoritmi a metodi di sw design a coding practices ecc) sarebbero capaci di produrre sw ello stesso livello di quello che andrebbe a sostituire e afferente ad ogni settore dell’ industria – anche quelli dove sono indispensabili precise competenze, gli individui in possesso delle quali da una parte vengono pagati profumatamente, dall’ altra auspicano di farle fruttare il meglio possibile…

    ha preso sia il posto di windows mobile che di symbian

    symbian che peraltro non è ancora morto, eppure tutti fanno come se fosse tale…

    Mi sa che a riguardo sei più tu quello che la pensa come Stallman che altri ;)

    ti sbagli, credimi ;)

  • # 31
    zephyr83
     scrive: 

    @J

    Io certi discorsi purtroppo non riesco a capirli! Ok sarà un limite mio non lo escludo mica! Ma qui sembra che lo sviluppatore debba avere la pappa pronta e guadagnare il più possibile sempre e a prescindere! Si vuole avere la botte piena e la moglie ubriaca. Iphone avrebbe avuto successo anche cn qualsiasi altro linguaggio di programmazione perché già la piattaforma era vincente. Se c’è possibilità di guadagno gli sviluppatori ci si buttano, sia inesperti che magari riescono a tirare inizialmente su un po’ di soldi cn applicazioni stupide come ibeer o ifart che “professionisti” che lo fanno davvero di mestiere. Idem android! Avessero usato qualcosa simile (o tutto nuovo) nn sarebbe cambiato molto! Oltre al linguaggio come detto tutta la piattaforma deve essere “vincente” e devono essere buoni anche gli strumenti di sviluppo! Però se la piattaforma è poco diffusa te ne fai poco di un sistema facilmente programmabile!!! Anzi non sarebbe meglio poter far scegliere al programmatore il linguaggio che preferisce come su pc? Così nessuno è costretto a imparare qualcosa che non conosce. è anche per questo che su maemo si sn visti tanti programmi nonostante la scarsa diffusione.
    Ovviamente ognuno porta acqua al proprio mulino! Apple usa object C e ha imposto quello su iphone (ricordo che le applicazioni sn nate ancora prima dell’uscita dell’SDK ufficiale, ovviamente su terminali jailbreaked) ed è la piattaforma di riferimento per numero di applicazioni (e guadagni). Gli sviluppatori si sn fiondati e gran parte dei programmi di un certo livello vengono poi portati su android……..porting che nn è certo favorito da java. Le software house di un certo calibro, soprattutto in ambito game hanno ritardato molto l’ingresso su android anche per questo motivo, sn quasi tutti porting da ios.
    Il problema di symbian nn è mica stato quello di usare linguaggi basati su c/c++. A riguardo consiglio la lettura di un altro articolo qui su AD di Antonio di Barba (pubblicato tramite Alessio Di Domizio), il punto di vista di uno sviluppatore Symbian http://www.appuntidigitali.it/14743/crisi-symbian-sviluppatore/
    Non parla di linguaggi di programmazione, frammentazione o altro, parla di “incentivare” lo sviluppatore permettendo di pubblicare agilmente e a basso costo le applicazioni sul “market”. Guarda caso da quando nokia ha finalmente realizzato un SDK come si deve, tirato fuori nuovi modelli e semplificato la vita agli sviluppatori le applicazioni sn “esplose” pure su ovi store! Ovvio siamo ancora lontani dai livelli di android e ios e forse si sn mossi troppo tardi, però dimostra che gli aspetti che contano sn altri.
    Non si può avere un’unica piattaforma, anzi un unico modello e usare un unico framefork di sviluppo!! Per ora le piattaforme che fanno guadagnare di più sono ios e android che usano linguaggi diversi. il guadagno c’è per entrambe e gli sviluppatori giustamente devono lavorare un po’ di più per supportarle entrambe ma i guadagni ci sono. Anzi nonostante tutto vengono supportati anche symbian e alcuni iniziano pure a guardare a bada e meego nonostante tutto!
    Quindi concentrarsi solo su produttività e righe di codice da scrivere è come fare i conti senza l’oste! Se la piattaforma “vincente” impone qualcosa lo sviluppatore si adegua. La frammentazione di android rimane quindi un falso problema perché questo ha permesso l’enorme diffusione del sistema operativo e supportare più terminali in fondo nn è così problematico come si vuole far credere (come ha scritto già qualcun altro qui su AD). Quindi perché lamentarsi? Cioè, va bene lamentarsi non dico di no, si vuole sempre di più e sempre il meglio ma bisogna fare le giuste valutazioni. Ed è lo stesso discorso che si fa su pc, alcuni programmi non vengono pensati per hardware scarso e nn è mai stato un problema per nessuno!!!

    Riguardo Stallman secondo me il problema è nn aver minimamente compreso quello che dice e avere un’avversione profonda per il personaggio e quello che propaganda! E salta fuori in ogni articolo che tratta l’argomento open source. Se fossi un adepto di Stallman sicuramente nn userei Android! lo stesso Stallman fa critiche simile a quelle fatte da Cesare. Sta di fatto che nn c’entrava niente tirarlo fuori, ma tanto si capisce dove voleva arrivare!!! Sulla stessa riga avrei potuto dire che questo è il classico articolo di chi “simpatizza” (sn stato buono a usare sto termine) con microsoft e crea un po’ di FUD! Sarebbe stato più interessante un articolo che trattava più nello specifico la questione licenze e se per caso c’è qualche “falla” relativa al rilascio dei sorgenti oppure se è google a non rispettare la licenza. Ecco, questo si che sarebbe stato interessante visto che è poco chiaro. Invece sembra nn aver le idee chiare neanche l’autore dell’articolo che non ha ancora capito bene com’è fatto android e come funzione e si vede da come continua a rispondere ai messaggi. Android ad oggi è libero e aperto, si possono prendere i sorgenti, modificarli, ricompilarli, mettere android dove si vuole. Il sistema è funzionante senza problemi. Lo sviluppo nn è tanto “aperto”……è pari pari il discorso che si può fare cn webkit (dove li la licenza gpl nn lascia scampo a “interpretazioni”)!!! Ora il problema è solo honeycomb e il ritardo del rilascio dei sorgenti che usciranno, prima o poi. il problema è tutto qui! A pensare male google sta facendo un favore a qualche costruttore (magari motorola, la prima ad uscire cn un tablet con honeycomb). è da vedere se e quanto la cosa rispetti la licenza……in caso penso che qualche associazione tipo FSF solleverebbe critiche. Apache è definita dalla FSF licenza di software libero e compatibile con la gpl v3. Di certo è sicuro che i vari costruttori hanno accesso al codice sorgente e ci fanno un po’ quello che vogliono.
    Tutto questo “casotto” cmq dovrebbe risaltare la tanto odiata licenza gpl che impone davvero certi obblighi, anche in caso di modifiche al progetto originario!!! Sicuramente cn una licenza gpl lo sviluppo nn cambierebbe molto ma si eviterebbero questioni del genere.
    Meego alla fine si basa per buona parte su software gnu che è sotto licenza gpl! Però anche gli ci sn applicazioni proprietarie…….anche quello non ci può definire aperto e libero?

  • # 32
    Cesare Di Mauro (Autore del post)
     scrive: 

    @zephyr83:

    Ribadisco che nn è proprio il tuo settore e nn sei minimamente informato! Il fatto che sei “programmatore” non è che migliori la situazione, anzi! Forse meglio se uno smartphone android lo compri e vedi come funziona e soprattutto come funzionano le rom cucinate prese direttamente da AOSP.

    Spiegamelo tu allora.

    Per le cyanogenmod nn devi farti alcun bakcup, devi aver letto velocemente a suo tempo come funzionava all’inizio! si riferiva appunto al backup delle gapps cosa che adesso si possono installare a parte.

    Visto che hai usato wiki, ti spedisco all’apposita sezione: http://en.wikipedia.org/wiki/Cyanogenmod#Licensing_controversy

    Come vedi NON si tratta soltanto delle applicazioni. Basta leggere.

    Android è open source e libero come da licenza PUNTO! se poi google decide di non rilasciare momentaneamente i sorgenti è un altro discorso e la situazione è da chiarire! Così come non c’entra nulla che alcune applicazioni siano proprietarie.

    A questo punto due sono le cose: o ci sei o ci fai. O continui a fare orecchie da mercante, oppure non vuoi proprio capire che non si tratta soltanto di applicazioni. Vedi sopra.

    Dirimere la questione, comunque, è molto semplice. Rispondi con un secco sì o no alle seguenti domande.

    Sull’apertura:

    1) Di Android sono disponibili TUTTI i sorgenti?
    2) Lo sviluppo dei sorgenti è collaborativo (aperto, ed eventualmente con una comunità dietro)?

    Sulla libertà:

    1) E’ possibile prendere QUALUNQUE componente di Android e utilizzarlo come si vuole?
    2) E’ possibile produrre un terminale Android senza l’avallo di Google?
    3) E’ possibile sviluppare applicazioni che girano su Android senza sottostare alle regole di Google?
    4) E’ possibile che vengano cancellate applicazioni dal Marketplace e/o dal dispositivo in cui sono installate?

    Preciso che quando parlo di “Android” mi riferisco alla sua interezza, come piattaforma definite nell’apposito sito.

    Adesso rispondi in maniera puntuale e chiudiamo subito la questione dell’aperto & libero.

    Per la tua solita invettiva sull’open source ti conveniva puntare solo su altro! Ricordi la discussione avuta in passato su webkit e khtml? Io criticavo lo sviluppo di apple definendolo un progetto aperto solo di “facciata” perché avevano fatto tutto in casa e rendevano quasi impossibile a quelli di khtml continuare a contribuire. Mi hai sempre risposto che è un progetto libero, tutti possono scaricare i sorgenti e contribuire se vogliono. Ecco è la stessa cosa per android! è un progetto aperto, tutti possono prendere i sorgenti e farne quello che vogliono!!! Si può criticare il metodo di sviluppo di android ed è una cosa che faccio anche io! ma dire che android nn è aperto e libero per via della gapps vuol dire nn aver capito nulla e non conoscere il sistema!!! Ed è questo che contesto, parli di una cosa che non conosci e nn ti sei informato abbastanza! Puoi prendere i bei sorgenti e farne quello che vuoi! molte rom cucinate sn realizzate così cn in più l’aggiunta delle gapps! Idem per le virtual machine derivate tipo quella per maemo/meego (e anche quella del tablet RIM). Se non fosse un progetto aperto ste cose non potresti farli! Le rom si sn sempre cucinate (anche cn il vecchio windows mobile), ma partendo dai sorgenti no!
    Tanto dove vuoi andare a parare tutte le volte nei tuoi discorsi è chiarissimo! i tuoi articoli si riconoscono già dal titolo!!

    Allora visto che sei così informato (e io no), forniscimi i link per scaricarmi i sorgenti di TUTTI i componenti di un qualunque telefonino Android. E quando dico TUTTI, intendo TUTTI, ossia voglio che sia possibile compilarmi uno a uno TUTTO ciò che serve per costruire da zero una build di Android da utilizzare al posto di quella che gira sul telefonino.

    Riguardo alle “ROM”, al solito stai mischiando capre e cavoli, visto che non c’entrano nulla col discorso che stiamo affrontando.

    Il patchwork lo potevo fare anch’io col mio Zaurus (che ti ricordo ha Linux come kernel), ma solo quello perché certe librerie di Sharp erano proprietarie. Quindi buona parte delle componenti erano compilabili. Quelle proprietarie ovviamente no.

    Infatti di “ROM” ne sono saltate fuori parecchie anche per il mio palmare. Ma compilarmi TUTTO da zero no, è sempre stato impossibile.

    Esattamente come avviene con Android.

    Riguardo symbian e j2me fai un po’ di confusione! quando mi riferisco ai primi symbian io di quelli parlo (ok avevano anche una JVM ma io mi riferisco solo agli smartphone). Prova a chiedere cn qualche sviluppatore dell’epoca e vedrai che ti dirà le mie stesse cose!

    Cosa? Che l’hardware era uguale?

    Per quanto riguarda invece J2ME è come ti sto dicendo io! Ogni casa aveva una propria JVM. Tratto da wiki:
    “Come le altre edizioni di Java, J2ME è stato progettato da Sun Microsystems (storicamente, sostituì la precedente tecnologia PersonalJava). A differenza di quanto avviene per J2SE o Java EE, tuttavia, la Sun ha in questo caso fornito solo poche implementazioni binarie gratuite della piattaforma, affidandosi principalmente a contributi di terza parte. In particolare, Sun non ha fornito un’implementazione per gli apparati basati su tecnologia Microsoft Windows Mobile.”
    Infatti su windows mobile (che ho avuto) si potevano installare JVM a parte che però facevano quasi tutte schifo (alcune di queste ora si trovano pure su android). Ora è più chiaro il discorso? nn c’era uniformità nelle Virtual Machine e le differenze spesso erano imbarazzanti! Nel topic su hwupgrade che ho citato prima ne n’è parlato spesso! Non bisogna essere programmatori per sapere ste cose, basta semplicemente seguire l’argomento nel corso degli anni!!
    Quindi nel caso delle applicazioni J2ME il problema era doppio ma spesso il problema maggiore era dato proprio dalle differenti JVM.

    Il tuo problema è che al solito non sai nulla di come si lavora col J2ME. A me non serve quel thread di cui parli, perché in azienda abbiamo uno staff che si occupa DA ANNI di sviluppo su mobile, J2ME in primis (all’inizio c’era praticamente solo quello).

    E ti confermo parola per parola quello che t’ho detto prima: non era la JVM il problema, ma le diverse, disparate, caratteristiche hardware.

    A questo aggiungiamo anche i bug da tenere in considerazione. Significa che, ad esempio, sul fiammante (e costosissimo, all’epoca) Nokia N95 non era possibile utilizzare le PNG a 8 bit con alpha channel a 1 bit (la cosiddetta “maschera”) perché la gestione era bacata, e si doveva ripiegare su quello a 24 bit (e 8 bit di alpha), con un dispendio di spazio (JAR più grande, e meno spazio nello heap dell’applicazione). Mentre in modelli più scarsi, come il 6600, quelle PNG funzionavano.

    Non era, quindi, la JVM il problema, perché le applicazioni (giochi, in particolare), si programmavano utilizzando le STESSE (lo evidenzio) API (per sonoro, grafica, e I/O).

    Chiedi a qualunque sviluppatore: ti dirà la stessa cosa.

    Su android no, la virtual machine è identica per tutti i modelli, è molto differente! Se poi ancora nn lo capisci non so che farci!

    Chi ha parlato della VM di Android? Non io. Io ho parlato d’altro. Vatti a rileggerei commenti, prima di mettermi in bocca cosa che non ho mai detto.

    Riguardo a windows phone ora non ti arrampicare sugli specchi e non cambiare discorso! Io ho semplicemente detto che attualmente molti sviluppatori si lamentano perché il sistema è limitato e ha poche API (dovuto ovviamente anche alle molte limitazioni).

    E io ti ho risposto che è falso, visto che di API ne ha in abbondanza. Ecco qui: http://msdn.microsoft.com/library/ff626516(v=VS.92).aspx fatti un giretto (compresi i link in basso).

    Tu l’hai spostata subito sul lato “strumenti di sviluppo”, ma cosa c’entra??? Ho detto che è difficile sviluppare su WP?

    Si parlava di API, e ho parlato di quanto ne aveva di comode in dotazione, ad esempio per realizzare delle animazioni (anche molto complesse). Da lì ho proseguito affermando che era possibile elaborare le animazioni anche senza scrivere una sola riga di codice.

    Ho detto che per ora molte cose non si possono fare e fra le novità del prossimo aggiornamento ci sn ben 1500 nuove API e tanti funzioni in più!

    Mi sembra ovvio: se sono funzionalità aggiuntive, certe cose non si potevano fare prima. Anche perché stanno aggiungendo API per caratteristiche hardware future, ad esempio.

    Finalmente potranno anche esserci navigatore turn-by-turn e introduzione del socket! Ma scommetto che erano cose che ignoravi perché non informato sull’argomento!

    I tuoi problemi sono due. Il primo è che o non leggi le notizie, o non le comprendi. Il secondo è che parli di cose che sconosci.

    Ecco qui le API di networking: http://msdn.microsoft.com/en-us/library/system.net(v=VS.95).aspx

    Fra queste, quelle per i socket: http://msdn.microsoft.com/en-us/library/system.net.sockets(v=VS.95).aspx

    Non hai detto che non ci sono i socket? E questi cosa sono, secondo te?

    Non ho mai fatto un confronto cn gli strumenti di sviluppo e non conoscono quelli di WP come non conoscono quelli di android!

    Mi stai dicendo che parli di cose che non conosci? Non l’avrei mai detto…

    Ti ho citato App Inventor perché è uno strumento semplice e veloce che permette a tutti di programmare senza conoscere alcun linguaggio di programmazione. Mica ho detto che devi farci chissà cosa! Esiste qualcosa di analogo su WP? Si? No? che importa? Ah si, volevi come al solito lodare un prodotto microsoft a prescindere ;)

    Potevi sforzarti un po’ e rileggerti l’articolo di Fabio (se l’hai letto), visto che ne parlava. E informarti, una buona volta, invece di tirare in ballo un giocattolo, quando si parla invece di sviluppo software in modo professionale.

    Vediamo se riesco a ribadire per l’ultima volta il discorso frammentazione e perché è un falso problema! è anche merito della frammentazione se android è diffusissimo.

    Io rimango veramente di stucco con te. Prima dici che non c’è frammentazione. Poi che è diffusissima.

    Non sai nemmeno tu com’è la situazione di Android…

    Senza frammentazione probabilmente nn ci sarebbero stati tutti questi modelli. Gli sviluppatori avrebbero vita più facile a supportare tutti i modelli (come avviene ad esempio cn windows phone…….per ora!) ma potrebbero contare su meno utenti. Ora invece possono contare su milioni di utenti e anche concentrandosi solo su alcuni terminali rimangono ugualmente milioni. Quindi dov’è il problema?

    Che ci sono decine e decine di terminali con caratteristiche diverse. Ma non è mica un problema tuo, visto che non ci devi sviluppare tu…

    E poi nn sembra così problematico riuscire a supportare più terminali, da quello che vedo (da possessore di android) eventuali incompatibilità si risolvono abbastanza in fretta!

    Se lo dici tu, da semplice possessore, dobbiamo crederci…

    se poi lo sviluppatore nn vuole supportare anche terminali ad esempio cn display cn risoluzione qvga è una sua scelta, vuol dire perdere dei clienti ma ne ha ugualmente già tantissimi! Non si può avere sempre la botte piena e la moglie ubriaca! Non capisco perché sia un problema dover “lavorare”!!!

    ROFL. D’altra parte, e come dicevo, mica devi sviluppare tu. E si vede: tutti a lavorare, programmatori scansafatiche.

    Parola di… utente. E basta.

    Al solito, parli perché non ci sei in mezzo e hai la minima idea di cosa significhi supportare un parco hardware così variegato.

    Per te il problema si risolve “lavorando”. QUANTO dovrebbe lavorare uno sviluppatore per soddisfare le tue visioni, non te lo chiedi neppure…

    Se molti riescono addirittura a supportare più sistemi operativi significa che il gioco vale la candela e nn è così problematico.

    Come ti dicevo, dipende all’applicazione. Se sono Gameloft, EA, ecc., mi posso permettere di supportare tutto.

    Se sono un piccolo sviluppatore dovrò necessariamente fare le mie scelte. Non ho risorse per fare lo stesso di questi giganti.

    Certo che la produttività è importante per uno sviluppatore ma forse esasperi un po’ troppo questo aspetto, anzi sembri valutare solo questo! Ti sei smentito proprio quando hai citato apple! A quanto pare nn è solo il linguaggio a fare la differenza! Se ha avuto successo su iphone perché non poteva avere successo pure su android in linguaggio “simil C”?

    Mi potresti spiegare una buona volta dov’è che mi sarei “smentito”? Continui ad accusarmi, ma non è affatto chiaro.

    Quotami e dimmi dove starebbe la contraddizione, perché altrimenti comincio a sospettare che tu stia mistificando.

    Inoltre si può dire quello che si vuole ma di “libertà” (quella vera, non quella di Stallman) ne lascia tanta sia ai produttori che agli utenti! è vero può cancellare alcune applicazioni dal proprio market ma nn vieta market alternativi e c’è pure la possibilità di installare applicazioni direttamente dal telefono. Permette di usare browser e lettore alternativi! lascia all’utente la libertà di scegliere il programma preferito!!

    Certo, Google ti può:
    – cancellare l’applicazione dal telefonino;
    – cancellarla dal marketplace;
    – farti un’ingiunzione se osi mettere le mani sulle sue applicazioni o sulle librerie proprietarie;

    e tu continui a parlare di piattaforma “libera”.

    Direi che ogni commento è superfluo: ti smentisci da solo (cit.).

    Il problema di symbian nn è mica stato quello di usare linguaggi basati su c/c++. A riguardo consiglio la lettura di un altro articolo qui su AD di Antonio di Barba (pubblicato tramite Alessio Di Domizio), il punto di vista di uno sviluppatore Symbian http://www.appuntidigitali.it/14743/crisi-symbian-sviluppatore/
    Non parla di linguaggi di programmazione, frammentazione o altro, parla di “incentivare” lo sviluppatore permettendo di pubblicare agilmente e a basso costo le applicazioni sul “market”. Guarda caso da quando nokia ha finalmente realizzato un SDK come si deve, tirato fuori nuovi modelli e semplificato la vita agli sviluppatori le applicazioni sn “esplose” pure su ovi store! Ovvio siamo ancora lontani dai livelli di android e ios e forse si sn mossi troppo tardi, però dimostra che gli aspetti che contano sn altri.

    Antonio non ha nemmeno fatto un confronto sul COME si sviluppa su Symbian, anche con l’ultimo SDK, e le altre piattaforme.

    Sono sicuro che prima o poi si farà, e vedrai che la scelta di un linguaggio come il C/C++ pesa, eccome, sulla produttività.

    Non è un caso che TUTTE le piattaforme mobile moderne hanno un runtime con una virtual machine sotto, e un linguaggio managed.

    Quindi concentrarsi solo su produttività e righe di codice da scrivere è come fare i conti senza l’oste! Se la piattaforma “vincente” impone qualcosa lo sviluppatore si adegua.

    Non v’è dubbio, ma si finisce come la PS3: devi sputare sangue rispetto alle altre piattaforme. Ed è il motivo per cui:
    – tanti giochi esclusivi sono stati cassati o sono stati portati su altre piattaforme;
    – si spende molto di più per lo sviluppo;
    – ci sono meno giochi.

    La frammentazione di android rimane quindi un falso problema perché questo ha permesso l’enorme diffusione del sistema operativo e supportare più terminali in fondo nn è così problematico come si vuole far credere (come ha scritto già qualcun altro qui su AD). Quindi perché lamentarsi? Cioè, va bene lamentarsi non dico di no, si vuole sempre di più e sempre il meglio ma bisogna fare le giuste valutazioni.

    Valutare significa non generalizzare, come nel tuo caso. Il supporto ai terminali dipende molto dal tipo di applicazione/gioco e dall’hardware sul quale deve girare.

    Android, come tutte le piattaforme, cerca di astrarre e fornire delle API per mitigare la situazione. Ma non può risolverla del tutto.

    Il grosso problema è e rimane l’estrema variabilità dell’hardware.

    Sarebbe stato più interessante un articolo che trattava più nello specifico la questione licenze e se per caso c’è qualche “falla” relativa al rilascio dei sorgenti oppure se è google a non rispettare la licenza. Ecco, questo si che sarebbe stato interessante visto che è poco chiaro.

    Il tema dell’articolo è chiaro, e affronta anche il discorso delle licenze. Basta leggere.

    Invece sembra nn aver le idee chiare neanche l’autore dell’articolo che non ha ancora capito bene com’è fatto android e come funzione e si vede da come continua a rispondere ai messaggi.

    Per forza: continui a spararle grosse, ammettendo pure candidamente di non conoscere quello di cui parli…

    Android ad oggi è libero e aperto, si possono prendere i sorgenti, modificarli, ricompilarli, mettere android dove si vuole. Il sistema è funzionante senza problemi. Lo sviluppo nn è tanto “aperto”……è pari pari il discorso che si può fare cn webkit (dove li la licenza gpl nn lascia scampo a “interpretazioni”)!!! Ora il problema è solo honeycomb e il ritardo del rilascio dei sorgenti che usciranno, prima o poi. il problema è tutto qui! A pensare male google sta facendo un favore a qualche costruttore (magari motorola, la prima ad uscire cn un tablet con honeycomb). è da vedere se e quanto la cosa rispetti la licenza……in caso penso che qualche associazione tipo FSF solleverebbe critiche. Apache è definita dalla FSF licenza di software libero e compatibile con la gpl v3. Di certo è sicuro che i vari costruttori hanno accesso al codice sorgente e ci fanno un po’ quello che vogliono.

    Quindi, secondo te, questi http://trac.osuosl.org/trac/replicant si sono fumati qualcosa di pesante, vero?

    Da qui http://replicant.us/about/ :

    “Most of Android is licensed freely under the Apache License 2.0. The Linux core is mostly Free Software under the GPLv2. However, there are numerous components of the default software stack on the devices that are proprietary software. Most notably, nearly any component that touches the hardware directly is proprietary software.”

    Mentre qui http://trac.osuosl.org/trac/replicant/wiki/HTCDreamProprietaryDrivers c’è un bell’elenco di librerie e driver proprietari.

    Anche questi, a quanto pare, non sanno che, come dici tu, prendi i sorgenti e te li compili tranquillamente…

    Per il resto o ti ho già risposto, o ti ha risposto j, col quale concordo.

    @Marco: A Stallman non sta bene né Android né gli smarthphone né le console né… Vabbé. Ci siamo capiti. :D

  • # 33
    Messaggero qualunque
     scrive: 

    a tutti in fans di Google & Sons (Android, Gmail, Maps, blogger, ecc ecc…) consiglio vivamente di leggersi tutti i links di questo sito:

    Google Watch…

    dopodichè, per chi, haimè, ancora non lo conoscesse, consiglio di leggere assolutamente questo e-book:

    E-book…

    solo così potrete (solo per i più attenti e svegli) unire i puntini…

    Occhio, che l’ultimo link non è per tutti…

    i “Golem” non riusciranno a leggerlo…

    Buona lettura ai fortunati…

  • # 34
    Nexol
     scrive: 

    Cesare Di Mauro, zephyr83…

    il vostro è un dialogo tra sordi perché anche se cercate di parlare delle stesse cose, spesso lo fate partendo da due prospettive profondamente diverse, per certi versi opposte:

    – la prospettiva dello sviluppatore il primo;
    – la prospettiva dell’appassionato che segue da anni il settore il secondo.

    Non c’è possibilità di ascoltarsi, figurarsi il capirsi (l’essere d’accordo non è un obbligo), finché almeno uno dei due non ha voglia ed intenzione di mettersi nei panni dell’altro.

    @zephyr83 – #31

    Riferendoti a J, per tua stessa ammissione non riesci a comprendere i suoi discorsi nei messaggi #28 e #30.

    E non è un problema, per carità, se sei un appassionato che non ha mai sviluppato non è mica una colpa, è solo un dato di fatto.

    Così però ti trovi a fare i discorsi del “e che ci vuole” del tifoso che, comodamente seduto nella poltrona del suo divano, non comprende come sia possibile che alla fine di una estenuante partita e dopo una corsa di 80 metri da un capo all’altro del campo, l’attaccante si sia fatto parare il tiro solo davanti al portiere.

    Non basta essere appassionati di un settore per capire la prospettiva di uno sviluppatore, esattamente come non basta essere un tifoso di calcio per capire la fatica di correre dietro ad un pallone.

    O ci corri dietro almeno una volta nella vita e allora semplicemente sai com’è, oppure si resta imprigionati nella falsa certezza del “e che ci vuole”.

  • # 35
    zephyr83
     scrive: 

    @Nexol

    Si vede che evidentemente non sn bravo a farmi capire :) limite mio sicuro, nn è un problema! Non dico che sia una cosa “banale”, dico che non è così tragica come la si vuol far passare come scritto anche da Fabio Bonomo nel suo articolo. Anche sui vari forum si trovano spesso normali utenti (o meglio, non programmatori di mestiere) che iniziano a sviluppare applicazioni per diletto, sia cosa magari “banali” che un pelo più elaborate ed eventuali problemi o incompatibilità non sembrano così problematici o gravi da compromettere tutto. Spesso quando esce una nuova applicazione sul market capita di leggere nei commenti che ci sn problemi con tal modello (solitamente quelli più nuovi) che vengono risolti praticamente sempre nel giro di poco tempo. Un possessore di smartphone android riesce a rendersi conto anche di queste cose pur non programmando! Non ho mai detto che nn ci siano problemi ma sn “falsi problemi” perché il gioco vale la candela! android è si frammentato (mai detto il contrario) come hardware ma questa frammentazione ha permesso la diffusione massiccia del sistema operativo! Lo sviluppatore si trova sicuramente a dover fare un po’ più di lavoro rispetto a ios ma nn sembra un problema così insormontabile come si vuol far passare! inoltre si possono sempre scegliere dei target che permettono ugualmente di avere milioni di utenti! Il problema è quello di non poter supportare in maniera semplice e facile TUTTI i terminali android esistenti? Bhe la trovo una critica molto sciocca e da miopi! senza la frammentazione tanti utenti nn ci sarebbero stati lo stesso. Inoltre un po’ di frammentazione con il tempo si ha anche cn ios e in futuro anche con windows phone! è una cosa nn evitabile! meno accentuata ma presente.
    Sembra invece a leggere alcuni che sia una gran fatica e la cosa freni gli sviluppatori soprattutto quelli alle prime arti o che lo fanno per diletto! Cosa falsissima perché invece la fortuna sia di android che di ios sn stati anche gli sviluppatori “occasionali” o cmq nn quelli che lo fanno di professione. Ed è qui che si è smentito Cesare quando ha parlato di linguaggi di programmazione dicendo che se google avesse scelto un linguaggio tipo c/c++ non avrebbe avuto tanto successo e gli sviluppatori li avrebbero lapidati! Eppure su ios si usa object c e la piattaforma è volata lo stesso, ci programmano sia professionisti che programmatori della domenica! Quindi il discorso che fa è “relativo”! Perché quelli di android dovevano esser lapidati e quelli di apple no? Visto il successo di android le cose sarebbero cambiate anche usando un altro linguaggio di programmazione. Poi ogni cosa ha sempre i suoi pro e contro quindi si valuta nell’insieme!

    @Cesare Di Mauro

    Software libero vuol dire (come lo intende il tuo amico Stallman, cioè come da licenza) che puoi prendere i sorgenti e farne quello che vuoi, realizzare anche un progetto totalmente nuovo che si discosta molto dal primo dove magari non funzionano neanche gli stessi programmi! ma puoi farlo e puoi distribuirlo senza problemi! Non si chiama più android dopo? bhe webkit mica si chiama khtml!!! Ci sn invece progetti open source che puoi “vedere” ma se modifichi qualcosa non puoi distribuirla (non legalmente ovviamente). Puoi prendere i sorgenti di android, modificarli e redistribuirli? SI! Quindi software libero!! Non ti attaccare al market all’applicazione gmail o youtube!!! Il sistema operativo base è libero e puoi farci quello vuoi…….sarà pur anche per questo google sta ritardando il rilascio di honeycomb!
    Poi mi linki anche il wiki relativo a cyanogenmod?
    “Development of CyanogenMod 7 started with the release of the source of Android 2.3 (Gingerbread).”
    è una rom che parte da AOSP che risolve i problemi di licenza di google riguardo le gapps! Lo dice anche nella parte che hai linkato espressamente tu:
    “Until version 4.1.11.1, CyanogenMod included several closed-source applications by Google, such as Gmail, Maps, Market, Talk, and YouTube, as well as several proprietary hardware drivers.”
    Cerca su google compilare android! Cyano si è scaricato i sorgenti, ha fatto le sue modifiche (si ha modificato qualcosa aggiungendo dei “widget” di controllo nella barra delle notifiche, cosa che nn si può fare con la semplice aggiunta di un programma o modificando qualche file di configurazione) e ha ricompilato tutto! Quando vai a flashare il telefono installi la “rom” realizzata da cyano, poi il kernel relativo al tuo telefono (bhe questo lo devo fare io perché il mio magic tim ha hardware leggermente diverso dal magic google experience, oppure chi vuole un “kernel OC”, diciamo così) e poi le google apps per poter avere market, gmail e compagnia!
    Vedo che hai linkato anche tu Replicant…….ma hai visto di cosa si tratta? hai visto quali “parti” proprietarie rimpiazzano?
    Vuoi attaccarti ai driver proprietari adesso? allora sul mio pc kubuntu nn è libero perché uso i driver proprietari nvidia? ma qui mica è colpa del sistema operativo! è colpa del produttore hardware!!! Sul freerunnero di openmolo non ci sn problemi di driver!
    come potresti fare questa cose se il progetto non fosse libero? E lo stesso vale per i produttori! come puoi impedire che facciano le loro modifiche? puoi farlo solo se fai pressione sulle applicazioni proprietarie ed è quello che avviene ad esempio se vuoi avere accesso al market, devi realizzare un modello cn modulo 3G. Ma potresti anche bellamente sbattertene e implementare solo la parte libera…..ovviamente senza market, gmail, maps perde molto e nn avrebbe senso per un produttore, MA si potrebbe fare. Qualcuno potrebbe anche realizzare una versione “ridotta” di android magari per sistemi di fascia bassa, senza market e senza qualche funzione. E sarebbe legale! magari si chiamerebbe anche diversamente, così come webkit è diverso da khtml! Ecco perché è libero e aperto!! Non so come altro dirlo! Se nelle tue domande continui a chiedermi del market per me allora non hai capito il discorso!
    Certo che puoi realizzare applicazioni che non stiano alle “regole” di google ma non puoi metterle sul SUO market! le puoi installare però direttamente dal telefono oppure da market alternativi (cosa che avviene infatti per quelle rimosse)! Su ubuntu ci sn i repository alternativi per il software proprietario!!! E si ti puoi scaricare i sorgenti di android http://source.android.com/ e ricompilarli come detto prima. Non puoi scaricarti i sorgenti di maps, youtube, market, gmail e altri programmi, ma parliamo appunto di PROGRAMMI. E certo possono esser cancellate applicazioni dal market (è loro, ci fanno quello che vogliono) e anche dal telefono, è una cosa prevista. In quest’ultimo caso non so se è una cosa strettamente legata al market o al sistema operativo (ma nel secondo caso si potrebbe sicuramente modificare partendo dai sorgenti e ricompilando, ma credo sia legata al market).
    Sul tipo di sviluppo ti do’ anche ragione ma è una cosa che criticavo già a suo tempo per webkit! In teoria si può anche contribuire ma è un tipo di sviluppo a “cattedrale” come ha detto anche Emanuele Rampichini, “google” si fa tutto in casa e POI rilascia i sorgenti. Però se trova qualcosa di buono fatto ad esempio nelle varie rom cucinate (tipo quelle di cyano) sicuramente ne può approfittare. Certamente non è un tipo di sviluppo stile “open source”, ma questo non ce lo aveva neanche Stallman per essere :D Alla fine è sempre lo sviluppatore originario che decide come sviluppare….però tutti sono liberi di prendere i sorgenti e farne quello che vogliono dopo, su questo non vi sn dubbi! E scommetto che google stia ritardando il rilascio dei sorgenti proprio per questo motivo……..però nn è che se li tiene sempre per se, ha solo detto che li rilascerà quando il sistema sarà davvero pronto! non è un modo di fare molto aperto e ti do ragione ma poi il sistema lo sarà……stesso discorso che abbiamo già fatto in passato per webkit!!! Sarebbe più interessante capire qual è l’obbligo dato dalla licenza e se sn previsti limiti di tempo a riguardo, evidentemente no.

    Discorso J2ME! Vedo che quello riportato da wiki non ti basta! ho trovato una vecchia guida che avevo stampato tanti anni fa relativa proprio a J2ME, si chiama Guida J2ME – Midp 1.0 (quindi molto vecchia) e dovrebbe essere di WMLscript.it ricercandolo su internet ho trovato un documento molto simile (identico in alcune parti) su tesionline (forse l’autore della guida è lo stesso che ci ha fatto la tesi), riporto una pagina in particolare
    http://www.tesionline.it/consult/preview.jsp?idt=24111&pag=7
    “Sebbene si tratti di uno standard aperto, non mancano alcune peculiarità che possono causare problemi di compatibilità tra terminali differenti, proprio per il problema visto della lezione precedente della creazione dei profili. Siemenes, ad esempio, ha definito una serie di librerie proprietarie che risiedono solo sui propri terminali e che permettono di controllare alcune funzionalità del telefono (ad esempio la vibrazione).
    Oltre alle librerie proprietarie legale al terminale, vi è la disponibilità di differenti Virtual Machine (gli interpreti delle applicazioni Java), se ne citano due a titolo di esempio:
    – Aplix Jblend, diffuso in Giappone, sono solo sui telefonini ma anche su Pda e videocamere;
    – PersonalJava, legato alla piattaforma Symbian e appoggiato su CDC”

    Jblend ce l’avevo mi pare pure su windows mobile e lo usavo inizialmente pure su android per alcuni programmi come skebby e jacksms.
    Queste sono cose che si “sanno” anche senza essere programmatori ma semplicemente seguendole con il tempo! Certo che c’era tanta frammentazione (anche se per me meno rispetto ad adesso……..cmq parliamo di telefoni con sistema proprietario, sugli smartphone symbian già l’hardware era meno eterogeneo) ma la JVM usate dai vari produttori nn erano tutte uguali e questo complicava ulteriormente le cose. Samsung ad esempio ne ha quasi sempre avute da schifo (almeno sui vecchi telefoni cn sistema proprietario, mi sembra che dall’omnia hd in poi le cose siano cambiate) e anche se si disponeva di terminali più potenti della concorrenza si ottenevano prestazioni inferiori (nel thread su hwupgrade.it ci si rende conto bene). In motorola ricordo benissimo che i tasti funzione destro, sinistro ok erano disposti diversamente rispetto gli altri. hai parlato di API per il sonoro? Bhe è una cosa in cui Sun si è mossa dopo solo con il MIDP 2.0, prima dovevano arrangiarsi i vari produttori cn api proprietarie! Lo sviluppatore o si concentrava su una marca in particolare oppure tagliava fuori alcuni modelli! Con il tempo diciamo che le differenze si sn attenuate molto, c’è stato sempre meno bisogno di ricorrere ad api e funzionalità proprietarie (anche se alcuni hanno continuato vedi sonyericsson cappuccine), sonyericsson solitamente è sempre stata quella cn un JVM migliore e cn miglior supporto, a seguire nokia!
    Con android questo inconveniente non esiste, il “problema” è solo quello della frammentazione ma si “risolve” decisamente meglio rispetto a j2me.
    E spero di esser stato sta volta!

    Discorso Windows phone! Ok diciamo che ne ha “poche” relativamente alla concorrenza! non intendevo poche in assoluto ma ne mancano tante “importanti” per programmi di un certo livello che arriveranno solo in futuro con gli aggiornamenti. Per quanto riguarda il socket ti riporto un link più appropriato dei tuoi che sinceramente non capisco cosa c’entrano (anzi no lo capisco, il problema è che sei informato su windows phone) che specifica bene la cosa http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/2892a6f0-ab26-48d6-b63c-e38f62eda3b3
    “Windows Phone 7 Series currently does not expose the Socket classes. While the version of Silverlight on the phone follows closely the feature list for Silverlight 3 on the desktop, it is a subset of those features and will not contain all classes. (It also holds a superset of classes not available in Silverlight 3.)”
    Se vuoi che ti dico che non sn stato precisissimo, ok, ma io nel primo messaggio ho chiaramente detto che manca il supporto al socket ed è così, lo sviluppatore non può sfruttarlo, quindi niente programmi tipo skype e compagnia! Anche il gps è presente sul telefono ma non si riesce a sfruttare per navigatori turn-by-turn. Cn Mango si potranno realizzare! Sn tutte cose di cui si lamentano gli sviluppatori! non volevo fare un discorso approfondito e mettere a confronto ogni dettaglio! C’è sempre chi si lamenta e nn basta avere solo un buon framework di sviluppo! Ci sn anche molti sviluppatori che si lamentano pure di apple nonostante sia la piattaforma più redditizia! Poi quando mai ho detto che cn App Inventor di fai applicazioni “professionali”? è uno strumento che mette a disposizione google per chi vuole iniziare a realizzare applicazioni anche se nn conosce alcun linguaggio di programmazione! A me pare un bel strumento per avvicinare ad android anche gli sviluppatori della “domenica”. Sei hai una bella idea puoi anche riuscire a sfruttarla! non era mica mia intenzione stabile una supremazia di android sotto questo aspetto….forse era un tuo tentativo per quanto riguarda windows phone! Non ho mai avuto niente da dire contro la bontà degli strumenti di sviluppo microsoft così come nn ho mai detto che su windows phone è più difficile programmare ma ci sn queli inconvenienti che ho detto attualmente! in futuro probabilmente alcune limitazioni rimarranno ma sn scelte di microsoft così come sn scelte di apple quella di “limitare” alcune funzionalità! Android sotto questo aspetto da molta più “libertà” lascia il compito all’utente di fare attenzione, sempre come dice anche Fabio Bonomo nel suo articolo! Per alcuni questo è un problema maggiore di quello della frammentazione! Io dico che come ogni cosa ha i suoi pro e i suoi contro e molti si lamentano sempre e comunque senza considerare tutto il contesto! Android e windows sono una dimostrazione che quello della frammentazione è un falso problema ed è gestibile e sono più i pro dei contro.
    Per la questione “lavoro del prograttore” ho già risposto all’inizio a Nexol! Non è che la faccio facile ma nn la vedo proprio così drammatica come la si vuol far passare e nn parlo da utente “idealista” o da appassionato! Idealista è chi spera di poter lavorare su un’unica piattaforma con un unico framework, con un linguaggio di programmazione super produttivo e facile e guadagnare tanti soldi! Non si può avere la botte piena e la moglie ubriaca!

  • # 36
    Nexol
     scrive: 

    @zephyr83 – #35

    Nient’affatto, ti spieghi bene e ti si comprende altrettanto; il punto, come già dicevo nel messaggio #34, è la diversa prospettiva da cui osservi le cose.

    Non starò a ripetermi, è lì, si può rileggere in qualunque momento, alcune puntualizzazioni sono invece necessarie per sgombrare definitivamente il campo da ulteriori equivoci e avvicinarti almeno un poco alla prospettiva del programmatore da cui per il momento resti lontano.

    1) Continuare a dire che Objective C è simil C/C++ intendendo con questo che le difficoltà di sviluppo sono più o meno le stesse, è talmente fuorviante da arrivare ad essere semplicemente falso.

    Per farti capire: anche Java è simil C/C++, hanno sintassi simili in molti punti, ma le difficoltà di sviluppo sono drammaticamente differenti. Non entro nel tecnico, per una volta tanto fidati, ma per Objective C è lo stesso, ha un tasso di difficoltà di sviluppo incomparabilmente inferiore a quello di C++ (con cui è giusto raffrontarlo quando se ne usa l’orientamento ad oggetti).

    E’ questo il motivo per cui è possibile usarlo efficacemente nello sviluppo su Iphone, permette di essere produttivi in misura più simile a Java che a C++.

    Sviluppare direttamente in C o C++ sarebbe stato possibile, ma drammatico quando hai l’esigenza non solo di produrre codice funzionante, ma ti devi anche sbrigare perché chi prima arriva prende tutto (il già citato “Time to Market”).

    E qui la storia di Facebook insieme a tante altre insegna.

    2) La frammentazione non è un problema tragicamente insormontabile, questo non mi pare l’abbia detto nessuno, ma resta un problema che un programmatore *deve* affrontare.

    Nella prospettiva del “e che ci vuole” (cioè del *non* programmatore o dello sviluppatore “occasionale”) non mi è difficile immaginare che ciò sia un falso problema: tanto ci sbatti la testa fin quando non risolvi.

    Ma quando il programmatore professionista (nel senso che lo fa di professione per camparci) o la software house (anche lei deve “campare”) si trovano ad affrontare la frammentazione, questo per loro significa tempo e risorse in più per venirne a capo.

    E se nell’ottica del “e che ci vuole” tutto ciò non conta, nell’ottica “Time to Market” invece fa la differenza tra il continuare a fare quel lavoro o invece non essere più sul mercato, cioè tu senza lavoro e la software house chiusa.

    E’ come nel calcio: se cincischi troppo un altro diventa titolare al posto tuo e per te non c’è più spazio.

    3) Quello della frammentazione è un problema che fa “paura” perché è già conosciuto nei suoi drammatici risvolti da chi ha sviluppato sopratutto in ambito web.

    Nessuna ha ancora dimenticato il periodo in cui sviluppare per Internet Explorer, Firefox, Opera e tutti gli altri browser insieme era semplicemente impossibile se non a costo di sforzi sovraumani.

    Pagine specifiche per ogni browser, codice che sniffava il browser per capire con chi aveva a che fare e servirgli la pagina come la voleva lui, e ogni modifica era un incubo perché andava replicata per ogni specifica versione della pagina con 10 diverse possibilità di sbagliare a fronte di una sola modifica.

    La frammentazione non faccio fatica a comprendere che è un falso problema seduti comodi nel “divanetto”, ma per chi la già vissuta “in campo” non faccio fatica a comprendere quanta paura possa fare.

    Tutto qua;
    spero di aver reso almeno un minimo la prospettiva dello sviluppatore da farti sospettare che è un autoinganno continuare a chiacchierare da quel divano.

  • # 37
    zephyr83
     scrive: 

    @Nexol

    1) Io nn ho detto che dovevano usare per forza C o C++, ho detto qualcosa di “simile” come appunto object C e avrebbero avuto lo stesso successo, anzi forse anche di più visto che avrebbe facilitato il porting soprattutto da ios (e non solo) soprattutto per quanto riguarda giochi e programmi multimediali!

    2) Il mio “che ci vuole” si contrappone al “problema esagerato”. Mi pare di aver argomentato molto la cosa! Certo che qualche inconveniente la frammentazione la porta ma per ora su android è stata affrontata molto bene e riescono a superarla anche “piccoli sviluppatori”. La frammentazione anche se porta qualche inconveniente dall’altra ha contribuito a diffondere tantissimo la piattaforma!! Se nn ci fosse stata frammentazione probabilmente nn avrebbero venduti tutti questi terminali con android e gli utenti sarebbero stati pochi…..allora ci si lamenta perché non si riescono a supportare TUTTI i terminali o ci si deve lamentare perché ci sn pochi terminali? Il modello di apple non è facilmente replicabile da altre aziende e anche microsoft per ora nn sembra aver imboccato la strada giusta! ben 10 modelli di vari produttori, lancio in tutto il mondo e hanno venduto circa 2 milioni di terminali in più di 6 mesi! Il nokia N8 in 3 mesi ha venduto 4 milioni di terminali! Sicuramente nokia aiuterà tantissimo le vendite e farà diffondere molto la piattaforma però è da vedere quanto la casa finnica potrà personalizzare il sistema e produrre telefoni magari cn alcune differente rispetto la concorrenza! Nokia nn è certo casa che produce un modello all’anno ed è importante per le differenziare il portafoglio prodotti! Per me anche su windows phone la frammentazione è inevitabile se si vuole diffondere la piattaforma! Sarà sicuramente meno accentuata di android ma inevitabile.

    3) nel caso dei browser era un po’ differente per “colpa” di internet explorer! Ma interessava anche poco risolvere il problema vista la diffusione di questo browser. Con il tempo per fortuna le cose sono molto cambiate. La cosa mi pare più simile al caso di J2ME dove oltre alla frammentazione dei dispositivi c’era anche quella delle JVM diverse fra loro!
    Con android la cosa mi pare ben diversa e meno tragica di come la si vuol far passare! Non si tratta di stare comodi seduti sul divano, la mia “semplicità” si contrappone all’eccessiva “difficoltà” propagandata da altri, come se fosse un problema alla diffusione della piattaforma. Android sta chiaramente dimostrando che nn è così! Si potrebbe fare meglio certamente ma a discapito di qualcos’altro! Quindi lamentarsi della frammentazione considerandola un problema per lo sviluppatore per me è guardare la cosa solo da un punto di vista limitato, perché sta frammentazione e la diffusione di android ha portato molti vantaggi al programmatore sia professionista che “occasionale”.

  • # 38
    Nexol
     scrive: 

    1) Lo hanno fatto anche con Android, si chiama Java, che è tanto simil C/C++ quanto lo è object C, ossia usano sintassi non troppo diverse da quelle a cui lo sviluppatore è abituato.

    Ma pensare che una sintassi simile faciliti il porting di applicazioni è un altro risultato dell’effetto divanetto (passami il termine, lo trovo molto evocativo :-D).

    2) La tua posizione “e che ci vuole” si contrappone al “problema esagerato”, ed entrambi non sono mie posizioni. La mia l’ho già spiegata nel messaggio #36 punto 2.

    3) Riportavo il caso dei browser come esempio per ricordare che la frammentazione è un problema temuto perché già conosciuto in altri ambiti, e si è visto dove porta.

    Comprendo che dal divanetto questo non crei nessuna ansia per il futuro, comprendo che dal campo di gioco questo crei preoccupazione per il futuro che qualcuno poi esprime.

    Tutto qua.

  • # 39
    zephyr83
     scrive: 

    1) Non voglio entrare troppo nel merito della questione ma object C mantiene la compatibilità con C e per chi è abituato a programmare con C si trova sicuramente meglio cn questo che con java. Gli sviluppatori di giochi hanno meno “problemi” su ios che su android! Quelli di VLC la versione mobile per ios (ma anche per maemo) l’hanno fatta subito, su android no, avevano chiaramente detto inizialmente che il problema per loro era java! adesso ci stanno lavorando ma ci stanno mettendo molto.

    2) ma mi pare di aver anche argomento abbastanza la mia posizione :)

    3) non ha mai detto che nn ci siano inconvenienti ma questi inconveniente o ansie vanno anche contrapposte cn i vantaggi in termini di diffusione che porta questa frammentazione. Poi ovviamente sta agli sviluppatori di android stabilire quando sia problematico e se nn ho posso avere la pretesa di farlo io nn può averla neanche un programmatore che nn si è mai cimentato con android! Ma leggo di sviluppatori che si lamentano sia di ios (poca frammentazione, piattaforma molto redditizia) che di windows phone. Trovare una soluzione definitiva mi pare impossibile!!

    Cmq se fosse così problematica questa ansia dovrebbe averla anche chi sta sul divanetto! Paura che la piattaforma non decolli e che gli sviluppatori smettano di supportarla……..ma nn mi pare stia avvenendo niente di tutto ciò!

  • # 40
    Nexol
     scrive: 

    Perfetto, mi pare abbiamo ampiamente espresso le nostre diverse prospettive, e va bene così. (:

  • # 41
    khelidan
     scrive: 

    Google ha ben ragione di preoccuparsi per la frammentazione, si prenda il caso di Touchwitz, la personalizzazione di Android di Samsung montata principalmente sul Galaxy S, credo l’Android più venduto, questa soffriva di una lentezza disarmante, del famoso lag fix e faceva apparire Android come un sistema lento..ma cosa ho detto? Android…non Touchwitz, per la gente quello era Android, quel sistema che confrontato con la fluidità di iOS era imbarazzante era Android non la personalizzazione Samsung…

  • # 42
    zephyr83
     scrive: 

    @khelidan

    Che ci siano interfacce pesantucce è vero (vedi anche motorola e sonyericsson) ma il problema del galaxy S era di altra natura ed era tutta colpa del file system RFS usato da samsung

    “La colpa del ‘lag’ viene all’unanimità attribuito al File System utilizzato per la partizione da 2GB che contiene le applicazioni installate sul terminale. Stando alle informazioni presenti in rete sarebbero le proprietà del File System RFS di Samsung a provocare i ritardi, in particolare per le ricadute sulla gestione dei processi e dell’accesso ai file quando più applicazioni vengono utilizzate in multitasking.”
    http://www.hwupgrade.it/articoli/telefonia/2594/galaxy-s-lag-e-file-system-la-posizione-di-samsung_index.html

    Sul Galaxy SII per fortuna non ci sarà questo file system

  • # 43
    khelidan
     scrive: 

    Ha centrato il punto, le personalizzazioni non si limitano all’interfaccia, Htc e figli personalizza interfaccia, kernel file System, modifiche pesanti a tutti il sistema, lo hai detto bene tu stesso a cosa era dovuta la lentezza del Galaxy, non certo al launcher modificato e se permetti, fossi Google mi incazzare ben bene se mi spacciassero per Android quel sistema così fortemente penalizzato dalle modifiche del vendor

    P.s: non cetra un cavolo ma non c’e modo di iscriversi a AD per non dover inserire in captcha ogni volta che si commenta?

  • # 44
    zephyr83
     scrive: 

    @khelidan

    Google però realizza solo il sistema operativo e si “limita” a rilasciare un terminale l’anno sotto la propria “responsabilità” (anche se ovviamente lo realizzano terzi).
    Alla fine nn ci ha rimesso android ma samsung che ci ha fatto una pessima figura e per fortuna l’ha capita rimediando successivamente (il prossimo galaxy nn avrà quel file system). Però se samsung aveva fatto quella scelta è perché in qualche modo le conveniva (o così pensava). Sta volta le è andata male ma se invece avesse usato un file system migliore con prestazioni superiori a quello usato/consigliato/previsto da google? Questa “libertà” di modifica invoglia i costruttori e nn porta solo a inconvenienti! Prendiamo i primi modelli cn android dove nn era prevista ne’ radio fm o flash della fotocamera…..il primo galaxy (il 7500) è stato il primo ad avere il flash (parlo di quello della fotocamera) offrendo qualcosa in più della concorrenza! cosa possibile grazie alla personalizzazione di android. Htc ha introdotto il fastboot e la stessa sense è diventata motivo di scelta per molti utenti. La sense è apprezzata la motoblur invece viene molto criticata……..htc ha fatto un buon lavoro motorola no. Magari qualcuno sceglierà htc proprio per questo motivo, altri se ne fregheranno e cambieranno launcher installandone uno dei tanti dal market! il successo di android è dovuto anche a tutto questo! Lamentarsi ora per questa “libertà” data ai costruttori mi pare un po’ assurdo! E se domani google decidesse di limitare tutto perché htc o samsung dovrebbero continuare a preferire android anziché windows phone?
    Se vuoi un telefono android senza personalizzazioni puoi prendere il nexus one o il neux s! Ci sn anche altri terminali google experience (vedi il vecchio magic cn vodafone, mentre il magic tim era personalizzato ha htc con molto più memoria ram). La scelta sta all’utente, non mi pare una cosa negativa :)

  • # 45
    j
     scrive: 

    Prendiamo i primi modelli cn android dove nn era prevista ne’ radio fm o flash della fotocamera…..il primo galaxy (il 7500) è stato il primo ad avere il flash (parlo di quello della fotocamera) offrendo qualcosa in più della concorrenza!

    ma è ovvio che a livello di feature hardware gli smartphone (così come i telefoni cellulari prima di loro) non saranno tutti uguali.. ma il senso di una piattaforma informatica è proprio quello di coprire un certo numero di configurazioni hardware astraendo le differenze
    e la presenza o assenza di una singola periferica o di una funzione di una periferica (quali in effetti sono il tuner audio la torcia o il flash della fotocamera) è nè nè meno quello che su qualunque piattaforma si gestisce a livello di codice di supporto periferico senza alterare il core della piattaforma stessa (ma d’ altra parte possibilmente contribuendo tale codice alla code base di riferimento della piattaforma, ad uso di altri chi abbiano a che fare con gli stessi componenti hw da supportare)
    stai chiamando “personalizzazioni” quelli che in effetti sono dei driver, e stai avvallando il comportamento di coloro che sui driver basano il valore aggiunto e di conseguenza le proprie business opportunity … stallman disapproverebbe ;)

    Htc ha introdotto il fastboot

    veramente da quel che si vede in giro htc ha introdotto una modalità di hibernate – quindi una feature che da una parte poteva tranquillamente essere integrata in android mainline, e che dall’ altra è cosa ben diversa da un processo di boot effettivo (*), veloce
    * : boot che definendosi come la serie di processi necessari a portare il sistema dal power on allo stato “ready” iniziale, ha un certo tempo di esecuzione che al di sotto di un valore minimo non può essere portato, ed anche quel minimo tipicamente può essere raggiunto solo adottando accorgimenti (se non magari progettando l’ intera piattaforma in funzione di tale scopo) che non si limitino a quello (ovvio) di avviare tutti e soli i processi necessari, e di avviarli in parallelo asincronicamente ma coinvolgano anche questi (minimizzando le operazioni da svolgere), la sequenza complessiva (eliminando delay e tempi morti in genere e rimandando quello che può essere rimandato – checchè se ne dica, su un desktop personale lo stack di rete può essere avviato in background -senza rendere meno reattivo il desktop, che sarebbe pronto ad eseguire applicazioni locali in meno tempo- dopo il login) e magari la gestione delle risorse a basso livello (per supportare in modo efficiente l’ inizializzazione differita)
    ma quasi nessuna piattaforma lo fa, ed anche quelle poche raramente riescono a scendere come tempi sotto la decina di secondi, cioè un ordine di grandezza di più di quello che può essere “veloce” rispetto ai tempi di reazione dell’ utente medio

    il cosiddetto “fastboot” allo stato attuale non esiste, esistono tempi di boot più o meno lunghi, esistono i workaround (come l’ hibernate con cui si riprende lo stato corrente all’ ultima sessione, non quello iniziale) ) ed esiste il marketing ;)

  • # 46
    zephyr83
     scrive: 

    @J

    Ma mica ho detto il contrario io! però sn personalizzazioni che android permette di fare, cn altri sistemi magari non potresti! Android non prevedeva il flash e quindi ti toccava realizzare un terminale senza…..ci ha messo manu samsung e il flash è saltato fuori perdendo però la classificazione di google experience.
    Idem per il fastboot! è una funzione in più che magari cn altri sistemi nn potresti avere perché non prevista o “vietata”.
    Sn solo esempi, uguali a quello del file system cambiato da samsung sul galaxy S. Sul fastboot mi sn limitato a nominarlo mica a elogiarlo o a dire che faccia cose fuori dal comune! :)

  • # 47
    lakar
     scrive: 

    @zephyr83

    ben 10 modelli di vari produttori, lancio in tutto il mondo e hanno venduto circa 2 milioni di terminali in più di 6 mesi! Il nokia N8 in 3 mesi ha venduto 4 milioni di terminali

    I 10 modelli di win7 non sono come 10 modelli Android che possono essere completamente diversi tra loro. MS ha fissato dei vincoli molto stretti e quindi più che 10 modelli bisognerebbe parlare di 1 modello in diverse varianti. Infatti anche i prezzi erano tutti simili tra i 400 e i 500 euro.
    Poi non capisco dove prendi i dati ma i partner MS hanno distribuito 2 milioni di terminali WP7 in 2 mesi tra fine ottobre e il 31 dicembre (dati ufficiali). Considerato che a fine novembre ne avevano distribuiti 1,5 milioni allora ne hanno venduti quasi 2 milioni in 2 mesi e non in 6… O forse i negozianti buttavano nel fiume i terminali in magazzino senza venderli per poi ordinarne di nuovi? Due milioni era l’obiettivo di MS ed è un buon risultato per un os così nuovo e acerbo e con poche applicazioni.

    Mi spiace ma sul settore della telefonia sei molto poco informato e si vede che nn lo segui!
    Consiglio a te di informarti maggiormente sul settore mobile perché non sei molto ferrato!

    Forse dovresti tu informarti meglio invece di fare un po’ il presuntuoso.

  • # 48
    zephyr83
     scrive: 

    @Iakar

    Verso fine gennaio si parlava di più 2 milioni di licenze vendute! ogni licenza per windows phone equivale a un terminale! Per fine dicembre si parlava di 1.5 milioni di terminali prodotti! Terminale prodotto e venduto è differente quindi a fine dicembre eravamo a meno di 2 milioni di terminali venduti! Poi 10 modelli sono sempre 10 modelli di differenti marche, alcuni cn display più grandi, alcuni con tastiera, alcuni cn più memoria! Non puoi considerarlo come un unico modello come si fa con l’iphone ad esempio!
    L’obiettivo non era certo quello, anzi speravano di venderne molti ma molti di più! Ci sn stati anche produttori un po’ scontenti (vedi LG che da noi era quella con il temrinale meno caro). Ok forse adesso siamo a più di 2 milioni di terminali magari anche venduti ma nn cambia molto il discorso e il prezzo dei terminali è precipitato proprio perché hanno avuto poco successo!
    basta fare una ricerca su google per trovare i dati, tra l’altro quasi tutte le notizie fanno sempre riferimento a egadget (notizia del 26 gennaio)
    http://www.engadget.com/2011/01/26/microsoft-over-2-million-windows-phone-7-licenses-sold-to-man/
    Invece i dati che hai riportato da dove li hai presi?

    Non sn certo stato io il primo a fare il presuntuoso!

  • # 49
    Z80Fan
     scrive: 

    Cmq, se a qualcuno interessa, io mi son messo a compilare Android, per vedere cosa effettivamente si posa ottenere dai soli sorgenti disponibili, Appena ci riesco (hanno creato un sistema di build che stupido è dir poco!), vi posto i risultati.

  • # 50
    lakar
     scrive: 

    @zephyr83
    No, non è proprio così. Si parlava di 2 milioni di terminali distribuiti (cioè prodotti e non necessariamente venduti ma mi pareva chiaro dato che ho parlato di 2 milioni di distribuiti e non di venduti) a fine gennaio perché in quei giorni MS ha pubblicato i dati della trimestrale ottobre-novembre-dicembre in cui dichiarava di aver distribuito/licenziato 2 milioni di WP7 nel trimestre precedente e quindi da fine ottobre/inizio novembre a fine dicembre e non a fine gennaio. Un milione e mezzo erano stati distribuiti a fine novembre e due milioni a fine dicembre. Quindi quasi due milioni venduti (e non solo distribuiti dato che se ne hanno distribuito un altro mezzo milione a dicembre…) in 2 mesi e non 6 come affermavi tu. Il discorso cambia molto.

    Non ho mai detto che i 10 modelli sono un unico modello come l’iphone ma che sono 10 varianti dello stesso modello disegnato dalle specifiche strettissime di MS e non 10 modelli completamente diversi come puoi avere su Android.

    Infine non è vero che speravano di venderne molti di più perché a ottobre MS dichiarò che prevedeva di venderne 2 milioni entro fine anno e quindi l’obiettivo è stato centrato o quasi.

  • # 51
    zephyr83
     scrive: 

    @Z80Fan

    Molto interessante, da quello che ho avuto modo capire/vedere praticamente tutto android tranne le gapps (ovvio escludiamo driver proprietari), però queste dovrebbero essere necessarie per la localizzazione gps altrimenti non funziona! Sul mio android ho provato a installare solo la rom senza gapps e il terminale funziona e si può chiamare, sembra esserci tutto (gapps escluse ovviamente) ma non ho provato la localizzazione (che in passato non aveva funzionato proprio a causa di gapps “corrotte”)

  • # 52
    Cesare Di Mauro (Autore del post)
     scrive: 

    Purtroppo il poco tempo a disposizione non mi ha permesso di continuare a rispondere (altrimenti non sarei arrivato a pubblicare il nuovo articolo). Sostanzialmente concordo con Nexol, j, khelidan, e lakar.

    Rispondo a qualche punto.

    @zephyr83: intanto ti faccio notare che NON hai risposto alle precise domande che ti avevo fatto…

    Ed è qui che si è smentito Cesare quando ha parlato di linguaggi di programmazione dicendo che se google avesse scelto un linguaggio tipo c/c++ non avrebbe avuto tanto successo e gli sviluppatori li avrebbero lapidati! Eppure su ios si usa object c e la piattaforma è volata lo stesso, ci programmano sia professionisti che programmatori della domenica!
    […]
    1) Io nn ho detto che dovevano usare per forza C o C++, ho detto qualcosa di “simile” come appunto object C e avrebbero avuto lo stesso successo, anzi forse anche di più visto che avrebbe facilitato il porting soprattutto da ios (e non solo) soprattutto per quanto riguarda giochi e programmi multimediali!

    Con questo hai dimostrato, semmai ce ne fosse ancora bisogno, che parli sconoscendo del tutto le cose che citi.

    Objective-C (persino il nome sbagli, e non una volta sola!) è molto più produttivo di C/C++. E no, non lo usi come faresti con gli stessi linguaggi, come hanno invano tentato di spiegarti gli altri.

    Secondo te perché Android è basato su Java? Perché a Google c’è gente odia il C per partito preso?

    Poi non capisco cosa avrebbe dovuto utilizzare Apple. Che linguaggio “simil-C” avresti voluto? Per giunta comune anche ad Android (e magari a WP7, a questo punto)?

    Io uno ce l’ho in mente (anzi, ci sto lavorando), ma non ti sarebbe piaciuto. :D

    1) Non voglio entrare troppo nel merito della questione ma object C mantiene la compatibilità con C e per chi è abituato a programmare con C si trova sicuramente meglio cn questo che con java.

    BOOOM! Guarda che i programmatori Objective-C NON LO USANO COME IL C! Ma non esiste proprio.

    Ma perché devi (s)parlare sempre di cose che non conosci? Informati almeno prima!

    Gli sviluppatori di giochi hanno meno “problemi” su ios che su android! Quelli di VLC la versione mobile per ios (ma anche per maemo) l’hanno fatta subito, su android no, avevano chiaramente detto inizialmente che il problema per loro era java! adesso ci stanno lavorando ma ci stanno mettendo molto.

    Mi pare ovvio: è solo perché è più facile il binding fra C e Objective-C. Ma anche su Android puoi richiamare funzioni da librerie scritte in C: serve un po’ di lavoro in più, ma non molto. VLC soffre più che altro del fatto di avere un piccolo team di sviluppatori, che non può pensare a tutto (infatti aveva persino bloccato il porting sui Mac tempo fa).

    Software libero vuol dire (come lo intende il tuo amico Stallman, cioè come da licenza) che puoi prendere i sorgenti e farne quello che vuoi, realizzare anche un progetto totalmente nuovo che si discosta molto dal primo dove magari non funzionano neanche gli stessi programmi! ma puoi farlo e puoi distribuirlo senza problemi!

    Questo è palesemente falso, proprio perché ci sono delle licenze di mezzo, che te lo possono impedire. Infatti la GPL è liberticida e pure virale, ma questo lo dovresti già sapere…

    Poi mi linki anche il wiki relativo a cyanogenmod?
    “Development of CyanogenMod 7 started with the release of the source of Android 2.3 (Gingerbread).”
    è una rom che parte da AOSP che risolve i problemi di licenza di google riguardo le gapps! Lo dice anche nella parte che hai linkato espressamente tu:
    “Until version 4.1.11.1, CyanogenMod included several closed-source applications by Google, such as Gmail, Maps, Market, Talk, and YouTube, as well as several proprietary hardware drivers.”
    Cerca su google compilare android! Cyano si è scaricato i sorgenti, ha fatto le sue modifiche (si ha modificato qualcosa aggiungendo dei “widget” di controllo nella barra delle notifiche, cosa che nn si può fare con la semplice aggiunta di un programma o modificando qualche file di configurazione) e ha ricompilato tutto! Quando vai a flashare il telefono installi la “rom” realizzata da cyano, poi il kernel relativo al tuo telefono (bhe questo lo devo fare io perché il mio magic tim ha hardware leggermente diverso dal magic google experience, oppure chi vuole un “kernel OC”, diciamo così) e poi le google apps per poter avere market, gmail e compagnia!
    Vedo che hai linkato anche tu Replicant…….ma hai visto di cosa si tratta? hai visto quali “parti” proprietarie rimpiazzano?
    Vuoi attaccarti ai driver proprietari adesso? allora sul mio pc kubuntu nn è libero perché uso i driver proprietari nvidia? ma qui mica è colpa del sistema operativo! è colpa del produttore hardware!!! Sul freerunnero di openmolo non ci sn problemi di driver!
    come potresti fare questa cose se il progetto non fosse libero? E lo stesso vale per i produttori! come puoi impedire che facciano le loro modifiche? puoi farlo solo se fai pressione sulle applicazioni proprietarie ed è quello che avviene ad esempio se vuoi avere accesso al market, devi realizzare un modello cn modulo 3G. Ma potresti anche bellamente sbattertene e implementare solo la parte libera…..ovviamente senza market, gmail, maps perde molto e nn avrebbe senso per un produttore, MA si potrebbe fare.

    Forse non hai visto bene il link di Replicant. C’è roba che NON ti permetterebbe di usare il telefonino nemmeno per… telefonare! Altro che Google Apps e Marketplace…

    Sì, sei libero di prendere solo le parti di Android open source, e farci quello che vuoi, per quanto possa essere utile la cosa (vista la mancanza di librerie e driver fondamentali). Non chiamarlo più Android, però.

    E certo possono esser cancellate applicazioni dal market (è loro, ci fanno quello che vogliono) e anche dal telefono, è una cosa prevista. In quest’ultimo caso non so se è una cosa strettamente legata al market o al sistema operativo (ma nel secondo caso si potrebbe sicuramente modificare partendo dai sorgenti e ricompilando, ma credo sia legata al market).

    Viva la libertà!!!

    Discorso J2ME! Vedo che quello riportato da wiki non ti basta! ho trovato una vecchia guida che avevo stampato tanti anni fa relativa proprio a J2ME, si chiama Guida J2ME – Midp 1.0 (quindi molto vecchia) e dovrebbe essere di WMLscript.it ricercandolo su internet ho trovato un documento molto simile (identico in alcune parti) su tesionline (forse l’autore della guida è lo stesso che ci ha fatto la tesi), riporto una pagina in particolare
    http://www.tesionline.it/consult/preview.jsp?idt=24111&pag=7
    “Sebbene si tratti di uno standard aperto, non mancano alcune peculiarità che possono causare problemi di compatibilità tra terminali differenti, proprio per il problema visto della lezione precedente della creazione dei profili. Siemenes, ad esempio, ha definito una serie di librerie proprietarie che risiedono solo sui propri terminali e che permettono di controllare alcune funzionalità del telefono (ad esempio la vibrazione).
    Oltre alle librerie proprietarie legale al terminale, vi è la disponibilità di differenti Virtual Machine (gli interpreti delle applicazioni Java), se ne citano due a titolo di esempio:
    – Aplix Jblend, diffuso in Giappone, sono solo sui telefonini ma anche su Pda e videocamere;
    – PersonalJava, legato alla piattaforma Symbian e appoggiato su CDC”

    Jblend ce l’avevo mi pare pure su windows mobile e lo usavo inizialmente pure su android per alcuni programmi come skebby e jacksms.
    Queste sono cose che si “sanno” anche senza essere programmatori ma semplicemente seguendole con il tempo! Certo che c’era tanta frammentazione (anche se per me meno rispetto ad adesso……..cmq parliamo di telefoni con sistema proprietario, sugli smartphone symbian già l’hardware era meno eterogeneo) ma la JVM usate dai vari produttori nn erano tutte uguali e questo complicava ulteriormente le cose. Samsung ad esempio ne ha quasi sempre avute da schifo (almeno sui vecchi telefoni cn sistema proprietario, mi sembra che dall’omnia hd in poi le cose siano cambiate) e anche se si disponeva di terminali più potenti della concorrenza si ottenevano prestazioni inferiori (nel thread su hwupgrade.it ci si rende conto bene). In motorola ricordo benissimo che i tasti funzione destro, sinistro ok erano disposti diversamente rispetto gli altri. hai parlato di API per il sonoro? Bhe è una cosa in cui Sun si è mossa dopo solo con il MIDP 2.0, prima dovevano arrangiarsi i vari produttori cn api proprietarie! Lo sviluppatore o si concentrava su una marca in particolare oppure tagliava fuori alcuni modelli! Con il tempo diciamo che le differenze si sn attenuate molto, c’è stato sempre meno bisogno di ricorrere ad api e funzionalità proprietarie (anche se alcuni hanno continuato vedi sonyericsson cappuccine), sonyericsson solitamente è sempre stata quella cn un JVM migliore e cn miglior supporto, a seguire nokia!
    Con android questo inconveniente non esiste, il “problema” è solo quello della frammentazione ma si “risolve” decisamente meglio rispetto a j2me.
    E spero di esser stato sta volta!

    Mi spiace, ma continui a parlare di cose che proprio non conosci, tra l’altro tirando fuori roba del paleozoico. Ma almeno hai visto quando è stato introdotto il MIDP 1.0? E il 2.0?

    La mia azienda ha iniziato a sviluppare applicazioni qualche anno DOPO la versione 2.0, che era il principale target di riferimento. Come per tutti i produttori di applicazioni / giochi (in particolare) per J2ME.

    Il supporto alla 1.0 c’era quando:
    – era possibile realizzarlo senza snaturare il software;
    – il parco telefonini installato era consistente.

    E si realizzava tagliando funzionalità che ovviamente NON erano presenti sulla 1.0.

    Per il resto, le API erano sempre le stesse, e quelle si usavano. Amen!

    Al più come dicevo, si teneva conto di bug di alcune implementazioni della JVM (tra l’altro sullo stesso modello di cellulare c’erano firmware diversi, con comportamenti diversi!).

    Riguardo a certe funzionalità, come la vibrazione, o non si usavano, oppure se c’era un sufficiente parco macchine le si prendeva in considerazione (se ne valeva la pena, ovviamente).

    Per il resto, MIDP 2.0 ha offerto una piattaforma abbastanza omogenea dal punto di vista delle API, grafico e sonoro inclusi.

    L’hai letta almeno la documentazione, invece di lanciarti nelle improbabili ricerche di chi non ha la minima idea di quello che sta dietro allo sviluppo su J2ME, e tenta disperatamente un appiglio a sostegno delle proprie fantasie?

    Ti faccio notare, tra l’altro, che quando parli dei problemi delle tastiere, ad esempio, riporti problematiche di cui avevo già parlato prima. Insomma, nemmeno ti rendi conto che avevo già parlato di queste cose, e me le riproponi a supporto delle tue tesi…

    Discorso Windows phone! Ok diciamo che ne ha “poche” relativamente alla concorrenza! non intendevo poche in assoluto ma ne mancano tante “importanti” per programmi di un certo livello che arriveranno solo in futuro con gli aggiornamenti. Per quanto riguarda il socket ti riporto un link più appropriato dei tuoi che sinceramente non capisco cosa c’entrano (anzi no lo capisco, il problema è che sei informato su windows phone) che specifica bene la cosa http://social.msdn.microsoft.com/Forums/en-US/windowsphone7series/thread/2892a6f0-ab26-48d6-b63c-e38f62eda3b3
    “Windows Phone 7 Series currently does not expose the Socket classes. While the version of Silverlight on the phone follows closely the feature list for Silverlight 3 on the desktop, it is a subset of those features and will not contain all classes. (It also holds a superset of classes not available in Silverlight 3.)”
    Se vuoi che ti dico che non sn stato precisissimo, ok, ma io nel primo messaggio ho chiaramente detto che manca il supporto al socket ed è così, lo sviluppatore non può sfruttarlo, quindi niente programmi tipo skype e compagnia!

    Per la precisione il supporto non è completo, ma questo non vuol dire che non sia implementato. Semplicemente non è tutto pubblico.

    Infatti il prossimo aggiornamento lo renderà completamente operativo, perché la libreria completa è già presente, ma non utilizzabile appieno (non ci sono i privilegi per farlo).

    Lo stesso vale per le API di accesso al database: libreria presente, ma non abilitata all’uso.

    Anche il gps è presente sul telefono ma non si riesce a sfruttare per navigatori turn-by-turn. Cn Mango si potranno realizzare! Sn tutte cose di cui si lamentano gli sviluppatori! non volevo fare un discorso approfondito e mettere a confronto ogni dettaglio! C’è sempre chi si lamenta e nn basta avere solo un buon framework di sviluppo! Ci sn anche molti sviluppatori che si lamentano pure di apple nonostante sia la piattaforma più redditizia!

    Mi pare normale. Primo perché ci sono delle oggettive mancanze importanti (ma consideriamo anche che siamo di fronte alla PRIMA versione di WP7; se la confronti con la prima di iOS e Android, beh, a mio avviso ne esce tranquillamente a testa alta).

    Secondo perché gli sviluppatori sono una brutta razza che non si accontenta mai.

    Poi quando mai ho detto che cn App Inventor di fai applicazioni “professionali”? è uno strumento che mette a disposizione google per chi vuole iniziare a realizzare applicazioni anche se nn conosce alcun linguaggio di programmazione! A me pare un bel strumento per avvicinare ad android anche gli sviluppatori della “domenica”. Sei hai una bella idea puoi anche riuscire a sfruttarla! non era mica mia intenzione stabile una supremazia di android sotto questo aspetto….forse era un tuo tentativo per quanto riguarda windows phone!

    Veramente si parlava di sviluppo di applicazioni professionali, e se tu te ne esci fuori con quel giocattolo è ovvio che poi uno s’inalbera, perché sembra una presa in giro…

    Io i giochetti non li ho nemmeno presi in considerazione in tutta la discussione, visto che sono un professionista, non me m’interessano, e non fanno mercato.

    Che ci siano interfacce pesantucce è vero (vedi anche motorola e sonyericsson) ma il problema del galaxy S era di altra natura ed era tutta colpa del file system RFS usato da samsung

    “La colpa del ‘lag’ viene all’unanimità attribuito al File System utilizzato per la partizione da 2GB che contiene le applicazioni installate sul terminale. Stando alle informazioni presenti in rete sarebbero le proprietà del File System RFS di Samsung a provocare i ritardi, in particolare per le ricadute sulla gestione dei processi e dell’accesso ai file quando più applicazioni vengono utilizzate in multitasking.”
    http://www.hwupgrade.it/articoli/telefonia/2594/galaxy-s-lag-e-file-system-la-posizione-di-samsung_index.html

    Sul Galaxy SII per fortuna non ci sarà questo file system

    Il Galaxy S era o non era Android?

    Scusa la domanda un po’ sfacciata. E’ un po’ come chiedere se Lindows era o non era Linux. O:-)

    Infine, sul discorso frammentazione. Quella di WP7 è tutta presunta, come ha cercato di spiegarti anche lakar. E il motivo è molto semplice: http://msdn.microsoft.com/en-us/library/ff637514

    Confrontalo col parco macchine Android e le LORO caratteristiche, e vedi un po’ se la situazione è minimamente confrontabile…

    @khelidan:

    P.s: non cetra un cavolo ma non c’e modo di iscriversi a AD per non dover inserire in captcha ogni volta che si commenta?

    Giro la richiesta ai responsabili. Grazie per la segnalazione.

  • # 53
    zephyr83
     scrive: 

    @Cesare Di Mauro

    Guarda che ho risposto ai tuoi punti! Riguardo objective-c si ho sempre sbagliato il nome spero di starci più attento la prossima volta! Ma non ho mai detto che è uguale al C e che sia meno produttivo! ho fatto un esempio di un linguaggio “simil C” utilizzato senza il rischio di linciaggio! Poi quelli di google hanno scelto java anche per altri motivi, primo fra tutti l’uso di una virtual machine in modo da far funzionare lo stesso identico programma su più architetture senza doverlo ricompilare o modificare (è anche per questo che viene sconsigliato l’uso dell’NDK, tra le altre cose).
    Poi non ho mai detto che è stata una scelta sbagliata, ha i suoi pro e i suoi contro.
    Poi io nn ho mai specificato di realizzare applicazioni professionali o meno! Hanno avuto grande importanza anche applicazioni “banali”! Secondo me sbagli a pensare che il mondo degli smartphone sia uguale a quello dei pc!

    Sul software libero la spiegazione che ho dato è corretta! certo ci sn le licenze che fanno la differenza! Devo capire ancora perché consideri la GPL liberticida, è quella che garantisce più di tutte che i progetti derivati siano a loro volta “liberi”. TU sviluppatore hai la possibilità di scegliere se partire da quel progetto o meno! sai che la GPL è così quindi se nn ti sta bene stai lontano da quel programma, non sei costretto! Se io programmatore originario ho scelto la GPL ci sarà stato un motivo! La scelta è stata del programmatore e la GPL permette di continuare ad avere un progetto sempre libero. Anzi fortuna che c’è, per alcuni progetti è fondamentale (vedi kernel linux). Poi ce ne sn tante altre più o meno permissive, è questione di SCELTE!

    Si android AOSP è libero non come come altro dirlo! i prodotti commerciali venduti “meno” ma mi pare una cosa scontata! Anche sui primi netbook c’erano distro linux modificate, tipo sugli acer one linpus lite cn molte parti modificate senza la possibilità di avere i sorgenti….quindi secondo il tuo ragionamento linpus nn si può definire un os “libero”? è lo stesso discorso! io posso prendere i sorgenti di android, modificarli, rimpiazzare le parti non libere e commercializzare qualcosa di derivato senza problemi. Se nn vuol dire software libero questo non lo so!!!
    Sul tipo di sviluppo concordo con te ma ti ricordo DI NUOVO che queste critiche io le facevo già al tempo di webkit nelle nostre discussioni! Anzi proprio a riguardo, Safari NON è open souce però webkit si!

    Discorso J2ME mi pare di aver già detto tutto, anche qui nn c’è bisogno di essere programmatori ma semplici appassionati che negli anni hanno seguito la cosa! Ogni produttore poteva personalizzare la JVM aggiungendo funzioni! Era più evidente all’inizio poi meno ma in ogni caso qualcuno ha sempre continuato per nn dover aspettare il lento sviluppo di SUN (vedi sonyericsson con il progetto cappuccine). Rimane sempre il fatto che le varie JVM erano diverse fra loro e cn diverse prestazioni! Aggiungiamo ancora che nn venivano mai aggiornate sui vari modelli e il problema di compatibilità e frammentazione aumentava esponenzialmente! è ben diverso da quello che capita adesso con android. Ci fosse stata una UNICA JVM uguale per tutti i terminali magari aggiornabile avremmo avuto una situazione analoga a quella che c’è ora per android dove il “problema” della frammentazione era dovuto SOLO all’hardware e non ad altri fattori.
    O mi vuoi dire che la JVM erano tutte uguali e tutte cn le stesse prestazioni?

    Per quanto riguarda windows phone mi pare di non aver mai detto che in futuro nn verrà aggiornato e migliorerà! Attualmente le cose stanno così! Non ho detto cose sbagliate! Ma era solo per fare un esempio, questa “difesa” al prodotto microsoft mi è sembrata eccessiva! La frammentazione invece arriverà quando aumenteranno i modelli e ci sarà hardware più potente! Per i modelli nokia si parla (anche se per ora sn solo voci) di terminali di fascia più bassa con risoluzione display inferiore a quella attuale!!!

  • # 54
    zephyr83
     scrive: 

    @lakar

    Ho riportato il link di engadged.
    “Il sito fa notare che la cifra di 2 milioni non è molto indicativa per il calcolo delle vendite dei terminali WP7: la vendita di una licenza non corrisponde alla vendita di un terminale! Molte di queste licenze potrebbero essere state acquistate dai produttori per smartphones ancora rimasti sugli scaffali o ancora in fase di produzione!”
    http://mobile.hdblog.it/2011/01/27/2-milioni-di-windows-phone-7-venduti-nellultimo-trimestre/
    Ed ecco un altro link
    http://www.agemobile.com/windows_phone/notizie/microsoft_oltre_2_milioni_le_license_windows_phone_7_vendute_ai_produttori.htm

    Inoltre nn è vero che l’obiettivo di microsoft era così basso, si aspettavano molto di più! Pure i produttori si aspettavano di più, tipo LG che aveva il terminale meno caro.
    Ok forse ora saremo a circa 3 milioni di terminali veduti ma nn penso di più (ma posso sbagliarmi). Di certo le vendite nn sn decollate e nn sn migliorate, anzi finito il periodo natalizio mi sa che sn peggiorate e sn dovuti arrivare a ribassare pesantemente i terminali. Fanno fatica anche nel mercato dell’usato! dubito che quelli di microsoft siano riusciti a vendere altri 2 milioni di licenze e guarda caso non sn stati rilasciati più dati ufficiali mentre recentemente hanno divulgato il numero di applicazioni presenti nel market e quello degli sviluppatori!

  • # 55
    lakar
     scrive: 

    @zephyr83
    Infatti ho scritto anch’io 2 milioni di distribuiti e non venduti. Però dato che a metà dicembre erano già 1,5 milioni non penso che i venditori ne avrebbero ordinato altro mezzo milione se quelle precedenti non fossero già state vendute.

    No, l’obiettivo di MS era proprio di 2 milioni entro fine anno 2010.
    Non sono più stati rilasciati dati ufficiali ma la prossima trimestrale deve ancora arrivare.

  • # 56
    zephyr83
     scrive: 

    @lakar

    Notizia di oggi
    http://www.telefonino.net/business/Notizie/n26979/vendite-catastrofiche-per-windows-phone-7.html
    Pare che a fine 2010 i produttori abbiano venduto circa la metà del milione e mezzo di terminali immessi sul mercato! Microsoft continuo a nn fornire dati ma penso che presto dovrà rispondere a queste voci se false! Nn ha neanche fornito i dati di vendita del primo trimestre! Continuo a sostenere che le vendite di windows phone sn state MOLTO sotto le aspettative, ma molto!!! E se è vero che a fine 2010, sfruttando il periodo natalizio ne hanno venduti così poco, di certo non possono aver fatto molto meglio in questi primi 3 mesi dell’anno!!!

  • # 57
    Giannix
     scrive: 

    x zephyr83

    Quelle che hai riportato sono stime di analisti quindi lasciano il tempo che trovano… Ma com’è possibile commentare così?

  • # 58
    zephyr83
     scrive: 

    @Giannix

    Direi che è passato un bel po’ di tempo ormai! cmq ormai quei dati si conoscono, così come si conosce la diffusione di WP! quelle “stime” si sn rilevati CORRETTE!

  • # 59
    Cesare Di Mauro (Autore del post)
     scrive: 

    Fonte?

  • # 60
    zephyr83
     scrive: 

    Fonte? Gartner, canalys, IDC possono andare? Nel 1Q del 2011 ha “venduto” più windows mobile di windows phone
    http://www.informationweek.com/news/personal-tech/smart-phones/229402844
    http://wmpoweruser.com/gartner-1-6-million-windows-phone-7-handsets-sold-to-customers-in-q1-2011/
    Microsoft nn ha mai rilasciato dati ufficiali, certezze su terminali distribuiti ed effettivamente venduti nn le potremo mai avere quindi non si può verificare se Eldar Murtazin aveva avuto ragione o meno (ultimo link riportato da me in questa notizia). Ma se addirittura le 2Q del 2011 le vendite sn diminuite vuol dire che tanto bene prima allora non erano andate e che forse la differenza tra terminali distribuiti e quelli effettivamente venduti era abbastanza rilevante!
    http://www.ictbusiness.it/cont/news/mai-cosi-male-le-vendite-di-windows-phone/27540/1.html
    Non sostieni anche tu che quelle stime si siano rilevate corrette? e le vendite non sn neanche migliorate nel corso del 2011 tant’è che nokia con circa 1.2 milioni terminali venduti (in un mese e mezzo circa……però chissà come mai anche qui nn rilasciano un dato preciso) è diventata subito il primo produttore di windows phone incrementando significativamente le unità di wp, anche se la quota per il 2011 è rimasta sotto a quella di Bada!
    http://www.canalys.com/newsroom/smart-phones-overtake-client-pcs-2011
    bisogna discutere anche sulle vendite di windows phone adesso? è così “brutto” dire che ha venduto poco e che le cose nn sn andate come si aspettava microsoft? a me nn sembrano che queste analisi lascino il tempo che trovano e le % ricavate mi paiono molto veritiere, altrimenti è inutile anche parlarne, ma per qualsiasi sistema operativo o produttore

  • # 61
    Cesare Di Mauro (Autore del post)
     scrive: 

    Stai mischiando le cose. Porti dati più recenti, pretendendo di fare assunzioni su quelli iniziali, di cui si parlava prima…

  • # 62
    kais
     scrive: 

    Il mischiare le cose è un suo modo di fare continuo, se ti va leggi cosa scrive su hwupgrade.it quando parla di wp7 e android o nella room dei siti di telefonia sempre di wp7, mi domando come può essere così una persona.

  • # 63
    Cesare Di Mauro (Autore del post)
     scrive: 

    Posso immaginare, da quel che ha scritto qui finora.

    Comunque non leggo più i commenti alle news e agli articoli proprio per il caos che impera.

    Se dovessi mettermi a contestare tutto quello che viene sdoganato lì dovrei lavorarci a tempo pieno…

  • # 64
    zephyr83
     scrive: 

    oh chi si vede kais…..
    nn mi pare di aver mischiato nulla, ho risposto a quello che è stato chiesto! all’inizio si diceva che windows phone aveva venduto poco, ora ci sn dati che lo dimostrano! non capisco cosa si stia contestando??

  • # 65
    kais
     scrive: 

    Si contesta il fatto che tu credi di capire qualcosa su android e wp7 ma non capisci manco quello che posti alla fine, la cosa preoccupante è che su tel.net hai fatto bannare tutti quelli che ti dicevano di smettere offendendoti e non, forse perchè qualche mod la pensa come te e non vedeva l’ora di sentire i tuoi sproloqui e chiudere la bocca agli altri, non so che pensare; meno male che almeno qui però ti replicano a tono e mettono in ridicolo le stupidaggini che ti ostini a postare.

  • # 66
    zephyr83
     scrive: 

    si kais, si, è come dici tu ovviamente, si si!

  • # 67
    Cesare Di Mauro (Autore del post)
     scrive: 

    Non è nemmeno come dici tu, fino a quando non riporterai dati oggettivi a supporto delle tue tesi.

    Comunque mi piacerebbe che si chiudesse questo mega OT che dura anche troppo. L’articolo parlava di tutt’altro (il titolo era già molto chiaro), ed è innegabile che quando ci sono certi argomenti tu parta per la tangente, parlando spesso di tutt’altro e facendo confronti che lasciano il tempo che trovano.

    Gradirei, quindi, che negli interventi agli articoli ci si conformasse al loro contenuto. E’ chiedere troppo?

  • # 68
    zephyr83
     scrive: 

    scusa ma quali altri dati dovrei riportare? allora è inutile discutere sempre di terminali venduti e di quote! Nel 2011 sn stati venduti (distribuiti) circa 6.8 milioni di terminali cn WP, dati dichiarati da microsoft (che ha detto di aver venduto un po’ meglio di android durante il suo primo anno) e rilevati dai vari esperti del settore! su questo si può concordare? si sa che di questi 6.8 milioni circa 1.2 sn i lumia di nokia messi in commercio gli ultimi due mesi dell’anno (qualcosa meno se vogliamo fare i precisi)! anche su questo si può concordare? nn si sa il numero esatto all’unità perché nn lo dichiarano, ma le cifre indicate sn quelle, dichiarazioni di microsoft e rilevazioni fatte delle varie società “concordano”! vuol dire che tolti i lumia per tutti gli altri si parla di circa 5.6 milioni di terminali venduti/distribuiti in 12 mesi! I vari dati “ricavati” in questi mesi trovano conferma eccome, nn lasciano il tempo che trovano e sono in linea con il mio intervento #54. O dici di no? Dando per buoni 2 milioni di terminali distribuiti (nn certo venduti) nei primi 3 mesi del 2010, vorresti affermare che nei 3 mesi successivi (i primi del 2011) sn riusciti a ripetersi? Non direi e nn ci vuole chissà quale ragionamento elaborato per trarre questa conclusione! Quali altre considerazioni si possono fare? se poi vuoi darmi contro a prescindere è un altro discorso ma non ne capisco il motivo, le vendite sn quelle e nn avevo detto niente di scorretto a suo tempo!

    Riguardo l’OT che dura da tempo hai ragione ma c’è un utente (sarà kais a sto punto) a cui piace sempre nominare questo articolo, sono tornato a controllarlo solo “grazie” a lui. Però è anche interessante vedere come sono cambiate le cose nel tempo e se alcune previsioni/intuizioni si sn poi rilevate giuste…..nn trovi? niente esclusiva ARM, anzi Intel è interessatissima ad android! In futuro il kernel linux e quello android “torneranno a unirsi” (si parla della versione 3.3)! Per fortuna cn ICS hanno di nuovo rilasciato i sorgenti! Alla fine lo spettro della “frammentazione” non è sembrata fonte di preoccupazioni in casa Mountain View, anzi proprio il cambio di politica con honeycomb di nn rilasciare i sorgenti è quello che si è rilevato il più controproducente di tutti! Ancora cmq devo capire perché l’eventuale rilascio dei sorgenti di honeycomb avrebbe riportato lo spettro della “frammentazione”! Alcuni dubbi erano ovviamente legittimi (meno quello sull’esclusiva Intel) ma forse erano un po’ esagerate le preoccupazioni sulla frammentazione e di certo la “chiusura del codice” nn è stata una soluzione convincente che ha migliorato la situazione! lo sviluppo è sempre saldamente nelle mani di google ma non si avrà più un kernel forkato, alla fine la frammentazione nn porta solo svantaggi ma aiuta tantissimo la diffusione. Più che sull’hardware google ha chiesto maggiore uniformità per quanto riguarda l’interfaccia (chiesto non imposto).
    Ovviamente non sarai d’accordo come al solito con le mi “considerazioni” e dirai che ho straparlando, facendo confusione e mischiando vari argomenti :D e va bhe, tanto mi sa che un punto in comune su sti argomenti nn lo troveremo mai! Ci si risentirà fra un annetto per vedere come sn ulteriormente cambiate le cose!!

    PS mi aspettavo un tuo articolo sul nuovo progetto di canonical di far convivere ubuntu cn android su uno smartphone e della scelta di non rilasciare i sorgenti e addirittura neanche una versione di prova disponibile per gli utenti, ma solo di vendere la soluzione agli oem. Ecco sarebbe un articolo “interessante” su come le aziende scelgono a convenienza quando “supportare” o meno il software libero e l’open source e come questo modello di sviluppo non sembra il più indicato per certi “business”! Di certo canonical è molto più “criticabile” di google sotto questo aspetto! penso che in quel caso potrei trovarmi decisamente più d’accordo con te rispetto a questo articolo!!

  • # 69
    Cesare Di Mauro (Autore del post)
     scrive: 

    Infatti non ho nulla da dire su questa notizia (per me è una notizia perché non ne ero a conoscenza), perché il mio pensiero sull’argomento lo conosci molto bene, e proprio grazie a quest’articolo.

    Che però non parla di frammentazione, a cui ne ho dedicato uno apposito. Quindi perché parlarne qui?

    Poi che quest’articolo venga citato mi può fare piacere, ma non è corretto continuare a inquinarlo parlando d’altro rispetto al topic.

    Infine sui numeri, quelli che hai citato non coincidono con quelli di cui hai parlato nei vecchi commenti. Vatteli a rileggere, prendi la calcolatrice, e vedrai che non ci siamo ancora.

    E visto che non hai modo di dimostrarlo, se non fantasticando un po’, non credo che la situazione sia destinata a cambiare.
    Ergo: cortesemente torna a scrivere se sei realmente in grado di dimostrarlo (con “dimostrazione” = qualcosa avente un rigore più accademico). Se poi, visto che l’articolo parla di tutt’altro, ti limiti a commentare sull’argomento, beh, sarebbe la cosa migliore.

    Sul resto inutile rispondere: ricominceresti coi tuoi post chilometrici off-topic (perché ciò che hai scritto è immancabilmente off-topic), a cui non ho né la voglia né il tempo di rispondere.

  • # 70
    kais
     scrive: 

    Ovvio che è come dico zephyr e ringrazia che qui non ti hanno mandato a quel paese dopo l’ennesimo post tuo come facevo io su tel.net.

  • # 71
    kais
     scrive: 

    Io ho saputo di quest’articolo leggendo su hwupgrade un utente di nome Darth qualcosa che lo citava per rispondere a un altro che parlava di android come software libero e open.
    mi pare sia molto ben scritto e chiaro e leggendo i commenti anche i link di cesare mi paiono corretti, poi però ho letto zephyr83 e ho pensato, pure qui è arrivato a scrivere ********? e vedo che non sono stato il solo a pensarlo.

  • # 72
    Cesare Di Mauro (Autore del post)
     scrive: 

    Adesso stiamo esagerando, però. Non sono tollerate le offese, per cui devo editare. Alla prossima sarò costretto a cancellare il commento.

    La stessa cosa farò coi successivi commenti OT, da chiunque arrivino, come da policy del sito.

Scrivi un commento!

Aggiungi il commento, oppure trackback dal tuo sito.

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.