Przegląd linków #4

Przytrafił mi się niedawno w pracy całkiem interesujący problem, o którym może kiedyś zrobię większy wpis, póki co wystarczy nadmienić, że przy jego rozwiązaniu gros roboty odwalają wyrażenia regularne. Dzięki temu natknąłem się na stronę RegEx101 - niezwykle rozbudowane urządzenie do tworzenia i testowania wszelakiego typu wyrażeń regularnych.


uBlock Origin odwala solidny kawał roboty filtrując reklamy, śmieci, wyskakujące okienka i-te-de i-te-pe. Jeżeli komuś mało, może pobrać więcej filtrów ze strony Let's Block It.


Trudno uwierzyć, ale teleskop Webb obchodził niedawno swoje pierwsze urodziny. Z tej okazji NASA opublikowała niezwykle szczegółowe zdjęcie odległej zaledwie o 260 lat świetlnych gwiezdnej kolebki wraz z raczej mało naukowym, za to całkiem ładnie napisanym komentarzem.


Zajrzałem sobie niedawno na stronę Cichego Fraglesa, jednego z naczelnych rozwiązywaczy publikowanych przeze mnie od czasu do czasu zagadek - i znalazłem tam takie cudo. Praktyczne objaśnienie niemożliwości przekroczenia prędkości światła na przykładzie klocków Lego.


Koleżka zrobił Painta w terminalu! Projekt kompletnie bez sensu, ale też niezwykle widowiskowy (przynajmniej dla wtajemniczonych)


To jest dość "stary news", ale jest strona, której właściciel (ponoć) oferuje miskę ryżu za każde poprawnie odgadnięte słowo. Nie trzeba się logować ani nic płacić, po prostu się klika. Oprócz zdobywanych punktów, na dole widzimy też wskaźnik na którym poziomie języka jesteśmy. Poziomów jest pięć, mi się udało utrzymywać przez większość czasu na czwórce. Co do punktów - nigdy nie przeskoczyłem 900, co po prawie 20 latach życia w angielskojęzycznym kraju uważam za wynik ani kiepski, ani jakoś specjalnie wybitny.


Niektóre szkodliwe substancje chemiczne nie są w żaden sposób przetwarzane i pozostają w naszym organizmie przez całe życie, zwiększając ryzyko zachorowania na różne raki i inne wrzody. John próbuje zgrubnie policzyć ile razy trzeba oddać krew, żeby zmniejszyć zawartość tego typu chemikaliów w krwiobiegu o połowę. Jeszcze jeden powód do oddawania krwi!


A tu i tu koleś rysuje ładne wzorki za pomocą liczb ciągu Fibonacciego.


Potrzebowałem niedawno wykombinować jak w funkcji Python utworzyć zmienną statyczną. Okazało się, że nie ma jakiejś uniwersalnej metody i co kraj to obyczaj, każdy sobie rzepkę, wiadomo. Tutaj można znaleźć dość obszerną listę pomysłów lepszych lub gorszych. Mi osobiście najbardziej podoba się odpowiedź numer 2, wariant drugi, ten z if not hasattr...


Na zakończenie dzisiejszej listy - żarcik. Ktoś włożył mnóstwo wysiłku i pomysłowości w zbudowanie Biblioteki Babel, zawierającej każdą możliwą książkę która kiedykolwiek była, jest lub będzie napisana, w jakimkolwiek języku żywym czy martwym. Pomysł moim zdaniem jeszcze bardziej bezsensowny niż wspomniany wyżej Paint w wersji tekstowej. Ilość zdecydowanie wygrywa tu z jakością 🙂

Żeby nie przesadzić, twórcy Biblioteki Babel ograniczyli się wyłącznie do książek nie dłuższych niż 3200 stron, dzięki czemu biblioteka jest ograniczona do skromnych 104677 książek.

