Mógłbym spędzić czas (i aktywnie uczestniczyć) w Programmers.SE i Stack Overflow pomóc mi poprawić swoje umiejętności programistyczne w przybliżeniu do tego, co pomoże spędzić czas na czytaniu książki takiej jak Code Complete 2 (która w przeciwnym razie byłaby następna na mojej liście lektur).
Ok, może być odpowiedź na to pytanie dla kogoś, kto zaczyna od programowania, może być proste nie, ale chciałbym dodać, że to pytanie zadaję w kontekście, gdy osoba zna języki programowania, ale chce poprawić jego umiejętności programistyczne. Czytałem to pytanie na temat SO, a także tę książkę poleciło wielu innych (w tym Jeff i Joel ).
Mówiąc dokładniej, dodam również, że chociaż programuję w C, Javie, Pythonie itp., Ale nadal nie jestem zadowolony z moich umiejętności kodowania i czytania recenzji CC2, zdałem sobie sprawę, że nadal muszę wiele poprawić .
Zasadniczo chcę wiedzieć, jaki jest najlepszy sposób na poprawę umiejętności programistycznych - spędzaj więcej czasu tutaj / SO lub kontynuuj CC2 i może być tu, kiedy tylko pozwoli na to czas.
źródło
Odpowiedzi:
Nie, to nie jest substytut, ale idealne uzupełnienie . Wydaje mi się, że połączenie tych dwóch cechuje dużą moc.
Dlaczego dobry wykład uczy Cię czegoś więcej niż tylko czytania książki? Interakcja i umiejętność zadawania pytań.
Czytając książkę, mogą pojawić się pytania, na które nie znajdziesz odpowiedzi. Poszukaj tych pytań tutaj lub zapytaj, czy nie były wcześniej omawiane.
źródło
Jestem (obecnie) członkiem StackOverflow od 1 roku i 10 miesięcy. W tym czasie stałem się zdyscyplinowanym studentem sztuki: znającym architekturę, wzorce, odsprzęganie, testowanie jednostkowe, a lista mogłaby trwać ... ale jaką rolę odegrała TAK ?
Po pierwsze, odpowiedział na moje bezpośrednie pytania. Ale kiedy zacząłem odkrywać SO, odkryłem, że byłem bardzo złym programistą. Pragnąc być rzemieślnikiem w moim rzemiośle, kupiłem książki ... ale nie potrzebowałem C # Unleashed, Learn C # Programming lub innego
niestandardowegotekstu dla początkujących. Kupiłem odpowiedni rodzaj książek, które wskazywały, że obszary umiejętności okazały się wadliwe. Oczywiście nie spieszyłem się z tym, co zalecili eksperci od SO.Po drugie, SO dało mi miejsce do dalszego uczenia się od tych, którzy (reprezentowani przez reputację) naprawdę wiedzą, co robią - syntaktycznie i filozoficznie. Istnieje pewna wiedza na temat SO, CodeReview i programistów, których po prostu nie można uzyskać z książki.
Oczywiście SO nie może zastąpić książek ani wszystkich innych zasobów internetowych (chociaż, gdybym mógł połączyć MSDN i SO w jeden zasób treści ...); zamiast tego SO uzupełnia te inne zasoby. Jednak najlepszym nauczycielem pozostaje doświadczenie .
źródło
Programowanie więcej. Czytanie książek i stron internetowych ma drugorzędne znaczenie.
Najlepiej uczysz się, robiąc.
źródło
Nauka wymaga pewnych składników:
Czy jesteś dobrym uczniem? Czy spędzasz wystarczająco dużo czasu na nauce? Jeśli odpowiedź na te 2 pytania brzmi „ tak” , oznacza to, że masz już wystarczający potencjał, aby uczyć się niemal z dowolnego źródła.
Ale aby odpowiedzieć na twoje pytanie, tak, osobiście wiele się nauczyłem z witryn SE. IMHO nie powinny stać się twoim jedynym źródłem nauki, ale są korzystne.
źródło
Dwie rzeczy, które oferują SO i P.SE, które nie oferują ani czytania innych książek, ani pisania kodu: testowanie i nauczanie. Jeśli po prostu ślepo zadajesz pytania takie jak
I ktoś mówi „w wierszu 33, że przecinek powinien być średnikiem”, a ty akceptujesz odpowiedź i kontynuujesz i nadal zadajesz te same pytania na zawsze, to możesz nie poprawić.
ALE, jeśli czytasz pytania innych ludzi, zastanawiasz się nad odpowiedzią, obserwujesz, jakie odpowiedzi się pojawiają i jak porównują się do tego, co wiesz, to naprawdę cię poprawi. Jeśli wpiszesz kod do swojego ulubionego edytora i spróbujesz kilku rzeczy, aby zobaczyć, jaka jest odpowiedź, to naprawdę cię poprawi. A kiedy zaczniesz próbować wyjaśniać pojęcia (a ludzie czekają tam, aby „wyjaśnić”, co mówisz), to również cię ulepszy.
Od około 30 lat odkryłem, że nigdy nie uczę się tak dobrze, a kiedy, wierząc, że go znam, postanowiłem go uczyć. Dla mnie jest to główny wkład stron * .se w moje umiejętności programistyczne. Dodatkowo, kiedy chcę tylko poznać prosty fakt, to moje miejsce numer jeden do patrzenia (lub od czasu do czasu pytam).
źródło
Twoje umiejętności programowania są poprawiane najlepiej nie poprzez czytanie stron internetowych lub książek, ale przez powtarzanie
Praktyka czyni mistrza. To, co wygląda ładnie na blogu lub w książce, może okazać się nieporęczne w użyciu z jakiegoś powodu niezrozumiałego dla autora bloga lub tego, którego autor książki nie opisał.
źródło
Jak sam odpowiedziałeś, nie, ale spędzanie czasu tutaj jest przydatnym dodatkiem do bardziej ustrukturyzowanego uczenia się. Nie zależałbym od tego samodzielnie, ponieważ w niektórych koncepcjach mogą występować luki, które mogą nie zostać uwzględnione. Jednym z najlepszych sposobów na poprawę kodowania dla facetów na poziomie średnim jest czytanie innego dobrego kodu programisty przez spędzanie czasu na GitHub lub innym repozytorium open source.
źródło
Krytyczna myśl i analiza są nadal wymagane
Sam w sobie nie. Jedynym sposobem na zdobycie źródła nauki (książka, blog, strona internetowa, SO itp.) Jest zrozumienie, analiza, a następnie ponowne włączenie. To, co ludzie piszą na takich forach, nie jest ewangelią i nie powinno być traktowane jako takie bez względu na to, ile głosów ma. Musisz wykonać własną analizę opinii, aby dowiedzieć się, czy jest to:
Najlepszy sposób na poprawę
Jest często specyficzny dla danej osoby. Niektóre osoby stają się lepsze dzięki czytaniu i badaniom. Niektórzy ludzie stają się lepsi poprzez zabawę i eksperymenty. Inne mogą się nawet poprawić dzięki autorefleksji i analizie. Spróbuj tego, co ci się podoba i sprawdź, czy to działa lepiej.
źródło
Nauka języka Java stała się znacznie łatwiejsza, gdy dowiedziałem się o przepełnieniu stosu. Nie zadawałem pytań, ale zacząłem codziennie czytać pytania Java. Wiele pytań było poza moim zrozumieniem, ale od czasu do czasu ktoś zadawał pytanie początkującym. Wiele osób pyta o koncepcje, które czytają z książki, ale ich nie rozumie, i uzyskuje tutaj o wiele bardziej zrozumiałą odpowiedź, często z niewielką próbką kodu w celu dalszego wyjaśnienia problemu.
źródło