Moje środowisko programistyczne

Moje środowisko programistyczne

Raz na jakiś czas, czy to podczas pierwszych dni w nowej pracy czy podczas upgradu sprzętu konfigurujesz swoje środowisko programistyczne. Często są to narzędzia, programy, skrypty, ustawienia do których jesteś przyzwyczajony i dobrze Ci się z nich korzysta. Nawet dzieląc się wewnątrz zespołu tym z czego korzystacie, wiele możesz zyskać i poznać coś nowego. Poniżej moje środowisko programistyczne z którym czuję się dobrze.

JVM

Jako, że jestem głównie javowcem to nie mogę zacząć od rzeczy związanych z java. Jako pierwszego wymienię SDKMAN. Jeśli, jeszcze go nie znasz to jak najszybciej go zainstaluj i zacznij używać. W dużym skrócie jest to narzędzie, dzięki któremu w łatwy sposób będziesz mógł zarządzać wieloma wersjami języków opartych o JVM. Dzięki niemu możesz zapomnieć o ręcznym wyszukiwaniu odpowiedniego sdk, a później o ręcznych zmianach w PATH podczas zmiany wersji.

IDE pluginy

Od około 2015 roku, moim IDE jest IntelliJ – i co tu dużo mówić, jest ono naprawdę dobrym toolem. Wcześniej używałem eclipse i potrafiłem go przy użyciu wielu pluginów dosyć dobrze skonfigurować. Jednak używając IntelliJ, nie mam ich aż tyle co wcześniej, co nie znaczy że ich nie używam. Obecnie mam zainstalowane:

Codota AI – plugin, który rozbudowuje/poprawia sugestie proponowane przez Intellij. Fajnie się sprawdza, w przypadku zewnętrznych bibliotek, gdzie pokazuje procentowo najczęstsze użycia. Również dużym plusem tego pluginu są przykłady użycia na podstawie realnych kodów.

Rainbow Brackets – dodaje trochę kolorów do nawiasów, klamer. Dzięki temu pluginowi łatwiej zobaczysz otwierające i zamykające nawiasy.

SonarLint – jeśli używasz sonara, to dzięki temu pluginowi łatwo podepniesz analizę pod swój kod i wyniki będziesz miał prawie w realtime.

Lombok – jedną z wad używania lomboka była potrzeba instalacji pluginu w IntelliJ. Na szczęście od wersji 2020.3 już nie trzeba go instalować.

IDE dodatkowa konfiguracja

Nawet jakoś specjalnie nie konfiguruję mojego IDE oprócz trzech rzeczy. Najważniejszą dla mnie zmianą jest wyłączenie sprawdzania wielkości liter, podczas sugestii/autocomplete. Na pierwszy rzut oka niewielka zmiana, ale naprawdę bardzo dużo możesz zyskać. Aby to osiągnąć, wyszukaj “Code completion” i zaznacz “match case off”. Oprócz tego, również podczas formatowania kodu mam włączoną opcję czyszczenia importów oraz robienia cleaningu na kodzie. Oczywiście, nie mogę też zapomnieć o live templetach. Zawsze mam przygotowany template do generowania szablonów testów, obecnie używam Spocka, więc wygląda on tak:

def "should" () { given: when: then: }

Plus dodatkowe templaty w zależności od projektu i konwencji tam przyjętych.

Moje środowisko programistyczne

Git

O samym gicie nie będę się rozpisywał bo to jednak standard. Bardziej skupię się na paru konfiguracjach, które sprawiają, że praca z nim jest przyjemniejsza. Zwłaszcza wtedy, gdy do większości rzeczy z nim związanych używasz konsoli, tak jak ja.

Pierwszą rzeczą, której domyślnie po instalacji gita mi brakuje – jest wyświetlanie nazwy brancha, na którym aktualnie się znajduję. Jeśli używam zsh, to do pliku .zshrc dodaję:

