Zestawienie linków/materiałów na dzień 18 Maja 2020
Przedstawiam kolejne zestawienie.
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
Zobacz jak co zmieniało się w poszczególnych wersjach języka Rust od 2015 czyli od wersji 1.0 Należy pamiętać, że w 2018 nastąpiła znacząca zmiana, która czasem powoduje, że niektóre tutoriale lub dokumentacje traktują sprawy “przed” i “po” 2018
- https://www.youtube.com/watch?v=D__UaR5MQao - #programowanie #security
Autor filmu pokazuje prosty algorytm, który mogły by zaimplementować aplikacje śledzące kontakty osób zakażonych po Bluetooth, który to algorytm jednocześnie jest przyjazny dla prywatności. Nie istnieją w nim dane umożliwiające identyfikacje zarówno sprzętu jak i posiadacza.
Notebookcheck testuje najnowszego iPada Pro 12.9 z tego roku. Mimo, że to odgrzewany kotlet, to po dziś dzień nie ma sobie równych (na rynku tabletów).
- https://saagarjha.com/blog/2020/05/10/why-we-at-famous-company-switched-to-hyped-technology/ - #programowanie #heheszki
Utrzymany w prześmiewczym tonie, post-template, który pokazuje jak dzisiejsze firmy opisują swoje stacki. W takich blogpostach, takie opisy są częst kończone ofertą o pracę. Najwidoczniej to działa, więc jeśli Twoja firma używa czegoś cutting-edge to bez problemu się w tym szablonie odnajdziesz.
Ważna rzecz dla braci DevOpsowej - być może Kafka przestanie być takim wrzodem na dupie jak chodzi o deployment - w planie jest bowiem pozbycie się zależności od Apache Zookeeper.
- https://blog.yossarian.net/2020/01/23/Anybody-can-write-good-bash-with-a-little-effort - #bash #linux
Artykuł o tym, o czym ja pisałem i nagrywałem - można pisać porządne skrypty bash z minimalnym wysiłkiem - to kolejny artykuł na ten temat.
Jak coś o Haskelu u DevOpsiarza to standardowo nie zapominam o kolejnym artykule z cyklu “Czym są Monady”. :-)
- https://robertovitillo.com/what-every-developer-should-know-about-tcp/ - #network #programowanie #tcp
Co każdy developer powinien widzieć o TCP - obowiązkowe dla tych, którzy mają poważne luki w swoim aparacie wiedzy
- https://www.youtube.com/watch?v=navpQnqhwvg - #apple #dell
Dell wypuścił groźnego rywala dla serii MacBook Pro - XPS 15 i 17”, zobacz te sprzęty na filmie.
Artykuł poruszający problem przeładowania kierunków technicznych w Indiach - czyli wyjaśniający dlaczego kraj wypuszczający tak dużo programistów, jednocześnie wypuszcza niewykwalifikowanych, czyli takich, co tak naprawdę nie potrafią programować.
Dlaczego system typów ma w ogóle znaczenie - dyskusja, z przykładami, na reddicie Rusta. A w samej dyskusji oczywiście porównania do innych języków.
Zobacz pisanie parsera JSON od podstaw w Haskellu - wiadomo, że można użyć gotowych bibliotek, ale też warto zobaczyć jak się coś takiego pisze od podstaw.
Jak refaktorować zmurszały kod w Pythonie - z przykładami oczywiście.
- https://threedots.tech/post/serverless-cloud-run-firebase-modern-go-application/ - #golang #javascript
Autor pokazuje pisanie od podstaw aplikacji typu serverless w Go (backend) i we frameworku Vue. Czyli aplikacja, bez martwienia się o kwestie serwerowe, z użyciem kilku usług w chmurze.
Niejednokrotnie adepci programowania mogli się spotkać ze stwierdzeniem, że używanie instrukcji
goto
, dostępnych w niektórych językach (m.in. w Go) to błąd. Czy na pewno? Zobaczmy co na stackoverflow o tym myślą.
Jednym z poprzednich linków było o typach, teraz pytanie również ze stackoverflow - co powoduje, że Haskell ma tak świetny system typów i co to oznacza?
- https://www.reddit.com/r/devops/comments/gh3pl6/what_are_your_thoughts_on_github_actions/ - #devops #github
Co myślisz o GitHub Actions - dyskusja na r/devops
- https://medium.com/@ihernandezjr/the-ckad-exam-question-you-havent-seen-b434ba160093 - #kubernetes #devops
Odpowiedź na jedno tricki pytanie z certyfikacji CKAD, ważne też dla tych, co chcą po prostu rozumieć Kubernetes.
- https://boxunix.com/2020/05/15/a-better-way-of-organizing-your-kubernetes-manifest-files/ - #kubernetes #devops
Trochę o lepszej organizacji stosów yamli do Kubernetesa. Zobacz artykuł, jeśli u Ciebie w projekcie jest z tym problem i szukasz inspiracji.
- https://www.reddit.com/r/git/comments/gkmk2b/do_you_use_git_as_a_notes_repository_if_so_how_do/ - #git
Repozytorium gita jako notes? Zobacz ciekawą dyskusję na reddicie.
- https://www.notebookcheck.net/Dell-XPS-13-9300-4K-UHD-Laptop-Review-16-10-is-the-New-16-9.464337.0.html#toc-verdict - #hardware #dell
Notebookcheck testuje nowego Della XPS 13 z ekranem 4K i proporcjami 16:10 - zobacz jak wypadła kombinacja takich zalet w takim laptopie.
- https://www.youtube.com/watch?v=rAl-9HwD858 - #rustlang
Adnotacje czasu życia zmiennej (lifetime annotations) w Ruście - nagranie streama programisty, który na przykładzie prostego kodu (coś ala funkcja split z PHP) tłumaczy zagadnienie. Nagranie trwa półtorej godziny, ale warto.
- https://cloud.google.com/blog/topics/inside-google-cloud/google-cloud-support-engineer-solves-a-tough-dns-case - #devops #dns #google #linux
Ciekawy blogpost od Google Cloud, który opisuje pewne “śledztwo” na podstawie brakującego pakietu DNS. Zobacz co trzeba zrobić, aby dojść do rozwiązania nietrywialnego problemu.
Artykuł o schedulerze w Go, jak działa asynchroniczne wywłaszczanie i co to oznacza dla Twojego kodu. Artykuł dla zaawansowanych.
Znowu Haskell, tym razem parsujemy opcje podane w command line.
- https://www.reddit.com/r/Python/comments/gk8jnj/friday_python_puzzler_whats_the_difference/ - #python
Ciekawa zagwozdka ze świata Pythona - jaka jest różnica pomiędzy funkcją one()
i two()
- https://sergey-melnychuk.github.io/2020/04/27/multi-threaded-http-websocket-server-in-rust/ - #rustlang
Piszemy prosty serwer HTTP/WebSocket w Rust, przykład z kodem.
…dla subskrybentów newslettera są dostępne dodatkowe 3 materiały
Libeczki/kody
- https://github.com/lk-geimfari/mimesis - #python
Liba do generowania sporej ilości danych (fałszywych), które pomagają w developmencie. Zobacz na przykłady użycia w repozytorium.
- https://deno.land/ - #rustlang #javascript #node
Było głośno o pojawieniu się tego projektu, dlatego tylko powtarzam: to nowy runtime dla JavaScript i TypeScript, mający w założeniu być poprawioną wersją Node. Oczywiście napisany w Rust.
- https://www.zabbix.com/whats_new_5_0 - #zabbix #golang
Wyszedł Zabbix 5.0 LTS, teraz zabbix-agent jest napisany w Go więc koniec instalowania 40 innych libów wraz z samym agentem.
- https://github.com/travisjeffery/jocko - #kafka #golang
Przy okazji tematu Kafki - tutaj “Kafka” napisana w Go, czyli pojedyncza binarka i żadnych ZooKeeperów nie potrzebujemy.
- https://gitlab.com/tymonx/gitlab-ci - #golang
Użyteczne templatki Yamlowe dla Go do GitLabowego CI - zobacz repozytorium, aby zrozumieć po co i jak tego używać
- https://github.com/matheuslessarodrigues/verco - #rustlang
CLI klient gita ze skrótami klawiszowymi, napisany w Ruście.
Lib do Pythona do przetwarzania video, dzięki niemu można łatwo uzyskać takie efekty jak stabilizacja obrazu, snapshoty itp. Zobacz do repozytorium po dokumentacje i przykłady.
…dla subskrybentów newslettera są dostępne dodatkowe 3 materiały