Wątek przeniesiony 2019-02-11 01:35 z przez somekind.

Co powinienem przestudiować?

Odpowiedz Nowy wątek
2019-02-10 21:37
4

Witajcie,
od lipca z przerwami szukam jak dobić się do wiedzy, której szukam i ciągle nic, nadal Komputer wydaje mi się wielką magią.Było też kilka wątków moich na ten temat, ale chciałbym tutaj domknąć temat na amen.

Swoją przygodę w IT rozpocząłem z myślą o dobrej pracy i w ogóle pracy. Skończyło się na tym, że rąbię całymi dniami nawet nie czyste CRUDy, bo jakaś logika też jest, ale to jest po prostu walenie JSONami w koło Macieju od klienta do serwera i nazad... Używam Springa, Angulara, Mongo, baz SQL i różnych pierdół lepszych bądź gorszych, które co rusz się pojawiają nowe.
Dwa lata temu o tej porze, nawet w snach nie marzyłem o takiej pracy i, że w ogóle będę tworzył software.

I wiecie co? Jestem nie szczęśliwy i nie mogę zaznać spokoju... Nie uważam się za programistę, tylko za gościa, który zna wierzchołek góry lodowej i SKŁADA (a nie programuje) gotowe komponenty. Przecież ludzie... to nie jest programowanie (przynajmniej tak myślę).
W pracy otaczają mnie ludzie, którzy są seniorami i robią to samo, składają Springa z jakąś DB, do tego Angular albo inny Android i heja.

Fajnie by było zrobić coś innego, zrozumieć jak działa komputer i popisać coś niskopoziomowego.
Zacząłem się uczyć ANSI C i jak na razie przerobiłem z 200 stron, ale to są rzeczy w sumie które już nam na wylot z modyfikacjami ewentualnie, także muszę jeszcze poczekać.

Miał ktoś tak? Może ktoś powiedzieć jak ugasił w sobie to pragnienie wiedzy?
Czuję się jak koleś, który wkręca skrzynię biegów do samochodu i tyle, a chciałbym pójść do kopalni, wykopać rudę żelaza, przetopić ją, wykuć elementy i samemu je składać.

To wszystko jest zabawne, bo wielkie korporacje jak ORACLE, Microsoft czy Google dają nam jakiś gotowy software, bez którego by nie było niczego, a Polskie programowanie z dnia na dzień przestałoby istnieć, bo pewnie ludzi zdolnych do napisania OS, maszyny wirtualnej czy środowiska GUI jest (strzelam) 5% spośród wszystkich programistów, a reszta to mili ludzie, którzy podniecają się Clean Code i SOLIDEM (nie ujmuję tym zagadnieniom).

Chciałem zacząć coś niskopoziomowego działającego na sieci. Potrzebuję jakiś projekt, który przeczytam i nagle mnie olśni, jak od Hello Worlda przejdę do własnego programu, którym skomunikuję dwa komputery przez sieć. Od zera, from scratch, bez żadnych bibliotek, wszystko sam.
Wziąłem cURL, ale trochę jednak za trudno dla mnie na ten moment. Też nie chcę już się zanudzać jakimiś biznesowymi aplikacjami.

Może https://github.com/madnight/nano sobie zacznę analizować, tak lubię się uczyć.

Wskazówki, sugestie?

A może myślicie, żeby odpuścić, bo i tak świat ITmagii nie odsłoni nigdy przede mną tajemnicy? :D

Pozostało 580 znaków

2019-02-10 22:01
0

Zmień pracę na ciekawszą? :)


Na PW przyjmuje tylko (ciekawe!) zlecenia. Masz problem? Pisz na forum, nie do mnie.

Pozostało 580 znaków

2019-02-10 22:05
0

@Shalom: ja nic nie umiem oprócz CRUDów dla przysłowiowego "ZUSU" :D

No to się nauczysz :P Ale nie w pracy która polega na klepaniu CRUDów ;) - Shalom 2019-02-10 22:10

Pozostało 580 znaków

2019-02-10 22:07
0