//.zshrc function parse_git_branch() { git branch 2> /dev/null | sed -n -e 's/^* (.*)/[1]/p' } COLOR_DEF=$'e[0m' COLOR_USR=$'e[38;5;243m' COLOR_DIR=$'e[38;5;197m' COLOR_GIT=$'e[38;5;39m' setopt PROMPT_SUBST export PROMPT='${COLOR_USR}%n ${COLOR_DIR}%~ ${COLOR_GIT}$(parse_git_branch)${COLOR_DEF} $ '

A po skończonej edycji wykonuję:

source .zshrc

Czym byłoby środowisko programistyczne z gitem bez aliasów? Też ich używam w takiej formie jakie są dla mnie wygodne, zwłaszcza mój ulubiony alias tree.

git config --global checkout git config --global alias.st status git config --global alias.pu pull git config --global 'log --graph --decorate --pretty=format:"%h %aN %ai %s" --abbrev-commit' git config --global alias.showalias 'config --get-regexp alias' git config --global alias.pushtoremote 'push -u origin' git config --global 'commit -m' git config --global 'commit --amend -m'

A skoro już używam gita nie mogę zapomnieć o podaniu nazwy i maila użytkownika

git config --global "Mariusz Okaz" git config --global

Toole

Oprócz rzeczy związanych z czystym programowaniem, także używam różnych tooli. Pierwszym i chyba najważniejszym jest Docker. Dzięki niemu w łatwy sposób mogę zainstalować i mieć skonfigurowaną bazę, usługi których używam w projekcie.

Do zarządzania bazą używam DBeaver. Jest to narzędzie, które obsługuje wiele baz. W wersji płatnej wspiera również bazy dokumentowe i BigData.

Aby testować RESTy, to głównie wykorzystuję do tego celu Postmana. Wiem, że w IntelliJ jest bardzo fajny klient, ale tutaj górę bierze moje przyzwyczajenie.

Czasem też trzeba podziałać na plikach w systemie, do tego celu używam Double Commandera, bardzo podobnego do TotalCommandera.

Inne

Z takich innych rzeczy, bardzo ważne dla mnie są zeszyt i długopis. Mogę wtedy zrobić jakieś notatki, coś sobie rozpisać, narysować czy nawet zarzucić kotwicę podczas myślenia i wrócić do tego za chwilę. Przeglądarka internetowa też jest moim podstawowym narzędziem pracy, jednak nie mam w niej zainstalowanych żadnych blokerów. Dodatkowo jestem zalogowany w google i na stackoverflow. Ostatnio testuje konsolowe narzędzie typu todo – taskline i jak na razie sprawdza się dosyć dobrze. Komunikatory, vpn, menadżery haseł i tego typu programy są mocno związane z firmą w której pracuję i nie wchodzą bezpośrednio w moje środowisko programistyczne.

Środowisko programistyczne

To są moje narzędzia, których używam na co dzień i które są dla mnie wygodne. Od ich zainstalowanie i skonfigurowania zaczynam przygotowanie mojego środowiska programistycznego. Do wielu z nich jestem przyzwyczajony od wielu lat i również wiele rzeczy, konfiguracji robię automatycznie. A czy Ty możesz podzielić się innymi narzędziami, które są dla Ciebie niezbędne? Może także, masz jakieś konfiguracje w IDE, które sprawiają, że lepiej Ci się pracuje.

Model Rozwoju – poznaj i rozwiń swój styl myślenia i działania – Kursy on line

Więcej...

