Cześć!
Mam nadzieję, że tydzień mija Ci spokojnie. Na pocieszenie powiem tylko, że dziś już piątek. Wytrwaj jeszcze te kilka godzin w pracy i w międzyczasie zapoznaj się z dzisiejszym wydaniem mojego newslettera :)
W ostatnim wydaniu newslettera pisałem na temat stron 'USES', gdzie programiści dzielą się swoim setupem. Wspomniałem także, że sam posiadam taką stronę i... oczywiście niepoprawnie do niej zalinkowałem. Poprawny link do mojej strony tego typu, który powinien pojawić się tydzień temu, jest tutaj. Przepraszam za pomyłkę.
Drobna prośba:
Ze względu na dużą liczbę linków w każdym z wydań tego newslettera, wielu dostawców poczty (głównie polskie firmy hostingowe) wrzuca newsletter do folderu ze spamem. Kontaktowałem się już z wieloma firmami w tej sprawie, ale niestety niczego nie udało mi się uzyskać. Dobrym pomysłem na rozwiązanie tego problemu jest dodanie adresu newslettera ([email protected]) do swojej książki kontaktowej u dostawcy poczty, z którego korzystasz. Można także skonfigurować sobie filtr, który nigdy nie wrzuca do spamu wiadomości z tego adresu. Niestety, rozwiązywanie problemów z polskimi firmami hostingowymi to walka z wiatrakami. Po miesiącach kontaktów z supportami firm jestem w tym samym miejscu, w którym byłem przed nawiązaniem z nimi kontaktu.
OK, koniec narzekania - zapraszam do lektury!
◢ #unknownews ◣
-
Fotobudka z efektem "bullet time"
https://there.oughta.be/a/bullet-time-video-booth
INFO: Prawdopodobnie kojarzysz efekt bullet time, znany np. z filmu Matrix (np. scena, gdy Neo ucieka przed kulami). Autor wpisu postanowił zbudować 'fotobudkę weselną' realizującą taki właśnie efekt. Pomysłowa konstrukcja. Na początku tekstu masz link do filmu prezentującego działanie budki w praktyce.
-
Jak wyglądał typowy setup komputera developera z lat 90?
https://retrocoding.net/the-90s-developer-starter-pack
INFO: Windows XP, proces 486 i RAM liczony w megabajtach brzmią znajomo? Też na takim sprzęcie zaczynałem przygodę z programowaniem. Odrobina nostalgii dla programistów mocno po 30-stce.
-
Przegląd aktualnych trendów w UI (film, 9 minut)
https://www.youtube.com/watch?v=TBOmUuG-9BY
INFO: Paski postępu, customowe kursory, ogromne teksty nagłówkowe na stronie, obiekty 3D, przekombinowane animacje i wiele, wiele innych. Zobacz, co teraz jest modne (i wkurzające przy okazji z punktu widzenia autorki filmu) w świecie UI.
-
Jak zaimplementować sprytną wyszukiwarkę w PostgreSQL?
https://xata.io/blog/postgres-full-text-search-engine
INFO: Importujesz dane do bazy, a później chcesz efektywnie je wyszukiwać. Jak się do tego zabrać? Czym jest szukanie wektorowe i jak zaimplementować 'fuzzysearch'? O tym w artykule.
-
Klasyczne narzędzia unixowe i ich zastosowanie przy obchodzeniu zabezpieczeń
https://gtfobins.github.io/
INFO: Czy typowe narzędzia takie jak cat, gzip, tail, awk, at itp. mogą stanowić zagrożenie w systemie Linux/Unix? Mogą! Pod warunkiem że system jest niepoprawnie skonfigurowany. Każde narzędzie ma podany przykład, co złego może przytrafić się w jednym z dwóch przypadków: gdy dany tool ma ustawiony bit SUID lub gdy użytkownik ma prawa do wykonania tego narzędzia przez sudo.
-
Jakiego RAID-a wybrać pod NAS-a?
https://www.backblaze.com/blog/nas-raid-levels-explained-choosing-the-right-level-to-protect-your-nas-data/
INFO: Świetne opracowanie tematu RAIDów prosto od Backblaze. Bardzo przystępnie opisana zasada działania każdej z wersji, wraz z plusami i minusami danego rozwiązania.
-
Connectis C_hub - projekty dopasowane do Twoich umiejętności i zainteresowań [sponsorowane]
https://connectis.pl/c-hub
INFO: Dzięki C_hub, oszczędzisz czas na poszukiwaniu projektów, które CIę interesują. Dzięki temu rozwiązaniu to projekty znajdą Ciebie. Zarejestruj się w serwisie i sprawdź, jak to działa. Warto także dołączyć do społeczności na Discordzie związanej z projektem.
-
Dlaczego Polska była pod wodą w Windows XP i Windows 2000?
https://devblogs.microsoft.com/oldnewthing/20061027-00/?p=29213
INFO: Za czasów WIndowsa 95 wszystko działało poprawnie, jednak przy wprowadzeniu na rynek Windowsa XP/2000, nagle zamiast Polski pojawiło się... polskie morze, a konkretniej mówiąc niebieska plama wody w miejscu, w którym powinien być nasz kraj. Skąd wzięło się 'Polish Sea'? Ciekawy (choć już dość stary) opis przyczyny tego buga.
-
Wideo kurs "NGINX w godzinę" - wersja 2.0 [autopromocja]
https://nginx.mikr.us/
INFO: Nowa odsłona mojego kursu NGINXa, rozbudowana o 4 nowe lekcje związane z loadbalancingiem, cachowaniem, basic auth i mapami w konfiguracji. Kurs jest dostępny w stałej sprzedaży, ale tylko do soboty obowiązuje jeszcze cena z wersji 1.0. Jeśli kupiłeś pierwszą wersję, to na Twoim koncie jest już dostępna aktualizacja do wersji 2.0.
-
Niedostrzegalne elementy przy projektowaniu interakcji - czego nie widzi user? (UI/UX)
https://rauno.me/craft/interaction-design
INFO: Wszyscy znamy linki, przyciski, paski przewijania, ale to tylko wierzchołek góry lodowej w kategorii interakcji z użytkownikiem. Istnieją jeszcze metody interakcji z interfejsem, które są tak naturalne, że praktycznie ich nie zauważamy, ale ktoś jednak musiał je zaimplementować. Ten artykuł świetnie pokazuje, jak taki 'interaction design' może wyglądać.
-
Wyjaśnienie HTMX in 100 seconds
https://www.youtube.com/watch?v=r-GSGH2RxJs
INFO: Jest szansa, że słyszałeś o bibliotece HTMX, która pozwala na szybkie zaprogramowanie frontendu bez konieczności pisania kodu JS, tworząc interakcje (łącznie z obsługą Ajaxa, WebSocketów itp.) w samym HTML. Pod spodem oczywiście działa JS, ale magia polega na tym, że programista pisze jedynie kod HTML. Ten film wyjaśnia, na czym polega użycie tej biblioteki.
-
Omówienie najpopularniejszych architektur API (film, 5 minut)
https://www.youtube.com/watch?v=4vLxWqE94l4
INFO: SOAP, RESTful, GraphQL, gRPC i kilka innych. Czym się od siebie różnią i jak działają? Bardzo zwięzła prezentacja dająca ogólny pogląd na daną technologię.
-
Jak bezpieczne będzie współczesne szyfrowanie w 2030 roku?
https://articles.59.ca/doku.php?id=em:20482030
INFO: Przez lata twierdzono, że 2048-bitowe klucze RSA są wystarczająco bezpieczne. Obecnie jednak sugeruje się używanie kluczy o minimalnej mocy 3072 bitów, ponieważ te poprzednio rekomendowane będą teoretycznie łatwo łamliwe do 2030 roku. Skąd takie przypuszczenie i co to dla nas oznacza? Tego dowiesz się z artykułu.
-
Raport "State of API 2023" od Postmana
https://www.postman.com/state-of-api/
INFO: Duże badanie przeprowadzone na ponad 37 tysiącach programistów na temat tego, jak korzystają z API. Jakie technologie wykorzystują i jak wygląda ich praca. Nawigacja po raporcie jest bardzo niewygodna. Kliknij "Read the Report" na końcu tekstu, aby zobaczyć spis treści.
-
Jak zrozumieć Apache Kafka za pomocą... gry Factorio
https://ruurtjan.medium.com/understanding-kafka-with-factorio-74e8fc9bf181
INFO: Autor tłumaczy niektóre z koncepcji znanych z Kafki na przykładzie mechanizmów działających w grze Factorio (to gra poniekąd związana z programowaniem/automatyzacją - warto rzucić okiem).
-
Używać DOMContentLoaded do śledzenia wydajności frontendu?
https://csswizardry.com/2023/07/in-defence-of-domcontentloaded/
INFO: Wielu frontendowców mierzy szybkość ładowania aplikacji poprzez wspomniany event. Z jednej strony jest to jakaś sensowna, policzalna metryka. Z drugiej jednak (co zobaczysz na pierwszym animowanym przykładzie na podlinkowanej stronie), nie zawsze przekłada się to na realny user experience. Co więc mierzyć i jak mierzyć, aby było dobrze?
-
Jak mały może być skompilowany program w .NET?
https://blog.washi.dev/posts/tinysharp/
INFO: Autor podjął wyzwanie stworzenia najmniejszego możliwego pliku wykonywalnego, wypisującego zdanie "Hello World" w technologii .NET. Artykuł omawia krok po kroku zastosowane optymalizacje. Interesujące.
-
Czy da się zdobyć imię użytkownika Maca za pomocą mDNS?
https://fingerprint.com/blog/apple-macos-mdns-brute-force/
INFO: Ciekawy eksperyment pokazujący, że w pewnych warunkach możliwe jest sprawdzenie, jak ma na imię użytkownik odwiedzający stronę. Zgadywanie imienia odbywa się metodą siłową z użyciem mDNS i działa jedynie wtedy, gdy w nazwie Twojego komputera występuje Twoje imię (co jest domyślnym ustawieniem na MacOS / iOS).
-
Server Side CSS? - tak, to możliwe ;)
https://dev.to/thormeier/dont-try-this-at-home-css-as-the-backend-what-3oih?s=35
INFO: Nie wnikajmy, w jakim celu autor używa CSS-a do generowania zawartości stron, wykonywania obliczeń matematycznych i ustawiania routingu w aplikacji webowej. Używanie CSS-a jako backendu, jest to oczywiście 'sztuka dla sztuki', ale jakby nie patrzeć, czegoś z tego podejścia można się nauczyć. Przyjemna lektura.
-
Opus Clip - automat AI do tworzenia Rolek/Shortów
https://www.opus.pro/
INFO: Nagrywasz filmy na YouTube i chcesz przerobić je możliwie szybko i łatwo na zajawki wrzucane do sieci społecznościowych? Ten automat zrobi to za Ciebie. Sam wybierze interesujące fragmenty, sam je wytnie, wyrenderuje i z jednego filmu przygotuje Ci nawet 10 materiałów wideo. Mają w ofercie plan darmowy.
-
Generator zestawu ćwiczeń fizycznych
https://workout.lol/
INFO: Wybierz, jakie akcesoria posiadasz w domu (a może nie masz niczego?), następnie zaznacz, które mięśnie chcesz ćwiczyć i przystąp do ćwiczeń. Każdy element workoutu posiada instrukcję wykonywania ćwiczenia w formie wideo.
-
IMMICH - alternatywa selfhosted dla Google Photos
https://immich.app/
INFO: Nie chcesz trzymać swoich zdjęć i filmów w chmurze Google, a jednocześnie dysponujesz własnym serwerem (może być VPS)? To rozwiązanie jest dla Ciebie. Automatycznie backupuje media z telefonu i wrzuca je na samohostowalną platformę.
-
Parsujesz adresy URL dostarczone przez użytkownika?
https://azeemba.com/posts/what-is-a-url.html?ref=refind
INFO: Parsowanie URLi nie jest takie proste, jak mogłoby się wydawać i zaawansowany użytkownik (agresor chcący zaatakować aplikację) może wykorzystać to na swoją korzyść. Warto rzucić okiem na artykuł i przy okazji zapoznać się z nagraniem prelekcji z początku tekstu.
-
Clickvote - otwartoźródłowy mechanizm do implementacji ocen w aplikacji webowej
https://dev.to/github20k/clickvote-open-source-upvotes-likes-and-reviews-to-any-context-3ef9
INFO: Chcesz podpiąć 'gwiazdki' z ocenami do dowolnej fotki, formularza, czy produktu na stronie? Jeden mały fragment kodu i gotowe. Sekretem jednak jest to, co siedzi pod spodem. Linkuję do artykułu opisującego budowę Clickvote, a nie do samego repo.
-
Rejestratorzy domen polecani przez developerów
https://blog.pragmaticengineer.com/domain-registrars-which-developers-recommend/
INFO: Wyniki mini ankiety (250+ uczestników) na temat polecanych rejestratorów domen. Kogo lubią i za co? Co sprawia, że używają tego, a nie innego dostawcy domen?
-
DriverJS - biblioteka do tworzenia przewodników po aplikacji
https://driverjs.com/
INFO: Kojarzysz typowy onboarding stosowany często w aplikacjach typu SaaS, gdzie podświetlane są różne funkcje w panelu użytkownika i tooltipy informują jak korzystać z tej konkretnej appki? To Driver potrafi przygotować taki właśnie tour po aplikacji. Kliknij czarny przycisk z demo, a zobaczysz, o co dokładnie chodzi.
-
AppTotal - informacje na temat aplikacji SaaS korzystających z OAuth
https://apptotal.io/
INFO: Logujesz się do aplikacji przez OAuth, ale czy zastanawiałeś się kiedyś, kto jest jej autorem? Dokąd wysyłane są Twoje dane i czy wymagane uprawnienia są naprawdę potrzebne tej aplikacji? AppTotal potrafi prześwietlić aplikację np. na podstawie Googlowego Client ID, czy też po jej nazwie.
-
Wygeneruj pełną aplikację React/Node.js przy pomocy ChatGPT
https://magic-app-generator.wasp-lang.dev/
INFO: Opisz własnymi słowami, jaką aplikację chcesz stworzyć (im dokładniejszy opis, tym lepsze efekty), a sztuczna inteligencja wygeneruje dla Ciebie gotowy i działający kod napisany z użyciem React, Node.js, Prismy i Waspa.
-
Generator scrollowanych screenshotów
https://damngood.tools/tools/scrolling-screenshots
INFO: Podajesz adres strony, wybierasz urządzenie i format wyjściowy, a w odpowiedzi otrzymujesz plik z filmem pokazującym scrollowanie po Twojej stronie. Może to być atrakcyjny sposób pokazania np. miniatury layoutu, czy filmów z kursu online.
-
Jak sprytnie wykonać comboboxy w aplikacji webowej?
https://adrianroselli.com/2023/06/under-engineered-comboboxen.html
INFO: Zacznijmy od tego, czym są tajemnicze 'comboboxy'. To skrzyżowanie inputa z selectem. Możesz tam wpisać własną wartość albo wybrać coś z predefiniowanych wartości. Przy wpisywaniu działa jeszcze autouzupełnianie. Jak taki efekt osiągnąć?
-
Praca z wirtualnymi maszynami na Macu
https://jvns.ca/blog/2023/07/10/lima--a-nice-way-to-run-linux-vms-on-mac/
INFO: Użytkownicy Maców od lat używali Virtualboxa, aż tu nagle pojawiła się rodzina procesorów ARM i Virtualbox musiał pójść w odstawkę (obsługuje on tylko x86). Jak najwygodniej rozpocząć pracę z VM na procesorach M1/M2? Autorka sugeruje dwie aplikację: Limę oraz OrbStack. Ja bym dorzucił jeszcze UTM-a.
-
Napisz własny generator "tierlist" w Pythonie
https://www.freecodecamp.org/news/python-tier-list-maker/
INFO: Tierlisty, to coś na wzór rankingów. Czasami prezentuje się w ten sposób najlepsze książki, ulubione seriale, aktorów itp. Gdy zobaczysz przykład w artykule, to jest szansa, że zrozumiesz, o co chodzi. Autor wyjaśnia tutaj, jak stworzyć generator takich zestawień, którego efektem pracy jest plik graficzny ze wspomnianą tierlistą.
LINKI TYLKO DLA PATRONÓW
-
Jak bezpiecznie tworzyć aplikacje wykorzystujące AI
https://uw7.org/un_480123b42cd94
INFO: Mowa tutaj nie o generowaniu kodu aplikacji, a o integrowaniu swojej aplikacji z AI. Taka integracja niesie ze sobą spore ryzyko w związku z niebezpieczeństwem wycieku danych, ataków prompt injection itp. Jak temu zaradzić?
Zobacz poprzednie wydania newslettera:
Lubisz czytać mój Newsletter? Podziel się nim proszę ze znajomymi ⬇️
Wersja webowa aktualnego wydania
Do zobaczenia za tydzień 👋
Jeśli nie chcesz więcej otrzymywać ode mnie wiadomości, zawsze możesz się wypisać.
|