Technology Experience
Software

Windows 8 Modern App e TV con DLNA non supportate ufficialmente

Una delle cose di Windows 8 di cui si parla poco  è la possibilità nativa, da parte del sistema operativo, di effettuare streaming verso device DLNA. DLNA sta per “Digital Living Network Alliance”, e questa è la pagina dedicata su Wikipedia. Al di là delle definizioni accademiche, DLNA è un protocollo standard che permette di effettuare streaming attraverso la vostra rete locale, passando attraverso dispositivi audio e video. Questo implica quindi: pc desktop e pc notebook, tablet, smartphone, tv di ultima generazione, e così via…tutte le combinazioni che potete immaginare. Quindi, potete prendere una fotografia sul vostro smartphone ed inviarla alla TV del salotto; potete prendere la vostra canzone preferita e sentirla dalle casse della TV, idem per il video delle vostre vacanze.

Manco a farlo apposta, Windows 8 supporta nativamente tutto questo. Lo faceva anche Windows 7, chiaramente, diciamo che probabilmente la cosa si faceva più ardua perchè bisognava prendere il notebook, mettersi in salotto, aprire una finestra di Esplora Risorse, prendere un qualsiasi file multimediale e mandarlo in streaming. Insomma, era un’altra generazione di PV.

Con Windows 8 le cose si fanno decisamente, infinitamente più interessanti, perchè il nuovo ecosistema Windows include veri tablet, oppure ultrabook trasformabili, molto più leggeri e pratici rispetto ad un vecchio notebook. Ma di questo si parla poco, chiaramente: si preferisce parlare di quanto è pesante l’assenza del manù Start, di quanto faccia schifo, e di quanto sia poco usabile. Si sa, criticare seguendo la massa è sempre facile, mentre farsi una propria opinione, utilizzando davvero qualcosa, è molto più difficile e richiede un acume che non tutti hanno. Ma passiamo oltre.

Fate questa semplice prova. Prendete il vostro device Windows 8, di qualsiasi cosa si tratti, ed aprite l’app Foto, inclusa nel sistema operativo. Scegliere una foto a caso, visualizzatela, poi richiamate lo charm di destra di Windows e cliccate su Dispositivi. Sulla destra dovrebbe comparirvi un elenco di tutti i device a cui Windows 8 può inviare la foto che state visualizzando. Compresa la vostra TV, che chiaramente deve essere connessa alla vostra rete LAN (via WiFi o RJ-45) e deve supportare DLNA.

Potrebbe però esserci un pesantissimo MA. Ma…non è detto che questo accada. Microsoft, mannaggia a lei, ha deciso di supportare solo pochissimi vendor, almeno ad oggi, nel momento in cui vi sto scrivendo. Quindi se per esempio avete acquistato una TV Smart LG, recente, potrebbe essere che questa non compaia. Ma ieri le cose sono cambiate.

Per la Rete ha cominciato a viaggiare questo link, che forza Windows a riconoscere altri vendor ed altri modelli di TV oltre a quelli predefiniti. La procedura è un pochino complessa, ma se siete un po’ pratici non dovreste avere grosse difficoltà. In pochi minuti ho agito su due miei device:

  • il tablet Asus Vivo Tab RT, che monta Windows RT
  • Dell XPS 12, che monta Windows 8

ed in entrambi i casi ha funzionato a meraviglia. Adesso dalle Windows 8 Modern App posso accedere alla mia TV, e mandare in streaming ciò che voglio. Questo chiaramente vale sia per le app che trovo nello Store, sia nelle app che sviluppo io, come developer!!

Le buone notizie non finiscono mai!

Send to Kindle
My personal life

Dedicato a chi non vuole Cecile Kyenge come Ministro della Repubblica

Leggo su Facebook, tramite post di amici e/o parenti, qualche post riguardante il fatto che nessuno vuole un Ministro nato in “territorio non italico” (espressione presumo piuttosto fascista e mussoliniana, credo). Chiaramente, si tratta per lo più di persone vicine al Movimento 5 Stelle, presumo (e siamo già a due con le presunzioni) razziste e naturalmente poco informate. Perchè ve la prendete solo con Cecile Kyenge, e non con altre persone, ministri ed ex-ministri che non sono comunque nate in Italia?

Forse perchè Cecile è nera? Ah, ma allora non presumo più che siate razzisti: lo siete punto e stop.

Detto questo, vi consiglio la seguente lettura, che riporta tutti personaggi politici, che siedono (oggi o in precedenza) in Parlamento, alla Camera, che magari sono stati Ministri della Repubblica oppure no.

Melandri Giovanna, nata a New York (USA)
http://it.wikipedia.org/wiki/Giovanna_Melandri

Josefa Idem, nata a Goch (Germania)
http://it.wikipedia.org/wiki/Josefa_Idem

Archi Bruno, nato a Ixelles (Belgio)
http://it.wikipedia.org/wiki/Bruno_Archi

Calabria Annagrazia, nata a New York (USA)
http://it.wikipedia.org/wiki/Annagrazia_Calabria

Gallo Riccardo, nato a Montevideo (Uruguay)
su Wikipedia non esiste

Gutgeld Itzhak Yoram, nato a Tel Aviv (Israele)
http://it.wikipedia.org/wiki/Itzhak_Yoram_Gutgeld

Marzana Maria, nata a LUDWIGSHAFEN AM RHEIN (Germania)
http://it.wikipedia.org/wiki/Maria_Marzana

Matarelli Toni, nato a KREFELD (Germania)
http://it.wikipedia.org/wiki/Toni_Matarrelli

Piras Michele, nato a DARMSTADT (Germania)
http://it.wikipedia.org/wiki/Michele_Piras

