Michał

Zapanuj nad monitorami w Macu

Z jakiegoś powodu, mój mac po wybudzeniu z uśpienia lub podłączeniu na nowo monitorów, nie potrafi zapamiętać, w jakiej konfiguracji powinny się znajdować. Przestawianie ich ręcznie, albo odłączanie i podłączanie na nowo, aż w końcu znajdą się w takim ustawieniu, jak powinny, jest denerwujące i uciążliwe. Szczególnie jeśli trzeba to robić kilka razy dziennie.

Na szczęście, udało mi się znaleźć na to prosty sposób. Istnieje mały program, który umie zapamiętać ustawienie monitorów, a następnie je odtworzyć. Można nawet stworzyć kilka różnych konfiguracji, jeśli na przykład w biurze i w domu mamy inne ustawienie monitorów. Program nazywa się displayplacer i możemy go zainstalować przez homebrew:

brew tap jakehilborn/jakehilborn && brew install displayplacer

Gdy już jest zainstalowany, tworzymy skrypt, który będzie odpowiedzialny za ustawienie monitorów. Wydajemy polecenie displayplacer list. Polecenie wypisze nam wszystkie dostępne tryby monitora, a na koniec wypisze polecenie, które ustawi monitory w aktualnej konfiguracji. Polecenie zapisujemy do pliku .sh tak, aby później można było go uruchomić i ustawić monitory jak trzeba.

Czytaj więcej »Zapanuj nad monitorami w Macu
Amazon Web Services

AWS Free Tier – darmowy hosting aplikacji lub strony na AWS

AWS w ramach Free Tier udostępnia nam wiele swoich usług za darmo. Niektóre usługi są dostępne w ramach darmowego pakietu przez rok, niektóre są darmowe na zawsze. Oczywiście obowiązują przy tym limity, jednak są one na tyle duże, że spokojnie możemy wykorzystać taką infrastrukturę na start projektu. Czyli dostajemy za darmo, bardzo dobrej jakości usługi, na których możemy oprzeć nasz biznes. W poście postaram się pokazać, jak dużo możemy zmieścić w darmowych limitach, jakie usługi możemy wykorzystać (w tym przypadku do hostowania projektu) i ile to będzie kosztować po roku.

Czytaj więcej »AWS Free Tier – darmowy hosting aplikacji lub strony na AWS

Java 14 – Co nowego w kolejnym wydaniu?

Java 14 jest już za rogiem. Według oficjalnego planu powinna trafić do nas 17 marca 2020 roku, a wraz z nią szereg nowości. Co zatem znajdziemy w 14 wersji naszego ulubionego języka programowania? 🙂

Wszystkie funkcjonalności opisane są jako JEP – Java Enhancement Proposal. Lista wszystkich JEPów znajduje się poniżej wraz z linkami do krótkiego opisu. W opisie znajduje się też odnośnik do oryginalnej dokumentacji na stronie OpenJDK.

Czytaj więcej »Java 14 – Co nowego w kolejnym wydaniu?

Java 14 – Record classes

Wydanie nowej wersji Javy zostało zaplanowane na 17 marca 2020. Wśród zapowiedzianych nowości znajdują się rekordy (records). Mają one służyć do przechowywania płytkiego, niemutowalnego stanu aplikacji. Co to oznacza w praktyce? Przede wszystkim mniej powtarzalnego kodu który musi wygenerować i utrzymać programista.

Funkcjonalność ta jest opisana jako Java Enhancement Proposal 359 (JEP359). W 14 wersji języka wejdzie ona jako preview. Oznacza to w pełni działająca funkcjonalność która w przyszłych wersjach może się zmienić lub nawet zostać całkowicie usunięta. Wszystko w zależności od informacji zwrotnej od programistów którzy zdecydują się jej używać.

Czytaj więcej »Java 14 – Record classes
Spring Mail

Spring Mail + Spring Boot – łatwe wysyłanie maili z aplikacji w Javie

Duża ilość tworzonych aplikacji potrzebuje w którymś momencie wysłać maila do użytkownika. Czy to maila rejestracyjnego, czy jakieś inne powiadomienie dla użytkownika. W Spring Boocie jest do tego odpowiedni moduł (Spring Boot Starter Mail) który nam to bardzo ułatwia. W tym poście przedstawię jak go skonfigurować i użyć w przykładowym projekcie.

