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

  1. https://blog.carlmjohnson.net/post/2020/python-square-of-opposition/ - #python

Dlaczego all zwraca True jeśli iterable jest pusty - ciekawe pytanie z reddita odnośnie pewnej sytuacji w Pythonie

 

  1. 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

 

  1. 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.

 

  1. 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)

 

  1. 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.

 

  1. 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 :-)

 

  1. 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% :-)

 

  1. 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.

 

  1. 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ę

 

  1. 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. :)

 

  1. https://medium.com/@teivah/introducing-rxgo-v2-e7e369faa99a - #golang

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.

 

  1. 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ść. :-)

 

  1. 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.

 

  1. 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.

 

  1. https://blcsystems.com/red-hat-free-courses/ - #redhat

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.

 

  1. 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.

 

  1. 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. :-)

 

  1. 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.

 

  1. 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.

 

  1. 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.

 

  1. https://www.reddit.com/r/devops/comments/fyoycy/programming_language_for_devops/ - #devops

Jaki język programowania dla DevOpsa - również z wątku na reddicie.

 

  1. 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.

 

  1. 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

 

  1. 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

 

  1. 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

  1. 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.

 

  1. 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

 

  1. 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!

 

  1. 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.

 

  1. 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ć.

 

  1. 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.

 

  1. https://github.com/ahmetb/kubectx - #bash

Fajne CLI do przełączania się pomiędzy klastrami oraz namespaces

 

  1. 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