ⴲⴲⴲ Pod tagiem #devopsiarz…

ⴲⴲⴲ

Pod tagiem #devopsiarz (obserwuj lub czarnolistuj) publikuję od czasu do czasu informacje o ciekawych programach, bibliotekach z działki #devops i nie tylko – najczęściej #golang i #python. Ponadto jakieś ciekawe linki z tego gatunku do takiego zestawienia.

Na wstępie dziękuje wszystkim za wypełnienie ankiety, mam nadzieję, że wasze głosy nie pójdą na marne. 🙂

1) https://kubernetes.io/blog/2020/01/22/kubeinvaders-gamified-chaos-engineering-tool-for-kubernetes/ – #kubernetes
Używanie kubernetes trzeba jakoś urozmaicić, no i to jeden ze sposobów – KubeInvaders. Jak komendy Cię nudzą
i uważasz, że np. wyłączanie podów powinno być fun, to zobacz tutaj (facepalm jak dla mnie).

2) https://github.blog/2020-01-17-bring-your-monorepo-down-to-size-with-sparse-checkout/ – #git
Git w wersji 2.25 wprowadza komendę git sparse-checkout. Jeśli masz tak zakręcone monorepo, że zapuszczasz
korzenie przy git checkout lub git status, to warte poczytania. Mięsko dla zainteresowanych internalsami gita i
długie.

3) https://www.reddit.com/r/devops/comments/etbh6m/kubernetes_documentation_no_longer_supports_most/ – #kubernetes #aws #devops
Dlaczego GKE i EKS chodza na starszych wersjach Kubernetes i jakie rodzi to problemy przy dokumentacji.

4) https://rakyll.org/inlined-defers/ – #golang
W Go 1.14 część deferowanych funkcji będzie inline, czyli mówiąc po ludzku: z powodu problemów
wydajnościowych (niewielkich, ale jednak) przy używaniu instrukcji defer oraz np. mutexów, kompilator
od wersji 1.14 literalnie „przepisze” deferowane funkcje w odpowiedniej kolejności (jeśli będzie się dało), tak
jakby to zrobił użytkownik bez używania instrukcj defer.

5) https://www.freecodecamp.org/news/we-fired-our-top-talent-best-decision-we-ever-made-4c0a99728fde/ – #pracait
Dla tych, co jeszcze nie czytali tego, przypominam – to ciekawa opowieść o firmie, która miała geniusza na
stanie i dlaczego zwolnienie jego uznają za najlepszą decyzję jaką kiedykolwiek podjęli

6) https://eli.thegreenplace.net/2020/graceful-shutdown-of-a-tcp-server-in-go/ – #golang
Bardzo ciekawy artykuł poruszający niby prostą kwestię właściwego zamykania połączeń TCP. Adepci dobrego kodu Go,
powinni koniecznie przeczytać.

7) https://medium.com/samsara-engineering/a-chapter-in-the-life-of-gos-compiler-c89b9db74617 – #golang
Historia pewnego buga w kompilatorze Go. Artykuł dla zaawansowanych, którym nie wystarczy bycie zwykłym
klepaczem, a potrzebują cof wiedzieć się dzieje „za kulisami” z ich kodem.

8) https://lexi-lambda.github.io/blog/2020/01/19/no-dynamic-type-systems-are-not-inherently-more-open/ – #haskell #javascript
Autor tego ciekawego tekstu polemizuje z pewnymi dyskusjami z reddita, iż statyczny system typów do niektórych rzeczy
się nie nadaje, bo w przeciwieństwie do dynamicznego jest oczywiście statyczny. A co to za rzeczy ktoś spyta?
Np. procesowanie otwartych lub częściowo nieznanych struktur danych. To oczywiście nieprawda, że się nie
nadaje, a w artykule znajdziesz przykłady z Haskella (ach ten Haskellowy system typów) i JavaScript i odpowiednie
wyjaśnienie

9) https://dev.to/netguru/commentable-rs-building-a-serverless-comment-system-in-rust-5egb – #rustlang
Artykuł o pisaniu swojego disqusa, którego backend będzie napisany w Rust i będzie działał na AWS Lambda.

