Questão:
Como evitar interferir no trabalho ineficiente, mas não errado, dos alunos?
elisa
2017-06-01 21:41:58 UTC
view on stackexchange narkive permalink

Sou um novo líder de grupo júnior. Portanto, trabalho em estreita colaboração com meus (também novos) alunos de mestrado.

Tento deixá-los trabalhar e descobrir as coisas da maneira mais independente possível, mas estou de porta aberta para que possam me pedir ajuda. Quando o fizerem, geralmente será sobre scripts.

Nestes casos, sento-me com eles e trabalhamos juntos um pouco. É quando vejo que os alunos costumam trabalhar de maneiras que são claramente ineficientes, mas não objetivamente erradas.

Não quero interferir muito. Este é um processo de aprendizagem e leva tempo para aprender com os próprios erros. Mas eu realmente tenho que me forçar a não sugerir que eles usem atalhos de teclado, uma janela de editor maior para ver mais código, arquivos e nomes de variáveis ​​mais sensíveis, use o Dropbox em vez de enviar por e-mail, etc etc.

Eu acho importante que eu me refreio: seria chato da minha parte apontar tudo, especialmente se, como eu disse, não estiver realmente errado. Existe uma boa maneira de sugerir soluções, mas não ficar nervoso se os alunos não as usarem?

Como estudante, quero aprender.Se eu pudesse estar fazendo algo melhor, quero saber o que e como.Apenas explique as coisas para eles como e quando.
Você acha que as coisas podem ser ineficientes.São eles?Para você, talvez, para outro, talvez nem tanto.Não entre em uma guerra vim vs Emacs (ou uma guerra terrestre na Ásia).A maior parte do que você disse são, na melhor das hipóteses, distrações do ponto real do trabalho do aluno.
"nomes de arquivos e variáveis mais sensíveis" são muito diferentes dos outros.É uma questão de escrever um bom código, o que é muito _muito mais importante do que ser eficiente em um determinado editor.Além disso, nem a caixa de depósito nem o e-mail são boas soluções para compartilhar código;eles devem aprender a usar um sistema de controle de versão (como o git)
Na programação, vários de seus itens * estão * objetivamente errados.Tanto o Dropbox quanto o e-mail são maneiras terrivelmente erradas de compartilhar e fazer backup de código.* Use o controle de origem * para qualquer código armazenado em texto simples (e algumas coisas que não são texto simples).É a ferramenta definitiva para este trabalho.O código é escrito para ser lido e compreendido;arquivos e nomes de variáveis ruins dificultam a leitura.Isso torna a introdução de bugs mais fácil e a verificação da correção mais difícil.Eles querem que seus resultados sejam invalidados por bugs que todos não perceberam?A configuração / uso do editor é o único exemplo que realmente se ajusta à sua pergunta.
Uma pergunta um tanto semelhante pode ser encontrada aqui: https://cseducators.stackexchange.com/questions/251/how-to-avoid-getting-emotTIONAL-attached-to-my-students-projects
> Eu acho que é importante que eu não me contenha.Você é um professor, então _procure_.Compartilhe suas dicas e sugestões com eles.Faça de uma forma que deixe claro que eles são apenas _sua_ maneira subjetiva de fazer as coisas, mas se conter não ajuda literalmente a ninguém.
@BlueRaja-DannyPflughoeft, você poderia sublinhar * onde * OP falou sobre usar o Dropbox para ** compartilhar código? ** Durante todos os meus 3 + 2 anos de estudo de CS, usei o Dropbox e raramente, ou nunca, foi para código.Mas era usado para a maioria das atividades de estudo e colaboração em grupo (ou seja, compartilhamento de recursos 3D, documentos PDF e assim por diante).
@AndreaLazzarotto Embora não seja declarado explicitamente que eles estão compartilhando código, acho que qualquer pessoa que tenha sido ou trabalhado com estudantes de ciência da computação pode ver facilmente que ** muitas ** pessoas que são novas em programação usarão e-mail, Google Drive,etc. para compartilhar o código.Eu fiz exatamente isso nos meus primeiros três anos de universidade antes de um professor me esclarecer, forçando nossa classe a usar o Git.Git deve ser ensinado desde o início, mas muitas vezes não é, infelizmente ...
@ChrisCirefice OK, mas há uma enorme diferença entre compartilhar o código por e-mail e trabalhar em uma pasta compartilhada.Se você tiver que fazer uma atribuição HTML + Javascript, o Dropbox é ótimo.Eu também comecei a usar Git somente depois de começar a trabalhar e usei SVN em um único projeto durante meu mestrado, mas ainda ... se um aluno está enviando várias versões de arquivos relacionados à universidade por e-mail e ele / ela não está usando o Dropbox para fazer backup do dever de casa, então OP está certo em querer sugerir estratégias melhores.
Além disso, estudar ciência da computação é * muito mais * do que programação.Presumir que os alunos usarão o Dropbox como um VCS rápido é um pouco tacanho.
Como estudante de informática, durante minha experiência de trabalho.Meu gerente me ensinou muitas coisas sobre as quais você está falando.A eficiência é extremamente importante no local de trabalho.Cada pessoa trabalhou com muita eficiência, usou tantas teclas de atalho, muitos tinham scripts AHK para adicionar ainda mais teclas de atalho ou para automatizar certas tarefas.A nomenclatura também é extremamente importante, todos os desenvolvedores se reuniram para uma palestra / grupo de aprendizagem duas vezes durante o meu ano lá, uma foi sobre o Java 8 que acabou de ser lançado e a outra foi cerca de 2 horas sobre nomenclatura de variáveis e tal, então eu diriaé importante.
Onze respostas:
Nate Eldredge
2017-06-01 22:08:00 UTC
view on stackexchange narkive permalink

