mercoledì 30 luglio 2014

Interessante opportunità tirocinio

Una nota azienda di Palermo che opera da decenni nel settore della pubblicità sta cercando tirocinanti che dovranno occuparsi di mobile marketing per un progetto aziendale di “Pubblicità in Tasca”.

Il progetto è teso ad offrire ai propri utenti dei servizi in mobilità evoluti.

In particolare, mediante smartphone, l’utente avrà la possibilità di navigare all’interno di un portale web ove sarà possibile usufruire di servizi di mobile-promotion, proximity marketing ed advertising di varia tipologia.
Nella fattispecie si richiede competenza in:

  • HTML 5
  • Sviluppo di applicazioni mobili
  • Servizi mobile location – based
  • Tecniche di Profilazione utenti
Se interessati inviatemi una mail che vi metto in contatto con la persona di riferimento in azienda.

Getting started with Bookshelf.js

Interesting reading

http://www.sitepoint.com/getting-started-bookshelf-js/

venerdì 25 luglio 2014

Aggiornamento tesine

Chi non ha ancora avuta assegnata la tesina può adesso scegliere soltanto fra i primi due temi.
La tesina su file storing e sharing ha infatti già raggiunto il limite massimo di assegnazioni e non può più essere scelta.

sabato 7 giugno 2014

[AGGIORNAMENTO] Tesine

Come anticipato al lezione, per aver assegnata una tesina, che può essere individuale o di gruppo, dovete inviarmi un documento di specifiche di poche pagine che riporta cosa volete fare, come volete farlo e quali tecnologie utilizzerete (fra quelle viste a lezione) e aspettare che io vi dia l'OK prima di considerare le specifiche accettate. Per scrivere le specifiche utilizzate come riferimento lo schema che vi ho mostrato in aula.
Le specifiche che mi invierete devono essere congrue col numero di "sviluppatori" del team. Per tesine individuali è quindi sufficiente implementare le funzionalità di base, per tesine da fare in coppia (o al massimo in tre) dovrete inserire necessariamente delle funzionalità aggiuntive.
E' anche possibile proporre  altri argomenti. Se avete in mente una nuova applicazione o volete sviluppare una web-application a supporto di tesine di altri insegnamenti contattatemi che ne parliamo.
Di seguito tre possibili temi da sviluppare.

Sistema di raccolta scommesse: web application che permette a utenti registrati di effettuare scommesse on-line. Gli eventi su cui poter scommettere sono memorizzati a gruppi sul server come files xml, di cui dovrete definire uno schema o dtd, e vengono inviati al client in base alle richieste dell'utente (ad esempio l'utente potrebbe chiedere le quote relative alle partite della prossima giornata della Serie A o della Premier League o del prossimo turno di Champions League, etc...). Potreste utilizzare anche XSL per formattare sul client i dati che ricevete dal server come XML.
L'utente deve potersi registrare al sistema, ricaricare il suo credito, effettuare le scommesse sugli eventi selezionati (se ha credito sufficiente), visualizzare le scommesse finora inviate al sistema. Tutte le scommesse di ogni utente saranno quindi memorizzate sul database.
Potete sviluppare un sistema base che tratta solo scommesse di partite di calcio e che presenta un'interfaccia utente basilare o un sistema molto più complesso con interfaccia utente evoluta e che permetta di gestire diverse tipologie di eventi sportivi (Formula 1, corse di cavalli, etc...) e relative modalità di scommessa.

Piattaforma gioco multiutente: web application che permette qulcosa di simile al gioco on-line disponibile nella maggior parte dei videogochi per console. In pratica dovrete scrivere una pagina web in cui è rappresentato un mondo virtuale (che potrebbe essere semplicemente un rettangolo con all'interno delle figure geometriche) e che si aggiorna continuamente in base all'input dell'utente e a ciò che fanno gli altri giocatori.
La pagina web tramite AJAX dovrebbe ricevere dal server la posizione e le caratteristiche di tutti gli attori presenti nel mondo e a sua volta deve comunicare al server cosa sta facendo l'utente locale in modo che il server possa tenere aggiornato il suo modello del mondo e comunicarlo agli altri utenti.
Per il rendering della pagina dovrete far uso di CSS e Javascript/jQuery.
Non è necessario che gli utenti siano registrati, al caricamento della pagina potrebbe essere mostrato l'elenco dei giocatori già in gioco e un pulsante che ci permette di unirci al gioco (dopo aver scelto un nickname).
La complessità di questo progetto può variare enormemente in base alla complessità del mondo che volete modellizzare (nella versione base i giocatori potrebbero essere dei cerchietti colorati che si spostano sullo schermo guidati dagli utenti, in versioni più complesse potrebbero sparare, interagire, compiere varie azioni, essere renderizzati in maniera più complessa, etc...).

Piattaforma di file storing e sharing: web application che permette agli utenti registrati di memorizzare file di testo su un server, visualizzarli, rimuoverli, rinominarli e condividerli con altri utenti. Per fare l'upload di un file sul server potete utilizzare Apache common file uploads (basta cercare su google "file upload JSP" per trovare tutorial ed esempi da cui prendere indicazioni e le poche righe di codice necessarie).
La versione base dovrebbe permettere agli utenti di registrarsi, di caricare, visualizzare, rinominare e cancellare i propri files di visualizzare i files che gli altri utenti hanno deciso di condividere. Quando un'utente carica un file può decidere se e con quali utenti condividerlo. Conviene utilizzare un database per memorizzare non solo l'anagrafica e le password degli utenti ma anche per l'elenco dei files caricati e i privilegi di condivisione dei vari files.
Versioni più evolute del sistema potrebbero prevedere l'organizzazione dei files in cartelle con le relative funzioni (crea cartella, sposta file in cartella, elimina cartella) o potrebbe prevedere un livello più dettagliato di condivisione (ad esempio permettere ad altri utenti di cancellare il file) la gestione di altri tipi di files o quanto altro ritenete utile. L'interfaccia utente potete realizzarla in maniera essenziale o più elaborata (ad esempio come quella di dropbox).

mercoledì 4 giugno 2014

JSP handout, DB access note and new exercise set

Available for download the slides and sample code shown in class about JSP, notes (in italian) for a quick introduction do database access in java and sample JSP code on how to access a SQL database.
A final exercise set on servlet, JSP and DB access is also available.

giovedì 29 maggio 2014

Servlet handout and sample code

Available for download slides and sample code on servlet. A new exercise set will be published as soon as we cover JSP and database access.