Come fare in modo che le persone nuove alla programmazione smettano di farmi domande e di distrarmi? [chiuso]


15

Sono alla scuola secondaria in questo momento e sono l'unico nella mia classe che ha esperienza con la programmazione. Per questo motivo, le persone mi distraggono costantemente mentre scrivo codice per chiedermi di risolvere un problema. Di solito rispondo con qualcosa del tipo "Non lo so, non lo uso mai" ma non voglio mentire alla gente.

Un altro problema è che sono diventato così famoso per questo che persino gli studenti di altre classi mi fanno domande. Lo trovo dannatamente fastidioso.

In terzo luogo, se risolvo un problema per loro, non imparano nulla da esso.

Come posso impedire alle persone di farmi domande sulla programmazione in modo gentile?


52
I neofiti che fanno domande non vanno via quando ti
laurei

31
@chrisaycock - Sono chiamati colleghi dopo la laurea. :)
ChaosPandion,

13
Inizia a far pagare loro un tasso che ti aiuti e tieni lontani i poveri idioti. Ah, non importa, questo è l'ennesimo spettacolo "Guardami, ho solo 16 anni e posso programmare!" domande. Ok amico, sei fantastico. E adesso?
Lavoro il

6
@Gaurav: Pah. Non ho mentito in quasi un anno, senza eccezioni, e la mia felicità e quella di coloro che mi circondano sono notevolmente migliorate grazie a questo. Sarebbe molto meglio solo dire "Ho bisogno di prendermi cura del mio lavoro prima di poter aiutare con qualcun altro", o anche solo "non è mia responsabilità aiutarti." Perché, beh, non lo è.
Jon Purdy,

4
@Gaurav: è questa la parte in cui dico "Non mi unirò mai a te!" e mi dai un po 'di merda riguardo al potere del Lato Oscuro, poi ho scoperto che in realtà sei mio padre, gemiti per un po' e improvvisamente salti giù da un buco?
Jon Purdy,

Risposte:


62

Indossa le cuffie. Trucco comune usato dagli studenti universitari che avevano bisogno di usare gli stessi laboratori informatici dei loro studenti nella mia scuola. Non hanno nemmeno bisogno di essere collegati a nulla. Questo non scoraggerà tutti, ma dovrebbe ridurre un po 'i numeri.

Pubblica un segno sui tuoi libri di testo / taccuino e inseriscilo nella tua firma e-mail in modo da non avere il tempo di rispondere alle domande a causa dei tuoi intensi studi.

Avvia un'attività di tutoraggio e spiega che addebiti X dollari l'ora e pianifica le riunioni in anticipo. Questo non risolverà completamente il problema, ma aiuterà le persone a valutare il tuo tempo e ti darà un po 'di soldi da spendere.


17
++ per fare soldi con le domande
Giovanni

4
Le cuffie sono sorprendentemente buone, in realtà.
Dean Harding,

La cosa delle cuffie è un po 'ingannevole se non stai davvero ascoltando nulla ...
compman,

7
@ user9521 E? :]
Nathan Taylor,

1
Se frequenta la scuola secondaria, non gli sarà permesso di indossare le cuffie in classe. Beh, almeno nella maggior parte delle scuole.
orbita il

33

Di 'loro che sei un tutor e che li aiuterai al ritmo di X dollari e ora. (Se in realtà sono seri, almeno verrai pagato per l'aiuto.)


miglior consiglio qui
Dave O.

2
+1 - Questo mi ha aiutato a passare il college e si è trasformato in un lavoro molto divertente.
jmort253,

17

Chiedi loro di spiegarti il ​​loro codice prima di aiutarli, o semplicemente di indicarli a Stack Overflow e la folla dirà loro di fare la stessa cosa.

A meno che le domande non siano routinariamente così semplici da non ottenere assolutamente nulla nel rispondere alle domande da soli, allora prenderei comunque in considerazione di aiutare una volta ogni tanto (se è chiaro che le persone che stai aiutando almeno ci provano). Il modo migliore per essere sicuri di capire qualcosa è insegnarlo.


6
+1 per farti spiegare il loro codice. Non 10 minuti fa ho aiutato un collega a risolvere un problema molto frustrante in questo modo. Aveva battuto la testa contro un problema di corruzione della memoria per tutto il giorno. Sapeva che doveva trovarsi da qualche parte nello stack di chiamate, ma aveva passato tutto e non riusciva a trovarlo. Quindi gli ho detto di camminare con me. Pochi minuti dopo, mentre stava spiegando cosa stava succedendo, guardò una riga e disse "hey, aspetta un secondo ..." e il suo problema era evidente come il giorno. Ma non l'ha mai notato fino a quando non ha dovuto analizzarlo con qualcun altro seduto lì.
Mason Wheeler,

