mercoledì 24 settembre 2014

Opportunità di lavoro

Ludwig srls , è una start up innovativa vincitrice del grant e attualmente in accelerazione a Catania nel programma WCAP 2014 di Telecom Italia.

Ludwig è uno strumento intelligente, innovativo e intuitivo, pensato per aiutare a scrivere in lingua inglese. Tramite il nostro software vogliamo offrire a tutti (nativi e non nativi) la possibilità di esprimersi in inglese autonomamente, correttamente e facilmente, abbattendo i tempi e i costi della scrittura.

Ludwig è in grado di identificare numerosissimi tipi di errori grammaticali e, a differenza di altri strumenti di correzione, sa suggerire esempi di espressioni più corrette ed adeguate al concetto da esprimere. Ludwig confronta (tramite complessi algoritmi) le frasi scritte dai suoi utenti con un corpus di testi attentamente selezionati scritti in inglese corretto, suggerendo formulazioni, contestualizzando le frasi all’interno di esempi e aiutando l’utente a scegliere la frase più adatta.

Ludwig, che è composto da un affiatato gruppo di entusiasti ricercatori, sta attualmente cercando un nuovo membro da inserire nel team.
I requisiti richiesti sono:

  1. Conoscenza e capacità di utilizzo dei principali  software di programmazione (Java, PHP, CSS, HTML, Ruby, Perl, Pascal, Python) 
  2. Information Retrieval (Lucene, Elasticsearch o Solr) 
  3. Natural Language Processing (Apache OpenNLP library o GATE)
  4. Ambiente di sviluppo integrato (NetBeans o Eclipse)
  5. Programmazione ad oggetti

Al candidato selezionato verrà proposto un contratto di lavoro di 12 mesi, con la prospettiva di una relazione di lavoro più duratura. Se alla scadenza del progetto verranno raggiunti gli obiettivi previsti e se il team di Ludwig giudicherà positivamente la collaborazione saremo felici di offrire una quota di partecipazione nella società.

Per ulteriori informazioni potete visitare il sito http://www.ludwig.guru/.

Gli interessati possono presentare la loro candidatura inviando il curriculum e una breve lettera di presentazione direttamente all'indirizzo email (ludwigtool@gmail.com). La call resterà aperta fino a quando non sarà individuato il candidato ideale.

venerdì 19 settembre 2014

Nuovo aggiornamento sulle tesine

Si comunica che anche la tesina relativa al sistema di raccolta scommesse non può più essere assegnata. Per chi ancora non ha avuta assegnata la tesina resta disponibile soltanto la piattaforma gioco multiutente.

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.

venerdì 23 maggio 2014

JQuery handout, sample code and exercise set

Available for download the slides shown in class some sample code and a new set of exercises. You can find more sample code and documentation at the links reported in the last slide.

giovedì 15 maggio 2014

martedì 13 maggio 2014

HTML DOM handouts

Available for download slides and sample code on HTML DOM. A new exercise set will be published as soon as we cover also the XML DOM.

venerdì 9 maggio 2014

martedì 29 aprile 2014

JavaScript fundamentals handout and sample code

Available for download the slides shown in class and some sample code. Import the code in an Eclipse static web project and explore the basic features of JavaScript.

giovedì 24 aprile 2014

XPath & XSLT handouts, sample code and new exercise

Available for download slides and sample code on XPath and XSLT shown in class. Also available a possible solution of Ex02 on XML validation and a new exercise on XSLT.

venerdì 18 aprile 2014

No class on tuesday Apr 22nd

There will be no class the day after Easter monday. We will meet again next thursday at the usual time in the usual classroom.

venerdì 11 aprile 2014

XML handout, sample code and exercise set

Available for download the handout on XML validation shown in class and sample code you can experiment with. Once you get familiar with XML, DTD and XSD write your own code to solve the problems in the exercise.

martedì 8 aprile 2014

XML and XHTML handouts

Available for download XML and XHTML handouts. Sample code will be available as soon as we cover more XML features.

giovedì 27 marzo 2014

giovedì 20 marzo 2014

Basic HTML handout

Available for download the slides Prof. Gambino presented this morning.

No problem set is assigned this week as we did not cover significant material yet. In the mean time you can install Eclipse and try to create a "Static web project" containing a few simple html files.

mercoledì 12 marzo 2014

2013-14 course started yesterday

The course for year 2013-2014 started yesterday. A syllabus containing useful info and the slides seen in class are now available for download.
Next lecture Thursday, March 13th from 11:00 @ A210.