E se você escrevesse uma lista de "dicas gerais de desenvolvimento"? Então, você pode compartilhá-lo com todos uma vez, em vez de constantemente dar conselhos não solicitados.

Você também pode dá-lo a futuros alunos e, com sorte, fazer com que eles tenham um bom começo no primeiro dia.

Sim - eu teria ficado muito grato por algo assim quando eu era um novo aluno de doutorado, e teria achado mais útil do que meu orientador aparentemente interferindo em meu fluxo de trabalho.
Essa é uma boa sugestão.Se o seu grupo de pesquisa tem reuniões semanais, você também pode dedicar 5 minutos ou mais no início de cada reunião para demonstrar hacks de desenvolvimento / fluxo de trabalho.Escrever algo realmente de alta qualidade pode ser demorado e os alunos podem não entender até que vejam um exemplo implementado.
... e compartilhe online, talvez com um canal de feedback, para que você possa melhorar suas dicas e sua própria prática.
Esta é uma dica muito boa.Crie uma lista de "princípios de desenvolvimento", poste-a em seu laboratório para que todos os novos alunos possam ler e contribuir.Responda a todas as perguntas que eles tiverem, ajude-os quando precisarem ... mas deixe passar as dificuldades por conta própria apenas o suficiente para que eles aprendam por si próprios.
Esta é uma ideia muito legal, porém IMHO (e como um ex-aluno de CS) restringindo-os a "dicas de desenvolvimento" é um pouco restrito.A maioria das dicas de produtividade que incluem atalhos de teclado, `pdfgrep`, Dropbox, Evernote, writeLaTeX / Overleaf e também dicas para fazer anotações vão muito além do desenvolvimento e podem ser aplicadas a toda a carreira de estudante.
haff
2017-06-02 03:50:57 UTC
view on stackexchange narkive permalink

O seu grupo de pesquisa tem reuniões semanais? Nesse caso, você pode dedicar de 5 a 10 minutos no início de cada reunião para hacks de fluxo de trabalho / desenvolvimento que você acha que seriam úteis. Se o seu grupo não tiver reuniões periódicas, pode valer a pena implementar algumas, mesmo que apenas com esse propósito. Os alunos podem não gostar disso no início, mas o aumento da produtividade líquida será benéfico para todos. Além disso, você não terá que apontar ineficiências individuais para vários alunos (pelo menos não com tanta frequência).

