Il codice sorgente liberamente disponibile oggi è in quantità smisurata; grazie alle licenze aperte e a una cultura informatica molto estesa, numerosi sviluppatori sono costantemente al lavoro alla ricerca di nuovi software e funzionalità. Siti quali
Savannah e
SourceForge.net sono popolarissimi e raccolgono migliaia di progetti, grandi e piccoli, importanti e meno conosciuti.
Si tratta di esempi che testimoniano una necessità fondamentale a livello di sviluppo software, e non solo, ovvero la possibilità
di navigare e operare ricerche all'interno di alberi e directory di sorgenti. Simili ricerche e analisi potrebbero risultare preziose per una infinità di scopi.
L'aveva capito tempo fa
Doug Cutting, che in prima battuta scrisse in Java un'API oggi abbastanza famosa. Lo scopo primario di una simile applicazione, conosciuta col nome di
Lucene, era la ricerca e
indicizzazione full text di un numero grande di informazioni.
Tale API venne poi estesa grazie al supporto dell'
Apache Software Foundation e divenne nucleo fondamentale per lo sviluppo di motori di ricerca utilizzati sul Web o in ambito intranet.
Ma come si inserisce
Lucene nel discorso iniziale? Semplice, la soluzione si chiama
OpenGrok ed
è un motore di ricerca specificamente adattato per lavorare e operare su directory di codice sorgente.
Recentemente l'attenzione è molto cresciuta intorno a tale progetto per il fatto che
Peter De Watcher ha
adattato il software facendolo puntare al ramo
unstable di
Debian. In tal modo il motore di ricerca
naviga tra circa 70 GB di codice sorgente e riesce a supportare analisi e query anche molto specifiche.
Il tentativo è quello di cercare di
mettere ordine nel codice sorgente disponibile e migliorare lo schema di sviluppo di software e funzioni. Attraverso
OpenGrok gli sviluppatori possono capire e trovare quali sorgenti potrebbero essere interessati a una modifica, come meglio strutturare funzioni e dati, mettere a confronto algoritmi.
Questo motore si
integra benissimo con strumenti per il versioning del codice. Oltre a
Debian, anche
OpenSolaris lo
usa per i propri sorgenti, così come il team di
OpenOffice.org e
FreeBSD. Presto la tendenza diventerà più popolare.