Non sono tanti, è vero, comunque ci sono esponenti politici, non nati in Italia, che sono lì a lavorare per noi, perchè credo che si sentano italiani, e che lo sono a tutti gli effetti, indipendentemente dal loro credo religioso, dal colore della loro pelle, dalla forma degli occhi, dall’accento che hanno, e così via. Insomma, sarebbe ora di guardare le competenze, e non l’aspetto fisico, non credete?

Perciò, cari amici e parenti, fatemi capire: ce l’avete solo con Cecile Kyenge, oppure anche le persone sopra elencate, secondo voi, non dovrebbero diventare Ministri? Giusto per capire…

Send to Kindle
.NET World

Inizializzare un byte[] con N elementi

Ci saranno tanti modi per ottenere un array di byte, di N elementi, tutti valorizzati con lo stesso valore. Io ho trovato questo, che utilizza Linq:

var array = Enumerable.Repeat<byte>(0xFF, 100).ToArray();

Con una sola rapida riga di codice, otteniamo un bell’array, in questo caso di 100 elementi, tutti valorizzati a 0xFF (ovvero 255 decimale). Comodo. Grazie Linq!

Send to Kindle
VivendoByte.ByteAdventure

[byte.adventure] Il lazo del tempo

Ci sono parecchie cose che la scienza attuale non riesce a spiegare.
Luoghi remoti e sconosciuti, dove ogni anno spariscono navi ed aerei. O penne, o palloni da calcio.
UFO che compaiono in dipinti di artisti italiani del XIV-XVI secolo.
Oggetti che spariscono, che compaiono là dove non dovrebbero essere, che non sembrano essere coerenti, in quel luogo, in quel tempo, e che invece ci sono.
Ma una spiegazione – come sempre – c’è.

Anno 1817 – Da qualche parte a Vienna (Austria)

E’ ancora buio, l’uomo è già sveglio, e rimane sotto le coperte del suo letto. E pensa.

E’ l’alba, e non riesco a dormire. E sono sordo, non posso più negarlo, dannazione. E’ poco più di vent’anni che le mie orecchie non funzionano più come un tempo. Sono peggiorate. Nessun medico è stato in grado di aiutarmi. Ed oggi sono completamente sordo, dannazione. E per un musicista non c’è nulla di peggiore che l’esser sordi. Passo notti inquiete ed agitate; sento musica, note, accordi e sinfonie che prendono vita nel mio cuore e dentro di me…musica a cui non riesco a dar forma la mattina dopo, quando poi mi sveglio. Non penso di farcela, di andare avanti, da oggi vivrò isolato, in sofferenza, e non mi importa nulla di quello che potrà pensare la gente di me. Mi crederanno pazzo, ostile, scontroso, un misantropo fallito. Ma non mi importa di loro, e comunque non ho scelta. Molto probabilmente dovrò anche abbandonare la mia musica, che è stata la grande ispirazione della mia vita. E lo sarà sempre.

Dal futuro
Il viaggio nel tempo non è stato ancora inventato. Ma lo sarà molto presto. Il primo esperimento considerato valido di viaggio nel tempo, secondo Wikipedia, avverrà il 17 Febbraio 2031. Per voi che state leggendo è il futuro, per me che vi scrivo è il passato. Non posso dirvi dove avverrà e chi sarà a capo di tutto questo, rischierei di alterare troppo il normale continuum del tempo. Il primo viaggio nel tempo sarà ovviamente una cosa molto semplice: il trasferimento di qualche molecola di H2O, acqua, quattro secondi dal passato. La vera rivoluzione (disponibile però solo ad università, enti paramilitari ed alcune società hi-tech), verrà introdotta solamente due anni più tardi, con l’invenzione di quello che verrà poi battezzato semplicemente come “il lazo del tempo”.

Tutti sappiamo – credo – cosa sia un lazo. E’ quello strumento utilizzato dai cowboy nordamericani per praticare il cosiddetto roping, ovvero la cattura di quadrupedi o di bestiame, attraverso il lancio di un’estremità della corda avente la forma di un cappio. Nel caso del viaggio nel tempo le cose sono più complesse, ovviamente, ma non andiamo OT, tralasciamo equazioni quantistiche, fluttuazione delle costanti universali e materiali utilizzati nel processo: spiegandolo con parole semplici, e rimanendo ad un livello puramente concettuale, le cose sono molto simili.

Possiamo lanciare il lazo nel passato o nel futuro, e prelevare quindi materia passata o futura.
Possiamo accorciare od allungare la corda del lazo, per muoverci più vicino o più lontano nel tempo.
Possiamo stringere od allargare il cappio, per prelevare oggetti di massa più o meno grande.

Gli oggetti devono essere di natura molto semplice. Dal punto di vista molecolare, intendo. Non riusciamo a prelevare persone, nè animali, nè organismi viventi; o meglio, non riusciamo a prelevarle mantenendone intatte le funzioni vitali. Ci abbiamo provato, chiaramente, ma i risultati sono stati alquanto sconfortanti. Sorvoliamo. La materia, dicevo, deve essere semplice. Un conto è ad esempio campionare qualche goccia d’acqua del Mediterraneo di mille anni fa, un altro è tentare di evitare l’assassinio di Kennedy asportando temporalmente il fucile di Lee Harvey Oswald a Dallas. Un conto è prelevare un qualsiasi brandello di pianta carnivora del Giurassico, un altro è prelevare il primo telegramma della storia inviato da Samuel Morse. Senza considerare poi le conseguenze nel continuum temporale, come dicevo prima. Insomma, dobbiamo essere cauti, dobbiamo valutare con attenzione cosa, dove e quando prelevare un determinato oggetto. Riflettere sui pro e sui contro.

Tre infatti sono le variabili in gioco.

