Czy spędzasz godziny pracy na nauce? [Zamknięte]

79

Czy spędzasz godziny pracy na nauce nowych rzeczy, czytaniu blogów technicznych, książek o programowaniu itp.? Jakie jest twoje zdanie na ten temat? Czy pracodawca może korzystać z korzyści, które pozwalają programistom na naukę przez około 1-1,5 godziny dziennie? Czy zostanie spłacony w przyszłości (przy lepszej wydajności itp.)?

ma sens
źródło
5
Osobiście spędzam około godziny dziennie na czytaniu nowych rzeczy, artykułów itp., Jeśli nie mam pilnych zadań i uważam, że jest to przydatne. Można powiedzieć, że lepiej jest to robić w wolnym czasie, ale często trudno jest przeznaczyć na to czas, choć wszystko zależy od twoich priorytetów.
make_sense
4
Zauważyłem, że Programmers.SE staje się wieczorem znacznie mniej aktywny (w zależności od wariancji strefy czasowej), więc zgaduję, że większość z nas to robi.
Craige
3
Dużo czasu spędzam na SE ... połowa czasu to ratuje mi życie - a drugą połowę spędzam na próbach uczestnictwa w społeczności. Tak czy inaczej, jest to inwestycja w długoterminowe cele mojej firmy, ponieważ codziennie uczę się tutaj nowych, ważnych rzeczy.
eckza
3
Jeśli jesteś konsultantem lub wykonawcą, nie masz zbyt dużego wyboru w tej sprawie, musisz poświęcić 100% swojego fakturowanego czasu na projekt.
aceinthehole
1
Myślę, że to pytanie mogłoby być lepsze, gdyby sprecyzowało, czy chodziło o naukę w dziedzinie ściśle związanej z pracą, czy naukę w dziedzinie, która jest związana wyłącznie z programowaniem w ogóle. Czy to „muszę nauczyć się tej składni SQL, aby rozwiązać problemy z bazą danych”, czy może bardziej przypomina to 20% czasu Google? Myślę, że jeśli OP poprosiłby o 20% czasu, to łup ludzi zmieniłby odpowiedź.
Neil Traft

Odpowiedzi:

127

Uważam, że dla dobrego środowiska programistycznego istotne jest, aby na eksplorację i naukę przeznaczono najwyżej godzinę lub dwie, z wyjątkiem sytuacji, gdy jest to „czas chrupania” przy zastosowaniu.

Środowisko, które tego nie robi, jest czerwoną flagą w mojej książce, ponieważ mówi mi, że nie cenią poprawy.

EDYTOWAĆ

Najgorsze jest to, że upomina swoich programistów o czytanie blogów / stron technicznych zamiast „pisania kodu”. To, według mnie, wskazuje środowisko, które nie dba o swoich programistów poza to, co mogą z nich wycisnąć.

Wayne Molina
źródło
9
Smutne jest to, że spotkałem wiele, wiele, wielu firm, które podlegają temu i w ogóle nie dopuszczają żadnych „przestojów” dla programistów. Słyszenie „zawsze jest coś, nad czym można popracować” jest dla mnie najgorsze.
Wayne Molina,
Niezbędny, ale bardzo trudny.
Brian Knoblauch,
5
Bardzo trudno jest przekonać firmę, że jest to niezbędne;)
Wayne Molina
9
Wyjaśnij, że to jak laywersi, muszą znać wszystkie nowe prawa. Albo lepiej, lekarze, muszą znać wszystkie nowe techniki i badania, aby być świetnym lekarzem. Referencje stale się zmieniają, podobnie jak w programowaniu.
1
@jwenting To jest mój punkt; dobra firma wie, że „uczenie się w godzinach pracy” to dobra rzecz; zły nie wie lub oczekuje, że zostanie to zrekompensowane. Niestety znacznie więcej firm zalicza się do kategorii „zła” niż „dobra”.
Wayne Molina,
44

