14.6.07

Il generatore di articoli di Libero

Ciao, volevo segnalarvi questa cosa divertente che c'è su internet:

http://hatingline.splinder.com/post/7835279/Il+generatore+di+articoli+di+Libero

e giá che ci sono vi chiedo: se io volessi fare una cosa simile? Credo che per uno come noi ingegneri elettronici, sia una sciocchezza programmare una cosa del genere, ma come si fa? Come si possono creare dei siti che non siano una semplice pagina scritta con dei link?

7 Comments:

At 13:59 , Blogger Gabriele Guarnieri said...

Esistono innumerevoli programmini per generare articoli a caso, mettendo insieme parole da un vocabolario seguendo determinate regole di grammatica e sintassi.

Scigen è in grado di generare articoli di inormatica. Basta dargli i nomi degli autori e fa tutto lui, compresi i grafici e la bibliografia. Un suo articolo è stato perfino accettato ad un congresso.

Il Postmodernism Generator serve per generare trattati filosofici. Anche qui si narra di studenti e perfino professori che hanno dovuto leggere vari paragrafi dell'articolo prima di accorgersi che non aveva senso. In questo caso, l'argomento è già abbastanza incomprensibile di suo, quindi si presta bene a giochi del genere. In fondo alla pagina ci sono i link per scaricare il programma e un articolo che ne descrive il funzionamento. Cambiando la grammatica si possono generare articoli su qualunque argomento; ad esempio ce n'è uno per generare automaticamente pamphlet religiosi o pseudoscientifici.

Polygen è un programma in italiano, e sul sito si trovano le grammatiche già pronte per generare testi a caso su numerosi argomenti. Quella per le ordinanze di limitazione del traffico merita.

 
At 14:28 , Blogger Wowsuper said...

Ti ringrazio per la risposta esauriente, io stesso avevo fatto un programma per dos, tanti anni fa: mettevi nomi,verbi e aggettivi in alcuni files e lui li coniugava e metteva insieme a casaccio per formare una storia senza senso. Se volete ve lo mando.

TUTTAVIA MIA DOMANDA, sicuramente mi sono spiegato male, era la seguente: come si fa a fare un sito internet con dei form tali che l'utente possa scegliere alcune opzioni e poi premendo un pulsante ottenga un risultato online? Ad esempio due caselle in cui si inseriscono due numeri e premendo un pulsante se ne ottiene la somma o funzioni piú complesse...

 
At 17:17 , Blogger Gabriele Guarnieri said...

Chiedo perdono, l'avevi scritto ma non me ne ero accorto.

Si possono fare pagine interattive anche abbastanza complesse usando il Javascript. La pagina in questione è fatta così. È un linguaggio simile al C che permette ad esempio di elaborare i dati inseriti nei form (come qui), cambiare le immagini o la formattazione del testo, far apparire o scomparire parti della pagina, ecc..

I Javascript possono verire associati ad "eventi", cioè si può fare in modo che vengano eseguiti automaticamente quando l'utente fa una certa azione, ad esempio modificare il dato in un form oppure spostare il mouse sopra qualche oggetto. In questo caso, nel codice HTML che descrive i campi del form c'è un parametro "onchange" che contiene il codice Javascript da eseguire quando il contenuto del form viene cambiato.

Per fare in modo che il Javascript possa leggere o scrivere un campo di un form, si dà un nome al campo con il comando "name". In questo modo, il Javascript lo vede come una variabile che può essere letta o scritta. Nella pagina in questione, ad esempio, la casella in cui viene visualizzato il risultato si chiama "plot" e il Javascript la modifica semplicemente assegnando un valore alla variabile "plot.value".

In pratica, ogni volta che l'utente modifica un campo del form, viene eseguito un programmino Javascript che legge i dati, genera il testo concatenando varie stringhe e lo fa apparire nella casella del risultato.

 
At 21:53 , Blogger Wowsuper said...

Ma in pratica, se io volessi fare una cosa simile, come faccio a scrivere un programmino javascript? Esiste un'applicazione specifica che mi permette di scrivere programmini javascript e li compila in modo da farli funzionare su internet? O bisogna per forza avere un server personale per farlo? Come si impara a fare cose del genere? Ci sono dei libri? o è semplice e basta sapere un paio di nozioni e puoi fare che sito vuoi anche crearti un google tuo se sai già programmare?

 
At 21:22 , Blogger Gabriele Guarnieri said...

Il Javascript non va compilato, si scrive direttamente nel codice HTML della pagina (all'interno di un tag <script>) o in un file esterno, e viene interpretato dal browser. Basta un qualunque editor di testo. Dai un'occhiata al sorgente della pagina.

Non credo che si possa creare un Google in Javascript, perché per motivi di sicurezza il Javascript non può leggere e scrivere file (altrimenti sarebbe facilissimo fare pagine web con virus - esistono comunque ma è un altro discorso), mentre per fare un motore di ricerca ci vuole un database. Forse si può fare un motore di ricerca limitato creando un array con alcune parole chiave e andando a cercare lì. Per cose più avanzate ci vuole uno script sul server, e qui le mie conoscenze si fermano.

Se vuoi imparare il Javascript, basta che cerchi "javascript tutorial" su Google e ne trovi in abbondanza.

 
At 12:07 , Blogger LukeSkywalker said...

Le pagine web che vengono costruite in base agli input dati dall'utente si chiamano pagine dinamiche, e implicano l'implementazione di un codice che la macchina deve eseguire. Ci sono veramente un disastro di modi diversi per far eseguire un codice da una pagina web.. La tecnica più comune consiste nell'utilizzare dei linguaggi di scripting come javascript o VBscript, ma anche perl e PHP. Si tratta in sostanza di inserire del codice all'interno del documento HTML.. Come già ha detto Gabriele esistono numerosi esempi e tutorial in rete su questi argomenti.

 
At 19:39 , Blogger Wowsuper said...

Vi ringrazio molto per aver colmato la mia ignoranza sull'argomento. E' aggiungo che il vero sapiente è chi sa di non sapere, in questo caso io. Va ben, scherzo, geniacci. Il vero ignorante è chi ignora di ignorare.

 

Post a Comment

Subscribe to Post Comments [Atom]

<< Home