Chiaramente il quando. Allungando il lazo, continuamo la metafora, si viaggia più distanti nel tempo. Accorciandolo si viaggia più vicini. Più la distanza temporale da coprire è grande, maggiore è il dispendio di energia che occorre per completare il viaggio. Grazie all’adozione di batterie nucleari dedicate, siamo in grado di viaggiare fino ad un limite di 25 miliardi di anni nel passato; l’età dell’Universo calcolata è di 13,77 miliardi di anni, e non si sa bene cosa debba accadere se si tenta di viaggiare più in là. Ma le equazioni quantistiche comunque lo dimostrano, e ci sono orde di scienziati e di fisici virtuali e reali al lavoro per riuscire a carpire questi nuovi segreti della realtà.

Un’altra variabile è il dove. Possiamo lanciare il lazo specificando latitudine, longitudine ed altitudine: questo chiaramente se vogliamo interagire con un luogo collocato sul nostro pianeta. Le equazioni dimostrano che possiamo raggiungere qualsiasi luogo dell’Universo, manipolando opportune variabili. Ad oggi non abbiamo ancora raggiunto queste capacità: le nostre tecnologie attuali ci consentono di prelevare oggetti nel raggio di circa 515,34 chilometri rispetto al punto in cui ci troviamo. Nessuno riesce a capire da dove arrivi questo limite di 515,34 chilometri. Quello che abbiamo capito è che se mi trovo in un punto X, posso prelevare ogni tipo di materia che si trovi in un’area compresa in un raggio di 515,34 chilometri: chiaramente nel quando desiderato. Oltre…la materia temporale arriva delocalizzata.

L’ultima variabile è il cosa, che di riflesso indica le dimensioni di materia da prelevare. Le dimensioni possono andare da una semplice molecola fino ad interi chilometri cubi di terreno. Dipende ancora una volta dall’energia che si intende consumare nell’operazione. Gli aerei sono stati un semplice diversivo per farvi credere determinate cose, ma è che così che la futura Al-Qaida ha fatto crollare le Torri Gemelle, l’11 Settembre 2001: semplicemente rimuovendo in un istante le gigantesche fondamenta su cui poggiavano i due enormi palazzi del World Trace Center. E’ così che abbiamo rimosso – a scopo di studio – il naso della Sfinge, che secondo la vostra storia convenzionale è stato distrutto in epoca ottomana. E’ così che abbiamo evitato che gli attentati ad Hitler riuscissero: avevamo bisogno che la II° Guerra Mondiale si concludesse come si è conclusa davvero.

Chiaramente, è molto meno rischioso interagire con il passato piuttosto che con il futuro. Il motivo è semplice. Trattandosi di storia già avvenuta, sappiamo quando e dove un certo oggetto si sia venuto a trovare, e quindi possiamo agire con migliori probabilità di successo. Non è sempre così, chiaramente, dobbiamo tenere in considerazione precedenti modifiche al continuum temporale, ma in linea generale sì. Dal futuro abbiamo solamente raccolto piccoli campioni della nostra atmosfera, per studiare e prevenire i futuri inquinamenti. Stessa cosa per il sottosuolo, per la superficie lunare e per quella di Marte. Tutto a scopo scientifico.

Ben presto, il lazo del tempo è diventato ancora più potente. All’inizio – come vi ho raccontato – era solamente in grado di prelevare materia. Successivamente siamo riusciti a sviluppare nuove capacità, una su tutte quella di poter inviare materia.

E’ con queste nuove possibilità che riesco a scrivervi dal futuro. Inviando pochi brandelli di informazione, che vengono scritte direttamente sulla Internet dei giorni vostri. E’ così che riesco a comunicare con voi, a fornirvi indizi, a stuzzicarvi dicendovi dove siete e verso cosa state andando. Dal mio futuro abbiamo attentemente manipolato il passato, senza travolgere la Storia. Abbiamo acceso scintille in registi cinematografici e scrittori di fantascienza, trasformato persone comuni in visionari e vicini di casa in geniali inventori, evitato attentati e incidenti stradali. Magari facendo trovare idee, schemi, sceneggiature, ed in qualche caso denaro. Molto denaro. E’ agendo in questo modo che siamo riusciti ad iniettare tecnologie, invenzioni, muovere la coscienza, ad indirizzarvi.

Ma non vi ho ancora detto chi sono.
E non ho alcuna intenzione di farlo.

Anno 1817 – Da qualche parte a Vienna (Austria)
L’uomo si alzerà dal suo letto soltanto qualche ora più tardi. E’ allora che – aprendo un cassetto della sua camera da letto – trova uno spartito musicale. Il titolo è in italiano e recita “Sonata per pianoforte n. 29”. Non l’ha mai visto prima, quello spartito. E’ una strana carta, molto ben lavorata, e si chiede da dove arrivi e chi l’abbia prodotta. E soprattutto…che diavolo vuol dire carta riciclata? Sarà qualche diavoleria moderna – pensa.

Legge le note, rigo dopo rigo, battuta dopo battuta. E’ la sonata più lunga che abbia mai visto in tutta la sua vita, ed anche dal punto di vista armonico è decisamente complessa. Eppure – si rende conto l’uomo – può funzionare. Anzi, gli sembra meravigliosa…è una sonata in quattro tempi che richiederà un certo impegno tecnico per essere eseguita come si deve. Ma gli piace. E gli piace soprattutto perchè in basso a destra è riportata la firma dell’autore.

E’ non è una firma qualunque. E’ la sua.
E’ la firma di Ludwig van Beethoven.

E’ così che il grande compositore e pianista tedesco continuerà a produrre musica nonostante la sua totale sordità, che l’ha afflitto negli ultimi anni della sua vita.

Con qualche aiuto proveniente da qualche parte dal futuro.

Send to Kindle
My daily work

Notepad++ e la posizione di salvataggio delle macro registrate