Badacze zajmujący się rozwojem ludzi, począwszy od Piageta, zauważyli, że dzieci przechodzą przez różne etapy rozwojowe na swojej drodze do dorosłości. Częścią tego procesu rozwojowego są mentalne zmiany w rozumieniu siebie, świata i relacji do innych osób z otoczenia. Model Rozwoju Przywództwa stosuje podobne reguły rozwojowe, tylko że w stosunku do ludzi dorosłych. Znaczy to tyle, że osoby dorosłe w swoim rozwoju i doświadczeniu również przechodzą przez nakładające się na siebie, jednak możliwe do wyróżnienia, etapy rozwojowe. Logika działania ludzi dorosłych w sposób znaczący wpływa na możliwości rozwiązywania problemów i interpretowania interakcji z otoczeniem. Etapy rozwoju osób dorosłych są stosunkowo niezależne od osobowości, ponieważ są bardzo silnie związane z procesem tworzenia znaczeń, jakie nadajemy temu, co nas spotyka i kim (w swoim rozumieniu) jesteśmy, a to z kolei w sposób bezpośredni prowadzi do działania i kształtuje nasze zachowanie. W języku polskim brak jednoznacznego tłumaczenia pojęcia Action Logic. Przyjęliśmy sformułowanie – Logika Działania, jednak równie dobrze możemy mówić o dojrzałości, czy też rozwoju „Ja”. Niektórzy z badaczy uznają Logikę Działania za najważniejsze różnice indywidualne, jakie występują między ludźmi. Podstawą Modelu Rozwoju opartego na Logice Działania jest głęboka wiara w potencjał ludzki do ciągłego rozwoju i uczenia się. Model ten można potraktować jako swoistą mapę rozwojową, a nie wyłącznie diagnozę aktualnego etapu. Odpowiednia motywacja i wsparcie rozwojowe powoduje, że każdy z nas może rozwinąć nowe, bardziej efektywne sposoby patrzenia na świat i samego siebie oraz własne życie.

Alternatywny Model Rozwoju

CA MISO: Uważasz, że nasz świat potrzebuje alternatywy?

Vibhav Kant Upadhyay: Chciałbym zachęcić poszczególne państwa do ponownego skalibrowania ich systemu działania na rzecz rozwoju, aby mogły sprostać wyzwaniom stojącym przed dzisiejszym światem - gospodarczym, środowiskowym i społecznym.

A co to jest Alternatywny Model Rozwoju?

To model rozwoju społeczno-gospodarczego (Alternative Development Model - ADM), który opiera się na przeciwdziałaniu eksploatacji ludzi, zasobów i środowiska naturalnego - co jest jego głównym założeniem – a jednocześnie działa na rzecz wyrównywania szans i zwiększania możliwości rozwojowych. Opiera się na efektywności energetycznej, odpowiedzialności za środowisko oraz zrównoważonym rozwoju. To filary koncepcji R-M-E (Relationship, Mechanisms, Execution-Economy-Empowerment), która zakłada dyplomację zorientowaną na rozwój, skoncentrowaną na nawiązywaniu relacji, co w efekcie ma doprowadzić do wzmocnienia i ożywienia gospodarki.

Model ADM jest inspirowany pionierskim partnerstwem strategicznym Indii i Japonii w ramach Globalnego Partnerstwa (India-Japan Global Partnership - IJGP).

Na czym polega nierówność pomiędzy nieograniczonymi możliwościami a ograniczonymi zasobami, o której piszesz?

Teoria zrównoważonego modelu rozwoju stanowi istotę wszystkich naszych inicjatyw. Kraje rozwinięte, które stanowią blisko 5% świata, podążyły najkorzystniejszą z dostępnych im ścieżek rozwoju. Prawdziwym zagrożeniem jest skłonność pozostałych 95% krajów do podążania za modelem 5% krajów rozwiniętych. Poza katastrofalnymi zagrożeniami środowiskowymi, będzie to miało zgubne skutki w postaci zmagań narodów o pozostałe zasoby.

Dziś mamy deficyt wody, zasoby żywności są niewystarczające, zapotrzebowanie na energię jest wysokie, dysproporcje między bogatymi i biednymi są większe, zaś milionom ludzi odmawia się prawa do odpowiedniej opieki zdrowotnej, edukacji i przestrzeni życiowej. Wraz z tym, jak ludzkość zaczyna zdawać sobie sprawę z ograniczeń związanych z wyczerpywaniem się zasobów, kraje świata muszą brać je pod uwagę na drodze do wszechstronnego i integracyjnego rozwoju.

Ograniczenia zasobów naturalnych nie powinny w żaden sposób ograniczać realizacji tych celów, dlatego musimy opracować nowy, alternatywny model.

