Sito ufficiale del corso di Linguaggi e Ambienti Multimediali (A e B) per studenti della Laurea in ing. del Cinema e dei Mezzi di Comunicazione.
Attenzione: Questa pagina contiene la versione archiviata relativa all'edizione 2014/2015 del corso, raggiungibile anche da http://bit.ly/lingambmult. Il corso, dall'anno accademico 2015/2016, è spento.
Avvisi
- 2016-01-22: I siti dei progetti realizzati nel 2015 sono raggiungibili da http://lam-2015.github.io/
- 2016-01-13: Pubblicata data dell'appello della sessione invernale.
- 2015-09-13: Pubblicato elenco delle presentazioni e degli orali per l'appello di Settembre.
- 2015-09-10: Aggiornato orario e aula dell'appello di Settembre.
- 2015-08-05: Pubblicate le informazioni preliminari sull'appello di Settembre.
- 2015-07-20: Aggiornate date e orari del secondo appello estivo.
- 2015-07-09: Rinviata la consegna del materiale del secondo appello per il solo Modulo A.
- 2015-06-09: Aggiornate le informazioni relative agli appelli della sessione estiva.
- 2015-05-21: Pubblicate le specifiche del progetto per il modulo A.
- 2015-02-25: Anche per questa edizione del corso, JetBrains ha messo a disposizione una licenza di "classe" per l'utilizzo dell'ambiente di sviluppo RubyMine. La licenza è di tipo educational e sarà pubblicata sul portale della didattica e visibile solo agli studenti iscritti al corso. JetBrains, da quest'anno, offre gratuitamente l'utilizzo di quasi tutti i suoi prodotti agli studenti universitari; se siete interessati, potete trovare ulteriori informazioni alla pagina https://www.jetbrains.com/student/.
- 2015-02-25: Anche per questa edizione del corso, GitHub ha donato 50 repository privati (più un numero infinito di repository pubblici) da utilizzare per il nostro corso; potete vedere la pagina del corso all'indirizzo: https://github.com/lam-2015. Li useremo per ospitare i vostri progetti di gruppo e per svolgere quale esercitazione. Per poter fare tutto ciò, vi invitiamo a iscrivervi a GitHub per avere un profilo personale: potete farlo andando su https://education.github.com, in modo da ottenere - come studenti - anche un Micro plan gratuito per due anni.
- 2015-02-25: Benvenuti all'edizione 2014/2015 del corso!
- 2015-02-24: I contenuti relativi alla precedente edizione 2013/2014 del corso sono disponibili alla pagina archiviata nella sezione "Past Courses".
Programma del corso
Il fenomeno dei social network ha rivoluzionato, in meno di dieci anni, il panorama della produzione mediale, delle relazioni interpersonali, e anche della comunicazione politica e di impresa.
I Social Network Sites (SNS) come Facebook, Twitter, Google+ e LinkedIn hanno infatti radicalmente modificato le dinamiche di interazione sociale, configurando nuovi scenari in cui il rapporto tra cosiddetto mondo on line e off line è più complesso e interdipendente.
Il corso sviluppa un’analisi approfondita del fenomeno dei Social Network Sites e definisce le caratteristiche tecnologiche, strutturali e le pratiche relazionali e comunicative abilitate da queste nuove forme socio-tecnologiche.
Durante il corso, gli studenti impareranno i concetti e i meccanismi che stanno dietro alle tecnologie del Social Web, come la progettazione di un social network, la sua realizzazione e la validazione con degli utenti.
In particolare, il corso è diviso in due moduli: uno rivolto agli aspetti sociali e di comunicazione dei SNS (Linguaggi e Ambienti Multimediali B) e uno più orientato verso gli aspetti tecnologici e di sviluppo (Linguaggi e Ambienti Multimediali A).
- Il modulo B affronterà i principali nodi sociali e comunicativi legati allo sviluppo di un social network. La parte teorica riguarderà l’analisi storica e comparativa dei principali social network mondiali, l’analisi delle principali teorie sull’interazione mediata e sui modelli di networking e community building, la riflessione sugli effetti dei SNS sulle dinamiche relazionali e comunicative off line. Alla riflessione teorica verrà accompagnato il lavoro di progettazione di un Social Network, che riguarderà le fasi di analisi del target, definizione del concept e della value proposition, progettazione e prototipazione (mock-up), validazione e utilizzo di metriche e strumenti di analisi dei feedback.
- A partire dai progetti di social network sviluppati in classe, il modulo A fornirà gli strumenti tecnici e le conoscenze informatiche necessarie per progettare e sviluppare un proprio social network utilizzando tecnologie e linguaggi Web allo stato dell'arte (HTML 5, CSS 3, ecc.).
Durante il corso, gli studenti arriveranno a progettare e implementare un proprio social network esplorandone in prima persona le principali caratteristiche, problematiche e opportunità; i progetti realizzati saranno poi presentati dagli studenti stessi in una sessione di demo pubblica.
La foto presente in questa pagina è stata scattata da Douglas Ray.
Presentazione
Docenti
-
Docente (modulo A): Laura Farinetti (This email address is being protected from spambots. You need JavaScript enabled to view it.)
Consulenza su appuntamento via e-mail.
-
Docente (modulo B): Gabriella Taddeo (This email address is being protected from spambots. You need JavaScript enabled to view it.)
Consulenza su appuntamento via e-mail.
-
Esercitatore (entrambi i moduli): Luigi De Russis (This email address is being protected from spambots. You need JavaScript enabled to view it.)
Consulenza: lunedì (10:00-13:00) - avvisare prima via e-mail.
Orario del corso
Giorno e ora | Aula |
Mercoledì 10:00-13:00 | 5T |
Giovedì 14:30-17:30 | 5T |
Venerdì 10:00-13:00 | 5T |
Libri di testo
- Materiale distribuito dai docenti (vedi sezioni "Modulo A" e "Modulo B")
- Michael Hartl, Ruby on Rails 3 Tutorial: Learn Rails by Example, Addison Wesley, 2011, ISBN 978-0-321-74312-1 (disponibile online)
- Simon St. Laurent, Edd Dumbill, Eric J. Gruber, Learning Rails 3, O'Reilly, 2012, ISBN 978-1-4493-0933-6 (disponibile in biblioteca centrale)
- Taddeo G., Effetto social. Strumenti sociologici per la progettazione e analisi delle interazioni 2.0, Aracne Editore, 2013, Roma (libro in preparazione, dispense disponibili sul sito)
- Di Fraia G. (a cura di), Social Media Marketing. Manuale di comunicazione aziendale 2.0,Hoepli, 2011, Milano. Capitoli: 14, 15
- Wellman B., Lee R., Networked. Il nuovo sistema operativo sociale, Guerini Scientifica, 2012, Milano
Progetto finale
Lucidi delle lezioni
- Introduzione al modulo A
- Perché Ruby (on Rails)?
- Ruby: un'introduzione
- Architetture Web
- Social network: un'analisi tecnica
- Version Control con Git
- Il linguaggio di programmazione Ruby
- Gemme e convenzioni di Ruby
- HTML5: introduzione, HTML, struttura, tag semantici e form
- Il pattern Model-View-Controller
- CSS: Cascading Style Sheet
- CSS Level 3
- Sass: Syntactically Awesome Stylesheet
- Programmazione lato client con JavaScript
- HTML5 Canvas
- HTML5 Audio e Video
- HTML5 Drag&drop
Esercitazioni
- Primi passi con Ruby (soluzioni)
- Ancora Ruby (soluzioni)
- HTML e CSS
- Menu e immagini sensibili con CSS
- HTML e JavaScript (soluzioni)
- Modifica del DOM HTML con JavaScript (soluzioni)
- HTML5 Canvas e Javascript (soluzione)
- HTML5 Canvas: manipolazione dei pixel (immagine e soluzione)
- HTML5 video: sincronizzazione di contenuti (soluzione)
- HTML5 drag & drop (immagini e soluzione)
Laboratori
Le soluzioni delle esercitazioni di laboratorio, quando possibile, saranno disponibili come repository Git (PoliRun) ospitato nell'organizzazione creata per il corso su GitHub.
-
Laboratorio 1 - Primi passi con Ruby on Rails (soluzione)
- Rails 101 [slide]
- Laboratorio 2 - Pagine e routes
-
Laboratorio 3 - Modellazione utente
- Progetto di partenza
- Git in RubyMine [slide]
-
Laboratorio 4 - Registrazione utenti
- Progetto di partenza
- Route e form [slide]
-
Laboratorio 5-6
- Gestione degli utenti
- Post
- Associazione tra modelli [slide]
-
Laboratorio 7 - Following e follower
- Per iniziare... [slide]
-
Laboratorio 8 - Itinerari di corsa
- Ruby Geocoder gem, http://www.rubygeocoder.com
- GMaps4Rails gem, http://apneadiving.github.io
Materiale integrativo
Materiale aggiuntivo non presentato interamente in aula ma che può essere utile e/o aiutare nella realizzazione dei progetti di fine anno.
- Suggerimenti per lavorare in gruppo (con successo)
- Suggerimenti per scrivere "codice pulito"
- Il social network di base distribuito nel 2014: flix
- Il social network di base distribuito nel 2013: SWorD
-
Esempio di come effettuare una ricerca sul sito (basata su SWorD) [zip]
- Una versione più "complessa" della ricerca nel sito, potrebbe richiedere la creazione di un modello Search. Su RailsCasts ne potete trovare un esempio.
-
Esempio di come realizzare la messaggistica tra utenti (basato su SWorD) [zip]
- Per realizzare questa funzionalità, si è utilizzato la gemma simple-private-messaging disponibile su GitHub insieme a un po' di documentazione.
-
OAuth2
- Slide [zip] messe a disposizione dal gruppo Sniffsound nell'anno accademico 2011/2012
- I progetti sono registrati come applicazioni che può chiedere l'accesso sia a Facebook che a Twitter; ricordarsi di cambiare i codici di accesso in modo da utilizzare quelli del proprio progetto
- Progetti di esempio
Link utili
- Learn to Code - Codecademy
- HTML5
- CSS3 e Sass
-
JavaScript/jQuery:
- Learning jQuery in 30 minutes (slide in PDF)
- W3C Scripting and Ajax
- Ruby/Ruby on Rails:
-
Git
- Try Git! (in your browser)
- Git Documentation
- Git Resources (by GitHub)
Progetto finale
- Template per la presentazione finale del progetto (valido nel 2013/2014)
Lucidi delle lezioni
- Lezione 1 - Le forme della socialità
- Lezione 2 - Social Network: modelli e linee di sviluppo
- Lezione 3 - Fare ricerca sul proprio pubblico
- Lezione 4 - Architettura dell'informazione
- Lezione 5 - Social design
- Lezione 6 - Alle radici della socialità
- Lezione 7 - Step concept
- Lezione 8 - Marketing sui social media
- Lezione 9 - Test di usabilità
Materiale integrativo
Altro materiale verrà fornito a lezione.
- Boyd D. Ellison N. “Social Network Sites: definition, history and scholarship” in Journal of Computer Mediated communication, 13, 1: http://jcmc.indiana.edu//vol13/issue1/boyd.ellison.html
- Lenarhart A. (2009), "Adults and Social Network websites", in Pew Internet & American Life Project: www.pewinternet.org/Reports/2009/Adults-and-Social-Network-Websites.aspx
- Lenhart A. et al. (2010), "Social Media and Young Adults", in Pew Internet & American Life Project: www.pewinternet.org/Reports/2010/Social-Media-and-Young-Adults.aspx
- Lenhart A., Purcell K., Smith A., Zickuhr K. (2010), "Social Media & Mobile Internet Use among Teens and Young Adults", in Pew Internet & American Life Project
- Hampton K. et al. (2011), "Social Networking sites and our life", in Pew Internet & American Life Project: www.pewinternet.org/Reports/2011/Technology-and-social-networks.aspx
- Livingstone S. (2008), "Taking Risky Opportunites in Youthful Content Creation: Teenagers' use of Social Networking Sites for Intimacy, Privacy and Self-expression", in New Media and Society, 10, 3, draft disponibile su eprints.lse.ac.uk
- Lee Rainie et al. (2011), "The social side of the Internet", in Pew Internet & American Life Project: www.pewinternet.org/Reports/2011/The-Social-Side-of-the-Internet.aspx.
- Ortoleva P. (2012), Dal sesso al gioco. Un'ossessione per il XXI sec? Espress Edizioni.
- UE Next Media CSA White Paper (2011), "Social Networks Overview: Current Trends and Research Challenges": cordis.europa.eu/fp7/ict/netmedia/docs/publications/social-networks.pdf
- Dati e infografica sui SNS di Vincenzo Cosenza: http:www.vincos.it
Esame
- Regole di esame
-
Prossimo appello: giovedì 18/02/2016, ore 15:00, aula comunicata agli iscritti all'appello
-
Consegna del materiale:
- entro la mezzanotte del 11/02/2016 per entrambi i moduli
- Consegnare il materiale del modulo B utilizzando esclusivamente il sito del progetto, ospitato come GitHub Pages (tutto deve essere raggiungibile facilmente o contenuto nel sito stesso), comunicando l'avvenuta consegna via mail.
- Consegnare il materiale del modulo A utilizzando esclusivamente il repository su GitHub messo a disposizione per ogni gruppo, comunicando l'avvenuta consegna del progetto via mail.
-
Calendari
- Presentazioni dei gruppi
- Orali modulo A
- Orali modulo B (ordine inverso rispetto al modulo A)
-
Consegna del materiale:
- L'ordine nei calendari è definito in base all'arrivo degli elaborati dei diversi gruppi; eventuali cambi devono essere gestiti tra i diversi gruppi e comunicati ai docenti il giorno della presentazione.
- Gli studenti che non intendono sostenere l'orale in questo appello sono invitati a comunicarlo via mail ai docenti.
- Tutti gli studenti devono essere presenti (e puntuali) per l'inizio delle presentazioni di tutti i gruppi.
- Le presentazioni dei singoli gruppi dovranno durare al massimo 15 minuti; in tale tempo è compreso il collegamento del computer al proiettore dell'aula, la sua rimozione e le eventuali domande chiarificatrici che i docenti potranno fare.
Riferimenti ufficiali
- Pagina web del corso: http://bit.ly/lingambmult
- Pagina ufficiale sul Portale della Didattica
Tool
-
Ruby on Rails 3.2.x
-
Installazione su Windows: si consiglia di utilizzare RailsInstaller per Windows (versione 2.2.5).
- In Windows 8.x, dopo l'installazione, sostituire il file "runtimes.rb" presente in {cartella di RailsInstaller}\Ruby1.9.3\lib\ruby\gems\1.9.1\gems\execjs-1.4.0\lib\execjs\ con questo, per ovviare a un problema con JavaScript
- Dopo l'installazione, aprire un prompt dei comandi e digitare gem update --system seguito da gem update --system 2.3.0 per aggiornare il gestore delle gemme a una versione funzionante e abbastanza aggiornata
- Installazione su Linux (istruzioni e script): si consiglia di utilizzare rbenv
- Installazione su Mac OS X (istruzioni e script): si consiglia di utilizzare rbenv tramite homebrew; può essere necessario installare Xcode o i Command Line Tools di Apple
-
Installazione su Windows: si consiglia di utilizzare RailsInstaller per Windows (versione 2.2.5).
-
JetBrains RubyMine
- il codice per attivare gratuitamente RubyMine - licenza concessa da JetBrains per scopi didattici - sarà pubblicato dai docenti sul Portale della Didattica, durante il corso
- in alternativa, è possibile usare Aptana Studio 3 (basato su Eclipse)
-
Git
- GitHub Education
- Applicazione GitHub for Mac
- Applicazione GitHub for Windows
- Elenco completo client Git
-
SQLite Editors
- SQLite Database Browser
- SQLite Manager (Firefox add-on)
- SQLite Studio
- Balsamiq Mockup - www.balsamiq.com/
La tabella seguente riporta l'andamento delle lezioni del corso, per trasparenza di informazione e per facilitare la pianificazione da parte degli studenti. Ci riserviamo di modificare la pianificazione delle lezioni per esigenze didattiche.
Legenda: la colonna Tipo può essere L=Lezione, EL=Esercitazione.
Data | Ore | Tipo | Argomento | Docente |
---|---|---|---|---|
04/03/2015 | 10:00-13:00 | L | Introduzione al corso. Le forme della socialità. | Gabriella Taddeo |
05/03/2015 | 14:30-16:00 | EL | Motivazioni. Introduzione a Ruby e installazione dell'ambiente di sviluppo. | Luigi De Russis |
05/03/2015 | 16:00-17:30 | L | Architetture Web. | Laura Farinetti |
06/03/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
11/03/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
12/03/2015 | 14:30-16:00 | L | Il linguaggio di programmazione Ruby. | Laura Farinetti |
12/03/2015 | 16:00-17:30 | EL | Social network: un'analisi tecnica. | Luigi De Russis |
13/03/2015 | 10:00-11:30 | L | Gabriella Taddeo | |
13/03/2015 | 11:30-13:00 | EL | Version Control con Git. | Luigi De Russis |
18/03/2015 | 10:00-13:00 | L | Il linguaggio di programmazione Ruby. | Laura Farinetti |
19/03/2015 | 14:30-16:00 | EL | Gemme e convenzioni di Ruby. Primi passi con Ruby on Rails. | Luigi De Russis |
20/03/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
25/03/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
26/03/2015 | 14:30-17:30 | L | Il linguaggio di programmazione Ruby. | Laura Farinetti |
27/03/2015 | 10:00-11:30 | L | Gabriella Taddeo | |
27/03/2015 | 11:30-13:00 | EL | Pagine e routes. | Luigi De Russis |
01/04/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
(Vacanze di Pasqua) | ||||
09/04/2015 | 14:30-16:00 | L | Il pattern MVC. HTML5. | Laura Farinetti |
09/04/2015 | 16:00-17:30 | L | Gabriella Taddeo | |
10/04/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
16/04/2015 | 14:30-17:30 | L | HTML5: struttura e form. | Laura Farinetti |
17/04/2005 | 10:00-13:00 | L | CSS. | Laura Farinetti |
22/04/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
23/04/2015 | 14:30-17:30 | L | CSS. | Laura Farinetti |
24/04/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
24/04/2015 | 11:30-13:00 | L | CSS3. | Laura Farinetti |
29/04/2015 | 10:00-11:30 | L | Gabriella Taddeo | |
29/04/2015 | 11:30-13:00 | EL | Feedback sui progetti (modulo B). | Luigi De Russis |
30/04/2015 | 14:30-16:00 | L | Sass. JavaScript. | Laura Farinetti |
30/04/2015 | 16:00-17:30 | EL | Partials. Modellazione utente. Git in RubyMine. | Luigi De Russis |
06/05/2015 | 10:00-11:30 | L | Gabriella Taddeo | |
06/05/2015 | 11:30-13:00 | EL | Feedback sui progetti e creazione del sito di progetto (modulo B). | Luigi De Russis |
07/05/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
07/05/2015 | 14:30-17:00 | L | Javascript e DOM. | Laura Farinetti |
08/05/2015 | 10:00-11:30 | EL | Registrazione utenti. | Luigi De Russis |
08/05/2015 | 11:30-13:00 | L | Gabriella Taddeo | |
13/05/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
14/05/2015 | 14:30-17:30 | L | JavaScript. | Laura Farinetti |
15/05/2015 | 10:00-11:30 | EL | Gestione degli utenti. Post. | Luigi De Russis |
15/05/2015 | 11:30-13:00 | L | Gabriella Taddeo | |
20/05/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
21/05/2015 | 14:30-17:30 | L | HTML5 canvas. | Laura Farinetti |
22/05/2015 | 10:00-11:30 | EL | Following e followers. | Luigi De Russis |
22/05/2015 | 11:30-13:00 | L | HTML5 canvas. | Laura Farinetti |
27/05/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
28/05/2015 | 14:30-16:00 | L | HTML5 audio e video. | Laura Farinetti |
28/05/2015 | 16:00-17:30 | EL | Itinerari di corsa con Google Maps e geocoder. | Luigi De Russis |
29/05/2015 | 10:00-13:00 | L | HTML5 video. | Laura Farinetti |
03/06/2015 | 10:00-13:00 | L | Gabriella Taddeo | |
04/06/2015 | 14:30-17:30 | L | HTML5 drag&drop. | Laura Farinetti |
05/06/2015 | 10:00-13:00 | EL | Lavori di gruppo supervisionati. | Luigi De Russis |
11/06/2015 | 14:30-17:30 | EL | Lavori di gruppo supervisionati. | Luigi De Russis |