10) https://www.wired.com/story/sociologists-examine-hackathons-and-see-exploitation/ – #hackathon #pracait
Czy hackathony to nowa wersja wyzysku? Tytuł trochę klikenbajten, ale już w 2017 już naukowcy się temu przyglądneli
analizując 7 hackathonów i wysuwają takie wnioski (w sumie zgodne z moimi obserwacjami).

11) https://foxbox.com/blog/elixir-vs-ruby/ – #ruby #elixir
Pewna firma przesiadła się z Ruby na Elixira i opisuje swoje doświadczenia (są zadowoleni).

12) https://engineering.shopify.com/blogs/engineering/shopify-manages-api-versioning-breaking-changes
Shopify dzieli się swoimi praktykami wersjonowania API. Warto poczytać, bo na interview możecie spotkać
pytania z tym związane.

13) https://rachel53461.wordpress.com/2014/04/20/algorithm-for-drawing-trees/ – #programowanie
Opis algorytmu rysowania drzew, autor podjął próbę zrozumienia tego i ten artykuł to próba wyjaśnienia tego
innym.

14) https://www.digitalocean.com/community/curriculums/kubernetes-for-full-stack-developers – #kubernetes
Digital Ocean udostępniło serie tutoriali Kubernetesa dla początkujących fullstaków

15) https://www.reddit.com/r/devops/comments/esvga0/why_does_vendor_lockin_seem_like_an_especially/ – #devops
Co to ten cały vendor locking i dlaczego niektórzy się o niego martwią, zwłaszcza jak chodzi o clouda – dyskusja na reddicie

16) https://pclab.pl/art83168.html – #cpu
[PL] Ciekawy artykuł z naszego podwórka traktujący o throttlingu procesów mobilnych. Warte poczytania, jeśli jeszcze
nie wiesz, dlaczego identyczny procesor w różnych laptopach może mieć diametralne inną wydajność.

17) https://blog.heroku.com/terrier-open-source-identifying-analyzing-containers – #security #docker #kubernetes
Terrier, czyli wdzięczna nazwa dla oprogramowania do automatycznej analizy obrazów kontenerów zgodnych z OCI
(i Dockera) pod kątem bezpieczeństwa (m.in. binarek tam zawartych)

18) https://00f.net/2019/11/03/stop-using-low-dns-ttls/ – #dns
O tym, dlaczego nie należy używać przesadnie niskich wartość TTL w swoich strefach, jak to wpływa na aplikacje itp,
ciekawa analiza, warta przeczytania. Dla tych, co ogarniają czym jest DNS tak w ogóle

19) https://www.androidauthority.com/android-encryption-forensics-1078668/ – #security #iphone #android #ios
Ponoć obecnie smartfony z androidem są trudniejsze do złamania (w sensie wyciągnięcia danych), aniżeli iPhone,
choć kiedyś było odwrotnie

20) https://bradfitz.com/2020/01/27/leaving-google – #golang #google
Brad Fitzpatrick, jeden z najwazniejszych developerów języka Go (i nie tylko) odchodzi z Google po 12 latach. Jednym z
głównych powodów: znudzenie. Przy rozwoju #golang ma się dalej udzielać, a to dobra wiadomość.

21) https://www.eggheads.org/ – #irc
Powiem no krótko: #gimbynieznajo, a Ci co znają dawać plus za małe #feels

22) https://9to5mac.com/2020/01/30/apple-common-smartphone-charger/ – #apple
EU zdecydowało, że chce zunifikowanej ładowarki do smartfonów, Apple się to nie podoba, ale polecam przeczytać,
jakie argumenty Apple wytacza na poparcie swojego stanowiska 🙂

23) https://tech.wayfair.com/2020/01/a-scientific-approach-to-capacity-planning/ – #programowanie #technologia
Mówiąc krótko: naukowe podejście do planowania skalowania aplikacji, czyli piękna analiza dlaczego zwykłe dodawanie
nodów/sprzętów czasem nie zdaje egzaminu.

24) https://speakerdeck.com/godays – #golang
Slajdy z GoDays z Berlina dla tych, którzy być tam nie mogli

25) https://engineering.linkedin.com/blog/2020/keeping-linkedin-professional – #programowanie
Inżynierskie podejście LinkedIN do detekcji profili z nieodpowiednią zawartością (cokolwiek to znaczy)

