<?xml version="1.0" encoding="utf-8"?><rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
>
<channel>
	<title>Black Bird Blog - Progetti</title>
	<link>http://www.blackbirdblog.it/programmazione/progetti</link>
	<description>Il progetti di Michele Ferretti</description>
	<pubDate>Thu, 09 Feb 2012 18:54:58 +0000</pubDate>
	<generator>Hand made PHP script</generator>
	<language>it</language>
	<item>
		<title>JDCalc</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/29</link>
		<pubDate>Wed, 24 Aug 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/29</guid>
		<description><![CDATA[<p>
Si tratta di un convertitore di date dal formato del calendario Gregoriano a quello Giuliano. Il calendario Giuliano è una rappresentazione decimale di una data ed è usato spesso nell'ambito dell'astronomia perchè molto più pratico di quello Gregoriano.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/jdcalc.jpg" alt="Screenshot dell'applicazione" /></div>]]></description>
		<content:encoded><![CDATA[<p>
Si tratta di un convertitore di date dal formato del calendario Gregoriano a quello Giuliano. Il calendario Giuliano è una rappresentazione decimale di una data ed è usato spesso nell'ambito dell'astronomia perchè molto più pratico di quello Gregoriano.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/jdcalc.jpg" alt="Screenshot dell'applicazione" /></div>]]></content:encoded>
	</item>
		<item>
		<title>Codice Fiscale (per Mac)</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/30</link>
		<pubDate>Wed, 24 Aug 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/30</guid>
		<description><![CDATA[<p>
Credo sia inutile descrivere questa applicazone, il nome dice tutto. Si tratta della traduzione in Objective-C/Cocoa dell'algoritmo scritto precedentemente in Delphi per Windows. In realt�  ha in più solo il supporto alle nazioni straniere per chi è nato fuori dal territorio italiano.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/codicefiscale_mac.jpg" alt="Screenshot dell'applicazione" /></div>	]]></description>
		<content:encoded><![CDATA[<p>
Credo sia inutile descrivere questa applicazone, il nome dice tutto. Si tratta della traduzione in Objective-C/Cocoa dell'algoritmo scritto precedentemente in Delphi per Windows. In realt�  ha in più solo il supporto alle nazioni straniere per chi è nato fuori dal territorio italiano.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/codicefiscale_mac.jpg" alt="Screenshot dell'applicazione" /></div>	]]></content:encoded>
	</item>
		<item>
		<title>BootTime</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/23</link>
		<pubDate>Tue, 14 Sep 2004 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/23</guid>
		<description><![CDATA[<p>
Applicazione che visualizza il tempo trascorso dall'ultimo avvio/riavvio nella
system bar.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/boottime.png" alt="Screenshot di BootTime 1.0" /></div>]]></description>
		<content:encoded><![CDATA[<p>
Applicazione che visualizza il tempo trascorso dall'ultimo avvio/riavvio nella
system bar.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/boottime.png" alt="Screenshot di BootTime 1.0" /></div>]]></content:encoded>
	</item>
		<item>
		<title>PyAppleSMS</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/32</link>
		<pubDate>Tue, 01 Aug 2006 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/32</guid>
		<description><![CDATA[<p>Modulo Python per Apple SMS (<a href="http://en.wikipedia.org/wiki/Sudden_Motion_Sensor">Sudden Motion Sensor</a>), il sensore che viene montato attualmente su ogni portatile Macintosh. Apple monta già da diverso tempo questo sensore e si è scoperto che tramite una chiamata al kernel è possibile avere accesso alle tre coordinate x, y, z che indentificano il movimento del portatile nello spazio.</p>

<p>Ho aperto un nuovo progetto su <a href="http://code.google.com/p/pyapplesms/">Google Code</a> ed è possibile contribuire allo sviluppo per cui se siete intenzionati, scrivetemi che vi inserisco fra gli sviluppatori.</p>

<p>Ecco un esempoio di come si utilizza il modulo:</p>

<pre class="codice">import applesms
(x, y, z) = applesms.coords()</pre>

<p>Buon divertimento!</p>
]]></description>
		<content:encoded><![CDATA[<p>Modulo Python per Apple SMS (<a href="http://en.wikipedia.org/wiki/Sudden_Motion_Sensor">Sudden Motion Sensor</a>), il sensore che viene montato attualmente su ogni portatile Macintosh. Apple monta già da diverso tempo questo sensore e si è scoperto che tramite una chiamata al kernel è possibile avere accesso alle tre coordinate x, y, z che indentificano il movimento del portatile nello spazio.</p>

<p>Ho aperto un nuovo progetto su <a href="http://code.google.com/p/pyapplesms/">Google Code</a> ed è possibile contribuire allo sviluppo per cui se siete intenzionati, scrivetemi che vi inserisco fra gli sviluppatori.</p>

<p>Ecco un esempoio di come si utilizza il modulo:</p>

<pre class="codice">import applesms
(x, y, z) = applesms.coords()</pre>

<p>Buon divertimento!</p>
]]></content:encoded>
	</item>
		<item>
		<title>FilmUpPy</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/24</link>
		<pubDate>Thu, 21 Apr 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/24</guid>
		<description><![CDATA[<p>
Libreria per catturare informazioni sui film del databsse del sito 
<a href="http://filmup.leonardo.it" title="Vai al sito">filmup.leonardo.it</a>
</p>

<p>
I sorgenti della libreria sono liberamente scaricabili dal sito 
<a href="http://sourceforge.net/projects/filmuplib/" title="Progetto FilmUpPy su SourceForge">SourceForge</a>.
se siete interessati allo sviluppo contattatemi via email che vi 
inserirò nella lista degli sviluppatori e potrete contribuire.
</p>

<div class="centrato">
<p><a href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=124038&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a></p>
</div>

<ul>
<li>v. 1.4.1 - Modificata per renderla compatibile con le modifiche al nuovo sito <a href="http://filmup.leonardo.it/">filmup.leonardo.it</a></li>
</ul>

]]></description>
		<content:encoded><![CDATA[<p>
Libreria per catturare informazioni sui film del databsse del sito 
<a href="http://filmup.leonardo.it" title="Vai al sito">filmup.leonardo.it</a>
</p>

<p>
I sorgenti della libreria sono liberamente scaricabili dal sito 
<a href="http://sourceforge.net/projects/filmuplib/" title="Progetto FilmUpPy su SourceForge">SourceForge</a>.
se siete interessati allo sviluppo contattatemi via email che vi 
inserirò nella lista degli sviluppatori e potrete contribuire.
</p>

<div class="centrato">
<p><a href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=124038&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a></p>
</div>

<ul>
<li>v. 1.4.1 - Modificata per renderla compatibile con le modifiche al nuovo sito <a href="http://filmup.leonardo.it/">filmup.leonardo.it</a></li>
</ul>

]]></content:encoded>
	</item>
		<item>
		<title>Favorites Flickr poster</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/31</link>
		<pubDate>Sun, 23 Oct 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/31</guid>
		<description><![CDATA[<p>Applicazione a linea di comando scritta i Python che permette di <a href="http://www.blackbirdblog.it/blog/archivio/2005/10/22/flickr-poster/">creare dei poster</a> delle immagini preferite degli utenti di Flickr. &Egrave; possibile realizzare poster di tutti i tipi modificando i parametri:</p>

<pre class="console">FavoritesPoster 1.0 - by Michele Ferretti
Flickr favorites photos poster maker

usage: flickr-poster.py [options]

options:
  --help         this help
  --user         username
  --file=        output poster file path (default is poster.jpg)
  --format=      image format (default is JPEG)
                 formats availables: GIF, JPEG, PDF, PNG, TIFF
  --size=        poster rows and coloums (default is 5,5) ex: --size=10,10
  --padding=     images padding in px. (default is 5px.)
  --imgsize=     photos size (default is 500,333) ex: --imgsize=75,75
  --imgprefix=   size prefix of Flickr photos (default is medium), size prefix availables:
                 s   small square 75x75
                 t   thumbnail, 100 on longest side
                 m   small, 240 on longest side
                     medium, 500 on longest side
                 b   large, 1024 on longest side (only exists for very large original images)
                 o   original image, either a jpg, gif or png, depending on source format
  --flickrlogo=  path of Flickr logo
  --bgcolor=     background color RGB value (default is 255,255,255) ex: --bgcolor=255,255,255</pre>

<p>Per funzionare necessita solamente dell'interprete Python 2.3 o maggiore e delle librerie <a href="http://www.pythonware.com/products/pil/">PIL</a>. La libreria <code><a href="http://jamesclarke.info/projects/flickr/">flickr.py</a></code> è gi�  inclusa nel pacchetto.</p>

<p>Se per esempio volete creare un poster di 5 righe per 5 colonne dei thumbnail quadrati delle immagini favorite basta lanciare questo comando:</p>
<pre class="console">python flickr-poster.py --user="Black Bird Boy"</pre>

<p>Il risultato sar�  il seguente:</p>
<div class="centrato"><img src="http://www.blackbirdblog.it/images/programmazione/mysoftware/flickrposter/poster_75x75.jpg" alt="Poster 75x75" /></div>

<p>Ora sta a voi sbizzarrirvi nel creare tutti i tipi di poster che vi passano per la testa. Come sempre il codice è rilasciato sotto licenza GNU GPL, quindi se volete contribuire allo sviluppo ne sarò veramente felice :-)</p>]]></description>
		<content:encoded><![CDATA[<p>Applicazione a linea di comando scritta i Python che permette di <a href="http://www.blackbirdblog.it/blog/archivio/2005/10/22/flickr-poster/">creare dei poster</a> delle immagini preferite degli utenti di Flickr. &Egrave; possibile realizzare poster di tutti i tipi modificando i parametri:</p>

<pre class="console">FavoritesPoster 1.0 - by Michele Ferretti
Flickr favorites photos poster maker

usage: flickr-poster.py [options]

options:
  --help         this help
  --user         username
  --file=        output poster file path (default is poster.jpg)
  --format=      image format (default is JPEG)
                 formats availables: GIF, JPEG, PDF, PNG, TIFF
  --size=        poster rows and coloums (default is 5,5) ex: --size=10,10
  --padding=     images padding in px. (default is 5px.)
  --imgsize=     photos size (default is 500,333) ex: --imgsize=75,75
  --imgprefix=   size prefix of Flickr photos (default is medium), size prefix availables:
                 s   small square 75x75
                 t   thumbnail, 100 on longest side
                 m   small, 240 on longest side
                     medium, 500 on longest side
                 b   large, 1024 on longest side (only exists for very large original images)
                 o   original image, either a jpg, gif or png, depending on source format
  --flickrlogo=  path of Flickr logo
  --bgcolor=     background color RGB value (default is 255,255,255) ex: --bgcolor=255,255,255</pre>

<p>Per funzionare necessita solamente dell'interprete Python 2.3 o maggiore e delle librerie <a href="http://www.pythonware.com/products/pil/">PIL</a>. La libreria <code><a href="http://jamesclarke.info/projects/flickr/">flickr.py</a></code> è gi�  inclusa nel pacchetto.</p>

<p>Se per esempio volete creare un poster di 5 righe per 5 colonne dei thumbnail quadrati delle immagini favorite basta lanciare questo comando:</p>
<pre class="console">python flickr-poster.py --user="Black Bird Boy"</pre>

<p>Il risultato sar�  il seguente:</p>
<div class="centrato"><img src="http://www.blackbirdblog.it/images/programmazione/mysoftware/flickrposter/poster_75x75.jpg" alt="Poster 75x75" /></div>

<p>Ora sta a voi sbizzarrirvi nel creare tutti i tipi di poster che vi passano per la testa. Come sempre il codice è rilasciato sotto licenza GNU GPL, quindi se volete contribuire allo sviluppo ne sarò veramente felice :-)</p>]]></content:encoded>
	</item>
		<item>
		<title>DivX Manager</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/2</link>
		<pubDate>Sun, 23 Mar 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/2</guid>
		<description><![CDATA[<p>Archivia e cataloga i tuoi DivX !!! con DivXManager &egrave; ancora pi&ugrave; facile !!!!
</p>]]></description>
		<content:encoded><![CDATA[<p>Archivia e cataloga i tuoi DivX !!! con DivXManager &egrave; ancora pi&ugrave; facile !!!!
</p>]]></content:encoded>
	</item>
		<item>
		<title>Connect To Address</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/26</link>
		<pubDate>Sun, 22 Jun 2008 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/26</guid>
		<description><![CDATA[<p>
Estensione per Mozilla Firefox che permette di aprire link che non sono cliccabili, questa estensione permette di selezionare il link e di aprirlo in un nuovo tab del browser.
</p>

<div class="install-box">
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/1200" title="Installa adesso">installa adesso</a></p>
</div>

<p>Richiede Mozilla Firefox 1.0 o superiore.</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 1.1</span> Aggiunto supporto anche per indirizzi che non contengono il prefisso <code>http://</code>.</li>
<li><span class="changelog-version">v. 1.1.1</span> Aggiunta traduzione francese a cura di <a href="http://extensions.geckozone.org/Goofy">Goofy</a>.</li>
<li><span class="changelog-version">v. 1.1.2</span> Compatibilit&agrave;  con Firefox dalla versione 1.0.x alla versione 1.5.x e aggiunta del file <acronym title="Resource Description Framework">RDF</acronym> per il controllo degli aggiornamenti automatici.</li>
<li><span class="changelog-version">v. 1.1.3</span> Compatibilit&agrave; con la versione beta 2 di Firefox 1.5 e correzione di un baco che faceva comparire la voce nel men&ugrave; contestuale sopra un link.</li>
<li><span class="changelog-version">v. 1.1.4</span> Compatibilit&agrave; con la versione definitiva di Firefox 1.5</li>
<li><span class="changelog-version">v. 1.1.5</span> Compatibilit&agrave; con l'aggiornamento 1.5.0.1 di Firefox</li>
<li><span class="changelog-version">v. 1.1.7</span> Compatibilit&agrave; con la versione 2.0 di Firefox</li>
<li><span class="changelog-version">v. 1.1.8</span> Compatibilit&agrave; con la versione 3.0 beta 3 di Firefox</li>
<li><span class="changelog-version">v. 1.1.9</span> Compatibilit&agrave; con la versione definitiva di Firefox 3.0</li>
</ul>
</div>]]></description>
		<content:encoded><![CDATA[<p>
Estensione per Mozilla Firefox che permette di aprire link che non sono cliccabili, questa estensione permette di selezionare il link e di aprirlo in un nuovo tab del browser.
</p>

<div class="install-box">
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/1200" title="Installa adesso">installa adesso</a></p>
</div>

<p>Richiede Mozilla Firefox 1.0 o superiore.</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 1.1</span> Aggiunto supporto anche per indirizzi che non contengono il prefisso <code>http://</code>.</li>
<li><span class="changelog-version">v. 1.1.1</span> Aggiunta traduzione francese a cura di <a href="http://extensions.geckozone.org/Goofy">Goofy</a>.</li>
<li><span class="changelog-version">v. 1.1.2</span> Compatibilit&agrave;  con Firefox dalla versione 1.0.x alla versione 1.5.x e aggiunta del file <acronym title="Resource Description Framework">RDF</acronym> per il controllo degli aggiornamenti automatici.</li>
<li><span class="changelog-version">v. 1.1.3</span> Compatibilit&agrave; con la versione beta 2 di Firefox 1.5 e correzione di un baco che faceva comparire la voce nel men&ugrave; contestuale sopra un link.</li>
<li><span class="changelog-version">v. 1.1.4</span> Compatibilit&agrave; con la versione definitiva di Firefox 1.5</li>
<li><span class="changelog-version">v. 1.1.5</span> Compatibilit&agrave; con l'aggiornamento 1.5.0.1 di Firefox</li>
<li><span class="changelog-version">v. 1.1.7</span> Compatibilit&agrave; con la versione 2.0 di Firefox</li>
<li><span class="changelog-version">v. 1.1.8</span> Compatibilit&agrave; con la versione 3.0 beta 3 di Firefox</li>
<li><span class="changelog-version">v. 1.1.9</span> Compatibilit&agrave; con la versione definitiva di Firefox 3.0</li>
</ul>
</div>]]></content:encoded>
	</item>
		<item>
		<title>Ant Dropper</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/21</link>
		<pubDate>Sat, 28 Aug 2004 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/21</guid>
		<description><![CDATA[<p>
AntDropper è un semplice front-end grafico per Ant, il build tool della 
fondazione Apache. AntDropper permette di lanciare l’esecuzione di script 
Ant direttamente da una comoda interfaccia grafica scritta utilizzando 
Objective-C e il framework Cocoa.
</p>


<div class="centrato">
	<img src="http://www.blackbirdblog.it/images/blog/antdropper/antdropper.png" alt="Finestra principale di Ant Dropper" />
	<div class="labelcodice">Immagine 1: Screenshot programma inattivo</div>
</div>

<p>
L’applicazione è utilizzabile tramite drag ’n drop del 
file sulla finestra dell’applicazione, sull’icona del programma 
oppure tramite il menu con la voce File -> Apri...
</p>

<div class="centrato">
	<img src="http://www.blackbirdblog.it/images/blog/antdropper/antdropper_attivo.png" alt="Finestra principale di Ant Dropper in azione" />
	<div class="labelcodice">Immagine 2: Screenshot programma in azione</div>
</div>

<p>
Per utilizzare AntDropper non si necessita di ulteriori componenti, 
neanche della configurazione classica di Ant. 
</p>

<p>
Il programma contiene al suo interno la versione 1.6.1 di Ant.
</p>

<p>
Il programma richiede Mac OS X 10.3 o superiore e il framework 
Java 1.4 o superirore.
</p>]]></description>
		<content:encoded><![CDATA[<p>
AntDropper è un semplice front-end grafico per Ant, il build tool della 
fondazione Apache. AntDropper permette di lanciare l’esecuzione di script 
Ant direttamente da una comoda interfaccia grafica scritta utilizzando 
Objective-C e il framework Cocoa.
</p>


<div class="centrato">
	<img src="http://www.blackbirdblog.it/images/blog/antdropper/antdropper.png" alt="Finestra principale di Ant Dropper" />
	<div class="labelcodice">Immagine 1: Screenshot programma inattivo</div>
</div>

<p>
L’applicazione è utilizzabile tramite drag ’n drop del 
file sulla finestra dell’applicazione, sull’icona del programma 
oppure tramite il menu con la voce File -> Apri...
</p>

<div class="centrato">
	<img src="http://www.blackbirdblog.it/images/blog/antdropper/antdropper_attivo.png" alt="Finestra principale di Ant Dropper in azione" />
	<div class="labelcodice">Immagine 2: Screenshot programma in azione</div>
</div>

<p>
Per utilizzare AntDropper non si necessita di ulteriori componenti, 
neanche della configurazione classica di Ant. 
</p>

<p>
Il programma contiene al suo interno la versione 1.6.1 di Ant.
</p>

<p>
Il programma richiede Mac OS X 10.3 o superiore e il framework 
Java 1.4 o superirore.
</p>]]></content:encoded>
	</item>
		<item>
		<title>EasyDMG</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/22</link>
		<pubDate>Sat, 13 May 2006 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/22</guid>
		<description><![CDATA[<p>
    Creare archivi DMG non è stato mai così semplice. Trascini la cartella sulla finestra e EasyDMG crea un archivio con il contenuto della cartella e lo stesso nome.
</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 1.1</span> Aggiunta traduzione in Cinese tradizionale realizzata da <a href="mailto:opect7312@gmail.com">Opect</a>. Completamento della traduzione del menù per l’italiano. Aggiunto supporto per trascinare le cartelle anche sull’icona del programma, oltre che sulla finestra. Ottimizzazione generale del codice.</li>
<li><span class="changelog-version">v. 1.2</span> Versione con Universal Binary.</li>
<li><span class="changelog-version">v. 1.5</span> Aggiunto il supporto per la notifica <a href="http://growl.info/">Growl</a>, l'archivio "Internet enable" e l'apertura automatica dopo la creazione.</li>
</ul>
</div>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/software/easydmg/easydmg.png" alt="Screenshot della finestra principale dell'applicazione" /></div>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/software/easydmg/easydmg_preferences.png" alt="Screenshot della finestra delle preferenze dell'applicazione" /></div>
]]></description>
		<content:encoded><![CDATA[<p>
    Creare archivi DMG non è stato mai così semplice. Trascini la cartella sulla finestra e EasyDMG crea un archivio con il contenuto della cartella e lo stesso nome.
</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 1.1</span> Aggiunta traduzione in Cinese tradizionale realizzata da <a href="mailto:opect7312@gmail.com">Opect</a>. Completamento della traduzione del menù per l’italiano. Aggiunto supporto per trascinare le cartelle anche sull’icona del programma, oltre che sulla finestra. Ottimizzazione generale del codice.</li>
<li><span class="changelog-version">v. 1.2</span> Versione con Universal Binary.</li>
<li><span class="changelog-version">v. 1.5</span> Aggiunto il supporto per la notifica <a href="http://growl.info/">Growl</a>, l'archivio "Internet enable" e l'apertura automatica dopo la creazione.</li>
</ul>
</div>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/software/easydmg/easydmg.png" alt="Screenshot della finestra principale dell'applicazione" /></div>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/software/easydmg/easydmg_preferences.png" alt="Screenshot della finestra delle preferenze dell'applicazione" /></div>
]]></content:encoded>
	</item>
		<item>
		<title>Rename Xcode Project</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/27</link>
		<pubDate>Sat, 01 Apr 2006 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/27</guid>
		<description><![CDATA[<p>
	Vi presento una nuova utility per Mac OS X, rivolta agli sviluppatori che utilizzano Xcode.
	Permette di rinominare progetti Xcode.
	Quante volte vi sar&agrave; capitato di voler cambiare nome al progetto che stavate portando avanti con Xcode.
	Una funzionalit&agrave; di rinomina ufficiale non &egrave; presente in xCode (almeno fino alla versione 1.5).
	L'unica soluzione &egrave; quella di eseguire una <a href="http://www.enricovetto.org/index.php?option=content&task=view&id=99&Itemid=">procedura macchinosa</a>.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/renamexcodeproject.png" alt="Screenshot di Rename Xcode Project" /></div>

<p>
	Ho racchiuso questa procedura in un eseguibile per l&apos;ambiente Cocoa. 
	Scritto totalmente in Objective-C e disponibile per il download compresi i
	sorgenti rilasciati sotto licenza GNU GPL.
</p>

<p>
	Volevo ringraziare <a href="http://www.enricovetto.org">Enrico Vettorato</a> per l'aiuto durante la fase di test dell'applicazione.
	Enrico ha scritto il <a href="http://www.enricovetto.org/index.php?option=content&task=view&id=99&Itemid=">tutorial della procedura</a> per rinominare manualmente. 
</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 2.0</span> Aggiunto supporto per il nuovo formato dei progetti Xcode 2.x.</li>
<li><span class="changelog-version">v. 2.1</span> Versione con Universal Binary.</li>
</ul>
</div>]]></description>
		<content:encoded><![CDATA[<p>
	Vi presento una nuova utility per Mac OS X, rivolta agli sviluppatori che utilizzano Xcode.
	Permette di rinominare progetti Xcode.
	Quante volte vi sar&agrave; capitato di voler cambiare nome al progetto che stavate portando avanti con Xcode.
	Una funzionalit&agrave; di rinomina ufficiale non &egrave; presente in xCode (almeno fino alla versione 1.5).
	L'unica soluzione &egrave; quella di eseguire una <a href="http://www.enricovetto.org/index.php?option=content&task=view&id=99&Itemid=">procedura macchinosa</a>.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/renamexcodeproject.png" alt="Screenshot di Rename Xcode Project" /></div>

<p>
	Ho racchiuso questa procedura in un eseguibile per l&apos;ambiente Cocoa. 
	Scritto totalmente in Objective-C e disponibile per il download compresi i
	sorgenti rilasciati sotto licenza GNU GPL.
</p>

<p>
	Volevo ringraziare <a href="http://www.enricovetto.org">Enrico Vettorato</a> per l'aiuto durante la fase di test dell'applicazione.
	Enrico ha scritto il <a href="http://www.enricovetto.org/index.php?option=content&task=view&id=99&Itemid=">tutorial della procedura</a> per rinominare manualmente. 
</p>

<div class="changelog">
<h3>CHANGELOG</h3>
<ul>
<li><span class="changelog-version">v. 2.0</span> Aggiunto supporto per il nuovo formato dei progetti Xcode 2.x.</li>
<li><span class="changelog-version">v. 2.1</span> Versione con Universal Binary.</li>
</ul>
</div>]]></content:encoded>
	</item>
		<item>
		<title>SETI@Home Library</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/17</link>
		<pubDate>Mon, 31 Mar 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/17</guid>
		<description><![CDATA[<p>
SETI@Home library - Libreria che permette di prelevare le informazioni 
sulle statistiche individuali e di gruppo del progetto SETI@Home.
</p>

<p>esempio di utilizzo:</p>
<pre class="console">
>> import setiathomelib
>> i = setiathomelib.IndividualStats('black.bird@tiscalinet.it')
>> dati = i.userinfo()
>> dati['name']
('black.bird', 'http://www.blackbird.cjb.net')
>> dati['numresults']
969.0
>> dati['rank']
168997.0
>> dati['group']
('Ufologia SETI Team', 'http://setiathome.ssl.berkeley.edu/stats/team/team_118667.html')</pre>]]></description>
		<content:encoded><![CDATA[<p>
SETI@Home library - Libreria che permette di prelevare le informazioni 
sulle statistiche individuali e di gruppo del progetto SETI@Home.
</p>

<p>esempio di utilizzo:</p>
<pre class="console">
>> import setiathomelib
>> i = setiathomelib.IndividualStats('black.bird@tiscalinet.it')
>> dati = i.userinfo()
>> dati['name']
('black.bird', 'http://www.blackbird.cjb.net')
>> dati['numresults']
969.0
>> dati['rank']
168997.0
>> dati['group']
('Ufologia SETI Team', 'http://setiathome.ssl.berkeley.edu/stats/team/team_118667.html')</pre>]]></content:encoded>
	</item>
		<item>
		<title>Email Obfuscator</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/25</link>
		<pubDate>Mon, 24 Jan 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/25</guid>
		<description><![CDATA[<p>
Plug-in per <a href="http://wordpress.org/" title="Vai al sito">WordPress</a> (funziona anche con la versione 1.5) che permette di offuscare gli indirizzi email all'interno del corpo dei post. Codifica ogni carattere dell'indirizzo email nel corrispondente valore HTML <code>&amp;#xxx;</code> dove le <code>x</code> stanno per il numero ASCII che rappresenta il carattere.
</p>

<p>
Il plug-in permette ad un browser web di visualizzare correttamente gli indirizzi email ma rende difficile ad un spammer catturarli per inserirli in liste di distribuzione per fare spamming.
</p>

<p>
Ad esempio l'indirizzo email &#109;&#97;&#114;&#105;&#111;&#46;&#114;&#111;&#115;&#115;&#105;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109; nel codice HTML sar� :
</p>

<pre class="codice">
&amp;#109;&amp;#97;&amp;#114;&amp;#105;&amp;#111;&amp;#46;&amp;#114;&amp;#111;&amp;#115;&amp;#115;&amp;#105;
&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;
</pre>

<h2>Istruzioni per l'istallazione</h2>

<p>
Scaricate il file e spostatelo all'interno della directory <code>wordpress/wp-content/plugins</code>, fate il login nell'amministrazione del blog e andate nella sezione "Plugin", nella lista dei plug-in cercate "Email Obfuscator" e cliccate su "Activate". Pubblicate un post con un indirizzo email e poi andate a controllare il codice sorgente e avrete gli indirizzi email offuscati.
</p>
]]></description>
		<content:encoded><![CDATA[<p>
Plug-in per <a href="http://wordpress.org/" title="Vai al sito">WordPress</a> (funziona anche con la versione 1.5) che permette di offuscare gli indirizzi email all'interno del corpo dei post. Codifica ogni carattere dell'indirizzo email nel corrispondente valore HTML <code>&amp;#xxx;</code> dove le <code>x</code> stanno per il numero ASCII che rappresenta il carattere.
</p>

<p>
Il plug-in permette ad un browser web di visualizzare correttamente gli indirizzi email ma rende difficile ad un spammer catturarli per inserirli in liste di distribuzione per fare spamming.
</p>

<p>
Ad esempio l'indirizzo email &#109;&#97;&#114;&#105;&#111;&#46;&#114;&#111;&#115;&#115;&#105;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109; nel codice HTML sar� :
</p>

<pre class="codice">
&amp;#109;&amp;#97;&amp;#114;&amp;#105;&amp;#111;&amp;#46;&amp;#114;&amp;#111;&amp;#115;&amp;#115;&amp;#105;
&amp;#64;&amp;#103;&amp;#109;&amp;#97;&amp;#105;&amp;#108;&amp;#46;&amp;#99;&amp;#111;&amp;#109;
</pre>

<h2>Istruzioni per l'istallazione</h2>

<p>
Scaricate il file e spostatelo all'interno della directory <code>wordpress/wp-content/plugins</code>, fate il login nell'amministrazione del blog e andate nella sezione "Plugin", nella lista dei plug-in cercate "Email Obfuscator" e cliccate su "Activate". Pubblicate un post con un indirizzo email e poi andate a controllare il codice sorgente e avrete gli indirizzi email offuscati.
</p>
]]></content:encoded>
	</item>
		<item>
		<title>Re Tester</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/1</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/1</guid>
		<description><![CDATA[<p>
Un semplice tester per espressioni regolari, scritto in Python con interfaccia Tk.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Un semplice tester per espressioni regolari, scritto in Python con interfaccia Tk.
</p>]]></content:encoded>
	</item>
		<item>
		<title>BabelFish Client</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/4</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/4</guid>
		<description><![CDATA[<p>
Un client per il web service di <a href="http://babelfish.altavista.com/" target="_blank">BabelFish</a>, il programma si connette con il servizio per tradurre testi dall'italiano all'inglese.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Un client per il web service di <a href="http://babelfish.altavista.com/" target="_blank">BabelFish</a>, il programma si connette con il servizio per tradurre testi dall'italiano all'inglese.
</p>]]></content:encoded>
	</item>
		<item>
		<title>Converti Caratteri Html</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/5</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/5</guid>
		<description><![CDATA[<p>
Mentre tu scrivi lui traduce i caratteri speciali in entit&agrave; HTML.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Mentre tu scrivi lui traduce i caratteri speciali in entit&agrave; HTML.
</p>]]></content:encoded>
	</item>
		<item>
		<title>JSetiViewer</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/6</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/6</guid>
		<description><![CDATA[<p>
E' un visualizzatore per
le informazioni provenienti dal client <a href="http://setiathome.ssl.berkeley.edu/" target="_blank">Seti@Home</a>, visualizza le statistiche 
sul programma, le informazioni su i segnali e la mappa celeste con la 
provenienza del segnale, inoltre visualizza i progressi nel processare 
l'unit&agrave; di lavoro.
</p>]]></description>
		<content:encoded><![CDATA[<p>
E' un visualizzatore per
le informazioni provenienti dal client <a href="http://setiathome.ssl.berkeley.edu/" target="_blank">Seti@Home</a>, visualizza le statistiche 
sul programma, le informazioni su i segnali e la mappa celeste con la 
provenienza del segnale, inoltre visualizza i progressi nel processare 
l'unit&agrave; di lavoro.
</p>]]></content:encoded>
	</item>
		<item>
		<title>MemCheck</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/7</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/7</guid>
		<description><![CDATA[<p>
Controlla in tempo reale la memoria del computer sia quella fisica sia quella virtuale.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Controlla in tempo reale la memoria del computer sia quella fisica sia quella virtuale.
</p>]]></content:encoded>
	</item>
		<item>
		<title>SiteCheck</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/8</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/8</guid>
		<description><![CDATA[<p>
Visualizza l'header di una risposta HTTP.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Visualizza l'header di una risposta HTTP.
</p>]]></content:encoded>
	</item>
		<item>
		<title>Codice Fiscale</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/9</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/9</guid>
		<description><![CDATA[<p>
Classico programma per il calcolo del codice fiscale, semplice e veloce, calcola il codice secondo i parametri del ministero delle finanze.
</p>
]]></description>
		<content:encoded><![CDATA[<p>
Classico programma per il calcolo del codice fiscale, semplice e veloce, calcola il codice secondo i parametri del ministero delle finanze.
</p>
]]></content:encoded>
	</item>
		<item>
		<title>MP3TechInfo</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/10</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/10</guid>
		<description><![CDATA[<p>
Visualizza tutte le informazioni su file MP3, bitrate, frequenza ecc...
</p>]]></description>
		<content:encoded><![CDATA[<p>
Visualizza tutte le informazioni su file MP3, bitrate, frequenza ecc...
</p>]]></content:encoded>
	</item>
		<item>
		<title>NC</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/11</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/11</guid>
		<description><![CDATA[<p>
Comodo e leggero convertitore per numeri in rappresentazione decimale esadecimali e binario. Consente tutte le conversioni fra questi tre formati. Il programma &egrave; nato con il solo scopo didattico per implementare i vari algoritmi di conversione e poi si &egrave; rivelato un ottimo utility per programmatori e non.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Comodo e leggero convertitore per numeri in rappresentazione decimale esadecimali e binario. Consente tutte le conversioni fra questi tre formati. Il programma &egrave; nato con il solo scopo didattico per implementare i vari algoritmi di conversione e poi si &egrave; rivelato un ottimo utility per programmatori e non.
</p>]]></content:encoded>
	</item>
		<item>
		<title>Rinominatore</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/12</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/12</guid>
		<description><![CDATA[<p>
Questo programma l'ho realizzato quasi per scherzo, serve a rinominare i nomi di pi&ugrave; file contemporaneamente senza perdere tempo a fare l'operazone uno per volta. Il bello &egrave; che possiamo farlo anche su file appartenenti a diverse directory.
</p>

<p>
Per la prossima versione cercher&ograve; di  inserire una ricerca anche con espressioni regolari.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Questo programma l'ho realizzato quasi per scherzo, serve a rinominare i nomi di pi&ugrave; file contemporaneamente senza perdere tempo a fare l'operazone uno per volta. Il bello &egrave; che possiamo farlo anche su file appartenenti a diverse directory.
</p>

<p>
Per la prossima versione cercher&ograve; di  inserire una ricerca anche con espressioni regolari.
</p>]]></content:encoded>
	</item>
		<item>
		<title>SQL Editor</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/13</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/13</guid>
		<description><![CDATA[<p>
Mentre scrivi codice SQL il programma prepara il codice ASP o PHP per inserire l'SQL all'interno delle tue pagine dinamiche.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Mentre scrivi codice SQL il programma prepara il codice ASP o PHP per inserire l'SQL all'interno delle tue pagine dinamiche.
</p>]]></content:encoded>
	</item>
		<item>
		<title>TimeLimitEraser</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/14</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/14</guid>
		<description><![CDATA[<p>Semplice ed efficace software creato per portare momentaneamente indietro la data di sistema per permettere ai programmi (time trial) scaduti di funzionare ancora.
</p>

<p>
Il programma non funziona con tutti i Trial per il semplice fatto che alcuni di questi utilizzano tecniche avanzate come il blocco alla scadenza del tempo ma per tutti gli altri che funzionano semplicemente sulla data di sistema questo software funziona abbastanza bene.
</p>]]></description>
		<content:encoded><![CDATA[<p>Semplice ed efficace software creato per portare momentaneamente indietro la data di sistema per permettere ai programmi (time trial) scaduti di funzionare ancora.
</p>

<p>
Il programma non funziona con tutti i Trial per il semplice fatto che alcuni di questi utilizzano tecniche avanzate come il blocco alla scadenza del tempo ma per tutti gli altri che funzionano semplicemente sulla data di sistema questo software funziona abbastanza bene.
</p>]]></content:encoded>
	</item>
		<item>
		<title>DatePicker Applet</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/15</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/15</guid>
		<description><![CDATA[<p>
Applet Java che implementa un calendario con la possibilit&agrave; di inserire la data ed estrarla tramite JavaScript.
</p>]]></description>
		<content:encoded><![CDATA[<p>
Applet Java che implementa un calendario con la possibilit&agrave; di inserire la data ed estrarla tramite JavaScript.
</p>]]></content:encoded>
	</item>
		<item>
		<title>SMTP Relay Hunter</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/16</link>
		<pubDate>Mon, 20 Jan 2003 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/16</guid>
		<description><![CDATA[<p>
Software che permette di verificare se un server SMTP supporta il servizio di relay, per utilizzarlo per fare spamming :-)
</p>]]></description>
		<content:encoded><![CDATA[<p>
Software che permette di verificare se un server SMTP supporta il servizio di relay, per utilizzarlo per fare spamming :-)
</p>]]></content:encoded>
	</item>
		<item>
		<title>Il Rinominatore per Mac</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/18</link>
		<pubDate>Mon, 16 Feb 2004 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/18</guid>
		<description><![CDATA[<p>
	Questo software serve a
	rinominare in massa attraverso l'uso del concetto di "trova e sostituisci"
	applicato al nome dei file con la possibilit&agrave; di utilizzare le espressioni
	regolari.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/rinominatore/icona.png" alt="l'icona sul desktop" /></div>

<p>
	Novit&agrave; della versione 1.0:
</p>

<ul>
	<li>Migliore gestione della memoria</li>
	<li>Gestione degli errori</li>
	<li>Aggiunto Drag 'n Drop dei file</li>
	<li>Aggiunto lettore log</li>
</ul>

<div class="centrato">
	<a href="http://www.blackbirdblog.it/images/blog/rinominatore/rinominatore_big.png" title="Clicca per ingrandire">
		<img src="http://www.blackbirdblog.it/images/blog/rinominatore/rinominatore_small.png" alt="Schermata principale" />
	</a>
</div>

<p>
	Rinominatore 1.0 &egrave; distribuito sotto licenza GNU GPL, nel pacchetto
	sono stati inclusi anche i sorgenti.
</p>
]]></description>
		<content:encoded><![CDATA[<p>
	Questo software serve a
	rinominare in massa attraverso l'uso del concetto di "trova e sostituisci"
	applicato al nome dei file con la possibilit&agrave; di utilizzare le espressioni
	regolari.
</p>

<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/rinominatore/icona.png" alt="l'icona sul desktop" /></div>

<p>
	Novit&agrave; della versione 1.0:
</p>

<ul>
	<li>Migliore gestione della memoria</li>
	<li>Gestione degli errori</li>
	<li>Aggiunto Drag 'n Drop dei file</li>
	<li>Aggiunto lettore log</li>
</ul>

<div class="centrato">
	<a href="http://www.blackbirdblog.it/images/blog/rinominatore/rinominatore_big.png" title="Clicca per ingrandire">
		<img src="http://www.blackbirdblog.it/images/blog/rinominatore/rinominatore_small.png" alt="Schermata principale" />
	</a>
</div>

<p>
	Rinominatore 1.0 &egrave; distribuito sotto licenza GNU GPL, nel pacchetto
	sono stati inclusi anche i sorgenti.
</p>
]]></content:encoded>
	</item>
		<item>
		<title>HTML Tidy</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/19</link>
		<pubDate>Mon, 09 Aug 2004 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/19</guid>
		<description><![CDATA[<p>Il famoso programma Tidy, che permette di pulire sorgenti HTML, non ha mai
  avuto una versione grafica Cocoa per Mac OS X. Attualmente esiste il programma
  a linea di comando e una versione ad interfaccia grafica creata con Carbon.
</p>
  
<p>Questa &egrave; la prima versione Cocoa del programma HTML Tidy che permette di usufruire
  del potente framework Cocoa. HTML Tidy funziona come interfaccia grafica
  per la versione a linea di comando.</p>
<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/htmltidy/icona.png" alt="l'icona sul desktop" width="151" height="107" /></div>

<p>
Ecco la prima schermata di questo software:</p>

<div class="centrato">
	<a href="http://www.blackbirdblog.it/images/blog/htmltidy/conf.png" title="Clicca per ingrandire">
		<img src="http://www.blackbirdblog.it/images/blog/htmltidy/conf_small.png" alt="Schermata principale" width="300" height="297" border="0" />
	</a>
</div>

<p>
	Il software &egrave; stato scritto in Objective-C utilizzando il framework Cocoa.
	per lo sviluppo sono stati utilizzati i tools Xcode 1.1 e Interface Builder
	2.4. Il programma &egrave; compatibile con Mac OS X Jaguar o successivi.
</p>

<h2>Change log</h2>
<ul>
	<li><em>v. 1.0</em> - Rilasciata la prima versione con traduzioni in lingua italiana.</li>
	<li><em>v. 1.0.1</em> - Nuovo sistema di gestione del codice che permette di processare anche file molto lunghi e tradotto il menu in inglese.</li>
	<li><em>v. 1.1</em> - Aggiunto il supporto per il drag 'n drop dei file e attivata la voce del menu "Apri"</li>
</ul>]]></description>
		<content:encoded><![CDATA[<p>Il famoso programma Tidy, che permette di pulire sorgenti HTML, non ha mai
  avuto una versione grafica Cocoa per Mac OS X. Attualmente esiste il programma
  a linea di comando e una versione ad interfaccia grafica creata con Carbon.
</p>
  
<p>Questa &egrave; la prima versione Cocoa del programma HTML Tidy che permette di usufruire
  del potente framework Cocoa. HTML Tidy funziona come interfaccia grafica
  per la versione a linea di comando.</p>
<div class="centrato"><img src="http://www.blackbirdblog.it/images/blog/htmltidy/icona.png" alt="l'icona sul desktop" width="151" height="107" /></div>

<p>
Ecco la prima schermata di questo software:</p>

<div class="centrato">
	<a href="http://www.blackbirdblog.it/images/blog/htmltidy/conf.png" title="Clicca per ingrandire">
		<img src="http://www.blackbirdblog.it/images/blog/htmltidy/conf_small.png" alt="Schermata principale" width="300" height="297" border="0" />
	</a>
</div>

<p>
	Il software &egrave; stato scritto in Objective-C utilizzando il framework Cocoa.
	per lo sviluppo sono stati utilizzati i tools Xcode 1.1 e Interface Builder
	2.4. Il programma &egrave; compatibile con Mac OS X Jaguar o successivi.
</p>

<h2>Change log</h2>
<ul>
	<li><em>v. 1.0</em> - Rilasciata la prima versione con traduzioni in lingua italiana.</li>
	<li><em>v. 1.0.1</em> - Nuovo sistema di gestione del codice che permette di processare anche file molto lunghi e tradotto il menu in inglese.</li>
	<li><em>v. 1.1</em> - Aggiunto il supporto per il drag 'n drop dei file e attivata la voce del menu "Apri"</li>
</ul>]]></content:encoded>
	</item>
		<item>
		<title>iTextile</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/20</link>
		<pubDate>Mon, 09 Aug 2004 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/20</guid>
		<description><![CDATA[	<p>Interfaccia grafica per il software <a href="http://dealmeida.net/en/Projects/PyTextile">PyTextile</a> di <a href="mailto:roberto@dealmeida.net">Roberto Antonio Ferreira De Almeida</a> .</p>

	<p>iTextile &#232; un semplice editor per il linguaggio web umano creato da <a href="http://textism.com/about/"  title="Link al sito personale">Dean Allen</a>.</p>

	<div class="centrato"><a href="http://www.blackbirdblog.it/images/blog/itextile.png" title="Zoom"><img src="http://www.blackbirdblog.it/images/blog/itextile_small.png" alt="Screenshot iTextile" /></a></div>

	<p>Queste sono le caratteristiche:</p>

	<ul>
		<li>Applicazione Cocoa con architettura document-based</li>
		<li>Help interno per la sintassi del linguaggio Textile</li>
		<li>Anteprima dell&#8217;XHTML con componente del browser Safari</li>
		<li>Export in formato XHTML</li>
		<li>Tradotto in inglese e italiano</li>
	</ul>

	<p>I requisiti minimi per funzionare sono:</p>

	<ul>
	<li>Safari 1.0 o pi&#249; recente</li>
		<li>Interprete Python (se si ha Mac OS X 10.3 Python &#232; gi&#224; istallato) </li>
	</ul>

	<h2>Change log</h2>
	<ul>
		<li><em>v. 1.0</em> - Rilasciata la prima versione con traduzioni in lingua italiana e inglese.</li>
		<li><em>v. 1.0.1</em> - Corretto baco su generazione html con charset errato.</li>
	</ul>
	
 ]]></description>
		<content:encoded><![CDATA[	<p>Interfaccia grafica per il software <a href="http://dealmeida.net/en/Projects/PyTextile">PyTextile</a> di <a href="mailto:roberto@dealmeida.net">Roberto Antonio Ferreira De Almeida</a> .</p>

	<p>iTextile &#232; un semplice editor per il linguaggio web umano creato da <a href="http://textism.com/about/"  title="Link al sito personale">Dean Allen</a>.</p>

	<div class="centrato"><a href="http://www.blackbirdblog.it/images/blog/itextile.png" title="Zoom"><img src="http://www.blackbirdblog.it/images/blog/itextile_small.png" alt="Screenshot iTextile" /></a></div>

	<p>Queste sono le caratteristiche:</p>

	<ul>
		<li>Applicazione Cocoa con architettura document-based</li>
		<li>Help interno per la sintassi del linguaggio Textile</li>
		<li>Anteprima dell&#8217;XHTML con componente del browser Safari</li>
		<li>Export in formato XHTML</li>
		<li>Tradotto in inglese e italiano</li>
	</ul>

	<p>I requisiti minimi per funzionare sono:</p>

	<ul>
	<li>Safari 1.0 o pi&#249; recente</li>
		<li>Interprete Python (se si ha Mac OS X 10.3 Python &#232; gi&#224; istallato) </li>
	</ul>

	<h2>Change log</h2>
	<ul>
		<li><em>v. 1.0</em> - Rilasciata la prima versione con traduzioni in lingua italiana e inglese.</li>
		<li><em>v. 1.0.1</em> - Corretto baco su generazione html con charset errato.</li>
	</ul>
	
 ]]></content:encoded>
	</item>
		<item>
		<title>WordPress Library</title>
		<link>http://www.blackbirdblog.it/programmazione/progetti/28</link>
		<pubDate>Mon, 02 May 2005 00:00:00 +0000</pubDate>
		<guid>http://www.blackbirdblog.it/programmazione/progetti/28</guid>
		<description><![CDATA[<div class="destra"><p><a href="#english">English version</a></p></div>
<br class="clear-both">

<a name="italiano"></a><h3>Italiano</h3>

<p>WordPress &egrave; ritenuto uno dei pi&ugrave; apprezzati strumenti per la creazione di blog. Questo software &egrave; installato da moltissime persone e come quasi tutti gli strumenti per blog ha un sistema di amministrazione remota basata su XML-RPC.</p>

<p>XML-RPC &egrave; un protocollo per la creazione di WebServices che sfrutta HTTP e fa uso di messaggi XML. WordPress permette di essere amministrato (non completamente) tramite richieste XML.</p>

<p>Questa libreria permette di comandare da remoto una installazione di WordPress. Utilizzare la libreria &egrave; molto semplice e si possono realizzare piccoli script o programmi che permettono di automatizzare la pubblicazione di articoli sul proprio blog/sito gestito con WordPress.</p>

<p>Ecco un piccolo esempio:</p>

<pre class="codice">import wordpresslib
url = &#39;http://www.miosito.it/wordpress/xmlrpc.php&#39;
wp = wordpresslib.WordPressClient(url, &#39;username&#39;, &#39;password&#39;)
wp.selectBlog(0)
post = wordpresslib.WordPressPost()
post.title = &#39;Titolo del post&#39;
post.description = &#39;Testo del post&#39;
idPost = wp.newPost(post, True)</pre>

<p>La libreria &egrave; rilasciata con la licenza GNU <acronym title="Lesser General Public License">LGPL</acronym> ed &egrave; liberamente scaricabile da questo sito.</p>

<p>In questo momento sono disponibili le seguenti azioni:</p>
<ul>
<li>Pubblicare un nuovo post</li>
<li>Modificare un vecchio post</li>
<li>Pubblicare un post in stato <em>Draft</em></li>
<li>Eliminare un post</li>
<li>Cambiare le categorie di un post</li>
<li>Avere informazioni sul blog e sull'utente con cui ci si connette</li>
<li>Caricare file multimediali come immagini e video</li>
<li>Avere la lista dei post pi&ugrave; recenti</li>
<li>Avere l'ultimo post</li>
<li>Avere la lista dei Trackbacks di un post</li>
<li>Avere la lista dei Pingbacks di un post</li>
</ul>

<br />
<a name="english"></a><h3>English</h3>

<p>WordPress is considered one of more appreciate blogs builders. This software 
is installed from many people and like most tools have a 
administration user interface based on XML-RPC protocol.</p>

<p>XML-RPC is a protocol for building WebServices that use HTTP and XML messages.
WordPress can be controlled (not completely) by remote administration 
interface through XML messages.</p>

<p>With this library you can control remotely a WordPress installation. 
Use of library is very simple, you can write a small scripts or full 
applications that allows you to automate publishing of articles on your 
blog/site powered by WordPress.</p>

<p>This is a small example:</p>

<pre class="codice">import wordpresslib
url = &#39;http://www.mysite.com/wordpress/xmlrpc.php&#39;
wp = wordpresslib.WordPressClient(url, &#39;username&#39;, &#39;password&#39;)
wp.selectBlog(0)
post = wordpresslib.WordPressPost()
post.title = &#39;Post title&#39;
post.description = &#39;Post content&#39;
idPost = wp.newPost(post, True)</pre>

<p>Library is released under terms of GNU LGPL and it's available 
for download from this site.</p>

<p>At this time are available these actions:</p>

<ul>
<li>Publishing new post</li>
<li>Editing old post</li>
<li>Publishing draft post</li>
<li>Deleting post</li>
<li>Changing post categories</li>
<li>Getting blog and user informations</li>
<li>Upload multimedia files like movies or photos</li>
<li>Getting last recents post</li>
<li>Getting last post</li>
<li>Getting Trackbacks of post</li>
<li>Getting Pingbacks of post</li>
</ul>]]></description>
		<content:encoded><![CDATA[<div class="destra"><p><a href="#english">English version</a></p></div>
<br class="clear-both">

<a name="italiano"></a><h3>Italiano</h3>

<p>WordPress &egrave; ritenuto uno dei pi&ugrave; apprezzati strumenti per la creazione di blog. Questo software &egrave; installato da moltissime persone e come quasi tutti gli strumenti per blog ha un sistema di amministrazione remota basata su XML-RPC.</p>

<p>XML-RPC &egrave; un protocollo per la creazione di WebServices che sfrutta HTTP e fa uso di messaggi XML. WordPress permette di essere amministrato (non completamente) tramite richieste XML.</p>

<p>Questa libreria permette di comandare da remoto una installazione di WordPress. Utilizzare la libreria &egrave; molto semplice e si possono realizzare piccoli script o programmi che permettono di automatizzare la pubblicazione di articoli sul proprio blog/sito gestito con WordPress.</p>

<p>Ecco un piccolo esempio:</p>

<pre class="codice">import wordpresslib
url = &#39;http://www.miosito.it/wordpress/xmlrpc.php&#39;
wp = wordpresslib.WordPressClient(url, &#39;username&#39;, &#39;password&#39;)
wp.selectBlog(0)
post = wordpresslib.WordPressPost()
post.title = &#39;Titolo del post&#39;
post.description = &#39;Testo del post&#39;
idPost = wp.newPost(post, True)</pre>

<p>La libreria &egrave; rilasciata con la licenza GNU <acronym title="Lesser General Public License">LGPL</acronym> ed &egrave; liberamente scaricabile da questo sito.</p>

<p>In questo momento sono disponibili le seguenti azioni:</p>
<ul>
<li>Pubblicare un nuovo post</li>
<li>Modificare un vecchio post</li>
<li>Pubblicare un post in stato <em>Draft</em></li>
<li>Eliminare un post</li>
<li>Cambiare le categorie di un post</li>
<li>Avere informazioni sul blog e sull'utente con cui ci si connette</li>
<li>Caricare file multimediali come immagini e video</li>
<li>Avere la lista dei post pi&ugrave; recenti</li>
<li>Avere l'ultimo post</li>
<li>Avere la lista dei Trackbacks di un post</li>
<li>Avere la lista dei Pingbacks di un post</li>
</ul>

<br />
<a name="english"></a><h3>English</h3>

<p>WordPress is considered one of more appreciate blogs builders. This software 
is installed from many people and like most tools have a 
administration user interface based on XML-RPC protocol.</p>

<p>XML-RPC is a protocol for building WebServices that use HTTP and XML messages.
WordPress can be controlled (not completely) by remote administration 
interface through XML messages.</p>

<p>With this library you can control remotely a WordPress installation. 
Use of library is very simple, you can write a small scripts or full 
applications that allows you to automate publishing of articles on your 
blog/site powered by WordPress.</p>

<p>This is a small example:</p>

<pre class="codice">import wordpresslib
url = &#39;http://www.mysite.com/wordpress/xmlrpc.php&#39;
wp = wordpresslib.WordPressClient(url, &#39;username&#39;, &#39;password&#39;)
wp.selectBlog(0)
post = wordpresslib.WordPressPost()
post.title = &#39;Post title&#39;
post.description = &#39;Post content&#39;
idPost = wp.newPost(post, True)</pre>

<p>Library is released under terms of GNU LGPL and it's available 
for download from this site.</p>

<p>At this time are available these actions:</p>

<ul>
<li>Publishing new post</li>
<li>Editing old post</li>
<li>Publishing draft post</li>
<li>Deleting post</li>
<li>Changing post categories</li>
<li>Getting blog and user informations</li>
<li>Upload multimedia files like movies or photos</li>
<li>Getting last recents post</li>
<li>Getting last post</li>
<li>Getting Trackbacks of post</li>
<li>Getting Pingbacks of post</li>
</ul>]]></content:encoded>
	</item>
		</channel>
</rss>
