realbasic-nug.it
[Top] [All Lists]

Richieste di aiuto

To: REALbasic NUG Italian <realbasic-nug dot it at lists dot realsoftware dot com>
Subject: Richieste di aiuto
From: Massimo Valle <maxduepuntozero at yahoo dot it>
Date: Thu, 18 Jan 2007 19:41:34 +0100
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot it at lists dot realsoftware dot com
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.it; h=Received:X-YMail-OSG:Mime-Version:Content-Transfer-Encoding:Message-Id:Content-Type:To:From:Subject:Date:X-Mailer; b=ps4h5Gk68YKK5W7V/+uDweNTqu1dwA/MrVoHpyHNovCnZCmwgA2YpQ0f+PWZakemEhNNl2vm8xbjSwlQ4luKqgK763wlPllsX7+vPbD6Aey3SI7bIJA1sPoybH+bjAVhrphtfQ3DCo92GatBTctVOSuCuxARt3+CsslBCFtNMaE= ;

Il recente post di Lucio Liberi riguardante la Listbox mi ha dato lo spunto per scrivere un piccolo tutorial che possa essere di aiuto a tutti coloro che si trovano nella condizione di inviare richieste di aiuto in lista.

Chiarisco subito che Lucio è solo il pretesto per scrivere quanto segue, ma non per questo lui ricade necessariamente in alcune categorie di utenti che descrivo dopo. Semplicemente la richiesta di Lucio era un poco fuorviante e, se fosse stata espressa meglio avrebbe ricevuto risposta più in fretta e con meno impegno. Ma per il resto non era affatto sbagliata, anzi, secondo me ha evidenziato un problema (o una peculiarità) di REALSQLDatabase. Quindi Lucio, ti prego di non avertene perchè non è affatto il caso tuo.

Premesso quanto sopra, devo dire che il testo che segue è la traduzione con adattamento a REALbasic di un post apparso nel blog di Scott Stevenson, che è un buon divulgatore oltre che programmatore Cocoa. Per chi vuole leggersi l'articolo originale ecco il link: http://theocacao.com/document.page/201

Ed ecco l'articolo:

Come avere risposte alle richieste di aiuto.

Capita spesso che qualcuno chieda aiuto o faccia domande in mailing- list, ma in pochi scrivono il genere di messaggi che come effetto genera risposte utili. Ecco alcune linee guida da cui partire.

Mostrare il proprio lavoro.
Quando si fa una domanda in lista, la cosa più importante è dimostrare che si è compiuto un ragionevole sforzo per trovare la risposta da soli.

Le persone che frequentano la lista sono più che disposte ad aiutare dove la documentazione manca o è difficile da trovare. Quello che non si dovrebbe fare è chiedere ad altri di fare il lavoro per se. E questo è quello che avviene quando il richiedente non ha fatto un ragionevole tentativo di risolvere il problema da solo. Il risultato di simili richieste è generalmente il silenzio o, peggio, derisione e sarcasmo.
Ecco un esempio fittizio di cosa NON fare:

        "Ho bisogno di aiuto a scrivere un programma che possa
         editare un video e masterizzare un DVD. Come posso farlo?"

Questo tipo di richiesta tende a non avere molto seguito. Il richiedente non sembra dimostrare di aver compiuto nessun sforzo iniziale per comprendere almeno le basi da cui partire.

Rispondere a queste domande non è difficile per uno sviluppatore con un po' di esperienza, ma scrivere risposte richiede tempo e non è corretto chiedere ad altri di sacrificare il loro tempo, a meno di non aver raggiunto un punto morto nella disamina del problema. Essere un newbie non è di per sè una scusa valida. I più esperti tendono ad essere piuttosto disponibili nei confronti dei newbies, ma solo se questi dimostrano di avere reali intenzioni. Ecco un versione leggermente migliore della richiesta di aiuto precedente:

        "Ho bisogno di aiuto a scrivere un programma che possa
         editare un video e masterizzare un DVD. Ho pensato che
         dovrei usare la classe Movie per la gestione dei video,
         mentre per la masterizzazione mi appoggerei al plugin MBS
         che offre questa funzione. Come posso farlo? Qualcuno ha
         esempi?"