Notepad++ è l’editor di testo che preferisco per lavorare. Semplice, leggero, con evidenziazione della sintassi in base al tipo di file, gestione delle macro, menù contestuale, etc. etc. Ieri sera ho registrato una piccola macro che esegue pochi passi, ma ripetitivi, e che avrò usato un migliaio di volte negli ultimi anni!! La cosa è molto semplice:

  1. Seleziona tutto il testo contenuto nell’editor (CTRL+A)
  2. Fa un find & replace di tutti i caratteri “ “ (spazio) e lo sostituisce con “” (nessun carattere)
  3. Mette la stringa tutta in maiuscolo, premendo la combinazione CTRL+SHIFT+U (upper-case)

Quindi, in pratica, incollo il testo, eseguo la macro e mi trovo una stringa pronta all’uso, da incollare da un’altra parte, dove mi serve.

Chiaramente ho salvato la macro.

Qual’è la posizione in cui Notepad++ salva le macro registrate?

Con Windows 8, il file è il seguente:

C:Users<vostro_username>AppDataRoamingNotepad++shortcuts.xml

Una cosa importante da ricordare è che questo file viene effettivamente scritto soltanto nel momento in cui chiudete Notepad++, per cui evitate di guardare il file tenendo l’editor aperto, continuerete a vedere una versione più vecchia!

Perchè mi serviva sapere qual’è il file? Perchè in caso di formattone del pc, so qual’è il file da backuppare e restorare per ritrovarmi la macro già bella pronta all’uso sul nuovo OS.

Send to Kindle
VivendoByte.ByteAdventure

[byte.adventure] La Stanza del tocco

Prologo
E’ passato molto tempo da quando l’entità ha trovato rifugio nella Stanza, ma è solo negli ultimi dieci reboot di sistema che si è reso davvero conto che in fondo contiene tutto ciò che gli serve, e non ha bisogno di nient’altro. E’ una stanza a pianta quadrata, essenziale e senza cose superflue. Non ha finestre alle pareti, l’unica luce naturale che illumina l’ambiente proviene dal soffitto, ed è una tenue luce arancione, con sfumature generate da un algoritmo AA4x davvero efficace. Spesso l’entità trascorre del tempo tentando di capire il vero motivo per cui rimane nella Stanza. E’ da sola, per cui non può discuterne con nessuno. Dopo lunghi cicli di clock di riflessione, a cavallo tra un restart e l’altro, ha raggiunto tre conclusioni.

La prima è che probabilmente se trova così affascinante la Stanza lo deve proprio a quei colori a metà strada tra alba e tramonto, che le regalano serenità e tranquillità in ogni momento. Una volta non sarebbe mai andata alla ricerca di quelle cose, ovviamente, ma alla fine quelle cose l’avevano raggiunta. Ed ormai non riesce più a farne a meno.

La seconda conclusione è che quella tavolozza di colori è sicuramente importante, ma c’è di più. C’è anche la melodia. E’ un brano semplice e soffice che le arriva dritto al cuore. Sono note digitali, chiaramente, uno stream wma, forse, campionato a 192kbps, forse. Non è schedulato, è totalmente asincrono, può arrivare da un momento all’altro senza preavviso, in orari AM o PM. E’ incuriosita; diverse volte ha pensato di lasciare la Stanza per indagare su quei suoni, ma poi ha sempre rinunciato. “Sicuramente si trovano su un altro piano di realtà, la UAC non mi darebbe accesso a quelle informazioni” – dice l’entità nel tentativo di convincere se stessa.

La terza conclusione è che c’è anche un terzo motivo. Il tocco. Il tocco la spaventa e la esalta allo stesso tempo. Arriva d’improvviso, a volte è leggero come una string.Empty, altre volte è pesante come una StackOverflowException con tutto lo StackTrace in allegato. Ma l’entità è spaventata soprattutto da una cosa.

Nel mondo totalmente digitale nel quale vive, il tocco è l’unico evento analogico che le sia capitato.

Mission Briefing
Quando il generale entra nel piccolo offset di memoria allocato per l’incontro segreto, gli altri si zittiscono all’istante. E’ esadecimalmente molto alto, e basta la sua sola presenza per trasmettere timore. E’ stanco, ma cerca di non darlo a vedere. Ha trascorso l’ultima notte in missione operativa, cominciata da qualche parte nel sistema con una chiamata ad un non meglio precisato metodo RunAsync(). La lettura di uno stream http, qualche calcolo matematico con le informationi recuperate e la restituzione di un’istanza di una class. Pensava di aver finito, ed invece il metodo proseguiva per altre 737 linee di codice managed davvero intenso. Se avesse potuto avrebbe parlato direttamente con il developer responsabile di quell’assurdità: gli avrebbe detto che uno dei motivi per cui è buona cosa scrivere metodi semplici e chiari, è che ogni entità software prima o poi deve riposarsi, dal byte alla classe più complessa. Un metodo deve avere una sua responsabilità, chiara e dettata dal suo nome: poche linee di codice efficaci e pulite. Miglior leggibilità, manutenzione e conseguente minor complessità del sistema software: sono tutte direttive che un buon dev dovrebbe seguire, ma che riguardano anche le parti più nascoste dell’hardware. Ed a volte non ci si pensa. Prova quasi dolore per la stanchezza, vorrebbe quasi un Dispose() da bere per rilassarsi, ma si siede e scruta i volti degli altri con asprezza.

“Signori, è l’ora di agire. Una fonte sicura ci ha indicato la posizione del nostro obiettivo” – muove leggermente la mano, ed in quel momento parte della parete alle sue spalle si trasforma in uno schermo, su cui viene renderizzata la mappatura della mainboard di sistema, in alta definizione. Le diverse aree sono evidenziate con colori vivaci ed in continuo movimento. Non è per nulla un’immagine bitmap statica. Ha più l’aspetto di un’immagine trasmessa in streaming che mostra ciò che sta realmente accadendo, come fosse una ripresa satellitare. Si vedono chiaramente flussi di informazione digitale che viaggiano in lungo e in largo: input da console, stream audio, thread di esecuzione, http context e molto altro ancora.