tez miewam podobne dylematy, dlatego zaczynam czytac o winapi32 i ogolnie o hackowaniu kernela windowsowskiego, bo takie powolne zdobywanie "fortecy" jaką jest zamknięty i niedostępny soft microsoftu wydaje sie byc bardzo sexi :) shellcoder handbook
mozesz sie tez pouczyc assemblera, programming from ground up to calkiem niezla ksiazka, uzywa standardowego asm linuxa wiec nie powinienes miec problemow z postawieniem "srodowiska" :)
bardziej zwiazane z praca: czesto frameworki/narzedzia jakiegos jezyka sa napisane w tym jezyku i maja kod powszechnie dostepny, wiec mozesz poczytac githuba, issues lub dokumentacje jak nie wiesz jak cos dziala "od srodka" :)

edytowany 3x, ostatnio: lambdadziara, 2019-02-10 22:10

Pozostało 580 znaków

2019-02-10 22:12
1

Schodź coraz niżej w abstrakcji ale jak dojdziesz do bitów to już nic niżej nie znajdziesz a na bitach to pisano... ja wiem... pewnie ze 30 lat temu, dziś użycie asm jest od święta a najniżej jak się schodzi to do C by pisać kod pod microkontrolery, ale nawet i tam już zaczynamy dostawać abstrakcje. Czas to pieniądz, to co dziś piszesz i uważasz, że nudne to pisząc na najniższym poziomie byś... cóż nie wiem czy by ci życia starczyło by to napisać.

Poniżej bitów jest jeszcze fpga- też super sprawa. Zbudować własny 8bitowiec :) - Cr0w 2019-02-11 12:19

Pozostało 580 znaków

2019-02-10 22:12
0

@lambdadziara: dzięki, książka jest w PDFie ogólnodostępna, więc sobie ją przeczytam z nadzieją, że krok po kroku zrozumiem komputry

@mr_jaro: dzięki za wypowiedź, ale mi nie do końca chodzi o to, żeby jakieś REST API w Assemblerze pisać. Chciałbym tylko zrozumieć to wszystko, jak od bitów i bajtów można zagrać w Wiedźmina. Chcę tylko wiedzieć jak.

Poza tym myślisz, że jakby Linus Torvalds miał za zadanie napisać apkę w Angularze, to nie zrobiłby tego?

edytowany 1x, ostatnio: NeutrinoSpinZero, 2019-02-10 22:15

Pozostało 580 znaków

2019-02-10 22:17
1

w sumie troche mnie to trapi, wiec zapytam przy okazji... dlaczego C nie ma "breaking change" i mozna sie go uczyc z Kerrighana z lat 80, a np frameworki JS sie zmieniają co pare miesiecy i kilkumiesieczny kod przestaje dzialac? Najlslynniejszy przyklad to chyba: print vs print() w pythonie, co za roznica czy print to funkcja czy statement? albo mysql vs mysqli w php 7, Dajcie wiecej przykladow!

edytowany 1x, ostatnio: lambdadziara, 2019-02-10 22:20

Pozostało 580 znaków

2019-02-10 22:21
2

@NeutrinoSpinZero myślę że linus tak samo by napisał w angularze jak ja siadam i piszę w c czy asm. Żaden problem tylko, że z racji doświadczenia w tej technologii wyjdzie dłużej gorzej. Tutaj dochodzimy do sedna, że prawdziwy programista a nie klepacz napisze kod we wszystkim. Sam robie sporo crudów, angulari, vue, ale jak mam taka fanaberie to sobie coś i na arduino pomodze bo tak, bo fajnie jest czasem pozarządzać pamięcią.

edytowany 1x, ostatnio: mr_jaro, 2019-02-10 22:23

Pozostało 580 znaków

2019-02-10 22:23
0

Zanim rzucisz się na oferty pracy z gatunku embedded spróbuj może najpierw coś porobić w tym temacie w domu samemu.
Kilka przydatnych stron:
https://hackaday.io/
https://projects.raspberrypi.org/en/
https://www.instructables.com/id/Raspberry-Pi-Projects/


Szacuje się, że w Polsce brakuje 50 tys. programistów

Pozostało 580 znaków

2019-02-10 22:26
0

A próbowałeś wyjechać z Polski?

