La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Linux, Android e Internet of Things ITIS G.Galilei - San Secondo (PR)

Presentazioni simili


Presentazione sul tema: "Linux, Android e Internet of Things ITIS G.Galilei - San Secondo (PR)"— Transcript della presentazione:

1 Linux, Android e Internet of Things ITIS G.Galilei - San Secondo (PR)

2 WHAT’S THIS? Corso di 20 ore frontali rivolto principalmente a docenti del settore ICT. Questo corso vuole essere una base di partenza per lo studio e l’utilizzo di nuove tecnologie che stanno sviluppandosi oggi giorno. L’idea è sviluppare le lezioni come un CodeDojo, ma rivolto a persone già con competenze informatiche. Cosa vuole essere un “CodingGym” HOW CAN I USE IT? ●Base per ricerca ed integrazione successiva ●Base per future lezioni ●Lezione condivisa ●Rinforzo di basi tecnologiche FORSE NON SAPEVI CHE... CoderDojo è un movimento rivolto soprattutto ai bambini. CoderDojo è una palestra, un luogo di apprendimento per scoprire i segreti della programmazione, ma non solo. “Coding”, ossia programmare con i linguaggi che strutturano la base di ogni sistema informatico;” “dojo” proviene invece dalla tradizione giapponese e vuol dire “luogo della via” ossia non una semplice palestra bensì un luogo in cui apprendere una mentalità, un modo di rapportarsi con computer e strumenti tecnologici che sempre di più influenzano la vita quotidiana di ognuno.

3 Chi sono I am Mirko Mancin Contatti: mirko.mancin@gmail.com mancio90 @loweherz90 loweherz WEB: http://mancio.myds.mehttp://mancio.myds.me dove trovare le slide ● https://www.slideshare.net/mancio90/ https://www.slideshare.net/mancio90/ Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution 4.0 International license.noted Creative Commons Attribution 4.0 International license Sono un Ph.D. Student presso il laboratorio WASNLab dell’Universtià di Parma e dal 2013 sono consulente ICT con alcuni progetti in attivo con diverse aziende del territorio.WASNLab consulente ICT

4 1 LINUX Let’s start with the first set of slides

5 Linux “Linux è una famiglia di sistemi operativi di tipo Unix-like, rilasciati sotto varie possibili distribuzioni, aventi la caratteristica comune di utilizzare come nucleo il kernel Linux. L'ultima versione stabile del kernel Linux è la 3.18.3 ed è stata resa disponibile al pubblico il 15 gennaio 2015. Grazie alla portabilità del kernel Linux sono stati sviluppati sistemi operativi Linux per un'ampia gamma di dispositivi: ▪personal computer ▪cellulari ▪tablet computer e console ▪mainframe ▪supercomputer ed esistono sistemi Linux installabili anche come server, router e sistemi embedded.” WIKIPEDIA

6 Linux - l’architettura di Unix

7 Linux - caratteristiche Unix è stato creato per grandi sistemi multiutente. Multiutente e sicuro: Utenti normali non possono modificare i file degli altri (di default). In particolare, utenti normali non possono modificare impostazioni di sistema,né cancellare programmi,etc. root: utente amministratore con tutti i privilegi Caratteristiche principali: ●Multi­tasking ●Supporto per multi processori ●Estremamente flessibile ●Interfaccia grafica (X Window) ●Supporto della rete ●Portabilità ●Scalabilità

8 Linux - il progetto GNU GNU = GNU Non è Unix (un acronimo ricorsivo!) Progetto per implementare un sistema operativo come Unix, completamente libero Iniziato da Richard Stallman nel 1984, un ricercatore del MIT, in un periodo in cui i sorgenti di Unix non erano più liberi Componenti iniziali: compilatore C (gcc), make (GNU make), Emacs, libreria C (glibc), coreutils (ls, cp...) Comunque, nel 1991, il progetto GNU non aveva ancora un kernel e veniva eseguito su macchine Unix proprietarie. Kernel libero, tipo Unix creato nel 1991 da Linus Torvalds. L'intero sistema usa i tool della GNU: libreria C, gcc, binutils, fileutils, make, emacs... Così l'intero sistema si chiama “GNU/Linux” Condiviso dall'inizio come software libero (licenza GPL), ha attirato sempre più contributi e utenti. Dal 1991, sta crescendo più velocemente di qualsiasi altro sistema operativo.