Myślę, że prawie wszyscy pracodawcy płacą ludziom za około 1–2 godziny nauki co najmniej przez kilka dni w tygodniu. Nawet jeśli tylko przeszukujesz dokumentację, wciąż uczysz się czegoś, czego wcześniej nie wiedziałeś.

Osobiście nie lubię ustawiać „przedziałów” czasu dla innych, to trochę za bardzo przypomina zarządzanie czasem kogoś innego. Gdybym cię zatrudnił, zrobiłem to, ponieważ mam całkiem dobre przeczucie, że wiesz, jak lepiej zarządzać czasem niż ja. Ty ustalasz cele produktywności i okazjonalny termin, ale poza tym pozwól pracownikowi zrobić to, co czyni go najbardziej produktywnym.

Jeśli potrzebujesz spędzić sześć godzin na zastanawianiu się, jak najlepiej podejść do problemu, studiując kilka różnych algorytmów, nie ma sprawy. Jeśli potrzebujesz poświęcić 20 minut na zapoznanie się z odniesieniem do implementacji języka, to w porządku.

Krótko mówiąc, po prostu zachęcaj ludzi do nauki i poprawy, ponieważ widzą taką potrzebę i możliwości. Płać za szkolenie, gdy ma to sens, i nie taniej na książki. To zwykle kończy się na dużej wydajności i utrzymaniu świetnych pracowników.

Tim Post
źródło
4
+1 za ostatni akapit sam. Chciałbym, żeby więcej firm tak myślało!
Wayne Molina
3
+1, ponieważ zgadzam się, że nie powinieneś ustawiać „kawałków” czasu na naukę. Ucz się tak, jak potrzebujesz, a jeśli nauczyłeś się tego, co musisz wiedzieć i powinieneś pracować nad jego wdrożeniem, zacznij to robić.
Rachel
firma może zdecydowanie zwiększyć lojalność programistów, jeśli zastosuje się do rad z ostatniego akapitu.
make_sense
Naprawdę nie sądzę, żeby o to pytał PO. Oczywiście wszyscy programiści uczą się podczas pracy, to nawet nie jest pytanie. Pytanie, które zadam, brzmi: „Czy spędzasz godziny pracy, ucząc się czegoś, co nie pomoże ci rozwiązać żadnego bezpośredniego problemu (ale może uczynić cię lepszym programistą)?”
Neil Traft
Książki - tak, szkolenie - nie
Arnis Lapsa
13

Każdego ranka spędzam kilka godzin, ucząc się czegoś nowego. Może to być coś związanego z moim głównym stosem technologii (.NET, WPF, ASP.NET MVC, Linq itp.) Lub będę się bawił nowymi językami, strukturami sieciowymi, a nawet wykonam rachunki i inne trudne obliczenia matematyczne, aby zachować umysł umysłowy. Oczywiście, przychodzę do pracy o 6:30 rano i robię to do godziny 9:00, kiedy zaczyna się dzień pracy. Kiedy masz małe dzieci w domu, tak jak ja, musisz wykonywać swoją pracę wcześnie rano z dala od domu, abyś mógł się całkowicie skoncentrować. To także pozostawia moje wieczory otwarte na bycie tatą. Tak, tak, myślę, że dla pracodawcy ważne jest, aby dać czas swoim pracownikom wiedzyzdobyć nową wiedzę. Zawsze mówię moim programistom, aby poświęcili czas na naukę nowych rzeczy, a nawet zachęcali ich do udziału w konferencjach i seminariach, aby zawsze mieć umysł. Nawet jeśli nic nie piszą w Erlangu, może to objawić się gdzieś koncepcyjnie później i okazać się naprawdę przydatne w innym projekcie.

