Categories
lifehack tecnologia

MyBook World Edition II, il NAS che ho sempre sognato!

NAS - vista frontale Alla fine il NAS, adatto alle mie esigenze, che ho cercato per anni è stato trovato e comprato. Si tratta del MyBook World Edition II della Western Digital, un gioiellino da 500Gb in Raid 1 (o alternativamente 1Tb in Raid 0) dotato di una porta Gigabit per massimizzare la velocità di trasferimento dei file.

Il NAS in questione funziona grazie ad un sistema linux embedded che sfrutta Samba come protocollo di condivisione dati e gestibile tramite una comoda interfaccia web, grazie alla quale è possibile creare utenti, directory private e pubbliche e gestirne i relativi permessi di scritttura.

Altra cosa veramente interessante di questo storage è la presenza di una porta USB nel retro del case che permette di collegare e condividere ulteriori hd esterni a patto che questi ultimi abbiano un filesystem supportato dal sistema (per ora ho provato con dischi FAT32, ma appena posso provo con NTFS e EXT3).

Il MyBook l’ho messo in funzione in pochi minuti rendendolo attivo tra i vari pc sparsi per la casa, inoltre in Raid 1 le performance sono ottime sia in lettura che in scrittura, merito anche dei dischi da 10.000 7200 RPM.

Unico difetto è la rumorosità delle ventole, non proprio silenziosissime anche se al livello di un vecchio case esterno da 3” 1/2 che uso per uno degli hd di backup, ma comunque sicuramente accettabile visto l’alto tasso di mortalità degli hd esterni over 200Gb senza ventola di raffreddamento.

ciuaz

Categories
php

Visualizzare le categorie “figlie” in WordPress

Uno dei più stupidi aggiornamenti fatti alle API di WordPress, imho, è stato quello che ha eliminato la possibilità di visualizzare le categorie figlie di una predefinita categoria, senza visualizzare anche quelle “nipoti”.

Infatti usando la comune funzione di WordPress chiamata wp_list_categories() utilizzando il filtro child_of vengono visualizzati tutti i discendenti della categoria indicata e non solo quelli di primo livello, cosa decisamente scomoda se usiamo costrutti molto nidificati.

Per rimediare a questa mancanza ultimamente utilizzo all’interno del file functions.php dei temi che produco il seguente codice che mima il risultato della funzione ufficiale del blog engine, limitandosi però al primo livello di discendenza.

Nulla di trascendentale, insomma, ma sicuramente molto comodo per creare menù contestuali.

