ComputerLand

Tu sei qui: Articoli MSDN

Notizie dal web

AzureBoxes: il nuovo portale per scoprire come utilizzare Microsoft Azure

E-mail Stampa PDF

 

Ciao a tutti!

Da qualche giorno è online il nostro nuovo portale dedicato a tutti gli sviluppatori e i professionisti IT, AzureBoxes.

Il sito mette a disposizione alcuni scenari che possono essere sviluppati utilizzando i servizi offerti da Microsoft Azure, sia per chi vuole scoprire come iniziare a utilizzare la piattaforma cloud, sia per chi già la utilizza e vuole approfondire alcune delle funzionalità.

Avete aperto una trial gratuita su Microsoft Azure, avete un abbonamento MSDN attivo che vi da accesso a una sottoscrizione con crediti gratuiti, siete membri del programma BizSpark? Volete scoprire come utilizzare al meglio le risorse che avete a disposizione? Potete trovare queste informazioni sul nuovo portale.
Oppure, il vostro caso non corrisponde a nessuno di quelli precedenti, ma vorreste iniziare a utilizzare Microsoft Azure? All’interno del portale potete trovare anche tutte le informazioni su come fare ad attivare una nuova trial gratuita o accedere ai programmi che Microsoft mette a disposizione per gli sviluppatori.

Come vedrete una volta aperta la home page, il sito è composto da box (per questo “AzureBoxes” :) ) ognuno dei quali rappresenta uno scenario di sviluppo.

image
Cliccando sul box dello scenario che desiderate approfondire si aprirà un popup in cui troverete una breve descrizione dello scenario, le risorse cloud e non che saranno necessarie per svilupparlo e una stima di tempi e costi. I costi sono stati tutti azzerati, perchè se avete una trial gratuita, siete membri del programma BizSpark o avete un abbonamento MSDN avete a disposizione crediti gratuiti da utilizzare su Azure.

image

La maggior parte degli scenari sono composti da due parti: una guida passo-passo, che vi permette di configurare il servizio proposto, ed un corso MVA, nel quale viene descritta la tecnologia e il servizio cloud utilizzato. Per alcuni scenari è presente il solo corso MVA poichè comprende già una sorta di guida alla configurazione o all’utilizzo del servizio.

Ogni guida vi mostra tutti i passaggi necessari per la configurazione del servizio, utilizzando screenshot del portale di gestione di Azure e dei tool utilizzati.

image

Quella a cui potete accedere è una prima versione del portale, sicuramente saranno aggiunti nuovi scenari per rimanere in linea con tutti i nuovi annunci e gli aggiornamenti della piattaforma Microsoft Azure.

Non vi resta che collegarvi direttamente al portale di AzureBoxes, navigare tra le diverse guide proposte e iniziare a utilizzare Microsoft Azure :)


read full article

Guest Post: Provati con mano gli HoloLens

E-mail Stampa PDF

Questo post è stato scritto da Edouard Wawra, CEO GamePix

image

Sono stato invitato da Microsoft (esatto, proprio lei…Microsoft Corporation!) a partecipare all’evento dell’anno: BUILD 2015, e sono stato tra i pochissimi fortunati ad aver testato le incredibili potenzialità di HoloLens, il primo computer olografico oculare totalmente senza fili. Ma andiamo per ordine…

image

L’evento inizia subito ai massimi livelli, con il keynote introduttivo del nuovo CEO Satya Nadella. Le novità introdotte sono tante, dalla piattaforma unificata di Windows 10 all’incredibile news del supporto di codice iOS e Android per le app. Ma l’attenzione è tutta sulla più grande delle novità, sulla rivoluzione digital che Microsoft ha pensato in gran segreto per molto tempo… HoloLens!

Durante il keynote annunciano che pochi eletti avrebbero avuto il piacere di provarli: bisognava applicare sul sito ed essere estratti. Beh, ragazzi, se non avessi vinto un accesso speciale, credete che sarei qui a raccontarvi la mia esperienza?

In 2 ore ricevo l’email di conferma ma scopro di essere in ritardissimo. Mollo tutto e mi lancio fuori dal palazzo, ho corso come non facevo dai tempi del liceo! Il mio gruppo era già dentro – cavolo! Sono entrato nell’hotel di corsa, ho pregato la signora all’ingresso che mi facesse salire. Scusi sono in ritardo! Le ho fatto i complimenti per i suoi capelli e, assurdo ma vero, ha funzionato: sono dentro!

image

Vengo scortato agli ascensori e salgo al 27° piano. L’atmosfera è magica, luci soffuse in un lungo corridoio, tante porte (NEO, dove sei?!), ognuna con un addetto Microsoft davanti, tantissima sicurezza ovunque. Mi accompagnano in una stanza in cui mi chiedono di lasciare tutti i miei devices in grado di registrare audio o video e passiamo nella stanza accanto, che mi toglie il fiato. Non ci sono muri, solo grandissime finestre con una magnifica vista su tutta San Francisco. Dopotutto sono in cima al mondo, no?
Poi ci preparano all’incontro tanto atteso: solo pochi minuti ci separano dagli HoloLens. Ci danno una breve spiegazione di come si svolgerà la sessione di 30 minuti e ci misurano la distanza tra le pupille con un macchinario molto simile a quello usati dagli oculisti. “Avete domande?”.
Io ovviamente si: “Quando saranno sul mercato e quanto costeranno?”
“Non possiamo rispondere a questa domanda…Qualcos’altro?”
“Da quando ci state lavorando? Prima dei Google Glasses?”
“Non possiamo rispondere neanche a questa domanda…Altro?”
“No, grazie, tutto chiarissimo” ovvero: TOP SECRET.

Perfetto, si parte. Vengo riaccompagnato attraverso quel lungo corridoio e capisco che quelle porte, con davanti gli addetti Microsoft, sono le stanze in cui potrò finalmente provarli. Entro, ci sono due persone, uno che prende appunti sulle mie reazioni e l’altro che mi spiega come indossare e interagire con gli HoloLens. L’interazione si basa su 3 aspetti: GGV: Gaze (sguardo), Gesture (mani), Voice (comandi audio).

Mi informano che proverò HoloStudio, il software che permette di fare modellazione 3D: fantastico! Indosso gli HoloLens: sono comodi, non pesano, si possono regolare in tutti i modi e si adattano bene alla forma della testa. Abbasso le lenti davanti agli occhi, sono trasparenti e si vede benissimo la stanza intorno a me. Finalmente si accendono, vedo il logo di Microsoft esattamente davanti al mio sguardo, in mezzo alla stanza. Parte HoloStudio e vedo una cassetta degli attrezzi, a grandezza naturale, che aleggia davanti a me: mi spiegano che posso appoggiarla dove preferisco. Muovo lo sguardo verso il divano, la cassetta si muove e con un gesto del dito a mezz’aria (simile al click sul mouse), la appoggio sul divano. È pazzesco, non sono passati nemmeno 30 secondi e già mi sono dimenticato di avere un device addosso, mi sembra che sia tutto vero, che quella cassetta sia veramente lì, su quel divano, di fronte a me come se potessi toccarla. WOW.