Nodey The Node Guy
źródło
2
Więc uczysz się od 6: 30-9: 00, a następnie pracujesz od 9: 00-5: 00, a zatem nie uczysz się w godzinach pracy? Cieszę się, że masz właściwe podejście i myślę, że jesteś pierwszą osobą, która faktycznie odpowiedziała na pytanie PO, ale nie mogę powstrzymać się od odgrywania roli adwokata diabła. :-)
Neil Traft
@NeilTraft - Ha, rozumiem o co ci chodzi. Myślę, że miałem na myśli czystą naukę akademicką i odkrywanie nowych koncepcji. Oczywiście, podczas gdy my też pracujemy, nadal się uczymy, ale to raczej wiedza stosowana, przynajmniej dla mnie. Mogę nauczyć się korzystać z czegoś nowego w ASP.NET MVC lub pisać mordercze zapytania Linq lub coś takiego, ale nie ma zbyt wiele czasu, aby sprawdzić Rust lub Go lub jakąś nową technologię.
Nodey The Node Guy
8

Dlatego nazywa się to „Czytelnią” :) Skonfiguruj czytnik RSS lub cokolwiek, co ci się podoba, może agregować posty z różnych miejsc, które uważasz za cenne, a następnie drukować kilka artykułów dziennie i zabierać je ze sobą.

Ale poza tym, jeśli robisz coś, na co już znasz odpowiedzi i nie spędzasz przynajmniej części dnia na szukaniu odpowiedzi na coś (co również się uczy), musisz zmienić pracę. Samozadowolenie jest zabójcą w tym zawodzie.

Dave Wise
źródło
11
Również bardzo prawdziwe. Samozadowolenie prowadzi do stagnacji. Stagnacja prowadzi do lenistwa. Lenistwo prowadzi do starzenia się. Są ścieżką do ciemnej strony. Gdy zaczniesz ciemną ścieżkę, na zawsze zdominuje twoje przeznaczenie.
Wayne Molina,
7

Zwykle nie pisałem kodu do czasu po obiedzie. Zwykle moje dni wyglądałyby tak:

9: 00-10: 00: Stackoverflow (w tym ciekawe linki do blogów itp.), E-mail, może przejrzyj niektóre ostatnie zmiany w kontroli źródła, aby dowiedzieć się, dokąd zmierza projekt.

10.00–12.00: zwykle spędza się na „lekkim” kodowaniu. Refaktoryzacja, drobne poprawki błędów i projektowanie, w jaki sposób implementacja dla tego, co będzie działać, z czasem projektowaniem na wyższym poziomie, gdy zajdzie taka potrzeba

13.00–15.00: zwykle ciężkie kodowanie. Żmudne kodowanie pasuje tutaj.

15–15:30/16: Trochę więcej nauki jako „przerwa”.

4 po południu ?: Gdybym naprawdę był w strefie, byłbym znany z tego, że zatrzymałem się godzinę później. To dziwnie chyba najbardziej produktywny czas dla mnie. Mianowicie dlatego, że zwykle zostaję sama po 16:00 i jestem naturalną osobą nocną, więc wszystko przed 12 wieczorem wydaje mi się „wczesne”.

Mówię teraz, że to niesprawiedliwe, że firma płaci za pisanie postów na blogu i tym podobne. Obejmuje to czasami odpowiedzi przepełnienia stosu .

Earlz
źródło
3
Ważne jest, aby znać najlepszy czas na pracę nad „twardym” kodowaniem lub nad „trudnymi” problemami. Uważam, że kiedy mój umysł jest najostrzejszy (rano), mogę rozwiązać coś w 10 minut, co może zająć godziny w innym czasie.
B, siedem
1
Dużo czerpię ze StackExchange. Takie strony społeczności działają tylko wtedy, gdy ktoś włoży coś z powrotem. Jeśli kierownik miałby narzekać na mój wkład, odpowiedziałbym, że to koszt prowadzenia działalności gospodarczej: dostajesz to, co dajesz.
Obalenie
5

Nauka, co? Powiedziałbym, że robię to przez większość czasu w pracy. Dla mnie nauka jest podstawową istotą programowania i naturalną konsekwencją tego, że zawsze rozwiązujesz nowe problemy (tj. Nie robisz tego samego dwa razy). 

