wiewiorek:
Niestety, z bólem muszę przyznać Ci rację.
Sam jestem po jednej z takich uczelni i gdyby nie to, że sam włożyłem mnóstwo pracy w zdobywanie wiedzy po za zakresem studiów (przed, w trakcie i po studiach), to bym na podstawie tego co mnie uczyli na uczelni mało zdziałał w życiu. Problem z takimi uczelniami jest taki, że większość kadry wysoce niekompetentna i po prostu nie posiada odpowiedniej wiedzy i doświadczenia do prowadzenia tego co prowadzą.
Na palcach jednej ręki mogę wymienić pracowników dydaktycznych, którzy na prawdę wiedzieli w pełni o czym mówią (np. bazy danych), za to mogę wymienić wielu którzy prowadzą jakiś przedmiot a ich wiedza na jego temat jest ograniczona do tego co jest w slajdach które ukradli z ważniaka czy innych podobnych miejsc.
Nie raz miałem taki problem, że oddając projekt z danego przedmiotu, prowadzący miał problem ze zrozumieniem projektu i absolutnie nie chodzi mi o zrozumienie samego kodu, czy jego organizacji a bardziej o podstawowe pojęcia informatyczne stojące za tym projektem (np. systemy operacyjne). Na zajęciach studenci grali sobie w laboratorium w Quake na projektorze a projekty jakie mieliśmy robić na laboratoria (z wyjątkiem kilku przykładów), były tak beznadziejnie dalekie od rzeczywistych sposobów w jaki się wykorzystuję dane pojęcia, że przeciętny student nie widział sensu i zastosowań danej wiedzy. (po prostu nie potrafiliby wytłumaczyć nic co by nie było na slajdach)
Przykład:
Na systemach operacyjnych, jak przerabialiśmy wielowątkowość, to projekty jakie były do zrobienia polegały na zaimplementowaniu jakiejś fikcyjnej przychodni gdzie pacjenci to wątki, lekarz to jeszcze coś innego i tego nawet zweryfikować się nie dało a nikt nie widział po co się to używa. Oceny wtedy były na podstawie np. diagramów UML - czy strzałki są narysowane, czy odpowiednio zaznaczone właściwości na diagramie, a nie na podstawie projektu! Bo jak przecież można ocenić i uzasadnić ocenę czegoś czego się nie rozumie! Dlatego, podczas studiów, zawsze jak miałem jakiś przedmiot to po jednym/dwóch wykładach przestawałem na nie chodzić a przerabiałem to co było na
MIT Open Courseware i
Stanford dla danego przedmiotu a następnie robiłem zadania co były na stronach prowadzących tych przedmiotu -
kolosalna różnica w sposobie podejścia do zagadnienia, w kompetencji prowadzących, itd. Dlaczego tak jest? to jest temat na długą debatę a to nie jest forum polityczne, więc sobie (i Wam) będę darować ;-)
Ważna jednak była uczelnia w tym, że wiedziałem czego szukać i jakie zagadnienia istnieją w informatyce o których w inny sposób bym się nie dowiedział - samo dostarczenie tej wiedzy to już sprawa drugorzędna - jak widać można samemu się nauczyć - ważne jednak, żeby wiedzieć czego się uczyć.
Cybran:
Nie bój się o to, że na studiach będziesz w tyle w porównaniu do reszty. Zdarzają się tacy, że nawet kończąc studia ledwo co programują albo wcale ;-)
Odpowiedz tylko sobie na jedno pytanie które pomoże Ci bardzo w zdefiniowaniu tego czego chcesz:
Chcesz po prostu zmienić pracę na ciekawszą, lepiej zarabiać i zmienić środowisko. Czy może chcesz się zagłębiać w informatykę bo to Cię bardzo interesuję bez względu na zarobki?
Bo jeśli to pierwsze, to raczej studia będą złą drogą teraz. Szybciej by było jakbyś przerobił kilka książek o programowaniu i dostał pracę jako junior developer i potem zdobywał doświadczenie w tej branży. Tylko jest jeden haczyk z takim rozwiązaniem: Będziesz równie nienawidził swojej pracy jak teraz ;-) będziesz siedział w jakichś relatywnie mechanicznych zadaniach, nie wymagających większego wysiłku umysłowego (po jakimś czasie - powtarzające się zadanie, które rozwiązuję się w sposób schematyczny). Jakieś stroniki, serwisiki i takie tam.
Jeśli to drugie, to przygotuj się na parę lat edukacji które nie będą owocowały namacalnym zwrotem z inwestycji przez długi czas. W tym czasie poznasz podstawy tego jak działa komputer, podstawowe pojęcia sprzętu, pamięci, procesora (co jest bardzo ważne! jak można pracować na czymś 8 godzin dziennie, programować to, żyć z tego, nie wiedząc nawet jak to działa?!), poznasz algorytmy i struktury danych, odpowiedni poziom matematyki, żeby to zrozumieć, architekturę komputerów, systemy operacyjne a wtedy dopiero zaczniesz brać się za programowanie. Wtedy jak w swoim kodzie napiszesz "int i = 15", to będziesz rozumiał co to dokładnie znaczy (z naciskiem na słowo dokładnie). Wtedy możesz szukać pracy jako programista a zapewniam, że praca nie będzie nudna - jeśli na takową się załapiesz ;-)
Pozdrawiam