Info:

twitter

Ultimi commenti: Comment feed

Tags:

Sponsor:

Archivio 2018:

Giu Mag Feb Gen

Archivio 2017:

Dic Nov Ott Mag Apr Mar Feb Gen

Archivio 2016:

Dic Nov Ott Ago Mag Mar Feb Gen

Archivio 2015:

Nov Ott Set Mar Gen

Archivio 2014:

Dic Nov Ott Set Lug Giu Mag Apr Gen

Archivio 2013:

Dic Nov Set Ago Lug Giu Mag Apr Feb Gen

Archivio 2012:

Dic Nov Ott Set Ago Giu Mag Apr Mar Feb Gen

Archivio 2011:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2010:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2009:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2008:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2007:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen

Archivio 2006:

Dic Nov Ott Set Ago Lug Giu Mag Apr Mar Feb Gen
Fitbit SDK: come fare tutto sbagliato

Solo qualche mese fa dicevo:

L’unico alibi che posso immaginare è che abbiano rilasciato un qualcosa di piccolo e ben curato in attesa di migliorare e perfezionare il resto

All’epoca per sviluppare una app per FitBit Ionic era necessario installare un firmware beta. Poi ad un certo punto hanno rilasciato il tutto ed è cominciato il mio stupore.

  1. innanzitutto la scelta di usare JavaScript al posto di altro. Se usi un linguaggio da tabaccai, mi lasci pensare che l’audience dell’SDK sarà formata da tabaccai (ed infatti…)
  2. hanno deciso di rilasciare un SDK monco: è impossibile scrivere un’applicazione nativa che comunichi con l’orologio (push). Per fare una cosa del genere c’è bisogno di una companion app che faccia polling
  3. la comunicazione tra companion app e orologio è completamente bacata. Come un prodotto che non è stato MAI TESTATO. Se l’orologio manda due messaggi consecutivi alla companion app, il primo arriva a destinazione, il secondo “si perde” nell’etere. Nel verso opposto le cose vanno un po’ meglio, ma se l’app muore nel 99% dei casi lo stack bluetooth è completamente fottuto (nessun’altra app può comunicare)
  4. il supporto è affidato alla community in cui la partecipazione aziendale ha il sapore di “vi piscio in testa e vi dico che piove” con totale mancanza di trasparenza
  5. il debugging è limitato a “printf(valore)” e l’IDE che è online online è incredibilmente primitivo

Sembra il classico errore di Microsoft che entra in un mercato nuovo, offrendo meno feature della concorrenza e al tempo stesso ostentando l’arroganza di chi il mercato l’ha già monopolizzato, come quando fecero il funerale all’iPhone.

Spero le cose cambino in fretta, io l’affarino che mi permette di sincronizzare passi e challenge con FitBit ce l’ho sempre pronto. Se mi girano torno a Garmin, che con l’ultimo device ha fatto un gran lavoro, o passo ad un Casio Android Wear. L’WSD-F20 sembrerebbe un ottimo dispositivo, costo allucinante a parte.

-quack

Pubblicato giovedì 11 gennaio 2018 alle 9:40 PM - 0 commenti so far
Archiviato in: Cazzate, Software

Onoreficenze

Una delle cose carine che rende più nerdoso lavorare per Google è la pagina personale con un elenco di onoreficenze (tradotto: badge). Ce ne sono tra le più disparate, legate ad esempio alle ultime cifre del numero delle proprie changelist, altre più frivole e così via.

Ieri mi è capitato di cambiare, in un file di configurazione, la sequenza ‘vk’ con ‘vj’. Ho detto scherzosamente ai miei colleghi che, essendo la CL più piccola della mia carriera in Google, avrei meritato un badge. Loro altrettanto scherzosamente mi hanno risposto che c’è qualcosa di più piccolo di un singolo carattere… un bit!

A quel punto ho controllato ed effettivamente la contiguità delle lettere ‘j’ e ‘k’ grazie ad una probabilità del 50% mi ha permesso di realizzare l’achievement. Di più: un badge già esiste ed è dedicato a chi sistema un baco grazie ad una modifica di un solo bit. Presto fatto ho aperto un baco di solito non necessario per modifiche di configurazione e mi son messo in attesa del badge che è arrivato. Eccolo qui in tutta la sua meravigliosa gloria:

1bitbugfix

-quack

Pubblicato giovedì 14 dicembre 2017 alle 3:31 AM - 1 commento so far
Archiviato in: Codice, Cazzate

Apple languages

Da "iOS Programming: The Big Nerd Ranch Guide” terza edizione.

In general, when you have a property that points to an instance of a class that has a mutable subclass (like NSString or NSArray), it is safer to make a copy of the object to point to rather than pointing to an existing object that could have other owners.

Agli arguti lettori il compito di segnalare cosa c’è di grave nella frase di cui sopra. Suggerimento: ci si metta nei panni dello sviluppatore di una libreria.

-quack

Pubblicato martedì 28 novembre 2017 alle 2:30 AM - 0 commenti so far
Archiviato in: Codice, Cazzate

Scacciapensieri

Operazione nostalgia: negli anni ‘80, l’intrattenimento ludico portatile era affidato agli scacciapensieri, video-giochi con schermo LCD con funzionalità di orologio e sveglia, Alcuni modelli erano alquanto introvabili in Italia e un mio amico aveva stabilito un piccolissimo canale di importazione parallelo dalla Svizzera per i parenti più stretti.

Il suo preferito personale era il mitico Donkey Kong II a doppio schermo, originale Nintendo e quindi con giocabilità e dettagli incredibili:

Donkey Kong II

