admin 0Comment

Weekendowe kursy, literatura Programming for dummies, promowanie stwierdzenia programowanie jest łatwe! Jest tego trochę. A z drugiej strony ssanie na rynku pracy, ciągły brak wystarczającej ilości programistów – nie tylko ja widzę, że coś tu nie gra, prawda?

Kiedy zaczynałem uczyć się programowania, miałem cholernie pochłaniającą pracę, która zabierała mi -naście godzin dziennie, najczęściej sześć dni w tygodniu. Żeby moja nauka miała sens, stwierdziłem, że, co by się nie działo, muszę poświęcać pewną minimalną ilość czasu, każdego dnia. Mój program minimum ustaliłem na 30 minut dziennie, chociaż oczywiście starałem się poświęcać więcej czasu oraz nadganiać w dni wolne. Średnio jednak nie udawało mi się poświęcić wiele więcej niż godzinę dziennie. Po drodze zebrałem kilka obserwacji:

 

Na początku wszystko zajmuje cholernie, cholernie dużo czasu.

 

Naprawdę. Przez każdy kęs wiedzy musisz żmudnie się przegryzać, a każde działanie zajmuje czas. Nawet samo przygotowanie się do właściwej nauki danego dnia, ogarnięcie poletka, czyli programów, kursów etc. niezbędnych w danym momencie. Co z tego, że ruszysz jakiś temat, kiedy po przeczytaniu kilku akapitów i wklepaniu kilku wierszy kodu okazuje się, że czas ci się skończył?

 

Wiedza nie wykorzystywana zanika błyskawicznie.

 

Ergo? Jeśli poświęcasz niewiele czasu, dużą jego część zajmuje, nazwijmy to, utrzymywanie starego kodu, czyli przypominanie sobie tego, co jakiś czas temu poznaliśmy. Zaglądanie co chwilę do internetu/własnych notatek, nawet w poszukiwaniu rzeczy, o których już czytaliśmy ale szczegóły nam umknęły, to standard. W miarę nabywania wiedzy jest coraz więcej informacji, koniecznych do odświeżenia sobie później. Co, jeśli w tytułowe dwadzieścia minut jesteś w stanie ledwo odświeżyć sobie podstawową wiedzę, potrzebną ci na danym etapie, nie zaczynając nawet jakiegoś nowego tematu?

 

Nauka to konkretny wysiłek.

 

W tym przypadku umysłowy oczywiście. Wiem doskonale jak drastyczna jest różnica między efektywnością nauki będąc wypoczętym versus po kilkunastu godzinach pracy. Pytanie czy masz możliwość żeby twój czas programowania był twoim priorytetem danego dnia.

 

Za każdym razem potrzebujesz trochę czasu, żeby się rozkręcić.

 

Programowanie wciąga – jest taki moment, najczęściej kiedy napotykasz niezrozumiały błąd (czyli, nie oszukujmy się, często) i tak skupiasz się na jego rozwiązaniu, że wskazówki na zegarze bardzo mocno przyśpieszają a ty wyłączasz się na wszelkie bodźce zewnętrzne. To fajne uczucie, jednak nie pojawia się ot tak, od razu – potrzebny jest czas na wdrożenie się, odpowiednie skupienie etc. Nie wspominając o tym, że rozwiązanie tego problemu także trochę zajmie.

 

Postępy? Są – ale powooooli.

 

To w zasadzie wniosek z powyższych. Postępy powinny być widoczne, a jeśli ich nie ma to w pierwszym rzędzie powinniśmy zastanowić się co robimy mocno nie tak. Problem w tym, że wobec ilości wiedzy niezbędnej do osiągnięcia zadowalającego nas poziomu, przyrost ten potrafi być symboliczny.

 

***

 

Czy programowanie jest łatwe? Na tę chwilę, moim zdaniem nie, nie jest. Na początku każde postawione przed tobą zadanie wydaje się być sporym wyzwaniem, a potem…wcale nie jest lepiej. Jeżeli dodasz do tego niewielkie przedziały czasu, jakie jesteś w stanie dziennie poświęcić na naukę to, cóż, na tę chwilę uważam, że owszem, możesz nauczyć się paru sztuczek ułatwiających ci wykonywanie żmudnych codziennych zadań ale zostać programistą zawodowo? Nie bardzo.

Been there, seen that. Dla mnie w pewnym momencie decyzja była jasna – zamykam sprawy zawodowe, rezygnuję z pracy i zajmuję się programowaniem na full-time, na co najmniej kilka miesięcy. Dopiero wtedy mogę liczyć na konkretne tempo postępu.

Że pesymistycznie, że odstraszam? A gdzie tam, po prostu chcę zwrócić uwagę na pewne obiektywne realia, i tyle. Jeśli zastanawiasz się nad rozpoczęciem nauki programowania, przemyśl sobie to, co napisałem, a w kierunku jakich decyzji cię to popchnie – to już inna kwestia.

 

Dodaj komentarz