#programowanie

245
1907
Ehh, nie mam pomysłu co to może w ogóle być... Na początku widać listę plików, ale później spodziewałem sie plików .wav, a wygląda jakby było skompresowane...
To chyba nie pogmeram w tych plikach...
https://allegro.pl/oferta/edukacyjny-czytnik-kart-do-wczesnej-nauki-jezyka-angielskiego-224-slowka-14557331692

Jak ktoś chce się przyjrzeć to wrzucam plik bin zrzucony z flasha:
https://we.tl/t-wmcmJUMI98

#programowanie
f3d4f04c-f938-4e9f-b085-d7155f65c91c
17
ataxbras

@Felonious_Gru Tak, to raczej spakowane. `strings` wyrzuca mi same śmieci. FS nie wiem jaki, pakery też nie wiem jakie. Do czego tego potrzebujesz i z czego ten dump?

Felonious_Gru

@Deykun sk taki cwaniak jesteś to weź to rozgryź xd

Zaloguj się aby komentować

Hej ludzie z #it Czy to ja jestem jakiś dziwny, czy w ciągu roboczodnia (jak macie czas bo np urlop albo święto etc) też nie jesteście w stanie przeczytać więcej niż 30-50 stron książki technicznej?
Czy smarfon uszkodził mi mózg, czy to już starość po 30-tce? Jeśli książka ma 300+ stron to jeszcze spoko, ale sporo ma ich np 900..
A może to normalne i nie powinienem się przejmować?
.
.
.
I tak, czytam książki będąc w IT i uważam, że jest to ok, proszę mnie za to nie krytykować.

#pytanie #programowanie #czytajzhejto #ksiazki
maly_ludek_lego userbar
23
5tgbnhy6

nigdy nie mialem w rece ksiazki zwiazanej z programowaniem, ucze sie tylko przez praktyke, a mam inzyniera CS z politechniki i dekade doswiadeczenia zawodowego w gamedevie

Dzemik_Skrytozerca

@maly_ludek_lego


Czytanie ze zrozumieniem lub z analizowaniem trwa wolniej. Ot cały sekret.

ttoommakkoo

@maly_ludek_lego Polecam książkę "Płytki umysł. Jak internet wpływa na nasz" (Nicholas Carr, Eng. "The Shallows: What the Internet Is Doing to Our Brains".)

Podobnie jak autor zauważyłem u siebie, że z czasem dłuższe książki czy nawet teksty sprawiają problem którego kiedyś nie było.


Smartfon wiadomo nie ułatwia bo po co się ma mózg wysilać jak na co dzień jest karmiony lekkimi lub ultra lekkimi dawkami.


Po książkę sięgnąłem właśnie przez to że troche mi to zaczęło przeszkadzać - niekoniecznie czytanie do pracy ale po prostu swoich zakolejkowanych książek 😅

Zaloguj się aby komentować

Kolejne 2 procesy rekrutacyjne z negatywną odpowiedzią. W pierwszym poszło mi świetnie na rozmowie techniczno-architektonicznej, świetnie poszło mi na części managersko-miekkiej. Jako ostatni etap wykonałem test CliftonStrengths, i to właśnie wyniki tego testu mnie zmiotły z planszy, bo o ile ja byłem z wyników bardzo zadowolony, to jednak zgodnie z nimi stwierdzono że nie będę pasował do projektu.

Drugi proces to była moja druga kandydatura do pewnej firmy w ciągu ostatnich 4 lat, i poległem potwornie na pair programmingu, gdyż ponieważ Pan Stres postanowił mi spuścić w trakcie spotkania wpierdol. A 5 minut po zakończeniu spotkania doskonale wiedziałem co miałem zrobić, co tam było do wyjebania/refraktoru, do tego kompletnie zapomniałem o testach jednostkowych.

Chuj ci w dupę @dziki - to chyba powiedział wszechświat 27 marca tego roku. I nie odwołał swoich słów.

#pracbaza #programowanie #programista0k #bezrobocie #zalesie
28
Legendary_Weaponsmith

@dziki nie poddawaj się dziki.

Jakie techniki na opanowanie stresu ćwiczysz? Może chociaż raz dziennie trochę oddychania brzuchem?