9 Linux - Distribuzioni GNU/LINUX Le comunità linux si occupano di rilasciare versioni compatibili con il kernel, librerie C, compilatori e diversi programmi utili... veramente un grosso lavoro!!! I programmi sono disponibili in pacchetti che possono essere facilmente installati, rimossi o aggiornati. La dipendenza dalle varie versioni è gestita automaticamente. ●Distribuzioni Commerciali: includono l'assistenza. I sorgenti sono liberi, ma i binari di solito no. ●Distribuzioni Community: sia i sorgenti che i binari sono liberi. Nessuna assistenza di solito. Non confondete la versione della distribuzione con la versione del kernel di Linux!

10 Linux - Distribuzioni commerciali Red Hat: http://www.redhat.com/ La più popolare. Affidabile, sicura, facile da usare e da installare, supportata da tutti i venditori di hardware e software.http://www.redhat.com/ Suse (Novell): http://www.suse.com/ La principale alternativa. Facile da installare e da usare, stabile. supportata da tutti i venditori di hardware e software.http://www.suse.com/ Mandriva (ex Mandrake): http://mandriva.com/ Facilehttp://mandriva.com/ da usare e da installare, più aggiornata ma meno stabile Più orientata ad utenti individuali. Poco supporto da parte del venditore.

11 Linux - Distribuzioni community Fedora Core: https://getfedora.org/ Stabile, sicura,https://getfedora.org/ facile da usare e da installare. Frequenti aggiornamenti. Ubuntu Linux: http://www.ubuntu-it.org/ Distribuzione in crescita. Basatahttp://www.ubuntu-it.org/ su Debian ma rilascia una nuova versione ogni 6 mesi. Facile da usare. Ottima per chi inizia. Debian: http://debian.org/ Molto stabile e sicura, ma più difficile da configurare e installare. Buona per gli sviluppatori, ma non ancora per gli utenti. Le nuove versioni non sono abbastanza frequenti (ogni 2 o 3 anni).http://debian.org/

12 Linux - Distribuzioni... Linux è un progetto libero e aperto ai contributi esterni (fondamentali). Esistono centinaia di distribuzioni (”distro”): sono sistemi operativi pronti all'uso, basati sul kernel Linux, che comprendono utility e suite di applicazioni.

13 Linux - Distribuzioni... Linux è un progetto libero e aperto ai (fondamentali) contributi esterni. Esistono centinaia di distribuzioni (”distro”): sono sistemi operativi pronti all'uso, basati sul kernel Linux, che comprendono utility e suite di applicazioni.

14 Linux - Distribuzioni Embedded In informatica con Embedded Linux ci si riferisce a quell'insieme di distribuzioni linux concepite per essere utilizzate su sistemi embedded. Le caratteristiche principali di tali sistemi impongono dei vincoli molto severi al sistema operativo in termini di memoria flash occupata, memoria centrale necessaria, tempi di avvio brevi. WIKIPEDIA Alcune distribuzioni: ●Debian Embedded ●OpenWRT ●Angstrom ●Zeroshell ●Yocto ●Ubuntu Core Snappy (ad-hoc per IoT) (link)link

15 Linux - Mettiamoci le mani sopra!!

16 Linux - Tutto è un file ●I file sono regolari ed i nomi dei file sono CASE SENSITIVE ●Le directory sono semplicemente file che elencano un insieme di file ●Link simbolici = File che si riferiscono al nome di un altro file ●Device e periferiche = Leggi e scrivi da dispositivi come fossero file regolari ●Pipe “|” = Usati per mettere in sequenza programmi es: cat *.log | grep error ●Socket = Comunicazione tra processi

17 Linux - La shell ●E’ un programma che permette agli utenti di comunicare con il sistema attraverso una serie di comandi e di avviare altri programmi da linea di comando (CLI, Command Line Interface). ●Nei sistemi embedded Linux (e non solo) l'interfaccia grafica non è quasi mai disponibile. ●E' però sempre disponibile la shell, a cui possiamo accedere via tastiera e monitor, via seriale (in windows COM1, ecc..., in linux /dev/ttySx) o via rete (es. Ethernet). ●In Linux: bash (Bourne again shell).

18 Linux - ESEMPIO

19 Linux - accedere al filesystem Filesystem: come sono memorizzati i dati in un dispositivo (hard-disk, dvd, ecc...). Esistono diversi tipi di file system (NTFS, ext4, ecc...) ma tutti organizzano il contenuto dei dischi con una struttura ad albero con radice / (root),nodi (directory) e foglie (file).