Prawdziwym wyzwaniem jest mądre zaprojektowanie nowego modelu społeczno-gospodarczego, skupiającego się na aktualnych problemach i oferującego długoterminowe rozwiązania pozwalające uniknąć najgorszego scenariusza. Strategie powinny umożliwiać zrównoważony wzrost w przyszłości i zarazem chronić środowisko i zabezpieczyć wartości humanitarne, społeczne, kulturowe i gospodarcze. W tym celu narody świata muszą się zjednoczyć i stworzyć stabilne partnerstwa.

To wizja w skali makro, która wymaga pracy zespołowej wszystkich partnerów globalnych – zespołu, który wspólnie marzy o zrównoważonej przyszłości – a także który rozwija, wdraża innowacje i stale aktualizuje wizję, aby zbudować silniejsze społeczeństwa i silniejszy świat.

Kraje rozwinięte, które stanowią blisko 5% świata, podążyły najkorzystniejszą z dostępnych im ścieżek rozwoju. Prawdziwym zagrożeniem jest skłonność pozostałych 95% krajów do podążania za modelem 5% krajów rozwiniętych. Poza katastrofalnymi zagrożeniami środowiskowymi, będzie to miało zgubne skutki w postaci zmagań narodów o pozostałe zasoby.

Który kraj, według ciebie, jest wzorcowym przykładem ADM i dlaczego?

Japonia, która jest doskonałym wzorem wśród 5% krajów rozwiniętych, została wybrana jako partner strategiczny, ponieważ jej znaczne postępy w zakresie efektywnego wykorzystywania energii i przemyślanego modelu rozwoju można było zsynchronizować z dążeniami Indii – reprezentanta pozostałych 95% państwa świata, tworząc w ten sposób realny, praktyczny i skuteczny model zrównoważonego rozwoju.

W ramach globalnego partnerstwa Indie i Japonia będą mogły wspólnie podjąć się historycznego przedsięwzięcia, polegającego na poprowadzeniu świata w kierunku nowej, innowacyjnej gospodarki opartej na badaniach i rozwoju, innowacjach technologicznych i współpracy, która pomoże znaleźć rozwiązania dla nadchodzących wyzwań. Indyjsko-Japońskie Globalne Partnerstwo zapewniłoby cykliczny przepływ inwestycji, umożliwiający stały wzrost produkcji zarówno dla gospodarek tych krajów, jak i dla światowego systemu gospodarczego. Partnerstwo ma możliwość stworzenia innowacyjnej fali w światowym cyklu produkcyjnym, prowadzącej do zrównoważonego rozwoju.

W ramach naturalnego postępu inicjatywy IJGP uświadomiliśmy sobie potrzebę zbudowania silniejszego Globalnego Partnerstwa i dostrzegliśmy, że kraje regionu nordyckiego praktykują filozofię ADM, polegającą na empatycznym rozwiązywaniu (umiejętnym rozumieniu) współczesnych problemów. Strategie w zakresie technologii, innowacji, środowiska, edukacji, opieki zdrowotnej i innych obszarów społeczno-gospodarczych wskazują, że kraje regionu nordyckiego zrozumiały znaczenie odpowiedzialnego rozwoju.

Obecnie nawiązujemy strategiczne partnerstwo z Norwegią. Przewidujemy pozytywny rozwój nie tylko w ramach bardziej kompleksowych, odpowiedzialnych oraz świadomych ekologicznie kierunków, ale także w zakresie gospodarki.

Jak pandemia COVID-19 wpływa na tę nierównowagę aspiracji i zasobów? Czy pandemia skłania czy zniechęca do przyjęcia ADM?

Jeszcze zanim pandemia nastała, nierówności w świecie były wyraźne. Sprawiła ona jednak, że stały się jeszcze bardziej widoczne. To nie tylko system opieki zdrowotnej, którego wady pandemia ujawniła, ale także błędy i luki w systemie edukacji, polityce przemysłowej, przygotowaniu w zakresie technologii cyfrowych i przywództwie.