La apro e ci sono degli strumenti dentro. Poligoni, calamite, una gomma da cancellare…Esattamente come Photoshop, ma gli oggetti sono in 3D e li vedo lì davanti a me, come se fossero reali. Mi spiegano che posso scegliere un template già creato e modificarlo, in modo da entrare subito nel vivo dell’esperienza. Scelgo un fondale marino…Dopotutto sono in California, no?
Ci sono dei sub, uno scoglio, dei coralli. Mi dicono che posso zoommare tutto con una semplice gesture: lo faccio, e tutto il modello 3D diventa grande quanto voglio, occupa quasi tutta la stanza. È incredibile, sta lì fermo, davanti a me, dentro la stanza come se fosse vero. Ci giro intorno, ci cammino dentro, vado a guardare da vicino i coralli, ed è tutto incredibilmente reale! L’immagine, anzi l’ologramma che vedo, non ha alcun difetto, non sfarfalla, non trema. Anche muovendomi intorno velocemente, tutto è esattamente dove io ho deciso di metterlo. Sono senza parole…e chi mi conosce lo sa che sono un chiacchierone.
Familiarizzo con il tool praticamente subito, prendo la gomma da cancellare e rimuovo una gabbia che teneva un pesciolino chiuso dentro. Lo prendo e lo sposto davanti ai sub, cosi hanno qualcosa da vedere. Con la voce dò il comando “copy” e mi ritrovo due pesciolini, alla fine ne metto una decina. A quel punto le cose erano così surreali eppure reali allo stesso tempo, che mi sembrava di essere davvero sott’acqua a divertirmi con quei sub. Potevo clonare oggetti con la mia sola voce: ho iniziato a copiare tutto, i sub diventano 4, i coralli sono ovunque. Poi mi chiedono se voglio cambiare i colori: ovviamente! Voglio provare tutto!! Sono tornato alla cassetta degli attrezzi e ho preso una bomboletta spray. Con gli occhi apro la palette dei colori e con la bomboletta cambio colore a tutto ciò che ho intorno. Coralli blu, sabbia chiara, alghe rosse, volevo provare tutto ciò che potevo.
Cerco di andare fuori dagli schemi per capire che succede. Mi metto a camminare mentre coloro, sposto e zoommo cose, ma non riesco a mandare in tilt il sistema. È tutto sempre perfetto, fermo dove l’ho posizionato. Mi posso letteralmente muovere all’interno della mia creazione, la posso guardare da qualsiasi punto di vista, angolazione, andarci vicino, passarci attraverso. È una sensazione fortissima, emozionante, che fa venire i brividi.

Fantastico. Con un comando vocale posso esportare il mio modello sul web, salvarlo su SketchFab.
Sono passati 25 minuti e non me ne sono accorto. Me ne rimangono 5. Chiedo di provare altre funzionalità. Chiudo il programma HoloStudio e la stanza torna vuota.
Mi invitano a dare il comando vocale “scan” per scannerizzare la stanza e mapparla in 3D. Appena pronuncio la parola “scan” vedo un raggio composto di triangolini verdi piccolissimi, che dai miei occhi vanno a sbattere contro le pareti, i quadri, il divano. Il raggio esce dai miei occhi (e credetemi se vi dico che ancora non riesco a credere alla frase che ho appena scritto) e i triangolini si adattano agli oggetti che incrociano e li mappano in 3D. È incredibile quanto fedelmente riescono a percepire le forme, anche se la stanza è leggermente buia e i contrasti di colori non sono affatto marcati.

Mi spiegano che adesso che ho “scannerizzato” la stanza potrei riarredarla a piacimento, ma il mio tempo è finito. Poco importa, tanto sono senza parole già da un quarto d’ora. Esco dalla stanza muto. Mentre cammino nel lungo corridoio con le luci soffuse, ripenso a quello che ho appena visto. È stupefacente. Una cosa mai provata e mai neanche immaginata. Non si può neanche chiamare Rivoluzione né Evoluzione perché semplicemente è una cosa che prima non esisteva.
Ho provato anche gli Oculus Rift, così come i Google Glasses quando sono stato ad Helsinki con il mio team per partecipare ad un corso di accelerazione con Microsoft, ma sono già vecchi. Tremendamente vecchi.
Microsoft non ha inventato un nuovo device, ha semplicemente inventato una nuova era del digitale. Non posso neanche immaginare i confini verso i quali potrà spingersi la creatività umana con uno strumento come HoloLens, non c’è limite a ciò che possiamo raggiungere con una tecnologia così.

You can read the English version here.


read full article

Microsoft for Students

E-mail Stampa PDF

Questo post è stato scritto da Sara Campagna, Audience Marketing Manager Technical Audiences, Microsoft

 

Ciao a tutti!

Mi presento perché alcuni di voi magari non mi conoscono: nella divisione Developer & Evangelism mi occupo delle iniziative dedicate al mondo Academic. Docenti, Studenti e istituzioni accademiche sono il contesto in cui mi muovo quotidianamente.

Questo breve riassunto è rivolto a chiunque tra voi voglia completare le conoscenza accademica sfruttando al meglio tutte le offerte dedicate agli Studenti. E sempre per essere ancora più vicini al mondo della Scuola raccontateci come la tecnologia sta cambiando la vita in classe direttamente su Scuola.digital

xamarin_studentOgni giovane sviluppatore non può che partire dal nostro programma DreamSpark che, in modo completamente gratuito, offre a Studenti e Docenti strumenti di sviluppo e progettazione professionali.
Ultimamente poi DreamSpark si è arricchito di alcune iniziative molto importanti: innanzitutto il programma Xamarin for Student, annunciato l'estate scorsa, si espande, ed oltre ad una sottoscrizione indie gratuita, adesso include, sempre gratuitamente, il supporto a Visual Studio (compreso Visual Studio Community 2013)!


L’altro importante annuncio, invece, riguarda Azure: azure_studentdallo scorso 24 Marzo, infatti, la piattaforma cloud di Microsoft è stata resa disponibile anche per Studenti, con una sottoscrizione attivabile senza l’obbligo di inserimento di una carta di credito.
Questa nuova sottoscrizione di Microsoft Azure permette di utilizzare quindi, in modo completamente gratuito, i seguenti servizi:

  • Web Apps
  • Visual Studio Online
  • Application Insights

E potete cominciare subito a provare questi servizi attraverso DreamSpark, a questo link!