20 Linux - accedere al filesystem Il prompt: username@my-laptop:~$ ▪ Dove sono? pwd ▪ Cosa contiene la cartella corrente? ls

21 Linux - accedere al filesystem ● Cambiare directory: cd, ○ Es: cd dir, cd.., cd / (.. e. = file speciali che rappresentano la directory padre e la directory corrente, rispettivamente) ● Creare una directory vuota: mkdir ● Creare un file vuoto: touch ● Cancellare un file: rm ● Cancellare una directory: rm -r ● Copiare un file o directory: cp [-r] ● Spostare (e rinominare): mv ● Creare un collegamento: ln -s In Linux un collegamento così creato viene chiamato soft, ovvero simbolico. Funziona sia per i file che per le directory. I collegamenti sono trasparenti ai comandi. ●Cambiare i permessi, il gruppo o il proprietario di un file: ○chmod XYZ ○chown ○chgrp ATTENZIONE: I file e le directory che iniziano con. sono invisibili all'utente (per visualizzarli ls -a)

22 Linux - in generale... nome -opzioni argomenti esempio: ls -l temp.txt convenzione nella sintassi dei comandi: ●se un’opzione/argomento può essere omesso, si mette tra quadre: [opzione] ●se due opzioni/argomenti sono mutamente esclusivi, vengono separati da |: arg1 | arg2 ● quando un argomento può essere ripetuto n volte, si aggiungono tre puntini dopo tale argomento: arg... PER ALTRI COMANDI VEDERE LA SEGUENTE GUIDA: http://sisinflab.poliba.it/giannini/SO/Comandi_shell_bash.pdf

23 Linux - SUDO Sudo (Superuser Do) e' uno strumento che consente all'amministratore di sistema di attribuire ad utenti o gruppi specifici la facolta' di eseguire determinati comandi con i privilegi di superuser (root) o un utente diverso pur non essendo a conoscenza della relativa password. Su alcuni sistemi (come ad esempio Slackware) solamente l'utente root puo' riavviare/spegnere la macchina ed in questo caso potremo utilizzare sudo per permettere ad un utente 'generico' di far ciò. Oppure in Ubuntu per esempio, non si puo' accedere direttamente al sistema con l'utente root ma e' necessario loggarsi con un utente non privilegiato ed utilizzare il comando sudo per eseguire manzioni amministrative. L'applicazione e' in grado di registrare sia i comandi che gli argomenti digitati dagli utenti. Questa applicazione è disponibile per tutte le distribuzioni e non sara' quindi un problema installarlo. Con ubuntu/debian basterà digitare (come utente root): apt-get install sudo Per configurarlo è necessario editare il file 'sudoers' tramite un apposito editor (esempio ‘nano’).

24 Linux - ESERCIZIO 1. a.Creare un file b.Creare una directory c.Creare all'interno della directory un collegameno al file creato d.Verificare il collegamento con ls e.Creare un file nascosto f.Verificare con ls g.Cancellare tutto.

25 Linux - ESERCIZIO 2. a.All'interno della vostra home directory create due directory denominate “uno” e “due”. b.Copiate il file /etc/profile nella directory uno, conservandone il nome. c.Copiate il file /etc/profile nella directory due cambiandone il nome in copia-profile. d.Spostate il file profile nella directory due ed il file copia-profile nella directory uno. e.Cancellate i due file con uno stesso comando. f.Cancellate le due directory vuote. g.Verificate il funzionamento di touch per la modifica dell'orario di ultimo accesso e per la creazione di un file vuoto

26 Linux - installazione dei pacchetti Il metodo più diffuso per installare un programma è utilizzando uno dei gestori di pacchetti offerti dalla distribuzione che si sta utilizzando. ●Ubuntu/Debian ○Modalità grafica: Software Center / Synaptic ○Modalità testuale: Aptitude / apt-get ●Fedora ○Modalità grafica: PackageKit ○Modalità testuale: yum ●OpenWRT ○Modalità testuale: opkg Tuttavia, benché gli archivi dei pacchetti sono molto vasti, è possibile che un programma che si desideri installare non sia disponibile negli archivi di Ubuntu. Quando questo si verifica è possibile scaricare dal web il pacchetto e installarlo successivamente.