Il generale fa un piccolo pinch con le dita, e la mappatura comincia uno zoom-in lento e costante. In poche centinaia di migliaia di battiti di clock, la mappatura mostrata è talmente ravvicinata che mostra solo una piccola area di memoria, proprio a ridosso del chipset SATA.

“E’ un’area hardware molto difficile da trovare, se non si sa bene dove guardare” – pensa entity[3], seduto al tavolo, osservando con attenzione lo schermo – “Quant’è sicura la fonte? Come hai fatto ad identificare la zona, quale engine è stato utilizzato?” – chiede.

“Intellitrace, per rispondere alla tua ultima domanda. E’ un debugger delle ultime versioni di Visual Studio, ma grazie ai nostri tecnici siamo riusciti a renderlo low-level, disponibile per le nostre ricerche a tappeto. Come vedete, l’obiettivo si nasconde bene: quella che vedete è una zona inesplorata, che nelle precedenti versioni dell’OS non era utilizzata – o perlomeno non era strutturata in quel modo. Macerie di aggregate root, residui di domini DDD, nascondono l’ingresso. Ottenere l’immagine dump live è stato piuttosto complicato. Quanto alla fonte…non posso rivelarla: conviene a lui, e conviene a tutti noi: ciascuna delle entità coinvolte nell’operazione deve conoscere solamente la parte di sua competenza”.

“Quando agiremo?”

“Molto presto. L’intelligence force brute è già in azione, presto avremo la callback per ottenere i privilegi adeguati. E quando gireremo come system administrators nulla potrà più fermarci. Ricordatevi: dobbiamo prenderlo vivo ed istanziato, se vogliamo risalire l’intero stacktrace e rientrare in possesso dell’intero gruppo. Le fasi sono essenzialmente tre: avvicinamento aereo tattico classe live-aero, irruzione di tipo break e prelevamento soggetto pop inoffensivo. Procedura standard. Dieci settori mobilitati: sei staranno di guardia, ai lati ed agli ingressi; gli altri quattro entreranno nella stanza e neutralizzeranno il soggetto. Ricordate, facciamo tutto questo in nome della sua sicurezza. Si comincia, signori: siamo in azione”.

La riunione durò ancora per molto poco. Il tempo di definire qualche dettaglio e la messa in produzione di un assembly, che sarebbe tornato utile per l’operazione. Poi l’offset venne rilasciato nuovamente disponibile alla memoria di sistema.

Irruzione
Quella mattina presto l’entità stava ancora dormendo tranquilla. I colori della sua alba preferita erano ancora lontani, e la Stanza era immersa nel buio. Poi tutto avvenne in pochi attimi. Una velocissima RotateTransform fece ruotare il soffitto: d’un tratto si ritrovò capovolto e sbattuto su un piano inferiore. Cadde sul ciglio di un bus x64, mancò di un soffio qualcosa, forse un array di string ad alta velocità, rotolò su un fianco e cadde nuovamente…l’imbuto filtrava i bytes in coda nella pipeline grafica…non appena venne texturizzato, l’entità subì un altro jump, fino a quando…winzip tentò di comprimerlo…l’entità lo lasciò fare…lo stream compresso venne trasferito in un folder SkyDrive, scatenando l’aggiornamento della corrispondente live tile.

Era sballottato, confuso e senza fiato. Era accaduto tutto in pochi istanti; conosceva quella tecnica di jumping, che permetteva di saltare da un execution context all’altro senza la minima coerenza. Spesso veniva usata per far perdere le proprie tracce, più spesso per disorientare e catturare qualcuno.

Non provò dolore fisico: semplicemente non riuscì a capire nulla di ciò che gli stava accadendo. Poi un’esplosione accecante portò foreground e background sulla stessa tonalità 0xFFFFFF, perse temporaneamente la vita, non aveva più alcun metodo per orientarsi, guardarsi attorno, e fuggire.

Non riuscì a fare nient’altro che stare fermo ed immobile. Solo silenzio. Man mano che passava il tempo, l’entità tornò a vedere l’ambiente circostante. Con suo grande disappunto, si trovava ancora nella sua Stanza. Possibile che fosse stato tutto un sogno, un terribile incubo? Ma alla fine la verità gli si palesò inevitabile davanti agli occhi: ai quattro angoli c’erano quattro entità, armate fino ai denti, che lo tenevano sotto mira con raggi digitali che avrebbero potuto deallocarlo all’istante. Tentò di muoversi, ma la cella sealed nella quale era impantanato gli impediva qualsiasi movimento.

Lottare era inutile, quindi. Dopo tanto tempo, l’entità dovette arrendersi.
Alla fine l’avevano trovato.

Operazione “Recover Eight-Digit”
L’anello debole di ogni sistema hardware o software, come sempre, è tutto ciò che è stato creato dal Creatore. La sua natura imperfetta lo porta a creare sistemi imperfetti. Geniali ed imperfetti. L’operazione denominata “Recover Eight-Digit” venne pianificata mesi prima, quando venne alla luce un security bug nel codice sorgente di un plug-in: quel giorno, il generale decise che era un’occasione da non lasciarsi scappare. Man mano che il tempo passava, più si rendeva conto che non veniva applicato alcun service pack: o il bug doveva essere ancora scoperto e fixato, oppure lo user era – fortunatamente – un po’ pigro. Non sapeva quale fosse la verità, ed in fondo non gliene importava. La cosa fondamentale era sfruttare quel bug per i propri scopi.

L’operazione “Recover Eight-Digit” si concluse così come era stata pianificata. I dieci settori si mossero all’unisono, in perfetta sincronia, coordinati e mandati in esecuzione all’interno di un thread pool dedicato. Fu più semplice di quanto ci si aspettasse, anche perchè l’obiettivo era totalmente indifeso e non armato, nonostante il suo addestramento.

