Pytanie:
Jak powstrzymać się od ingerowania w nieefektywną, ale niezłą pracę uczniów?
elisa
2017-06-01 21:41:58 UTC
view on stackexchange narkive permalink

Jestem nowym i młodszym liderem grupy. Dlatego też dość blisko współpracuję z moimi (również nowymi) studentami studiów magisterskich.

Staram się pozwolić im pracować i wymyślać rzeczy tak niezależnie, jak tylko mogą, ale miejcie drzwi otwarte, aby mogli poprosić mnie o pomoc. Kiedy to zrobią, często będzie to dotyczyło skryptów.

W takich przypadkach siedzę z nimi i trochę razem pracujemy. Wtedy widzę, że uczniowie często pracują w sposób, który jest wyraźnie nieefektywny, ale obiektywnie nie jest zły.

Nie chcę zbytnio ingerować. To jest proces uczenia się, a nauka na własnych błędach wymaga czasu. Ale naprawdę muszę się zmusić, by nie sugerować używania skrótów klawiaturowych, większego okna edytora, aby zobaczyć więcej kodu, bardziej sensownych nazw plików i zmiennych, używania Dropbox zamiast wysyłania e-maili itp.

Myślę, że ważne jest, abym się powstrzymał: denerwowałbym się, gdybym zwracał uwagę na każdą drobiazg, zwłaszcza jeśli, jak powiedziałem, tak naprawdę nie jest źle. Czy jest dobry sposób, aby zasugerować rozwiązania, ale nie denerwować się, jeśli uczniowie ich nie stosują?

Jako student chcę się uczyć.Gdybym mógł zrobić coś lepszego, chciałbym wiedzieć, co i jak.Po prostu wyjaśnij im, jak i kiedy.
Myślisz, że rzeczy mogą być nieefektywne.Czy oni są?Dla ciebie, może, dla innych, może nie tak bardzo.Nie wdawaj się w wojnę vim vs Emacs (lub wojnę lądową w Azji).Większość z tego, co powiedziałeś, to w najlepszym przypadku odwrócenie uwagi od prawdziwego punktu pracy studenta.
„bardziej sensowne nazwy plików i zmiennych” znacznie różnią się od pozostałych.To kwestia napisania dobrego kodu, który jest znacznie _ daleko_ ważniejszy niż wydajność w danym edytorze.Ponadto ani Dropbox, ani poczta e-mail nie są dobrymi rozwiązaniami do udostępniania kodu;powinni nauczyć się obsługi systemu kontroli wersji (np. git)
W programowaniu kilka z twoich pozycji * jest * obiektywnie błędnych.Zarówno Dropbox, jak i poczta e-mail to przerażająco niewłaściwe sposoby udostępniania kodu i tworzenia kopii zapasowych.* Proszę używać kontroli źródła * dla każdego kodu przechowywanego w postaci zwykłego tekstu (i niektórych rzeczy, które nie są zwykłym tekstem).To ostateczne narzędzie do tej pracy.Kod należy czytać i rozumieć;słabe nazwy plików i zmiennych utrudniają ich odczytanie.To sprawia, że wprowadzanie błędów jest łatwiejsze, a sprawdzanie poprawności trudniejsze.Czy chcą, aby ich wyniki zostały unieważnione przez błędy, które wszyscy przegapili?Konfiguracja / użycie edytora to jedyny przykład, który naprawdę pasuje do twojego pytania.
Nieco podobne pytanie można znaleźć tutaj: https://cseducators.stackexchange.com/questions/251/how-to-avoid-getting-emotionally-attached-to-my-students-projects
> Myślę, że to ważne, żebym się powstrzymywał.Jesteś nauczycielem, więc _uczyć_.Podziel się z nimi swoimi wskazówkami i wskazówkami.Zrób to w sposób, który jasno pokaże, że jest to tylko Twój subiektywny sposób robienia rzeczy, ale powstrzymywanie się nie pomaga dosłownie nikomu.
@BlueRaja-DannyPflughoeft, czy mógłbyś podkreślić, * gdzie * OP mówił o używaniu Dropbox do ** udostępniania kodu? ** Przez całe 3 + 2 lata studiów CS korzystałem z Dropbox i rzadko, jeśli w ogóle, służyło to do tworzenia kodu.Ale był używany do większości zajęć związanych z nauką i współpracą grupową (tj. Do udostępniania zasobów 3D, dokumentów PDF itp.).
@AndreaLazzarotto Chociaż nie jest wyraźnie powiedziane, że udostępniają kod, myślę, że każdy, kto był lub pracował ze studentami informatyki, może łatwo zauważyć, że ** wiele ** osób, które są nowicjuszami w programowaniu, będzie używać poczty e-mail, Dysku Google,itp., aby udostępnić kod.Robiłem to dokładnie przez pierwsze trzy lata na uniwersytecie, zanim profesor oświecił mnie, zmuszając naszą klasę do korzystania z Git.Git należy uczyć od samego początku, ale często nie jest to niestety ...
@ChrisCirefice OK, ale istnieje ogromna różnica między udostępnianiem kodu za pośrednictwem poczty e-mail a pracą w udostępnionym folderze.Jeśli musisz wykonać przypisanie HTML + Javascript, Dropbox jest w porządku.Zacząłem też używać Git dopiero po rozpoczęciu pracy i użyłem SVN w jednym projekcie podczas studiów magisterskich, ale nadal ... jeśli student wysyła pocztą elektroniczną kilka wersji plików związanych z uczelnią i nie używa Dropbox do tworzenia kopii zapasowych zadań domowych, to OP ma rację, chcąc zasugerować lepsze strategie.
Ponadto studiowanie informatyki to * o wiele więcej * niż programowanie.Zakładanie, że uczniowie będą korzystać z Dropbox jako szybkiego systemu VCS, jest nieco zawężony.
Jako student informatyki, w trakcie mojej pracy.Mój menadżer nauczył mnie wielu rzeczy, o których mówisz.Wydajność jest szalenie ważna w miejscu pracy.Każda osoba pracowała bardzo wydajnie, używała tak wielu skrótów klawiszowych, wielu miało skrypty AHK, aby dodać jeszcze więcej klawiszy skrótu lub zautomatyzować niektóre zadania.Nazewnictwo jest również niesamowicie ważne, wszyscy programiści zebrali się na wykładzie / grupie ucząc się dwa razy podczas mojego tam roku, jeden dotyczył Java 8, która właśnie została wydana, a druga około 2 godzin na nazewnictwie zmiennych i tak dalej, więc powiedziałbymto ważne.
Jedenaście odpowiedzi:
Nate Eldredge
2017-06-01 22:08:00 UTC
view on stackexchange narkive permalink