Eu implemento algo semelhante quando ensino, mas isso é mais voltado para coisas de graduação. Discuto coisas como como / onde se inscrever para bolsas de estudo e estágios, dicas para entrar na pós-graduação, navegar na política do local de trabalho e também algumas coisas simples de fluxo de trabalho de vez em quando. Os alunos comentaram que isso foi muito benéfico.

Gosto da ideia de @Nate Eldredge de apresentar uma lista de dicas gerais de desenvolvimento, mas acho que só isso pode ter algumas deficiências. Pode ser demorado escrever algo realmente de alta qualidade que cubra tudo. Alguns alunos podem nem mesmo lê-lo (mas esses alunos provavelmente não prestarão atenção a nada que você diga durante uma reunião). Outros alunos podem não entender suas sugestões até que as vejam na prática. Isso realmente aconteceu comigo outro dia. Eu conhecia o Emacs 'Tramp, mas nunca entendi como implementá-lo. Eu vi um tweet com um .gif animado demonstrando como funcionava, e tenho usado todos os dias desde então. Talvez discutir essas coisas em reuniões e construir uma lista de dicas de desenvolvimento ao longo do tempo funcione bem.

Você também pode fazer alguns requisitos de grupo que tornam sua vida mais fácil. Por exemplo, você pode exigir que seu grupo use o Dropbox (ou algo semelhante) para compartilhar documentos e, no processo, isso pode incentivá-los a usá-lo em seus próprios materiais. (Você poderia manter o documento de dicas de desenvolvimento em uma pasta compartilhada no Dropbox para começar!) Eu acho que apontar ineficiências pessoalmente pode valer a pena, mas você definitivamente teria que escolher suas batalhas e apenas fazer isso de vez em quando.


Alguns dos comentários indicaram que várias das recomendações do OP são "objetivamente erradas", mas acho que falta a ponto. Se um pesquisador mais experiente vir maneiras de seu grupo ser mais eficiente, provavelmente vale a pena compartilhar, mesmo sem possuir o fluxo de trabalho perfeito. Compartilhar código por meio do Dropbox pode não ser a melhor solução, mas certamente seria melhor do que enviar e receber arquivos por e-mail. (Nem tenho certeza se o OP estava sugerindo que o grupo compartilhasse o código no Dropbox; este é apenas um exemplo). Além disso, é possível que os alunos tenham sugestões para o grupo (ou até mesmo para o líder do grupo), e elas podem ser aprimoradas reunindo todos.

Um comentário também sugeriu não entrar em uma guerra santa do Vim / Emacs ... mas os alunos sabem sobre o Vim, Emacs, outros editores / IDEs e suas capacidades em primeiro lugar? Eu certamente não sabia sobre isso como aluno de mestrado, e desenvolver habilidades com um editor teria me ajudado tremendamente (não estou na área de STEM, então essas ferramentas são incomuns; não tenho certeza sobre a área de OP, mas, novamente, este é apenas um exemplo). Você poderia definitivamente discutir recursos e capacidades sem entrar em uma guerra santa. A mera exposição pode ser extremamente benéfica.

Aceitei essa resposta porque é abrangente e se baseia na resposta (atualmente) mais votada.Mas todas as respostas foram muito úteis.
«Alguns dos comentários indicaram que as várias recomendações do OP são" objetivamente erradas ",» Na verdade, isso realmente não importa porque * esses comentários * são objetivamente errados.Sua resposta é excelente.
TheFamousDirector
2017-06-01 22:06:00 UTC
view on stackexchange narkive permalink

Minha abordagem seria muito mais sutil em comparação com o método de João. Em vez de dizer a eles o que fazer, eu mostraria meu fluxo de trabalho enquanto respondia a uma pergunta semelhante. Certifique-se de fazer isso no seu próprio computador, não 'dirija' no PC de outra pessoa.

