Live Services

Diversi mesi fa mi è stato assegnato un nuovo task: spostare due campi, dei timestamp, da un servizio di storage ad un altro, con API diverse e allineamenti astrali incompatibili. Un lavoro descrivibile in maniera semplice, come sostituire una ruota forata con quella di scorta ma con qualche piccola complicazione:

  • le ruote forate sono due
  • la macchina è in corsa
  • le ruote di scorta vanno testate
  • il motore ha preso fuoco
  • le ruote forate si autodistruggeranno in meno di un anno

Piccola vittoria giornaliera, mi hanno permesso di sostituire una ruota di scorta per volta, non senza aver paventato il rischio del danneggiamento del telaio se la seconda ruota di scorta fosse riscontrata difettosa.

Come si raggiunge l’obiettivo? Progettando tutto nei dettagli, mantenendo una calma Zen e accontentarsi di un passo alla volta. Fatti i calcoli dovrei poter dichiarare vittoria a Marzo 2017 e celebrare con una torta spaziale.

-quack

P.S. e non è neanche l’unico task a cui sto lavorando. Mi sto divertendo un mondo.

Pubblicato giovedì 24 novembre 2016 alle 1:48 AM - 3 commenti so far
Archiviato in: Google

Nexus 5X: il buono, il brutto, il cattivo

È da un po’, diversi giorni, che uso il Nexus 5X con l’account aziendale. A causa di questo mi è stato detto che, vista la quantità di dogfood che devo necessariamente sorbirmi, non posso fare osservazioni accurate sulle prestazioni in generali o sulla durata della batteria a causa del fatto che il dogfood tende ad essere poco attento a questi due fattori importanti. Ciononostante le mie impressioni sono prettamente positive. E allora senza colpo ferire passiamo al…

BUONO

Lettore di impronte: l’account aziendale, in quasi tutte le versioni, richiede misure di sicurezza aggiuntive come ad esempio l’obbligo di avere il dispositivo criptato o impostare un PIN. Da questo punto di vista il lettore di impronte del 5X con la sua posizione strategica è una vera e propria manna che mi consente di sbloccare il dispositivo con il semplice gesto di sollevarlo dal tavolo (o estrarlo dalla tasca).

Hardware in generale: semplicemente eccezionale, a me lo stile Nexus piace parecchio e lo si dovrebbe capire dal fatto che questo è il mio quinto Nexus. Lo schermo è un tocchettino più grande e dà la possibilità di spremere più icone nell’home screen.

Camera: sulla qualità generale della camera tanto di cappello. 12MP sul retro, 5MP sul fronte, performance ottime anche in condizioni di luce meno che soddisfacenti. Non che sia un patito delle foto fate col cellulare, ma la qualità c’è.

Tempi di ricarica: USB-C in quick-charge mode significa 1% al minuto circa. Da scarico ci metto al massimo novanta minuti per ricaricarlo al 100%. Ottimo.

Supporto a Google-Fi: questo per me è un grande vantaggio. Sono di principio contrario ai piani a pacchetto (paghi tot al mese per X minuti o Y GB; se sfori c’è la penale, se non sfori ci perdi) e Google-Fi va nella direzione giusta, ma ci vuole un dispositivo che supporti lo switching tra rete cellulare e Wi-Fi in maniera seamless. Nexus 6 e Nexus 5X lo supportano. Son passato proprio ieri a Google-Fi e staremo a vedere.

BRUTTO

USB-C: la porta USB-C supporta solo USB2 dal punto di vista del trasferimento dati; mi importa poco, perché è da parecchio che non trasferisco via USB ma è una gran rottura di scatole per via del dover cambiare cavetti e adattatori, almeno fino a quando lo standard non diventa più ubiquo.

Led Notifiche: di default è disabilitato, questo mi lascia presagire che in futuro possa essere rimosso. Io lo trovo molto comodo, se così fosse sarebbe un vero peccato.

CATTIVO

Rimozione di alcune feature: è stata rimossa la stabilizzazione ottica (credo, mi pare che il Nexus 5 ce l’avesse) e la ricarica wireless, anche quella molto comoda; la seconda non è una grossa perdita visto che la velocità di ricarica sarebbe estremamente bassa e la batteria comunque, anche in condizioni svantaggiose, sembra riuscire a tenere testa al carico di lavoro giornaliero.

Bottomline: come in passato, nel passaggio da Nexus 4 a Nexus 5 (ouch, scopro di non averne mai parlato!), ho sofferto un po’ con l’upgrade; ho l’impressione però che i pro supereranno presto con la forza dell’abitudine i pochi contro e di tornare al Nexus 5 mi sembrerà presto impensabile come tornare oggi indietro al Nexus 4.

-quack

Pubblicato mercoledì 11 novembre 2015 alle 6:11 AM - 0 commenti so far
Archiviato in: Google, Cellulopoli

7 anni di Chrome

7 anni fa veniva rilasciato Google Chrome.