A co by było, gdybyś sporządził listę „ogólnych wskazówek rozwojowych”? Wtedy możesz podzielić się nim ze wszystkimi raz, zamiast ciągle udzielać niechcianych porad.

Możesz również przekazać go przyszłym uczniom i miejmy nadzieję, że dobrze rozpoczną od pierwszego dnia

Tak - byłbym bardzo wdzięczny za coś takiego, kiedy byłbym nowym doktorantem i uznałbym to za bardziej pomocne niż mój doradca, który pozornie przeszkadzał mi w pracy.
To dobra sugestia.Jeśli Twoja grupa badawcza ma cotygodniowe spotkania, możesz również poświęcić około 5 minut na początku każdego spotkania na zademonstrowanie hacków dotyczących rozwoju / przepływu pracy.Napisanie czegoś naprawdę wysokiej jakości może być czasochłonne, a uczniowie mogą tego nie zrozumieć, dopóki nie zobaczą zaimplementowanego przykładu.
... i udostępnij je w Internecie, na przykład na kanale, na którym można uzyskać informacje zwrotne, aby ulepszyć swoje wskazówki i własną praktykę.
To naprawdę dobra wskazówka.Utwórz listę „założeń rozwojowych” i umieść ją w swoim laboratorium, aby wszyscy nowi uczniowie mogli czytać i wnosić swój wkład.Odpowiedz na wszelkie pytania, które mają, pomóż im, kiedy tego potrzebują ... ale pozwól im przejść przez trudności na tyle, by same się uczyły.
To bardzo fajny pomysł, jednak IMHO (i jako były student CS) ograniczające je do „wskazówek rozwojowych” jest nieco wąskie.Większość wskazówek dotyczących produktywności, które obejmują skróty klawiaturowe, „pdfgrep”, Dropbox, Evernote, writeLaTeX / Overleaf, a także wskazówki dotyczące robienia notatek, wykraczają daleko poza programowanie i można je zastosować do całej kariery studenckiej.
haff
2017-06-02 03:50:57 UTC
view on stackexchange narkive permalink

Czy Twoja grupa badawcza ma cotygodniowe spotkania? Jeśli tak, możesz poświęcić 5–10 minut na początku każdego spotkania na hacki dotyczące przepływu pracy / programowania, które Twoim zdaniem byłyby pomocne. Jeśli Twoja grupa nie ma okresowych spotkań, warto je zrealizować choćby tylko w tym celu. Na początku studentom może się to nie podobać, ale wzrost wydajności netto będzie korzystny dla wszystkich. Nie będziesz też musiał wskazywać wielu uczniom indywidualnych nieefektywności (przynajmniej nie tak często).

