Articoli con tag AJAX
JoM – sistema di gestione lavori in licenza AGPLv3
Scritto da bubbakk in Programmazione, Software libero il 10 aprile 2013
Ho iniziato a sviluppare un’applicazione web recuperando un vecchio progetto: vecchia idea, nuovo concept!
Cos’è JoM?
JoM è un sistema di gestione lavori, di ticketing, di pianificazione, volendo anche un bug tracker…. in poche parole è una web application per gestire e tenere sotto controllo impegni e lavori, in modo autonomo e collaborativo.
Il progetto originale, sviluppato alcuni anni fa, serviva come sistema di ticketing interno all’ufficio in cui lavoravo per gestire le segnalazioni di assistenza tecnica. Era molto utile per dividere il lavoro con i colleghi, condividere le soluzioni, e per tenere sotto controllo le segnalazioni di guasti tecnici (e/o errate segnalazioni). I dati raccolti venivano poi elaborati per ottenere una statistica delle segnalazioni più frequenti, così da intervenire in modo puntuale su formazione, assistenza e prevenzione.
L’idea era buona e l’utilizzo del software semplice. Inoltre si prestava bene a diversi utilizzi. Ho pensato così ad una versione più al passo con i tempi, più… web 2.0!
Perché JoM?
Il motivo principale per cui ho deciso di (re)iniziare con JoM è quello di imparare ad utilizzare nuovi e moderni strumenti, GitHub e Bootstrap in primis. Inoltre PHP continua ad evolversi e sforna nuove funzionalità e librerie a ritmi costanti: non voglio non perdere il passo.
Ho trovato interessante, perciò, mettermi alla prova con un progetto di cui già conoscevo gli obiettivi. Inoltre, l’idea di sviluppare un software in licenza GPL mi ha sempre stuzzicato
Scheda del programma
Licenza: AGPL3
Repository: GitHub
Sviluppatori: io, per ora ![]()
Tipologia: web application
Versione attuale: 0.3
Tecnologie utilizzate:
Standard: HTML5, CSS3
Linguaggi: PHP5, Javascript, SQL
Database: MySQL, SQLite
Componenti maggiori: jQuery, Bootstrap, Normalize, pidCrypt, FontAwesome
Software di sviluppo: Geany, Chromium Inspector, NaturalDocs
Se sei curioso puoi rimanere aggiornato in modo facile. Puoi inviarmi una richiesta all’indirizzo di posta elettronica bubbakk [AT] gmail [DOT] com : ti terrò aggiornato sullo stato dello sviluppo. In alternativa, tramite twitter, pubblicherò a mio nome brevi aggiornamenti con hastag #bubbakk_jom.
Se desideri effettuare test di funzionamento, può inviarmi una richiesta all’indirizzo di posta elettronica bubbakk [AT] gmail [DOT] com. Quando il sistema giungerà alla maturità necessaria per effettuare i primi test (previsto tra non più di due mesi), ti inoltrerò i dati su come raggiungere il server di prova.
Se vuoi collaborare, è possibile farlo con gli strumenti messi a disposizione da GitHub e con del buon codice… contattami.
Stato dello sviluppo attuale
Dopo un mese e mezzo di sviluppo, questo è lo stato attuale dell’applicazione:
- ver. 0.0 – struttura base di funzionamento e organizzazione del codice: completata.
In questa fase ho importato il codice esistente, organizzato le directory e impostato la struttura di base per i vari componenti. Effettuato un test sull’utilizzo di Bootstrap per creare rapidamente l’interfaccia grafica; - ver 0.1 – procedura di installazione e generazione tabelle e dati di base: completata.
Per avere uno scheletro di base su cui lavorare e dei test coerenti, ho deciso di iniziare lo sviluppo del progetto da dove molti atri concludono, creando cioè la procedura di installazione. Non è perfetta, ma è funzionale alla fase successiva. Inoltre mi permette di testare due sistemi di memorizzazione dati, cioè MySQL e SQLite; - ver 0.2 – autenticazione utenti, dati di sessione e login: completata.
Per ora questa è stata la fase più laboriosa. Le sessioni vengono gestite e salvate in modo criptato su database. Partendo da del buon codice ho adattato la classe modificando opportunamente i metodi ottenendo un sistema flessibile, facilmente debuggabile e anche sicuro. A questo ho aggiunto un valido sistema (ancora migliorabile, secondo me) per la generazione di nonces. - ver 0.3 – creazione della GUI dell’applicazione e della maschera, funzionante di creazione lavori: in corso.
Qui l’approccio è più grafico che tecnico: si tratta di creare l’interfaccia grafica dell’applicazione e la maschera, finestra o maschera, di inserimento dati del lavoro. Direi che sono a buon punto per completare e passare alla fase successiva; - ver 0.4 – visualizzazione dell’elenco dei lavori creati/assegnati: la prossima.
Questa release prevede la richiesta dei dati al server e la creazione dell’elenco dei task creati, con possibilità base di interazione: visualizzazione dettagli, assegnazione a colleghi, richiamo della schermata di modifica, eliminazione; - ver 0.5 – …..
…non posso svelare tutto subito!
Inizierò a rendere pubblica l’applicazione a partire dalla conclusione della release 0.5 che, da quello che si può intuire, non è così lontana.
Rimanere in contatto
Per rimanere aggiornati:
- via Twitter
- via email (indirizzo di posta elettronica nel post)
- repository GitHub
A presto per ulteriori aggiornamenti.
Applicazione simile a Google Calendar implementata con jQuery
Scritto da bubbakk in in un minuto, Software libero il 10 giugno 2010
Volevo condividere questa mia casuale scoperta con voi.
Un team di professionisti cinesi (molto giovani, devo dire) con sede a Shanghai ha implementato, oltre ad una piccola ma ben fatta serie di oggetti, un intero applicativo del tutto simile al famoso Google Calendar.
Potete provare la demo a questo indirizzo. E’ davvero sbalorditiva: l’interfaccia è rapida, l’interazione con i dati avviene tramite chiamare XML asincrone (AJAX) e … tenetevi forte: tutti questi plugin jQuery sono licenziati LGPL !
Tutti i plugin messi a disposizione, cioè un Context Menu, un Date Picker, un Checkbox Tree (con tanto di opzione per il lazy load), uno Scroll Tab e infine questo mitico Calendar, hanno un look & feel che richiama (ma forse dovrei dire ricopia
) il tema di default del famoso framework JavaScript Ext JS: personalmente non mi fa impazzire, ma credo tra cambiare un tema e progettare da zero oggetti complessi come quelli messi a disposizione da questi ragazzi della Web-Deliciuos preferisca di gran lunga la prima opzione.
Che aggiungere: bravi ragazzi e viva la licenza [L]GPL che ci permette di risparmiare tempo e condividere codice liberamente.