Wiele długofalowych rozwiązań dla gospodarki i społeczeństwa będzie teraz musiało być wdrażanych na szczeblu międzynarodowym, ponieważ jest oczywiste, że globalne kryzysy wykraczają poza granice wyznaczone na mapach. Kraje muszą dążyć do wypracowania skutecznych systemów zabezpieczeń społecznych oraz powszechnego dostępu do świadczeń społecznych. Pandemia wypchnęła tę dyskusję na pierwszy plan. Świat nie może już sobie pozwolić na spychanie tej kwestii na boczny tor. Trzeba podjąć decyzje i pilnie podjąć działania.

Izolacja pozwoliła nam wszystkim zastanowić się i przyswoić pewne kwestie i cieszę się, że wiele ludzi i instytucji stało się bardziej empatycznych i bardziej świadomych. Wartości ADM odbijają się echem na całym świecie i jesteśmy przekonani, że ich przyjęcie nastąpi dużo szybciej.

Jakie lekcje przywództwa można wyciągnąć z COVID-19?

Nie ulega wątpliwości, że świat zmienił się po COVID-19, który jest wyzwaniem dla pojedynczych osób, przedsiębiorstw i społeczeństw. Jedni radzili sobie lepiej niż inni, ale ogólnie, brak odpowiedniego przygotowania był ewidentny. Przedsiębiorstwa odrobiły lekcję zarządzania ryzykiem, przygotowania cyfrowego, zarządzania zasobami, łańcuchem dostaw i znaczenia lokalizacji.

Strategie w zakresie technologii, innowacji, środowiska, edukacji, opieki zdrowotnej i innych obszarów społeczno-gospodarczych wskazują, że kraje regionu nordyckiego zrozumiały znaczenie odpowiedzialnego rozwoju.

Państwa muszą wspierać swoich obywateli w walce z nowym wrogim światem. Globalne partnerstwo i wspólna wizja oraz współdziałanie i empatia mogą wzmocnić świat, aby wspólnie stawić czoła przyszłym wyzwaniom.

Rządy, które wykorzystywały rasistowską, kastową czy populistyczną retorykę, najbardziej ucierpiały podczas tej pandemii, gdy przekonywały, że istnieją znacznie większe wyzwania do rozwiązania niż nasze drobne różnice.

Należy zająć się problemem nierówności, zbudować odpowiednią infrastrukturę, wspierać i stosować innowacje technologiczne, a co najważniejsze – zapewniać społeczeństwu dostęp do zrównoważonego rozwoju w tym nowym świecie.

Powiedziałbyś, że społeczeństwo obywatelskie cierpi z powodu koronawirusa? A może wręcz przeciwnie – paradoksalnie pandemia je wzmacnia?

Pandemia miała katastrofalne skutki dla społeczeństw na całym świecie. Świadczy o tym cierpienie - niezależnie, czy chodzi o śmierć kogoś bliskiego, czy o samą świadomość, że można stracić życie w każdej chwili lub w związku z tym, że nie wiemy, czy infrastruktura ochrony zdrowia w naszym kraju będzie wystarczająca, lub w kontekście utraty pracy w związku z kryzysem gospodarczym. Jednak czym jest człowieczeństwo, jeśli nie wytrwałością?

Ludzkość wielokrotnie demonstrowała zdolności przywódcze, które czynią ją dominującym gatunkiem tego świata. Zdolność do rozumienia, analizowania, wdrażania i ewolucji to te umiejętności, które zapewniają nam przetrwanie. Zależy to także od tych z nas, którzy umieją poprowadzić świat ku lepszej przyszłości. Wielu światowych przywódców to rozumie i ciężko pracuje, aby doprowadzić do strategicznej transformacji.

Nietzsche powiedział: „Co mnie nie zabija, czyni mnie silniejszym”. Nie mamy wyboru, musimy wyciągnąć lekcje, wzmocnić się i zmienić na lepsze.

Jak definiujesz „globalne partnerstwo”? Który z dotychczasowych szczytów globalnego partnerstwa okazał się największym sukcesem i jaki wymierny wpływ wywarły one do tej pory?