Jeśli jesteś ostrym zawodnikiem i jakieś oddychanie brzuchem nie dla ciebie to możesz zacząć na ostro, od 20 minut medytacji dziennie. Jeśli faktycznie jest najgorzej z tym pair programmingiem i stresem z nim, to płać za Headspace i nie ma zlituj, po pierwszym miesiącu rozgrzewki 20 minut dziennie medytacji z samego rana po wstaniu. Nie opuszczając ćwiczeń zadanych na resztę dnia.

Skup się na budowaniu detachment do swoich myśli, np. po Basics 3 program Managing Anxiety, który ćwiczy "nieangażowanie się" w negatywne myśli techniką "noting".


To tylko pomysł. Jeżeli przeanalizujesz kwestię stresu u siebie i zaczniesz ćwiczyć regularnie jakąkolwiek technikę to na pewno w ciągu miesiąca uda ci się osiągnąć efekty. Trzymam kciuki!

NaczelnyRusofob

@dziki To nie świat zawinił tylko ty jesteś lamusem i tyle. Nie pchaj się w branże na której się nie znasz. Złóż CV do Poczty Polskiej i tam w okienku sobie pracuj. Na nic więcej nie zasługujesz jak widać.

Zaloguj się aby komentować

Zostań Patronem Hejto i odblokuj dodatkowe korzyści tylko dla Patronów

  • Włączona możliwość zarabiania na swoich treściach
  • Całkowity brak reklam na każdym urządzeniu
  • Oznaczenie w postaci rogala , który świadczy o Twoim wsparciu
  • Wcześniejszy dostęp, do wybranych funkcji na Hejto
Zostań Patronem
solly

ty masz cos z glowa? xd

Zaloguj się aby komentować

Pytam prosto z mostu.
Jaki dysk sieciowy polecacie?
Potrzebuje 100 może 200GB miejsca, bardziej zależy mi na tym żeby dane się nie wysypały.

#informatyka #komputery #programowanie #siecikomputerowe #backup
myoniwy userbar
31
Odczuwam_Dysonans

@myoniwy używany QNAPik i dwie terówki NASowe spięte w RAID 1 (mirroring). Np. WD REDy, albo Seagate IronWolf. Synology są fajne, ale takiego dwubayowego QNAPa idzie wyrwać za kilka stówek. Idealnie 4 bayowy (możesz wtedy np. dorzucić trzeci dysk jako hot-swap, i wtedy jak padnie któryś z pary to tamten go automatycznie zastąpi), ale z tego co piszesz to taki podwójny Ci styknie, a tego jest sporo.

Można oczywiście kombinować ze zbudowaniem swojego NASa, albo szukanie jakiś wyrafinowanych sprzętów, ale jeśli nie jesteś na poziomie budowania szafy rackowej w domu to nie idź w tę stronę xD chociaż opensourcowe OSy pokroju TrueNASa są fajne, niektóre lepsze, "zwykłe" NASy mają dość zasobów żeby zastąpić seryjny system. Ale nawet starszy QNAP za 500-1000zł w zupełności się sprawdzi.

I pamiętaj o zasadzie 3-2-1. Przynajmniej 3 backupy, na przynajmniej 2 urządzeniach, z czego 1 jest w innej lokalizacji

UncleFester

@myoniwy

Blaszak z płytą obsługującą sprzętowy RAID1,

dwa dyski HDD 2TB (klasy surveillance) najlepiej tego samego typu lecz z różnych serii,

opcjonalnie mały SSD na OS,

Debian,

OwnCloud

i problem z głowy.

Gadu_gadu

@myoniwy dysk TYSIONC!!!!!111

Zaloguj się aby komentować

Tak naprawdę 90% przypadków gdy polskie programery wyjeżdżają do Azji na workation to wyjazd z nadzieja że wreszcie uda im się znaleźć jakąkolwiek zainteresowaną nimi kobietę. A tam Azjatki łase na pieniądze chętnie się przytulą do takiego progra-bankomatu. Sytuacja win-win.

#programowanie #programista15k #pracait #korposwiat #bekazprzegrywow #bekazinceli
d63810a4-3dca-46be-8c6f-df04f763566f
14
smieszneobrazkijuzniesmiesza

@NaczelnyRusofob programery wyjzedzaja do azji na workation aby poruchac... stare do tego znalem

rith

@NaczelnyRusofob był kiedyś taki jeden programer na wypoku co zapoczątkował ten trend. Pamiętam że bardzo lubił azjatyckie klify. Ale źle skończył xdd