Quel rilascio lo ricordo ancora, un browser diverso che aveva tutto quello che serviva, funzionava bene, andava veloce e senza non-sense.

Utile anche a dimostrare che se Firefox non ha mai preso piede, non era certo colpa del fatto che IE era preinstallato. Semplicemente non offriva abbastanza da convincere la gente a cambiare browser, come è successo per Chrome.

Amen

Pubblicato giovedì 29 ottobre 2015 alle 10:15 PM - 15 commenti so far
Archiviato in: Google

Impressioni di Settembre

È passato più di un mese dal mio arrivo in Big G e volevo raccogliere un po' di impressioni in questo post. Mi ritengo una persona fortunata perché ho fatto di una delle mie passioni un lavoro felicemente retribuito. Quando ho lasciato la precedente "grossa azienda" sapevo di perdere 'qualcosa' in cambio di avventure sicuramente meno stressanti, qualcosa che non riuscivo a definire con chiarezza. Per raccontare meglio devo però necessariamente fare un piccolo passo indietro agli ultimi tre o più anni lavorativi e chiedo scusa se questo post possa essere letto come troppo "comparativo".
Ho lasciato l'astronave madre nel 2012, sicuramente in uno dei momenti più bui della storia di Microsoft, secondo solo ai vari giri di licenziamenti più recenti: Sinofsky all'apice del potere, le policy del personale al massimo dei danni, Windows sull'orlo di una crisi di nervi. Passare ad Intentional, azienda che sviluppa in C#, è stato il modo migliore per minimizzare l'ansia da rientro pluridecennale nel mercato del lavoro: noi italiani, culturalmente parlando, non siamo molto affini con l'idea di una carriera improntata e supportata dal cambio di azienda. Intentional mi ha lasciato la possibilità di avere un ufficio da arredare, Windows come piattaforma di sviluppo e l'accoppiata fantastica C#/Visual Studio.
Ho perso il comfort di questa familiarità quando ho fatto il passo successivo: un'offerta di lavoro molto interessante, ricevuta nel momento perfetto, per fare qualcosa in Java che sapevo fare anche "appeso bendato a testa in giù e con le mani legate dietro la schiena". Non più un ufficio, ma un openspace; non più VS ma un dover scegliere tra NetBeans e IntelliJ (di Eclipse non se ne parlava neanche). Ho reimparato in fretta Java non senza sentirmi spesso ammanettato dalla mancanza di alcuni costrutti molto pratici disponibili in C#. A questo punto ho pensato di essere pronto a tutto tranne al panico.
Quando ho deciso di lasciare l'azienda precedente ho pensato di prendere in considerazione le tre classiche "big corporation" dell'informatica con una forte presenza locale ovvero Amazon, Facebook e Google. L'esperienza di tornare a fare colloqui è stata in parte elettrizzante, tra siti che raccolgono questo tipo di domande, colloqui telefonici, screening, pre-screening e loop "dal vivo". Tra le tre, anche per motivi logistici (Amazon e Facebook hanno la sede in Seattle: bisogna macinare miglia, attraversare il tratto di autostrada più costoso al mondo, ingiacchiarsi per il parcheggio, ecc.), avevo forti preferenze per Google ed alla fine - il destino - ha voluto così e oggi sono qui.
Com'è Google? Gli aspetti positivi sono tanti e dal punto di vista della mia carriera un paio sono quelli che mi hanno convinto che in questo momento sono nel posto giusto:

  • i manager fanno i manager; si occupano semplicemente di rendere gli sviluppatori produttivi; la guida tecnica è delegata agli sviluppatori senior (technical lead o technical lead manager). Un manager viene giudicato dalla sua abilità di promuovere gli sviluppatori che lavorano per lui; più il manager riesce a promuovere, più il manager viene premiato/promosso a sua volta. Per evidenziare meglio questo il metro per un manager in Microsoft, quando ho lasciato, era nella sua abilità nell'applicare la curva che tradotto in soldoni significa avere a disposizione un 10% di sottoposti da mazzulare (in Amazon è anche peggio). In due parole in Google un buon manager è semplicemente un ottimo leader e al servizio degli sviluppatori
  • la valutazione delle performance non dipende dal manager, che ha un ruolo di coordinatore/guida per la carriera, ma dal feedback dei propri pari. Se sei un testa di pazzo che pugnala a le spalle i colleghi in modo da dare al tuo manager la testa da mettere sul vassoio qui fai una brutta fine. Mi è stato ripetuto più volte che il modo più facile di fare carriera è di essere un fantastico team player
  • la promozione è un processo estremamente formale che può essere avviato senza l'intervento del manager; durante i periodi in cui è aperta la fase di valutazione, basta mettere un check su una box per attivare tutti i meccanismi necessari
    Dal punto di vista tecnico l'articolo su Wired è molto puntuale (le motivazioni descritte in questo video). Sinceramente devo dire che sono rimasto estremamente sorpreso dai tool di sviluppo che a confronto di quanto era a mia disposizione nel 2012, nell'azienda software più grande del mondo, sono fantascientifici: non sono perfetti, dal punto di vista del debug le limitazioni sono molto forti, ma per il resto davvero chapeau. Scrivere codice che gira in maniera trasparente su più datacenter distribuiti geograficamente è ovviamente complicato.

