Czy ktoś z was też zaczął w ostatnim czasie uczyć się Pythona? Ja właśnie kończę kurs CS50P, co polecacie dalej jak już zna się jako tako podstawy? Co myślicie o Realpython, dobre źródło wiedzy? Teraz dalej robić kursy, a może jakaś książka lub projekt?
#python
@ioskarpl w sumie możesz sobie obczaić moją apkę, nie ma tam reklam ani nic, ale jestem z niej zadowolony jak na niski nakład pracy jaki w nią włożyłem https://play.google.com/store/apps/details?id=com.wordpress.ls458.geokalkng
@Rzezimioszek
co polecacie dalej jak już zna się jako tako podstawy
Pracę w zawodzie, bo to rozwija najbardziej i daje tyle wiedzy co żadna książka ani kurs tego nie zastąpi na dodatek zarobisz pieniądze. Oprócz tego własne projekty rozwijają wiedzę. Wymyśl sobie jakiś własny projekt który będziesz realizował przez kilka miesięcy lub tygodni na przykład stronkę do podglądu pogody z jakąś mapką gdzie na bierząco będziesz mógł podejrzeć pogodę.
@ioskarpl ja osobiście naukę zacząłem od Pythona, ale po tym jak zobaczyłem jak mało jest ofert juniorskich w tym języku, to pomyślałem, że bezpieczniej będzie coś popularniejszego, z czym łatwiej zacząć pracę w branży. Mój wybór padł na Javę. C# też imo nie byłby złym pomysłem, lub JS. Ponadto w materiałach, z którymi ja miałem do czynienia dla Pythona, bardzo mało uwagi poświęcono programowaniu obiektowemu, więc stwierdziłem, że wykupie kurs javy na udemy. W końcu najlepiej zrozumiem OOP pisząc w języku typowo obiektowym.
Zaloguj się aby komentować
Fajny ten PyCharm.
Funkcjonalny i w ogóle..
Ale sobie coś z wywołaniem wyjątków nie radzi.
Ten sam interpreter zdefiniowany - PyCharm wywala się na wyjątku wypuszczając tylko exit code 0xC0000409 a jak apkę odpalę bezpośrednio z poziomu terminala to nagle się okazuje, że wyjątek wywołać można z całą jego treścią.
@Dalmierz_Ploza wujowy
Zaloguj się aby komentować
18+
Treść dla dorosłych lub kontrowersyjna
Dwanaście niezbędnych składników aplikacji webowych
Tym razem nie tylko dla pythonowców.
Utrzymanie i rozwój aplikacji potrafi przysporzyć wielu problemów, zwłaszcza jeśli nie zadbamy o odpowiednią architekturę kodu oraz higienę pracy z kodem. Mnogość przeróżnych podejść do tworzenia aplikacji w dzisiejszych czasach też potrafi doprowadzić do bólu głowy: DDD, TDD, BDD, DRY, WET, KISS i masa innych akronimów prowadzi starcie w naszych głowach, kiedy jeszcze nie wiemy dokładnie w jaką stronę będzie zmierzał projekt.
Poniższy artykuł, a właściwie cała strona, opisuje dwanaście składników aplikacji webowych, które pozwolą nam uniknąć najbardziej fundamentalnych problemów w czasie wdrażania oraz utrzymania oprogramowania. W skrócie są to:
-
Codebase - jedno repozytorium w systemie kontroli wersji, wiele wdrożeń
-
Dependencies - jasno definiuj i izoluj zależności
-
Config - przechowuj konfigurację w środowisku zamiast w kodzie
-
Backing services - traktuj usługi zewnętrzne (np. bazy danych, storage, integracje) jako zasoby
-
Build, release, run - bezwzględnie rozdzielaj od siebie etapy budowania i uruchamiania aplikacji
-
Processes - uruchamiaj aplikację jako jeden lub więcej bezstanowych procesów
-
Port binding - udostępniaj usługi poprzez dowiązanie portów
-
Concurrency - skaluj aplikację w modelu procesowym
-
Disposability - maksymalizuj niezawodność zapewniając szybki start i łagodne zamykanie procesów
-
Dev/prod parity - środowiska lokalne, testowe oraz produkcyjne powinny być do siebie tak podobne, jak tylko możliwe
-
Logs - traktuj logi jako strumienie zdarzeń
-
Admin processes - uruchamiaj zadanie administracyjne jako jednorazowe procesy
Zdaję sobie sprawę, że te opisy są bardzo ogólne, ale jeśli chcecie, mogę przygotować serię, w której dokładniej omówię każdy z punktów. Tymczasem, po więcej szczegółów możecie sięgnąć na stronę The Twelve-Factor App .
@sebkek poprosimy! na pewno ktoś skorzysta
Zaloguj się aby komentować
Jak skonfigurować logowanie zdarzeń w Pythonie?
Temat traktowany po macoszemu przez wielu programistów. Logowanie zdarzeń może jednak dostarczyć nieocenionej pomocy, kiedy zachodzi konieczność prześledzenia zdarzeń na środowiskach produkcyjnych, gdzie nie mamy możliwości debugowania aplikacji.
Autor omawia, wraz z przykładami, najważniejsze zagadnienia związane z modułem logging w Pythonie:
-
dobre praktyki
-
poziomy logowania
-
konfigurację formaterów, handlerów i loggerów
a w międzyczasie opisuje jak to wszystko działa i jak się ze sobą łączy.
Lekturę polecam każdemu, niezależnie od tego, przy jak dużym projekcie pracujecie - logowanie zdarzeń jest przydatne w każdej skali, zwłaszcza jeśli je dobrze skonfigurujemy i używamy go z głową: Logging in Python like a PRO
Zaloguj się aby komentować
Jak generować piękne, czytelne tracebacki w Pythonie?
Poniższy artykuł pokazuje, jak samemu można zmienić sposób wyświetlania tracebacków w Pythonie, a także pokazuje kilka przykładowych paczek, które zrobią to za nas.
W dużym skrócie, wystarczy stworzyć funkcję z odpowiednimi parametrami i przypisać ją do sys.excepthook.
Zaloguj się aby komentować
Czy twój kod jest zbyt skomplikowany?
Poniższy artykuł omawia dwie metryki złożoności kodu, które mają bezpośredni wpływ na naszą zdolność zrozumienia, co dany kod właściwie robi:
-
Złożoność cyklomatyczna - określana jest liczbą rozgałęzień i punktów decyzyjnych w funkcji
-
Złożoność poznawcza - określana jest liczbą punktów decyzyjnych oraz ilością stopni zagnieżdżenia w funkcji
Pisząc kod, powinno nam zależeć na tym, aby obie te metryki były jak najniższe, dzieki czemu utrzymanie takiego kodu w przyszłości, a także zrozumienie go, będzie dużo prostsze.
Jeśli chcecie poznać te metryki lepiej, polecam krótką lekturę: Is your code too complicated?
Polecam również ten plugin zapiąć sobie do testowania złożoności https://pypi.org/project/pytest-mccabe/
najlepiej przed tym jak jeszcze jednostkowe i integracyjne testy są odpalane na CI - np jako element testowania statycznego kodu
Zaloguj się aby komentować
Jak używać PyYAML, żeby uniknąć jego pułapek?
Informacje na ten temat znajdziemy w artykule Tips that may save you from the hell of PyYAML .
Artykuł jest krótki, na kilka minut czytania, ale w skrócie:
-
Zawsze używaj safe_load/safe_dump
-
Utrzymuj oryginalny porządek w kluczach (load/dump)
-
Zapewnij prawidłowe wcięcia (dump)
-
Używaj czytelnego UTF-8 na wyjściu (dump)
-
Nie potrzebujesz default_flow_style (dump)
Zaloguj się aby komentować
Krótki opis długiej historii Pythona
Całość można przeczytać też na moim blogu - grski.pl - Krótki opis długiej historii Pythona
Python jest językiem dość starym, że się tak wyrażę. Obecnie pełno na rynku języków dość nowych dzieci jak Scala, Dart, Elm, Elixir, Kotlin czy wiele, wiele innych. W porównaniu z nimi Python jest staruszkiem, pojawił się on bowiem na początku roku 1991 na CWI – Centrum Matematyki i Informatyki w Amsterdamie. Nie jest to co prawda dziadunio taki jak np. C z roku 1972, ale taki pełnoprawny język w średnim wieku, to już jak najbardziej.
Jego głównym twórcą był Guido van Rossum, który do dziś ma przydomek „Benevolent Dictator for Life” i w zasadzie...
Krótki opis wad i zalet Pythona cz. 2
Krótko o kilku wadach jak i zaletach Pythona okiem kogoś, kto z niego korzysta. Bardziej dla początkujących. Wpis można tez przeczytać na moim blogu - grski.pl
Zalety
Ekspresywność
Python jest bardzo ekspresywny. Co to znaczy? Otóż w Pythonie za pomocą relatywnie niewielkiej ilości kodu, można osiągnąć to, co w innych językach zajęłoby czasami kilka razy tyle. Żeby nie być gołosłownym, popatrzmy na przykład klasycznego programu, którym zaczyna się naukę programowania – Hello World, czy po polsku, Witaj Świecie. W Pythonie wygląda on tak:
:::python
print(‘Hello World’)
Dość proste i zrozumiałe, prawda? Jedna linijka i gotowe. Przyjrzymy się...
Krótki opis wad i zalet Pythona cz. 1
Krótko o kilku wadach jak i zaletach Pythona okiem kogoś, kto z niego korzysta. Bardziej dla początkujących. Wpis można tez przeczytać na moim blogu - grski.pl
Zalety
Ekspresywność
Python jest bardzo ekspresywny. Co to znaczy? Otóż w Pythonie za pomocą relatywnie niewielkiej ilości kodu, można osiągnąć to, co w innych językach zajęłoby czasami kilka razy tyle. Żeby nie być gołosłownym, popatrzmy na przykład klasycznego programu, którym zaczyna się naukę programowania – Hello World, czy po polsku, Witaj Świecie. W Pythonie wygląda on tak:
:::python
print(‘Hello World’)
Dość proste i zrozumiałe, prawda? Jedna linijka i gotowe. Przyjrzymy się...
Zaloguj się aby komentować