27 Linux - installazione dei pacchetti.deb Questi file sono i pacchetti Debian. I pacchetti associati con Ubuntu hanno come estensione.deb, data la stretta relazione di Ubuntu con la distribuzione Debian. Per installare un file.deb sono necessari i privilegi di amministratore. 1. Per installare un file.deb, fare doppio-clic su di esso e poi selezionare Installa pacchetto. 2. In alternativa è possibile installare un file.deb da un terminale digitando: sudo dpkg -i pacchetto_file.deb 3. Per rimuovere un pacchetto.deb deselezionarlo all'interno del gestore di pacchetti oppure da un terminale digitare: sudo dpkg -r nome_pacchetto

28 Linux - installazione dei pacchetti.rpm Un altro tipo di pacchetto è il Red Hat Package Manager la cui estensione è.rpm. Un.rpm può essere convertito in un.deb per Ubuntu utilizzando il programma alien. 1. Installare il programma alien (per Ubuntu/Debian: sudo apt-get install alien ) 2. In un terminale eseguire, con privilegi di amministratore, il seguente comando: sudo alien file_del_pacchetto.rpm

29 Linux - installare un tarball o uno zip I file con estensione.tar.gz o.tar.bz2 sono pacchetti conosciuti come tarball, molto in uso in Linux e Unix. Se non esiste un pacchetto per Ubuntu in nessuno dei repository di Ubuntu, è possibile installare e disinstallare un tarball dalla riga di comando seguendo le istruzioni fornite con ciascun pacchetto. I tarball solitamente contengono il codice sorgente del programma e devono quindi essere compilati per poterli utilizzare. Per fare questo è necessario del software aggiuntivo. Per estrarre questi archivi ci sono i seguenti comandi: ●ZIP > unzip archive_name.zip ●TAR.GZ > tar -zxvf archive_name.tar.gz ●TAR.BZ2 > tar -jxvf archive_name.tar.bz2

30 Linux - esercizio Installare un pacchetto a piacere da command line e/o da packet manager ●Editor di testo (gedit, kate) ●Tool di sviluppo (java, python) ●IDE (Arduino, Eclipse) ●Codec e player video (vlc) ●Gestore di immagini (gimp) ●Programmi di file sharing (amule, jdownloader) Provare: ▪ARDUINO IDE - http://arduino.cc/en/Main/Softwarehttp://arduino.cc/en/Main/Software ▪VLC - http://mirrors.kernel.org/ubuntu/pool/universe/v/vlc/vlc_2.0.8- 0ubuntu0.12.04.1_i386.debhttp://mirrors.kernel.org/ubuntu/pool/universe/v/vlc/vlc_2.0.8- 0ubuntu0.12.04.1_i386.deb

31 2 Concetti di reti Lo stack ISO/OSI, i protocolli di rete e verso le nuvole...

32 Lo stack protocollare

33 I protocolli su internet

34 I protocolli su internet - esempi

35 Indirizzo IP ●Cos’è un indirizzo IP? L'identificazione dei dispositivi di rete su Internet e all'interno delle reti domestiche è affidata al protocollo IP. ●IP Pubblico e IP Privato Un IP pubblico o esterno è un codice identificativo univoco che l'ISP (Internet provider service, fornitore dei servizi Internet) assegna ad ogni utente appartenente alla sua rete. È utilizzato per identificare la rete casalinga (composta da uno o più dispositivi di rete) in Internet e permette, ad esempio, di mettere in comunicazione due computer (client e server o due nodi paritari all'interno di una rete peer-to-peer) non appartenenti alla stessa LAN. Gli indirizzi IP sono utilizzati anche per identificare i dispositivi di rete appartenenti ad una stessa Local Area Network. In questo caso si parlerà, però, di IP privato. L'assegnazione degli indirizzi è deputata al router e può avvenire in maniera automatica (attraverso il protocollo DHCP) oppure manuale, ad opera del gestore della rete locale. Questo permette di identificare univocamente ogni dispositivo di rete all'interno di una rete locale, ma non al suo esterno: i blocchi di indirizzi IP privati sono comuni a tutti i router del mercato e uno stesso indirizzo può essere utilizzato per identificare dispositivi di rete diversi, purché si trovino collegati a network differenti. ●Dove trovo l’indirizzo IP del mio PC/Device? $ifconfig ●Dove trovo il mio indirizzo pubblico? http://www.mio-ip.it/

