E’ da un po’ di tempo che cercavo di “sistemare” un’accozzaglia di plugin per creare un bel strumento di sviluppo basato sull’ultima release di Eclipse quando mi imbattei in Jazz
l’ultima diavoleria per sviluppatori concepita dai mostri (in senso buono) di IBM-Rational.
Non ne avevo mai scritto (ed in realtà non avevo nemmeno usato molto questo prodotto) perchè le licenza era un po’ “strana”. Prevedeva infatti una prima fase “open” ed una seconda commerciale, in puro spirito open commercial. Questo ci sta, ma la prima fase era aperta solo ai clienti rational ed IBM e quindi non ero tra i “papabili”. I filmati demo (aperti a tutti) erano però veramente impressionanti!
La svolta un po’ di giorni fa. Come segnalatomi da Simone e come riportato qui ora jazz è aperto a tutti.
Ma andiamo con ordine: cos’è Jazz? E’ molto semplicemente una piattaforma per lo sviluppo in ambienti Java-J2EE. La novità è che è orientata al Team e non al singolo sviluppatore. Si compone quindi di una parte Client e di una parte Server. Il client è un Eclipse con parecchi plugin già configurati e tutto il necessario per connettersi al server. Il server contiene tutto ciò che uno sviluppatore si può aspettare pe la gestione di un progetto ovvero:
SCM: Si appoggia ai più comuni repository come CVS ed SVN
Continuous Integration build system: al commit parte in automatico una build di integrazione. I risultati vengono notificati nel sito di progetto, gestito anch’esso da jazz e, se necessario agli sviluppatori.
Groupware e project management: permette di gestire i task, di assegnarli ai membri dei team e di definire un team. Le comunicazioni sono gestite tramite una chat che utilizza jabber come piattaforma di IM.
Instant messaging: Si integra con i precedenti sistemi e permette ai membri del team di comunicare tra loro e di ricevere notifiche ad esempio dal sistema di build
Development process management e wiki integrati con il groupware e gli strumenti di project management
Lo so, tutto questo si può ottenere con poco sforzo anche con eclipse liscio aggiungendo mylin, il WTP ed altri plugin, ma volete mettere la comodità di avere uno strumento integrato?
Vale la pena provarlo, per partire iniziate qui e… buon divertimento!
Come tutti i siti che si rispettano anche noi abbiamo le statistiche, particolarmente per i blog. Fino ad oggi sono rimaste nell’area riservata, ma l’occasione di testare un simpatico prootto php/flash XML/SWF Charts ha portato all’idea di presentare alcune statistiche direttamente sul blog. In una visualizzazione particolarmente accattivante.
Vedete qui il numero di accessi (intendendo il numero di singole richieste GET di pagine all’apache) suddivisi per mese.
Che dire: per ora il poc è finito qui, anche perchè wordpress ostacola abbastanza l’inserimento di oggetti nei post senza l’utilizzo di plugin specifici. Però l’inizio è buono e penso che lo riutilizzeremo presto…
Nato in seguito ad alcune necessità di EcoPensieri, La Cantina della Nonna presenta un plugin per Wordpress chiamato Latest Activities. Su quasi tutti i blog che trovate in giro potete trovare la lista degli ultimi post. Spesso c’è anche un secondo elenco: quello dei commenti. Ma è proprio sempre necessario tenere separate queste due entità? No.
Prendendo spunto dall’ottimo Latest Comments di Brian Meidell, eccone la versione che genera un’unica lista per gli ultimi aggiornamenti, siano essi post o commenti.
Per le informazioni dettagliate sul funzionamento, la licenza (GPL 2)ed il download vi rimando al portale della cantina o a questo sito dove potete vedere il plugin in funzione!
ciao!
ps: visto che contiamo di conquistare il mondo con questo plugin ecco il post in inglese
La Cantina della Nonna is proud to present a new Wordpress plugin, called Latest Activities. It produces a single new-posts/new-comments resume, relieving you from using two separate widgets/plugins, and you can see it live here.
Incuriosito da un articolo di Punto Informatico, ho scoperto questo progetto: un software di aiuto alla dislessia, sviluppato nell’ambito di una tesi di laurea presso l’università di Firenze - Dipartimento di Sistemi ed Informatica.
Rich client applications. Supponiamo che sappiate cosa sono ed entriamo nel vivo di come realizzare un prototipo con tecnologia Flash.
Al momento, fra le tante cose disponibili, si trovano Flex,un tool spettacolare (non del tutto free) della Adobe e questo (free in alcune versioni/condizioni) che è abbastanza facile da imparare e utilizzeremo in questo esempio.
Obiettivo: realizzare un menu che somigli al DirectoryIndex, ovvero che dinamicamente mostri un link per ogni directory in un certo percorso del server. E’ utile? Bè, proprio per la sua dinamicità permette di essere utilizzato come componente in applicazioni più evolute. E poi permette di dare un tocco grafico che nessuno immagina dietro le quinte il banale comando “ls”
Un post per creare dubbi e non risolverne nessuno…
Ho bisogno di rendere modulare una parte di una java application. Fin qui è facile: ho un oggetto che rappresenta la parte modulare/intercambiabile e ne definisco l’interfaccia. Per cui ho qualcosa tipo
Supponiamo che molta gente dica “che figo! aspetta che implemento un mio plugin”.
A questo punto, quando il programma passerà alla versione 2.0, sarà importantissimo che tutti questi plugin non smettano di funzionare. Non posso dire “hei, ho definito l’interfaccia IAdvancedPlugin, adesso si usa quella, riscrivete il vs codice”.
Continuiamo la carrellata di strumenti open source per lo sviluppo rimanendo nell’ambito del processo di build del progetto. Supponiamo quindi di aver creato il nostro file di build con ant o con maven e di avere quindi un processo di sviluppo così modellato:
Check out dei sorgenti: lo sviluppatore scarica in locale dal repository di progetto i sorgenti.
Codifica: lo sviluppatore implementa una funzionalità o corregge un bug
Test: lo sviluppatore esegue i tutti test automatici presenti nel progetto
Build: si richiama il file di build per controllare che le modifiche effettuate non provochino dei problemi nella compilazione del progetto
Check in dei sorgenti: lo sviluppatore persiste nel repository centralizzato le modifiche effettuate in locale
Sun ha annunciato il “Project Darkstar“, definendolo il primo server per il gaming online completamente opensource. Il software si propone di soddisfare tutte le esigenze degli sviluppatori di gaming online, fornendo una piattaforma semplice da usare, indipendente dal tipo di videogame e facilmente personalizzabile tramite Api. In pratica il “Project Darkstar” fornendo le funzionalità di gestione del carico dei server, la coerenza dei dati, la comunicazione (chat o vocale), lascerebbe agli sviluppatori la possibilità di dedicarsi solo al videogame.
“Among the features and benefits that you will leverage through the Project Darkstar platform are:
Significantly lessens the time, effort, monetary investment and risk involved in developing online games.
Provides a simple programming model that hides the complexities of multithreading and server replication.
Enables games to scale to handle large numbers of clients while providing low-latency response times, even for the write-heavy workloads of MMOGs.
“Shardless” MMOGs are now a reality by removing the need to preallocate servers with fixed assignments to specific game regions.
Automatically handles persistence of game state and recovery of game state in the event of server failure.
Presents a common, underlying platform that can be reused from one game to another.
Provides plug-in APIs to allow the system to be extended with 3rd-party components.
Platform and game agnostic architecture allows you develop online games in any genre that target a wide variety of devices.
Sun ha inoltre creato il Darkstar Playground, a cui potranno registrarsi fino al 5 Aprile tutti gli sviluppatori interessati a creare giochi per questa piattaforma.
Sul sito del progetto è presente anche la prima demo di gioco sviluppato dalla Sun stessa.
Ah dimenticavo, il tutto è ovviamente scritto in Java!
Abbiamo visto, nella prima parte del post come usare uno o più strumenti per assecondare e/o cambiare il processo di sviluppo del software tentando di migliorarlo. Focalizziamoci sul processo e diamo alcune definizioni (scusate l’approssimazione e la sintesi):
Processo: insieme di attività che portano al compimento dell’obiettivo che ci si è proposti (in questo caso lo sviluppo del software)
Attività: Insieme di azioni svolte da uno o più attori per produrre artefatti
Attore: Persone/sistemi software coinvolti nello svolgimento di attività
Artefatto: tutto ciò che viene prodotto da un attore durante lo svolgimento delle attività che compongono il processo
Metodologia: Insieme di processi organizzati in maniera strategica allo scopo di raggiungere l’obiettivo della conclusione del progetto
A monte quindi della scelta degli strumenti occorre porre l’enfasi sulla metodologia da impiegare per lo sviluppo. Ce ne sono mille e come già evidenziato dal post di Virgilio quelle che vanno per la maggiore in Italia sono quelle agili. Nessuna di queste metodologie può però vantare uno strumento che permetta di gestire in maniera coerente le varie entità evidenziate sopra e che permetta di modificare, assemblare e pubblicare in un repository coerente e centralizzato sia i processi che gli artefatti (per inciso il software prodotto è un artefatto). L’obiettivo, si badi bene, non è solo quello di formalizzare i processi, ma anche quello di razionalizzare gli sforzi del management che, in ambienti complessi e dinamici come quelli dell’attuale mondo dell’IT può avere a che fare con un alto turnover degli attori coinvolti e quindi con un enorme overhead dovuto al passaggio di consegne.
Tutto questo può essere gestito con strumenti come il già citato Rational Method Composer che ha principalmente (ma non solo) come target la metodologia RUP e permette di gestire processi, best practice, ruoli, artefatti ecc.
Dato che però vogliamo rimanere nel mondo open source, consideriamo l’uso dell’Eclipse Process Framework per gli amici EPF.
e non solo perchè a 4 gg dal compleanno (grazie grazie) sono già senza voce e malaticcio come se la vecchiaia arrivasse a quintali.
girovagando per la rete mi sono imbattuto nel sito in oggetto. ne parlano in tanti, chi bene chi male. ci sono flame e fior di discussioni. Un buon punto di aprtenza è questo, contiene sia un video che illustra come utilizzare il servizio, che un po’ di gente che ci ha lavoricchiato sopra.
voi siete impazienti e vi chiedete: “ma di che servizio stai parlando?”. bè, Ning vuole essere una piattaforma per sviluppare in modo visuale e via web delle applicazioni, sempre web, di social network.