Zestawienie linków/materiałów na dzień 2 Czerwca 2020
Staram się publikować ciekawe zestawienia o programach, projektach, inicjatywach z szerokopojętej działki DevOps, w tym programowanie w Go, Python, szerokopojęta tematyka Security, ale także takie języki jak Haskell czy Rust. Nie omijam również tematów związanych np. z produktywnością, także jeśli Cie to ciekawi, to zapraszam do kolejnej lektury.
Jeśli interesują Cię takie materiały i chcesz ich otrzymywać więcej - zapisz się do mojej listy mailingowej.
Materiały te są równiez częściowo publikowane w moim tagu #devopsiarz w serwisie wykop.pl
Artykuły
Nagrałem nowy film na YT, w którym pokazuję jakiego środowiska na Linux, na hoście, używam do pracy, dla niecierpliwych są dostępne timestampy
- https://www.reddit.com/r/linux/comments/gol5qc/rsync_over_ssh_much_much_faster_with_delete/ - #linux
Dyskusja na reddicie z powodu tego, że rsync po ssh, z opcją --delete
działa znacznie szybciej - z dyskusji dowiesz się dlaczego.
- https://cheats.rs/ - #rustlang
Rewelacyjna podręczna ściągawka do Rusta z przykładami
Przykład, w jaki sposób można strukturyzować kod w Go jeśli piszesz np. web server
Myślę, że dla zaawansowanych w języku Go to żadna nowość, ale zamieszczam abecadło, czyli jak w Go mapujemy JSONy na structy.
A jeśli jesteśmy przy JSONach i Go, to tutaj kilka tricków na podniesienie wydajności procesowania JSONów w Go wraz z benchmarkami.
To teraz drobny projekt w Rust - tworzymy sprawdzacz linków, dużo kodu i opisów.
- https://www.notebookcheck.net/AMD-Ryzen-9-3950X-The-flagship-for-the-AM4-socket-in-review.465690.0.html - #amd #hardware
Notebookcheck wziął na testy flagowy procesor AMD dla “zwykłych śmiertelników”, mowa oczywiście o tym z 16 rdzeniami i 32 wątkami.
- https://www.youtube.com/watch?v=O9XdJkQO2FI - #apple #dell
Just Josh testuje nowego Macbook Pro 13 i porównuje go z innymi podobnymi sprzętami.
Ciekawe pytanie na stackoverflow: dlaczego Rust posiada struct
i enum
: czym się różnią i kiedy jakiego typu używać.
- https://annoying.technology/ - #heheszki
Rewelacyjna strona, która pokazuje bugi lub niedorzeczności w niektórych aplikacjach, najczęściej w ich interfejsach.
Wiadomości błędów w Haskellu - sposób na ich poprawę. Artykuł idzie po kolei, nie obawiaj się zatem, że otworzysz i dostaniesz obrzydłą monadą na twarz od razu. :)
Zaczynasz coś pisać w Pythonie w 2020 roku i jak się to teraz trendy robi, aby było dobrze. Słowem: jak zacząć dobrze projekt w Pythonie.
- https://www.youtube.com/watch?v=f-9jh3NEFhU - #laptopy
Pewien techniczny videbloger przetestował, jaka będzie różnica wydajności między praktycznie tymi samymi laptopami, ale z drobną różnicą w jednym podzespole, gdzie jeden ma limit mocy na 80W a drugi na 90W.
Trochę kanciasta prezka o tym dlaczego Linux sucks i jak to naprawić. Jeśli od razu myślisz, że to bezmyślny rant, oglądnij wpierw “prezentacje”.
- https://www.youtube.com/watch?v=itVi0ksU_jw - #laptopy #microsoft
Lisa z MobileTechReview testuje Microsoft Surface Book 3 - taki laptop z odpinanym ekranem i ciekawym zawiasem, którego cena na wystawach przyćmiewa nawet produkty od Apple
W projekcie Chromium doszli do wniosku, że około 70% błędów bezpieczeństwa jest spowodowanych niebezpiecznym obchodzeniem się z pamięcią w językach C/C++/
- https://alpacaaa.net/type-safety/ - #haskell
Autor tego artykułu stara się przedstawić kompromisy w świecie Type Safety, czyli w Haskellu.
- https://vez.mrsk.me/linux-hardening.html - #linux #security
Trochę o poprawianiu spraw bezpieczeństwa w dystrybucjach Linuksa. Wsród porad wybór odpowiedniego jądra, parametrów jądra, patcha bezpieczeństwa, itp.
Bierzemy się za mockowanie czasu do testów Go - czyli w jaki sposób można podejść do sprawy jak chcemy mieć stały czas w testach (i nie tylko).
- https://github.com/yolossn/Prometheus-Basics - #golang #monitoring
Świetne wprowadzenie do tematu monitoringu, metryk i prometheusa
- https://thorsten-hans.com/5-types-of-zsh-aliases - #bash #zsh #linux
5 typów aliasów do ZSH, które powinno się znać.
- https://www.reddit.com/r/devops/comments/goeaw8/does_this_make_sense_to_be_asked_in_a_devops/ - #devops
Jeden z użytkowników reddita był na interview na stanowisko około DevOpsowe no i oblał na pytaniu pt. jak projektować API. Wątek z pytaniem czy takie pytania mają sens.
Mała zmiana w kodzie Rusta daje duży przyrost wydajności - zobacz jaka! (low quality bait)
- https://github.blog/2020-05-20-three-bugs-in-the-go-mysql-driver/ - #mysql #bazydanych #devops
Poza tym, że GitHub aktywnie przepisuje monolit w Rails do Go, tutaj akurat opisują jak w trakcie tego procesu odkryli 3 bugi w MySQLu. Techniczny blogpost najwyższych lotów.
- https://pointieststick.com/2020/05/23/this-week-in-kde-we-have-migrated-to-gitlab/ - #kde #linux #git
Projekt KDE wreszcie przeniósł codebase na coś normalnego, bo na GitLaba. Przy czym, pod pojęciem “coś normalnego” mam na myśli serwisy typu GitLab/Github/Bitbucket właśnie.
Co wiesz o argumentach keyword-only
w Pythonie? Jeśli nic, zajrzysz do tego
linka.
Zapobieganie SQL Injection z punktu widzenia autora Django, zobacz repetytorium z tego problemu i sposoby zaradcze.
- https://stackoverflow.com/questions/61842649/renaming-months-from-number-to-name-in-pandas - #python
Ciekawy case we frameworku Pandas - zamiast numerów miesięcy chcemy nazwy. Zanim zaglądniesz do artykułu pogłówkuj samodzielnie.
- https://nullprogram.com/blog/2020/05/24/ - #python
Podejście do opóźnień w asynchronicznym kodzie w Pythonie. Artykuł dla zaawansowanych, którzy zmagają się z asynchronicznym programowaniem.
…dla subskrybentów newslettera jest dostępne jeszcze 10 materiałów…
Libeczki/kody
- https://github.com/codenotary/immudb - #golang
Mała i szybka niezmienna (immutable) baza danych napisana w Go, zobacz przykłady, coś dla fanów języków funkcyjnych.
Oficjalny klient Go do Elasticsearch
- https://gitlab.com/tymonx/docker-go - #golang
Image dockera z odpowiednimi toolami do pracy nad projektami w Go
- https://github.com/zladovan/gorched - #golang
Scorched Earth w Go, w terminalu.
- http://www.fabfile.org/ - #python
Wykonaj komendę zdalnie po SSH, w odpowiedzi dostaniesz obiekt w Pythonie - prościej się chyba nie da tego opisać.
- https://github.com/faif/python-patterns - #python
Kolekcja wzorców projektowych w Python, przydatne do architektury lub rozmowy o pracę.
- https://github.com/conda/conda/ - #python
W jednym z linków na górze podałem przepis na nowoczesne rozpoczynanie projektu w języku Python, tutaj jeszcze jedna rzecz, która w tym pomaga - zobacz repo po więcej informacji.
…dla subskrybentów newslettera są dostępne jeszcze 3 materiały…