C’è poi un’altra iniziativa che riguarda ogni studente universitario; infatti, per affrontare al meglio il percorso accademico, Student Advantage offre Office 365 Pro Plus senza costi aggiuntivi, con una licenza per l’installazione su 5 device differenti, che siano PC, Mac o tablet (compreso iPad) e per l’utilizzo di uno spazio di archiviazione illimitato su OneDrive per la sincronizzazione automatica dei dispositivi.
Basta andare su questa pagina, inserire la propria mail universitaria, e cominciare il download! Quest’offerta al momento è disponibile per un gran numero di Università, se l’email non viene riconosciuta non preoccuparti, perché il programma è in rapida espansione, e coprirà presto tutte le Università italiane!

Come ultima cosa, se avete bisogno di formazione su una particolare tecnologia o tematica, magari per un esame, o anche solo per un semplice approfondimento personale potete sempre fare riferimento alla piattaforma Microsoft Virtual Academy dove trovate a vostra disposizione diversi percorsi fra cui scegliere, ognuno formato da diversi corsi: da quelli più introduttivi, per principianti fino a quelli più avanzati.

Ovviamente sarà un piacere avervi ad uno dei prossimi eventi in programma: troverete tutti gli aggiornamenti direttamente qui

E questa è solo una piccola parte di tutte le novità in serbo per voi: per ora è tutto e si torna a studiare Sorriso

Vi aspettiamo su Twitter per eventuali domande o feedback!


read full article

GUEST POST: L’interoperabilità tra Microsoft e Open Source: cos’è e come è possibile sfruttarla

E-mail Stampa PDF

Questo post è stato scritto da IvanFioravanti, co-founder e CTO 4ward Srl

Punto di partenza...

Che ne penso della nuova Microsoft e della sua “Openness” Vision? DIROMPENTE!

Per me che ho mosso i miei primi passi nel mondo del lavoro sotto il segno del mondo Open, che ho provato di tutto dal Commodore VIC20 in poi, l’idea di poter finalmente coniugare il meglio dell’IT senza fanatismi e senza preclusioni su un’unica piattaforma come Microsoft Azure è un sogno che si avvera: un vero cloud per tutto e tutti, con alle spalle una società dedicata anima e corpo a supportare questa Cloud Vision con persone, servizi e supporto senza eguali nel mercato.

Microsoft Azure è la base per qualunque cosa vi passi per la testa e la facilità con cui potete creare architetture ai confini della realtà è incredibile, così come lo sono i prodotti finali che potete costruire e il mercato che potrete raggiungere in un lampo: il mondo.

Questo è stato il punto di partenza su cui si è basata la nuova cloud vision della nostra 4ward e anche lo spunto per l’evento live del 12 maggio su Microsoft Virtual Academy con Paola Presutto.

Un viaggio insieme con Azure e l’Open Source

Il mio obiettivo in questo articolo è quello di trasmettere a tutti la potenza e la semplicità di Microsoft Azure e la sua totale e reale integrazione col mondo Open Source. Il tutto mostrando un esempio reale e in produzione.
Per dimostare la mia tesi ho preparato qualche “magia”, basata sulle macchine virtuali di tipo “G”, che come dico io “vanno a cannone”. Potrete ripetere voi stessi tutto il procedimento seguendo i passi su GitHub:

https://github.com/ivanfioravanti/easy-azure-opensource

Gli unici prerequisiti sono:

Prima magia: ReplicaSet MongoDB su Azure in 5 minuti

Un ReplicaSet è un cluster con almeno 3 server dove uno fa da primario e gli altri da secondario e con Azure Command Line potrete installarlo in un lampo partendo da macchine Ubuntu di base. Potete creare tutte le macchine che volete semplicemente impostando i vostri parametri nel file common.conf ed eseguendo successivamente il comando

initAzure.sh

Il vero trucco sta tutto nell’ultima parte del comando che segue

azure vm create … --custom-data ./configureMongoDB.sh

Questo parametro vi consente di sfruttare cloud-init, che è un processo nativo nelle immagini Ubuntu, per eseguire i comandi che volete sulla macchina virtuale creata. Per maggiori informazioni potete leggere questo articolo (in inglese).

Per terminare la configurazione del cluster vi basterà collegarvi al servizio MMS di MongoDB e vedrete tutti i vostri server già pronti per essere inseriti in qualunque configurazione voi vogliate.

 

Seconda magia: MongoDB Sharded Cluster in anche meno

Questo secondo trucco vi aiuta a creare un cluster di più nodi MongoDB con singolo server su Azure. Molto utile per sviluppo e testing delle vostre applicazioni in ambienti con sharding (suddivisione dei dati su più nodi). Questo cluster lo uso spesso per mostrare la vera potenza delle macchine G dal vivo e per farlo utilizzo i dati di Siope, che sono alla base del sito http://soldipubblici.gov.it e che rappresentano entrate e uscite di tutti gli enti d’Italia dal 2013 ad oggi.

Ho trasformato i dati da relazionali a documento e successivamente li ho messi in Time Series raggruppando entrate e uscite per ente e per mese, li carico sullo sharded cluster MongoDB creato e faccio qualche query come:

  • 2,5 secondi per vedere la classifica degli
    enti che hanno speso di più in Servizi Scolastici nel 2014
  • 1,6 secondi per raggruppare di tutti i
    costi di tutti gli enti per il 2014 per ente e vedere chi ha speso di piu'
  • 65 ms. per raggruppare tutte le spese del Comune di Milano nel
    2014 per categoria.

La potenza delle macchine G consente un’analisi in tempo reale dei dati di Siope da qualunque punto di vista! Questi dati non li ho ancora resi pubblici perché voglio prima ultimare la procedura automatica di import settimanale degli stessi. Appena pronti potrete usarli per giocare un po’ anche voi con la potenza reale unita ad OpenData di grande interesse.Sarebbe bello collegarci anche la parte di Azure Machine Learning, ma questo lo lasciamo per talk futuri.

 

Esempio reale: 4ward365

4ward365 è il prodotto 4ward su cui abbiamo concentrato tutto quello che abbiamo imparato negli ultimi anni, che unito ad Azure ci ha consentito di creare una piattaforma con una scalabilità infinita e soprattutto fruibile da un mercato globale. Nel mio ultimo talk agli Azure Open Day Microsoft che esortava il pubblico a vedere in Azure un modo per spingere il business delle proprie aziende al di là dei confini italiani e vi assicuro che in quel momento ho pensato: “è proprio vero, spero di riuscire a dimostrarlo durante il talk". E’ questa la vera potenza di Microsoft Azure, dovete vedere Microsoft come il vostro partner tecnologico e commerciale che vi supporta nella creazione e distribuzione delle vostre idee in tutto il mondo!