26) https://developers.redhat.com/blog/2020/01/20/mir-a-lightweight-jit-compiler-project/ – #programowanie #redhat #ruby
Lekki kompilator JIT dla #ruby rozwijany przez #redhat

27) https://utcc.utoronto.ca/~cks/space/blog/programming/GoLimitedTypeInferenceLike – #golang
Go posiada operator :=, który służy do „zgadywania” typu przez kompilator, aby samemu go nie wprowadzać, zwłaszcza jak to jakiś frankeinstein typu MySuperAwesomePackage.TypeFromThisPackage. Jednak to zgadywanie jest ograniczone tylko do wnętrza funkcji, nie poza nim. Artykuł opisuje, dlaczego to skąd inąd słuszne ograniczenie (zdaniem jego autora)

28) https://enterprisersproject.com/article/2020/1/devops-engineer-interview-questions-2020 – #devops
Ponoć 7 pytań na stanowiska devopsowe, na które należy znać odpowiedź w roku 2020

29) https://0day.work/pwning-your-web-server-and-network-the-easy-way-or-why-exposing-ssh-is-a-bad-idea/ – #security
Odpalanie na pałę webservera, bez upewnienia się, czy z jego poziomu nie da się gdzieś porozglądać to zły pomysł, tutaj
przykład z dostępem do ~/.ssh

30) https://hauleth.dev/post/elixir-application/ – #elixir #programowanie
Jeden z mirków tutaj prowadzi ciekawego bloga o elixir i jak zacząć z tym przygodę

31) https://taskandpurpose.com/f35-computer-logistics-system-broken – #technologia #programowanie
Co tu dużo mówić: skrócony opis technological debt w firmie produkującej myśliwce F35. A czy Ty w Twoim projekcie
unikasz długu technicznego? 🙂

32) https://www.potaroo.net/ispcol/2020-01/addr2019.html – #network #sieci
To brakuje tych adresów IPv4 czy nie brakuje, jak to z tym jest na teraz i jak się ma status migracji do IPv6

33) https://developer.github.com/changes/2020-01-28-actions-api/ – #git #github
GitHub wypuścił zarządzanie akcjami (GitHub Actions) przez RestAPI – wersja beta

34) https://dev.to/coderbyte/a-javascript-interview-question-asked-at-google-19f1 – #javascript #pracait
Jakie pytania na interview dostaniesz starając się o pracę w Google

35) https://dev.to/yechielk/git-blameless-35gi – #git
Pamiętacie aferę dot. master/slave w community #python, albo czapkę mikołaja w VSCode?
To patrzcie jaki jest potencjał na aferę przy poleceniu git blame – tylko czekać aż padną pierwsze strzały ( ͡° ͜ʖ ͡°)

36) https://blog.scottlogic.com/2020/01/13/selenium-vs-puppeteer.html – #selenium
Porównanie Selenium i Puppeteera

### libeczki ###

1) https://github.com/awslabs/git-secrets
Zastępnik foliowej czapeczki dla tych, którzy nie mogą spać, bo boją się, że commitnęli jakiś sekret do repo

2) https://github.com/derailed/k9s – #golang #kubernetes
No takie coś to ja szanuję, zarządzanie kubernetesem przez ładny interfejs w terminalu

3) https://github.com/rotisserie/eris – #golang
Kolejne podejście do error handling

4) https://github.com/uber-go/automaxprocs – #golang
Odpalasz apkę napisaną w Go w kontenerach i chcesz GOMAXPROCS mieć z automatu na optymalnym ustawieniu, to Uber ma coś dla Ciebie

5) https://pyre-check.org/ – #python #bash
Szybki sprawdzacz typów dla #python

Tag do obserwowania/czarnolistowania: https://www.wykop.pl/tag/devopsiarz/
Strona: https://devopsiarz.pl
Kanał YT: https://devopsiarz.pl/yt
Społeczność na Discord: https://devopsiarz.pl/discord
Mirkolista (zapisz się jak chcesz być wołany): https://devopsiarz.pl/mirkolista

#programowanie #programista15k #technologia #informatyka #sysadmin #docker #kubernetes