OpenERP: Modulo software Developer

L’idea alla base di questo modulo nasce dall’esigenza di gestire il lavoro di sviluppatori software dovendo anche aver modo di integrare le varie operazioni con la fatturazione finale per i clienti.
Essendo sviluppatori di moduli OpenERP non potevamo non utilizzare questo sistema per agevolare il nostro lavoro. Nasce così il modulo Software Developer che permette di gestire con semplicità il lavoro degli sviluppatori di soluzioni software. Esso permette non solo di gestire le richieste degli utenti ma anche di di collegare un progetto ad un ordine di vendita e di sincronizzare il lavoro con i VCS più diffusi (attualmente è supportata solo l’importazione dei commits da branch Bazaar)

Installazione e Configurazione

Una volta scaricato il modulo da launchpad nella cartella degli addons, esso può essere installato come un qualsiasi altro modulo mediante il menu in amministrazione.

Al termine dell’installazione del modulo, verrà creata una nuova voce nel menu principale “Software Developer”. In essa saranno presententi due voci: “Progetti” e “Configurazioni”.

Menu principale
Menu dei progetti
Menu configurazione

Recandoci in Configurazioni sarà possibile creare e modificare una lista di valori per i VCS utilizzati (bzr, git, svn) mediante la voce Versione Control System ed una lista che contenga i tipi di richieste che è possibile ottenere da un cliente (nuove features, correzione bug, personalizzazione stampe) mediante la voce “Tipologia di richieste”.

Nella gestione dei permessi, l’amministratore avrà la possibilità di utilizzare il gruppo Software Developer/Software Developer per dare la possibilità ad un utente di accedere alle funzioni proposte dal modulo.

Uso Progetti

Recandoci nel menu Progetti -> Progetti sarà possibile creare un nuovo progetto. Ogni progetto si compone di:

Nome: è un nome arbitrario da attribuire per riconoscere il progetto
Cliente: partner per il quale si sviluppa il progetto
Collega ad ordine di vendita: è possibile collegare un progetto ad un ordine di vendita (servirà per le features future)
Richieste: La lista delle richieste giunte dal partner
VCS Info: è possibile settare il tipo di VCS utilizzato (precedentemente configurato), l’url su cui risiede il repository del progetto e la lista dei commits
Note: eventuali note

Nella visualizzazione della tree dei progetti è possibile, inoltre, controllare la percentuale di avanzamento di ogni progetto.

Esempio lista progetti
Esempio Commits con VCS

Uso Richieste

Le richieste sono i vari lavori che un partner richiede per un dato progetto. Esse possono essere visualizzate o all’interno del progetto a cui fanno riferimento o dalla lista presente nel menu Progetti -> Richieste.
Per ogni richiesta è possibile configurare:

Descrizione: indica cosa è stato richiesto dal partner
Data richiesta: la data in cui è stata effettuata la richiesta
Tipo di richiesta: il tipo di richiesta (precedentemente configurata)
Urgenza: 3 livelli di urgenza
Ore lavorate sullo sviluppo: Alla chiusura della richiesta è possibile impostare quante ore si è lavorato al suo sviluppo.
Conclusa: indica una richiesta conclusa
Data Conclusione: indica la data in cui la richiesta è stata chiusa
Chiudi Richiesta / Riapri Richiesta: permette di impostare lo stato di una richiesta indicando se essa è stata conclusa o si necessita una sua riapertura.
Note: eventuali note

Lista richieste nel progetto
Creazione nuova richiesta

 
Accesso remoto – Partner

Dopo l’installazione del modulo, all’interno dei partner è possibile trovare una nuova scheda: Dati accesso remoto. All’interno sarà possibile settare una lista di valori che indica i diversi accessi remoti messi a disposizione dal partner per i proprio progetti. In essi rientrano accessi ssh, ftp, interfacce web, email, ecc.

Valori impostabili

Altre funzionalità

Una funzionalità importante del modulo è quella che offre la possibilità di allineare un repository su cui si sta lavorando con i commit presenti nel progetto. Spostandosi sul progetto, infatti, è possibile trovare nella colonna di destra la voce “Allinea Commits”. Cliccando su di essa si aprirà un wizard che permetterà di scegliere il tipo di repository ed importare (totalmente o integrando quelli già esistenti con quelli mancanti) in maniera automatica i commits residenti su quel repo in modo da mantenere anche in OpenERP lo storico delle modifiche apportate al codice