4ward365 è una piattaforma per la gestione, il monitoraggio e l’analisi di Office 365 dove abbiamo usato tutto quello che Azure mette a disposizione:

  • Web/Worker Role
  • WebJobs
  • VM Linux e Windows
  • Virtual Network
  • Traffic Manager
  • CDN
  • Service Bus
  • Storage (Blob e Queue)
  • Redis Cache (Prodotto spettacolare Made in Italy!)
  • Scheduler
  • Machine Learning
  • Azure Market Place

Per provarla sul vostro Office 365 chiedete al Microsoft Partner che vi segue o registratevi direttamente su http://www.4ward365.com/signup/

Vi aspetto insieme a Paola il 12 maggio per parlarne insieme live!



Ivan Fioravanti



 


read full article

A #TecHeroes oggi parliamo di Internet of Things

E-mail Stampa PDF

 

Ormai tutti conoscerete TecHeroes, lo show di Channel9 dedicato agli amanti della tecnologia. L'idea è quella di raccontarvi le esperienze di chi ha fatto della tecnologia il proprio lavoro, ma anche e soprattutto la propria passione.

E oggi tocca a me!

 

TecHeroesMicrosoftIoT_960

 

Vi racconto in due parole chi sono e come sono diventata Technical Evangelist in Microsoft Italia, poi parliamo di Internet of Things. Vi mostro quali sono le componenti per realizzare un semplice scenario di telemetria, a partire dal sensore fino ad arrivare alla visualizzazione di un grafico su un sito web che mostra l'andamento dei dati in tempo reale. Nel video vi fornisco una semplice panoramica, ma parallelamente stiamo lavorando per realizzare una guida step-by-step che sarà presto disponibile sul blog MSDN per permettervi di configurare l'hardware e realizzare a casa vostra un semplice sistema end-to-end per controllore la temperatura. Qui potete trovare il primo post sull'overview del progetto.

Ci sono inoltre molte altre iniziative di Microsoft legate al mondo IoT, anche in termini di eventi: in Italia stiamo organizzando seminari IoT in collaborazione con FabLab, università, e anche il Microsoft Innovation Center di Torino. A questo link potete trovare ulteriori informazioni sui prossimi eventi, le agende e il link per le iscrizioni. E ancora: a brevissimo registreremo il primo corso IoT che sarà presto diponibile sulla Microsoft Virtual Academy.

A questo punto non vi resta che guardare il video su Channel 9 e inviarmi feedback, domande e commenti direttamente su twitter: @_ericabarone con l'hashtag #TecHeroes

Enjoy :)

 


read full article

Guest post: Windows Azure API Management

E-mail Stampa PDF

Questo articolo è stato scritto da Antonio Liccardi, co-founder di DotNetCampania, contributor su GetLatestVersion.it e full-stack developer presso Blexin s.r.l.s.

In questo articolo viene illustrato come semplificare la gestione delle API di un nostro applicativo con l’uso di Windows Azure API Management. Tramite questo servizio abbiamo a disposizione un insieme di tool per rendere più semplice la pubblicazione e la gestione di API per i propri clienti o per l’intera comunità degli sviluppatori.

I compiti che riusciamo a facilitare con Windows Azure API Management sono:

  • Documentazione integrata e console per testing;
  • Gestione della sicurezza, delle quote e dei limiti;
  • Gestione dei formati messi a disposizione (JSON, REST);
  • Versioning delle API;
  • Monitoraggio sull’uso e sugli errori;
  • Analisi sull’uso delle nostre API.

In sostanza, quello che consente di avere a disposizione Windows Azure API Management è un layer aggiuntivo che dà al publisher il pieno controllo delle API arricchendole con un set di funzionalità già pronte (figura 1):

image

Figura 1 - Windows Azure API Management

 

Di seguito sarà spiegato prima quali sono i benefici di esporre le API per la propria applicazione, poi verrà illustrato come creare e configurare una prima istanza di Windows Azure API Management. Sempre su questo blog, vedremo poi nei prossimi post, alcuni aspetti avanzati di questo servizio presente in Windows Azure.

L’importanza delle API

Con il termine API si identificano le Application Program Interface, ovvero un set di metodi esposti pubblicamente che consentono agli sviluppatori di interagire direttamente con le applicazioni e i dati in esse contenute. Con questi metodi è possibile:

  • Nascondere l’implementazione delle logiche che ci sono dietro un software applicativo;
  • Semplificare il compito di uno sviluppatore di terze parti lasciando che richiami le API per il recupero delle informazioni;
  • Mettere in comunicazione applicativi diversi, magari creati con tecnologie o scopi differenti;
  • Far convergere informazioni provenienti da diverse API in un unico applicativo.

Oggi l’uso delle API è di rilevante importanza soprattutto per le entrate che possono generare. Non a caso, con il termine API economy si evidenzia l’interesse da parti di grandi aziende (non strettamente legate al mondo dell’IT) e social network di esporre le proprie informazioni al fine di generare profitto.

I modi con cui si possono ottenere ricavi dipendono molto dal business model che l’azienda può adottare. Alcuni casi comuni possono essere i seguenti:

  • Creare un set di API su cui basare il proprio business, ovvero sul rivendere le informazioni esposte dalle stesse (es.: tramite quote di chiamate, servizi connessi);
  • Monetizzazione indiretta, si è partner con altre aziende che tramite l’uso delle API valorizzano l’azienda stessa o il prodotto;
  • Semplificare la gestione e il monitoraggio di processi interni ad una azienda mettendo a disposizione delle API di servizio.

Quindi, mettere a disposizione delle API può essere sicuramente favorevole per il proprio business, ma il raggiungimento di questo scopo può richiedere una notevole quantità di energia e risorse. In sostanza occorre una strategia che si basa sul creare un set di API che sia ben organizzato, performante, stabile, e che metta a disposizione tutto il necessario per gli sviluppatori, come la documentazione e il supporto. Visto che il raggiungimento di questo obiettivo non è semplice, Windows Azure ci viene in aiuto con Windows Azure API Management, componente che aiuta a semplificare tutto ciò che ruota intorno alle nostre API, come la gestione, il monitoraggio e il supporto.

Le nostre prime API

Prima di vedere il funzionamento di Windows Azure API Management, occorre una sottoscrizione attiva di Windows Azure (anche trial), l’ultima versione dell’SDK di Azure e un insieme di API da voler esporre. Per il primo punto si può, o accedere al portale di Windows Azure usando l’account legato ad una sottoscrizione attiva, oppure attivare il periodo di prova qui. E’ possibile invece scaricare l’ultima versione dell’SDK da qui.

Per ciò che riguarda un esempio di API da voler esporre, in questo articolo sarà usata l’applicazione BookService realizzata da Mike Wasson per l’articolo “Using Web API 2 with Entity Framework 6”. Questa applicazione illustra un piccolo catalogo di libri e di autori. Il codice è già pronto e disponibile su GitHub a questo indirizzo, ma volendo è possibile seguire tutti i passi per la creazione del progetto da zero nell’articolo sopra citato.