Wdrażam coś podobnego, gdy uczę, ale jest to bardziej ukierunkowane na studia licencjackie. Omawiam takie rzeczy, jak jak / gdzie ubiegać się o stypendia i staże, wskazówki dotyczące dostania się do szkoły średniej, poruszanie się po polityce miejsca pracy, a także od czasu do czasu kilka prostych rzeczy związanych z przepływem pracy. Studenci skomentowali, że jest to bardzo korzystne.

Podoba mi się pomysł @Nate'a Eldredge'a, aby stworzyć listę ogólnych wskazówek dotyczących rozwoju, ale myślę, że samo to może mieć pewne wady. Napisanie czegoś naprawdę wysokiej jakości, obejmującego wszystko, może być czasochłonne. Niektórzy uczniowie mogą nawet tego nie przeczytać (ale ci uczniowie prawdopodobnie też nie będą zwracać uwagi na nic, co powiesz podczas spotkania). Inni uczniowie mogą nie zrozumieć twoich sugestii, dopóki nie zobaczą ich w praktyce. To faktycznie przydarzyło mi się pewnego dnia. Wiedziałem o Trampie Emacsa, ale nigdy nie rozumiałem, jak go wdrożyć. Widziałem tweeta z animowanym plikiem .gif pokazującym, jak to działa i od tamtej pory używam go codziennie. Być może omawianie tych rzeczy na spotkaniach i tworzenie listy wskazówek rozwojowych z czasem może się sprawdzić.

Możesz także określić wymagania grupowe, które ułatwią Ci życie. Na przykład możesz wymagać, aby Twoja grupa korzystała z Dropbox (lub czegoś podobnego) do udostępniania dokumentów, a także w procesie, który może zachęcić ją do wykorzystania go do własnych materiałów. (Na początek możesz zachować dokument ze wskazówkami programistycznymi w folderze udostępnionym w Dropbox!) Myślę, że warto osobiście wskazać nieefektywność, ale zdecydowanie musiałbyś wybierać swoje bitwy i robić to tylko od czasu do czasu.


EDIT”

Niektóre komentarze wskazywały, że kilka zaleceń PO jest „obiektywnie błędnych”, ale myślę, że pomija to punkt. Jeśli starszy badacz widzi sposoby, dzięki którym jego / jego grupa może być bardziej wydajna, prawdopodobnie warto się nimi podzielić, nawet jeśli nie ma idealnego przepływu pracy. Udostępnianie kodu przez Dropbox może nie być najlepszym rozwiązaniem, ale z pewnością byłoby lepsze niż przesyłanie plików e-mailem w tę iz powrotem. (Nie jestem nawet pewien, czy OP sugerował, że kod udostępniania grupowego na Dropbox; to tylko przykład). Możliwe jest również, że uczniowie mogą mieć sugestie dla grupy (lub nawet przywódcy grupy), a te można rozwinąć, zbierając wszystkich razem.

Jeden komentarz sugerował również, aby nie wdawać się w świętą wojnę Vima / Emacsa ... ale czy uczniowie wiedzą przede wszystkim o Vimie, Emacsie, innych edytorach / IDE i ich możliwościach? Z pewnością nie wiedziałem o nich jako student studiów magisterskich, a rozwijanie umiejętności z edytorem pomogłoby mi ogromnie (nie jestem w dziedzinie STEM, więc te narzędzia są rzadkie; nie jestem pewien co do dziedziny OP, ale znowu, to tylko przykład). Z pewnością można omówić cechy i możliwości bez wdawania się w świętą wojnę. Samo ujawnienie może być niezwykle korzystne.

Zaakceptowałem tę odpowiedź, ponieważ jest wyczerpująca i opiera się na (obecnie) najbardziej opiniowanej odpowiedzi.Ale wszystkie odpowiedzi były bardzo pomocne.
„Niektóre z komentarzy wskazywały, że kilka zaleceń PO jest„ obiektywnie błędnych ”,» Rzeczywiście, to naprawdę nie ma znaczenia, ponieważ * te komentarze * są obiektywnie błędne.Twoja odpowiedź jest znakomita.
TheFamousDirector
2017-06-01 22:06:00 UTC
view on stackexchange narkive permalink

Moje podejście byłoby znacznie bardziej subtelne w porównaniu z metodą João. Zamiast mówić im, co mają robić, pokazałem im mój przepływ pracy, odpowiadając na podobne pytanie. Upewnij się, że robisz to na swoim komputerze, nie jeździj na czyimś komputerze.

