Wasting time

“Solo”due anni fa:

L’opposto è altrettanto valido: non appena si collega un mouse al tablet, l’esperienza diventa “solo” quella desktop, magari con una piccola eccezione e cioé poter far girare le applicazioni tablet in una finestra in modalità “emulazione” e possibilmente senza touch.

Oggi i rumor:

Users running Threshold on a desktop/laptop will get a SKU, or version, that puts the Windows Desktop (for running Win32/legacy apps) front and center. Two-in-one devices, like the Lenovo Yoga or Surface Pro, will support switching between the Metro-Style mode and the Windowed mode, based on whether or not keyboards are connected or disconnected.

Credo che se la direzione è questa, Windows 9 potrà essere finalmente usabile anche per chi usa il desktop come modalità primaria.

Perché accoglierlo prima questo feedback ed evitare il disastro che hanno combinato finora pareva proprio brutto.

-quack

Pubblicato martedì 1 luglio 2014 alle 12:06 AM - 19 commenti so far
Archiviato in: Windows

Follow the money

Prendo spunto da una serie di commenti sul caso Youtube per Windows Phone per dire con più dettaglio la mia e portare alcune ipotesi a supporto. Userò il parallelo di Office su Linux cercando di spiegare perché lo ritengo completamente valido.

Cominciamo dal fatto che se fossi in Google sinceramente di supportare Windows Phone me ne sbatterei altamente: non solo la piattaforma dal punto di vista della penetrazione di mercato è sfigata, ma se pure avessero sviluppato una app per Windows Phone 7, l'avrebbero probabilmente dovuta riscrivere per Windows Phone 8. E poi forse di nuovo per Windows Phone 8.1

Google è responsabile dello sviluppo delle app per YT sia per Android che per iPhone. Il fatto che WP sia poco interessante è completamente comprensibile nell'ottica costi/benefici. In un'azienda quotata in borsa costi/benefici vanno sempre giustificati: questo non significa che sia l'unico parametro, ma nel momento in cui bisogna giustificare una decisione nell'assemblea degli azionisti, mostrare diligenza sotto questo aspetto è sempre necessario. Da aggiungere: quando controlli sia il client che il server, dal punto di vista ingegneristico qualsiasi scorciatoia è giustificata, come l'assenza di un layer di API propriamente detto.

Dopo di che passerei a fare alcune considerazioni sulla gravità di quello che ha fatto MS quando ha rilasciato la sua "versione" del client per YT. Bypassare due vincoli di servizio d'uso di YT (permettere di scaricare e non visualizzare la pubblicità) è equivalente a rilasciare una versione di WINE per Linux che permette di scaricare Office gratuitamente e bypassare il processo di attivazione: da un'azienda che fa vagonate di soldi e pretende il rispetto dei termini di licenza ci si aspetta che faccia altrettanto. La scusa di "non avevamo le API" non regge. Non. Regge.

Una volta che gli avvocati si sono scornati e l'accordo è stato raggiunto e si è deciso che Google provvederà una API per il supporto di YT su WP (cosa che MS in passato non ha mai fatto, ad esempio lasciando lo sviluppo di Silverlight al reverse engineering amichevole di Novell), il tutto diventa "esecuzione". A questo punto non conosco altri retroscena ma immagino che la feature "creare API per YT con il supporto della pubblicità" sia finita in una lista nelle mani di qualche Program Manager. Pongo l'accento sulla parola "lista". Ogni team ha una lista della spesa di ciò che va fatto e tale lista viene ordinata per priorità, con il famoso rapporto Costo vs. Beneficio a contribuire al peso di ogni elemento.

Si aggiunga che oggi giorno, come qualcuno fa notare, ci sono decine e decine di applicazioni fatte da tabaccai che rendono la questione quasi irrilevante. Google su questi frangenti si è dimostrata abbastanza tollerante, infatti nel marketplace delle estensioni per Firefox campeggiano svariati "youtube downloader", completamente eradicati dal marketplace per Chrome (ci ha fatto caso qualcuno?).

Quanto detto finora dovrebbe essere analitico abbastanza da comprendere quello che sta accadendo: al posto di Google farei la stessa cosa, ed infatti MS ha fatto la stessissima cosa evitando di supportare piattaforme sfigate (Linux; Android ed iOS non qualificano più come sfigate).

Al posto di MS avrei fatto qualcosa di molto più intelligente: visto che su WP gira "il miglior browser mobile in circolazione" (*), avrei creato un'applicazione che - trasformando il contenuto delle pagine HTML in maniera intelligente - avesse delegato al browser il tutto. Avrebbero risparmiato tempo, energie e al tempo stesso ottenuto un prodotto migliore.

Due parole sul fatto che Google non supporta YT su WP per paura del successo di WP: ma davvero questa teoria sembra più plausibile delle famigerate scie chimiche.

-quack


(*) affermazione che mi vede in totale disaccordo; supportare Flash nativamente non è motivo né necessario né sufficiente.

Pubblicato venerdì 13 giugno 2014 alle 8:01 PM - 12 commenti so far
Archiviato in: Microsoft, Google

Quattro mesi report