Jeśli nie uczysz się w godzinach pracy, robisz to źle lub powinieneś poszukać lepszego środowiska pracy.

(To powiedziawszy, w przypadku blogów i książek zazwyczaj spędzam wolny czas, chyba że jest to ściśle związane z wykonywaną pracą.)

Jonik
źródło
4

Z punktu widzenia zarządzania pracodawcy zazwyczaj chcą, aby ich pracownicy ciągle się uczyli. Może to być formalne szkolenie w klasie lub e-learning, nadrabianie zaległości w kanałach RSS, czytanie czasopism technicznych, oglądanie filmów, posiadanie mentora, mentoring innych itp.

Pocieranie przychodzi, kiedy

  1. Twój menedżer uważa, że ​​powinieneś już to wiedzieć
  2. masz termin na projekt
  3. zaczynasz wymuszać swoją nowo odkrytą naukę w biznesie, nie przechodząc przez odpowiednie kanały (np. właśnie dowiedziałem się wszystkiego o ObservableCollections i uważam, że jest świetny, więc zacznę robić to w mojej części bazy kodu ).

To wszystko mówi, że ogólne oczekiwania są takie, że musisz poprowadzić własną naukę w porównaniu z modelem 70-20-10

  • 70% powinno się uczyć w miejscu pracy, na przykład naprawiać kod za pomocą czegoś bardziej wydajnego
  • 20% powinno stanowić nieformalne uczenie się, takie jak opieka mentorska i czytanie blogów lub uczestnictwo w konferencji
  • 10% powinno stanowić szkolenie formalne, takie jak dwudniowe wydarzenie w klasie lub moduły e-learningowe ze śledzeniem SCORM

Jeśli Twoja firma nie ma 10% formalnej części szkolenia, poproś o nią.

Todd Main
źródło
3

Dla mnie programowanie to nauka . Za każdym razem, gdy piszę metodę, mogę się czegoś nauczyć:

  • Czy to najlepszy sposób, aby to zrobić?
  • Jakie jest użycie pamięci / procesora?
  • Jakie są kompromisy?
  • Jakie są potencjalne problemy, które mogą spowodować niepowodzenie tej metody? (zakleszczenie, przerwane połączenie itp.)
  • Czy ta metoda musi być częścią biblioteki, aby móc jej później użyć ponownie?
  • Jak mogę wyjaśnić ten system w kategoriach nietechnicznych, aby każdy mógł go zrozumieć?
  • Jak zapamiętam i uporządkuję wszystko, czego się nauczyłem?

Za każdym razem, gdy korzystam z Programmers.SE lub Stack Overflow, uczę się czegoś.

Myślę, że bycie programistą polega na nauce. I wszystkiego , czego się uczymy, można wykorzystać, aby uczynić nas lepszym programistą i pomóc w sukcesie projektów, nad którymi pracujemy.

B Seven
źródło
2

Spędzam około (godzin pracy):

  • ~ 5% czasu na napisanie kodu
  • ~ 10% czasu na oglądanie filmów Starcraft2 na YouTube i picie kawy
  • ~ 20% czasu na przemyślenie obecnych problemów projektu
  • ~ 65% czasu na naukę nowych i ekscytujących rzeczy