Um exemplo seria mostrar a eles seu "método de desenvolvimento", com uma grande janela de código. Use atalhos ou a CLI enquanto observam o que você está fazendo. Você pode dizer algo como "foobar me economiza muito tempo", mas não muito. Os alunos que desejam maior eficiência em seu fluxo de trabalho irão naturalmente perceber o que funciona para eles.

"Você pode conduzir um cavalo até a água, mas não pode obrigá-lo a beber"

Tendo visto outras pessoas trabalhando um pouco, eu diria que este é um bom conselho, além de não usar a máquina.Principalmente se muito do que está acontecendo está acontecendo no terminal.Isso ocorre porque quando alguém tem um monte de atalhos e comandos eficientes eu adoraria pegá-los, mas provavelmente não consigo segui-los em tempo real.Se eles inseriram todos aqueles comandos simples em meu terminal, posso olhar para trás no histórico do terminal para ver como eles fizeram isso.(por exemplo, o instrutor usa "gato" para exibir um arquivo de texto, o texto imediatamente move o comando para fora da tela, mas ainda posso voltar para ele)
Essa é uma ideia muito boa!Sempre hesito em tocar nas estações de trabalho das pessoas.Eles podem dizer que está tudo bem, mas se você estiver em uma posição de autoridade, eles podem pensar que não têm escolha.
Isso pressupõe que a nova pessoa (geralmente estudantes de graduação inexperientes) pode captar coisas que são tão comuns para pesquisadores / desenvolvedores experientes. Acredito que falar pelo menos uma vez sobre as melhores práticas é essencial, porque na maioria das vezes eles simplesmente não sabem por que fazemos certas coisas que fazemos. O ensino no local de trabalho é desnecessário.Se eles estão no laboratório e escrevem código / texto / etc, mais cedo ou mais tarde, eles fazem perguntas.E então podemos mostrar como colocamos nossas recomendações em prática, e eles entendem por si mesmos que seu fluxo de trabalho precisa melhorar.
O OP simplesmente deseja mudar para outro cavalo.
João Rocha da Silva
2017-06-01 21:54:44 UTC
view on stackexchange narkive permalink