[code]
/**
* @param $catID int ID della categoria genitrice
* @param $order string ASC o DESC
* @return $output string lista di link a categorie
*/
function get_category_children_only($catID=0,$order = ‘ASC’) {
global $wpdb;
global $cat;

$output = ”;

if (strtoupper($order) != ‘DESC’) $order = ‘ASC’;

$query = “select t.term_id as term_ids, t.name from $wpdb->terms t, $wpdb->term_taxonomy tx where t.term_id = tx.term_id and tx.taxonomy = ‘category’ and tx.parent = ‘”.intval($catID).”‘ group by t.term_id order by t.term_id $order”;

$results = $wpdb->get_results($query);
foreach ($results as $result) {

if ($cat == $result->term_ids) $selected = ‘ current-cat’;
else $selected = ”;

$output .= ‘

  • term_ids).'” title=”visualizza articoli della categoria ‘.$result->name.'”>’.$result->name.’
  • ‘;

    }

    return $output;
    }
    [/code]

    ciuaz

    Categories
    lifehack tecnologia

    Tanti auguri C64!

    Oggi compie 25 anni il mitico Commodore 64, amico e compagno di infanzia più volte rispolverato durante le torride estati di qualche anno fa per finire giochi abbandonati a metà, come Zack McKracken, Spiderman the (text)Adventure e Zork.

    Adesso riposa, in un baule in cantina, insieme al fido drive 1451-II, un paio di registratori (con azimut diverso per leggere giochi originali e copiati) e una marea di floppy e cassette.

    Chissà se un giorno avrò una casa che mi permetterà di allestire il mio tanto desiderato angolo dei cimeli.

    Intanto mi accontento di usare come suonerie e sveglie del cellulare qualche pezzo storico come la colonna sonora di 1942, Last Ninja e Turrican prese dal mitico C64Remix!

    ciuaz

    Categories
    eventi php

    phpDay 2008, il GrUSP riparte!

    Riprende ufficialmente l’organizzazione del phpDay 2008! Da oggi è infatti possibile registrarsi come relatori, sponsor o i semplici visitatori.

    Se siete quindi interessati a partecipare all’evento che si terrà a fine maggio nella Riviera Romagnola (molto probabilmente Rimini) vi chiediamo fin da subito di confermare la vostra presenza, in questo modo il GrUSP potrà prenotare una struttura adeguata alle effettive necessità e ricontattarvi per offerte e sconti per gli alloggi nei pressi della sede della conferenza.

    Maggiori informazioni sul phpDay verranno pubblicate nei prossimi giorni sul sito ufficiale dell’evento.

    Iscrivetevi numerosi!

    ciuaz

    Categories
    php tecnologia webdev

    Sviluppo Agile e conferenze agili

    Dilbert e lo sviluppo agile

    Venerdì sono stato all’AgileDay, manifestazione incentrata sullo sviluppo agile e sulle metodologie su cui è fondato.

    La giornata è stata molto interessante, sia per le persone incontrate che per la qualità degli interventi (interessante la modalità openspace dove sembrava di stare più ad un barCamp che ad una conferenza canonica).

    Ma la cosa che più mi è piaciuta è che, riferendosi alle metodologie agili, non si è mai parlato di questa o quella tecnologia, ma si è sempre fatto un discorso incentrato sulle esigenze di chi sviluppa e sulla relativa crescita personale.

    Insomma, una modalità di lavoro più human oriented rispetto al classico approcio waterfall dove è il software al centro di tutto ed una volta deciso di che morte morire, si muore per rispettare scadenze nonostante i cambi di scope dei clienti.

    Fortunatamente però, le metodologie agili stanno sempre prendendo più piede nelle piccole aziende italiane che operano nel web, soprattutto in quelle dove tutto è sempre in costante beta (nella più totale conformità al web 2.0), e fortunatamente ai principi dell’agile manifesto e delle pratiche dell’XP programming si stanno affacciando gli sviluppatori di linguaggi differenti da java (Ruby on Rails, Django e Symfony sono 3 esempi di framework agili basati rispettivamente su Ruby, Python e PHP).

    Vedremo quindi una evoluzione dell’approcio allo sviluppo delle software house italiane? Speriamo.

    Per ora io darò il mio piccolo aiuto alla diffusione di tali pratiche organizzando qualche “workshop agile” durante il prossimo phpDay… ;)

    ciuaz

    Categories
    lifehack tecnologia

    E61i ed SMTP per l’invio della posta

    Dopo una settimana di sclero e di tentativi ho scoperto un fastidioso bug di Symbian che non permette di inviare email, tramite l’SMTP del proprio server di posta, con l’E61i (ma anche con l’E65 ed N95) se è attivata l’opzione “invia una copia a me” (“Send copy to self” nella versione inglese del software) nelle impostazioni della casella.

    La soluzione per ora è semplice, eliminare tale funzionalità ed inserire (a mano) il proprio indirizzo quando desiderate avere una copia delle email inviate.

    Speriamo che Nokia aggiorni presto il software.

    ciuaz

    Categories
    ajax webdev

    Form Ajax “degradabili” con JQuery e JQuery.Form

    La degradazione del codice è un po’ il mio cavallo di battaglia quando discuto con sviluppatori “ajax-centrici” che preferiscono puntare sull’effetto di un fade che sulla usabilità/accessibilità dell’applicazione anche su browser datati o con javascript bloccato (ie. cellulari).

    La libreria JQuery si è, in più occasioni, dimostrata ottima per la gestione della degradabilità del codice ed uno degli esempi più interessanti di questa pratica è il plugin JQuery.Form.

    Il plugin in questione infatti intercetta i normali form html e li ajax-izza automaticamente, permettendo inoltre di abilitare operazioni pre e post invio. Nel caso in cui, per qualche motivo, il motore js non dovesse funzionare allora la form, per nulla toccata dal plugin, continuerà a funzionare come nel sano, vecchio, web 1.0.

    Vediamone un esempio di funzionamento partendo dal tutorial presente nel sito del plugin.

    Categories
    linux sysadmin

    Aggiornare Fedora 8 usando Yum

    E’ da un po’ che non parlo di Linux su questo blog, visto che ne scrivo spesso su Ossblog. Riprendo quindi a scriverne per spiegare come fare un facile upgrade di Fedora 7 a Fedora 8 usando il solo yum [alla faccia degli “apt-get distupgrade-isti“]!

    Innanzitutto premetto che è importante disabilitare tutti i repository non ufficiali (come Livna) e di rimuovere i pacchetti da essi installati. Un buon inizio è quindi quello di rimuovere i pacchetti più problematici:

    [code]yum remove vlc* mplayer* gstreamer-plugins-bad[/code]

    subito dopo provvediamo ad aggiornare i repository da cui scaricare la nuova versione di Fedora.

    [code]rpm -Uvh http://mirror.anl.gov/pub/fedora/linux/releases/8/Everything/i386/os/Packages/fedora-release-8-3.noarch.rpm http://mirror.anl.gov/pub/fedora/linux/releases/8/Everything/i386/os/Packages/fedora-release-notes-8.0.0-3.noarch.rpm[/code]

    fatto questo controlliamo che i repository siano stati aggiunti correttamente e non come .rpmnew ed aggiorniamo yum ed rpm, rimuovendo un altro paio di pacchetti fastidiosi:

    [code]yum clean all
    yum update rpm\* yum\*
    rpm -e –noscripts avahi-0.6.17-1.fc7
    [/code]

    provvediamo ora con la prima fase dell’installazione:

    Categories
    altri linguaggi di tutto un po'

    Sviluppatore PL/SQL needed

    Mucio cerca disperatamente uno sviluppatore PL/SQL in zona Bologna, la paga pare buona ed anche le prospettive di crescita.

    Se siete interessati a cambiare lavoro o se ne state cercando uno a Bologna non esitate a contattare Mucio (e non me)!

    ciuaz

    Categories
    eventi php

    IPC, International PHP Conference

    Ormai sono tornato da un paio di giorni dall’IPC, devo dire che ne sono stato realmente entusiasta e che mi è dispiaciuto veramente molto perdere l’ultima giornata di talk.

    La qualità dei talk, almeno per quelli a cui ho partecipato, è stata decisamente alta. Inoltre ho apprezzato particolarmente i workshop del sabato e domenica di 6h l’uno relativi all’agile development ed a phpUnit.

    Mi è piaciuto soprattutto il primo workshop, tenuto da Lars Jankowfsky, che trattava esaurientemente con una simulazione in aula lo sviluppo di un’applicazione con metodologie agili (e che probabilmente parteciperà come relatore al prossimo phpDay). Sei ore ben spese, ed un ottimo ripasso, per i talk tenuti da Gabriele Lana ai phpDay degli ultimi anni, che mi hanno ricordato (per l’ennesima volta) che devo assolutamente iniziare a usare più spesso metodi agili.

    Durante la permanenza in germania ho apprezzato la compagnia di due Norvegesi folli, Morten e Gunnar, con i quali abbiamo chiaccherato di tutto, ma veramente tutto. Dal cibo, ai viaggi, alla musica e perfino di lavoro! ;)

    Altra soddisfazione è stata quella di assistere alla presentazione dell’imminente Symfony 1.1 (di cui a breve parlerò su Symfony.it e pubblicherò qualche foto sul mio account di Flickr) e di ottenere la promessa da parte di Fabien Potencier di partecipare al phpDay di maggio

    In tutto questo però c’è stata una cosa che mi ha infastidito particolarmente.