Od prawie dwóch dekad staramy się kierować działaniami na rzecz rozwoju w naszym regionie w kierunku większej odpowiedzialności i zaangażowania społecznego. Zachęceni przez władze, pracowaliśmy intensywnie nad nawiązaniem strategicznego partnerstwa z zainteresowanymi i kompetentnymi partnerami globalnymi. Pierwsza faza tej inicjatywy zakończyła się powstaniem Indyjsko-Japońskiego Globalnego Partnerstwa, które wykonało imponujące postępy i przyczyniło się do zrealizowania wielu inicjatyw na dużą skalę, w tym Korytarza Przemysłowego Delhi-Mumbai (DMIC), projektu o wartości 90 miliardów dolarów, którego celem jest ożywienie przemysłu, tworzenie miejsc pracy i promowanie zrównoważonego życia w sześciu stanach Indii.

Wiele długofalowych rozwiązań dla gospodarki i społeczeństwa będzie teraz musiało być wdrażanych na szczeblu międzynarodowym, ponieważ jest oczywiste, że globalne kryzysy wykraczają poza granice wyznaczone na mapach.

Kontynuacją tych działań jest Szczyt Globalnego Partnerstwa (GPS) - platforma do prowadzenia dialogu, a tym samym do integracji ideologii, pomysłów, inicjatyw, projektów, procesów, ludzi i działań politycznych poprzez dzielenie się wiedzą, doświadczeniem i zasobami na rzecz wspólnego celu, jakim jest stworzenie struktur Alternatywnego Modelu Rozwoju.

W duchu partnerstwa, kooperacji i włączania do życia społecznego osób, które mogą być z niego wykluczone, GPS chce ustanawiać modele rozwoju, które skoncentrują się na poprawie efektywności i zrównoważonym rozwoju.

IJGPS w 2011 r. to 9150 uczestników, 210 prelegentów, 40 sesji. Był pierwszym szczytem Globalnego Partnerstwa, który odbył się w Tokio. Druga edycja szczytu w 2017 r. (7000 uczestników, 200 prelegentów, 10 krajów, 4 dni) odbyła się w New Delhi.

A jaki będzie kolejny GPS?

Powinien skupić się na rozwinięciu i udoskonaleniu ideologii Alternatywnego Modelu Rozwoju, zapewnić kompleksową platformę, która wspomoże proces interakcji pomiędzy decydentami politycznymi, naukowcami, liderami biznesu i przedstawicielami środowisk opiniotwórczych z całego świata. Powinien stworzyć ideologię, omówić systemy i zdefiniować produkty, pobudzić gospodarkę partnerów globalnych poprzez rozwój projektów za pomocą nowych ram społeczno-gospodarczych opartych na ADM. Chcemy też rozwinąć wielowymiarowe relacje pomiędzy Globalnymi Partnerami w oparciu o zasady RME & EES. Szczegóły kolejnej edycji GPS zostaną ogłoszone w późniejszym terminie. Na tym szczycie uwzględnimy też wnioski wyciągnięte z pandemii.

Rozmawiała Marta Tumidalska

_____________________________________

Vibhav Kant Upadhyay - architekt Alternatywnego Modelu Rozwoju (ADM) i nowoczesnego partnerstwa indyjsko-japońskiego, w ramach którego powstał Korytarz Przemysłowy Delhi-Bombaj (DMIC). Jest założycielem i przewodniczącym różnych organizacji, w tym Organizacji Alternatywnego Rozwoju (ADO) w Oslo, Fundacji Indie-Japonia (IJF) z siedzibą w Tokio i Fundacji Centrum Indii (ICF) w Nowym Delhi. Jest również założycielem Global Partnership Summit (GPS), platformy służącej do rozwijania ram alternatywnego modelu rozwoju (ADM), koncentrując się na obszarach takich jak: infrastruktura, opieka zdrowotna, rolnictwo, edukacja, środowisko i sprawiedliwość społeczna.

Jarosław Kułak
Jarosław Kułak

Leave a Comment