Progetto con Google Code – Come aprirne uno


Più volte mi è stato richiesto come aprire e gestire un progetto mediante Google Code.

Oggi inizieremo, mediante una serie di articoli, a vedere come fare a creare il necessario affinché ciò possa avvenire e vedremo come mantenere vivo il nostro progetto grazie all’uso di Subversion.

Iniziamo recandoci nella pagina per creare un nuovo progetto: http://code.google.com/hosting/createProject.

Avremo dei campi da compilare:

Project Name: è il nome da attribuire al progetto. Esso figurerà nell’url di riferimento alla pagina del progetto, è obbligatorio e non potrà più essere modificato. Si consiglia perciò di sceglierlo bene.

Project summary: è una descrizione sommaria del progetto. Non deve essere dettagliata ma deve indicare, a grandi linee, cosa fa il software. Questa voce potrà essere modificata in seguito

Project description: è la vera e propria descrizione nella quale potremo scrivere tutto quello che ci pare e che reputiamo importante. Sarà presente nella home page del nostro progetto e sarà facilmente editabile in futuro anche con particolari tag.

Version control system: questa combo contiene due voci. Se volete seguire questa guida dovrete scegliere Subversion, altrimenti se siete più propensi verso l’altro sistema (magari perché lo conoscete e lo avete già usato) potete scegliere Mercurial.

Source code license: in questa combo, invece, figurano alcune licenze tra le quali sceglierne una da applicare al vostro progetto. Qui la scelta è lasciata totalmente a voi. Io prediligo la GNU GPL 3 ma se avete particolari esigenze scegliete pure. Magari informatevi circa le altre licenze che possono essere più consone al vostro lavoro. L’importante è ricordare che Google Code accetta solo licenze Open Source.

Use a separate content license: se spuntate questa voce permettete di abilitare la combo associata che vi permetterà di aggiungere alla licenza scelta una clausola di tipo Creative Commons

Project labels: vi mette a disposizione sei caselle di testo nelle quali inserire delle parole chiave che identificano il vostro progetto e ne facilitano la catalogazione nel database del portale in modo da facilitare eventuali utenti nella scelta. Se non avete idea di cosa aggiungere potete scegliere tra quelle proposte nella tendina che appare cliccando con il mouse in una delle caselle. Le sei caselle non devono necessariamente essere riempite tutte. Se, invece, il loro numero non è sufficiente potete aggiungerne altre cliccando su Add Row.

Bene. una volta terminato il lavoro potete cliccare Crete project. Il vostro lavoro è ora online ed è raggiungibile all’indirizzo:

http://code.google.com/p/NOME-VOSTRO-PROGETTO

Nella prossima lezione vedremo come caricare i sorgenti del nostro progetto. Alla prossima.

Condividere facilmente file creando un semplice server

Condividere file è sempre un cruccio per chi lavora in un team. A volte capita di essere più persone e di lavorare sullo stesso progetto e sicuramente inviarsi file mediante email è sempre un processo laborioso e non propriamente pratico. Si potrebbe provare anche mediante protocolli quali ad esempio msn ma la velocità di essi sicuramente ci spinge a scartare a priori l’idea.

Un’idea può essere quella di abilitare momentaneamente un nostro amico a poter spulciare nel nostro computer da remoto sotto la nostra stretta sorveglianza. Starete già pensando a lunghe installazioni e difficili configurazione ed invece tutto il lavoro si riduce ad un semplice e misero comanda da terminale. Si creerebbe così un semplice server.

Recatevi nella vostra shell e digitate

python -m SimpleHTTPServer


A questo punto il terminale dovrebbe rispondervi con un messaggio simile al seguente:

Serving HTTP on 0.0.0.0 port 8000 …


e resterà in attesa. Ora non vi resta che inviare al vostro amico il vostro IP pubblico ed esso potrà accedere ai vostri file digitando semplicemente nel suo browser l’indirizzo

http://vostroip:8000


Avrà ora la lista dei vostri file e potrà esplorare le vostre cartelle potendo così scaricare direttamente dal vostro computer i dati necessari. Nulla di più pratico dire.

ATTENZIONE: state attenti a chi consegnate i vostri dati. Non siamo in alcun modo e per nessun motivo responsabili di eventuali furti di file importanti e/o personali.

FONTE : [1]

Evitare la chiusura di Amule

La crescita del Peer To Peer (P2P) deve sicuramente la sua spinta espansionistica alla diffusione di uno dei software di file sharing più usati di sempre: Emule. Nonostante i mezzi mediante i quali scambiarsi i file sono ormai pressoché infiniti, il software del mulo è tutt’oggi tra i più utilizzati sia per pratiche legali che totalmente illegali.


La diffusione di Emule ha visto la nascita di diversi software simili e derivati. In ambiente GNU/Linux la controparte di tale software è Amule! Esso è un ottimo software, compatibile al 100% con le reti, i server ed il protocollo del suo fratello più celebre.

A molti sarà capitato di usare Amule e sicuramente la maggioranza si sarà accorto della sua instabilità. Lanciare il programma ed allontanarsi dal computer significa giocare un terno al lotto poichè quando si torna esso si può essere chiuso per via dei vari crash ai quali è soggetto. Come fare allora per ovviare a tale situazione?

Vediamo un semplicissimo script bash da lanciare invece dell’esecuzione diretta di Amule, che si occupa di eseguire il software e tenere sotto controllo il suo stato. Nel caso di crash sarà lo stesso script a rieseguire il software e così non dovremo preoccuparci di controllare puntualmente i nostri download.

Ecco lo script:


Come si vede, esso esegue un semplice controllo e nel caso sullo stato del programma. Lo script ha una ciclicità infinità. Ciò si evince da while [1] che significa esegui finché la condizione è vera ed infatti 1 risulta una condizione vera sempre!

ATTENZIONE: Lo script funziona sempre. Questo vuol dire che se vogliamo chiudere Amule di nostro pugno ciò non sarà possibile poiché non appena chiudiamo la finestra lo script rieseguirà il programma. Vi suggerisco perciò di eseguire lo script in un terminale in moda tale da chiudere lo stesso quando il programma non serve più.