Questo è meglio del precedente perchè il richiedente ha provato di aver fatto almeno qualche ricerca su come risolvere il problema, seppure ancora superficiale. Comunque anche una simile richiesta, non sarebbe recepita molto bene probabilmente. La richiesta è estremamente vaga e il messaggio essenzialmente richiede un lavoro di progettazione e analisi da farsi gratuitamente e probabilmente per un prodotto commerciale. Facciamo un passo avanti:

        "Ho bisogno di aiuto a scrivere un programma che possa
         editare un video e masterizzare un DVD. Ho pensato che
         dovrei usare la classe Movie per la gestione dei video,
         mentre per la masterizzazione mi appoggerei al plugin MBS
         che offre questa funzione. Ho letto il manuale di RB dove
         parla della gestione dei movie. Ho anche esaminato la guida
         di riferimento per la classe Movie, EditableMovie e MoviePlayer.
         Inoltre ho anche fatto qualche prova sfruttando gli esempi
         forniti con RB e con il plugin MBS. Tutto molto utile ma non
         riesco a capire come estrarre sezioni di video in altri oggetti
         Movie. Nonostante gli esempi non riesco a trovare una soluzione.
         Qualcuno può suggerirmi dove cercare altre informazioni o esempi
         che possano aiutarmi a capire come farlo?"

Questa è una buona richiesta. L'autore ha speso del tempo a considerare un'area specifica di problemi (estrarre contenuti), ha menzionato materiale che ha trovato e ha richiesto una soluzione o codice esemplificativo rivolto a un compito ben preciso. Una richiesta di questo genere ha ottime probabilità di ottenere risposte, perchè l'autore lo ha reso possibile.

Usare l'oggetto del messaggio per dire qualcosa
Bisogna sforzarsi di scegliere una frase descrittiva per l'oggetto del messaggio. Dovrebbe descrivere in poche parole l'oggetto della richiesta. E' inutile includere informazioni non pertinenti ("AIUTOOO", "NEWBIE"). Il contenuto della richiesta è invece quello che serve.

Se si sta formulando una richiesta relativa ad un argomento specifico, sarebbe sensato menzionarlo. Meglio ancora sarebbe descrivere la classe specifica a cui si è interessati. Ecco alcuni buoni esempi:

        REALSQLDatabase: documentazione scarsa
        Creare una sottoclasse di Canvas
        Gestire il disegno di un oggetto Graphics
        TCPSocket - problemi con l'evento DataAvailable

Evitare di scrivere oggetti come i seguenti:

        Per favore aiutatemi! Importante!
        REALbasic
        IDE
        REALbasic e IDE
        Apple
        Movie, Video

Come semplice regola generale, può aiutare pensare di includere nell'oggetto sostantivi e verbi. Questo aiuterà gli altri membri della lista a capire su cosa si sta lavorando e come.

Chiarezza, Chiarezza, Chiarezza
Oltre a fare richieste ragionevoli, la migliore tattica per ottenere aiuto è comunicare il proprio problema chiaramente. Bisogna fare tutti gli sforzi possibili perchè il problema e il contesto in cui questo è inserito risultino ben chiari a tutti. Una richiesta di tre pagine senza punteggiatura, pause, con un linguaggio incerto e inconcludente, non otterrà risposte molto velocemente.

In molti casi, l'ideale sarebbe inserire su un sito web un progetto di esempio che illustri il problema. Per problemi complessi che richiedono la conoscenza della struttura del programma, creare un semplice diagramma, in modo che chi prova a dare una risposta riesca a comprendere facilmente il contesto.

In molti casi la mancanza di informazioni essenziali è la prima causa di abbandono della risposta da parte di chi vorrebbe e potrebbe rispondere. Qualcuno con più pazienza può invece richiedere ulteriori informazioni. In queste situazioni non è il caso mettere alla prova la pazienza anche di questi ultimi. Non farsi mai tirare fuori le informazioni con le pinze.

Riguardo al testo della richiesta, è bene arrivare al punto immediatamente. Se il problema si verifica in determinato blocco di codice, postare il codice. Potrebbero esserci problemi con quel codice di cui non si è a conoscenza.

Non dimenticare mai l'obiettivo finale. In fondo quello che si cerca è aiuto, quindi perchè rendere difficile questo compito agli altri?

Condividere le soluzioni
Quando si risolve un problema, sarebbe bello renderlo noto in lista. Questo permette ad altre persone di chiedere la stessa cosa in seguito. La lista ha un archivio ricercabile e sarebbe buona norma usarlo prima di chiedere. Oltre ad essere un metodo veloce per trovare una risposta, si risparmia anche lavoro a chi le risposte le da e, dopo un po', si stanca di darle quando le domande sono già state risposte (magari più volte).

Considerazioni finali
Se si chiede un favore a qualcuno e questo impiega il suo tempo per dare risposte, è buona norma ringraziare ed essere cortesi con chi aiuta. Quando si avrà nuovamente bisogno di aiuto sarà molto più facile ottenere risposte per coloro che tendono a mantenere un ambiente piacevole in lista.

Volendo, ce ne sarebbero ancora da dire ma, anche la sola osservazione delle regolette sopra esposte, potrebbe bastare.

Ciao a tutti.

Massimo Valle


Chiacchiera con i tuoi amici in tempo reale!
http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com


<Prev in Thread] Current Thread [Next in Thread>
  • Richieste di aiuto, Massimo Valle <=