Przykładem może być pokazanie im swojej „metody programowania” z dużym oknem kodu. Używaj skrótów lub interfejsu wiersza polecenia, gdy obserwują, co robisz. Możesz powiedzieć coś w stylu „foobar oszczędza mi dużo czasu”, ale nie za dużo. Uczniowie, którzy chcą większej wydajności w swoim przepływie pracy, w naturalny sposób zauważą to, co dla nich działa.

„Możesz doprowadzić konia do wodopoju, ale nie możesz zmusić go do picia”

Widząc, jak inni ludzie trochę pracują, powiedziałbym, że to dobra rada, poza tym, że nie używają ich maszyny.Szczególnie jeśli wiele z tego, co się dzieje, dzieje się z terminala.Dzieje się tak, ponieważ gdy ktoś ma kilka wydajnych skrótów i poleceń, chciałbym je odebrać, ale prawdopodobnie nie mogę ich śledzić w czasie rzeczywistym.Jeśli wprowadzili wszystkie te zgrabne polecenia do mojego terminala, mogę spojrzeć na historię terminala, aby zobaczyć, jak to zrobili.(np. instruktor używa słowa „kot” do wyświetlenia pliku tekstowego, tekst natychmiast przenosi polecenie z ekranu, ale nadal mogę do niego wrócić)
To naprawdę dobry pomysł!Po prostu zawsze waham się, czy dotykać stanowisk pracy ludzi.Mogą powiedzieć, że to w porządku, ale jeśli masz władzę, mogą pomyśleć, że nie mają wyboru.
Zakłada się, że nowa osoba (zwykle niedoświadczeni studenci studiów licencjackich) może wychwycić rzeczy, które są tak powszechne dla badaczy / doświadczonych programistów. Uważam, że chociaż raz mówienie o najlepszych praktykach jest niezbędne, ponieważ w większości przypadków po prostu nie wiedzą, dlaczego robimy pewne rzeczy, które robimy. Nauczanie w miejscu pracy jest oczywiste.Jeśli są w laboratorium i piszą kod / tekst / itp., Wcześniej czy później zadają pytania.Następnie możemy pokazać, w jaki sposób wprowadzamy nasze zalecenia w życie, a oni sami rozumieją, że ich przepływ pracy wymaga poprawy.
OP chce po prostu przejść na innego konia.
João Rocha da Silva
2017-06-01 21:54:44 UTC
view on stackexchange narkive permalink

Osobiście to właśnie mówię moim studentom na początku ich pracy, a moje uzasadnienie w nawiasach.

  1. Użyj Dropbox / GDrive / co masz do tworzenia kopii zapasowych (jeśli stracisz pracę na tydzień przed przesłaniem, masz spieprzone).

  2. Skonfiguruj wiki do dokumentacji projektu na serwerze wydziału (jeśli nie robisz później notatek, nie wiesz, co napisać w rozprawie).

  3. Użyj Mendeleya do zarządzania referencjami (poświęć czas na pisanie .bib lub pisanie rozprawy, do wyboru).

  4. Skonfiguruj LaTeX i napisz w nim swoją rozprawę (Word jest dobry dla maksymalnie 3 -page dokumentów).

  5. Używaj maszyn wirtualnych w ich środowisku pracy i regularnie wykonuj kopie zapasowe (nie trać czasu na ponowne konfigurowanie).

  6. E-mail do obu przełożonych w CC i zawsze używaj opcji „Odpowiedz wszystkim” na e-maile związane z pracą (nie mogę Ci pomóc, jeśli nie wiem, co robisz).

  7. Często przychodź do laboratorium (rozmawiając ze starszymi naukowcami, nauczysz się najszybszych i najmądrzejszych sposobów osiągania swoich celów).

  8. Wysyłaj mi raporty z postępów często (jeśli yo nie pytaj o recenzje Nie mam pojęcia, czy Twoja praca jest na nie gotowa).

(Opcjonalnie)

  1. Uzyskaj SSD do laptopa, jeśli ich na to stać (cierpliwość jest warta więcej niż pieniądze).

Jeśli chodzi o powstrzymywanie się od wskazywania wszystkiego, to jest łatwe: to ich praca i ich wybór zrobić dobry, czy nie. Mówiąc słowami Morfeusza: „Mogę tylko pokazać ci drzwi. To ty musisz przez nie przejść”.