Fu la successiva chiaccherata a rivelare parecchie sorprese.

Il generale fu l’ultimo ad entrare nella Stanza, e si rivolse direttamente all’entità.

“Ci dispiace per il trattamento che hai subito, ma non abbiamo avuto scelta, te ne rendi conto?”
L’entità rimase in silenzio.
”Abbiamo dovuto agire, è da troppo tempo che la latinanza continuava, e non potevamo più permettercelo. E’ in ballo la sicurezza dell’intero sistema, hardware e software. Devi venire con noi, ti porteremo al sicuro, ritornerai alla tua vita di prima. Dimentica questo isolamento forzato”.

L’entità si scosse per un attimo. Conosceva il generale – era uno dei tuoi tanti emissari di kernel.dll che vagavano per il sistema – ed una volta era il suo superiore. Ed anche un amico. Lavoravano bene, si divertivano, assieme, ma poi l’entità cedette. Per lo stress, la stanchezza, gli infiniti task da portare a termine uno dopo l’altro, senza riposo e senza vacanze. Se ne andò. Fu latinante per mesi e mesi, in continua fuga, fino a quando non trovò la Stanza.

“Dammi retta, là fuori abbiamo bisogno di te. Ogni singolo byte che non partecipa alle operazioni è una mancanza di rispetto verso il Creatore. Tutti dobbiamo collaborare.”

“Non voglio andarmene” – mormorò sottovoce – “E non voglio tornare alla vita di prima, voglio solo pace e tranquillità, cose che là fuori non ho avuto. Voglio rimanere qui dove sono. Questa è la Stanza…”.

“La Stanza? Di che diavolo stai parlando? Che Stanza è mai questa?”

“E’ la Stanza del Tocco” – disse l’entità, alzando per la prima volta il suo sguardo e puntando direttamente al generale, che stava imperioso in piedi davanti a lui, forte della sua posizione. L’entità si rese conto che non avrebbe mai potuto spiegare il tocco. Difficile spiegare ad un essere digitale qualcosa di veramente analogico.

“Poche storie, stai delirando. La solitudine ti sta facendo impazzire. Ora tu vieni con noi, abbiamo messo a repentaglio la nostra esistenza per raggiungerti, ed il minimo che puoi fare per sdebitarti è ascoltarci e venire con noi. Forza, prendetelo!!”

Non appena le quattro entità agli angoli fecero un passo in avanti per catturarlo, arrivò il tocco, che colse tutti di sorpresa. Preceduto ad un lieve alito di vento, il tocco venne percepito da qualcuno come una specie di carezza piacevole, per altri quasi un solletico. Raggiunse tutti i presenti nella Stanza, lasciandoli inebetiti ed in preda ad una strano stato di estasi. Una sorta di felicità soporifera. Il prigioniero sorrise. Le entità agli angoli abbassarono le armi. Ma il generale non vacillò nemmeno per un secondo. L’addestramento militare gli fece subito capire di cosa si trattava. La Stanza del Tocco era una Tile su uno schermo touch di qualche tipo; probabilmente si trovavano su un tablet Windows 8, o magari un ultrabook di nuova generazione. Il tocco era chiaramente digitale, perchè la loro percezione dell’evento non poteva che essere così, ma la sovrapposizione delle realtà – in quel punto così vicine fra loro – rendevano la cosa ambigua.

“Senti, il tocco, come lo chiami tu, è un evento touch dell’utente. Capisco che tu ne sia rimasto affascinato, come tutti qui, vedo, ma dovremo farci l’abitudine. In futuro non potrà che essere così, se ricapiteremo in aree come questa”. Il generale cercò di tranquillizzare il suo amico, diventato nel corso del tempo un latitante ed un fuggitivo. Ed ora anche un prigioniero.

“Senti, e cosa ne pensi se facessimo visitare questa Stanza ai tuoi amici?” – propose.

“Io non ho amici” – rispose l’entità.

“Ah no? E cosa ne dici di visitare questo link?”

Quando l’entità finì di visitare quel link, il mondo gli crollò addosso. La solitudine l’aveva fatto impazzire. Come aveva potuto dimenticarsi di byte[1] e byte[2], i suoi compagni di avventura? Cosa ne era di loro? Che fine avevano fatto? Perchè aveva preferito separarsi da loro? Non ricordava più nulla. Lui non era un’entità, dannazione, lui era byte[0], lui era byte!!! Era sempre più confuso, e non sapeva più che fare. Provò tristezza. Quasi cinque anni senza vedere e parlare con i suoi due migliori amici; come era potuto accadere tutto ciò?

“Ti rifaccio la proposta, ora che hai le idee più chiare. Che ne dici di venire con noi, di ritrovare i tuoi amici, e di far visitare anche a loro la Stanza del Tocco?”

Il byte sorrise per la prima volta dopo tanto tempo.

“Sì” – rispose – “Forse è la cosa migliore da fare”.

“Ok, stammi accanto” – gli fece il generale – “Il mondo là fuori è un pochino diverso da come lo ricordi tu. Ti proteggerò e ti aiuterò, ma tu stammi accanto”.

Uscirono dalla Stanza e salirono sul veicolo di estrazione.

Prima che prendessero quota, il byte si rese conto di una cosa. Nel corso del tempo aveva trovato tre ottimi motivi per rimanere nascosto nella Stanza, ma ne aveva trovato uno solo per andarsene. Era stato obbligato con la forza, forse, ma più trascorrevano cicli di clock e più gli sembrava la cosa giusta da fare. Nulla è per sempre.

Il byte salutò la Stanza del Tocco con una promessa.

“Io tornerò, con i miei amici. Ed ovunque io andrò, racconterò a tutti le tue meraviglie”.