Una volta scaricato il progetto, occorre decomprimere il pacchetto e aprirlo usando Visual Studio. Prima di compilare, bisogna ricordarsi di fare un restore dei pacchetti Nuget presenti nella soluzione.

Una volta compilata la soluzione, si può utilizzare la Package Manager Console di Visual Studio con il comando “Update-Database” per aggiornare il database creato sull’istanza locale, con le tabelle e le informazioni che devono contenere.

Da questo momento in poi si è pronti per la pubblicazione del progetto su una WebApp di Azure: basterà cliccare con il pulsante destro sul nome del progetto e nel menu contestuale che si apre selezionare la voce “Publish” (figura 2):

image
Figura 2 – Pubblicazione di una applicazione

 

Nella finestra che compare, cliccare sul pulsante “Microsoft Azure Web Apps” ed effettuare il login a Windows Azure per creare una nuova Web App o per riutilizzarne una già esistente. Quando il sito è pronto, in automatico la finestra Connection (figura 3) contiene le informazioni necessarie per il deploy. Manca solo il database, che si può creare vuoto all’interno del portale di Windows Azure seguendo le indicazioni in questo link e recuperare la stringa di connessione sul portale di Azure per usarla nella casella di testo relativa alla connection string della sezione Settings all’interno di Visual Studio (figura 4). Nel primo deploy, occorre spuntare anche la casellina “Execute Code First Migrations”, necessaria per creare la struttura delle tabelle e il riempimento (seed) delle stesse.

image

Figura 3 – Le configurazioni per il deploy su una Web App di Azure
image
Figura 4 – La configurazione per la connessione al DB

 

E’ tutto pronto per il deploy: basterà cliccare sul pulsante “Publish” e non appena il deploy sarà terminato, si aprirà il browser visualizzando l’applicazione e le relative API pubblicate. E’ possibile verificare le API presenti nell’applicazione pubblicata usando la voce nel menù API; inoltre tramite l’ausilio di un client REST come Fiddler o Postman, si possono eseguire le chiamate seguendo le indicazioni nella Help Page.

Creare una istanza di Windows Azure API Management

Adesso che le API sono pubblicate e pronte per essere usate, si può aggiungere una nuova istanza di Windows Azure API Management. Una volta entrati con la propria sottoscrizione nel pannello di Windows Azure, selezionare l’icona “New” in basso a sinistra ed entrare nella sezione “App Services”. Selezionare poi “API Management”, e subito dopo “Create” (figura 5):

image
Figura 5 – Creazione di una nuova istanza di API Management

 

Si aprirà un popup in cui si deve: inserire il nome per il servizio di gestione delle API (casella URL), selezionare la sottoscrizione e scegliere la regione in cui dovrà essere creato (figura 6).

image
Figura 6 – Impostazioni di base per il servizio (prima schermata)

 

Nella seconda schermata inserire il nome dell’azienda e l’email dell’amministratore del servizio. Spuntare inoltre la casella “Advanced Settings” per accedere alle impostazioni avanzate (figura 7).

image
Figura 7 – Impostazioni di base del servizio (seconda schermata)

 

Nella terza ed ultima schermata occorre impostare il “Pricing Tier”, ovvero il sistema di pricing più adatto per le esigenze del servizio che si sta creando. Ci sono 3 diverse opzioni: Developer, Standard e Premium. In particolare, la prima è ideale per la fase di sviluppo o testing, le altre per la fase di produzione. Nella seguente figura (8) vengono illustrate le differenze:

image
Figura 8 – Le differenze fra i diversi pricing tier di Windows Azure API Management

 

Dopo aver impostato come pricing tier “Developer”, terminare il wizard e attendere la creazione del servizio ricordando che la stessa può richiedere fino a 30 minuti.

Il portale di pubblicazione e il portale per gli sviluppatori

All’interno della dashboard del servizio appena creato, è possibile visualizzare i link a 2 portali: il portale di pubblicazione e il portale per gli sviluppatori. Il primo consente di gestire a 360 gradi le API pubblicate. Il secondo invece è un portale personalizzabile e rappresenta il pannello per gli sviluppatori di terze parti che useranno le API (figura 9).

image
Figura 9 – I due portali disponibili in API Management

 

Aggiunta di una API a Windows Azure API Management

All’interno del portale di pubblicazione si possono aggiungere e gestire le API precedentemente pubblicate. Infatti, nella sezione dashboard (figura 10), in cui si ha una overview su tutte le API gestite tramite Windows Azure API Management, è possibile cliccare sul pulsante “ADD API” e inserire le informazioni riguardanti le BookService API.

image
Figura 10 – Aggiunta di una API

 

I campi da configurare sono i seguenti:

  • Web API name: il nome dell’API;
  • Web service URL: l’indirizzo originario delle API (comprensivo di eventuali suffissi) che sarà gestito internamente da Windows Azure API Management;
  • Web API URL suffix: il suffisso che consente di accedere pubblicamente alle API esposte nell’istanza di Windows Azure API Management;
  • Web API URL scheme: lo schema da utilizzare per richiamare le API;
  • Products: un product può essere considerato come un contenitore di API a cui si associano delle regole come le quote e i termini d’uso. Nella figura 11, ad esempio, viene selezionato come product “Starter”, che impone un massimo di 5 chiamate per minuto e 100 chiamate per settimana.

 

image
Figura 11 – La configurazione di una API

 

Una volta cliccato su “Save”, si può procedere con la configurazione delle operazioni da esporre tramite questo servizio. E’ importante sapere che non è obbligatorio esporre sempre tutte le nostre API, ma si può scegliere di esporre solo le operazioni da voler mettere a disposizione degli sviluppatori. Pertanto, all’interno della sezione “Operations”, cliccare sul pulsante “ADD OPERATION” al fine di aggiungere il metodo per il recupero di un libro presente nei dati esposti dalle BookService API.

Nella sezione Signature, è possibile definire in che modo l’operazione viene chiamata, la URL, i parametri da passare in input, il nome da visualizzare e il campo descrizione (figura 12). L’aspetto interessante è che informazioni come il campo “Description” consentono di specificare la documentazione per la nostra API che sarà automaticamente riutilizzata nel portale degli sviluppatori.

image
Figura 12 – Creazione di una nuova operazione

 

Tra le altre cose che si possono definire ci sono il caching, tutti i dettagli dei parametri e le eventuali risposte previste per l’operazione. In particolare, per le risposte è consentito inserire una descrizione e scegliere la tipologia di rappresentazione per l’output, come ad esempio il formato JSON (figura 13).

image
Figura 13 – Definizione di una risposta