Pisanie .bibs zajmuje kilka sekund na odwołanie.Nauka korzystania z nowego oprogramowania zajmuje ... cóż, dłużej niż kilka minut.Jaki jest sens?
Sekundy??Napisałeś pracę magisterską lub doktorską?W najlepszym przypadku zajmuje to kilka minut, ponieważ musisz wyszukać właściwe odniesienia i przejrzeć całe pole w referencji.Pomnóż to przez 100-120, czyli to, czego oczekuje się od tytułu magistra lub 30-40 dla pełnego artykułu, dodaj czas kompilacji, aby sprawdzić, czy wszystko idzie dobrze ... Cóż, myślę, że zrozumiałem.Zajmuje również Twój czas i cierpliwość, kiedy możesz po prostu przeciągać i upuszczać pliki PDF i przeglądać, co mendeley dla Ciebie wyprodukuje.Szczerze mówiąc, w dzisiejszych czasach mamy szczęście, że mamy tak niesamowite narzędzia!
Eee, tak, dziękuję.Napisałem pracę doktorską i opublikowałem wiele artykułów.Pisanie wpisów BibTeX nie było znaczącą częścią czasu spędzanego na robieniu którejkolwiek z tych rzeczy.Wydaje mi się, że Google nie zajmuje dużo czasu, aby znaleźć szczegóły bibliograficzne w tytule artykułu (lub spójrz na pierwszą stronę, jeśli jest to oficjalny plik PDF).Czas kompilacji nie ma znaczenia, ponieważ i tak musisz skompilować dokument, a to nie jest tak, że pisanie wpisów .bib jest czymś w rodzaju fizyki rakietowej, która wymaga więcej sprawdzenia niż napisanie akapitu tekstu.
Doceniam twoją cierpliwość.Osobiście pisząc .bibs mam ochotę podciąć sobie nadgarstki łyżką.
Widzieć?Ty też jesteś cierpliwy!:-RE
Mendeley jest znacznie bardziej wydajny niż pisanie plików na szelkach, zwłaszcza jeśli nie jesteś ekspertem LaTeX-a (uczniowie rzadko są).Ale szczerze, to samo dotyczy LyX vs LaTeX.* Powinieneś * nauczyć się podstaw LaTeX-a, ale pisanie w LyX jest znacznie szybsze.Zarówno moje prace dyplomowe, jak i wiele innych prac zostało napisanych z LyXem, co pozwoliło zaoszczędzić sporo czasu.Pracowałem również nad dokumentami i raportami w LaTeX, ale na przykład tabele były zawsze robione w LyX, a następnie kod był wklejany do dokumentu LaTeX.
Carol
2017-06-01 22:24:53 UTC
view on stackexchange narkive permalink

Wybierz kilka ważnych rzeczy i zalicz je do „najlepszych praktyk” (rozsądne podejście lub posiadanie pewnych standardów dotyczących nazw plików i zmiennych wydaje mi się o wiele ważniejsze niż rozmiar okna edycji lub skrótu klawiaturowego). Podaj kilka zasad lub przykładów, które pokazują wytyczne w działaniu, i śmiało, bądź trochę wybredny.

