Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

#humorinformatykow

Gruba ryba

w Hydepark

16piorunów

Fanatyk12piorunów

@vrkr Moim zdaniem inżynier oprogramowania będzie wolał rozwiązanie prostsze koncepcyjnie, którego utrzymanie, debugowanie i rozszerzanie nie będzie wymagało za wiele wysiłku, zamiast super-bleeding-edge rozwiązania, które zaoszczędzi 0.01% cpu i 2% pamięci w ciągu regularnego działania.

Przypomniało mi się, jak na studiach mieliśmy automatyczną testerkę zdań, zadania były pisane jeszcze w Pascalu. Był algorytm + limity pamięci. Algorytm miał działać na liście jednokierunkowej, był skomplikowany i ciężki do debugowania. Ten sam problem był trywialnie prosty do rozwiązania przy użyciu listy powiązanej dwukierunkowo. Oczywiście limity pamięci były dobrane tak, aby struktura danych z dwukierunkowymi wskaźnikami się nie mogła zmieścić... no w każdym razie, autorzy zadania nie wzięli pod uwagę, tego, że ktoś w Pascalu zrobi wstawkę assemblerową, która sobie przerabia wskaźniki kompresując je po drodze (bo było niewiele pamięci do zaadresowania), i w efekcie zmieści listę polinkowaną w obie strony używając skróconych wskaźników. Cóż, byłem wtedy młody i głupi... teraz nie jestem już młody. ( ͡° ͜ʖ ͡°)

GURU1piorunów

Trzeba wybierać wzgórze, na którym się walczy. Większość można na luzie dwoma tabelami, ale są też miejsca na algorytm, który rzeczywiście robi robotę.

Wiadomo, time to ship jest ważny, ale kurde wydajność kluczowych elementów również

Fanatyk4piorunów
Wiadomo, time to ship jest ważny, ale kurde wydajność kluczowych elementów również

@Ragnarokk No jasne, wszystko zależy od przypadku, a senior od juniora właśnie różni się tym, że wie w którym przypadku czego użyć. Cackanie się, żeby algo, które realnie pracuje z listą 5-10 elementów, przerobić z O(n^2) na O(n*log n), to zagranie właśnie typowe dla juniorów.

Najistotniejsza moim zdaniem jest prostota koncepcyjna kodu, bo to mocno wpływa na późniejszą rozszerzalność softu, oraz bezpieczeństwo. Przedwczesna optymalizacja z reguły bardziej szkodzi niż pomaga.

GURU2piorunów

@LondoMollari Tak. Działający kod ktory jest nieutrzymywalny jest tak zły jak niedziałający. Robienie wyszukanej architektury jak utrzymywał też będzie potem praktykant przyniesie więcej szkód jak pożytku.

Dosłownie tydzień temu łatałem kod, gdzie architektura była przeliękna i nowoczesna, ale nikomu nie chciało się sprawdzić wydajności na nawet przeciętnym rozmiarze danych :P

Pokaż więcej komentarzy (5)

Gruba ryba

w Gównowpis

26piorunów

Potwierdzam, mam tego szajsu sporo i to wcale nie chodzi o trzy kartony z kablami xD

Pokaż więcej komentarzy (5)

Gruba ryba

w Hydepark

67piorunów

Pokaż więcej komentarzy (3)

Gruba ryba

w Hydepark

26piorunów

Fenomen4piorunów

programiste assemblerowego pytaja o jakies javowe gowno ktorego kijem by nie tknal.

Osobistość7piorunów

@DEATH_INTJ Z tym, że jakikolwiek faktyczny programista by ci odpowiedział na to pytanie bo JSON jest standardem o którym nie da się nie usłyszeć jeśli faktycznie uczyłeś się o szeroko zrozumianym IT i programowaniu.
Tymczasem vibe coder to wiadomo xD.

Pokaż więcej komentarzy (2)

Gruba ryba

w Hydepark

12piorunów

Fanatyk7piorunów

@vrkr Ojejku, ale bym sobie popisał w assemblerze, takim prostym na 386, z przerwaniami...

...jebane C++, IDE, Pythony, Claude Code'y i inne abstrakcje wszystko popsuły.

Fanatyk0piorunów

@DEATH_INTJ Javy też nie cierpiałem, bo była przeładowana i zaśmiecona. Nadal uważam, że taka jest, choć teraz chyba bardziej hejtuję nodejs, bo jest tam jeszcze większy burdel niż w javie.

Pokaż więcej komentarzy (9)

Gruba ryba

w Hydepark

32piorunów

Pokaż więcej komentarzy (6)

GURU

w Hydepark

8piorunów

400 - Ask right and you might get it

401 - Login and you might get it

402 - Pay up and you'll get it

403 - You ain't never gonna get it

404 - You ain't never gonna get it 'cuz it ain't there

405 - Ask right and you might get it (but differently from 400)

406 - Lemme answer you in a way you can understand and you might get it

407 - Ask from the right place and you might get it

408 - Ask quicker and you might get it

409 - Ask some other way and you might get it

410 - You ain't never gonna get it 'cuz it gone daddy gone

411 - Ask how much of it you want and you might get it

412 - Ask and follow instructions and you might get it

413 - Ask for something more concisely and you might get it

414 - Ask for something more concisely (but differently from 413) and you might get it

415 - Ask for it in a different format and you might get it

416 - Ask for a different portion of it and you might get it

417 - Be less goddamned picky and you might get it

418 - Eschew coffee and you might get it

421 - You ain't never gonna get it, you're here in error, try somewhere else

422 - Ask for it correctly and you might get it

423 - Ask when someone else isn't using it and you might get it

424 - Ask when other things aren't breaking and you might get it

425 - Ask without being so goddamned eager and you might get it

426 - Ask in a way that isn't antiquated and you might get it

428 - Ask with the right condition and you might get it

429 - Ask in a way that isn't spamming and you might get it

431 - Ask in a way that isn't problematically pedantic and you might get it

451 - You ain't never gonna get it, lawyers say so

Gruba ryba

w Gównowpis

10piorunów

Niech podniesie rękę kto nigdy takiej abominacji nie spłodził ( ͡~ ͜ʖ ͡°)

Osobistość6piorunów

Kiedyś pracowałem przy pewnej aplikacji na telewizory. Po testach dostaliśmy buga, że jakiś tam filmik nie odtwarzał się do końca czy też aplikacja się zawieszała, nie pamiętam dokładnie, nieważne. Po zbadaniu problemu okazało się, że coś tam za szybko się wywołuje. Dodałem jakiś timeout do kodu, który był wykonywany przez Flash (bo odtwarzacz był we Flashu). Nie pomogło. Znaczy na komputerze działało, ale na telewizorze już nie.

Przysiadliśmy i okazało, że timeouty zwyczajnie nie dzałają, bo implementacja Flasha była zjebana (many such cases na tej platformie). Sytuacja wydawała się bez wyjścia, bo było wiadome, że komu byśmy tego nie zgłosili to by nas olał. No i wtem wpadłem na to, że może i timeouty nie działają we Flashu, ale działają po stronie JS. Więc zmieniłem kod ten od Flasha, żeby wołał coś w JS. Tam JS odpalał timeout, który po określonej liczbie milisekund wołał odpowiednią funkcję w odtwarzaczu. Problem rozwiązany.

Pokaż więcej komentarzy (2)