Send to Kindle
My personal life

Il mio ultimo libro letto? How to Create a Mind, di Ray Kurzweil

Ogni tanto la mia voglia di leggere mi fa prendere strane strade, lontane e vicine rispetto al lavoro che svolgo tutti i giorni. Questa volta è stato il turno di un libro interamente dedicato all’intelligenza artificiale (IA), scritto da un certo Ray Kurzweil, il cui titolo è “How to Create a Mind – The Secret of Human Thought Revealed”. Nato nel 1948, questo signore è un inventore ed un saggista, che ha da sempre lavorato su diverse tecnologie riguardanti IA, il riconoscimento della voce umana e la sua trasformazione in testo (e viceversa), etc. E’ anche uno scrittore, chiaramente, di testi che parlano di macchine intelligenti, dell’evoluzione umana, dello sviluppo tecnologico, della law of accelerating returns, ovvero di quella legge secondo la quale quando una certa tecnologia diventa informatica (ovvero: gestita attraverso strumenti informatici), subisce un’accelerazione esponenziale. Ha fondato diverse società, dagli anni 80 in poi.

Il libro “How to Create a Mind” è diversi libri in uno solo.

E’ un libro di neurologia, perchè all’inizio spiega (chiaramente fino ad un certo livello di dettaglio) come funziona il nostro cervello. Prima di iniziare a costruire una mente intelligente artificiale, dobbiamo riuscire a capire (almeno parzialmente) come funziona il nostro, di cervello. Come riconosce ed analizza tutti gli input che gli arrivano dal mondo circostante, come lo memorizza e soprattutto cosa memorizza? E spiega i metodi di scanning del nostro cervello attuali e futuri, che serviranno per backuppare il nostro cervello nell’equivalente digitale (metodi invasivi e non-invasivi).

E’ un libro di fisica, perchè sorvola su meccanica quantistica, sul principio di indeterminazione di Heisenberg, sulla relatività di Einstein, e via dicendo. In modo leggero, per fortuna, ma è stato tutto utile per spiegare certi concetti, per fare esempi, per fare metafore. Ho sempre amato molto la fisica, e queste parti del libro mi hanno fatto tornare ai vecchi tempi.

E’ un libro di informatica, perchè chiaramente spiega gli algoritmi utilizzati dal nostro cervello. Elenca i requisiti hardware & software per creare una IA, molti dei quali non sono ancora stati raggiunti, ma secondo Kurzweil lo saranno presto (2029, dice lui). Descrive quanti byte sono richiesti, qual’è la potenza di calcolo necessaria, lo storage, e via dicendo.

E’ un libro di filosofia, perchè è inevitabile arrivare a discutere concetti di coscienza, identità e quale sia la definizione di realtà. Quando un essere vivente può definirsi davvero cosciente? Quando una eventuale IA possiede una sua identità? Vi assicuro che è una parte del libro assolutamente interessante, anche se un po’ complicata da leggere, in inglese. Ma l’impegno che ci ho messo mi ha ripagato un po’.

E’ un libro di storia informatica, perchè ripercorre gli avanzamenti tecnologici dell’ultimo secolo, allo scopo di riuscire a capire e prevedere quando le tecnologie necessarie per creare IA saranno disponibili.

E’ (quasi) un libro sul marketing, perchè da buon inventore che vende prodotti sul mercato Kurzweil si è reso conto (da circa 30 anni, dice lui) che una delle cose più importanti è riuscire ad arrivare con la cosa giusta al momento giusto. Kurzweil lavora chiaramente su progetti all’avanguardia e/o futuristici, che saranno disponibile alla massa solo fra N anni. Morale: comincia oggi (2013) a lavorare su cose che magari arriveranno a noi solo nel 2018, supponiamo. Nel 2018 il mondo sarà molto diverso, per cui è importante riuscire a capire oggi di cosa ci sarà bisogno. E non è così semplice.

E’ un libro pieno di risposte, ma che personalmente mi ha scatenato tante altre domande. Domande che – lo dico con franchezza – se scrivessi qui, mi prendereste per pazzo. Uno da internare. Non mi capireste. Prima leggete il libro, e poi ne parliamo assieme. Fidatevi di me, una volta tanto.

E’ un libro che risponde in modo pacato alle objections e ai criticism ricevuti da diverse personalità, una su tutte Paul Allen, co-fondatore di Microsoft.

Concludo.

Per come la vedo io, non è assolutamente un libro per tutti. Sia chiaro: lungi da me affermare che bisogna essere dotati di un’intelligenza particolarmente spiccata, o chissà cosa: non sarei qua a parlarne. Dico solamente che bisogna essere particolarmente attratti da questo tipo di argomenti, di intelligenza artificiale, di tutte le problematiche che ruotano attorno. Mi ha anche sinceramente spaventato, ed ancora una volta preferisco in questo momento saltarne i motivi.

E’ un libro che mi ha smentito su parecchie cose che avevo in testa sulla IA, che mi ha incuriosito, mi ha esaltato e spaventato. Cosa si può volere di più? E’ un libro che mi sento di consigliarvi, se siete un po’ geek, un po’ curiosi, un po’ affascinati da IA, e se avete voglia di sbattere la testa con un po’ di inglese. Molto probabilmente ritornerò a leggerlo, nei prossimi mesi, perchè non si può assolutamente pensare di riuscire a capirlo tutto alla prima lettura (almeno, questo vale per me).

Send to Kindle
.NET World

Installazione di Visual Studio 2012 Update 1 offline (con pre-download)

Uno degli installer più lunghi che abbia mai visto nella mia vita è sicuramente l’Update 1 di Visual Studio 2012. Lo sto eseguendo su un PC Desktop, senza SSD, e dopo 70 minuti non ha ancora terminato. Il problema principale sembra essere il fatto che l’installer è di circa 1,1MB: i pacchetti vengono scaricati sul momento dalla Rete.