36 Porte Le porte sono lo strumento utilizzato per realizzare la multiplazione delle connessioni a livello di trasporto, ovvero per permettere ad un calcolatore di effettuare più connessioni contemporanee verso altri calcolatori, facendo in modo che i dati contenuti nei pacchetti in arrivo vengano indirizzati al processo che li sta aspettando. LISTA PORTE STANDARD PortServiceProtocolDescrizione 20ftp-dataTCP/UDPFile Transfer Protocol (TCP) – Default Data 21ftp-dataTCP/UDPFile Transfer Protocol (TCP) – Control 22sshTCPSecure Shell (SSH) – Remote Login Protocol 23telnetTCPTelnet 25smtpTCPSimple Mail Transfer Protocol (SMTP) 53domainTCP/UDPDomain Name Service (DNS) 80httpTCPHypertext Transfer Protocol (HTTP) 110pop3TCPPost Office Protocol Version 3 (POP3) 111nfsTCPNFS 443sslTCPHypertext Transfer Protocol over TLS/SSL Le porte superiori a 1024 sono disponibili per applicazioni personalizzate non riconosciute dallo IANA.

37 Utilizzo del protocollo SSH L'SSH un protocollo che permette di collegarsi ad una macchina in maniera sicura ed averne un controllo totale. Per collegarsi in SSH è necessario utilizzare software appositi, a seconda del sistema operativo che viene utilizzato sul proprio computer locale. Per connettersi in SSH sulla macchina, è necessario disporre di due informazioni: ●Ip della macchina (o il nome della macchina), ●L’username e la password della macchina. Esempio di collegamento con OpenSSH: $ ssh root@bmw The authenticity of host 'bmw (213.186.32.1)' can't be established. RSA key fingerprint is a9:bb:55:35:86:4d:ca:81:7f:9e:2b:2c:79:10:96:3c. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'bmw,213.186.32.1' (RSA) to the list of known hosts. Password: $ Quando ci si collega, il vostro client SSH riceve una RSA key fingerprint che è la chiave digitale del server su cui si effettua la connessione. Questa chiave sarà verificata ad ogni nuova connessione. Se viene modificata sarete informati, ma questo significa anche che è cambiato qualcosa nella macchina: la macchina è stata reinstallata, il server ssh è stato reinstallato, vi state collegando da un'altra macchina. Alla prima connessione dovete accettare la memorizzazione della chiave digitale sul vostro posto di lavoro nel client SSH.

38 Su Windows ●Putty (gratuito). Per saperne di più, potete consultare la guida sull'Utilizzo di Putty.PuttyUtilizzo di Putty ●Securecrt (a pagamento).Securecrt Su Macintosh ●NiftyTelnet 1.1 SSH.NiftyTelnet 1.1 SSH ●DataComet.DataComet Il terminale viene fornito con Mac OSX ed è sempre installato sul disco. Potete trovare alcune informazioni a questo link.questo link Su Linux ●OpenSSH (gratuito).OpenSSH ●La shell di Linux. Utilizzo del protocollo SSH

39

40 ...sulle nuvole... Cloud Computing In informatica con il termine inglese cloud computing (in italiano nuvola informatica) si indica un insieme di tecnologie che permettono, tipicamente sotto forma di un servizio offerto da un provider al cliente, di memorizzare/archiviare e/o elaborare dati (tramite CPU o software) grazie all'utilizzo di risorse hardware/software distribuite e virtualizzate in Rete in un'architettura tipica client-server. (Wikipedia) ?

41 ● SaaS (Software as a Service) - Consiste nell'utilizzo di programmi installati su un server remoto, cioè fuori dal computer fisico o dalla LAN locale, spesso attraverso un server web. Questo acronimo condivide in parte la filosofia di un termine oggi in disuso, ASP (Application service provider). ● DaaS (Data as a Service) - Con questo servizio vengono messi a disposizione via web solamente i dati ai quali gli utenti possono accedere tramite qualsiasi applicazione come se fossero residenti su un disco locale. ● HaaS (Hardware as a Service) - Con questo servizio l'utente invia dati a un computer che vengono elaborati da computer messi a disposizione e restituiti all'utente iniziale. ● PaaS (Platform as a Service) - Invece che uno o più programmi singoli, viene eseguita in remoto una piattaforma software che può essere costituita da diversi servizi, programmi, librerie, etc. ● IaaS (Infrastructure as a Service) - Utilizzo di risorse hardware o virtuali in remoto. La caratteristica dello IaaS è che le risorse vengono istanziate su richiesta o domanda al momento in cui una piattaforma ne ha bisogno....sulle nuvole... Cloud Computing

