lunedì 1 ottobre 2007

Ottobre!

Porco mondo è già ottobre. Cazzo come passa il tempo.

Da agosto ho ridotto drasticamente le ore di lavoro (o meglio, lavoro di più da casa) eppure non sono riuscito ancora a concludere un cazzo con l'università. Sono in ballo con 3 esami sui 4 che mi mancano (con tesi già iniziata). Fine prevista: aprile.
E fin qua non ci sarebbe nulla di nuovo. Se non fosse che sto avendo dei contatti con una grossa ditta di sicurezza informatica che fa pentest, forensic e altre robe estremamente interessanti.
Loro di default fanno contratto full-time a tempo indeterminato. Un contratto che al momento non mi posso permettere.
Ho iniziato a lavorare con partita iva per portare avanti in modo proficuo l'università, potendomi permettere di lavorare più o meno giorni a seconda delle sessioni di esame. Ed ora arriva questa grossa opportunità che implica anche una grossa scelta.
Ed io sono davvero indeciso.. ed intanto è già ottobre

mercoledì 26 settembre 2007

Folding@Home vs Rosetta@Home

Dopo aver scritto un post riguardante la notizia del raggiungimento da parte di Folding@Home della potenza di calcolo strabiliante di un petaflops, ho letto il commento di XIM che invece supporta il progetto Rosetta@Home, nato nell'ambito boinc.
Sinceramente non ricordo il motivo per cui decisi di supportare il progetto FAH (pagina del mio account). E' passato diverso tempo..
Comunque, ho fatto un po' di ricerche, in quanto ero all'oscuro dell'esistenza del progetto Rosetta, ed il risultato è stato interessante.
Il progetto pare essere niente male e, forse, avrà presto il sostegno della Microsoft, incarnato in un client per xbox360. Che strano senso dell'umorismo che hanno a Redmond.. "google e sony supportano FAH? e allora noi supportiamo Rosetta!". Beh, comunque a parte queste cose secondarie, pasto di seguito il contenuto del mio commento di risposta a XIM:
Dunque, sono due progetti nello stesso ambito (capire l’evoluzione e la possibile risoluzione di malattie) partendo da punti di vista diversi. FAH cerca di capire come si avvolgono le proteine e come questo possa portare allo sviluppo di certe malattie dovute all’errato avvolgimento delle proteine, quali, giusto per citarne due largamente conosciute, l’Alzheimer e BSE (mucca pazza, per intenderci). Mentre, partendo dalle sequenze di amminoacidi, Rosetta cerca di prevedere la struttura finale delle proteine saltando praticamente la fase dell’avvolgimento. Questo può aiutare gli scienziati a cercare cure per malattie quali l’HIV, l’Alzheimer, il cancro ed altro.

Comunque, per chi avesse cicli di idle da sfruttare, credo che i progetti si equivalgano, l'importante è cercare di dare una mano a risolvere questi problemi computazionalmente pesanti :)

e poi se volete joinare il team di arabianfenix (da cui aspide è uscito da quando ha formattato il pc diverso tempo fa..), in FAH basta mettere il team 48813

lunedì 24 settembre 2007

I polli ed il campo magnetico

Singolare esperimento all'università di Francoforte che, per quanto sia un serissimo esperimento fisico, non ha mancato di farmi sorridere.

Ingredienti:
- un numero vario di pulcini
- una palla rossa
- 4 schermi protettivi
- il necessario per creare un campo magnetico artificiale

Ricetta: prendere alcuni pulcini appena nati e metterli in una grossa scatola. Addestrarli fin da piccoli per far credere loro che la madre sia la palla rossa. Posizionare i quattro pannelli verso i punti cardinali, in modo che la palla possa essere nascosta dietro al pannello orientato a nord rispetto al centro della scatola. Abituare i pulcini a credere che la mamma (cioè la palla) sia sempre dietro il pannello disposto a nord.
Dopo qualche tempo, investire il tutto con un campo magentico in direzione est (od altro, a scelta.. ovviamente diverso da nord ...).

Ora i polli cercheranno la madre verso est.
Lasciare raffreddare e servire freddo

Link

mercoledì 19 settembre 2007

liferea feed reader

Come detto nel post precedente, ho iniziato ad usare liferea, un feed reader installato di default in debian testing.

Sinceramente la mia esperienza con i feed reader è davvero limitata.. dopo aver provato ad usare mozilla thunderbird (icedove per gli amici debianisti) come aggregatore ed essere rimasto abbastanza deluso, mi ero rassegnato all'idea di utilizzare solo i live bookmarks di firefox.

Ma trovarsi un reader già installato mi ha spinto a provare ad utilizzarlo. Devo dire che mi sono trovato bene. Probabilmente ce ne sono di più completi, ma in liferea ho trovato un buon compromesso tra funzionalità ed usabilità. Senza mangiarti troppa memoria, tra l'altro.