Richiamo Allinea Commits

Scribes, l’editor di testo "forse" perfetto

Parlare di editor di testo in un ambiento infinito come quello di GNU/Linux, fa venire immediatamente alla mente nomi blasonati del calibro di Gedit, Kate o Geany per non parlare degli immortali Vi, Vim, Nano, Pico o Emacs. Lo strapotere di questi prodotti ormai consolidati da anni di test e di sviluppo, mette in ombra qualsiasi altro progetto nasca con l’intenzione di spodestare questi re dalla loro poltrona.

È difficile, infatti, trovare un prodotto che possa competere con essi e che sia così interessante da farci mettere da parte le nostre abitudini con questi software per poter testare qualcosa di nuovo.

La situazione forse potrebbe cambiare ed ad apportare questo cambiamento potrebbe essere un semplicissimo software dal cofano carico dei migliore dei motori. Stiamo parlando di Scribes ed il nome ai più risulterà sicuramente sconosciuto.

Scribes è un editor di testo che ricalca sommariamente l’idea di prodotti simili come ad esempio vim. Esso propone un ambiente di scrittura molto semplice che evita all’utente distrazione di ogni tipo. Un’aria di digitazione completamente vuota che però può essere estesa ad una vista ad icone più completa cliccando con il mouse nella cosiddetta area di trigger (o Trigger Area) è tutto ciò che si presenta agli occhi dell’utente che lancia il programma. Nonostante la sua area minimalista, il software supporta nativamente tantissime features. È ricco di scorciatoie da tastiera e ciò potrebbe strizzare un occhio a chi sviluppa software ed è abituato ad allontanare difficilmente le mani dalla tastiera. Supporta i temi grafici per i colori permettendo così di trovare la giusta combinazione cromatica per non gravare sulla salute della propria vista. Inoltre è stato sviluppato il supporto ai moduli che possono essere creati grazie al linguaggio python e che ne estendono le potenzialità in maniera pressoché infinita. Importantissimo è inoltre il supporto nativo a protocolli di comunicazione come ftp, sftp, ssh, samba, webdav, webdavs che permette di editare del testo direttamente attraverso la rete.
Interessanti sono inoltre le funzionalità dedite a chi si occupa di programmazione. La creazione e l’uso degli snippets, l’auto-completamento delle parole e la colorazione della sintassi sulla base di oltre 20 linguaggi diversi, fa si che chi sviluppa possa trovarsi a proprio agio lavorando con questo software.

Il progetto risulta veramente interessante e sicuramente esso troverà un’ampia comunità che saprà accoglierlo ed accompagnarlo in una crescita che si spera sia sempre positiva.  

Fonte [1]

Celyon. Nuovo linguaggio di programmazione

Forte del suo periodo d’oro, java è ancora uno dei linguaggi più diffusi per via della sua portabilità e per la larga presenza di vecchi software aziendali scritti con questo linguaggio e difficili da cambiare poichè ormai parte integrante dei sistemi di produzione. Tuttavia, chi ha avuto modo di provare questo linguaggio sa che non è certo una piuma in termini di risorse e la sua alta portabilità di paga a caro prezzo in termini di prestazioni. Proprio questo limite di tale linguaggio ha portato alla nascita di diversi progetti paralleli che contano sulla semplicità della struttura della sintassi di java ma che sono più performanti in fase di uso/produzione. Ultimo, ma non ultimo, in ordine di tempo è il codice partorito dagli uffici di Red Hat.

Con il nome di Celyon, il nuovo prodotto dell’azienda dal cappello rosso conta di essere una valida alternativa al più blasonato java ma non mira a rimpiazzarlo al 100%. Celyon per funzionare, infatti, necessita di una macchina virtuale JVM. Celyon si presenta come un linguaggio ad alto livello, orientato agli oggetti ed imperativo. La sintassi è molto vicina al c# ed influenzata dallo stesso java. 

Questo è l’esempio del tipico hello world:
# —– Celyon —–
void hello() {
    print("Hello, World!");
}
# ——————–

Il progetto è completamente open source ed i suoi sorgenti possono essere visualizzati e scaricati dal repo ufficiale su github. Questo nuovo progetto può sicuramente contare sul nome di una grande azienda ma basterà ciò per scardinare la diffusione di java?

Fonte : [1] – [2]