venerdì 25 gennaio 2008

Connessione al database

Da ricordare per far funzionare la connessione a derby in un programma Java.
In Eclipse, dopo aver fatto le istruzioni per la creazione di un progetto Echo2, devo
  • nel progetto, come fatto per echo2, apro l'albero, selezione Web-Content -> Web-Inf -> Lib e importo (come file system) il contenuto della cartella di lib della cartella di installazione di Derby
    Per me quindi: C:\Apache\db-derby-10.3.2.1-bin\lib
  • faccio partire il server derby (credo di farlo almeno) con questa riga di comando, da dare appunto nel promt dei comandi
    java -jar %DERBY_HOME%\lib\derbyrun.jar server start
  • La connessione al databse in derby deve essere quella da "client-server" quindi:
    CONNECT 'jdbc:derby://localhost:1527/NOMEDATABASE';


Agiornamento ore 11:36
Alla fine funziona... il collegamento al database funziona e tutto è in regola.
La domanda ora è:
Echo2 è quello che fa per noi?
Sarà un progetto che da continuità?
Echo3 introdurrà cose interessanti, tra cui (se non ho capito male) la possibilità, con apposite api, di manipolare anche il javascript lato client, ma avrà la stessa licenza? ci si può fidare?
Spero di sì... perché sembra carino, e penso non sarà troppo difficile creare qualcosa di decente per la mia tesi

giovedì 24 gennaio 2008

Database Derby

Dopo aver definito una mini applicazione, ora devo verificare se riesco ad usare java/echo2 per consultare e lavorare con un database

Per il momento provo ad utilizzare Derby, un database improntato a java (e sviluppato in java, se non ho capito male), della apache foundation: http://db.apache.org/derby/

L'installazione, che avevo già effettuato, è andata a buon termine, e anche i settaggi.
Ho avuto qualche problema (di nuovo) con le variabili di ambiente (dal pannello di controllo sembra che non si settino a dovere, devo fare da prompt con "set")

Ho eseguito il "tutorial" del file, nelle documentation "Getting Started With Derby": http://db.apache.org/derby/docs/10.3/getstart/
Imparando le basi della connessione al database sia via promt dei comandi, sia, soprattutto, da un file java
Sembra abbastanza facile... un po' come la connessione in php a un server mysql
La stessa guida è anche in formato pdf.

Ora sto dando un occhiata alla guida per gli sviluppatori di applicazioni derby, qui in pdf
In particolare può essere utile la mini guida pratica per la gestione delle connessioni, o quella per la gestione dei resultset

Sarà utile sicuramente anche tenere sottomano il Manual Reference, anche in pdf

Tutta la documentazione di Derby la si trova comunque qui: http://db.apache.org/derby/manuals/index.html

mercoledì 23 gennaio 2008

Le prime creazioni

Dopo due giorni di lavoro ho creato la prima mini applicazione...
bhe, non merita nemmeno di essere chiamata una applicazione... diciamo che almeno sono riuscito a costruire qualcosa.

Per verificare se Echo2 corrisponde alle nostre esigenze ho provato a creare una finestra di "inserimento anagrafica". Questa finestra ha dei TextField che devono essere popolati dall'utente...
Due di queste maschere hanno un aiuto... in pratica hanno associato un tasto, ognuna, che apre una nuova finestra per svolgere qualche operazione (come la ricerca nel database) e che chiudendole restituiscano alla finestra principale i dati ricercati.

Ovviamente al momento la ricerca nel database è fittizia... queste due finestre hanno una listbox prepopolata.

All'atto dell'apertura di una delel due nuove finestre, tutto il resto è bloccato. Infatti queste due finestre sono create modali... in pratica sì può solo interagire con questa, non si può fare nulla con le altre.
Tutte le finestre sono Drag&Drop.
Così si può spostare questa seconda finestra per vedere la sottostante, che però è inattiva.
Queste seconde finestre sono rese "non chiudibili" in modo che non abbiano la classica icona di chiusura.
Entrambe le finestre di aiuto hanno una list box, e due tasti... un cancel (per chiudere la finestra modale senza apportare modifiche alla finestra sottostante) e una ok, per trasferire i dati del campo selezionato alla finestra sottostante.

