white noise | tag/web /blog//tag/web.html white noise webless /blog//post/webless.html /blog//post/webless.html devel web Sun, 13 Apr 2008 11:58:21 +0200 web Last night I came across this link:

The webless initiative

I'm pretty well known for my minimalistic and old styles likes, but I guess it could be interesting to follow that link anyway. It's especially suggested to all web designers who are very talented in creating wonderful appearances without having a clue about standards and usability.

PS: my personal website and this blog are not fully compliant to webless guidelines, although they render well in small or console driven web browsers.

]]>
tt2 and markdown /blog//post/tt2_and_markdown.html /blog//post/tt2_and_markdown.html devel perl tools web Fri, 21 Mar 2008 22:44:17 +0100 web I definitely love Markdown; it just makes web pages editing painless, quick and funny. I was aware of a markdown plugin for Template Toolkit, so i decided to dig a little deeper.

All I needed was the Template::Plugin::Markdown perl module. After installing it I was able to use markdown syntax in my TT driven web pages:

[% USE Makdown %]
[% FILTER markdown %]
.
.
. (markdown formatted page content)
.
.
[% END %]
]]>
back to tt2 /blog//post/back_to_tt2.html /blog//post/back_to_tt2.html devel perl tools web Sun, 16 Mar 2008 22:38:48 +0100 web I am pretty excited. Soon I will be back on web design and development, so I took the occasion to tidy a bit some stuff about Template Toolkit.

From the TT2 website:

The Template Toolkit is a fast, flexible and highly extensible template processing
system. It is free (in both senses: beer and speech) open source software and runs
on virtually every modern operating system known to man. It is written in the Perl
programming language with certain key elements coded in C for maximum speed.
However you don't need to know any Perl (or C) to be able to use it.

It is ideally suited, but not limited to, the creation of static and dynamic web
content and incorporates various modules and tools to simplify this process. It is
mature, robust, reliable and well documented.

I haven't use it for quite a bit, so It will be very funny to explore all the features added since then.

]]>
embedding a flash video in a web page /blog//post/embedding_a_flash_video_in_a_web_page.html /blog//post/embedding_a_flash_video_in_a_web_page.html devel tools web Thu, 08 Nov 2007 21:54:47 +0100 Tools

Today I've been asked to embed a video in the home page of a website I maintain. They were looking for the usual nice looking flash player to perform playback, just like YouTube and other similar web sites.

I decided to look for something flexible and - more important - open source. I found flowplayer, a really nice, really flexible and incredibly easy to set up flash-based video player.

The documentation on the project web site is complete, and you can simply cut-and-paste to have something working out of the box. Tweaking is also easy and fun.

Great stuff.

]]>
track the price of your items on amazon /blog//post/track_the_price_of_your_items_on_amazon.html /blog//post/track_the_price_of_your_items_on_amazon.html techworld tools web Sun, 04 Nov 2007 13:53:17 +0100 Tools

I am a Firefox user, but I am not an add-ons freak; my Firefox installation is quite standard. Some days ago, browsing the Internet, I found the Pricedrop extension, which helps me tracking the price of the items on Amazon I'd like to buy.

It quickly jumped in my must-have list. Saving money is a wonderful thing!

]]>
color schemes /blog//post/color_schemes.html /blog//post/color_schemes.html devel graphics web Mon, 22 Oct 2007 23:02:02 +0200 Devel

Finding a suitable color scheme is always an important thing anytime I have to develop some web site or work with graphics. Today I found the following web site: Colr.org, which has a nice set of applets to fetch color schemes from a website or extract them from a particular picture. It also allow to browse ready-to-use color schemes as well, or submit new ones.

You can see the result in the image below; it's the color scheme I used for my personal web site.

hyboria color scheme

]]>
ikiwiki 1.48 /blog//post/ikiwiki_1.48.html /blog//post/ikiwiki_1.48.html tools web Fri, 30 Mar 2007 20:20:54 +0200 Tools

Ennesimo aggiornamento ad Ikiwiki, che questa volta ha richiesto un po' di elaborazione in più.