@Mason Wheeler: assicurarsi che imparino la risposta, piuttosto che riceverla equivale a una discussione "dare a un uomo un pesce ...", molto utile.
orbita il

+1 Per l'ultima frase, eccezionalmente vero. Di solito il livello più alto di comprensione: 0) Non capirlo, 1) Capirlo sostanzialmente, 2) Sotto di esso bene, 3) Potrei spiegarlo a un altro.
orbita il

4
Vedi Rubber Duck Debugging , non hai nemmeno bisogno di un'altra persona.
ottobre

@ Mason, vecchio trucco. Lo chiamiamo "Nonna" qui.

15

"lasciami finire questo e finirò a guardarlo". Vanno via. Impieghi 1 ora per finire. Inizieranno a risolvere il problema da soli

Funziona con colleghi, amici, familiari ma non con nonne. Se vuole che la sua stampante sia riparata, è meglio farlo ora.


1
Ciò fermerà la stragrande maggioranza delle interruzioni, l'IME.
JBR Wilkinson,

8

Se il problema è che vuoi che imparino qualcosa, senza che tu mostri la risposta, puoi sempre provare ...

... il metodo socratico !

Sì, invece di lasciare che facciano le domande, prova a farle riflettere ponendo le domande principali con il minor numero di salti logici possibile.

Altrimenti potresti semplicemente condurli al sito di overflow dello stack se non hai tempo.


1
Non penso che funzioni in pratica. Socrate era ben noto per aver trovato risposte non provando (con esperimenti) a provare alcun concetto che gli venisse in mente.
apoorv020,

Non funziona per domande come "Che cos'è 1 + 1", ma, di nuovo, questo è il loro problema. ;)
Mateen Ulhaq,

santo cielo, quel collegamento è fantastico! Vorrei poter essere addestrato a porre domande in quel modo.
Ape-inago,

5

Le risposte al tutoraggio retribuito sono davvero eccezionali. Ho fatto un sacco di soldi in questo modo sia nella scuola di specializzazione che in quella di laurea.

Potresti anche iniziare un gruppo di studio dopo la scuola, in cui le persone si riuniscono e fanno brainstorming sulle loro domande di programmazione. È molto comune all'università ed è un ottimo modo sia per fare amicizia che per imparare. Quindi, quando qualcuno ti interrompe con una domanda a scuola, digli che sei occupato ma dovrebbero portarlo al gruppo di studio. Ed è sorprendente come spiegare le cose ad altre persone ti aiuti a capire il materiale più profondamente di quanto potresti altrimenti.

Molti programmatori della mia università lo fecero, e non solo ottennero tutti ottimi voti, ma si divertirono molto. Lo abbiamo anche fatto per alcune lezioni di chimica organica mentre lavoravo al dottorato, e tutti abbiamo anche preso A e ci siamo divertiti molto. Avevamo sempre un caffè, alcune persone portavano persino del cibo e qualche volta uscivamo per la birra.


4

Parla con l'insegnante (se devi usare il laboratorio) e vedi se riesci a formare un gruppo di studio. So che vuoi evitare di rispondere alle domande, ma questo ti renderà davvero un programmatore migliore. Avrai una comprensione più profonda se devi spiegarlo ad altri. Questo ti aiuterà a gestire le domande e risposte e a limitare le interruzioni. Di 'a tutti di farlo apparire al gruppo di studio. Non si sa mai, è possibile creare uno o due altri esperti residenti che possono affrontare alcune delle domande.



3

Ho sentito questo in un discorso sulla produttività generale, ma non riesco a trovarlo in questo momento.

L'idea di base è che se ti viene posta una domanda non è di rispondere direttamente a un individuo, ma a un blog (o qualcosa di simile), costruendo così una base di conoscenza a cui puoi indirizzare le persone.
Non dover rispondere più e più volte alle stesse domande aiuta già molto e lo rende davvero interessante. C'è solo un numero limitato di domande che ti verranno poste fino a quando non raggiungerai un punto in cui impari qualcosa da te, perché le domande sono nuove per te.
Anche questo è potenzialmente di aiuto per gli anni successivi a te e persino ad altre scuole.

Forse un forum è un'idea migliore di un blog, perché non dovresti fare tutto da solo. All'inizio avresti motivato le persone a sottolineare domande duplicate e forse un giorno anche gli altri saranno in grado di fornire risposte.
Pensalo come una versione homebrew di stackoverflow, solo per un gruppo specifico, possibilmente nella tua lingua madre.