KLH2

#bekazprzegrywow #bekazinceli


"Najpewniejszą oznaką pogodnej duszy jest zdolność śmiania się z samego siebie".

Brawo! Łap pioruna

Zaloguj się aby komentować

maximilianan

@NaczelnyRusofob ewentualnie dowolny inżynier w roli "wspierającej" inne działy


(to zawsze jest odwalanie roboty za kilka dzialów)

kodyak

@NaczelnyRusofob oczywiście junior żeby nie był za drogi


Nosaczfejs.jpg

SpasticInk

I dyrygujący nim Jerry, scrum majster

Zaloguj się aby komentować

Mam ostatnio problemy z programem, który ubijam poleceniem timeout.

Program wykonuje setki(w zasadzie to grupowo robi 10000) operacji zapisu plików do określonego folderu z wątków rayona(rust) i wygląda na to, że bez względu czy ubijam go sygnałem TERM czy KILL, to nieco później (0-10s) po zabiciu programu, nie mogę usunąć całego folderu z plikami, bo wygląda, że program ciągle w tle tworzy nowe pliki, więc próba usunięcia takiego katalogu przez "rm -rf" wypisuje błąd "rm: cannot remove '/opt/tmp_folder/short_normal_1/16474004021118382402': Directory not empty"

Zatem by rozwiązać problem przerzucam timer końca działania do programu zamiast ubijać program z zewnątrz.

Jednak mam tutaj ponownie zagwozdkę.
Mam dwie koncepcje

Pierwsza to taka, że pierwszy wątek który złapie problem, to przerywa cały program:
fn check_for_exit() {
  if time_left < 0 {
      process::exit(127);
  }
}


files_chunks.into_par_iter().for_each(|| {
   check_for_exit();

   for file in files_chunks {
       fs::copy("file", output_dir);
   }
});

Druga to taka, że czekam aż wszystkie wątki się skończą i dopiero wtedy przerywam wykonywanie programu

fn check_for_exit() -> bool {
  return time_left < 0;
}

files_chunks.into_par_iter().map(|| {
   if check_for_exit() {
       return None;
   }

   for file in files_chunks {
       fs::copy("file", output_dir);
   }

   Some(())
}).while_some().collect<()>();

if check_for_exit() {
   process::exit(127);
}

Niby punkt drugi bezpieczniejszy, ale punkt pierwszy też przecież przecież powinien wszystkie wątki z kopiowaniem plików ubić. Dobrze kminię, czy jednak punkt pierwszy nie jest bezpieczny?

#programowanie
#rustlang
3
Orzech

@qarmin Nie pisałem dawno w rust, zwłaszcza na tym poziomie, ale zdecydowanie druga opcja. Wydaje mi się, że w pierwszej opcji będziesz miał proces w kolejce do ubicia/ubity, a to co zostanie to będą tzw. detached threads. Ale nie jestem (już) ekspertem, podpytaj może kogoś innego

globalbus

@qarmin a to nie jest kwestia tego, że operacje na plikach robi kernel? Ubicie procesu nie przerywa fs::copy.


Po drugie, obsługa sygnałów nie jest synchroniczna. Jak zrobisz kill PID && rm costam, to na pewno to nie zadziała. Musisz poczekać, aż proces obsłuży sygnał i się zamknie.


Jak robisz timeout na wątkach wewnątrz programu, to z pewnością da się to bardziej elegancko obsłużyć.

lexico

@qarmin Analizując obie koncepcje, które przedstawiłeś, można zauważyć kilka istotnych różnic w sposobie zarządzania zakończeniem wątków i zatrzymaniem programu.

Pierwsza koncepcja


  • Zalety:

  • Każdy wątek sprawdza warunek time_left < 0 przed rozpoczęciem kopiowania.

  • Jeśli warunek jest spełniony, natychmiast wywołuje process::exit(127), co natychmiastowo kończy cały program.

  • Wady:

  • process::exit(127) powoduje natychmiastowe zakończenie programu bez czekania na zakończenie pozostałych wątków. To może skutkować niekompletnym zakończeniem operacji IO, co może być przyczyną problemów z plikami.

  • Możliwe nieprzewidywalne zachowanie, jeśli process::exit(127) jest wywoływane z wielu wątków jednocześnie.