Czytaj więcej »Spring Mail + Spring Boot – łatwe wysyłanie maili z aplikacji w Javie
Switch expressions

Switch expressions w Java 13 – nowa składnia switchy

Switch expressions to kolejna z nowości w Javie 13. Dzięki tej zmianie, kod może wyglądać dużo prościej i czytelniej, a co za tym idzie będzie się pojawiać mniej błędów. Wciąż jest to wersja preview funkcjonalności, która pojawiła się w Javie 12. Jednak po feedbacku ze strony programistów doczekała się kilku zmian. W nowej odsłonie języka zdecydowano się pozostawić ją nadal jako preview tego co nas czeka w kolejnych wydaniach.

Całość zmian opisana jest w JEP 354 (JEP – Java Enhancement Proposal). Wspominałem też o tych zmianach w poprzednim wpisie o wszystkich nowościach w Javie 13. Jednak jest to dość obszerny i ciekawy temat, więc zdecydowałem się poświęcić mu osobny wpis. Pokażę w nim jak używać nowej składni oraz jakie zmiany zaszły w wykorzystaniu starej na różnych przykładach. Dodam też porównanie jak by to wyglądało przed wprowadzeniem zmian.

Czytaj więcej »Switch expressions w Java 13 – nowa składnia switchy

Text Blocks Java 13 – czyli bloki tekstu w kodzie

  • Michał 
  • Java

Text Blocks to jedna z nowych funkcjonalności która weszła jako preview w Javie 13. Oznacza to, że jest to nowy element języka, w pełni wyspecyfikowany, w pełni zaimplementowany, ale może zostać jeszcze zmieniony po informacji zwrotnej od developerów którzy zaczną z niej korzystać.

O blokach tekstu wspomniałem już w poprzednim artykule o wszystkich nowościach w Javie 13: https://blog.mloza.pl/java-13-nowe-funkcjonalnosci-szczesliwej-trzynastki/. W tym poście postaram się napisać szerzej i podać więcej przykładów wykorzystania. Cała specyfikacja jest dostępna tutaj: JEP 335.

Bloki tekstu ułatwiają pracę z wielolinijkowymi Stringami. Nie trzeba ich konkatenować żeby dobrze wyglądały i nie psuły czytelności kodu. Nie musimy dodawać specjalnych znaków do łamania linii. Nasz kod też będzie lepiej wyglądał ponieważ możemy dodać wcięcia w kodzie które zostaną usunięte w preprocesingu. Jeśli programowałeś w innych językach (np. w Pythonie) to powinieneś być zaznajomiony z tą koncepcją.

Czytaj więcej »Text Blocks Java 13 – czyli bloki tekstu w kodzie

Java 13 – nowe funkcjonalności sczęśliwej trzynastki

17 września pojawiła się nowa wersja Javy oznaczona numerkiem 13. Mam nadzieję, że nie będzie to pechowa wersja i będzie działać jak trzeba. Java 13 wprowadza kilka nowych funkcjonalności. Poniżej możesz znaleźć listę JEPów (Java Enhancement Proposal) wprowadzonych w nowym wydaniu wraz z odnośnikami do oryginalnych opisów.

Czytaj więcej »Java 13 – nowe funkcjonalności sczęśliwej trzynastki

Wyłączenie przechwytywania klawiszy multimedialnych przez Chrome

Po którejś aktualizacji przeglądarki Chrome zauważyłem, że klawisze do sterowania multimediami przestały być obsługiwane przez Spotify. Nie mogłem już zatrzymywać odtwarzania ani przełączać piosenek, zamiast tego sterowało to YouTubem otwartym gdzieś w którejś zakładce, o której najczęściej już dawno zapomniałem. Tak samo działo się ze sterowaniem klawiszami znajdującymi się przy słuchawkach. Było to denerwujące gdy zamiast zatrzymać odtwarzanie piosenki, nagle włączał się totalnie losowy filmik umieszczony na którejś z otwartych kart przeglądarki. Oddziaływało to również na jakieś filmiki reklamowe zamieszczane na stronach, więc często w losowych momentach traciłem panowanie nad odtwarzaczem. Na szczęście można bardzo łatwo wyłączyć tę funkcjonalność i znów cieszyć się możliwością sterowania wcześniej używanym odtwarzaczem muzyki.

Czytaj więcej »Wyłączenie przechwytywania klawiszy multimedialnych przez Chrome