E funzionano!
Come volevo io...

Non sono bloccanti, non nel senso che Francesco pensava... non si può, nel mezzo del codice, creare un istruzione del tipo
int cap = aprimi_finestra();
dove si interromperebbe qui l'esecuzione, si richiama la procedura aprimi_finestra e si aspetta la sua risposta...
questo non si può fare

ma in pratica essendo, essendo al gestione del programma a "stati", non comporta alcun problema, almeno dal mio punto di vista

Ho una finestra e ho uno stato
apro un'altra finestra e ho un altro stato
alla chiusura di quest'ultima aggiorno lo stato della prima

e così via

martedì 22 gennaio 2008

WindowPane

Dove Pane va letto come "pain" quindi, sofferenza
Sì, sofferenza... qualcosa come 6 ore a faticare per far funzionare questo componente di Echo... sono le finestre Drag & Drop.
Dagli errori più stupidi, derivati dalla mia scarsa conoscenza di Java (della serie che cercavo di usare degli oggetti non istanziati), a quelli che derivano dalla mia scarsa conoscenza di Eclipse (chi lo sapeva che bisogna sempre uccidere, o almeno svuotare la path, del processo del server che sta andando? Altrimenti sembra non "compilare" il codice nuovo, ma utilizzare quello vecchio... quindi selezionare il server in basso, nella finestra server, tasto destro sul processo in esecuzione e o lo si elimina oppure si svuota la directory di lavoro del modulo)

Bhe, alla fine ce lho fatta

Ora ho una finestra Drag&Drop, con dentro un po' di etichette (Label) textfield, e un bottone... che premendolo fa cambiare titolo alla finestra stessa, ma soprattutto ne ape un altra.

E non è poco :-D

Ora devo provare a fare diventare la nuova finestra modale, in modo che renda inutilizzabile la finestra "madre", e provare a far dialogare le due finestre...
Vedremo se riuscirò.

venerdì 18 gennaio 2008

Echo2, possibile "soluzione"

Parlando con Francesco Echo2 potrebbe essere il framework a cui ci dedicheremo. Dopo qualche minuto di panico sulla licenza (sul sito non si capiva bene che licenza avesse), abbiamo scoperto che è sotto la Mozilla Public Licenze (MPL) e quindi si possono sviluppare con questo framework anche applicazioni "propietarie".

Ora il discorso principale è capire se Echo2 ha il "difetto" di GWT: non essere bloccante.

E' una cosa che ho fatto un po' fatica a capire anche io, non tanto capire la cosa in se, ma capire i problemi ad esso correlati. In pratica noi avremmo l'esigenza che l'applicazione creata possa essere "bloccata" nel momento in cui si richiede l'interazione con l'utente.

Tipicamente con le applicazioni AJAX, questo non si può fare (non per nulla la A di Ajax sta per asincrono).

Quale è il problema:
Se siamo in una maschera e l'utete clicca un pulsante per un "cerca", noi vorremmo che tutto nell'applicazione si blocchi in attesa della risposta... ma co al logica dell'essere asincrono no è così... il resto dell'applicazione se ne va avanti indipendentemente da cosa fa l'utente con la nuova finestra.
Anche con GWT esiste la possibilità di inserimento di una finestra modale, come quelle di avviso (classico segnale di errore con il tasto ok) e un'altra alert modale (con tasti ok e cancel) e queste bloccano di fatto l'applicazione, ma non si può fare nulla di più di una finestrella con due tasti.

Con Echo si potrà avere una logica bloccante? Nella documentazione letta al volo si parla di finestre modali, e questo "modale" può significare bloccante

Staremo a vedere


