Zestawienie linków/materiałów na dzień 14 Kwietnia 2020
Czas na 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
Materiał tego zestawienia
https://www.reddit.com/r/linux/comments/fzrjxd/what_are_some_of_the_most_epic_moments_in_linux/ - #linux
Jakie są najważniejsze momenty w historii Linuksa - dyskusja na reddicie. Zobacz, co inni użytkownicy uważają za ważne momenty. Przy okazji porównaj, jak długo już interesujesz się tą tematyką.
Artykuły
Dlaczego all
zwraca True
jeśli iterable jest pusty - ciekawe pytanie z reddita odnośnie
pewnej sytuacji w Pythonie
- https://ttt.io/anatomy-of-my-kubernetes-cluster - #kubernetes #devops
W tym wpisie autor pokazuje jaki sobie klaster Kubernetes zbudował na Raspberry Pi. W artykule znajdziesz zdjęcia oraz spis zastosowanych elementów i linkami do sklepów. A to wszystko zamknięte w obudowie przypominającej standardowy komputer
- http://calpaterson.com/activerecord.html - #python #bazydanych #mysql #api
Artykuł o tym jak niewłaściwy dostęp do danych może się zemścić, na przykładzie baz danych i API, na tapetę wzięto oczywiście nic innego jak ORMy (jeśli chodzi o kwestie w bazach danych). Autor zaleca brać na poważnie sposoby dostępu do danych, by nas później to nie załatwiło.
- https://www.notebookcheck.net/Apple-iPad-Pro-11-2020-Tablet-Review-This-is-what-an-update-should-look-like.461030.0.html - #apple #ipad
Notebookcheck testuje nowego iPada Pro. 90% oczywiście, na uwagę zasługuje długi czas pracy na baterii i dobre audio (głośniki i mikrofon)
- https://www.youtube.com/watch?v=oId_BqnSraI - #apple #ipad
Odnośnie tego mikrofonu w iPadzie, tutaj jeden youtuber-muzyk challenguje go w niecodziennym teście. Jeśli nie chce Ci się oglądać, powiem tylko, że mikorofon w iPadzie dobrze wypadł w tym teście.
- https://www.youtube.com/watch?v=m73OKA-MROc - #laptop #macbook #dell
Zatrzymajmy się jeszcze na chwilę przy sprzęcie - o to krótkie porównanie “małych” tytanów, czyli Dell XPS 13 i nowego MacBooka Air od Apple. Nagranie ma tylko 7:40, więc na kawę starczy :-)
- https://www.notebookcheck.net/Apple-MacBook-Air-2020-Core-i5-Review-The-best-MacBook-you-can-get-No.460229.0.html - #apple #macbook
Wydawać by się mogło, że po peanach pochwalnych technicznych youtuberów nt. nowego MacBooka Air, notebookcheck zrobi to samo. Błąd. Najpoważniejszy serwis testujący, a przynajmniej jeden z jego recenzentów, jest raczej zawiedziony tym sprzętem, po prostu zmian niewiele, problemy wciąż są. Mimo to ocena 88% :-)
- https://www.percona.com/blog/2019/10/11/how-to-set-up-streaming-replication-in-postgresql-12/ - #bazydanych #percona #postgresql #devops
Wartościowy artykuł z bloga percony, tak tej percony od MariaDB/MySQLa, o replikacji strumieniowej w PostgreSQL 12. Z artykułu dowiesz się jak to zmusić do działania krok po kroku.
- https://remy.io/blog/how-to-use-diago-to-diagnose-cpu-and-memory-usage-in-go-programs/ - #golang #programowanie
Kolejny artykuł z cyklu o profilowaniu aplikacji w Go, oczywiście pprof, jednak tym razem wspomaga libka, o której wspomniałem w sekcji libki, służąca do wizualizacji danych. Zobacz przykładową wizualizację
- https://coiled.io/blog/stages-of-openness.html - #opensource
Artykuł opisujący cykl życia, czyli 7 etapów wielu projektów open source. Jak zrobić ze swoim oprogramowaniem opensource, by przeżyło, bez Twojego wkładu. :)
Artykuł o pisaniu aplikacji o koncept ReactiveX (jest dostępne TL;DR na początku). Co to za koncept i jak go używać oczywiście. Sam koncept jest oczywiście uniwersalny i dla wielu języków programowania są dostępne libki, ale tutaj przedstawiam RxGo do Go oczywiście.
- https://pingcap.com/blog/quickly-find-rust-program-bottlenecks-online-using-a-go-tool/ - #rustlang #golang
Szybkie znajdowanie bottlenecków w Ruście za pomocą programu w… Go. Artykuł zwłaszcza dla tych, którzy lubią spierać się, które języki są lepsze, a które gorsze, zamiast odpowiednio do nich podejść. :-)
- https://www.theregister.co.uk/2020/03/09/monzo_microservices/ - #devops #kubernetes #golang
Skrótowo opisane podejście pewnej firmy jak ogarnia 1600 mikroserwisów.
- https://mohitkhare.me/blog/transaction-on-postgres-golang/ - #golang #postgresql
A to artykuł dla tych, którzy jeszcze nie ogarniali transakcji w PostgreSQL, programując aplikacje w Go.
Do końca kwietnia jeszcze daleko i jest to ważna informacja, bo otóż RedHat udostępnił za free kilka swoich drogich kursów z powodu wiadomej sytuacji.
- https://ma.ttias.be/how-run-http-3-with-caddy-2/ - #caddy #nginx
Wy dalej bawicie się nginx czy apache? Bo wiecie, Caddy już testowo potrafi HTTP/3 się bawić, w tym artykule przykład.
- https://caddyserver.com/ - #caddy #golang
A skoro my przy Caddy, to zbliża się wersja 2.0 - 27k gwiazdek na githubie i konfiguracja przez RestAPI powinna zastanowić tych, czy warto sprawdzić ten projekt. Przypominam, że caddy to taki web serwer, w którym trzeba się ostro nagimnastykować w konfiguracji, aby… wyłączyć https. :-)
- https://slack.engineering/deploys-at-slack-cd0d28c61701 - #slack #devops
Jak to ten cały DevOps wygląda w Slacku, tak, to ta firma, co firmuje ten biznesowy marnowacz czasu.
- https://www.reddit.com/r/devops/comments/g01f6d/should_a_developer_be_familiar_with_sre_practices/ - #devops
Ciekawe pytanie na reddicie - czy developer powinien byc zaznajomiony z praktykami SRE/DevOps. Zobacz dyskusję w temacie.
- https://www.reddit.com/r/devops/comments/fzcdcb/any_free_certification_in_devops_to_utilise_the/ - #devops
Jeśli poszukujesz ciekawej certyfikacji DevOpsowej, do której można się przygotowywać w trakcie kwarantanny, to wiedz, że ktoś na reddicie zadał już takie pytanie.
Jaki język programowania dla DevOpsa - również z wątku na reddicie.
- https://codetalk.io/posts/2020-04-05-common-json-patterns-in-haskell-rust-and-javascript.html#update-a-nested-field - #haskell #rustlang #typescript #json
Porównanie różnych operacji, typu pobranie danych z konkretnego pola, zapisanie danych w konkretnym polu (itp), na formacie danych JSON w Haskellu, Ruście i TypeScripcie.
- https://www.reddit.com/r/haskell/comments/fyyia7/which_major_code_bases_should_i_study_to_better/ - #haskell
Advanced beginner pyta, który codebase powinien obadać, aby być lepiej przygotowany do pracy jako Haskell developer
- https://www.reddit.com/r/docker/comments/fy015c/init_systems_in_linux_containers/ - #docker #devops #linux
Jak to z tym initem w linuksowych kontenerach jest, w wątku znajdziesz propozycje podejść do tego tematu
- https://lukeplant.me.uk/blog/posts/why-im-leaving-elm/ - #elm #programowanie
Jak wiemy, obecnie powstaje sporo języków, o części z nich wkrótce zapomnimy, a część się w jakiś sposób “przebije” do świadomości. No i mamy taki język jak Elm, który jest językiem funkcyjnym, z brakiem runtime i statycznym sprawdzaniem typów (tak twierdzą autorzy). O tym, jak wygląda zakulisowo rozwój/uczestwo w takim projekcie, pisze jeden z developerów właśnie i ten wpis zdecydowanie nie robi temu językowi dobrego PRu.
Artykuł jest bardzo długi, ale myślę, że warto go przeczytać, aby wiedzieć, dlaczego niektóre języki osiągają sukces i jakim kosztem (pomijając wsparcie dużych firm), a inne nie.
…dla subskrybentów newslettera dostępne jest dodatkowe 5 materiałów
Libeczki/projekty
- https://github.com/karlicoss/HPI - #python
Biblioteka, która pozwoli Ci zapanować nad Twoimi danymi, czyli komentarzami i postami w socialach, ebookami, zdjęciami, todosami, etc. Zobacz repozytorium, aby zrozumieć jak autor i po co tego używa.
- https://github.com/posthog/posthog - #javascript #python
Narzędzie do szerokorozumianego trackingu na podstawie eventów - zapinasz za pomoc bibliotek do swoich apek i możesz dostawać raporty. W sumie nic nowego, ale zawsze to coś dodatkowego, co może być prościej odpalić niż “znane” rozwiązania
- https://github.com/remeh/diago - #golang
Jak używasz pprof w Go często, to właśnie tool dla Ciebie - ładnie wizualizuje te wszystkie liczby, dzięki czemu profilowanie staje się przyjemniejsze!
- https://github.com/dtgorski/typex - #golang
Ten program pokaże Ci drzewiastą zalezność między typami, paczkami itp w Twojej aplikacji Go na podstawie kodu źródłowego oczywiście. Czasem jest przydatne spojrzeć w taki sposób na swoją aplikację, aby móc odkryć niedociągnięcia. Zobacz na przykłady w repozytorium, aby zrozumieć o co w tym chodzi.
- https://github.com/prologic/tube - #golang #javascript
Autor twierdzi, że bardzo łatwo sobie zdeplojować prosty serwis do video sharing i uniezależnić się od YouTube, zobacz w tym repozytorium jak taki przykładowy serwis z użyciem tego stacku może wyglądać.
- https://github.com/pipxproject/pipx - #python
Instaluj i odpalaj apki w Python w izolowanych środowiskach. Taki zamiennik do pip
, pozwala nawet
odpalać apki bezpośrednio ze zdalnych repozytorium lub z gistów.
Fajne CLI do przełączania się pomiędzy klastrami oraz namespaces
- https://github.com/sbstp/kubie - #rustlang #kubernetes
Jeśli już teraz znasz kubectx czy kubens, to tutaj jest alternatywa napisana w Ruście.
…dla subskrybentów newslettera dostępne są dodatkowe 2 materiały