L’ultimo passo, prima di testare le API, consiste nel creare un utente autorizzato alle chiamate. Nella dashboard del portale di pubblicazione, selezionare la voce Users e all’interno della pagina che si apre, aggiungere un utente selezionando la voce “ADD USER” e inserendo le informazioni necessarie (figura 14).

image
Figura 14 – Aggiunta di un nuovo utente

Dopo aver salvato le informazioni, occorre associare l’utente alla sottoscrizione Starter andando nel suo dettaglio (basterà cliccare sul nome dell’utente stesso). Da qui, selezionare il pulsante “ADD SUBSCRIPTION” e quindi la sottoscrizione Starter. In questo modo sarà generato un token di accesso che dovrà essere passato come parametro delle nostre API al momento delle chiamate (figura 15).

image
Figura 15 – Sottoscrizione di un utente ad un product

Testare una API

E’ giunto il momento di testare le nostre API usando il portale degli sviluppatori. Si può aprire quest’ultimo usando il link in alto a destra nella pagina Developer Portal e, loggandosi con l’utente che si è appena creato, si può accedere all’interno della sezione APIS, e di seguito nella sezione “Book Service API”. In questa pagina sono presenti tutte le informazioni relative alla nostra operation ed è anche possibile visualizzare un esempio di codice già pronto all’uso in diversi linguaggi di programmazione (figura 16).

image
Figura 16 – La descrizione della operation ‘Get Book by Id’

Premendo sul pulsante “Open Console”, si apre una finestra dove è possibile inserire l’id di un libro e selezionando il pulsante “HTTP GET”, viene invocata l’API per ritornare l’informazione ricercata (figura 17).

image
Figura 17 – La risposta dalla console del portale degli sviluppatori

Inoltre, se si torna nel portale di pubblicazione, è possibile visualizzare una serie di grafici che mostrano il consumo delle API esposte (figura 18).

image
Figura 18 – Statistiche d’uso delle API

Conclusione

In una era completamente dominata da internet e dal numero sempre più alto di dispositivi interconnessi fra loro, non si può ignorare l’implementazione e l’uso delle API per la condivisione e il recupero dei dati. Purtroppo però, la gestione di un set di API non è sempre semplice, e Windows Azure API Management, di cui in questo post è stata presentata solo una overview, aiuta a semplificare il raggiungimento di questo compito per ottenere il massimo dalle proprie API.


read full article

Introduzione a Band Studio per Visual Studio

E-mail Stampa PDF

Questo post è stato scritto da Lorenzo Rossoni e Fela Ameghino, Windows Phone Developers.

Dopo aver inizialmente presentato i Microsoft Band ad ottobre, qualche settimana fa la casa di Redmond ha provveduto a rilasciare l’SDK ufficiale (anche se in versione preview), aprendo di fatto le porte del nuovo smartband agli sviluppatori Windows Phone, Android e iOS.

Per un’introduzione all’SDK vi consigliamo la lettura di questo post, scritto da Matteo Tumiati e Giancarlo Lelli.

È a questo punto che nasce la nostra idea: sebbene l’SDK fornito da Microsoft permetta di aggiungere tile al Band alle quali è possibile inviare notifiche, non permette la creazione di tile con interfacce personalizzate per il nostro wearable. La sfida era quindi quella di trovare il modo per poterlo fare e di dare anche agli altri sviluppatori la possibilità di farlo.

Dopo aver analizzato i controlli e la struttura con i relativi attributi, il passo successivo è stato quello di sviluppare un linguaggio capace di rappresentare in maniera semplice ed efficace il layout delle app e dare la possibilità ai developer di utilizzarlo in maniera agevole: la scelta è ricaduta immediatamente su un’estensione per Visual Studio: ecco quindi Band Studio for Visual Studio.

Vediamo ora come creare la nostra prima app per il Microsoft Band.

 

Installazione dell’estensione per Visual Studio 2013

clip_image002Il primo step è quello di installare l’estensione per Visual Studio: questa ci permetterà di creare i layout tramite editor xml sfruttando gli strumenti forniti dall’IDE, in primis l’IntelliSense, e fornendoci un feedback visuale mostrando come apparirà la nostra app una volta eseguita sul Band.

Apriamo quindi Visual Studio 2013 e andiamo in STRUMENTI → Estensioni e aggiornamenti… e cerchiamo online su Visual Studio Gallery Band Studio for Visual Studio.

Una volta installato riavviamo l’IDE e siamo pronti per creare la nostra prima app.

La nostra prima app

clip_image004A questo punto creiamo un nuovo progetto “Applicazione vuota (Windows Phone)”, quest’applicazione servirà ad installare la tile sul Band e aggiornare le pagine della nostra app, dal momento che quest'ultimo non può eseguire codice arbitrario ma solamente di visualizzare dati.
Una volta creato il progetto, dobbiamo aggiungere la definizione del layout per la pagina dell’applicazione che volgiamo eseguire sul Band, per fare questo da Esplora soluzioni selezioniamo il progetto, quindi aggiungiamo un nuovo elemento “Microsoft Band Layout”. Si aprirà l’editor che vedete qui sopra.
Oltre ad aggiungere il file di layout, in questo modo verranno aggiunti automaticamente i riferimenti al pacchetto NuGet Microsoft.Band.Extended.

N.B: se avete già referenziato il pacchetto dell'SDK ufficiale di Microsoft vi consigliamo di rimuoverlo PRIMA di fare questa operazione, perché alcune librerie vanno in conflitto con il nostro SDK.

 

L'editor dei layout

Per ottenere il meglio vi consigliamo di semplificare al massimo i vostri layout, tenendo a mente che:

· BandLayout (l'elemento padre) non può avere più di 3 figli, ed è un FlowList con Orientation verticale

· FlowList (StackPanel di XAML) non può avere più di 3 figli

· Tutti gli elementi che non sono contenitori (quindi TextBlock e Glyph) devono avere un Id, che sarà poi usato per aggiornare i campi della pagina con i valori da visualizzare

 

Elementi del layout

Al momento, sono supportati solo tre tipi di elementi: FlowList, TextBlock, Glyph (Immagine monocromatica) e Barcode ma presto verranno aggiunti anche tutti gli altri supportati dal Band.

· FlowList: organizza gli elementi figlio in una singola linea che può essere orientata orizzontalmente o verticalmente; è l’analogo di uno StackPanel di XAML

· TextBlock: un controllo per la visualizzazione di piccoli contenuti testuali; come un TextBlock di XAML

· Glyph: un controllo che visualizza un'immagine monocromatica; analogamente ad un BitmapIcon di XAML

· Barcode: un controllo che visualizza un codice a barre in formato Code39 o PDF417

Layout
Torniamo alla nostra app, il nostro obiettivo è quello di visualizzare sul nostro Band alcune semplici informazioni personali, come il nostro nome, indirizzo e-mail e numero di telefono. Per fare ciò creiamo un semplice layout a tre righe con un Glyph e un TextBlock ciascuna. Per fare ciò utilizzeremo il seguente layout:

<BandLayout xmlns="http://schemas.microsoft.com/bandlayouts/1.0" Peek="15">

<FlowList Width="245" Height="35" Orientation="Horizontal">

<Glyph Id="11" Width="20" Height="20" Margin="0,10,10,0" Foreground="Highlight"/>

<TextBlock Id="12" Height="35" Baseline="30" Foreground="Highlight" SampleData="Leonardo Fibonacci"/>

</FlowList>

<FlowList Width="245" Height="35" Orientation="Horizontal">

<Glyph Id="21" Width="20" Height="20" Margin="0,6,10,0" Foreground="#9b9b9b"/>

<TextBlock Id="22" Height="35" Baseline="61" SampleData=" Questo indirizzo e-mail è protetto dallo spam bot. Abilita Javascript per vederlo. "/>

</FlowList>

<FlowList Width="245" Height="35" Orientation="Horizontal">

<Glyph Id="31" Width="20" Height="20" Margin="0,1,10,0" Foreground="#9b9b9b"/>

<TextBlock Id="32" Height="35" Baseline="91" SampleData="+1123581321"/>

</FlowList>

</BandLayout>

 

Code behind

Una volta creato il vostro layout potete passare al code behind. Per connettervi al dispositivo dovete usare gli stessi metodi dell’SDK ufficiale, ad eccezione di BandClientManager.ConnectAsync che va sostituito con BandClientManager.ConnectCoreAsync.

Una volta istanziato il vostro IBandClient potrete notare dei nuovi metodi sotto la proprietà TileManager, quelli che ci interessano sono AddTileAsync e SendPageUpdateAsync.

private async void AddMyTile()

{

var devices = await BandClientManager.Instance.GetBandsAsync();

if (devices.Length > 0)

{

// Connettiamoci al IBandClient extended

using (var band = await BandClientManager.Instance.ConnectCoreAsync(devices[0]))

{

// Carichiamo il nostro layout.

// N.B.: l'estensione del layout compilato è .lblob, e non .blml,

// quindi se il vostro file si chiama "BandLayout.blml" dovrete caricare "BandLayout.lblob"

var layout = await BandLayout.FromStorageFileAsync(new Uri("ms-appx:///Assets/BandTile/BandLayout.lblob"));

// Creiamo una nuova collezione di layout

var layouts = new BandLayoutCollection();

// E aggiungiamo il layout a essa, settando l'index a zero

// Attualmente le tile non possono avere più di cinque layout differenti.

layouts.SetLayout(0, layout);

// Carichiamo le icone della nostra tile

var tile = await LoadIcon("ms-appx:///Assets/BandTile/TileIcon.png"); // 46x46

var small = await LoadIcon("ms-appx:///Assets/BandTile/SmallIcon.png"); // 24x24

// Carichiamo le icone aggiuntive che verranno usate nel layout

// Attualmente il limite per tile è di dieci icone, tile e small icon comprese.

// Potete verificare che l'icona non sfori le dimensioni massime supportate con un semplice calcolo:

// (Larghezza * Altezza * 4) <= 15270

var extraIcon1 = await LoadIcon("ms-appx:///Assets/icon1.png");

var extraIcon2 = await LoadIcon("ms-appx:///Assets/icon2.png");

var extraIcon3 = await LoadIcon("ms-appx:///Assets/icon3.png");

// Creiamo la tile ed aggiungiamo le icone aggiuntive

var strapp = new BandTile(baseGuid)

{

Name = "FrayxRulez",

TileIcon = tile,

SmallIcon = small

};

strapp.AddIcon(extraIcon1); // iconIndex = 0

strapp.AddIcon(extraIcon2); // iconIndex = 1
strapp.AddIcon(extraIcon3); // iconIndex = 2

// Aggiungiamo la tile, chiedendo all'utente il consenso

await band.TileManager.AddTileAsync(strapp, layouts);

// Creiamo una collezione contenente i valori che dovranno avere i nostri elementi

var fields = new BandTileElementCollection();

// L'Id deve essere lo stesso che avete settato nel layout

fields.AddTextBlock(12, "Leonardo Fibonacci");

fields.AddTextBlock(22, " Questo indirizzo e-mail è protetto dallo spam bot. Abilita Javascript per vederlo. ");
fields.AddTextBlock(32, "+1123581321");

// L'iconIndex viene ricavato dall'ordine in cui avete aggiunto le icone al layout

fields.AddGlyph(11, 0);
fields.AddGlyph(21, 1);
fields.AddGlyph(31, 2);

// Aggiorniamo (o creiamo) la pagina nella nostra tile:

// pageId è l'id della pagina che volete aggiornare o create

// pageLayoutIndex è lo stesso valore che avete usato in layouts.SetLayout

await band.TileManager.SendPageUpdateAsync(baseGuid, page1Guid, 0, fields);

}

}

}

Ora non avete più scuse per sviluppare una fantastica app per il vostro Band!
Buon coding e vi raccomandiamo di condividere le vostre creazioni ;)


read full article

Guest Post: Raspberry Pi 2 per sviluppatori .NET

E-mail Stampa PDF

 

Questo post è stato scritto da Marco Minerva, MVP .NET e co-founder della community DotNetToscana.

 

Raspberry Pi è un single-board computer (un computer completo implementato su una sola scheda elettronica) sviluppato nel Regno Unito dalla Raspberry Pi Foundation. Il lancio al pubblico della prima versione è avvenuto alla fine del mese di febbraio 2012.

L'idea che ha guidato (e guida tuttora) il progetto è la realizzazione di un dispositivo economico, concepito per stimolare l'insegnamento dell'informatica e della programmazione nelle scuole. In realtà, l’idea di avere a disposizione un computer completo con un costo estremamente contenuto (circa 30 euro) ha appassionato sviluppatori di tutte le età, attratti dalle possibilità che venivano offerte loro.

Questo trend ha subito un’ulteriore impennata all’inizio di Febbraio 2015, quando è stato presentato il modello Raspberry Pi 2 Model B, che, con un costo analogo a quello del modello procedente, fornisce un processore ARM Cortex-A7 a 900 MHz con 1 GB di RAM.

 

 

image

 

Figura 1 La scheda Raspberry Pi 2 Model B

 

Ma la notizia più interessante per noi, sviluppatori .NET, è che Microsoft ha annunciato che nei prossimi mesi renderà disponibile una versione di Windows 10 in grado di funzionare su questa scheda! Tale versione sarà gratuita per chiunque aderisca al Windows Developer Program for IoT. Potremo dunque eseguire su tale scheda le stesse Windows app che sviluppiamo per PC, tablet, smartphone e Xbox. E’ evidente che questa possibilità apre interessantissimi scenari nel mondo delle app, impensabili fino a poco tempo fa.