14 komentarzy

  1. @english-vocabulary,

    Zrobiłem 2110 mimo że nigdy w życiu nie odwiedziłem nawet anglojęzycznego kraju (ale od od 20 lat sporo czytam po angielsku). Fajne, ale trochę się robi nudne a jednocześnie przykuwające.

    Tak, trochę mnie striggerowałeś.

      1. Hmm, a tu jest jakiś limit pomyłek czy można w nieskończoność? Stawiam na to drugie, przynajmniej u mnie tak to wygląda. Zrobiłem 1000 i wyłączyłem. Poziom trudności nie rośnie, pytania się powtarzają.

        1. Można do bólu o ile mi wiadomo. Założenie jest takie, że każdy ma jakiś tam poziom znajomości języka, na którym się prędzej czy później “ustatkuje” (z niewielkimi dewiacjami oczywista) niezależnie od tego czy będzie grał przez kwadrans czy kwartał. Inna sprawa, że dzięki grze pomalutku powinien nam się podnosić poziom słownictwa, bo – jak sam piszesz – słówka się powtarzają, więc jest okazja do nauki.

          1. OK, zatem porównywanie wyniku nie bardzo ma sens. Tak naprawdę pokazuje on wypadkową znajomości języka, pamięci do odpowiedzi, zdolności odrzucania niepoprawnych oraz cierpliwości/poświęconego czasu.
            Trzeba by mierzyć coś w stylu średniego wyniku do popełnienia 3 błędów.

  2. CichyFragles wali jakimś błędem. Może to tylko u mnie, ale za to zarówno w Firefox jak i Edge.

    1. Coś chłopu zdechło, główna też w malinach. Spróbuję go namierzyć jakimś bocznym kanałem i dać mu znać, chociaż pewnie już wie – w końcu to jego blog.

    2. Prawo Murphy’ego w działaniu – akurat jak mnie raz na chiński rok ktoś podlinkował, to miałem felerny update na hostingu. Ale już bangla, więc można klikać.

    1. Wstyd przyznać, ale kiedyś (naprawdę dawno, jak Morze Martwe było jeszcze tylko Trochę Chore) w ramach zastępstwa poprowadziłem przez jeden semestr zajęcia z Linuksów, w tym również całkiem sporo materiału o wyrażeniach regularnych. Okazało się, że znajomość komendy `dir *.*` to jednak ciut za mało i w panice musiałem nadganiać zaległości, żeby nie wypaść przed studencką bracią na kompletnego kretyna.

    2. @darjusz:
      Mam tak samo jak Ty!

      Przed wakacjami musiałem oczyścić i zredagować prawie tysiąc plików HTML, więc zanurkowałem głęboko w morze wyrażeń regularnych. Fascynujące narzędzie, jednak irytuje mnie, że nie posiada jednego standardu. W każdym interfejsie trzeba sprawdzać, które znaki są zwyczajne, a które regexpowe; które trzeba poprzedzać lewym ukośnikiem, a które nie.

      Podoba mi się rozwiąznie vimowskie (używam vima z zapałem od niedawna): istnieje perlopodobna opcja “very magic”, która sprawia, że tylko litery, cyfry i podkreślnik zachowują się jak zwyczajne znaki w polach wyszukiwania, zamiany itd. Wszystkie nawiasy itd. działają domyślnie w sposób regexpowy. Łatwo zapamiętać, co jest czym.

      @xpil:
      Wiem, że to anegdota, ale pedantycznie chciałem zauważyć, że *.* to chyba nie regexp, a linuksowy wildcard. Regexpowo byłoby `dir [.*].[.*] (ewentualnie bez nawiasów kwadratowych)… 🙂

      1. Re anegdota, to to jednak nie jest anegdota tylko z życia wzięte. Kiedy prowadziłem te zajęcia, byłem święcie przekonany, że *. * to regexp jest. Taki już jest poziom polskiego szkolnictwa, panie… I potem takie studenty budują mosty i leczą ludzi 🙂

  3. A ja bym chętnie przygarną narzędzie odwrotne do RegEx101. W sensie mam wyrażenie regularne, a to narzędzie generuje mi tekst na jego podstawie.

Leave a Comment

Komentarze mile widziane.

Jeżeli chcesz do komentarza wstawić kod, użyj składni:
[code]
tutaj wstaw swój kod
[/code]

Jeżeli zrobisz literówkę lub zmienisz zdanie, możesz edytować komentarz po jego zatwierdzeniu.