Filosofia di PmWiki

Questa pagina descrive alcune delle idee guida del disegno e dell'implementazione del software PmWiki. Patrick Michaud non pretende che tutto ciò che è elencato qui sotto sia un'idea originale; sono solo ciò che ha portato allo sviluppo di PmWiki. Anche qui Pubblico PmWiki vengono descritti molti dei presupposti che stanno dietro le idee enunciate qui sotto.

1. Favorire chi scrive rispetto a chi legge
Il nucleo di un PmWiki è quello di essere un sistema autore collaborativo per documenti ipertestuali. E' già abbastanza difficile fare in modo che le persone (incluso Pm) contribuiscano con materiale scritto; far combattere gli autori con il linguaggio HTML, i problemi dei marcatori e dei link, pone ulteriori ostacoli al contributo attivo. Per questo motivo PmWiki vuole rendere più facile la creazione (authoring) dei documenti, anche se in questo modo si limitano i tipi di documenti che possono essere creati.
2. Non sostituire l'HTML
PmWiki non cerca di fare tutto ciò che può essere fatto con l'HTML. Ci sono buone ragioni per cui la gente non usa il browser per modificare l'HTML: non è molto pratico. Se hai bisogno di scrivere un sacco di complicato HTML in una pagina web, allora non dovresti usare PmWiki per crearla. Quello che può fare PmWiki è cercare di rendere facile linkare PmWiki con altri documenti web "non-wiki", incorporare pagine PmWiki entro pagine web complesse e permettere ad altri documenti web di linkare facilmente il PmWiki.
Questo principio deriva anche dal principio enunciato qui sopra del "favorire chi scrive rispetto a chi legge", perchè ogni nuova caratteristica aggiunta al PmWiki richiede marcatori addizionali che la supportino. Ben presto il documento apparirà molto complicato e sarà più semplice lasciar perdere e scrivere direttamente in HTML.
Un'altra ragione per evitare l'HTML è che quando questo contiene degli errori può impedire la visione delle pagine impedendone il caricamento, e può anche creare rischi per la sicurezza del sito. specialmente quando le pagine vengono create anonimamente. Vedi qui http://www.cert.org/advisories/CA-2000-02.html per altre informazioni.
3. Evitare inutili funzionalità (or "creeping featurism")
In generale la caratteristiche di PmWiki vengono implementate in risposta a bisogni specifici piuttosto che perchè "potrebbero essere utili". In qualsiasi sistema è difficile modificare una funzionalità mal disegnata se la gente ci ha già costruito sopra un sacco di struttura. (Se c'è bisogno di un esempio, basta pensare a MS-DOS o Windows). Un modo per evitare un disegno sbagliato è quello di resistere alla tentazione di implementare qualcosa fino a quando non si ha un'idea più chiara di come verrà usato.
4. Favorire la gestione collaborativa di pagine web pubbliche
Benchè all'inizio questo non rientrasse nell'intento di PmWiki, fu subito evidente che i principi del WikiWikiWeb potevano essere usati per rendere più facile a gruppi di persone di strutturare e gestire in modo collaborativo un sito web pubblico. PmWiki permette che pagine individuali siano protette da pasword, ed altre personalizzazioni rendono facile proteggere intere sezioni di pagine PmWiki. Inoltre PmWiki fornisce "style sheets on steroids": puoi facilmente cambiare headers, footers, e altri elementi di un gruppo di pagine senza mai dover toccare i componenti delle singole pagine. Infine, è piuttosto facile aggiungere marcatori? personalizzati per applicazioni particolari.
5. Essere facile da installare, configurare e gestire
Trasferire sul server un file compresso gzip di 200K, è piuttosto veloce. Dati uno-due permessi con un chmod o due, aggiornati alcuni settaggi in config.php e tutto dovrebbe già funzionare. PmWiki immagazzina i dati in normali file, così non c'è so tbisogno di MySQL o altri strumenti. Per aggiornarlo basta copiare l'ultima versione dei file sopra quelli della vecchia installazione.


Traduzione di PmWiki.PmWikiPhilosophy - Pagina originale: PmWikiIt.PmWikiPhilosophy - Backlinks
Ultime modifiche:
PmWikiIt.PmWikiPhilosophy: September 10, 2011, at 03:52 PM
PmWiki.PmWikiPhilosophy: June 28, 2012, at 03:16 PM