Aleks
g/strimoidproblems

Ale fajne to makigi tak szybko smiga, przyjemnie sie klika

sens

@Aleks: makigi brzmi jak nazwa lodów

sens
g/sens

Z dnia życia kuca, odcinek 3

Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.

Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:

with open(filename, 'r+') as f:
    data = f.readlines()
    swap_line(data)
    f.truncate(0)
    f.writelines(data)

Otóż kolega wklepał f.truncate(0) i hehe pora na CSa :DDD truncate ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:

Wgl fajnie, że to śmiga na produkcji od pół roku xd

sens

@Pherun: c|:-)

sens
g/sens

Z dnia życia kuca, odcinek 3

Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.

Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:

with open(filename, 'r+') as f:
    data = f.readlines()
    swap_line(data)
    f.truncate(0)
    f.writelines(data)

Otóż kolega wklepał f.truncate(0) i hehe pora na CSa :DDD truncate ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:

Wgl fajnie, że to śmiga na produkcji od pół roku xd

sens

@Pherun: Akcja wpisu zaczyna się w latach 70. - już wtedy młody Bohater wie, że adrenalina smakuje bardziej niż mleko w proszku.

sens
g/sens

Z dnia życia kuca, odcinek 3

Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.

Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:

with open(filename, 'r+') as f:
    data = f.readlines()
    swap_line(data)
    f.truncate(0)
    f.writelines(data)

Otóż kolega wklepał f.truncate(0) i hehe pora na CSa :DDD truncate ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:

Wgl fajnie, że to śmiga na produkcji od pół roku xd

sens

10/10

@Pherun: Dlaczego taka niska ocena? Pytam z czystej ciekawości. Pamiętam jak czytałem to z 5 lat temu, to nawet mi się spodobał. Pesymistyczny, z fajnym zakończeniem. Niewiele jednak pamiętam z niego, co więc było takie złe w tym wpisie?

sens
g/sens

Z dnia życia kuca, odcinek 3

Desktopowy instalator nieważne czego, ważne że nasz, że przez nas zrobiony i to nie jest nasze ostatnie słowo. Dodaję ficzery. Super, wszystko działa. Testuję, odpalam kilka razy. Kurde, coś jest nie tak. Jak klikam cancel, to apka się wiesza na dłuższy moment. Szperam, szperam. Cofam się kilka commitów wstecz, ale nadal to samo, a przecież na 100 % działało wcześniej.

Okazuje się, że procedura zakończenia instalacji obejmuje edycję pliczku, który ma jakieś 10 kB. Podmiana jednej linii. Wygląda to mniej więcej tak:

with open(filename, 'r+') as f:
    data = f.readlines()
    swap_line(data)
    f.truncate(0)
    f.writelines(data)

Otóż kolega wklepał f.truncate(0) i hehe pora na CSa :DDD truncate ucina resztę pliku, tylko że kolega zapomniał przesunąć pozycję file handle'a na początek pliku, więc efektywnie uciął dokładnie nic, tym samym dublując przy każdym wywołaniu jego rozmiar. I tak u mnie z 10 kB zrobiło się w krótkim czasie 12 GB zanim sczaiłem się ocb (:

Wgl fajnie, że to śmiga na produkcji od pół roku xd

sens

@Pherun: logika jest krótka, lecz z tłumikiem. Gdyby wrócił na początek pliku, uciął resztę i wkleił zmienioną treść z powrotem, to rozmiar byłby ten sam. A że nie wrócił i nie uciął nic, to po prostu dokleił zmienioną treść do niezmienionej.

sens
g/KosmopolityczneZakupy

Tak se czytam jak to wszystko pierdolnie i jakiś taki spokojniejszy jestem.

sens

@sens: co nie zmienia faktu, że nie mogę spać :/

cyberbiker
g/ambitne

Od dzisiaj tylko ambitny content, proszę zachować poziom.

sens

@cyberbiker: nic tu po mnie

Runchen
g/Oswiadczenie

Przykładowo- klasa średnia niska śpi.
Klasa średnia wysoka- zajmuje się swoimi sprawami, ale nie śpi, bo trzeba pewnych rzeczy dopilnować, oraz odpisać na Strimoidzie i przygotować pokój na sesję RPGa jutro.
Co łączy patoli z "bogaczami niskiej ligi" i klasą średnią średnią (nowobogackimi dupkami)- podaje odpowiedź- buractwo zazwyczaj.
Buractwo które każe się chwalić. Czuć się lepszym, innych pod byle pretekstem uważać za gówno, no i co najważniejsze- przejmować się.
Że jakiś anon w necie napisał że jesteś i byłeś i będziesz burakiem.
Amen.
XD
Pokaż ukrytą treść To tak dla przypomnienia za co mnie kiedyś "zczarnolistowałeś" sens

I dlaczego, dobrze wiedzieć, że pewne rzeczy pozostają bez zmian.
@sens

Chociaż nie może to o szaraka mi chodziło? xD
No ale to ponoć multi xDD

sens

@Runchen: oho, chyba ci nadepnąłem czymś na odcisk xD Spoko, i tak cię lubię. Wsm to nawet nie pamiętam, żebym cię czarnolistował kiedykolwiek.

sens
g/piwo

jak rzucili dwa kartony dr brew w lokalnym kerfie to wykupiłem chyba 3/4 tego towaru

sens

@sens: vermont ipa całkiem spoko ale summer ale to brałem tylko dlatego, że nic lepszego poza tym nie było

sens
g/Przeciwkoantypolonizmowi

Krzysztof B[x]sak

kurwa, chyba dziś se nocy pójdę i przerobię tego iksa na swastykę xd

sens

@sens: Krzysztof B[࿕]sak

Aleks
g/aleks

Czujcie się zaszczyceni moją obecnością

sens

@Aleks: jakiego kacpra ;s

Aleks
g/aleks

Czujcie się zaszczyceni moją obecnością

sens

@Aleks: kurwa, to miałem być ja na szczycie, ale \ mi sie nie pokazało ;___;

Aleks
g/aleks

Czujcie się zaszczyceni moją obecnością

sens

@Aleks:
    o
  -+-
    /
    /
  /    
/        \

Zian
g/strimoidproblems

_ONGZNA: Ab zberPokaż ukrytą treść Nyy gur crbcyr V'ir zheqrerq... ol yrggvat lbh yvir!_ _WBXRE: V arire xrcg pbhag._ _ONGZNA: V qvq!_ _WBXRE: V xabj... Naq V ybir lbh sbe vg._

sens

@Zian: Cna wrfg mrerz, cnavr Mvboeb

sens
g/LogistykaBezdomnosci

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

@duxet: o kurwa, ładnie. No ale nie żałuję, bo wolę se wklepywać literki niż pamiętać jakieś dziwne kombinacje rodem z emacsa