The Windscreen Wiper Story [ENG]
As long as there have been cars with windscreens, there have been a need to clear them from rain.
preview 0 comments Motoryzacja shish youtu.be 0
Unboxing The World's Cheapest New Car Reveals It's So Much Better Than You Think [ENG]
It’s been months since I first had this ridiculous idea to buy the cheapest car I could find on Alibaba.
preview 1 comment Motoryzacja shish youtube.com 2
Cars & Bids [ENG]
Aukcje samochodów promowane przez Douga DeMuro
1 comment Motoryzacja shish carsandbids.com 1
How is Money Created? [ENG]
With trillions of dollars being printed around the world, it's time we take a deep look into how money is created.
preview 0 comments ekonomia shish youtu.be 0
Dziś postanowiłem wydobyć z systemu informację o sile sygnału wifi, bo najwyraźniej to jest wiedza, jakiej użytkownik macOS nie jest w stanie otrzymać ot tak. No to cyk cyk, napisałem jakieś gówno w Swifcie. Okazało się, że można to nawet skompilować, no to skompilowałem. A ponieważ Swifta nie znam prawie w ogóle, to postanowiłem z niego po prostu wystawić takie małe API, a potem się zlinkować do tego z C i elo, pozamiatane. Ale takiego wała, przecież istnieje name mangling, a każdy kompilator robi to inaczej. Na szczęście okazuje się, że jak się wpisze swift demangle <zmanglowana nazwa>
, to dostajemy ładny i przejrzysty identyfikator. Zatem obrałem taktykę generowania assembly z tego swiftowego wrappera. Napisałem skrypt w Pythonie, który mi demangluje te nazwy w asm przy pomocy tego swiftowego czaru i jeszcze wypierdala .globl _main
, żeby linker nie robił spruty. I tak oto mogę się podłączyć na luziku fiku miku do systemowego API praktycznie nie tykając dwóch języków promowanych przez Apple: Objective-C, który ma składnię może nie najgorszą na świecie, ale też nie najlepszą, a poza tym jest już przestarzały oraz Swifta, w którym wszystko trzeba odpakowywać, a goły wskaźnik to jest jakieś zło i żeby się do niego dostać, to trzeba pisać jakieś zaklęcia typu UnsafePointer
(podkreślam UNSAFE), rawValue
, baseAddress
, bo oczywiście jest zanurzony gdzieś na samym dnie xD
W sumie pewnie istnieje jakiś lepszy sposób, ale całkiem nieźle się bawiłem dziś, czuję dobrze kuc.
@sens: popieram takie zabawy, ale come on...
https://discussions.apple.com/thread/8280499#:~:text=If%20you%20have%20a%20Mac,on%20the%20macOS%20menu%20bar.
The Economics of Nuclear Energy [ENG]
Ekonomia Energii Nuklearnej
preview 0 comments Inżynieria shish youtu.be 0
@Wojnar: to teraz. przynajmniej mam nadzieje, że to tylko teraz. ogarne ten pierdolnik w 2-3 miechy i beda zapierdalac jak w szwajcarskim zegarku
@Pherun: kek
@zskk: już jedno wypalenie przeszedłem. trzy miesiące z niego wychodziłem...
@zryty_beret: nie mam nic na widoku i ja nie pije (; bardzo źle trawie alkohol
@Wojnar: starałem się tak robić, ale od jakiegoś czasu spadło na mnie jeszcze więcej obowiązków.
Fakt radzę sobie z tym ale mam tego dosyć. Zwyczajnie kurwa dosyć. Muszę na urlop i przemyśleć to wszystko
@shish: od dwóch miesięcy próbuje rozplanować pracę, żeby się wygrzebać z z zaległości, ale kurwaaaa nieeeee, rób bieżączke. Do tego mój zespół to jebana banda ameb.
Na to wszystko po updacie node’a zaczęła mi się wypierdalać część projektu, którą przejąłem po moim poprzedniku, który miał przerost formy nad treścią.
Piszę tutaj, bo i tak nikt tego nie przeczyta
t rant a’la runchen
będę miał o czym mówić jutro na rozmowie o prace testera hehe
mialem do napisania prosta kolejke priorytetowa tj max heap, napisalem sobie ja sobie elegancniutko i wszystko gitarka dziala elegancko sprawdzarka wyrzuca mi 95% poprawnosci, nie przechodzi jedynie test na losowym wejsciu. Ja mowie no wtf u mnie wszystko dziala generuje sobie losowe testy nawet przechodzi wszystko git. W koncu zauwazam ze jedna literka sie printuje w zlym miejscu, na dziesiatki testow, duzych i malych, pojawil sie jeden blad w bardzo duzym tescie. no dobra, analizuje. kurde. nie jestem w stanie odtworzyc tego bledu, zmieniam relacje wiekszosci z silnie wiekszych na slabo wieksze itd sprawdzam rozne randomowe kombinacje w celu odtworzenia bledu i nic. w koncu dochodze do tego, ze blad sie pojawil, tylko jesli literka jest skrajnie lewym potomkiem. no to sobie patrze hmm co by tu co by tu. w pewnym momencie wpadam na dziwny pomysl, zeby w funkcji Delete(int x) ktora usuwa element o x-indeksie z drzewa zamiast sprawdzania parenta jako x/2 ustawiam parenta jako x/2 + 1. no i patrze, dziala git, wrzucam na sprawdzarke - troche wiecej bledow, ale test na losowych nagle przechodzi xD mysle se wtf. robie opcje w takim razie ze jesli x%2 == 0 to parent=x/2 + 1 w przeciwnym razie parent = x/2 no i gitatka dziala. pytam na discordzie klasowym wtf i czy ktos mial podonie. okazuje sie moi drodzy, ze parenta w drzewie binarnym wylicza sie nie jako x/2 lecz jako (x+1)/2 :))))
i ja sie pytam: jakim cudem to w ogole mozliwe, ze tak oczywisty blad objawil sie tylko w niektorych miejscach i to naprawde duzych testow?Pokaż ukrytą treść jakim cudem tak elementarny blad w zaokragleniu nie zmienil w sumie nic poza kilkoma bardzo konkretnymi przypadkami ;0