Non dobbiamo però aspettare il rilascio di Windows 10 per testare il potenziale della Raspberry Pi 2: possiamo già installare una distribuzione Linux e sfruttare le potenzialità di Mono per scrivere da subito programmi in .NET anche su questa piattaforma.

 

Installazione di Linux

 

Il setup e la configurazione di Linux richiedono un po’ di passaggi, ma la procedura è abbastanza semplice. Dobbiamo innanzi tutto procurarci una scheda Micro SD di almeno 8 GB, in cui installeremo il sistema operativo. La distribuzione consigliata è Raspbain, basata su Debian Wheezy e pensata proprio per la nostra board. Possiamo scaricarla da http://downloads.raspberrypi.org/raspbian_latest.

Dobbiamo poi scrivere il file .IMG della distribuzione sulla Micro SD. Per fare questo, possiamo utilizzare ad esempio il programma Win32 Disk Imager(ma qualunque programma analogo va bene):

 

image

 

Figura 2 Win32 Disk Imager per scrivere l'immagine di Rasbpian su Micro SD

 

Ora possiamo finalmente eseguire il primo avvio della scheda. Inseriamo la Micro SD nell’apposito slot, quindi colleghiamo alla Raspberry un monitor HDMI, una tastiera, un mouse USB e il cavo di rete Ethernet. Dopo la configurazione, potremo dialogare con la scheda in Desktop remoto, quindi non avremo più bisogno di collegare ad essa questi device (a parte ovviamente il cavo di rete).

Accendiamo la scheda alimentandola con un cavo Micro USB. Dopo un paio di minuti, ci troveremo di fronte al programma di configurazione Raspberry Pi Software Configuration Tool:

 

image

 

Figura 3 Il programma di configurazione di Raspberry Pi

 

Selezioniamo la prima opzione, Expand Filesystem, per poter sfruttare l’intera capacità della scheda di memoria. Ci verrà richiesto se vogliamo eseguire il riavvio, ma non è necessario. Un’altra cosa importante è cambiare la password di accesso dell’utente pi che useremo per collegarci al sistema (la password predefinita è raspberry). Tutte le altre opzioni possono essere impostate in un secondo momento; la documentazione completa è disponibile alla pagina http://www.raspberrypi.org/documentation/configuration/raspi-config.md.

Al termine della configurazione, selezioniamo Finish e confermiamo per riavviare la Raspberry. Una volta tornati alla shell, effettuiamo il login con il nome utente pi e la password che abbiamo impostato nel passaggio precedente. Dobbiamo assicurarci di utilizzare l’ultima versione dei package della distribuzione, quindi eseguiamo i seguenti comandi:

 

sudo apt-get update   (per aggiornare la lista dei package)

sudo apt-get upgrade (per aggiornare tutti i package installati)

 

 

Ricordiamo che sudo è il comando che permette di eseguire un’applicazione con privilegi elevati. Ora possiamo installare il pacchetto che ci permetterà di collegarci alla Raspberry tramite Desktop Remoto:

 

sudo apt-get install xrdp

 

Installiamo anche XTERM, un emulatore di terminale per il sistema X Window:

 

sudo apt-get install xterm

 

L’ultima cosa da fare per completare la configurazione è caricare il pacchetto Samba, che implementa il protocollo SMB, fornisce supporto al Windows naming service (WINS) e permette di effettuare il join ad un dominio Windows:

 

sudo apt-get install samba samba-common-bin

 

Grazie a questo pacchetto, la scheda comparirà tra le risorse di rete di Windows con il nome RASPBERRYPI: potremo quindi collegarci ad essa in Desktop Remoto usando direttamente questo nome, anziché il suo indirizzo IP. Lo stesso pacchetto ci permette inoltre di condividere cartelle tra Linux e Windows, per facilitare lo scambio di file e progetti senza dover ricorrere a soluzioni come SSH e FTP. Maggiori informazioni a riguardo sono disponibili su http://raspberrypihq.com/how-to-share-a-folder-with-a-windows-computer-from-a-raspberry-pi.

A questo punto, siamo finalmente in grado di collegarci alla Raspberry Pi 2 dal nostro PC Windows:

 

image

 

Figura 4 Desktop remoto sulla scheda Raspberry Pi 2

 

Non abbiamo quindi più bisogno di connetterla ad un monitor, né di attaccare tastiera e mouse ad essa: la configurazione headless è terminata.

 

Installazione di Mono

 

Ora che Raspbian è correttamente configurato e funzionante, dedichiamoci all’installazione di Mono. Ancora una volta, dobbiamo seguire una serie di passaggi.

Apriamo una finestra di terminale (possiamo farlo anche da Desktop Remoto) e digitiamo i seguenti comandi:

 

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list

echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list

 

Stiamo aggiungendo i package dei repository di Mono, così da assicurarci di scaricare l’ultima versione disponibile. Ora eseguiamo nuovamente i comandi sudo apt-get update e sudo apt-get upgrade (come fatto in precedenza) per aggiornare i pacchetti locali.

Finalmente possiamo passare all’installazione vera e propria di Mono:

 

sudo apt-get install mono-complete

 

L’intera procedura richiederà qualche minuto per il completamento. Al termine, procuriamoci anche MonoDevelop, l’editor open source del progetto Mono:

 

sudo apt-get install monodevelop

 

Abbiamo finito: MonoDevelop è adesso disponibile nella sezione Programmazione del menu del Desktop di Raspian. Una volta avviato, ci troveremo di fronte ad un’interfaccia molto familiare:

 

image

 

Figura 5 MonoDevelop in esecuzione su Raspberry Pi 2

 

Naturalmente le possibilità non si fermano qui. Non siamo obbligati ad usare MonoDevelop per sviluppare applicazioni. Possiamo lavorare in Windows con Visual Studio, creare un’applicazione e quindi copiarla sulla Raspberry per eseguirla con Mono. Possiamo inoltre utilizzare ASP.NET 5 e sfruttare il supporto a Linux offerto dal nuovo runtime .NET Core di Microsoft per eseguire applicazioni Web direttamente sulla scheda.

Ancora, non dobbiamo dimenticare che la scheda dispone di ben 40 pin di GPIO, che possono essere usati per controllare LED, pulsanti, relè, sensori, motori, ecc. Grazie ad essi (e ad una buona conoscenza di elettronica) è possibile sviluppare applicazioni in grado di interagire con dispositivi esterni per creare termostati, interruttori intelligenti, sistemi di controllo e molto altro.

 

Insomma, le possibilità che abbiamo a disposizione con la Raspberry Pi 2 sono davvero tante, e sono destinate ad aumentare considerevolmente quando avremo la possibilità di installarvi sopra Windows 10. Stay tuned!

 

 


read full article

Pagina 4 di 49

 
 
 
 
Certificazioni