Sono cambiati un po' di dettagli nell'implementazione e, come conseguenza, le clausole pagespec che si usano normalmente per blogging ed archivi si comportano in maniera leggermente diversa. Intendiamoci, la cosa è ampiamente annunciata nelle release notes, e non è nemmeno traumatico fare le modifiche del caso, ma penso che un piccolo esempio possa tornare utile.

Per realizzare gli indici delle singole categorie del mio blog, uso una pagina (es: /tag/cinema.mdwn) contenente la seguente pagespec:

link(tag/cinema)

Questa fa si che nella pagina compaia un elenco di tutti i post taggati con cinema. Ho anche una pagina chiamata tag.mdwn con un elenco di tutti i tag usati nel blog che, ovviamente, rimanda a tutti gli indici categoria per categoria.

Dopo l'aggiornamento alla nuova versione, l'indice dei post sul cinema visualizzava anche un link alla suddetta pagina tag.

Per correggere ho modificato la clausola pagespec come segue:

link(tag/cinema) and !tag

Modifica minimale ma sufficiente... la parte divertente è stata replicarla per tutti gli indici :)

]]>
ikiwiki 1.45 /blog//post/ikiwiki_1.45.html /blog//post/ikiwiki_1.45.html tools web Mon, 12 Mar 2007 23:01:16 +0100 Tools