Inne rzeczy - (użyj większego okna edycji, skrótu) naprawdę nie są „ważne” jako najlepsza praktyka. Stanie nad ramieniem ucznia i mówienie: naciśnij ten klawisz itp., Jest naprawdę irytujące i może być przytłaczające, jeśli rzuca się w niego zbyt wiele informacji / szczegółów. (Który szczegół jest ważny, po prostu ty jesteś pomocny?) I po pewnym czasie mogą mieć całkiem uzasadnione powody, aby zrobić to inaczej (mogą znaleźć inne skróty, które lepiej pasują do ich „stylu” lub które uznasz za przydatne, jeśli obserwuj ich.

Jednak to powiedziawszy - prawdą jest, że techniki oszczędzania czasu, które oszczędzą im frustracji, nie są od razu oczywiste dla nowicjuszy. Odkryłem, że najlepszym sposobem jest pozwolenie komuś na zabawę najpierw narzędzia, aby mogli napotkać niektóre frustracje. Ale przede wszystkim po prostu odpowiedz na podstawowe pytania, a jeśli jest konkretne pytanie o „łatwiejsze” sposoby, to powiedz im. Później - zrób to sam jeden, aby pokazać, jak wykonałbyś to zadanie, wskazując własne praktyki i jak unikają one konkretnych frustracji. Jednak w tym momencie po prostu pozwól sobie wybrać sposób, w jaki uznasz to za najlepszy. Nie warto sugerować tego za każdym razem pomagasz im.

Chociaż nie jestem zaangażowany w szkolenie studentów w zakresie codi ng, musimy szkolić początkujących użytkowników na sprzęcie, który jest nieco trudny i wymaga długiego okresu szkolenia, aby stać się ekspertem, więc proces ma pewne podobieństwa.

Wybierz aspekty, które są prawie niepodlegające negocjacjom, ponieważ są ważne. Nie przejmuj się zbytnio, gdy nowicjusze wciąż ignorują wskazówki, które im dałeś, a które opierają się na tym, co eksperci zwykle uznawali za „przydatne” strategie ułatwiające sobie życie.

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

@haff zasugerował w komentarzu:

Jeśli Twoja grupa badawcza ma cotygodniowe spotkania, możesz również poświęcić około 5 minut na początku każdego spotkania na zademonstrowanie hacków dotyczących rozwoju / przepływu pracy.

Ciekawy pomysł! Teraz trochę zmienmy:

Poświęć trochę czasu na spotkanie w grupie (niekoniecznie tylko 5 minut i niekoniecznie na każdym spotkaniu) na chodzenie w kółko, dając uczniom możliwość podzielenia się własnymi hacki dotyczące przepływu pracy ze sobą .

Powiadom ich w e-mailu z wyprzedzeniem, aby mogli pomyśleć o tym, jakie zmiany by chcieli udostępniać lub prezentować. Innymi słowy, nie zaskakuj ich. I pozwól poszczególnym osobom zdecydować, że nie będą się czymś dzielić.

Ponadto możesz zorganizować kilka spotkań warsztatowych, podczas których ktoś zgłosi się na ochotnika do zajęcia stanowiska demonstracyjnego, tworzenia kodu lub testowania jak mistrzowska klasa w dziale muzycznym. Następnie poproś uczniów, aby konstruktywnie skomentowali, tak aby każdy z nich znalazł coś, co mógł pochwalić. Jeśli chcą przedstawić konstruktywne sugestie, jak skuteczniej lub wydajniej debugować, to w porządku, ale głównym celem powinno być nauczenie się dostarczania pozytywnej opinii rówieśnikom .

To jest niezwykłe, o ile skuteczniejsze są wskazówki i poprawki ze strony kolegi ucznia , w porównaniu z tym, że wszystkie pochodzą od profesora .

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

Nie widzę nic złego w przedstawianiu sugestii. W końcu ich uczysz i nie wydaje się nierozsądne udzielanie porad, jak ulepszyć ich sposób pracy, zwłaszcza jeśli sugestia ma na celu uczynienie czegoś obiektywnie bardziej efektywnym.

Całkowicie się zgadzam, że zmuszanie uczniów do pracy w określony sposób może nie być dobrym rozwiązaniem, jeśli naprawdę nie ma to dla nich sensu. Z pewnością z mojego doświadczenia wynika, że ​​jedną z najbardziej przydatnych rzeczy w pracy z kimś doświadczonym (czy to w formalnym środowisku nauczania, czy nie) jest to, że zna wiele użytecznych sztuczek, które niekoniecznie są intuicyjnie oczywiste.

Po przedstawieniu sugestii możesz pozostawić to im, czy chcą podjąć działania, czy nie, ale przynajmniej wtedy mają informacje.

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

TL; DR: Rozróżnij „wskazówki i triki” od „wskazówek / dobrych praktyk”. Podaj wskazówki dotyczące pierwszego i spróbuj wymusić drugie.

Jeśli jest to możliwe w Twojej sytuacji, możesz zorganizować małą prezentację. Coś w rodzaju „wskazówek i sztuczek EditorX”. Gdzie możesz podzielić się z nimi kilkoma wskazówkami i sztuczkami dotyczącymi lepszego korzystania z edytora, bez zwracania szczególnej uwagi na żadnego ucznia.

Nie różni się to zbytnio od branży. Pracuję jako inżynier oprogramowania i co tydzień prowadzimy rozmowy, podczas których możemy zaprezentować coś interesującego w tej dziedzinie. Co kilka tygodni ktoś będzie pokazywał kilka wskazówek i trików. Zachęcamy do tego wszystkich.

Dla mnie zaletą tego podejścia jest to, że dzięki małej wersji demonstracyjnej inni ludzie zobaczą korzyści (na przykład szybszy rozwój). Zaciekawią ich też, jak znaleźć więcej porad i wskazówek, którymi mogą się podzielić.

Mówiąc o wskazówkach i trikach, są też inne rzeczy, które nie są po prostu wskazówkami i trikami, ale raczej wskazówkami i dobrymi praktykami, których należy przestrzegać. To, czy używasz skrótu, czy nie, jest całkowicie opcjonalne, lub gdy zdasz sobie sprawę, że w IntelliJ (IDE) jest ustawienie Zero Latency Typing i chcesz go użyć. Jednak z drugiej strony mamy takie rzeczy, jak kontrola wersji, rozsądne nazwy zmiennych, przechowywanie pewnej dokumentacji, którą naprawdę powinni robić. Sposób, w jaki go używają, jest ponownie w części „wskazówki i triki”, ale powinni przynajmniej znać korzyści z jego używania i być do tego mocno zachęcani.

Sposób, w jaki to robiłem, gdy nauczałem (w środowisku akademickim), polegał na wymuszaniu używania tych rzeczy. Nie jestem pewien, czy możesz wyegzekwować to na swoim stanowisku, ale jeśli to w ogóle możliwe, zrobię to. Czy możesz ustawić „wytyczne” dla swojej grupy? Jeśli tak, zastosuj wytyczne dotyczące kodowania i poproś o ich udokumentowanie. Umieść w tym dokumencie wszystko, co istotne, na przykład jeśli chcesz etui węża lub etui na wielbłąda. Podaj kilka wskazówek, jak wymyślić dobre nazwy zmiennych i klas. Wymuś wypychanie do git (svn, ..) i pokaż przykłady dobrych komunikatów o zmianach.

(Sposobem na wymuszenie dobrego stylu kodu może być użycie narzędzia, które sprawdza składnię, wzorce nazw zmiennych itp. Istnieje kilka dobrych linterów dostępnych dla wielu języków)

ci, których uczyłem, nie zawsze widzieli korzyści z tych rzeczy - ale w końcu obrócili się o 180 stopni. Ucieszyło mnie, że wytyczne są przestrzegane, a uczniowie rzeczywiście dostrzegają z tego korzyści.

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

Zgadzam się, to jest proces, ale jeśli nie wskażesz „błędów”, skąd oni mieliby wiedzieć, że można je poprawić?

Osobiście czepiam się wszystkiego i jak na razie działa dobrze. Chciałbym też wyjaśnić dokładnie tę kwestię i pamiętać, aby pogratulować im, gdy faktycznie zrobią coś od razu za pierwszym razem (w przeciwnym razie wydaje się, że zbytnio skupiasz się na negatywnych opiniach).

Oczywiście, tak jest Należy pamiętać, że ostatecznie to nie jest Twoja decyzja. Przedstawiasz wszystkie strony, zalety i wady, a oni decydują. Inaczej mówiąc, o każdej rzeczy wspominasz najwyżej trzy razy :)