Druga koncepcja


  • Zalety:

  • Sprawdza warunek time_left < 0 przed rozpoczęciem kopiowania w każdym wątku, ale zamiast natychmiastowego zakończenia, wątki, które spełniają warunek, po prostu kończą swoją pracę.

  • Pozwala wszystkim aktywnym wątkom dokończyć swoje operacje kopiowania, zanim program sprawdzi, czy powinien zakończyć się process::exit(127).

  • Bezpieczniejsze podejście, ponieważ nie powoduje natychmiastowego zakończenia programu, co pozwala na bardziej przewidywalne zarządzanie zasobami.

  • Wady:

  • Może powodować krótkie opóźnienie w zakończeniu programu, jeśli trzeba czekać na zakończenie wszystkich wątków.


Wnioski

Druga koncepcja jest bardziej bezpieczna i elegancka, ponieważ pozwala na kontrolowane zakończenie programu i uniknięcie problemów związanych z nieskończonym tworzeniem plików po wywołaniu timeout.

Natychmiastowe zakończenie programu przy użyciu process::exit w pierwszej koncepcji może prowadzić do nieprzewidywalnych problemów związanych z niedokończonymi operacjami IO. W drugiej koncepcji wątki mogą bezpiecznie zakończyć swoje zadania, co zmniejsza ryzyko wystąpienia problemów z plikami i zasobami.

Zatem rekomenduję skorzystanie z drugiej koncepcji. Jeśli jednak decydujesz się na pierwszą koncepcję, warto wprowadzić mechanizm, który upewni się, że wszystkie wątki zakończyły swoją pracę przed zamknięciem programu, aby uniknąć problemów z niekompletnym przetwarzaniem plików.

Zaloguj się aby komentować

szukajek

ale o co sie rozchodzi?

pierdonauta_kosmolony

@NaczelnyRusofob wreszcie śmiechłem. Ale tylko trochę.

solly

szkoda ze ten pej taki martwy i koles przypomina sobie co 1,5 roku o nim xD

Zaloguj się aby komentować

Jest taka sprawa: mam prosty skrypt w Pythonie, który chciałbym puszczać raz dziennie. Skrypt pobiera pewne dane i zapisuje do csv. Nie chce mi się pamiętać, żeby go ręcznie puszczać.
Z jakiej usługi mógłbym skorzystać, żeby wrzucić tam mój skrypt i niech się codziennie sam puszcza o określonej godzinie?

#programowanie #python
8

Zaloguj się aby komentować

:green_book:
Pracownicy, którzy dołączyli do Nvidia 5 lat temu, są teraz milionerami i prowadzą życie na "półemeryturze"
Nvidia (NASDAQ: NVDA) odnotowała niesamowity wzrost w ostatnich latach. Od początku 2024 roku akcje firmy wzrosły o 167%. W ciągu ostatnich pięciu lat wzrosły o imponujące 3,450%.
https://finance.yahoo.com/news/employees-joined-nvidia-5-years-160012281.html

W sumie ciekawy problem.

Źródło: https://www.tiktok.com/@trading101/video/7384254329965792555

#programowanie #programista15k #nvidia
3
m_h

W sumie ciekawe ilu jest takich pracowników co mają te ponad 10 000 000 $ w akcjach. Załóżmy że jakieś 10% wszystkich tam pracujących. Jak sprzedaż takiej ilości akcji wpłynie na cenę Nvidii na giełdzie oraz co się stanie jęzeli te osoby powiedzą: pierdole nie robię na tego prywaciarza złodzieja i pójdzie leżeć na trawkę pindolem do góry.

Zaloguj się aby komentować

Odczuwam_Dysonans

@wombatDaiquiri

czy?

tak

nie

ogarnij

sie

eee

Zaloguj się aby komentować

#programowanie #hejto
Przeglądam pobieżnie dokumentacje hejto api, ale nie widzę opcji pobrania wszystkich komentarzy i postów jednego użytkownika. Ktoś może podpowiedzieć jak to ogarnąć?
11
lipa13

@redve Patrzcie no ludzie jakie te programisty teraz wygodne. Nic tylko po API by się komunikowały a na stary, dobry web scraping nawet nie spojrzą.

koszotorobur

@redve - BTW: a próbowałeś mojej Szukaczki Hejto: https://hejto-szukaczka.vercel.app/?