L'esportazione dell'elenco dei feed avviene in un formato xml (c'erano dubbi, forse? :) ) detto OPML, un formato particolarmente semplice, perchè alla fine si deve gestire un elenco di link (eventualmente organizzato in cartelle) e nulla più. Un formato semplice, leggibile e lineare, a differenza di quello usato per l'esportazione dei bookmark in firefox, che sinceramente mi sembra fatto un po' male.

Ovviamente la pagina di OPML su it.wikipedia non c'è ancora, ma la farò presto..

giovedì 6 settembre 2007

La Fenice è risorta: voglio un bug!!

La Fenice è risorta. Ufficialmente ArabianFenix è tornato online, dopo qualche mese di chiusura, causa elevato numero di impegni miei e di Aspide in primis, più tutti i ragazzi che si sono affiancati per qualche periodo a noi.

Uno delle prime news che avevo scritto era un bug su Firefox abbastanza pericoloso. E anche questa volta avrei voluto aprire il sito con un bel bug taggato 5/5 (extremely critical) su Secunia. Beh, niente da fare, finora..

Peccato, cmq una prima versione dei feed è stata rilasciata. E' un'idea che mi venne un sacco di tempo fa: visto che usavo (e tutt'ora uso) tantissimo i feed su firefox, ho pensato che sarebbe stato davvero utile ai nostri utenti poter scaricare un elenco di feed selezionati da noi, già pronti ed impacchettati.
Con questa versione ho cominciato a spostarmi verso una direzione ben precisa: categorizzare ancora meglio i feed, in modo tale da metterne a disposizione una quantità maggiore senza appesantire troppo il menù.. boh, speriamo di avere un po' di feedback.
Tra l'altro dopo aver installato ex-novo debian lenny, mi sono ritrovato un aggregatore di nome liferea, che non pare niente male.. chissà che non mi metta ad adattare i feed anche per questo Feed Reader per Gnome..

venerdì 31 agosto 2007

Funzionamento CDT part1

L'acronimo CDT sta per C/C++ Development Tools. E' la plugin di eclipse per lo sviluppo in ambiente C.

La parte sicuramente più importante è il DOM parser che si passa in rassegna tutto il codice dell'utente e ne effettua un'analisi approfondita da cui estrae una struttura dati ad uso interno, indicizzata e facilmente parsabile dal resto della plugin: AST (Abstract Syntax Tree). Questa è un'operazione assolutamente standard per i parser.
La seconda operazione importante effettuata dal DOM parser è creare una seconda struttura dati (credo sia una semplice lista contenente oggetti speciali chiamati "completion nodes") che sarà utilizzata per le proposte di completamento (il cosiddetto "content assist").

Il motivo di tutto ciò è, prevalentemente, l'ottimizzazione. Infatti indicizzare la struttura AST associata al codice sorgente è un'operazione meno pesante che indicizzare _il_ codice sorgente.

Il processo di parsing, in generale, si divide in tre parti: analisi lessicale, sintattica e semantica.
Nel primo si controlla la correttezza dei termini (token) usati nelle espressioni, nella seconda la correttezza delle espressioni formate dall'unione dei token mentre nella fase finale si effettuano controlli più ad alto livello (a livello semantico, per esempio si controlla se sono rispettati i tipi delle variabili, nel dettaglio se una variabile è un intero non si può assegnargli un valore stringa, anche se formalmente sarebbe corretto, cosa che eviterebbe quindi di generare errore ai passaggi precedenti)

Nel secondo post approfondirò la parte di preprocessing

giovedì 23 agosto 2007

Mawk, sine e lo spam sui commenti

Da parecchio tempo ormai il sito mawk è tempestato di spam sui commenti, ma mentre prima avveniva abbastanza sporadicamente, ora è un fenomeno quasi continuo.
La piattaforma su cui si basa il sito è sine cms, un progetto di 2 ragazzi italiani (di cui uno se non sbaglio girava dalle parti di hacker school). Sinceramente non ho usato questo cms a sufficienza da poterne dare un giudizio critico. Per cui mi limiterò all'ambito del problema.

Secondo me, prima di tutto, c'è qualcosa da controllare a basso livello: per esempio se si inserisce un nuovo commento cambiando il parametro hidden dell'id del post, riesco ad inserire un commento su un articolo inesistente, per prova infatti ho inserito come id del post 999. Il risultato è che è stato pubblicato tranquillamente in homepage, tra gli ultimi commenti. Un vincolo referenziale di chiave esterna eliminerebbe rapidamente questo problema delegandone la gestione al dbms, ma basterebbe anche effettuare una query sulla tabella delle news prima di accettare di inserire il commento.

Guardando la struttura del database, si nota una cosa che non mi piace molto: nella tabella dei commenti non viene loggato l'indirizzo ip. Bisognerebbe prima di tutto sapere se c'è una volontà precisa dietro questa scelta o solo una svista, ma il sito ufficiale sine è giù da mooolto tempo. Beh, cmq il modo più efficace per controllare che uno stesso utente non stia spammando è fare dei controlli sul database prima dell'inserimento della nuova entry: controllare se quell'ip ha lasciato un commento da poco tempo (poi c'è il problema di quantificare, ma vabbè)

Un'altra soluzione sarebbe tenere traccia nella sessione utente, ma è aggirabile rapidamente, cancellando i cookie di sessione, ma si può iniziare ad implementare questa per comodità e rapidità di esecuzione. E' sicuramente da valutare.
Sarebbe anche interessante capire con che UserAgent si presentano gli spammer. Su arabianfenix avevo implementato un metodo per bloccare l'inserimento di contenuti da parte di utenti senza javascript attivato, contando di intercettare e bloccare così il software dello spammer. Ma evidentemente in quel caso era un utente particolarmente simpatico che arrivava lì col proprio browser e aggiungeva un commento con decine di link.. che fondamentalmente non può essere bloccato. Invece nel caso di mawk pare più una cosa automatica, anche perchè vengono inseriti una sessantina di commenti a botta, per cui una soluzione di check prima di inserire è assolutamente da introdurre.

Il tutto per tentare di porre limiti all'attività degli spammer, prima di cominciare a mettere gli odiosissimi captcha..

lunedì 13 agosto 2007

Smanettare è un po' come rinascere

Finalmente sono riuscito a ritagliarmi un po' di tempo tra lavoro, tesi, donna, dipendenza da tribes, ripartenza di arabianfenix ed altri impegni minori per smanettare un attimo.

Cazzo mi sento davvero sollevato, è da tantissimo che non mi dedicavo alla sala macchine. La premessa è che in una delle ditte per cui lavoro, dopo aver virtualizzato tutti i computer su due rack fisici messi in farm, abbiamo letteralmente smantellato la sala macchine.

Sono riuscito a portare a casa diversi componenti a prezzi davvero ottimi, e non è detto che la campagna acquisti sia già finita. Per evidenziare la mia passione per il networking, tra le altre cose ora ho 2 ethernet pci, una pci- 802.11g ed un simpatico switch.

Fondamentalmente l'idea è di aggiungere un'interfaccia di rete al barebone su cui gira xen: utilizzare eth0 per la vpn ed eth1 per xen. Così dovrei risolvere i problemi che ho lasciato in sospeso un sacco di tempo fa. Spero così di poter dare accesso dall'esterno via vpn a castor e pollux, le mie debian virtuali :)

Ne approfitto anche per una ridistribuzione più logica delle varie prese di corrente.. non vorrei trovarmi a rimpiangere di non avere in zona un estintore..

venerdì 3 agosto 2007

Le ceneri non sono male, ma risorgere è meglio

Con questo titolo, ci apprestiamo a ricominciare i lavori su ArabianFenix . E' un titolo che mi è venuto senza pensarci troppo, giusto per sostituire il "test" che avevamo prima, eppure mi piace. Forse rende l'idea dello stile ironico e delle posizioni controverse del sito o forse no.. ;)

Da qualche giorno abbiamo cominciato a prendere confidenza con la nuova piattaforma (wordpress) e a sistemare il tema. Abbiamo cercato di sistemare un po' i post con i tag e tutto il resto, ma il lavoro da fare è ancora molto.

Per prima cosa il forum, e poi chissà .. forse trasferiamo anche il dominio su altri lidi..

E' tutto in divenire, ma fa piacere tornare online :)

Soprattutto contando che torna anche il terzo del triumvirato storico di Hacker School :) :)