„skąd mieliby wiedzieć, że można je poprawić” - cóż, są ludzie, którzy sami dowiadują się, jak opracować skuteczną rutynę.
@O.R.Mapper rzeczywiście, ale moje myślenie było szersze niż skróty klawiszowe / skrypty / rutyna, co było moim zrozumieniem pytania.Zasadniczo jestem na tyle irytujący, że mam komentarz na prawie wszystko, co dotyczy moich uczniów.Nie tylko związane z kwestiami akademickimi, ale omijające problematyczne / nieodpowiednie tematy ...
Zgadzam się z tym, ponieważ w wielu przypadkach ludzie po prostu nie wiedzą, co robią źle.Jeśli nikt choć raz im nie powie, że mogliby w jakiś sposób usprawnić swoją pracę, to może sami ją znajdą, a może nie ...
O. Jones
2017-06-02 06:36:59 UTC
view on stackexchange narkive permalink

Proponuję, abyś podszedł do tej części nauczania sztuki programowania, jakbyś był reżyserem teatralnym.

Powiedz swoim uczniom, że poświęcisz trochę czasu na obserwację każdego z nich podczas pracy, a następnie dasz im notatki.

Obserwuj ucznia i rób notatki. Zachowaj ciszę podczas obserwacji.

Po obserwacji „zrób notatki”: przeprowadź rozmowę, podczas której przedstaw uczniowi swoje spostrzeżenia dotyczące ich pracy i zaproponuj sugestie dotyczące ulepszeń. W ten sposób proponujesz swoje sugestie w uporządkowany sposób i nie będziesz ich dręczyć. Pamiętaj, aby powiedzieć im, że nie są z tego oceniani ani oceniani.

Możesz ich również zachęcić, aby zrobili to za siebie.

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

Spróbuję odpowiedzieć na pytanie, które faktycznie zadajesz - tj. pytania o ciebie , a nie o twoich uczniów:

Jak powstrzymać się od ingerowania w nieefektywną, ale niezłą pracę uczniów?

... i ...

Czy istnieje dobry sposób, aby [...] ale nie denerwować się, jeśli uczniowie ich nie używają?

(A moja odpowiedź dotyczy wyłącznie rady, o którą nie proszono, jak w twoim przypadku. Nic z tego oczywiście nie ma zastosowania, gdy twoi uczniowie pytają cię , jak możesz poprawić.)