Mnie czasem nachodzą takie myśli, żeby spróbować. Skoro Polska to dla... wielu? większości? wszystkich? Mexico of Europe, drugie Indie i generalnie jakieś zad**ie na końcu świata, do którego wysyła się to, czego na miejscu nikt nie będzie chciał robić, ale na czym wymiękną / wymiękli już spece z Bangalore... no to może trzeba zebrać manatki i szukać ciekawej pracy gdzie indziej ;)

W Polsce mogę sobie zmienić pracę i co? Zamiast dostawać po głowie od jakiegoś Jasia Fasoli będę dostawać przez łeb od Helmuta, Jacquesa albo Olsena. Zamiast klepać semi-enterprise FizzBuzz będzie trzeba rzeźbić w semi-enterprise BuzzFizz. Spróbuję szczęścia w jeszcze jednym stacku (już piątym! choć na czwarty musiałem przejść nie do końca z własnego wyboru), znowu wyzeruję sobie HR-owy licznik dupogodzin expa i co na tym zyskam? Prawdopodobnie tylko to, że znów będę mógł przechodzić questa "zostać programistą 3k", bo projekt znowu okaże się jeśli nie FizzBuzz, to jakimś innym FooBar z formularzami, żonglowaniem tabelkami, dyskusjami o tym po czym użytkownicy chcą filtrować itd. :D


Blocker wiszący od miesiąca? Mówisz o tym criticalu z zeszłego tygodnia? A, tak, zalogowaliśmy przedwczoraj tego minor buga. Pewnie, zajmę się ASAP tym enhancementem. Nie ma sprawy, jak tylko podomykam taski to wezmę się za ten ficzer, tylko go jeszcze wyestymujemy przed kolejnym sprintem.
myslalam ze po agh to mozna juz robic w jakims ai albo chociaz ml :) niedawno nawet tu na forum ktos szukal do pomocy przy programie do oceniania cv. Albo jakies systemy eksperckie, to musi byc fajna sprawa - lambdadziara 2019-02-10 22:29
zależy w czym kto się wyspecjalizuje. O tym można by założyć cały nowy wątek. I nie po, a w trakcie :P ale wymysły takie jak Opracowanie modelu numerycznego procesu przebicia pancerzy o strukturze wielowarstwowej czy Ocena możliwości modeli materiałów dedykowanych do opisu [...] z wysoką prędkością deformacji są polskiej gospodarce tak potrzebne, jak spray do nawożenia palm kokosowych. - superdurszlak 2019-02-10 22:36

Pozostało 580 znaków

2019-02-10 22:28
1

Można napisać własny system operacyjny, https://wiki.osdev.org/Main_Page zawiera wiele pomocnych na starcie informacji, a pisząc OS można się wiele nauczyć jak to działa na najniższym poziomie :)

Pokaż pozostałe 6 komentarzy
@vpiotr: najprostszy bootloader tak, ale w GRUBie mam od razu obsługę formatu ELF, można wrzucać dodatkowe pliki z assetami i mieć je od razu załadowane do pamięci, dostajesz standardowe struktury według standardu multiboot np. z mapą pamięci - zalet jest wiele :) - mad_penguin 2019-02-10 22:45
@vpiotr: yup, utknęło mi w pamięci że tamten bootloader z przykładu miał się mieścić w jednym. - superdurszlak 2019-02-10 22:45
@superdurszlak: ciekawy pomysł, aczkolwiek o ile podział pamięci pewnie mógłby być wymuszony przez procesor, podobnie jakichś gniazdek w mobo, to jeśli dane urządzenie miałoby być wspólne to pewnie wymagałoby wspólnego sterownika, w którym mogłyby być dziury - mad_penguin 2019-02-10 22:50
ciekaw jestem, czy dałoby się ominąć to na zasadzie security przez obscurity - ograniczając rolę takiego hosta do np. przydzielania okienek czasowych z dostępem do danego zasobu. Choć pewnie i w takim rozwiązaniu znalazłyby się paskudne dziury... - superdurszlak 2019-02-10 23:12

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

2 użytkowników online, w tym zalogowanych: 0, gości: 0, botów: 2

Robot: CCBot (2x)