Alcuni produttori terzi si erano spinti anche oltre il doppio schermo, come nel caso di Diamond Hunt:

Diamond Hunt

Erano però gli anni a ridosso della vittoria ai mondiali dell’82 e non potevano mancare schacciapensieri dedicati allo sport nazionale, come Gakken Soccer, distribuito in Italia da Duracell e reperibile anche in un paese di 40mila anime.

Gakken-SoccerLCDDiff

Il gioco è abbastanza semplice, si vince segnando 100 goal e non prendendone 3 altrimenti è gameover (gara di ritorno di un’andata piuttosto bizzarra). L’AI è piuttosto inesistente ma per quei tempi un vero e proprio miracolo e seppur in assenza di guardalinee l’implementazione del fuori-gioco è estremante accurata. Si segna facendo correre la palla lateralmente tramite passaggio, perché il portiere è perfettamente allineato con il giocatore che porta palla ed evitando il fuorigioco. La modalità più difficile è resa tale rendendo il comportamento del compagno di squadra senza possesso palla aleatorio e imprevedibile.

Oggigiorno disponibile agli stessi prezzi originali aggiustati di inflazione, sul distributore ufficiale di nostalgia: ebay.

-quack

Pubblicato giovedì 13 aprile 2017 alle 8:26 PM - 0 commenti so far
Archiviato in: Cazzate

iPhone 6s: il buono, il brutto e il cattivo.

Sono un paio di settimane che il mio iPhone 6S è diventato “il” cellulare che mi porto appresso e volevo fare un paio di considerazioni soprattutto quando confrontato con il mio cellulare precedente.

Stiamo parlando di due telefoni appartenenti a fasce diverse visto che, sconto aziendale incluso, un Nexus 5X oggi costa meno della metà dell’iPhone 6S.

Cominciamo allora con…

…il buono
Le prestazioni sono da favola. Apple usa alcuni trucchetti tipo tenere in cache l’ultima schermata dell’applicazione per dare l’impressione che il dispositivo sia più responsive. Nonostante la quantità di RAM sia la stessa quando lancio Facebook non mi tocca mai aspettare meno di qualche secondo, nella maggior parte dei casi si tratta di decimi. Sinceramente non so se la qualità della RAM e del processore possa avere un tale impatto, resta il fatto che i display hanno risoluzioni diverse e questo potrebbe incidere. Sarei stato felice se il Nexus 5X avesse avuto la stessa risoluzione se le prestazioni fossero state paragonabili, ma così non è.
Per riflesso questo si traduce anche in una foto-camera eccellente. Per il tipo di foto che faccio il burst mode funzionante (no, Camera X non ne ha uno) è altrettanto importante. Sono pure parecchio sorpreso che il buon vecchio HTC OneX ne avesse uno eccellente già anni fa mentre nel 2016 si è ancora legati troppo alla CPU. Devo dire però che in alcuni casi la fotocamera del Nexus 5X, tipo in condizioni di luce fioca, si comporta molto meglio. Mi sarei aspettato l’eccellenza ma è chiaro che la concorrenza sia parecchio agguerrita.
Ho osservato sprazzi di usabilità superiore, tipo quando si cambia una SIM e il sistema chiede di riconfigurare automaticamente il tutto: splendido.
Lo schermo è ottimo, mi piace molto la tonalità dei colori.
Il lettore di impronte funziona esattamente come dovrebbe ma essendo standard da un bel po’ ha un supporto migliore da parte delle applicazioni: tipo potrei loggarmi in banca semplicemente cliccando sul pulsante.
Infine tra le cose buone ho potuto osservare un’ottima durata della batteria: col mio Nexus 5X ci finivo spesso la sera sotto il 15%, per ora invece con l’iPhone mi ritrovo quasi sempre oltre il 50%.

Il brutto
L’ecosistema è piuttosto odioso e questo mi costringe ad utilizzare app di terzi: outlook per gli indirizzi hotmail e Gmail per quelli Google. Stessa cosa per il calendario e il player (l’app musicale di Apple non l’ho praticamente mai aperta). Considero l’ecosistema dei servizi Google parecchio superiore.
Siri: una piccola delusione che fa capire quanto l’AI di Google sia diversi ordini di grandezza migliore della concorrenza. Usare Bing per le ricerche poi è di una tristezza incredibile.
Sistema piuttosto ingessato: così ingessato che certe cose, tipo installare una tastiera, richiedono arzi-gogoli incredibili. La fatica poi per installare due suonerie personalizzate è a livello marziale. Mi dispiace davvero per chi non ha avuto modo di conoscere la libertà che offre Android.
Il launcher modello 3.1 (vs. quello win95 di Android dove il desktop non è il repositorio delle app ma un modo per accedere a quelle più interessanti) è molto primitivo. Se un app non interessa e non è disinstallabile bisogna relegarla in un folder che però non può contenere più di 9 app altrimenti le icone in miniatura non sono visibili. Scelta davvero del piffero che mi ha portato ad avere un folder propriamente chiamato “Apple Crap”.
Lo standard cavettistico proprietario che impone di avere il cavetto benedetto da Apple: tristezza infinita.

Il cattivo
Non ho trovato praticamente niente di cattivo anche se quasi tutto ciò che è brutto è quasi a livello di cattivo.

Spero che il prossimo Nexus, possibilmente basato sul nuovo Snapdragon, valga la pena di farmi tornare indietro. Usare le Google Apps su iOS fa sentire un po’ pesci fuor d’acqua.

-quack

Pubblicato mercoledì 25 maggio 2016 alle 3:27 AM - 40 commenti so far
Archiviato in: Cazzate, Cellulopoli