Pessoalmente, é o que digo aos meus alunos no início dos seus trabalhos e a minha justificação entre parênteses.

  1. Use o Dropbox / GDrive / o que você tem para backups (se você perder o trabalho 1 semana antes do envio, você está ferrado).

  2. Configure um wiki para a documentação do projeto no servidor da faculdade (se você não fizer anotações depois, você não sabe o que escrever na dissertação).

  3. Use Mendeley para gerenciamento de referência (gaste tempo escrevendo .bib's ou escrevendo sua dissertação, à sua escolha).

  4. Configure o LaTeX e escreva sua dissertação nele (o Word é bom para até 3 -página de documentos).

  5. Use máquinas virtuais para seu ambiente de trabalho e mantenha backups regulares (não perca tempo configurando coisas novamente e novamente).

  6. Envie e-mail para ambos os supervisores em CC e sempre use "Responder a todos" para e-mails relacionados ao trabalho (não posso ajudá-lo se não sei o que você está fazendo).

  7. Apareça no laboratório com frequência (apenas conversando com pesquisadores experientes, você aprende as maneiras mais rápidas e inteligentes de atingir seus objetivos).

  8. Envie-me relatórios de progresso frequentemente (se você você não pede comentários, não tenho ideia se o seu trabalho está pronto para eles).

(Opcional)

  1. Obtenha um SSD para o laptop deles, se eles puderem pagar (paciência vale mais do que dinheiro).

Quanto a me impedir de apontar todas as pequenas coisas, é fácil: é o trabalho deles e a escolha deles fazer um bom ou não. Nas palavras de Morfeu, "Só posso mostrar a porta. Você é quem tem que passar por ela".

Escrever .bibs leva alguns segundos por referência.Aprender como usar um novo software leva ... bem, mais do que alguns minutos.Qual é o ponto?
Segundos ??Você escreveu uma tese de mestrado ou tese de doutorado?Leva alguns minutos, na melhor das hipóteses, porque você precisa pesquisar as referências corretas e ir muito longe na referência.Multiplique por 100-120 que é o que se espera de um mestrado ou 30-40 para um artigo completo, adicione o tempo de compilação para verificar se as coisas estão indo bem ... Bem, acho que entendi bem.Também esgota seu tempo e paciência, quando você pode simplesmente arrastar e soltar PDFs e revisar o que mendeley produz para você.Honestamente, hoje em dia temos a sorte de ter ferramentas tão incríveis!
Er, sim, obrigado.Eu escrevi uma tese de doutorado e publiquei muitos artigos.Escrever entradas no BibTeX não era uma proporção remotamente significativa do tempo gasto fazendo qualquer uma dessas coisas.Não acho que demore muito para pesquisar o título de um artigo no Google para encontrar os detalhes bibliográficos (ou olhar a primeira página se for o PDF do periódico oficial).O tempo de compilação é irrelevante, já que você precisa compilar o documento de qualquer maneira, e não é como se escrever entradas em .bib fosse algum tipo de ciência espacial que precisa de mais verificação do que escrever um parágrafo de texto.
Eu aplaudo sua paciência.Pessoalmente, escrever .bibs me dá vontade de cortar os pulsos com uma colher.
Vejo?Você também é paciente!:-D
Mendeley é tremendamente mais eficiente do que escrever arquivos bib, especialmente se você não for um especialista em LaTeX (raramente os alunos são).Mas, honestamente, o mesmo se aplica a LyX vs LaTeX.Você * deveria * aprender o básico do LaTeX, mas escrever no LyX é muito mais rápido.Tanto minhas teses como muitos trabalhos foram escritos com o LyX e economizou muito tempo.Eu também trabalhei em papéis e relatórios em LaTeX, mas por exemplo as tabelas sempre foram feitas no LyX e então o código foi colado no documento LaTeX.
Carol
2017-06-01 22:24:53 UTC
view on stackexchange narkive permalink

Escolha as poucas coisas que são importantes e contam como 'melhores práticas' (ser sensato ou ter algum padrão sobre nomes de arquivos e variáveis ​​parece muito mais importante do que o tamanho da janela de edição ou atalho de teclado para mim). Dê algumas regras ou exemplos que mostrem as diretrizes em ação e vá em frente e seja um pouco exigente com relação a elas.

As outras coisas - (usar uma janela de edição maior, atalho) não são realmente 'importantes' como prática recomendada. Ficar por cima do ombro de um aluno e dizer, pressione aquela tecla, etc etc, é realmente irritante e pode ser opressor se muitas informações / detalhes forem dados a ele. (Qual detalhe é importante, que é apenas você sendo útil?) E, na verdade, eles podem ter razões bastante válidas depois de algum tempo para fazer isso de maneira diferente (eles podem encontrar outros atalhos que funcionam melhor com seu 'estilo' ou que você achar útil se você observá-los.

No entanto, dito isso - é verdade que as técnicas que economizam tempo e que os poupam de frustrações não são imediatamente óbvias para os novatos. Descobri que a melhor maneira é deixar alguém brincar com as ferramentas primeiro para que eles possam se deparar com algumas das frustrações. Mas, principalmente, simplesmente responda às perguntas básicas e, se houver alguma pergunta específica sobre maneiras "mais fáceis" de fazer isso, diga a eles. Depois, faça o individual um para mostrar como você faria a tarefa, apontando suas próprias práticas e como elas evitam frustrações específicas. No entanto, nesse ponto, deixe então escolher fazer da maneira que achar melhor. Não é útil ficar sugerindo isso sempre você os está ajudando.

Embora não esteja envolvido no treinamento de alunos em codi ng, temos que treinar usuários novatos em equipamentos que são um pouco complicados e têm um longo período de treinamento para se tornarem especialistas, então o processo tem algumas semelhanças.

Escolha os aspectos que são quase inegociáveis ​​porque são importantes. Não se preocupe muito quando os novatos continuarem optando por ignorar as dicas que você deu a eles que se baseiam naquilo que os especialistas costumam considerar como estratégias "úteis" para tornar sua própria vida mais fácil.

aparente001
2017-06-02 12:38:55 UTC
view on stackexchange narkive permalink

@haff sugerido em um comentário:

Se o seu grupo de pesquisa tem reuniões semanais, você também pode dedicar 5 minutos ou mais no início de cada reunião para demonstrar hacks de desenvolvimento / fluxo de trabalho.

Uma ideia interessante! Agora, vamos variar um pouco:

Dedique algum tempo da reunião do grupo (não necessariamente 5 minutos apenas, e não necessariamente em cada reunião) para fazer round robin, dando aos alunos a oportunidade de compartilhar seus próprios hacks de fluxo de trabalho uns com os outros .

Avise-os por e-mail com antecedência para que possam pensar sobre quais hack (s) de trabalho desejam para compartilhar ou demonstrar. Em outras palavras, não os pegue de surpresa. E permitir que os indivíduos escolham não compartilhar algo.

Além disso, você pode ter algumas reuniões do tipo workshop em que alguém se voluntaria para assumir a cadeira de demonstração, desenvolvendo código ou testando rapidamente como uma master class em um departamento de música. Em seguida, convide os alunos a comentar de forma construtiva, com o objetivo de que cada aluno encontre algo para elogiar. Se eles quiserem fazer algumas sugestões construtivas sobre como depurar de forma mais eficaz ou eficiente, tudo bem, mas o objetivo principal deve ser aprender a fornecer feedback positivo aos colegas .

É é notável como as dicas e correções de um colega são muito mais eficazes em comparação a ter todas elas vindo do professor .

Chris Johns
2017-06-02 01:38:41 UTC
view on stackexchange narkive permalink

Não vejo nada de errado em fazer sugestões. Afinal você os está ensinando e não parece absurdo oferecer conselhos sobre como melhorar a forma como trabalham, principalmente se a sugestão é tornar algo objetivamente mais eficiente.

Eu concordo inteiramente que pode não ser uma coisa boa forçar os alunos a trabalhar de uma certa maneira se realmente não fizer sentido para eles. Certamente, minha experiência é que uma das coisas mais úteis sobre como trabalhar com alguém experiente (seja em um ambiente de ensino formal ou não) é que eles saberão muitos truques úteis que não são necessariamente intuitivamente óbvios.

Depois de fazer a sugestão, você pode deixar que eles decidam se querem ou não agir, mas pelo menos eles terão a informação.

Dylan Meeus
2017-06-02 13:52:06 UTC
view on stackexchange narkive permalink

TL; DR: Faça uma distinção entre 'dicas e truques' e 'diretrizes / boas práticas'. Dê dicas sobre o primeiro e tente aplicar o último.

Se for possível em sua situação, você pode querer organizar uma pequena apresentação. Algo como 'dicas e truques do EditorX'. Onde você pode compartilhar com eles algumas dicas e truques sobre como usar o editor de uma maneira melhor, sem apontar nenhum aluno em particular.

Isso não é muito diferente da indústria. Eu trabalho como engenheiro de software e temos palestras semanais onde podemos fazer uma demonstração de algo interessante na área. A cada poucas semanas, alguém fará uma pequena demonstração de algumas dicas e truques. Todos são encorajados a fazer isso.

O benefício dessa abordagem, para mim, é que você faz outras pessoas ver o benefício (desenvolvimento mais rápido, por exemplo) com uma pequena demonstração. Você também vai deixá-los curiosos para encontrar mais dicas e truques que possam compartilhar.

Dito isso sobre dicas e truques, há também outras coisas que não são apenas dicas e truques, mas sim diretrizes e boas práticas que devem ser seguidas. Se você usar um atalho ou não, é totalmente opcional, ou se você perceber que existe uma configuração de Digitação de latência zero no IntelliJ (um IDE) e quiser usá-la. No entanto, por outro lado, temos coisas como controle de versão, nomes de variáveis ​​sensíveis, mantendo alguma documentação, o que eles realmente deveriam estar fazendo. A maneira como eles o usam é mais uma vez na parte de 'dicas e truques', mas eles devem pelo menos saber as vantagens de usá-lo e ser fortemente encorajados a fazê-lo.

A maneira como fiz isso ao ensinar (ambiente acadêmico) foi reforçando o uso dessas coisas. Não tenho certeza se você pode impor isso em sua posição, mas se possível, eu o faria. Você pode definir algumas 'diretrizes' para o seu grupo? Nesse caso, aplique as diretrizes de codificação e tenha-as documentadas em algum lugar. Coloque qualquer coisa relevante nesse documento, como se você quiser uma caixa de cobra ou uma caixa de camelo. Dê algumas dicas sobre como encontrar bons nomes de variáveis ​​e classes. Aplicar push para git (svn, ..) e mostrar exemplos de boas mensagens de commit.

(Uma maneira de impor um bom estilo de código poderia ser usar uma ferramenta que verifica a sintaxe, os padrões de nomes de variáveis, etc. Existem alguns bons linters disponíveis para muitas línguas)

O aqueles a quem ensinei nem sempre viram o benefício dessas coisas - mas no final deram uma volta de 180 graus. Fiquei feliz em ver as diretrizes sendo respeitadas e os alunos realmente perceberem o benefício disso.

Fábio Dias
2017-06-01 23:19:08 UTC
view on stackexchange narkive permalink

é um processo, concordo, mas se você não apontar os "erros", como eles saberiam que poderiam ser melhorados?

Pessoalmente, eu critico tudo e até agora tem funcionado bem. Também gosto de deixar claro esse ponto exato e lembrar de parabenizá-los quando eles realmente fizerem as coisas certas na primeira tentativa (caso contrário, parece que você se concentra muito no feedback negativo).

Claro, é importante lembrar que, em última análise, a decisão não é sua. Você apresenta todos os lados, prós, contras e eles decidem. Outra maneira de dizer isso é mencionando cada coisa três vezes, no máximo :)

"como eles saberiam que poderiam ser melhorados" - bem, há pessoas que descobrem como desenvolver uma rotina eficiente elas mesmas.
@O.R.Mapper, de fato, mas meu pensamento era mais amplo do que teclas de atalho / script / rotina, que era meu entendimento da questão.Basicamente, sou chato o suficiente para ter um comentário sobre praticamente qualquer coisa relacionada aos meus alunos.Não apenas relacionado a coisas acadêmicas, mas evitando os tópicos problemáticos / inadequados ...
Eu concordo com isso, porque em muitos casos as pessoas simplesmente não sabem o que estão fazendo de errado.Se ninguém lhes disser pelo menos uma vez que eles poderiam melhorar seu trabalho de uma certa forma, talvez eles encontrem por conta própria, talvez não ...
O. Jones
2017-06-02 06:36:59 UTC
view on stackexchange narkive permalink

Eu sugiro que você aborde esta parte do ensino da arte da programação como se você fosse um diretor de teatro.

Diga a seus alunos que você vai reservar algum tempo para observar cada um deles trabalhando e dar-lhes notas depois.

Observe um aluno e faça anotações. Fique em silêncio durante a observação.

Depois de sua observação, "faça suas anotações:" tenha uma conversa em que conte ao aluno suas observações sobre o trabalho dele e dê sugestões de melhoria. Dessa forma, você está oferecendo suas sugestões de forma estruturada, e não importunando-as. Certifique-se de dizer a eles que eles não estão sendo marcados ou avaliados nisso.

Você também pode incentivá-los a fazer isso uns pelos outros.

AnoE
2017-06-05 03:54:32 UTC
view on stackexchange narkive permalink

Vou tentar responder à pergunta que você está realmente fazendo - ou seja, as perguntas sobre você , não sobre seus alunos:

Como evitar interferir no trabalho ineficiente-mas-não-errado dos alunos?

... e ...

Existe um boa maneira de [...], mas não ficar nervoso, se os alunos não os usarem?

(E minha resposta é estritamente sobre conselhos que não foram solicitados, como no seu caso. Nada disso obviamente se aplica quando seus alunos perguntam a você como melhorar.)

Infelizmente, você está tramando algo muito profundo com suas perguntas. Existem dois fatos que podem tornar pessoas como você (ou eu), que têm técnicas muito eficientes para fazer coisas , muito infelizes por testemunhar outras pessoas caminhando dolorosamente devagar - por qualquer motivo, não necessariamente relacionado a sua inteligência em tudo.

  1. Nem todas as técnicas (de usar um editor, ferramenta de upload ou qualquer outra coisa) funcionam da mesma forma para todas as pessoas. O que você pode achar muito óbvio (por exemplo, ter a maioria das teclas de atalho do Emacs corrigidas, ser capaz de imaginar uma boa macro de teclado instantânea fluindo diretamente de seus dedos durante a edição, etc.) pode ser totalmente impossível para outros. Você chegou às suas técnicas pensando muito e profundamente sobre elas, ou descobrindo intuitivamente algo que corresponda à forma como seu cérebro está conectado. Isso não é necessariamente aplicável a outras pessoas. Daí as guerras VI / Emacs, Windows / Linux, PC / Mac, etc.
  2. Nem toda pessoa é realmente capaz de aceitar conselhos, por mais bem intencionados que sejam, e aplicá-los em seu próprio trabalho, por diferentes razões. Na verdade, em minha experiência em todos os aspectos da vida (universidade, trabalho, família, amigos), havia apenas muito, muito poucas pessoas que eram capazes de aceitar qualquer conselho não solicitado qualquer.

Agora. Não vou entrar nas razões específicas para esses dois fatos, porque são muitos, e isso não importa. Apenas um exemplo: para "1". a outra pessoa pode simplesmente não saber sobre isso; suas "rotinas de pensamento" podem simplesmente não coincidir com a forma como um editor trabalha, e assim por diante. Para "2", você pode simplesmente não ser capaz de explicar com as palavras que eles precisam ouvir, eles podem estar bloqueados pelo orgulho etc. Pode haver muitos outros motivos, mas minha resposta não é sobre esses motivos. Claro, para muitos deles, há uma maneira de contornar isso. Mas você sempre terminará na posição em que sentirá dor, porque deseja muito ajudar , mas eles simplesmente não entendem.

Como se conter

Simplesmente faça. Sente-se pacientemente enquanto eles fazem suas coisas ineficazes. Sim. Obviamente, você pode mostrar a eles como trabalha, mas, francamente, eles verão isso simplesmente observando você, se você estiver trabalhando em um ambiente semelhante. Você não precisa fazer uma "coisa" com isso. Eles são estudantes e devem ser usados ​​para usar seu cérebro; se eles virem você trabalhando extremamente rápido enquanto demoram muuuuuito, eles devem ser capazes de descobrir que algo está acontecendo. A questão é que não é você que precisa fazer algo. Não é você o responsável aqui.

Se eles virem que você está trabalhando rápido, eles podem

  • pedir que você explique como você faz isso.
  • Se sentir mal com isso e pratique em casa.
  • Sente-se com os amigos e "compare notas".
  • Compre algum livro e leia sobre ele, seja ele qual for.
  • Baixe as ferramentas que você usa e descubra-as.
  • Ou não se incomode com isso e se atenha à lentidão.

E provavelmente outras coisas.

Como não ficar nervoso se eles não usarem suas dicas

O segredo para não ficar nervoso é pensar nisso com antecedência e remover a ideia de que você pode de alguma forma mudar outra pessoa da sua cabeça. Você não pode mudar outro ser, nunca. Você pode persuadi-los, forçá-los, liderar pelo exemplo ou qualquer outra coisa, e pode aproveitar as situações em que eles realmente melhoram, mas não pode realmente fazer que mudem.

Então, por lógica pura, não faz sentido nenhum ficar nervoso. É o caso de não ver a realidade como ela é. Se você aceitar que as coisas são como são, com certeza você ficará nervoso.



Estas perguntas e respostas foram traduzidas automaticamente do idioma inglês.O conteúdo original está disponível em stackexchange, que agradecemos pela licença cc by-sa 3.0 sob a qual é distribuído.
Loading...