<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>kr1zz &#187; programmazione</title>
	<atom:link href="http://www.cristianonattero.com/blog/tag/programmazione/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cristianonattero.com/blog</link>
	<description>Cristiano Nattero</description>
	<lastBuildDate>Tue, 07 Feb 2012 11:44:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Italian Agile Day 2008</title>
		<link>http://www.cristianonattero.com/blog/2008/11/11/italian-agile-day-2008/</link>
		<comments>http://www.cristianonattero.com/blog/2008/11/11/italian-agile-day-2008/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 13:29:33 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[agile day]]></category>
		<category><![CDATA[conferenza]]></category>
		<category><![CDATA[programmazione]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/?p=669</guid>
		<description><![CDATA[Venerdì 21 novembre si terrà a Bologna la quinta edizione dell&#8217;Italian Agile Day, conferenza gratuita dedicata alle metodologie agili per lo sviluppo e la gestione dei progetti software come eXtreme Programming, SCRUM, Feature Driven Development, DSDM, Crystal e Lean Software Development aderenti all&#8217;Agile Manifesto.
Leggete il programma e convincetevi a venire  
]]></description>
			<content:encoded><![CDATA[<p>Venerdì 21 novembre si terrà a Bologna la quinta edizione dell&#8217;<a title="la conferenza italiana (dal basso) sui metodi agili" href="http://www.agileday.it/">Italian Agile Day</a>, conferenza gratuita dedicata alle <a title="sviluppare meglio, faticare meno" href="http://en.wikipedia.org/wiki/Agile_software_development" target="_blank">metodologie agili</a> per lo sviluppo e la gestione dei progetti software come <a title="forse il più famoso dei metodi agili" href="http://it.wikipedia.org/wiki/Extreme_Programming" target="_blank">eXtreme Programming</a>, <a title="la mischia del rugby" href="http://en.wikipedia.org/wiki/Scrum_(development)">SCRUM</a>, <a href="http://en.wikipedia.org/wiki/Feature_Driven_Development">Feature Driven Development</a>, <a title="Dynamic Systems Development Method" href="http://en.wikipedia.org/wiki/Dynamic_Systems_Development_Method">DSDM</a>, <a title="crystal clear software development" href="http://en.wikipedia.org/wiki/Crystal_Clear_(software_development)">Crystal</a> e <a title="il sistema preso a prestito dalla Toyota" href="http://en.wikipedia.org/wiki/Lean_software_development">Lean Software Development</a> aderenti all&#8217;<a title="i valori fondanti" href="http://agilemanifesto.org/">Agile Manifesto</a>.</p>
<p>Leggete il <a title="il programma dell'agile day" href="http://www.agileday.it/index.php?page=program" target="_blank">programma</a> e convincetevi a venire <img src='http://www.cristianonattero.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/11/11/italian-agile-day-2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Buoni propositi per il futuro</title>
		<link>http://www.cristianonattero.com/blog/2008/09/25/buoni-propositi-per-il-futuro/</link>
		<comments>http://www.cristianonattero.com/blog/2008/09/25/buoni-propositi-per-il-futuro/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 18:11:22 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/?p=600</guid>
		<description><![CDATA[Test Driven Development e Unit Testing
]]></description>
			<content:encoded><![CDATA[<p><a title="lo farò lo farò lo farò giuro che lo farò" href="http://en.wikipedia.org/wiki/Test-driven_development" target="_blank">Test Driven Development</a> e <a title="sì sì lo farò" href="http://en.wikipedia.org/wiki/Unit_testing" target="_blank">Unit Testing</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/09/25/buoni-propositi-per-il-futuro/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>La ballata del programmatore</title>
		<link>http://www.cristianonattero.com/blog/2008/08/30/la-ballata-del-programmatore/</link>
		<comments>http://www.cristianonattero.com/blog/2008/08/30/la-ballata-del-programmatore/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 22:07:41 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[musica]]></category>
		<category><![CDATA[ballata]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[nerd]]></category>
		<category><![CDATA[programmazione]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/?p=498</guid>
		<description><![CDATA[Visto che mi è stata ri-segnalata, stavolta sulla mailing list del GLUG, vi invito ad ascoltare la ballata del programmatore.
Sempre umorismo da nerd  
]]></description>
			<content:encoded><![CDATA[<p>Visto che mi è stata ri-segnalata, stavolta sulla <a title="tutti i dettagli..." href="http://genova.linux.it/Mailing_List" target="_blank">mailing list</a> del <a title="Genuense Linux User Group" href="http://genova.linux.it/" target="_blank">GLUG</a>, vi invito ad ascoltare <a title="è famosa, lo so..." href="http://www.derelitti.com/ballata_del_programmatore/" target="_blank">la ballata del programmatore</a>.</p>
<p>Sempre <a title="come qui..." href="http://cristianonattero.com/blog/2008/08/19/il-veroprogrammatore/"><strong>umorismo da nerd</strong></a> <img src='http://www.cristianonattero.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/08/30/la-ballata-del-programmatore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>il VeroProgrammatore</title>
		<link>http://www.cristianonattero.com/blog/2008/08/19/il-veroprogrammatore/</link>
		<comments>http://www.cristianonattero.com/blog/2008/08/19/il-veroprogrammatore/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 06:23:22 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[immagini]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[nerd]]></category>
		<category><![CDATA[programmazione]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/?p=402</guid>
		<description><![CDATA[Giusto per farci due risate da nerd.
Ah, ho scoperto che esiste un blog del VeroProgrammatore.


(nota 1: se non sei un Vero Programmatore, potresti avere problemi a comprendere alcune affermazioni. Non preoccuparti: non è grave.
nota 2: il fatto che il Vero Programmatore sia scritto &#8220;VeroProgrammatore&#8221; non è un refuso, ma una notazione ungherese. nota 3: il [...]]]></description>
			<content:encoded><![CDATA[<p>Giusto per farci due risate da nerd.<br />
Ah, ho scoperto che esiste un <a title="per soli nerd ;)" href="http://veroprogrammatore.blogspot.com/" target="_blank">blog del VeroProgrammatore</a>.</p>
<p style="text-align: center;"><a title="il VeroProgrammatore secondo xkcd.com" href="http://xkcd.com/378/"><img class="aligncenter" title="RealProgrammers" src="http://imgs.xkcd.com/comics/real_programmers.png" alt="Il VeroProgrammatore secondo xkcd.com" width="518" height="284" /></a></p>
<p><span id="more-402"></span></p>
<p>(nota 1: se non sei un Vero Programmatore, potresti avere problemi a comprendere alcune affermazioni. Non preoccuparti: non è grave.<br />
nota 2: il fatto che il Vero Programmatore sia scritto &#8220;VeroProgrammatore&#8221; non è un refuso, ma una notazione ungherese. nota 3: il &#8220;mangiatore di Quiche&#8221; è l&#8217;antitesi del Vero Programmatore)</p>
<p>* Quando il VeroProgrammatore si ferma a fare benzina a un distributore IP, si meraviglia di non poterlo usare come server DHCP.<br />
* Il VeroProgrammatore quando va a letto esclama sleep (0&#215;7080).<br />
* Il VeroProgrammatore mangia wafer di silicio.<br />
* Il VeroProgrammatore sa che il caso non esiste: è solo uno pseudo-caso precomputato.<br />
* Il VeroProgrammatore non si fida delle mappe di Libero. Se deve spostarsi da una città all&#8217;altra, applica l&#8217;algoritmo di Dijkstra.<br />
* Il VeroProgrammatore può condividere un appartamento su eMule.<br />
* Il VeroProgrammatore può eludere qualsiasi intercettazione telefonica semplicemente dicendo &#8220;slash slash&#8221; all&#8217;inizio della conversazione.<br />
* Il VeroProgrammatore si dichiara alla donna che ama dicendo &#8220;private Object VeroProgrammatore;&#8221;.<br />
* Se il VeroProgrammatore si reca negli Stati Uniti, non ha bisogno di convertire i suoi euro in dollari: esegue un cast implicito.<br />
* Il VeroProgrammatore ha una casetta sull&#8217;albero binario di ricerca.<br />
* Al VeroProgrammatore non piace Il Signore Degli Anelli. Non gli va giù che 8 Hobbit non facciano 1 Hobbyte.<br />
* La casa del Mangiatore di Quiche è orientata a sud. La casa del Vero Programmatore è orientata agli oggetti.<br />
* Il VeroProgrammatore entra in casa dalla porta 8080.<br />
* il VeroProgrammatore va a fare la spesa con una lista concatenata.<br />
* Il VeroProgrammatore può contare fino a 1024 con le dita delle mani.<br />
* Il VeroProgrammatore regala alla sua fidanzata un array di perl(e).<br />
* Il VeroProgrammatore programma le sue vacanze in assembler.<br />
* Quando un VeroProgrammatore da bambino impara a parlare, le sue prime parole non sono &#8220;mamma&#8221; o &#8220;papà&#8221; ma &#8220;Hello, World!&#8221;<br />
* Quando un VeroProgrammatore riceve le carte al tavolo da gioco, se le ordina in mano in O(n log(n)) mosse.<br />
* Quando a uno sportello gli viene chiesto di compilare un modulo, il VeroProgrammatore esclama: &#8220;gcc modulo.c&#8221;.<br />
* Quando da piccolo a scuola il VeroProgrammatore doveva fare il tema &#8220;il mio papà&#8221;, scriveva semplicemente Papà.toString().<br />
* Quando due Veri Programmatori si scontrano, o vanno subito in Buffer Overflow, o si affrontano per mille cicli di clock senza che vi sia un vincitore.<br />
* Nel caso erediti una vecchia casa, il VeroProgrammatore non la ristruttura. La sovrascrive.<br />
* Il VeroProgrammatore può scrivere un metodo che lancia un&#8217;eccezione che conferma la regola.<br />
* Il VeroProgrammatore non porta fuori la spazzatura: non si fida del Garbage Collector. Si limita ad esclamare: &#8220;Rifiuti.Dispose()&#8221; e l&#8217;immondizia si dissolve nel nulla.<br />
* Il VeroProgrammatore non iscrive i suoi figli a scuola. Ne fa comparire i nomi direttamente sul registro di classe utilizzando un puntatore.<br />
* Il VeroProgrammatore ha un grande rispetto per l&#8217;arte. Uno dei più grandi misteri che lo tormentano è come Leonardo sia riuscito a dipingere La Gioconda senza vertex shading.<br />
* Il VeroProgrammatore ha sulla parete di casa sua un quadretto con la scritta &#8220;127.0.0.1 dolce 127.0.0.1&#8243;.<br />
* Un VeroProgrammatore non usa alcun firewall. Si accorge che qualcuno è entrato nel suo computer perché il suo personaggio di Ultima Online skippa un frame quando attacca.<br />
* Il VeroProgrammatore utilizza nomi di variabile tipo _abr, idGnr, o più semplicemente a. Se in un listato scritto da un VeroProgrammatore trovate una variabile chiamata stipendioImpiegato, probabilmente contiene il numero di isotopi radioattivi di un reattore nucleare (il VeroProgrammatore ha riciclato il codice di un suo vecchio programma di contabilità).<br />
* Un test per verificare se qualcuno è un VeroProgrammatore consiste nel legarlo, imbavagliarlo e chiuderlo a chiave in una stanza vuota da solo con un computer preassemblato e non overcloccato, senza alcun utensile o strumento. Se entro 30 secondi non sta uscendo del fumo da sotto la porta, il soggetto *non* è un VeroProgrammatore.<br />
* Il VeroProgrammatore chiama qualsiasi interfaccia più complessa di una shell a riga di comando con un unico nome: &#8220;spreco di RAM&#8221;.<br />
* Il VeroProgrammatore non si ferma col rosso. Si ferma col #FF0000.<br />
* Un VeroProgrammatore finisce tutte le sue frasi con un punto e virgola;&#8230;anche quando parla;<br />
* Il Mangiatore di Quiche può cancellare la cache del suo browser. Il VeroProgrammatore puo&#8217; cancellare la cache di Google.<br />
* Nel caso perda le chiavi di un lucchetto, il VeroProgrammatore si cimenta in un lungo ed estenuante brute force.<br />
* Il Mangiatore di Quiche va all&#8217;Ikea, compra una scrivania, la porta a casa e la monta. Al VeroProgrammatore invece basta esclamare: &#8220;apt-get install scrivania&#8221; perché essa appaia in tutto il suo splendore nello studio, pronta all&#8217;uso (e con una risma di fogli bianchi nel primo cassetto).<br />
* Per il VeroProgrammatore il concetto di interfaccia grafica è rappresentato da una serie di 1 e 0 ben indentati su di un monitor monocromatico.<br />
* Se proprio viene costretto a commentare il proprio codice, il Vero Programmatore disseminerà casualmente nel proprio listato qualche ovvia descrizione dei metodi più semplici. Le parti di codice indispensabili al funzionamento del sofware saranno invece precedute da un:<br />
// Non mi aspetto che tu capisca questo<br />
* Quando il VeroProgrammatore viene invitato ad una festa, può scoprire quali ragazze sono single e quali no semplicemente esclamando: &#8220;ls -l&#8221;.<br />
* Se il suo bucato non è abbastanza morbido, il VeroProgrammatore ricompila il Vernel.<br />
* Il VeroProgrammatore ha gli Gnome da giardino.<br />
* La VeraProgrammatrice si preoccupa quando ha un ritardo nel ciclo for.<br />
* Il VeroProgrammatore ricorda con affetto il suo vecchio Spectrum. Stava giocando contro un certo Joshua a Guerra Termonucleare Globale, quando il processore si è fuso. Era il 9 novembre 1989.<br />
* Qualcuno sostiene che il VeroProgrammatore tiene sempre i backup da quando ha dovuto riscrivere 327000 linee di assembler 68020. In realtà il VeroProgrammatore non fa alcun backup: è più veloce riscrivere il software a memoria che ricordarsi dove ha messo i nastri o i cd dei backup.<br />
* Una recente teoria sostiene che gli universi paralleli esistono: li fa girare il VeroProgrammatore con VMWare.<br />
* Il VeroProgrammatore non usa strumenti di debug o checkpoint. Può leggere il valore di una variabile durante l&#8217;esecuzione del suo programma semplicemente osservando attentamente i banchi di RAM del computer su cui lavora.<br />
* Se non conosce il significato di una parola, il Mangiatore di Quiche consulta un dizionario. Se non conosce il significato di una parola, il VeroProgrammatore consulta una tabella di hash.<br />
* Il VeroProgrammatore può formattare un disco in vinile.<br />
* Il VeroProgrammatore può scacciare le zanzare con il RAID 5.<br />
* Se ha bisogno di parlare con qualche autorità o personaggio importante, il Vero Programmatore non necessita di permessi o lasciapassare speciali: gli basta esclamare &#8220;chmod 777&#8243;.<br />
* Se il VeroProgrammatore non riesce a ritrovare una cravatta rossa nell&#8217;armadio, invece di cercarla dice: &#8220;$ cat armadio | grep cravatta | grep rossa&#8221;.<br />
* Il VeroProgrammatore, per sorridere, inclina la testa 90° a sinistra.<br />
* Il VeroProgrammatore ha messo un filtro antispam nella cassetta della posta condominale.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/08/19/il-veroprogrammatore/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Sviluppo Agile a Genova</title>
		<link>http://www.cristianonattero.com/blog/2008/03/06/sviluppo-agile-a-genova/</link>
		<comments>http://www.cristianonattero.com/blog/2008/03/06/sviluppo-agile-a-genova/#comments</comments>
		<pubDate>Thu, 06 Mar 2008 09:14:45 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[XPUG]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/2008/03/06/sviluppo-agile-a-genova/</guid>
		<description><![CDATA[Da un po&#8217; di tempo mi sono avvicinato alle metodologie agili per la produzione del software e ho proprio tanto da imparare! Per fortuna a Genova si sta consolidando un gruppo di appassionati, lo XPUG Genova (eXtreme Programming User Group) grazie ai quali ho già seguito un bel po&#8217; di seminari interessanti. Per chi volesse [...]]]></description>
			<content:encoded><![CDATA[<p>Da un po&#8217; di tempo mi sono avvicinato alle <strong>metodologie agili</strong> per la produzione del <strong>software</strong> e ho proprio tanto da imparare! Per fortuna a Genova si sta consolidando un gruppo di appassionati, lo <strong>XPUG </strong>Genova (<strong>eXtreme Programming</strong> User Group) grazie ai quali ho già seguito un bel po&#8217; di seminari interessanti. Per chi volesse partecipare ci sono un <a title="XPUG Genova" href="http://www.xpgenova.org/">wiki</a> (non aggiornatissimo) ed una <a title="lo so, yahoo è un po' menoso..." href="http://groups.yahoo.com/group/genova-xpug">mailing list</a> che merita davvero l&#8217;iscrizione!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/03/06/sviluppo-agile-a-genova/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>refactoring 2.0</title>
		<link>http://www.cristianonattero.com/blog/2008/03/03/refactoring-20/</link>
		<comments>http://www.cristianonattero.com/blog/2008/03/03/refactoring-20/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 10:13:23 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[Michael C. Feathers]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/2008/03/03/refactoring-20/</guid>
		<description><![CDATA[Il refactoring del codice è un cambiamento che ne aumenta la leggibilità senza cambiarne il funzionamento. Fare refactoring è importantissimo, Michael C. Feathers dice: &#8220;Remember, code is your house, you have to live in it.&#8221;
Per chi come me vuole imparare a farlo meglio può essere utile http://refactormycode.com/, un sito in cui è possibile pubblicare (un [...]]]></description>
			<content:encoded><![CDATA[<p>Il <a title="Code Refactoring" href="http://en.wikipedia.org/wiki/Code_refactoring">refactoring del codice</a> è un cambiamento che ne aumenta la leggibilità senza cambiarne il funzionamento. <strong>Fare refactoring è importantissimo</strong>, <a title="il suo libro è fichissimo!" href="http://www.michaelfeathers.com/">Michael C. Feathers</a> dice: &#8220;<cite>Remember, code is your house, you have to live in it</cite>.&#8221;</p>
<p>Per chi come me vuole imparare a farlo meglio può essere utile <a title="refactor my code" href="http://refactormycode.com/">http://refactormycode.com/</a>, un sito in cui è possibile pubblicare (un estratto di) codice  in tantissimi linguaggi diversi e chiedere aiuto per farne il refactoring.</p>
<p>Molto agile, molto 2.0 <img src='http://www.cristianonattero.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/03/03/refactoring-20/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>double-check your damn pointers, okay?</title>
		<link>http://www.cristianonattero.com/blog/2008/02/13/double-check-your-damn-pointers-okay/</link>
		<comments>http://www.cristianonattero.com/blog/2008/02/13/double-check-your-damn-pointers-okay/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 08:42:40 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[me]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[memory leak]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[tesi]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/2008/02/13/double-check-your-damn-pointers-okay/</guid>
		<description><![CDATA[Yesterday, working on my thesis, I felt like I died and resurrected more than once in a few hours. Trust me, I&#8217;m beginning to understand the way the compiler feels  
Jokes apart, the following C++ code contains a bug similar to the one I found: can you spot it? (please forgive the bad indent [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, working on my thesis, I felt like I died and resurrected more than once in a few hours. Trust me, I&#8217;m beginning to understand the <a title="see it on xkcd" href="http://xkcd.com/371/">way the compiler feels</a> <img src='http://www.cristianonattero.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Jokes apart, the following C++ code contains a bug similar to the one I found: can you spot it? (please forgive the bad indent )</p>
<p><code>void calledMethod( some_class *object )<br />
{<br />
arg = doSomething();<br />
delete object;<br />
object = new some_class( arg );<br />
}</code></p>
<p><code>void callerMethod()<br />
{<br />
[...]<br />
calledMethod( anObject );<br />
anObject.doSomethingElse();<br />
[...]<br />
}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/02/13/double-check-your-damn-pointers-okay/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>funziona?</title>
		<link>http://www.cristianonattero.com/blog/2008/02/04/funziona/</link>
		<comments>http://www.cristianonattero.com/blog/2008/02/04/funziona/#comments</comments>
		<pubDate>Mon, 04 Feb 2008 23:02:14 +0000</pubDate>
		<dc:creator>kr1zz</dc:creator>
				<category><![CDATA[geek]]></category>
		<category><![CDATA[me]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[DARP]]></category>
		<category><![CDATA[Dial-A-Ride]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[metaeuristica]]></category>
		<category><![CDATA[nerd]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[ricerca operativa]]></category>
		<category><![CDATA[solver]]></category>
		<category><![CDATA[tesi]]></category>

		<guid isPermaLink="false">http://cristianonattero.com/blog/2008/02/04/funziona/</guid>
		<description><![CDATA[Non vorrei cantare vittoria prima del tempo, però da quando ha iniziato a funzionare la mia tesi ha continuato a dare segnali sempre più incoraggianti.
Per onorare il titolo di nerd conferitami ufficialmente oggi da Fra, ecco un riassunto, un po&#8217; hardcore, sui primi esperimenti col mio solver metaeuristico per il Dial-A-Ride Problem.


Primo: la soluzione iniziale [...]]]></description>
			<content:encoded><![CDATA[<p>Non vorrei cantare vittoria prima del tempo, però da quando ha iniziato a funzionare la mia tesi ha continuato a dare segnali sempre più incoraggianti.</p>
<p>Per onorare il titolo di <strong>nerd</strong> conferitami ufficialmente oggi da Fra, ecco un riassunto, un po&#8217; hardcore, sui primi esperimenti col mio <strong>solver metaeuristico</strong> per il <strong>Dial-A-Ride Problem</strong>.</p>
<p><span id="more-17"></span></p>
<ul>
<li>Primo: la soluzione iniziale è una soluzione di tutto rispetto, non solo è ammissibile ma sembrerebbe sensata.</li>
<li>Secondo: l&#8217;euristica costruttiva che uso per generarla è parente di quella usata dal programma che il mio andrà a sostituire, le soluzioni dovrebbero quindi essere paragonabili. Sul dataset su cui ci stiamo confrontando il solver vecchio impiega circa un&#8217;ora, il mio circa trenta secondi. Merito dell&#8217;algoritmo ma anche merito del C++, voglio vedere chi mi dice che non si usa più <img src='http://www.cristianonattero.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
<li>Terzo: venerdì, prima di andare a casa, abbiamo fatto partire un run da 25mila iterazioni. Ne è uscito un log da ben 18MB! Volevo rimandare a domattina ma non ho resistito: ho appena finito di esaminarlo. È una lettura interessante solo per gli amanti del genere, e forse per chi soffre di insonna: è terribilmente grezzo, pieno di informazioni sulla memoria. C&#8217;è ancora un piccolo memory leak, ma non grave. Il programma è arrivato in fondo senza schiantarsi, ed è  già un risultato rassicurante. Inoltre ha lasciato non servite solo 9 richieste su 676. Il costo delle soluzioni è sceso di quasi due ordini di grandezza: difficile dire ora se sia tanto o poco, senza risultati di riferimento.</li>
</ul>
<p>Da domani sera dovrei riuscire a produrre un output più dettagliato, magari riesco a pubblicare anche qualche grafico. Nel frattempo vorrei:</p>
<ol>
<li>misurare le soluzioni trovate dal solver vecchio usando il mio modello (penso di non dover scrivere ancora molto codice);</li>
<li>vedere su un GIS come sono fatte queste soluzioni e confrontare i percorsi (qui il mio ruolo è marginale)</li>
<li>confrontare lo scheduling delle richieste su una timeline.</li>
</ol>
<p>Direi che a quel punto ci sarà materiale a sufficienza per una bella tesi. Tardi, ma un po&#8217; di soddisfazione forse arriva.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cristianonattero.com/blog/2008/02/04/funziona/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