Nowa wersja pythonowego webide do micro:bit
Istnieją już edytory Pythona takie jak Thonny, ale BBC uznało, że te nie są wystarczająco dobre i wydało nowy internetowy edytor Pythona skierowanej do uczniów w wieku od 11 do 14 lat.
Edytor micro:bit Python zawiera przykłady kodu metodą "dragi & drop", podświetlanie struktury kodu i...

Automatyzacja sieci komputerowych z Netmiko
Automatyzacja sieci nigdy nie była prostsza dzięki Pythonowej bibliotece Netmiko. Pokażę Ci, jak napisać Twój pierwszy skrypt, dzięki, któremu połączysz się ze zdalnym urządzeniem, sprawdzisz i zmodyfikujesz konfigurację, korzystając z dobrze znanych komend CLI.
Od €1 za paczkę.
https://www.humblebundle.com/books/python-no-starch-press-books?partner=unknow&charity=2216328

Zaloguj się aby komentować
#Netprasowka 06/22
Cześć.
Witam w nowym tygodniu.
- Ten, kto nie parsował outputu z konsoli za pomocą wyrażeń regularnych ten nie wie co to stres.
W Python jest biblioteka Scrapli, która "rozmawia" z konsolą za pomocą poleń. Jest też dostępna w Go. Tu masz przykład użycia. Jeśli interesuje Cię automatyzacja to pamiętaj o ankiecie https://showroute.pl/robot.
https://netdevops.me/2021/network-automation-options-in-go-with-scrapligo/
- UTRS, a właściwie Unwanted Traffic Removal Service, to usługa typu community dostarczana przez Team Cymru. Usługa wykorzystuje RTHB to łagodzenia ataków DDoS. Tu masz link (https://team-cymru.com/community-services/utrs/), gdzie możesz za darmo się zarejestrować. Zanim to zrobisz, to przeczytaj zawartość Readme.md.
https://github.com/team-cymru/network-security-templates/blob/master/UTRS-Peering-Guide/README.md
- Co zrobić, zanim przystąpić do automatyzowana swojej sieci i usług. Odpowiedź jest prosta. Porządek. Ivan w swoim stylu wyjaśnia dlaczego.
https://blog.ipspace.net/2022/02/cleanup-before-automation.html
- Anycast jest ciekawy i dobry np.: do rozpraszania ataków DDoS czy zwiększania dostępności serwerów DNS, ale też są pewne minusy związane z TCP.
https://lambda.mu/anycast-tcp/
- Jak wygląda wydajność DNS over HTTPS w ujęciu globalnym. Badacze sprawdzili 22052 unikanych użytkowników w 224 krajach. Artykuł w linku jest podsumowaniem ich badań.
https://blog.apnic.net/2022/02/03/measuring-dns-over-https-performance-around-the-world/
SZKOLENIA/EDUKACJA
Za tydzień otwieramy zapisy do naszego programu BGP - zbuduj silne fundamenty. Jeśli chcesz dołączyć, do programu to zapisz się tu: https://showroute.pl/bgp
Przygotowujemy ciekawą ofertę.
PRACA
Oferty pracy są dostępne dla czytelników mailingu. https://showroute.pl/netprasowka
To byłoby na tyle w tym tygodniu z Netprasówki.
Pozdrawiam i do przeczytania.

Zaloguj się aby komentować
Cześć.
#Netprasowka 03/22
- Jak zainstalować i skonfigurować Pi-hole. Dlaczego warto zainteresować się tym tematem? Pi-hole pozwala blokować reklamy, trackery a nawet malware. Masz tu kompletny artykuł jak zainstalować i zarządzać swoim Pi-hole. Warto zadbać o bezpieczeństwo swojej domowej sieci.
https://weberblog.net/pi-hole-installation-guide/
- Pisanie testów do automatyki często pojawia się w Netprasówce. Teraz mam ciekawy wpis Patryka Szulczewskiego. Patryk pisze, aby rozwijać oprogramowanie i jednocześnie je testować. Nie czekać na zakończenie pisania. Tylko robić to jednocześnie. Pokazuje też przykład z naszego świata. Jak za pomocą netmiko dostać wersje softu. Robi to poprzez rozwijanie testów.
https://blog.networktocode.com/post/how-to-write-better-python-tests-for-network-programming/
- A jeśli nie znasz Pythona, to polecam książkę Python dla inżynierów sieciowych. Jest wszystko, co możesz potrzebować przy pracy z siecią i urządzeniami sieciowymi.
https://pyneng.readthedocs.io/en/latest/
- RIPE wypuścił narzędzie ipmap. Jest to narzędzie tworzące mapy Internetu. Łączy adresy IP z danymi geolokacyjnymi. Narzędzie jest rozwijane i jest dostęp po API. Chcesz sprawdzić jak działa, to możesz wkleić traceroute i zobaczyć jak wędrują Twoje pakiety po świecie.
- Czym się różni MPLS VPN L3 od VRF-Lite. Autor pokazuje wszystko od podstaw. Czym jest LDP, jak wykorzystać BGP i w ogóle, po co segmentować sieć.
https://zartmann.dk/mpls-vpns-vs-vrf-lite/
To byłoby na tyle w tym tygodniu z Netprasówki.
SZKOLENIA/EDUKACJA
Oferty szkoleń dostępne dla czytelników mailingu. https://showroute.pl/netprasowka
PRACA
Oferty pracy dostępne dla czytelników mailingu. https://showroute.pl/netprasowka
To byłoby na tyle w tym tygodniu z Netprasówki.
Pozdrawiam i do przeczytania.

@Ama-Japan o, to jednak trzeba temat przepracować.
@Nebthtet jasne, możesz nawet wirtualkę postawić na próbę i zobaczyć jak to działa.
@Ama-Japan o, dzięki za podpowiedź
Zaloguj się aby komentować