Sono quattro mesi che ormai lavoro in un ecosistema che non è Microsoft-centrico e volevo raccontare un primo bilancio: il codice si scrive in Java (parte in 1.7, grossa parte addirittura in 1.6), usiamo tool Apache per la build, i database sono MySQL, ecc. Il tutto gira su MacOS, almeno per tre su quattro di noi del team remoto.

In passato ho giochicchiato un po’ con MacOS ma non ho mai fatto niente di produttivo e soprattutto remunerato. Le mie opinioni sono queste:

  1. parlando di lavoro, Windows è a man bassa molto più stabile di MacOS. Sarà colpa del fatto che faccio girare Windows su una virtual machine, ma io osservo un Kernel Panic per settimana. La stragrande maggioranza di questi avviene (credo) durante le power transition. A livello di usabilità però MacOS latest è un pelino meglio di Windows 8.1.1.1.1 ma drasticamente meglio di Windows 8.0, l’OS che usavo per lavoro nell’azienda precedente
  2. se chiedessi a mia nonna di scrivere un Database Engine da zero sono sicuro che farebbe molto meglio di MySQL. Quando c’è un KP lo stato del DB si corrompe nonostante il DB venga usato molto sporadicamente: i DB dovrebbero garantire coerenza anche nei casi in cui si stacca la spina dal muro in maniera violenta. MySQL, almeno nella versione che stiamo usando su Mac, va in palla nonostante sia praticamente fermo. Per non parlare del fatto che neanche mia nonna si sognerebbe di far coincidere i due valori di stringa vuota e null, cosa vera fino alla versione 5.5 (precedente)
  3. la differenza tra Java e C# è abissale, l’effetto è che alla fine mi sento come se mi avessero amputato entrambe le mani. Un’immagine può rendere meglio l’idea:

C#Java

A sinistra C#/.Net; a destra Java/JVM. L’argomento richiede sicuramente un successivo approfondimento, ma… sarà pure che ci sono migliaia e migliaia di librerie, ma nel 2014 codice così mi fa letteralmente vomitare:

private static void seek64(FILE fp, long upos) {
    LIBC.fseek(fp,0,0); // start at the beginning
    while(upos<0) {
        long chunk = Long.MAX_VALUE;
        upos -= chunk;
        LIBC.fseek(fp,chunk,1);
    }
    LIBC.fseek(fp,upos,1);
}

(eh sì, quei genii che hanno disegnato il linguaggio hanno pensato che i tipi senza segno fossero “pericolosi”).

Però almeno finalmente sono arrivate la lambda.

-quack

Pubblicato mercoledì 21 maggio 2014 alle 6:36 PM - 33 commenti so far
Archiviato in: Codice

Paraxenotopia Americana

Tradotto maccheronicamente (Google Translate) dall’inglese per “posti strani”, laddove la geografia politica è governata da coordinate creando risultati interessanti.

Colorado e Wyoming: due stati dai confini perfettamente rettangolari, almeno nelle intenzioni (nella pratica ci sono stati in passato diversi errori e dovute correzioni). Più informazioni qui.

Four Corners: l’unico quadri-punto americano, uno dei pochi al mondo. Ovvero l’unico punto del territorio degli Stati Uniti in cui si toccano quattro stati: Arizona, Colorado, Nuovo Messico e Utah. Reso famoso in un episodio di Breaking Bad.

Haskell Free Library: una biblioteca a confine tra Canada e Stati Uniti, così a limite che il confine è segnato con una striscia nera sul pavimento di una delle stanze della biblioteca.

Point Roberts: exclave degli Stati Uniti in territorio Canadese.

Indiana: lo stato diviso in diversi fusi orari. A peggiorare le cose, la suddivisione stessa è andata mutando nel tempo.

-quack

Pubblicato martedì 20 maggio 2014 alle 2:48 AM - 2 commenti so far
Archiviato in: Cazzate, Seattle e dintorni

Herpes

Finalmente si può comprare una XBox senza Herpes (riferimento alla vignetta spettacolare).

Ovviamente, come è successo persino quando Microsoft ha dichiarato che rimuoveva il DRM restrittivo dalla nuova, qualcuno ci spiega che in realtà accontentando i clienti MS non stia facendo loro un favore perché l’abbiamo già sentito in passato: un certo tipo di DRM è il futuro, il nuovo start screen è il futuro, un bundle che viene mandato giù per la gola è il futuro, ecc. ecc. ecc.

Il ragionamento (sbagliato) è questo: siccome i developer Xbox One sanno che Kinect è ubiqua, ci saranno più giochi che la supporteranno e meglio.

Come se “l’adattabilità” di un gioco alla Kinect fosse un dettaglio estremamente secondario.

Poi ci sono altri aspetti che rendono la faccenda molto triste, come ad esempio il fatto che per l’ennesima volta MS ha bisogno del feedback dei suoi clienti per capire che sta facendo una cazzata. Fossi membro della board sarei molto preoccupato di questo aspetto ovvero del fatto che una azienda è così scollegata dalle esigenze dei propri clienti da richiedere continue e costose correzioni di rotta.

Spero che il nuovo CEO metta la nave in rotta. Trattandosi di un Titanic un certo tipo di latenza è persino prevista. Però mi sembra che i tempi siano maturi per notare le prime correzioni importanti.

-quack

Pubblicato mercoledì 14 maggio 2014 alle 7:20 PM - 15 commenti so far
Archiviato in: Microsoft, Cazzate, Vignette