Aggiornameno alle ore 11:33
Dal sito di Echo2 (http://echo.nextapp.com/site/) non capisco bene come procedere per capire le basi dello sviluppo con questa applicazione.
Fortunatamente nel wiki trovo un link che pare interessante: www.pathf.com/echo2/Echo2-Part1.pdf
Pare che spieghi come integrare echo e eclipse, cosa installare, come iniziare
Quello che fa per me


Aggiornamento alle ore 15:35
Mannaggia, più di 3 ore su ste cavolo di tutorial, semplicissimo, ma non andava
dopo un po' di incavolatura (prima c'era un altro server sulla porta 8080, trovato come chiuderlo, dava ancora problemi, un errore 505) ho trovato con google (potere google) la soluzione
in pratica nel tutorial c'era un piccolo errore, nel file web.xml la riga
AjaxSample.servlet.AjaxSampleServlet
è errata e va sotituta con
ajaxsample.servlet.AjaxSampleServlet

argh... problemi di case sensitive..
cmq ora va

ma ovviamente non era abbastanza, troppo breve come tutorial
trovo il blog dell'autore... che non hai mai fatto la parte numero 2 di quel tutorial, comunque eccola: http://blogs.pathf.com/agileajax/echo2/index.html
e anche queste due pagine sembrano interessanti: http://ensode.net/echo2_review.html
http://ensode.net/echo2_closer_look.html


Aggiornamento delle 17:02
Ancora un ora persa per cercare di far partire uno dei tutorial "ufficiali", in number guess
non mi andava... continuavano ad esserci errori
metto qui i passaggi così se in futuro devo usare altri source simili so cosa fare
  • in eclipse creo un nuovo progetto, New (dall'icona, non dal menu), Web, Dinamic web project. Scelto tomcat come server
  • in base alla logica dei package che trovo nei file "java" del source che voglio usare, creo in eclipse i relativi package e ci sbatto dentro i file source java... ovviamente rispettando la logica dei package
  • in eclipse, cerco la cartella webcontent->Web-Inf->Lib; clicco con il destro e poi "import". Scelto File System. Cerco in "browse" la cartella di installazione di echo due, poi la sottocartella binary libraries. Nel mio caso "C:\Programmi\NextApp_Echo2\BinaryLibraries". Scelgo quindi questi jar: Echo2_App.jar, Echo2_WebContainer.jar, Echo2_WebRenderer.jar e
    EchopointNG.jar
  • nella cartella "WebContent" creo un file "index.html" così composto

    <!DOCTYPE
    HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;
    charset=UTF-8">
    <meta http-equiv="Refresh" Content="0; URL=app">
    </head>
    <body>Redirecting to application.</body>
    </html>

  • nella cartella Web-Inf dentro WebContent modifico il file "Web.xml" fino a renderlo simile a questo

    <?xml
    version="1.0" encoding="UTF-8"?>

    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID"
    version="2.5">

     
    <display-name>provaecho2</display-name>
      <servlet>
       
    <servlet-name>NumberGuessServlet</servlet-name>
       
    <servlet-class>echo2tutorial.numberguess.NumberGuessServlet</servlet-class>
        </servlet>
        <servlet-mapping>
       
    <servlet-name>NumberGuessServlet</servlet-name>
       
    <url-pattern>/app</url-pattern>
        </servlet-mapping>
      <welcome-file-list>
       
    <welcome-file>index.html</welcome-file>
       
    <welcome-file>index.htm</welcome-file>
       
    <welcome-file>index.jsp</welcome-file>
       
    <welcome-file>default.html</welcome-file>
       
    <welcome-file>default.htm</welcome-file>
       
    <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
    </web-app>

    importanti queste due righe
    NumberGuessServlet
    echo2tutorial.numberguess.NumberGuessServlet
    Che devono avere il nome e la struttura dei package del servlet creati (cioè il file source java che si chiama "nomeapplicazione.Servlet.java")
  • Fatto tutto questo dovrebbe essere pronta per "partire"
    Seleziono con il destro il progetto in eclipse, seleziono "RunAs" e "Ron On Server", seleziono il server tomcat e tutto dovrebbe partire

martedì 15 gennaio 2008

GWT In Action


Nel week end sono riuscito a procurarmi una copia del libro che avevo presentato, GWT In Action.
Userò questo post per segnarmi gli appunti presi da questo libro che potranno servirmi in futuro.
Per prima cosa, bisogna modificare qualche cosettina nel codice scaricato dal sito (http://www.manning.com/hanson/), oltre ovviamente quello indicato nel file install.txt
Leggendo sul forum del libro
Now GWT 1.4 is out and final, there are a couple of changes required for the Dashboard download code; until we get chance to replace the downloadable version, here are the changes that are needed:

1) In ToolBarImageBundle.java replace the "import com.google.gwt.user.client.ImageBundle;" with "import com.google.gwt.user.client.ui.ImageBundle;"

2) In Dashboard.java, remove "import com.google.gwt.i18n.client.DateRecord;"