koszotorobur

@redve - Masz tu kod Pythona do https://docs.hejto.pl/#tag/Posts/operation/get_posts :

import requests


user = "koszotorobur"


client = "" # Get it from https://developer.hejto.pl/

secret = "" # Get it from https://developer.hejto.pl/


url = " https://auth.hejto.pl/token"

body = {

   "client_id": client,

   "client_secret": secret,

   "grant_type": "client_credentials",

}

headers = {"Content-type": "application/json"}


r = requests.post(url, json=body, headers=headers)

token = r.json().get("access_token")


for page in range(1_000_000_000):

   url = " https://api.hejto.pl/posts"

   headers = {"Authorization": f"Bearer {token}"}

   params = {

       "period": "all",

       "page": page + 1,

       "limit": 50, # 50 is the max

       "orderBy": "p.createdAt", # p.createdAt|p.numLikes|p.numComments|p.hot|p.hotness|rand|p.promoted

       "orderDir": "desc", # asc

       "users[]": user,

   }


   r = requests.get(url, params=params, headers=headers)


   items = r.json().get("_embedded").get("items")

   if items:

       for item in items:

           print(item.get("content"))

   else:

       break

Z tego co pamiętam Hajto API zwraca maksymalnie 50 stron gdzie może być maksymalnie 50 wpisów na jednej stronie - co daje maksymalnie 2500 wpisów, które można wyciągać na raz.... no chyba, że później posortujesz w drugą stronę to na dwa razy po 2500 wpisów wyciągniesz maksymalnie 5000).

Zaloguj się aby komentować

Odnośnie kabli podwodnych to ciekawostka - Microsoft testował podwodne datacenter i udało im się zmniejszyć awaryjność 8-krotnie.

Obecnie projekt został wstrzymany ale firma zapewnia że wykorzysta pozyskaną wiedzę.

Źródło: https://www.windowscentral.com/microsoft/microsoft-waves-goodbye-to-underwater-data-centers

#ciekawostki #programowanie #devops
2
Pajra

Kiedyś czytałem podobnego newsa, ale z serwerownią google, tylko oni w prost mowili, że chodzi o chłodzenie

Zaloguj się aby komentować

Siemka, czy kojarzycie jakieś materiały w języku polskim tłumaczące podstawy programowania? Zmienne, tablice, pętlę, takie pierdoły. Język w sumie dowolny, ale spodziewam się że jak coś będzie to pewnie dla pythona.

Inb4: "naucz się angielskiego i przeczytaj XYZ" to nie jest rekomendacja materiałów w języku polskim.

#programowanie #naukaprogramowania #pytanie #kiciochpyta
27
elszczepano

Za moich czasów to się polecało Mirosława Zelenta - tłumaczy jak chłop krowie na rowie. OTOH pamiętam też zesranie na forach że pokazywał to na C++ i były tam też jakieś zarzuty o bad practices. Niemniej jednak mnie wtedy nauczył więc ode mnie polecanko.

Meverth

@wombatDaiquiri sprawdź https://kobietydokodu.pl/kurs-javy/

możesz poczytać go nawet jeśli jesteś mężczyzną, trans, nie-binarny, kotem, psem itp - nikt tego nie sprawdza ( ͡~ ͜ʖ ͡°)

Zaloguj się aby komentować

Rozumiem finansowanie serwerów z reklam itp. handlowanie danych kwestia dyskusyjna. Ale nie da się dorobić guzika by z automatu odznaczał wszystkie Uzasadnione interesy a nie żebym musiał odznaczać wszystkie trackery z osobna jak na jakimś skurwailym Onecie.

#zalesie #programowanie #hejto #gownowpis
62cd8b58-3f37-4a66-8918-cd61663c5c31
6
ZygoteNeverborn

@starebabyjebacpradem Typowe. Na Wypoku było to samo. Wprowadzają nowe prawo, które ma cię chronić, a skurwiele oczywiście zaimplementują to w taki sposób, żeby nikomu się nie chciało. Jeśli dużej części leniwych kmiotów nie chce się ustawić nawet prawidłowej społeczności to co dopiero przegryzać się przez coś takiego.

VonTrupka

Wciąż czekam na update "i still dont care about cookies" bo obsługuje coraz mniej serwisów :\

Meverth

