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 2013/2014 del corso. L'ultima versione del corso è invece disponibile alla pagina: http://bit.ly/lingambmult
Avvisi
- 2015-02-17: Pubblicate date e scadenze dell'appello di Gennaio/Febbraio.
- 2014-09-02: Posticipato, per il solo modulo A, la consegna del materiale per l'appello di Settembre. Sarà da consegnare entro la mezzanotte del 04/09/2014.
- 2014-07-23: Pubblicate date e scadenze dell'appello di Settembre.
- 2014-07-21: Pubblicato l'elenco delle presentazioni e degli orali per l'appello del 23/07. L'esame inizierà alle ore 10:00 in aula 2I.
- 2014-06-25: Posticipato, per il modulo A, la consegna del materiale per il primo appello. Sarà da consegnare entro mezzanotte del 26/06/2014
- 2014-06-11: Pubblicate, nella sezione Esame, le date degli appelli estivi con le relative scadenze per la consegna del materiale. Aggiornate le regole di esame.
- 2014-05-26: Nella sezione dedicata al modulo A trovate le esercitazioni (con qualche slide di supporto) che verranno "condensate" nelle prossime tre ore di laboratorio su Rails, in modo che possiate iniziare a guardare (e magari provare) cosa è stato realizzato nel social network di base. Allo stesso modo, su GitHub è già disponibile il codice sorgente di flix, anche suddiviso nelle varie esercitazioni (vedi https://github.com/lam-2014/flix/releases). Nel caso in cui, prima o poi, abbiate bisogno di più dettagli (o chiarimenti) su come si è realizzata una porzione del sito, vi invito a utilizzare i commit del repository come traccia: si è cercato di fare un commit per ogni modifica/funzionalità aggiunta in modo da lasciare una traccia il più dettagliata possibile.
- 2014-05-26: La lezione di domani, martedì 27 maggio, sarà in aula 2T.
- 2014-05-22: Martedì 27 Maggio, dalle ore 14:30 alle ore 17:30 in aula 5T, ci sarà lezione del modulo A.
- 2014-04-16: Abbiamo iniziato a predisporre, su GitHub, due repository privati per ogni gruppo di cui avevamo il nome e/o almeno un username GitHub: quello chiamato come il nome del gruppo dovrà ospitare il sito che sarà valutato per l'esame; l'altro, denominato "git-experiment-X" potrà essere utilizzato liberamente per fare esperimenti con Git e GitHub.
- 2014-04-16: Riportare, entro il 4 Maggio 2014, nome utente GitHub e nome del gruppo (anche provvisorio) sul documento presente su Google Drive "Gruppi Laboratorio LAM".
- 2014-04-04: Oggi alle 11.30 la prof.ssa Taddeo non può far lezione per motivi di salute. La lezione delle 13.00 sarà invece regolare.
-
2014-03-31: E' il momento di avviare i lavori di gruppo per il Modulo B: i gruppi lavoreranno insieme alla progettazione e prototipazione di un proprio Social Network. Attraverso il link di seguito potete accedere al documento su Google Drive dove riportare nome del gruppo, membri e target scelto: https://docs.google.com/document/d/1w4Ia8lt92ILVhf3gy1ota0lHZm3Ralnw1zqujlzhbfE.
In base al contenuto del documento, verrà anche creato uno spazio su GitHub per la parte di programmazione del progetto stesso.
I gruppi devono essere creati entro il prossimo mercoledì. Tali gruppi possono essere di massimo 3 partecipanti. - Come annunciato in classe, ieri sono stati resi pubblici alcuni progetti finali dei vostri colleghi dell'anno scorso: https://github.com/lam-2013. Possono servire da "ispirazione" per i progetti di quest'anno.
-
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-2014.
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. -
Benvenuti all'edizione 2013/2014 del corso!
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 (Rails 3, 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 (modulo A): Luigi De Russis (This email address is being protected from spambots. You need JavaScript enabled to view it.)
Consulenza su appuntamento via e-mail.
Orario del corso
Giorno e ora | Aula |
Mercoledì 10:00-13:00 | 5T |
Giovedì 14:30-17:30 | 5T |
Venerdì 11:30-14:30 | 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
- Perché Ruby (on Rails)?
- Ruby: un'introduzione
- Social network: un'analisi tecnica
- Il linguaggio di programmazione Ruby
- Gemme e convenzioni di Ruby
- Il linguaggio HTML (esempi)
- Version Control con Git
- Architetture client-server e Web
- Il pattern Model-View-Controller
- HTML5: introduzione, struttura e tag semantici
- CSS: Cascading Style Sheet (esempi)
- CSS Level 3
- Sass: Syntactically Awesome Stylesheet
- JavaScript
- HTML5 Canvas (esempi, altri esempi)
- HTML5 Audio e Video (esempi, video di esempio scaricabile qui)
- HTML5 Drag&drop (esempi)
Esercitazioni
- Primi passi con Ruby
- Ancora Ruby (esempio di soluzione)
- Menu e immagini sensibili con CSS (immagine memory.png)
- HTML e CSS3
- HTML e JavaScript (soluzioni 1-3, soluzione 4)
- HTML5 Canvas e Javascript (soluzione)
- HTML5 Canvas: manipolazione dei pixel (immagine e soluzione)
- HTML5 video: sincronizzazione di contenuti
- HTML5 drag & drop (immagini)
Laboratori
Le soluzioni delle esercitazioni di laboratorio, quando possibile, saranno disponibili come repository Git (flix) 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 - Gestione degli utenti
-
Laboratorio 6 - Post
- Associazioni tra modelli [slide]
-
Laboratorio 7 - Following e followers
- Per iniziare... [slide]
- Flix: sito completo [GitHub, zip]
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"
- Progetti realizzati nel 2013: https://github.com/lam-2013
- Il social network di base distribuito lo scorso anno: 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
Lucidi delle lezioni
- Syllabus
- Lezione 1 - Le forme della socialità
- Lezione 2 - Social Network: modelli e linee di sviluppo
- Lezione 3 - Chi sono gli utenti dei social media (con esercitazione)
- Lezione 4 - Fare ricerca sul proprio pubblico
- Lezione 5 - Architettura dell'informazione
- Lezione 6 - Social design
- Lezione 7 - Alle radici della socialità
- Lezione 8 - Step concept
- Lezione 9 - Marketing sui social media
- Lezione 10 - 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 (modulo A): Martedì 24/02/2015, ore 10:00, aula 5T
- Per il modulo B, contattare la prof. Taddeo via mail
- Consegna del materiale: entro la mezzanotte del 21/02/2015 (modulo A)
- Consegnare il materiale del modulo B utilizzando esclusivamente il portale della didattica, caricandolo nella sezione "Elaborati" del modulo.
- 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 all'orale del modulo A)
- 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.2); 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
- 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
-
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 |
---|---|---|---|---|
05/03/2014 | 10:00-13:00 | L | Introduzione al corso. Le forme della socialità. | Gabriella Taddeo |
06/03/2014 | 14:30-16:00 | L | Gabriella Taddeo | |
06/03/2014 | 16:00-17:30 | EL | Motivazioni. Introduzione a Ruby e installazione dell'ambiente di sviluppo | Luigi De Russis |
07/03/2014 | 11:30-13:00 | L | Il linguaggio Ruby | Laura Farinetti |
07/03/2014 | 13:00-14:30 | EL | Social network: un'analisi tecnica | Luigi De Russis |
12/03/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
13/03/2014 | 14:30-17:00 | L+EL | Il linguaggio Ruby | Laura Farinetti |
14/03/2014 | 11:30-14:30 | L | Gabriella Taddeo | |
19/03/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
20/03/2014 | 14:30-17:00 | L+EL | Il linguaggio Ruby | Laura Farinetti |
21/03/2014 | 11:30-13:00 | L | Il linguaggio HTML | Laura Farinetti |
21/03/2014 | 13:00-14:30 | EL | Git | Luigi De Russis |
26/03/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
27/03/2014 | 14:30-17:00 | L | Architetture client-server. Il pattern MVC. | Laura Farinetti |
28/03/2014 | 11:30-14:30 | L | Gabriella Taddeo | |
02/04/2014 | 10.00-13.00 | L | Gabriella Taddeo | |
03/04/2014 | 14.30-17.30 | L+EL | HTML5. CSS. | Laura Farinetti |
04/04/2013 | 13.00-14.30 | EL | Gemme e convenzioni di Ruby. Introduzione a Rails e primo progetto. | Luigi De Russis |
09/04/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
10/04/2014 | 14:30-17:00 | L | CSS. | Laura Farinetti |
11/04/2014 | 11:30-13:00 | L | Gabriella Taddeo | |
11/04/2014 | 13:00-14:30 | EL | Pagine statiche, helpers e route. | Luigi De Russis |
16/04/2014 | 10:00-13:00 | Sospensione attività didattica per inaugurazione anno accademico | ||
17/04/2014 | 14:30-17:30 | L | Gabriella Taddeo | |
30/04/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
07/05/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
08/05/2014 | 14:30-17:30 | L+EL | CSS3 | Laura Farinetti |
09/05/2014 | 11:30-13:00 | L | Gabriella Taddeo | |
09/05/2014 | 13:00-14:30 | EL | Modellazione utente. Git in RubyMine. | Luigi De Russis |
14/05/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
15/05/2014 | 14:30-17:30 | L | Sass. JavaScript | Laura Farinetti |
16/05/2014 | 10:30-13:00 | L | Gabriella Taddeo | |
16/05/2014 | 13:00-14:30 | EL | Modellazione utente e autenticazione | Luigi De Russis |
21/05/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
22/05/2014 | 14:30-17:30 | L+EL | JavaScript. | Laura Farinetti |
23/05/2014 | 10:30-13:00 | L | Gabriella Taddeo | |
23/05/2014 | 13:00-14:30 | EL | Registrazione degli utenti | Luigi De Russis |
27/05/2014 | 14:30-17:30 | L+EL | HTML5 Canvas. | Laura Farinetti |
28/05/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
29/05/2014 | 14:30-17:30 | EL | Gestione degli utenti. Creazione dei post. Following e follower. Relazioni tra i modelli. | Luigi De Russis |
30/05/2014 | 11:30-14:30 | L+EL | HTML5 Canvas. | Laura Farinetti |
04/06/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
05/06/2014 | 14:30-16:00 | L | HTML5 Audio e video. | Laura Farinetti |
05/06/2014 | 16:00-17.30 | EL | Lavoro di gruppo supervisionato. | Luigi De Russis |
06/06/2014 | 11:30-14:30 | L+EL | HTML5 video. | Laura Farinetti |
11/06/2014 | 10:00-13:00 | L | Gabriella Taddeo | |
12/06/2014 | 14:30-16:00 | L | Laura Farinetti | |
12/06/2014 | 16:00-17:30 | EL | Lavoro di gruppo supervisionato. | Luigi De Russis |
13/06/2014 | 11:30-13:00 | L | Laura Farinetti | |
13/06/2014 | 13:00-14:30 | EL | Lavoro di gruppo supervisionato. | Luigi De Russis |