Sta a te decidere fino a che punto andrai. Il passo fondamentale è eliminare continuamente la necessità di rispondere alle stesse stupide domande.


Sembra che provenga dal discorso di Scott Hanselman sui social network per sviluppatori , ma potresti averlo sentito altrove.
Bill the Lizard,

3

Se sei nella scuola secondaria, in realtà gli studenti dovrebbero chiedere all'insegnante se hanno bisogno di aiuto, non di un compagno di scuola.

In un mondo ideale, probabilmente non dovrebbero parlare con nessuno, a meno che non lavorino in coppia, nel qual caso dovrebbero parlare solo con il proprio partner.

Se le persone non ti lasceranno in pace, di 'al professore di classe di farlo smettere, spiega che significa che non puoi fare il tuo lavoro e che finirà.

Ho lavorato per molto tempo per insegnare IT / Informatica nelle scuole secondarie, quindi so com'è in quelle classi.

NB. Personalmente risponderei alle domande e mi piacerebbe aiutare le persone, puoi fare il tuo lavoro un'altra volta. Quando ero un giovane studente è stato lo stesso per me: ho adorato rispondere alle domande, è un buon servizio pubblico e aiuta lo staff.


Nella programmazione della scuola secondaria l'allievo più esperto di solito conosce più dell'insegnante.
Peter Taylor,

@Peter Taylor: vero, l'ho fatto. ;-) [Ancora l'insegnante dovrebbe fornire assistenza.]
Orbling,

3

Non credo di aver ancora visto questa risposta - perché non provare a superare te stesso e la tua abilità di programmazione pazza e in realtà rispondi solo alle domande? Se è davvero fuori controllo puoi usare uno di questi altri suggerimenti, ma perché non imparare di più insegnando?


+1 La mia filosofia nel mondo professionale è che ho sempre tempo per un altro sviluppatore con una domanda. Smetterò quello che sto facendo e risponderò ogni volta alla domanda di un altro programmatore. Bene, quasi ogni volta - ho avuto esattamente un collega in assoluto che era solo un pazzo insensibile e non mi ha mai lasciato solo e ho dovuto dirgli che lo avrei raggiunto un po '- ma l'ho ancora fatto. Si chiama karma. Mi rendo conto che l'ambiente accademico potrebbe essere leggermente diverso ma non ricordo che qualcuno abbia il problema che stai descrivendo.
Chuck Stephanski,

@Chuck - Mi piace il suono di quello. Se tutti noi prendessimo l'atteggiamento di non avere il tempo di aiutare gli altri sviluppatori che hanno domande, Stack Overflow non sarebbe mai stato il successo che è. Rispondere alle domande ci aiuta a imparare e comprendere le cose in un modo più profondo di quanto non avremmo potuto altrimenti, e chiederle ci aiuta a essere il tipo di umile sviluppatore che continuerà a "succhiare meno ogni giorno" come dice Jeff.
Zann Anderson,

@ Chuck-La filosofia è buona ma quando incontra il mondo reale, spesso non funziona. A volte ti imbatti in quella persona che scopre che è più facile continuare a chiedere aiuto piuttosto che spendere davvero a capire la risposta da soli. Non mi importa quando occasionalmente è una tantum, ma quando diventa il comportamento predefinito della persona influisce gravemente sulla mia capacità di rispettare il programma. Quando ciò accade, chiedo loro di iniziare a inviare la domanda per e-mail e la raggiungerò quando non sono coinvolto in qualcos'altro. Quindi si aggrappano a qualcun altro o imparano a capirlo da soli.
Dunk

Nella mia esperienza, i vampiri di aiuto sono quelli che non muoverebbero un dito se tu fossi quello che aveva bisogno di aiuto.
gnasher729

2

Pubblica un cartello:

Programming questions answered: 25c

(Centesimi di euro, presumo)

Quelli a buon mercato ti lasceranno in pace e farai qualche soldo dagli altri.


4
Lo stesso, ma $ 10 (o euro), almeno ne vale la pena, cosa diavolo ti porterà? Sono affari scadenti, sottovalutare il servizio lascia Radek nella stessa situazione, infastidito.
ottobre

1
Pensi che un gruppo di studenti pagherà 10 euro per ottenere una risposta? Gli studenti sono molto più ricchi in Europa di quanto non siano qui. Immagino che 25c sia ragionevole, e potrebbe non trovarlo così fastidioso se fa soldi. Forse 1 euro è meglio.
Kyralessa,

