Studiuje informatyke i zauwazylam, że bardzo dużo moich rówieśników wcale nie jest zainteresowana programowaniem - rozwijają sie za to w kierunku sieciowości lub administrowania systemami, wielu pewnie pracuje w jakichś serwisach i są typowymi "informatykam" od wszystkiego. Ja przyznam szczerze, nie przepadam za technologią, bardziej mnie rajcuje rozwiązywanie problemów, lubie jak po wielu godzinach pracy program zaczyna w koncu działać. Jestem sporym fanem filozofii i ogólnie literatury i zastanawiałam sie, czy nie porzucić studiów które nie do końca mnie satysfakcjonują (programowanie jest na niskim poziomie, bo nie kazdy chce byc programistą) i raczej połączyć w jakiś sposób zamiłowania humanistyczne z programowaniem. Znam bardzo dobrze angielski - co sądzicie o filologii angielskiej, albo ogólnie o studiowaniu języków? Wreszcie - czy ktoś z Was studiował filozofie i czy studia na tym kierunku satysfakcjonowały wasze ciągoty logiczne? (bardzo lubie spójne systemy i rozumowanie takich filozofów jak Wittgenstein czy Spinoza, takie rozkminianie na tematy mocno abstrakcyjne i raczej ni empiryczne w sumie nie jest zbyt dalekie od programowania). Martwie sie troche, ze na humanistycznych kierunkach zarzucają ludzi masą nie zawsze ciekawej literatury (a ja lubie miec wolną ręke w tym co czytam) ale na informatyce jest podobnie, tylko że za "nieciekawe ksiązki" wstawić można "przestarzałą technologie" :)
Niech to miejsce będzię ogólnym tematem o humanistycznych kierunkach studiów, z którymi mieliście do czynienia, czym sie na nich zajmowaliście, oraz czy udało Wam sie połączyć to z programowaniem?
Jak dla mnie ogólnie programowanie ma dużo wspólnego z filozofią - dużo jest teoretycznych konceptów, systemów myślowych - np.. wzorce projektowe, zasady dobrego programowania typu SOLID, paradygmaty (OOP, funkcyjny itp.). Ale nawet wchodząc w projekt, trzeba myśleć nie tylko o kodziku, ale też o architekturze projektu, o ogólnych założeniach, o dobrze dobranych metaforach.
Podczas programowania często trzeba operować na nieco wyższym poziomie abstrakcji, co zbliża programowanie do filozofii (a także do socjologii, antropologii, psychologii, ezoteryki czy innych "szkół myślowych").
Z drugiej strony nie wiem, czy studia filozoficzne są ciekawe. Nie studiowałem tego (chociaż studia językowe owszem).
o ogólnie o studiowaniu języków?
Z językiem też dużo ma wspólnego, bo:
-
programista musi pisać kod, a pisanie kodu to też dziedzina pisarstwa i podobne problemy trzeba mieć na uwadze (trzeba dobrze dobierać słowa/nazwy, trzeba pisać kod zwięźle, w zrozumiały sposób itp.).
-
programista musi czasem pisać również teksty w języku naturalnym (np. powinien umieć napisać dokumentację, opisać issue w sensowny sposób, albo napisać zrozumiałego mejla). Więc zainteresowanie się językiem (wszystko jedno czy obcym, czy polskim), pisanie czegoś, powinno być na plus.
-
na studiach językowych, przy nauce reguł gramatyki, można poczuć się trochę jak przy nauce składni nowego języka programowania, podobny rodzaj rozrywki intelektualnej.
-
studia językowe uczą precyzji, np. zwracania uwagi na końcówki gramatyczne. Tak samo jak nauka języków programowania.
itp.
LukeJL napisał(a):
dużo jest teoretycznych konceptów, systemów myślowych - np.. wzorce projektowe, zasady dobrego programowania typu SOLID
Żadna z tych rzeczy nie jest teoretycznym konceptem, to sama praktyka.
Raczej teoria stosowana w praktyce.
Niby jak miałaby to być teoria, skoro wszystko to zostało zdefiniowane na podstawie analizy doświadczenia zdobytego podczas praktycznego tworzenia oprogramowania?
No właśnie, ale trzeba było dokonać tej analizy.
Trochę jak z językami. Do tego, żeby się porozumiewać w danym języku wystarczy być native speakerem. Nie trzeba wiedzieć, co to "przypadek". Wystarczy mieć w głowie język i operować swoją intuicją językową ("tak brzmi dobrze/źle"). Tak samo programować można również "na czuja".
Tylko intuicję ciężko komuś "przekazać". Przypisanie natomiast nazwy do jakichś uogólnionych zjawisk językowych (i operowanie pojęciami typu "przypadek") pozwala na przekazywanie wiedzy o danym języku (np. ludziom, którzy się uczą danego języka jako obcego), ew. doskonalenie własnej znajomości danego języka, nawet tego ojczystego.
Tak samo jak stworzenie nazwy na pewne uogólnione zjawisko w kodzie (np. Single Responsibility Principle) pozwala na lepsze przekazywanie wiedzy innym (ew. na polepszanie własnych umiejętności poprzez pewną refleksję "z czego to wynika, że ten kod jest dobry, a ten zły").
Tylko że, te wszystkie SOLID, DRY, czy nazwy konkretnych wzorców projektowych to i tak "tylko teoria". Ludzie chłoną te wszystkie książki o wzorcach projektowych i dobrych praktykach i potem i tak źle piszą, bo brak im tej praktyki, nie mają wyczucia, które wzorce kiedy stosować i w jaki sposób. A potem jest przeinżynierowanie i kulty cargo.
Ludzie chłoną teorie, które ktoś kiedyś opracował w jakimś kontekście, natomiast sami nie znają tego kontekstu (np. z powodu małego doświadczenia nie spotkali się z sytuacją, w której DI mogłoby się przydać, więc nie wiedzą po co, ale tylko to, że "tak się robi").
LukeJL napisał(a):
No właśnie, ale trzeba było dokonać tej analizy.
No właśnie, trzeba było dokonać analizy, więc nie ma tu mowy o teorii, bo w takim przypadku nie byłoby czego analizować.
Tylko że, te wszystkie SOLID, DRY, czy nazwy konkretnych wzorców projektowych to i tak "tylko teoria". Ludzie chłoną te wszystkie książki o wzorcach projektowych i dobrych praktykach i potem i tak źle piszą, bo brak im tej praktyki, nie mają wyczucia, które wzorce kiedy stosować i w jaki sposób. A potem jest przeinżynierowanie i kulty cargo.
Ludzie chłoną teorie, które ktoś kiedyś opracował w jakimś kontekście, natomiast sami nie znają tego kontekstu (np. z powodu małego doświadczenia nie spotkali się z sytuacją, w której DI mogłoby się przydać, więc nie wiedzą po co, ale tylko to, że "tak się robi").
Rozumiem o co Ci chodzi, ale to, że ktoś używa wzorców czy reguł bez zrozumienia nie czyni ich teoriami.
Na jednej warszawskiej uczelni (WIT) jednym z przedmiotów jest filozofia. Czy potrzebna informatykom? Nie wiem, ale chyba nie do końca.
Ja uważam, że wszystko czego w życiu się nauczysz daje jakieś plusy, tylko trzeba je umieć wykorzystać. Pewnie znając filozofię inaczej można postrzegać świat i ludzkie zachowania. Może tu szukaj plusów i spróbuj przełożyć swoje umiejętności i wiedzę. Filozofia chyba trochę pokrewna jest z psychologią i socjologią. Możesz więc swoją wiedzę przekuć na jakieś kwestie związane z zachowaniem użytkownika (tak powstały reklamy typu baner/popup, czy mikropłatności w grach). A nóż wymyślisz coś zupełnie innowacyjnego.
Znam jednego programistę po filozofii.
Najciekawiej było z nim rozmawiać w trakcie code review.
Mówisz mu "to powinno być tak i tak" a on na to "to zależy" albo "tak twierdzi większość".
Jak nie lubisz programowania to zawsze możesz zabrać się za analizę wymagań.
Po skończonej informatyce to raczej mało jest stricte programistów.
Moim zdaniem absolutnie nie warto studiować filozofii, jeżeli planujesz być programistą, no chyba, że to jest twoja pasja a studia traktujesz jako hobby a uczyć się będziesz sama w domu, ale to jest ewidentne robienie sobie pod górkę, bo łatwiej się uczyć mając podstawy teoretyczne i czas zajęty nauką dziedziny, z którą wiążesz przyszłość. Studia jakie by nie były pochłaniają czas a co za tym idzie, będziesz mieć miej chęci i czasu na pracę we własnym zakresie w domu jak będziesz kuła na egzaminy z filozofii i programowanie zaniedbasz.
Ja też lubię filozofię, i też uważam, że filozofii nie warto studiować. Czytać filozofów w wolnym czasie - tak. Bawić się w filozoficzne dysputy ze znajomymi - jak najbardziej. Rozmyślać o naturze rzeczy - oczywiście. Ale studiować? Moim zdaniem nie warto.
Gdzieś między programowaniem a filozofią jest matematyka. Gdzieś między matematyką a filozofią są ekonomia i logika. Gdzieś między ekonomią a filozofią umieściłbym prawo. To może trochę naciągane porównania, zwłaszcza ostatnie, ale w jakimś aspekcie takie przejścia pewnie istnieją. Może któreś z tych rzeczy Cię zainteresują, z pewnością ich studiowanie jest praktyczniejsze od studiowania filozofii, zwłaszcza że wszystkie można z filozofią łączyć.
Zresztą na Twoim miejscu nie odpuszczałbym wcale informatyki, tylko sfokusował się na rzeczach związanych np. ze sztuczną inteligencją, uczeniem maszynowym, kogniwistyką, może lingwistyką.
Mój brat jest po filozofii i jest programistą...
Studia jak opowiadał to na początku greka i łacina. Z samych studiów jest zadowolony, ale pamiętaj, studia to HISTORIA filozofii, a nie miejsce na którym się "filozofuje".
Można wybrać z filozofii to co przyda się w informatyce, np.ontologia, bez konieczności studiowania filozofii w większym wymiarze.
Studiowałem filologię. Nie skończyłem, poszedłem potem na politechnikę, gdzie dochrapałem się tytułu magistra inżyniera, potem jeszcze nieudane dwa lata kombinowania na studiach doktoranckich.
Czy było warto? Tak.
Czy to pomaga w pracy? Czasem jednak niestandardowa wiedza przydaje się, aczkolwiek jest to dość losowe. Wg moich odczuć: bezpośrednio rzadko się tych umiejętności używa, ale każda forma nauki ćwiczy umysł.
Czy polecam? Tak, w ramach poszerzania horyzontów i otwierania głowy.
Ale na tej samej zasadzie polecam uprawiać sport, czytać książki czy być świadomym obywatelem.
Hej, czy trodno sie dostac na Lingwistyke na UJ? Bo czytałam, że jest rozmowa kwalifikacyjna na 2 stopien i dochodzi tam do weryfikacji poziomu językowego - C1. Jednak rzadko kiedy zdarza mi sie rozmawiać po angielsku (tylko 2 razy w tygodniu na uczelni), więc nie wiem czy powinnam sie czegos obawiac :(
lambdadziara napisał(a):
Hej, czy trodno sie dostac na Lingwistyke na UJ?
Jak sądzisz, ile osób stąd próbowało to zrobić?
A po co na studia? Lepiej idź na bootcamp z filozofii. Po paru tygodniach zostaniesz Junior Philosophy Developer.