Cotygodniowa dawka linków, czyli archiwum newslettera Dane i Analizy
W dzisiejszym wydaniu znajdziecie potężny tekst wprowadzający w świat programowania obiektowego w Pythonie. Wszystko co trzeba wiedzieć o klasach, metodach, konstruktorach i dziedziczeniu. A do tego jeszcze dorzucamy materiały uzupełniające: skupiające się na bardziej precyzyjnych aspektach klas i metod (oraz dekoratorów do tychże).
To dla praktyków programowania.
Dla osób z okolic zarządzania - coś o miernikach. Jak monitorować czy zespół wytwórczy pracuje na stabilnym poziomie i czy ten poziom jest wysoki? Teksty o definicjach i przykładach wykorzystania mierników. jeżeli zarządzasz zespołem i chciałbyś mierniki przełożyć na cele to może metoda OKR znajdzie zastosowanie? Dobrze zacząć od zestawienia OKR vs KPI o którym pisze Tomek Bienias.
Z kolei dla twardo siedzących w AI i modelach deep learning mamy coś o tym jak działa optymalizacja Adam od "środka", a dla mniej doświadczonych - jak liczyć auta na autostradzie, czyli YOLO w wersji ósmej wykorzystane w praktyce.
#ai_ml
YOLOv8 Object Tracking and Counting
Nie tak dawno w newsletterze był tekst porównujący kolejne wersje YOLO, dzisiaj czas na wykorzystanie YOLOv8 do rozpoznawania, śledzenia i liczenia obiektów w czasie rzeczywistym.
A Must Read: 15 Essential AI Papers for GenAI Developers
Przegląd 15 "pejperów" które warto przeczytać jeżeli zajmujesz się AI, w szczególności z zakresu GenAI związanego z obrazem i tekstem.
The Math behind Adam Optimizer
Adam jest najpopularniejszym optymalizatorem w zagadnieniach deep learning - dlaczego i jaka matematyka za nim stoi?
Fraud Detection with Generative Adversarial Nets (GANs)
Tytuł wprowadza w błąd, bo w tekście chodzi o zastosowanie sieci typu GAN do generowania dodatkowych próbek uczących. Ale - jakby nie było - poznajemy dość szybki i zwarty pod względem ilości kodu sposób na zbudowanie prostej sieci GAN.
#analiza_danych_projekty
Getting Started Predicting Time Series Data with Facebook Prophet
Prophet to biblioteka (dostępna dla Pythona i R) pozwalająca na szybkie przygotowanie modelu predykcyjnego dla szeregów czasowych. Radzi sobie naprawdę dobrze, a jest dość prosta w użyciu. Zobacz jak :)
How to Handle Time Series Missing Data
Co zrobić kiedy nasze szeregi czasowe są dziurawe? Na przykład instrumenty pomiarowe miały chwilowe braki napięcia albo zasięgu i nie przesłały informacji. Jak takie braku uzupełnić? Przegląd kilku metod, z przykładami w Pythonie.
Portfolio Management with Market Basket Analysis and the Apriori Algorithm
Interesujęce podejście do budowania portfela inwestycyjnego - poprzez analizę koszykową. Analiza koszykowa najczęściej służy do znajdywania współkupowanych produktów (co z kolei służy do stawiania chipsów niedaleko piwa w sklepie) albo jako metoda rekomendująca kolejne produkty ("często kupowane razem").
#data_engineering
Real-time data processing using Change Data Capture and event-driven architecture
Zmiana rekordu w bazie danych wywołuje wysłanie komunikatu na kolejkę typu Apache Kafka. A to już adekwatnie "event driven architecutre", zatem można reagować na poszczególne zdarzenia, agregować je w oknach czasowych albo po prostu odkładać w innym miejscu (na przykład w innej bazie danych lub w jakimś "object storage" typu S3)
#devops
Kubernetes for Data Engineering: An End-to-End Guide
Jak zacząć z tym całym Kubernetesem? Wprowadzenie dla inżynierów danych
#excel
I built my own 16-Bit CPU in Excel
Szalony pomysł! Zbudować cały procesor, z rozkazami i rejestrami oraz całym assemblerem pozwalającym programować ten procesor... w Excelu. Ciekawostka, ale pierwsza część świetnie wprowadza w to jak adekwatnie działa komputer. YouTube, 17 minut.
#front_end
A Guide to Styling Tables
Tabelki w HTMLu? Ale jak ostylowane! Przewodnik jak pisać CSSy dla tabelek, tak aby czytelnie się tabelki czytały (więc podświetlają się kolumny, wiersze itd itp)
#management
Measuring Engineering Productivity and Advancing Software Delivery
Być może początek roku to dobry moment na podsumowanie minionego roku, spojrzenie na mierniki albo zdefiniowanie nowych. Co i jak mierzyć w świecie IT?
Measuring Developer Productivity: Real-World Examples
A skoro już wiemy, iż można określić wskaźniki produktywności programistów - zobaczmy czego używa Google, LinkedIn, Peloton, Amplitude, Intercom, Notion, Postman i 10 innych firm technologicznych.
#programowanie_ogólnie
Effective Logging Strategies
W sekcji Management dzisiaj o miernikach dla zespół programistów i procesach wytwarzania oprogramowania, a tutaj - o tym jak logować zdarzenia z działającego kodu. Jakie rzeczy można logować?
#python
3 Ways to Work with Databases (SQL, ORM, Query Builder)
Jak "gadać" z bazą danych z Pythona? A raczej: jak pisać zapytania? O trzech sposobach budowania zapytań.
Python Code Style Guide: Best Practices for Readable and Consistent Code
70 (siedemdziesiąt!) zasad pisania czytelnego kodu w Pythonie. W większości przypadków dba o to IDE ubrane w jakiś linter typu pylint czy flake8 albo black, ale zasady warto znać, bez zdawania się na bezduszną maszynę.
Pathlib: Object-Oriented File Path Manipulation
Koniec z os.path, czas na pakiet pathlib i Path() - manipulacja ścieżkami, listowanie katalogów, operacje na plikach i katalogach w ramach jednego obiektu i wielu wielu jego metod.
Advanced OOP in Python
Olbrzymi (Medium mówi "72 min read") artykuł o programowaniu obiektowym w Pythonie. Chyba wszystko co trzeba o OOP wiedzieć jest tutaj zawarte. Zanim zostaniesz senior python developerem - przeczytaj. jeżeli już jesteś - przeczytaj i przypomnij sobie.
Python’s Most Powerful Decorator
Nadal w świecie programowania obiektowego w Pythonie - tym razem o @property
Python Class Methods: Understanding the Roles of @staticmethod and @classmethod
Dekoratory @staticmethod i @classmethod jako elementy programowania obiektowego. Nieco mniej wiedzy niż w powyższym tekście o OOP, ale bardziej szczegółowo. Czym różnią się od siebie te dekoratory?
Data Classes vs Named Tuples
Kiedy użyć @dataclasses a kiedy namedtuple()? A może słowniki będą lepsze?
#r
How to Make Your Shiny App Beautiful
Zwiększ estetykę, popraw UX i udoskonal wydajność kodu dzięki obszernemu przewodnikowi o tworzeniu ładnych i wygodnych w użyciu aplikacji w Shiny
#scala
How to Write a Full-Stack Scala 3 Application with the Typelevel Stack
Jak napisać full-stackowa aplikację w Scali?
Zestawienie linków przygotowuje automat, wybacz więc wszelkie dziwactwa ;-)