Risposte alle domande di programmazione: Costo = 1 Rugiada di montagna. Almeno è conveniente e non vieni fuori come un pr * & ^ k. Avrai il vantaggio di essere in grado di rimanere sveglio tutta la notte programmando: p Potresti persino diventare abbastanza bravo con tutta la programmazione extra che puoi quindi caricare una lattina di bevanda Monster Energy ed essere in grado di rimanere sveglio ancora più a lungo.
Dunk

@Kyralessa: questa è l'idea. Vedi, non vuole davvero rispondere alle domande. Vuole concentrarsi sulla propria istruzione e imparare a trovare un lavoro che paga almeno 200.000 volte l'anno rispetto ai 25 centesimi.
gnasher729,

2

A seconda dell'ambiente in cui la tua situazione potrebbe essere diversa, quello che ho fatto è stato: "Per favore, non interrompermi, devo concentrarmi, ma posso aiutarti un po 'alle 15:00". Al secondo allievo: "... può aiutarti dopo questo altro ragazzo, che sarà il primo alle 15:00" agli altri: "... ci sono già alcuni di voi che fanno la fila".

Alcuni risolveranno i loro problemi da soli. Hai tempo per il tuo lavoro, ma migliorerai le tue conoscenze se devi spiegarlo a qualcun altro, e ti sentirai bene per dare un aiuto e non rifiutarti totalmente.

Il prossimo passo è distribuire le domande più semplici ai colleghi intermedi, ai quali hai dato aiuto. Se si rifiutano di diffondere le loro conoscenze, rifiutano di aiutarli in futuro.

Un suggerimento importante è: non aiutare nel modo più veloce possibile, ma in modo duraturo. Questo a lungo termine ti costerà solo meno tempo: mostra loro come risolvere il problema da soli, ma non fare i compiti.


Ah, è una buona idea: incoraggiare il tuo allievo a diventare un insegnante in futuro. Grande idea.
Ape-inago,

2

Che ne dici di dire la verità: "quando lavoro non voglio essere interrotto, quindi se vuoi il mio aiuto devi aspettare fino a quando ho finito, anche se ciò significa aspettare fino alle 22:00".

Quindi se la loro domanda è pigra, sentiti libero di dire "Non lo so".

Non mi preoccuperei per loro "non imparano nulla". Questo è il loro problema.


1

Di 'loro che hai abbastanza lavoro da solo e che non puoi fare a meno. Dillo abbastanza volte e non verranno da te.


1
Penso di dover dire molto. Un sacco.
destra del

1

Dì loro come trovano la soluzione da soli. (Dai loro suggerimenti, digli di cercarlo su Google, qualunque cosa funzioni ...)

Se sono solo pigri e vogliono che tu faccia il loro lavoro, dì loro che non vuoi farlo per loro.

Credo che se spiegheresti alcune cose alle persone che sono disposte a imparare, ne trarrai beneficio. Spiegare le cose alle persone in modo semplice è un'abilità molto importante e non dovresti lasciare fuori questa possibilità di praticarla completamente.

Dopotutto se diventa troppo, basta dare loro una breve risposta su come scoprirlo. (o dì semplicemente "no, lasciami in pace" se lo meritano)

Se vuoi davvero che si fermino, inizia a dare ad alcuni di loro false soluzioni.


+1 per averlo detto a Google. Può essere fatto in un modo senza essere scortese o condiscendente e in un modo che insegna alla persona a pescare.
jmort253,

1

Non farlo.

Esistono 4 metodi di apprendimento, in ordine di efficacia:

  1. Audizione
  2. Vedendo
  3. fare
  4. Insegnamento

Sei fortunato di avere l'opportunità di prendere parte al meccanismo di apprendimento più efficace, così presto nella tua 'carriera' di apprendimento. Non dare loro le risposte, ma insegna loro a risolvere il problema (l'intera cosa "dai un pesce a un uomo").

Alla fine starai molto meglio.

Se ancora non vuoi preoccuparti di loro, allora qualsiasi altra risposta qui è adatta.



0

Trovo che il modo migliore per deludere qualcuno in un modo gentile sia quello di spiegare la situazione e fornire loro alcune opzioni.

le persone mi distraggono costantemente mentre scrivo codice per chiedermi di risolvere un problema.

Se sei occupato a lavorare, spiega semplicemente la tua situazione e consiglia di chiedere all'istruttore o di utilizzare una risorsa come Programmers su Stack Exchange.

"Mi dispiace ma devo concentrarmi sul mio lavoro in questo momento. Dovresti chiedere a [Istruttore] o forse anche cercare un aiuto online."

In terzo luogo, se risolvo un problema per loro, non imparano nulla da esso.