@starebabyjebacpradem wiesz, że niewyrażenie zgody na uzasadniony interes mogą zignorować? RODO wprowadza pojęcie domyślnego bezpieczeństwa, zatem żadna firma nie może zbierać ani przetwarzać danych bez twojej zgody oprócz uzasadnionego interesu. Nawet jak dostaną zgodę to mają obowiązek przetwarzać tak krótko jak tylko się da i skasować je chyba, że służby (policja itp) chcą mieć je dłużej.


To tyle jeśli chodzi o teorię. Praktyka pokazuje jak się obchodzi przepisy, szczególnie w firmach które żyją z profilowania i marketingu.

Zaloguj się aby komentować

Hej, czy ktoś z Was używa fotela do prywatnego, zdalnego biura godnego polecenia?
Szukam czegoś i zastanawiam się nad gamvis bo różowa ma, ale może ktoś coś ciekawego podpowie?
#programowanie #pracbaza #fotelbiurowy
7
macgajster

w robocie tylko klękosiad w moim sercu

GrindFaterAnona

@Fletcher ja kupiłem gamingowy ale radzę zainwestować w jakiś z obiciem z lepszych materiałów. ja na moim się dosyć mocno pocę, dałem około 1k.

Dużo osób poleca też dragonfly ale nie potrafię sobie wyobrazić jak miałbym na tym siedzieć

Zaloguj się aby komentować

Ruszyła przedsprzedaż trzeciej edycji szkolenia AI_Devs.
https://www.aidevs.pl/?ref=hejto

To szkolenie dla programistów (musisz umieć programować!) chcących nauczyć się integracji rozwiązań AI/LLM (OpenAI, Llama, Anthropic, Groq, modele lokalne itp.) z istniejącymi systemami IT.

  • w tej edycji skupiamy się na AGENTACH, a nie pojedynczych automatyzacjach. Jest to kontynuacja poprzednich edycji, a nie powtórka,
  • 100% materiałów przygotowanych jest od nowa (nie korzystamy z tekstów/filmów/zadań z poprzednich edycji),
  • wszystkie zadania zostały zaprojektowane od zera,
  • dodaliśmy do treści i zadań wątek fabularny
  • szkolenie trwa 5+1 tygodni (5 tygodni nauki + 1 tydzień opcjonalny, do nadrobienia materiału z poprzednich edycji dla tych, których nie było z nami wcześniej),
  • przedsprzedaż trwa do 12 lipca i oznacza DUŻĄ zniżkę,
  • szukasz recenzji? Rzuć okiem na LinkedIn albo zapytaj znajomych. Przeszkoliliśmy tysiące osób, jest więc ogromna szansa, że osobiście znasz któregoś z kursantów.

Jak kształtują się ceny? 
• 1790zł - do 12.07 jesteś tutaj
• 1990zł - w przedziale 13.07-11.10
• 2790zł - od 12.10 do końca sprzedaży

Zobacz agendę  
https://www.aidevs.pl/?ref=hejto

#programowanie #llm #kursy
8099a0a4-e3e1-4248-8858-33da4c3c9751
9
groman43

@CzlowiekPromocja A podobno bootcampy się skończyły xDDD Już lecę.

Zaloguj się aby komentować

koszotorobur

@QuentinDamianino - coś prostego jak to https://uploads-ssl.webflow.com/5e9b599e716f9d94b6c84f43/5f07843fde2d7154e2004824_example-web-developer-resume.png lub to https://images.freecreatives.com/wp-content/uploads/2015/05/Free-Resume-PSD-Template_full_preview.png absolutnie wystarcza i można to stworzyć samemu w MS Office lub LibreOffice.

Dodatkowo staraj się zawrzeć wszystko na jednej stronie - nikt nie lubi czytać elaboratów.

monke

@koszotorobur ale te paski i gwiazdki to rak. Może i ładne ale nic to nie mówi

koszotorobur

@monke - ale może być przyczynkiem do dyskusji

Mr.Mars

@QuentinDamianino Absolutnie nie!


Nawet istnieje nieformalny zakaz umieszczania zdjęcia w CV.


W pracy liczy się twoja wiedza i umiejętności zawodowe.

monke

@QuentinDamianino ja tam umieszczam i moi znajomi też

monke

@koszotorobur byleby oddzwaniali

Zaloguj się aby komentować