42 Linux - ESEMPIO Amazon Web Service http://aws.amazon.com/ Azure Microsoft https://manage.windowsazure.com/

43 3 Internet of Things Tutti ne parlano… ma cos’è questo Internet delle cose?

44 Internet of Things Evoluzione di Internet per la connessione in rete di piccoli dispositivi intelligenti Fattori evolutivi di IoT tecnologie diverse tra loro devono essere in grado di comunicare in modo trasparente enorme quantità di informazione a disposizione (social network, sensori, attuatori, ecc.) necessità di maggiore connettività Uso di IP

45 Internet of Things

46 Internet of Things - Visione Integrated, Shared & Seamless Connectivity (WiFi, ZigBee/802.15.4, 3G/LTE) Security for Authorization for multiple accesses Smart Objects (Data producers and Data Consumers) Data Collection & Processing (Business Intelligence, Data Mining, Data Aggregation, etc...) Services (Mobility, Energy Efficiency, Monitoring, Security, etc..)

47 Internet of Things

48 Internet of Things - protocolli applicativi ●CoAP: Constrained Application Protocol E’ utilizzato per sensori e device con risorse limitate in termini di risorse e potenza collegati in rete. ●XMPP (Extensible Messaging and Presence Protocol) E’ un insieme di protocolli aperti di messaggistica istantanea e presenza basato su XML. Nasce per applicativi di Instant Messaging,ma può esserte utilizzato anche in IoT. ●MQ Telemetry Transport E’ adatto all’IOT perchè è stato progettato per minimizzare il comsumo di energia e la dimensione dei pacchetti scambiati.

49 Internet of Things - formati dati: JSON E’ un formato dati testuale basato su struttura chiave-valore. Si è diffuso dal 2005 ed è diventato una valida alternativa all’XML perchè è semplice, leggibile e sintetico. Noise Parking Slot

50 Internet of Things - formati dati: JSON http://www.json.org/

51 Internet of Things - formati dati: JSON Tipi di dato supportati: ●Numeri: interi e decimali ●Boolean: true, false ●Stringhe: delimitate dalle virgolette (“) ●Array: di dati primitivi e oggetti complessi E’ language-indipendent, ogni linguaggio ha metodi per: ●Serializzare: trasformare oggetti, strutture dati e variabili in una stringa JSON ●Deserializzare: trasformare una stringa JSON in oggetti o strutture dati del linguaggio che stiamo utilizzando (PHP, Java, Javascript).

52 Internet of Things

53 ●Smart Parking - rete di sensori intelligenti per monitoraggio dei parcheggi Internet of Things

54 ●Smart Toys - giocattoli intelligenti per interazione in parchi di divertimento o ambienti casalinghi Internet of Things

55 ●Smart Plants - Sensori per il monitoraggio di piante e giardini

56 Internet of Things ●Smart Home Building - rete eterogenea di dispositivi per l’automazione avanzata di dispositivi

57 Internet of Things ●Smart City - una città sostenibile rivolta ai cittadini come insieme di molteplici infrastrutture e servizi intelligenti (citizen in the loop)

58 Internet of Things - Smart Object

59

60

61

62 Voilà Demo Arduino Node DHT22 (Temperature + Humidity) Arduino Node Sound Sensor Arduino Node Light Sensor IoT Hub Service Discovery Join Service Advertisement Data Fetcher Service Discovery Data Fetching Smart Display Update

63 Thanks! ANY QUESTIONS? You can find me at: mirko.mancin@gmail.com

64 CREDITS Special thanks to all the people who made and released these awesome resources for free: ▪Busy Icons by Olly HolovchenkoBusy Icons ▪Presentation template by SlidesCarnivalSlidesCarnival ▪Photographs by UnsplashUnsplash ▪Source slideSource slide ▪http://wasnlab.tlc.unipr.ithttp://wasnlab.tlc.unipr.it This template is free to use under Creative Commons Attribution license. If you use the graphic assets (photos, icons and typographies) provided with this presentation you must keep the Credits slide.Creative Commons Attribution licenseCredits slide


Scaricare ppt "Linux, Android e Internet of Things ITIS G.Galilei - San Secondo (PR)"

Presentazioni simili


Annunci Google