Un'alternativa che enfatizza il tuo terzo punto (o se hai tempo, ma non ti senti bene nell'aiutare):

"Ad essere sincero, voglio aiutarti in questo, tuttavia non sono davvero sicuro di come aiutarti ad imparare il materiale. Certo, posso risolvere il problema, ma ciò toglierebbe la tua opportunità di apprendimento. Davvero non non voglio togliertelo. Consiglio di parlare con [Istruttore], cercare su Google e / o Stack Exchange. "


0

Carica una commissione per progetto e fallo per loro. Ho fatto un bel po 'di impasto durante il college negli ultimi tre anni e mi ha dato un bel reddito disponibile.

Anche se è un amico, faccio pagare almeno un paio di birre. :)


C'è questa bella cosa chiamata "Disonestà accademica" che tende a farti fallire una classe o peggio, continuare a spingere l'idiota nella forza lavoro.
Jeff Langemeier,

@Jeff: Non ci sono regole per aiutare le persone di altre università - e in effetti farlo non è contro la mia morale, quindi per me va bene. :)

@Sergio Non sto dicendo che la mia morale sia a favore o contro, perché il signore sa quando un amico mi offre un pacchetto da 6 o un coltivatore per 10 minuti del mio tempo non li rifiuterò. Ma starei attento a fare un passo avanti, perché alcune scuole persino aggrottano le sopracciglia ad altre sagge altre che fanno il tuo lavoro (cioè se lo scoprono).
Jeff Langemeier,

0

-1 per tutti coloro che dicono alle persone di andare via. Come impareranno tutti? Soprattutto se hanno il coraggio di venire a chiedere aiuto.

Essendo stato io stesso le scarpe dell'OP, ho scoperto che aiutare gli altri con i loro problemi mi ha reso un programmatore MOLTO migliore che mai se mi fossi seduto e scritto tutto nel vuoto. Vedrai molti modi sbagliati di fare le cose, vedrai come gli altri affrontano lo stesso problema e vedrai alcune soluzioni creative ai problemi.

Detto questo, c'è un momento per dire "Sto lavorando a _ , non posso aiutarti adesso" Se il tuo lavoro impegnato per rispettare una scadenza, distrarti è molto fastidioso e uccide la tua produttività. Se la tua scuola lo consente, spostati in un'altra stanza.


0

Ho lo stesso problema, ed ecco come affrontarlo:

Di 'che qualcuno viene da me mentre sto studiando, programmando, ecc. E mi chiede "Come faccio X?" o "Perché il mio codice non funziona?". Rispondo chiedendo loro di spiegare il problema in dettaglio e spiegare cosa si aspettano che faccia il codice e perché, o forse come risolvere parti più piccole del problema. La metà delle volte, questo fa il trucco e mi lasciano in pace.

Per l'altra metà, di solito decido che invece di dare loro una soluzione, in realtà insegnerò loro cosa si stanno perdendo. Potrebbe volerci un po 'più di tempo, ma ripaga perché ora sanno di più e ora possono aiutare gli altri nella loro classe, quindi non mi daranno fastidio.

Se sono davvero fastidiosi, vado avanti con entusiasmo sui vantaggi di MVC e sul perché il loro codice dovrebbe essere suddiviso in funzioni e classi e separando la presentazione dalla logica e non tutti confusi main. Trovo che più a lungo vai avanti e avanti e avanti, o più aggressivamente critichi il loro codice, più velocemente vanno via e più tempo passa prima che torni. Ma davvero, salvo questa strategia per quelli che non mi piacciono o che non provo nemmeno a imparare il materiale.


0

In realtà suggerirei di aiutarli, non dando loro risposte ma rivedendo il loro codice e guidandoli nella direzione corretta. Un semplice "Beh, hai pensato a [x] ..." è estremamente utile per le persone che stanno attraversando un momento difficile afferrare la situazione, e per quanto riguarda le persone che cercano solo volantini, li eviterà quando si renderanno conto che non darai loro solo la risposta.

Mi dispiace, e questo potrebbe sembrare un po 'maleducato, ma a 16 anni hai davvero quella vita esigente che aiutare un compagno di studi ti farà uscire la vita di miglia ed eoni? Forse è stata solo la mia infanzia, ma ricordo un pezzo GIANT di tempo libero che potrebbe essere usato per qualsiasi sforzo che mi è piaciuto tanto, e alcuni che non mi sono necessariamente piaciuti, ma che mi hanno aiutato a lungo termine, uno di che stava aiutando i compagni quando non capivano alcuni concetti [era matematica e programmazione per me].

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.