giovedì 2 agosto 2007

Ma per piacere, Sir John!

Leggevo proprio oggi sul giornale del j'accuse di Sir Elton John verso Internet. Sicuramente una provocazione. E mi aggiungo al coro di reazioni:

Con una serie di luoghi comuni e di frasi già sentite, egli si scaglia contro internet, che non permette la socializzazione. Lui pare essere pubblicamente un tecnofobo, ben lontano quindi dal mondo in cui, in così tanti, ci aggiriamo quotidianamente. E già questo è un segnale che forse non è la persona più adatta a dire una cosa del genere.

Certo, trovo interessante l'idea dell'esperimento di spegnere internet per 5 anni e vedere cosa capita. Chissà. Probabilmente avrei una crisi di astinenza. Certo, so di avere una forma di dipendenza, ma non voglio guarire, per cui sono fermamente contrario a questo ipotetico esperimento. Tanto più che Internet ci permette di tenerci in contatto con le persone, oppure il proliferare di msn et similia è dovuto ad altro?

Poi, come al solito, dipende da come le persone fanno uso di questo strumento. Gli eccessi non sono mai un bene, in nulla.

Ma se la mancanza di socializzazione fosse dovuta solo ad Internet, io conoscerei quasi tutti i pendolari della mia zona.. d'altra parte in treno non c'è segnale, per cui dovremmo tutti chiacchierare amabilmente, no? Eppure la gente magari dorme, legge o peggio, ascolta la musica!! Allora via la musica per 5 anni, vietate autoradio, lettori, walkman, radioline e tutto il resto!

E tu che farai, john, il panettiere? (senza offesa per la categoria, ovviamente)