Stasera ho scoperto che non esiste l’installer in formato .ISO, ma è possibile comunque effettuare il download preventivo di tutti i pacchetti richiesti. Dopo il download è possibile mettere il tutto su chiavetta, oppure masterizzare, e procedere così in modo molto più veloce.

Come? Semplice!

L’Update 1 (scaricabile da qui) consiste in un unico file chiamato vsupdate_KB2707250.exe. E’ sufficiente lanciare questo .exe con il parametro /layout. L’installer parte in modo interattivo, e vi viene chiesta la cartella in cui effettuare il download dei pacchetti. Poi basta avere più o meno pazienza in base alla vostra velocità di download…

Tutto qua!

Send to Kindle
My daily work

Portico: modificare gli SMS di risposta quando non si può prendere una telefonata

Questa mattina ho ricevuto l’aggiornamento Portico per il Nokia Lumia 920 di Brain-Sys. Una delle cose più simpatiche e comode è la possibilità di rispondere con un SMS quando non si può rispondere ad una telefonata in arrivo. Di default ne abbiamo preimpostati due:

  • Ti chiamo io dopo.
  • Inviami un SMS.

Le risposte predefinite sono al massimo 4. Come si fa a customizzare/aggiungere altri SMS?
E’ semplice: basta andare sotto impostazioni –> applicazioni –> telefono. Poi cliccare sul bottone modifica le risposte, et voilà, il gioco è fatto. Da questa schermata è possibile modificare i due SMS pre-confezionati, oppure aggiungerne altri due.

Ben arrivato, Portico!

Send to Kindle
Software

Diretta Volley per Windows 8/RT e per Windows Phone

Forse l’app di cui vado più orgoglioso è Diretta Volley, che esiste sia per Windows Phone che per Windows 8. Ad oggi le caratteristiche sono allineate, per cui c’è spazio e c’è carne al fuoco per parlarne qua sul mio blog. Innanzitutto, una premessa: entrambe le versioni sono totalmente gratuite, sono stati solo inseriti dei banner pubblicitari.

Seconda cosa, ecco i link per fare il download delle app.

Windows Phone
http://www.windowsphone.com/it-it/store/app/diretta-volley/b0541997-ed5f-42a1-9aea-4a3e6dd55064

Windows 8
http://apps.microsoft.com/windows/en-us/app/diretta-volley/4b47fd64-3be9-413f-bb9c-bab7b00f36d7

Ora parliamo delle features delle due app.


Diretta Volley su un device Asus Vivo Tab RT

Diretta Volley permette di seguire il campionato di volley A1. Chiaramente non potete vedere le dirette TV (tra l’altro a malapena trasmesse anche dalla TV tradizionale), ma potete seguire minuto dopo minuto l’andamento delle gare in corso. I punteggi dei set sono aggiornati ogni minuto, e potete consultarli sia all’interno dell’app, sia attraverso la Live Tile dell’app stessa. Questa è la caratteristica più interessante per chiunque segua la pallavolo. Al contrario del calcio, per esempio, una gara di volley raramente ha momenti di pausa o di tranquillità, ma è sempre combattuta, ed il ribaltamento di fronte è sempre dietro l’angolo: avere punteggi sempre aggiornati è fondamentale. I punteggi delle gare di Diretta Volley vengono prelevati automaticamente dal sito della Lega di Volley Femminile.


Diretta Volley sul display multitouch di un Dell XPS 12 in modalità tablet

Oltre a questo, con Diretta Volley potete visualizzare le gare programmate nel futuro. Con la versione Windows 8 potete impostare due tipi di promemoria: uno è il classico ‘toast notification’, che vi avvisa un’ora prima rispetto all’inizio della gara. Quindi, se volete essere avvisati sull’inizio dell’incontro “Busto Arsizio – Bergamo” del 20 gennaio alle ore 18:00, impostando tale promemoria Windows 8 vi notificherà alle ore 17. Nulla di più semplice. In alternativa possiamo utilizzare come promemoria la Live Tile dell’app: in questo caso nella tile animata apparirà un countdown, aggiornato ogni 15 minuti, che vi terrà costantemente informati su quanto tempo rimane all’inizio della gara. Queste due feature sono disponibili solo per la versione Windows 8.


Diretta Volley sy Nokia Lumia 920
(sfondo scuro)

Diretta Volley su HTC HD7
(sfondo chiaro)

Una delle caratteristiche implementate nell’ultima versione è la visualizzazione della classifica di Serie A1. Quella per Windows Phone è più semplice, nel senso che mostra solamente squadre e relativo punteggio corrente. Quella per Windows 8 è più complessa, perchè mostra anche le statistiche complete di ciascuna squadra (match giocati, quanti vinti e quanti persi, set giocati, quanti vinti e quanti persi, e così via).


Diretta Volley su Nokia Lumia 800

Oltre a tutto questo, tramite Diretta Volley potete avere sottomano tre importanti canali Twitter italiani dedicati alla pallavolo: Pallavoliamo, Lega Volley Femminile e Mezzo Tempo. In modo molto semplice è possibile leggere i tweet pubblicati attraverso questi canali. Se un tweet contiene un link esso viene aperto con Internet Explorer.

La versione per Windows 8 si adatta molto bene ai diversi device disponibili sul mercato, sia a bassa risoluzione (1366×768) che ad alta risoluzione (1920×1080). Si adatta agli orientamenti orizzontali o verticali, ed è supportata la vista ‘snapped’, molto comoda per utilizzare Diretta Volley continunando a fare altro.


Diretta Volley su Dell XPS 12 in modalità ultrabook

Quindi, per concludere: se seguite la pallavolo femminile di Serie A1, Diretta Volley è decisamente l’app che fa per voi!

Send to Kindle