For me, at least, that seems the only changes needed to make the Dashboard work with the full 1.4 release. Feel free to post other issues you find below and we'll see if we can identify fixes if needed.
  • GWT accetta solo codice scritto in Java 1.4 (al momento). Per i componenti server invece si uò usare la versione che si vuole. PAG 7
  • ci sono 3 metodi di compilazione: obfuscate (che genera codice praticamente illeggibile, ma compresso), "pretty" (che genera codice intermedio), "detailed" (che genera codice leggibile e non compresso). PAG 6
  • JSON è un formato di messaggi per scambiare dati srutturati con il browser. Sul sito http://json.org esistono i formati per molti linguaggi. In questo modo si può integrare un qualsiasi linguaggio sul server e si può dialogare senza problemi, tramite il browser, con GWT. Si usa, per esempio, quando si gestiscono le RPC con il metodo RequestBuilder. Se sul server si usa Java, non ha molto senso usare JSON, perchè si tradurrebbe da Java a JSON e poi da JSON a Java... quindi è meglio usare direttamente GWT-RPC. PAG 15 e JSON a capitolo 12
  • I widget di GWT hanno delle classi css già assegnata... quindi se si vuole si possono usare direttamente quelle nei css legati alla pagina web (ai file gwt tramite l'xml di configurazione). Per sapere quali classi ci sono per ogni widget cercare nei java docs di gwt
  • la gerarchia dei widget:


    E la loro suddivisione in categorie:
  • I nomi dei package in gwt dovrebbero rispettare il classico nome dei package e le classi (come quelle usate nella creazione con applicationCreator) dovrebbero avere il nome del package, obbligatoriamente la parola client, e il none della classe.
    Ad esempio org.gwtbook.client.Dashboard

    Facendo un salto in avanti

  • Serializzazione di oggetti:
    • Si serializzano solo i campi non transient. Anche i campi definiti final non vengono serializzati, ma è meglio sempre dichiararli transient per chiarezza.
    • Se una classe implementa com.google.gwt.user.client.rpc.IsSerializable, anche le sottoclassi, anche se non la implementano specificatamente, sono serializzabili.
    • Ai fini di ottimizzare il codice javascript creato da GWT è sempre meglio specificare i tipi delle variabili. Perchè con oggetti poco tipizzati come ArrayList, Vector, HashSet ecc... il compilatore, non sapendo il tipo della variabile, genera codice javascript molto più grosso. GWT ci permette però di specificare il tipo di queste variabili con annotazioni commentate, in questo modo, per esempio

      /**
      * @gwt.typeArgs <java.lang.String>
      */
      private ArrayList listOfNames;
  • Servizi RPC
    • Anche in questo caso è sempre meglio definire bene i tipi delle variabili, dei parametri eccetera usati dai metodi sei servizi RPC
      /**
      * @gwt.typeArgs arg1 <java.lang.Integer>
      * @gwt.typeArgs arg2 <java.util.Date>
      * @gwt.typeArgs <java.lang.String>
      */
      ArrayList operationThree (List arg1, Vector arg2);
      in questo modo si è specificato il tipo dei due parametri e il tipo del parametro di risposta (il terzo)
    • Se si vogliono sollevare eccezioni, anche l'eccezione deve essere serializzabile
  • Quando si utilizzano gli array JSON, bisogna stare attenti, non essendoci il metodo add, ma dovendo inserire ogni elemento nell'array specificandone l'indice, poichè si potrebbe avere un array con dei "buchi", cioè senza valore per alcuni degli indici interni. Questo potrebbe portare a delle eccezioni nel codice, per esempio se si richiama il metodo toString() sull'array "bucato". Per risolvere questo problema si potrebbe usare questo codice per "riempire potenziali buchi" negli array
    private void fixJsonArray(JSONArray array){
    for (int i = 0; i < array.size(); i++) {
    JSONValue val = array.get(i);
    if (val == null) {
    array.set(i, JSONNull.getInstance());
    }
    }
    }

Echo2

Durante lo studio del libro GWT in action, sono arivato a pagina 22 del libro, dove si parla del confronto di GWT con altri framework... tra cui questo "echo2". Leggendo le parole del libro e questa intervista www.javajournal.it/blog/2007/01/15/intervista_federico_fissore_su_echo2.html in effetti sembrerebbe che questo framework sia proprio sulla strada di quello che vorremmo realizzare qui alla fdl. Ne parlerò con Francesco.

Altra pagina interessante, che mi porta sempre più al pensiero che echo 2 faccia per noi: www.theserverside.com/news/thread.tss?thread_id=40804

Continuo comunque nello studio del libro GWT in action

giovedì 10 gennaio 2008

Dentro GWT

Oggi termino i tutorial iniziati ieri... me li studio meglio
In mattinata riprendo i primi due e finisco il terzo.
Trovo in rete, studiando questi, alcune risorse interessanti:

  • JRE Emulation Galery se non ho capito male si tratta di un elenco di tutte le classi, metodì eccetera, accettati da GWT. Sempre se non ho capito male, in pratica, queste sono le cose che posso senza problemi usare come in Java... e GWT le capisce e interpreta (e traduce) correttamente.

  • GWT Javadocs ( o ancora meglio direttamente nella pagine di google) (verificare se le due pagine contengono info diverse... da preferire quelle di google), un elenco di tutto lo scibile di GWT... ci sono tutte le classi che posso usare in gwt, comprese quelle "proprietarie" di gwt... serve più che altro per capire cosa fa una classe se la si incontra nei tutorial... ha un completo "index", si trova di tutto insomma

  • Roughian Examples: sono un po' di tutorial e spiegaziono sulle classi di gwt... l'intera sezione è fatta, pare, con gwt


In tarda mattinata, giusto prima di pausa pranzo, mi addentro a capire come funziona il lato server di GWT... in pratica usa delle RPC (remote procedure call) per dialogare con il server
sul sito di google code c'è l'introduzione alle rpc... devo ammettere che non è che ci capisco molto

trovo alcune pagine che ne parlano, le elenco qui, in futuro le riprenderò
http://www.oracle.com/technology/pub/articles/dubois-gwt.html


nel frattempo trovo un altro tutorial carino di GWT, me lo studio e lo esamino, carino. Tra le altre cose introduce il concetto di focus panel, che prima non avevo nemmeno capito esistesse... e usa delel tecniche particolari per le animazioni
Agile Ajax: another GWT Tutorial

alla fine mi sa che devo studiarmelo seriamente GWT... avendo basi super traballanti per Java (ma anche, se non soprattutto, per concetti come quello del RPC) devo prendermi un libro
ne esiste uno su GWT... proverò a cercarlo come pdf per poi eventualmente comprarlo

Google Web ToolKit - GWT

Ed ecco che oggi inizio a guardarmi GWT (http://code.google.com/webtoolkit/).
In pratica son una serie di librerie di Java che permettono di programmare in Java per poi produrre del codice Javascript al fine di creare applicazioni in AJAX.
Sostanzialmente ci si scorpora dall'obbligo di conoscere a menadito Javascript, ma soprattutto, di evitare di addentrarsi nei problemi di compatibilità dei broweser... fa tutto l'interprete di GWT.

Leggendo la documentazione sul sito di google code, scopro che l'IDE da preferirsi per lo sviluppo di applicazioni con GWT è l'open source Eclipse. Infatti uno degli eseguibili di GWT può, volendo, creare dei file per usare al meglio questo IDE.

Installare GWT è semplice... poche istruzioni da seguire.
Per iniziare i progetti con eclipse basta dare dei parametri in più all'eseguibile "crea progetto" di gwt.
Creo la mia cartella di progetto, che chiamamo "GWT_Esempio", dal promt dei comandi (CMD) entro in questa cartella
eseguo poi il creatore di progetto passandogli come parametri il fatto che voglio creare un progetto eclipse che si chiama GWT_Esempio (come la cartella che ho creato) con questa riga di codice:
c:\Programmi\gwt-windows-1.4.61\projectCreator -eclipse GWT_Esempio
per poi fare uan cosa simile con il creatore di applicazioni
c:\Programmi\gwt-windows-1.4.61\applicationCreator -eclipse GWT_Esempio GWT_Moonwalk.client.GWT_Esempio
Così facendo creo i file principali che serviranno per compilare con GWT ed eseguire l'applicazione in maniera HOSTED MODE
Ma ancora meglio così si crea la situazione ideale per programmare in eclipse... posso semplicemente accedere in eclipse, cliccare file, import, import existing project, seleziono la cartella ed ecco il progetto importato... con tutto pronto per eseguire il tutto direttamente in eclipse, con la possibilità di fare il debugging


Prima disperazione:
Sembrano non esistere tutorial ufficiali di gwt... il sito di google code ha un sacco di materiale su gwt, ma pare più che altro adatto a chi conosce bene Java... e non chi l'ha iniziata a studiare meno di un mese fa
Cerco in rete dei tutorial... ne trovo alcuni per il classico "Hello World" che non mi insegnano molto, dato che sono quasi identici a Java puro... ma almeno prendo un minimo di pratica con Eclipse

Trovo un tutorial Working with GWT, decente, inizio a capire qualcosa... ma non è spiegato molto bene e vado subito in confusione

Ne trovo un altro, sul sito della ibm: Build an Ajax application using Google Web Toolkit, Apache Derby, and Eclipse sembra promettere bene
Mi installo quindi Derby, che se non erro è un database sviluppato e pensato per Java
Perdo tutta la mattinata e il primo pomeriggio ad installarlo... ho un conflitto con due versioni di java presenti sul portatile che ho in dotazione, un maledetteo
java.lang.UnsupportedClassVersionError
In pratica, navigando in rete, scopro che è un conflitto tra due versioni di java che ho sul pc... ho meglio... io ne uso normalmente una (qualcosa come 1.6.x), questo derby richiede una 1.4.x ma sul pc, da qualche parte, ho una 1.3.x che continua a prendere il sopravvento

impazzisco... cerco le variabili di sistema, sembra tutto ok... mamma mia aiuto cosa è
disinstallo java, reinstallo... ma nulla
dopo un po' scopro che sul pc è stato installato (prima che io lo toccassi) Oracle... e oracle ha un jdk 1.3.x
impazzendo un po' trovo la variabile di sistema installata da oracle. Ed ecco lì la stronza... c'era un "Path" settato da lui... e quindi il mio pc cercava prima lì dentro il java.exe
metto prima di questa variabile un altra path specificando la nuova directory di isntallazione
riavvio e....

funziona
derby installato... ma... alla fine mi accorgo che il tutorial non fa per me
(l'intero tutorial, che riprenderò in seguito, si trova: parte 1 | parte 2 | parte 3 )


Nel pomeriggio trovo un tutorial con qualche esempio un minimo complesso... e qui inizio a capire come funziona davvero GWT: KickStartin GWT on clint side
Ci sono 3 demo, con un minimo di complessità
riesco a vedere le prime due...a modificarle un po', a capire come funzionano i Panel e I widgets (tutto funziona in pannelli a quanto pare, simili a quelli di Swing, ma ovviamente con nomi e proprietà diversi)



mercoledì 9 gennaio 2008

Swing e AWT

Con oggi ho terminato di "studiare" la parte principale del secondo libro di java che mi sono posto di studiare. Ho sostanzialmente terminato tutta la parte riguardante le librerie grafiche AWT e Swing. Ho fatto un po' di esperimenti con il codice del libro, e in sostanza riesco a creare qualcosa che assomiglia ad un abbozzo di applicazione... tuttosommato non è difficile. E l'IDE che uso per programmare (NetBeans, si trova sul sito della sun) rende le cose ancora più facili. Da domani inizio a studiarmi GWT, il tollkit di google per programmare in Java e produrre "codice Ajax"

lunedì 7 gennaio 2008

Lavoro del mese di Dicembre

Ecco che inizia la seconda settimana di lavoro. Bhe, sono stat fortunato... la prima è durata due giorni, causa feste.

Comunque già tutto rivoluzionato: per permettermi di avere un minimo di dialogo con il mio correlatore (condividiamo l'ufficio qui in FDL) mi spostano il mio "giorno di riposo" dal Venerdì al Lunedì... così dalla settimana prossima lavorerò da Martedì a Venerdì

Vediamo un po' la preparazione che mi sono fatto nel mese di Dicembre, in qualche modo dovevo pur prepararmi a questo lavoro e allo sviluppo della tesi.

Per prima cosa mi sono scaricato qualche manuale Javascript, leggendo qualcosina, spulciando qui e la, compresi qualche tutorial online, ho imparato qualcosina di questo linguaggio.
Giusto una spolverata... in teoria nella mia tesi Javascript non lo userò proprio... sebbene le parti web saranno Ajax (quindi in javascript), è probabile non lo useremo a basso livello, ma sfrutteremo quello generato da GWT o poco più

Mi sono letto anche qualche pdf per Ajax, cercando di entrare nella logica di questa "piattaforma", facendo qualche piccolo tutorials online.

Dopo un incontro con Franscesco Pasqualini, il mio correlatore, mi sono deciso a dedicarmi a Java, così mi sono comprato su IBS due libri su questo linguaggio di programmazione... erano in offerta

Java 6
Giusto un bigino di Java, un riassunto del riassunto, ma almeno ho capito le basi di questo linguaggio. Poi è piccolo, è comodo da tenersi vicino nel caso degli atroci dubbi che sempre vengono


Java sviluppare applicazioni grafiche
Libro un po' più corposo, sviluppato in maniera molto "didattica". Incentrato sull'aspetto di sviluppo di applicazioni grafiche. Sono appena riuscito ad iniziarlo, a dicembre

Mi sono presentato così alla fdl... in pratica non so nulla di quello che devo fare per il mio progetto... imparerò... dopotutto è uno stage, sono qui per imparare, no?

giovedì 3 gennaio 2008

Titolo della Tesi

Questa è la mia domanda di tesi, in teoria accettata (il giorno che sono andato alla riunione della commissione per l'accettazione della tesi... la riunione non c'è stata... ci hanno riferito "se non vi telefoniamo significa che la vostra tesi è stata accettata)... manderò comunque una mail per sapere se è tutto ok

SPAZIO DOMANDA TESI

mercoledì 2 gennaio 2008

Primo Giorno di lavoro

Oggi è il mio primo giorno di lavoro qui alla fdl servizi.
Dopo mesi di attesa per le carte burocratiche (che devono ancora finire) ho potuto finalmente iniziare il mio stage presso questa società informatica della mia zona.

Obbiettivo: sviluppare la mia tesi presso questa azienda, progettandola di laurearmi nella sessione di Luglio 2008 (15-18 Luglio 2008)... ce la farò?

Lavoro dal Lunedì al Giovedì, 8 ore al giorno