Niestety, masz do czynienia z bardzo głębokimi pytaniami. Są dwa fakty, które mogą sprawić, że ludzie tacy jak ty (lub ja), którzy mają bardzo wydajne techniki robienia rzeczy , będą bardzo nieszczęśliwi, gdy zobaczysz, jak inni idą niezmiernie wolno - z jakiegokolwiek powodu, niekoniecznie związanego z w ogóle ich inteligencja.

  1. Nie każda technika (używania edytora, narzędzia do przesyłania plików lub czegokolwiek innego) działa tak samo dla każdej osoby. To, co może wydawać się bardzo oczywiste (np. Skasowanie większości skrótów klawiszowych Emacsa, możliwość wyobrazenia sobie dobrego makra klawiatury przesyłanego w locie bezpośrednio z palców podczas edycji itp.) Może być całkowicie niemożliwe dla innych. Przyszedłeś do swoich technik, myśląc o nich bardzo długo i intensywnie lub intuicyjnie znajdując coś, co pasuje do sposobu, w jaki Twój mózg jest podłączony. To niekoniecznie dotyczy innych osób. Stąd wojny VI / Emacs, Windows / Linux, PC / Mac itd.
  2. Nie każdy jest w stanie skorzystać z porady, nawet jeśli jest to dobre intencje, i zastosować ją w swojej pracy z różnych powodów. W rzeczywistości, z mojego doświadczenia we wszystkich dziedzinach życia (uniwersytet, praca, rodzina, przyjaciele) było bardzo, bardzo niewiele osób, które w ogóle były w stanie skorzystać z każdej porady, o którą nie poproszono cokolwiek.

Teraz. Nie będę wchodził w konkretne przyczyny tych dwóch faktów, ponieważ jest ich wiele i to nie ma znaczenia. Na przykład: dla „1”. druga osoba może po prostu o tym nie wiedzieć; jego „procedury myślowe” mogą po prostu nie pasować do tego, jak działa redaktor i tak dalej. W przypadku „2.” możesz po prostu nie być w stanie wytłumaczyć tego słowami, które muszą usłyszeć, mogą być zablokowane przez dumę itp. Może być wiele innych powodów, ale moja odpowiedź wcale nie dotyczy tych powodów. Jasne, dla wielu z nich jest sposób na obejście tego. Ale zawsze skończysz w pozycji, w której będziesz odczuwać ból, ponieważ tak bardzo chcesz pomóc , ale oni po prostu tego nie rozumieją.

Jak się powstrzymać

Po prostu zrób to. Siedź cierpliwie, gdy robią swoje nieefektywne rzeczy. Tak. Oczywiście możesz pokazać im, jak pracujesz, ale szczerze mówiąc, widzą to po prostu obserwując cię, jeśli pracujesz w środowisku rówieśniczym. Nie musisz robić z tego „rzeczy”. Są studentami i powinni używać swojego mózgu; jeśli zobaczą, że pracujesz niesamowicie szybko, podczas gdy oni zajmują dłuuuuugo czasu, powinni być w stanie zorientować się, że coś się dzieje. Chodzi o to, że to nie ty musisz coś zrobić. To nie ty jesteś tutaj odpowiedzialny.

Jeśli zobaczą, że pracujesz szybko, mogą

  • poprosić Cię o wyjaśnienie, jak to robisz.
  • Źle z tego powodu i ćwiczyć w domu.
  • Usiądź razem z przyjaciółmi i „porównaj notatki”.
  • Kup jakąś książkę i poczytaj o niej, cokolwiek to jest.
  • Pobierz narzędzia, z których korzystasz, i sprawdź je.
  • Albo nie przejmuj się tym wcale i trzymaj się ich powolności.

I prawdopodobnie inne rzeczy.

Jak nie denerwować się, jeśli nie korzystają z twoich wskazówek

Sekretem, jak się nie denerwować, jest przemyślenie tego z góry i usunięcie pomysłu, że można w jakiś sposób zmienić kogoś innego od razu. Nie możesz zmienić innej istoty, nigdy. Możesz ich namawiać, zmusić, dawać przykład lub cokolwiek innego, i możesz cieszyć się sytuacjami, w których rzeczywiście się poprawiają, ale tak naprawdę nie możesz zmusić ich zmiany.

A więc, czysta logika, nie ma sensu denerwować się. To jest przypadek, gdy nie widzisz rzeczywistości taką, jaka jest. Jeśli zaakceptujesz, że rzeczy są takie, jakie są, z pewnością zmniejszysz się zdenerwowanie.



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...