E` passato un po' di tempo dall'ultima volta che ho postato di ikiwiki; onestamente è passato un po' di tempo anche dall'ultima volta che l'ho aggiornato.

La nuova versione include i soliti miglioramenti strutturali e bugfix, il che non può che fare piacere, oltre ad una nutrita schiera di nuovi template - alcuni dei quali non ho proprio capito a cosa possano servire. In ogni caso, considerato anche che il mio setup è abbastanza semplice, ho deciso di modificare il meno possibile.

L'aggiornamento è stato abbastanza indolore; vengono segnalati alcuni curiosi warning alla creazione del makefile ma, a parte questo, niente di particolarmente problematico.

Ricordate di copiare nella vostra directory di template il nuovo archivepage.tmpl altrimenti, se usate della pagine stile archivio, le troverete desolantemente vuote.

]]>
ikiwiki 1.40 /blog//post/ikiwiki_1.40.html /blog//post/ikiwiki_1.40.html tools web Wed, 17 Jan 2007 22:49:41 +0100 Era da un po' che non parlavo di ikiwiki. Sebbene le release si siano susseguite regolarmente, non ho avuto molto tempo per aggiornare ed esplorare. La release 1.40 è stata una buona occasione per fermarsi un attimo a dare un'occhiata più approfondita.

Comincio con le rogne, che istintivamente imputo al fatto che uso una Debian Sarge e quindi è possibile che abbia qualche libreria perl non aggiornata. Appena fatto l'aggiornamento mi sono trovato a gestire un errore relativo a gettext, che non sono riuscito a decifrare dato che normalmente ignoro le localizzazioni.

Dato che l'errore andava comunque sistemato od aggirato, ho scelto la seconda strada, modificando la funzione gettext contenuta nel modulo Ikiwiki.pm come segue:

sub gettext {
    return shift;
}

Fatto ciò, tutto liscio...

Passiamo ora alle nuove funzionalità. Segnalo intanto il supporto per l'autenticazione basato su OpenID, qualcosa che ancora non uso ma che mi piacerebbe approfondire.

Dal versante plugin invece, ci sono tre nuovi mattoncini:

  • navbar: consente di inserire all'interno di una pagina una barra di navigazione
  • textile: aggiunge il supporto per il linguaggio di markup omonimo (in alternativa al solito markdown)
  • rawhtml: permette di copiare pari pari pagine html fatte e finite presenti nell'albero dei sorgenti del sito

I primi due li cito per completezza, dato che al momento non mi servono; il terzo invece è abbastanza utile, dato che aumenta la flessibilità dello strumento (ma occhio alle problematiche di sicurezza!) e soprattutto consente di evitare l'orrendo workaround di cui vi avevo parlato qualche post fà.

]]>
ikiwiki e copia di file html /blog//post/ikiwiki_e_copia_di_file_html.html /blog//post/ikiwiki_e_copia_di_file_html.html geek tools web Tue, 02 Jan 2007 13:13:58 +0100 Piccolo hack di inizio anno, a beneficio di tutti coloro che usano ikiwiki e si trovano nella necessità di avere file html presenti nell'albero dei sorgenti del wiki, all'atto del rendering delle pagine. copiati nella destinazione prescelta.

Di default ikiwiki non copia tutto ciò che ha estensione html o xhtml (più diversi altri tipi di file che è sano ed inutile copiare). Questa è una precisa scelta - dettata da ragioni di sicurezza - ma, nel caso, è possibile configurare le cose affinchè il comportamento sia diverso.

Esiste la variabile wiki_file_prune_regexps che si occupa proprio di questo, istruire ikiwiki sul tipo di pagine da ignorare. Il valore di default - scritto direttamente nel codice - è il seguente:

wiki_file_prune_regexps => [qr/\.\./, qr/^\./, qr/\/\./, qr/\.x?html?$/,
            qr/(^|\/).svn\//, qr/.arch-ids\//, qr/{arch}\//],

Questa variabile può essere aggiunta al file di configurazione di ikiwiki e modificata secondo necessità, includendo ed escludendo ciò che più vi aggrada. Il nuovo valore sovrascriverà il default.

Notate che la cosa non mi sembra documentata, per cui potrebbero esserci modi più intelligenti di agire. Questo di certo funziona.

]]>
ikiwiki 1.32 /blog//post/ikiwiki_1.32.html /blog//post/ikiwiki_1.32.html tools web Fri, 17 Nov 2006 16:30:07 +0100 Era da un po' che non postavo qualcosa su ikiwiki; non tanto perchè lo sviluppo si fosse arenato, tutt'altro, quanto perchè, vuoi per ragioni di tempo, vuoi perchè non uso tutte le feature che mette a disposizione, non avevo niente di interessante da dire.

Ho appena aggiornato alla versione 1.32 (prestissimo sarà disponibile la 1.33, già annunciata) e, oltre alla solita piacevole assenza di problemi nel processo di upgrade, ho potuto toccare con mano l'incremento di prestazioni che Joey Hess aveva indicato come maggiore improvement in questa versione.

La rigenerazione di tutte le pagine del mio sito e di questo blog ha richiesto una frazione del tempo che richiedeva prima. Veramente notevole.

]]>
ikiwiki 1.21 /blog//post/ikiwiki_1.21.html /blog//post/ikiwiki_1.21.html tools web Wed, 23 Aug 2006 22:14:17 +0200 Ultima release di ikiwiki appena rilasciata. Viste le nuove feature incluse, l'aggiornamento è quasi d'obbligo.

Ci sono tre nuovi plugin disponibili:

sidebar

consente di aggiungere una sidebar a tutte le pagine processate da ikiwiki. Basta creare una pagina chiamata sidebar.mdwn ed il contenuto verrà interpretato ed incluso. Il plugin è molto flessibile; non ho sperimentato più di tanto, ma è possibile avere anche più sidebar differenti all'interno dello stesso wiki.

map

genera la classica sitemap. Si può generare una mappa completa oppure generarne una a partire da un pezzo a scelta del wiki, dato che il plugin supporta le PageSpecs di ikiwiki.

otl

permette di generare automaticamente delle pagine html a partire da un outline generato da vimoutliner.

Oltre a tutto questo, la solita quantità di miglioramenti e colpetti di lima.

Non avete ancora aggiornato?

]]>
conversioni in utf-8 /blog//post/conversioni_in_utf-8.html /blog//post/conversioni_in_utf-8.html geek perl tools web Sun, 20 Aug 2006 13:36:20 +0200 L'altro giorno mi sono trovato nella situazione di inserire del vecchio materiale che avevo scritto nel mio sito web. Nel far il rendering delle pagine, ikiwiki mi ha segnalato numerosi errori relativi alla codifica utf-8. Al termine del processo le pagine generate erano orrendamente prive di contenuto.

Indagando un po', mi sono reso conto che il problema era originato dalla presenza dei lettere accentate italiane; andavano rimosse e sostituite con le relative codifiche html.

Ho buttato giù due righe in perl per automatizzare il lavoro:

#!/usr/bin/perl
#
# Replace italian accents with html alternates

open STDIN, '-';

while (<STDIN>) {
        s/&agrave;/\&agrave\;/g;
        s/&egrave;/\&egrave\;/g;
        s/&igrave;/\&igrave\;/g;
        s/&ograve;/\&ograve\;/g;
        s/&ugrave;/\&ugrave\;/g;
        print;
}

Notate che non sono presenti accenti acuti... so di essere un barbaro ma per semplicità non li uso.

Con il seguente comando:

for i in *.mdwn; do cat $i | htmlize.pl > $1; done

sono riuscito a sistemare il contenuto dei file in meno di un minuto (htmlize.pl è il nome che ho dato allo script di cui sopra).

Per chi invece avesse necessità di fare conversioni da diverse codifiche in utf-8 - ma non solo - suggerisco l'utility tcs. Semplice quanto comoda... (attenzione che non supporta la codifica iso-8859-15; ovvero niente simbolo dell'euro).

]]>
fogli di stile e selettori di attributo /blog//post/fogli_di_stile_e_selettori_di_attributo.html /blog//post/fogli_di_stile_e_selettori_di_attributo.html devel web Sun, 13 Aug 2006 23:27:36 +0200 Penso che sia capitato a chiunque abbia provato a fare un sito web che avesse un minimo di verve in più rispetto al solito, di doversi confrontare con il fatto che alcuni browser hanno un supporto dei fogli di stile più completo rispetto ad altri prodotti. La cosa è parecchio frustrante; ogni minima fighezza rischia di diventare un serio mal di testa, oltre che un discreto spreco di tempo nel tentativo di trovare dei compromessi funzionanti e non troppo penalizzanti.

Una cosa che non sapevo (un grazie a Luca per la segnalazione) è come sia possibile usare un selettore di attributo di questo tipo:

Elemento[attributo="valore"]

per definire classi specifiche per i diversi browser.

Definire uno specifico id per l'elemento body, ad esempio, permette di usare regole più semplici per gli elementi a favore di quei browser che non supportano il selettore, e regole complesse per tutti quelli che, invece, lo supportano.

Per vedere un esempio reale della cosa, date un'occhiata a questo design e a come viene visualizzato con Internet Explorer e con Firefox...

]]>
ikiwiki 1.15 workaround /blog//post/ikiwiki_1.15_workaround.html /blog//post/ikiwiki_1.15_workaround.html tools web Sat, 05 Aug 2006 15:43:49 +0200 Cortesemente, quanto rapidamente, fornito da Joey Hess, ecco un semplice workaround che sistema, almeno nel mio caso, i problemi relativi a perl ad al taint mode.

Nel file Ikiwiki.pm va sostituita la linea 571 con la seguente:

return eval possibly_foolish_untaint(pagespec_translate($spec));

Funziona perfettamente... riesco nuovamente ad utilizzare l'opzione --refresh per rigenearare solo le pagine effettivamente modificate. Sono anche spariti i problemi di compilazione e quelli relativi ai test :)

Per chi non ha particolare fretta o dimestichezza con l'editing dei sorgenti, la release 1.16 è stata appena annunciata (e sarà a breve disponibile).

]]>
ikiwiki 1.15 /blog//post/ikiwiki_1.15.html /blog//post/ikiwiki_1.15.html tools web Fri, 04 Aug 2006 18:00:02 +0200 Quando si dice che un software è attivamente sviluppato... sono uscite tre versioni di ikiwiki nel giro di una settimana. Sono passato dalla versione 1.12 alla versione 1.15, in modo meno fluido rispetto agli upgrade precedenti.

Premetto che l'oggetto gira su una debian stable, quindi la compilazione da sorgenti è praticamente d'obbligo (nel caso in cui non vogliate avventurarvi in backport e altro pittoreschi ritocchi alla vostra distribuzione). Altra doverosa premessa è che non uso nè le funzionalità legate ai cgi, nè il supporto per il versioning (quest'ultimo lo gestisco esternamente). Tutte le pagine di questo blog sono generate offline e caricate successivamente nel mio spazio web personale.

Detto questo, passo in rassegna un paio di problemini che ho incontrato nel fare l'upgrade.

Per un qualche oscuro motivo, il processo di make fallisce in quanto c'è qualcosa nelle pagine di documentazione (generate durante il make, appunto), che non è gradito dalla modalità taint del perl. La causa, mi pare di capire, sia abbastanza subdola... è possibile che si tratti di un bug della versione 5.8.4 di perl. Ho provato a giocare un po' con il codice di ikiwiki, ma l'unica soluzione funzionante sembra essere rimuovere la sezione extra_build dal file Makefile.PL. Attenzione che lo stesso problema si presenta quando generate le pagine... in questo caso usando l'opzione --rebuild tutto ok, mentre l'opzione --refresh non ne vuole sapere di dare risultati.

Un'altra cosa che non ha funzionato come dovuto sono i test; Eseguendo make test, alcuni dei test presenti in html.t e in syntax.t falliscono. Possibile che vi sia una qualche relazione con il problema descritto precedentemente. Niente di fondamentale nel mio caso, ma se avete un'installazione con più feature, vi consiglio di perdere qualche minuto a cercare di capire.

Ultima cosa: alcuni template sono stati aggiornati ed altri aggiunti. Consegue che alcune variabili nei template sono state modificate... se usate dei template personalizzati premuratevi di adattarli a questi cambiamenti altrimenti ogni tentativo di ricostruire le vostre pagine produrrà lamenti ed errori a profusione.

Finita la lista delle sfighe, passo a segnalare quella che secondo me è la feature più interessante di questa nuova release: l'estensione delle vecchie GlobList nelle nuove PageSpec. Ora è possibile generare pagine inline usando un set più flessibile di condizioni (sono supportati gli operatori logici e il raggruppamento delle condizioni con parentesi), oltre che impostare filtri sulla data di creazione delle pagine stesse.

Ovviamente c'è anche altro. Rimando i curiosi alla pagina delle news sul sito ufficiale.

Buon aggiornamento.

]]>
ikiwiki 1.12 /blog//post/ikiwiki_1.12.html /blog//post/ikiwiki_1.12.html tools web Tue, 01 Aug 2006 22:15:58 +0200 Ultima release di ikiwiki appena rilasciata, ho approfittato immediatamente per aggiornare la mia installazione. Lo sviluppo procede spedito; l'oggetto diventa ogni volta più stabile e più curato.

Oltre ad una buona quantità di aggiustamenti quà e là, segnalo le seguenti feature, a mio parere molto interessanti:

  • supporto per i tag nelle pagine (presente anche nella versione precedente ma migliorato in quest'ultima uscita)
  • plugin per generare statistiche e cloud map di tag stile del.icio.us
  • supporto per aggregazione di feed

C'è anche altra roba (diverse cose relative al miglioramento del supporto per UTF-8); date un'occhiata alle news sul sito del progetto per i dettagli.

Buon aggiornamento.

]]>
flash ed il web /blog//post/flash_ed_il_web.html /blog//post/flash_ed_il_web.html techworld web Sat, 22 Jul 2006 15:39:16 +0200 Oggi mi sono concesso un momento di navigazione normale, ovvero ho curiosato su siti dove normalmente non vado. Peste mi colga! Non sono riuscito a vederne decentemente nemmeno uno.

Sto ancora cercando di capire il senso di realizzare un sito web completamente in flash... passi l'introduzione, ma quando il contenuto finisce per essere testi, fotografia ed al limite qualche sniplet di base musicale, dove sta il senso?

Rispondo a chi mi dice serenamente di installare il plugin che il suddetto plugin è unicamente a 32 bit ed io uso un sistema a 64 bit. Ok, potrei sbattermi un attimo e far funzionare comunque le cose, ma non capisco perchè devo perdere mezza giornata per riuscire a superare i limiti creativi/tecnici di qualcun altro. Ma una 'versione non flash' per i meno abbienti pareva brutta?

Mah... aspetto con ansia il Web0.0 :)

]]>