A parte questo, nelle cose di tutti i giorni relative allo svolgere il proprio lavoro, devo dire che in alcuni aspetti questo posto è meglio dell'altro: ogni sviluppatore è dotato di laptop (a scelta tra Windows/Linux/OSX) (in MS-2012 era un 'lusso' solo per dev lead); le policy di acquisto/ordine di materiale e di viaggio sono completamente liberali; e oltre a tutto questo cibo e snack gratis secondo l'imperativo che tra ogni scrivania e un chioschetto con gli snack ci devono essere non più di venti metri.
Concludendo: le mie impressioni sono molto positive, quello che faccio mi diverte: sono in una fase in cui sto imparando un sacco di cose e mi ritengo circondato da ingegneri estremamente talentuosi. Mi sarei aspettato un ambiente di sviluppo un po' più arcaico (trattandosi di Java) ma mi son subito dovuto ricredere. Ne riparliamo tra qualche mese per scoprire se si tratta di una luna di miele oppure no (*).
-quack
(*) a giudicare dalla serenità gestuale dei miei colleghi credo proprio di no.

Pubblicato martedì 22 settembre 2015 alle 7:34 PM - 9 commenti so far
Archiviato in: Google, Cazzate

Lollipop: il buono, il brutto ed il cattivo

Buono:

  1. Trusted Devices. Una cosa fichissima. Si dà la fiducia ad alcuni dispositivi (Wi-Fi, NFC e Bluetooth) che quando sono nel range del telefono permettono di bypassare il PIN. Geniale!
  2. Phone Encryption. Non appena mi procuro il device giusto (spero che il mio hackeraggio di un Fitbit Charge vada a buon fine), scelgo un PIN ed attivo l’opzione
  3. Pinned Apps e Guest Mode. Ammetto che non è a livello del Kids Corner di Windows Phone ma è la feature che è perfetta. Una volta pinnata un’app non vi si può uscire (tipo kiosk mode) senza una combinazione tasti/PIN. Una manna
  4. Design. Non mi piace inseguire le mode per sé, ma nello specifico ha portato ad alcuni piccoli miglioramenti nell’usabilità. Un esempio sono alcuni bottoni sempre in primo piano (simile alle faccine delle conversazioni di Facebook Messenger). Altro esempio è il dialer leggermente migliorato rispetto a KitKat proprio grazie all’uso di uno di questi nuovi UI element.
  5. USB audio. Non ho intenzione di comprare cuffie USB, ma l’opzione è chiaramente interessante
  6. Durata della batteria. Ho notato NETTI miglioramenti (65% con stima di 1 giorno e 5 ore rimaste).
  7. Flashlight di sistema: considerando quante applicazioni con accesso MALEVOLO (sono pessimista di default) ci sono nel Play Market, anche questa è una grande manna dal cielo
  8. Piccole migliorie di sistema i cui effetti saranno visibili in futuro (ad esempio l’API per la fotocamera)
  9. Il nuovo silent mode: a tratti disorientante, ma con la possibilità di stabilire applicazioni con priorità sul silent mode.
  10. Ottimi progressi nel sistema di setup di un nuovo telefono (ho fatto il Factory Reset) con la possibilità di scegliere quali applicazioni installare. Vedasi foto sotto di chiara ispirazione iOS:

Screenshot_2014-11-22-00-00-36

Brutto:

  1. La finestrella con le opzioni a scorrimento in basso è diventata meno funzionale. Adesso le piastrelle hanno solo funzionalità ON/OFF. Questo è un grosso passo indietro. Un paio di esempi: manca l’accesso diretto alla batteria (prima con uno swipe ed un click, adesso i click sono diventati 3); stessa cosa per manipolare l’accesso al Wifi
  2. Scomparsa dell’app di Email. Non so se mi piace accedere all’account aziendale tramite l’app di GMail. Sono diffidente e non mi sembra una buona idea.
  3. Lo stack BT sembra ancora un po’ fragile. Potrebbe essere un’impressione dovuta ad una pessima implementazione di un’app che sto provando
  4. Manca un sistema centralizzato per i setting. La cosa peggiore è ritrovarsi il telefono con le icone tutte al posto giusto, ma sapere di dover riconfigurare a mano troppe cose: suonerie, account, ecc.

Cattivo:

Davvero non capisco la necessità di rimuovere un tratto inconfondibile di Android Vanilla: l’animazione del tubo catodico spento quando si disattivava il display. Peccato.

-quack

Pubblicato martedì 25 novembre 2014 alle 6:56 PM - 20 commenti so far
Archiviato in: Google