Arnis Lapsa
źródło
3
staranne publikowanie takich rzeczy ... Niektórzy pracodawcy mogą nie lekceważyć tego, że spędzasz połowę płatnego dnia w tygodniu, oglądając rzeczy StarCrafta na youtube. Chyba że tak naprawdę pracujesz nad tym!
Newtopian
1
@Newtopian wyniki mają znaczenie
Arnis Lapsa
@Arnis: nie zrozum mnie źle, gdybym był twoim szefem, a ty dostarczyłeś towary, nie mógłbym dać dupie szczura, jeśli spędziłeś trochę czasu na tubie. Mogę to uznać za znak, że nie stawiam ci wystarczających wyzwań, ale to wszystko. Dla wielu innych spiczastych szefów włosów skutecznie okradasz ich i nawet im się to nie spodoba. To powiedziawszy, mój komentarz był bardziej, ponieważ ludzie zostali zwolnieni za dużo mniej, po prostu publikując głupie rzeczy na przykład na swojej stronie na Facebooku. Miałem tylko nadzieję, że twój szef nie był spiczastym typem włosów :-) wiwaty
Newtopian
2
@Newtopian, jak widzę - programowanie to sztuka. Nie możesz tego zmusić. jeśli to zrobisz, skończysz kiepską muzyką pop. nie chodzi o to, że nie chcę pracować, ale o to, że czasami po prostu nie mogę. i jestem całkowicie bezwstydny i szczery w tej kwestii. :)
Arnis Lapsa,
1
@nikie o_0 dlaczego na ziemi programiści powinni pracować obok Twojego zlewu kuchennego ?! przepraszam, nie mogę na to odpowiedzieć. Myślę, że jest to stronnicza i zła analogia.
Arnis Lapsa,
2

Od 2 lat czytam artykuły techniczne w sieci. Każdego dnia spędzam co najmniej godzinę lub więcej, przeglądając artykuły. Na początku wskakiwałem na każdy artykuł i próbowałem się uczyć. Takie było moje zainteresowanie i wydawało się to bezproduktywne ze względu na ogromną liczbę artykułów i tematów, które można było przejść. Prawdopodobnie „Jack of all trade, ale master of none” pasuje do tej sytuacji. Z czasem znalazłem wiele dobrych zasobów i zidentyfikowałem swoje zainteresowania. Po tym zawęziłem jeden temat i zacząłem być wybiórczy.

To, co zyskałem podczas lektury, to znalezienie dobrych zasobów, takich jak przepełnienie stosu, Y Combinator, przebijający magazyn itp. Zdobędę wiedzę w zakresie tematów, które czytam. Chodzi mi o to, że należy również zachować ostrożność przy czytaniu. Czytanie jest zawsze dobrym nawykiem. Selektywne czytanie jest świetne.

Kolejną spostrzeżeniem jest to, że prawie wszyscy ludzie wokół mnie, którzy czuję się dobrymi programistami, czytają dalej i wskazują mi świetne rzeczy. To tak, jakbyśmy czytali, pomagając innym stać się lepszymi - część społeczna.

Sundeep
źródło
1

Wolę czas na naukę rano. Zaczynam dzień od nauki nowych rzeczy, które zapadły mi w pamięć i / lub czytam wiadomości techniczne, które śledzę w Czytniku Google. Czasami spędzam też trochę czasu po obiedzie. Jeśli czuję, że uczę się czegoś nowego, co nie blokuje mojego obecnego zadania, odkładam to na następny dzień.

Cóż, unikam także pisania bloga w godzinach pracy, ponieważ może to zająć więcej niż szacowany czas. Najlepszy czas na pisanie bloga lub udział w społeczności (dla mnie) jest po godzinie urzędowania.

Yeameen
źródło
1

problemy można znaleźć wokół lub z projektów, nad którymi pracuje. Po prostu stwórz lub przygotuj jakieś problemy dla swojej karmicznej wytrzymałości. Patrz głęboko, jak możesz. Znajdzie się drogę do uwielbionych ścieżek pracy samouka. Kiedy ktoś staje się bardziej produktywny, znajdzie czas, aby nauczyć się, jak być bardziej produktywnym niż on. Mówię, że ewolucyjne żywienie intelektualne jest dobre, nawet jeśli nie jesteś programistą. To tylko usprawnia proces myślenia. Istnieją różne sposoby podejścia do problemu. Wybierz opcję kopania więcej. Nigdy nie zadowalaj się rozwiązaniem. Nawet po zatwierdzeniu dostawy można ponownie przejrzeć dane wyjściowe. Trzeba ostrzyć jego narzędzia. Lepszym miejscem do opracowania własnego latającego talerza jest zdecydowanie Twój osobisty ciemny pokój!

zudokod
źródło