REKLAMA

Programista 5/2019 (84) – wrzesień 2019 – Własny Linux na Raspberry Pi – SPIS TREŚCI

Zapraszamy do zamówienia magazynu w >>prenumeracie<<. Miesięcznik jest dostępny w formie papierowej, PDF, EPUB i MOBI oraz AZW3. Do prenumeraty papierowej zawsze dołączamy wydania elektroniczne.

BIBLIOTEKI I NARZĘDZIA

Zarządzanie sesjami RDS, czyli PowerShell do zadań specjalnych

Każdy, kto spotkał się z usługami pulpitu zdalnego od Microsoftu, szybko zdał sobie sprawę, że o ile samo rozwiązanie wdrożone prawidłowo działa zgodnie z założeniami, o tyle zarządzanie sesjami użytkowników z poziomu proponowanych przez MS narzędzi jest, nazwijmy to delikatnie,… uciążliwe. W artykule zaprojektujemy i napiszemy nowocześnie wyglądającą aplikację graficzną, która pozwoli nam podglądać, kontrolować i wylogowywać sesje. Postaramy się także uzyskać więcej informacji o użytkownikach.

Michał Zbyl

Jak pisać skrypty w PowerShellu

Trzeba uczciwie powiedzieć, że przez bardzo długi czas Microsoft pozostawał daleko w tyle za konkurencją w kwestii konsolowego interpretera poleceń. Cmd, którego poprzednikiem był leciwy command.com, udostępniał wprawdzie szereg komend oraz język umożliwiający pisanie mniej lub bardziej zaawansowanych skryptów, ale w porównaniu – powiedzmy – do Basha wypadał naprawdę blado. W 2006 roku Microsoft postanowił ruszyć sprawy do przodu i 14 listopada opublikował pierwszą wersję PowerShella.

Wojciech Sura

Bulk – synchroniczne programowanie równoległe

Nie jest tak, że brakuje nowych języków programowania czy innych bibliotek wspierających różne aspekty tworzenia programów. Można nawet powiedzieć, iż jest tego za dużo, jednakże zawsze lepiej mieć więcej narzędzi do wyboru niż mniej. W myśl tej zasady warto zapoznać się z biblioteką Bulk.

Marek Sawerwain

JĘZYKI PROGRAMOWANIA

Statyczne wyjątki C++ (>>więcej o tym artykule<<)

Każdy język programowania ma swój określony, rekomendowany sposób na obsługę błędów. W Javie są to wyjątki, w języku Rust pomocnicze typy, takie jak Error czy Option. W C z kolei najpopularniejszym sposobem obsługi błędów jest tzw. „kod błędu”. A co z językiem C++? Na to pytanie odpowiemy sobie właśnie w tym artykule, zwracając szczególną uwagę na obecne prace grupy standaryzacyjnej w zakresie obsługi błędów.

Dawid Pilarski

Pułapki języka C

Język C powstał w 1972 roku, brakuje mu więc tylko trzech lat do osiągnięcia półwiecza istnienia w świecie informatyki. Czy doświadczonego programistę języka C można jeszcze czymś zadziwić? W tym artykule postaram się pokazać, że tak, i zaskoczyć czytelnika między innymi znanymi i nieznanymi właściwościami języka, które mogą dać niespodziewany rezultat. Będę posługiwał się uproszczonymi przykładami, które w podobnej postaci napotkałem w kodzie produkcyjnym.

Krzysztof Kanas

PROGRAMOWANIE SYSTEMÓW OSADZONYCH

Własny Linux dla Raspberry Pi (>>więcej o tym artykule<<)

Najszybszym i najprostszym sposobem rozpoczęcia przygody z Raspberry Pi jest uruchomienie gotowego obrazu karty SD, który można pobrać ze strony producenta. Ponieważ jednak nie dla wszystkich komputerów wbudowanych taka opcja jest dostępna, warto zobaczyć, w jaki sposób można utworzyć swoją dystrybucję. Pozwoli to na lepsze zrozumienie działania systemu operacyjnego.

Rafał Kozik

PROGRAMOWANIE APLIKACJI WEBOWYCH

Wyszukiwanie wizualne, czyli najbardziej pożądana funkcjonalność w Internecie

W przeciwieństwie do komputerów ludzie przetwarzają obrazy łatwiej i szybciej niż tekst. Użytkownicy stają się niecierpliwi i oczekują, że technologia będzie im czytać w myślach, zapewniając dopasowane treści. Programiści mają coraz więcej możliwości pracy z uczeniem maszynowym i coraz lepsze narzędzia. Przyjrzyjmy się dokładniej wyszukiwaniu wizualnemu: jak i gdzie działa, dlaczego zyskuje na popularności i jak można zaimplementować je samodzielnie.

Aleksandra Kunysz

PROGRAMOWANIE W CHMURZE

AWS Lambda. Tworzenie usług i aplikacji typu serverless

Programowanie w chmurze z wykorzystaniem architektury serverless stanowi jeden z kluczowych elementów tworzenia nowoczesnych systemów informatycznych. Projektowanie rozwiązań w oparciu o gotowe, automatycznie skalowalne usługi umożliwia nam, developerom, koncentrowanie się na implementacji naszych pomysłów bez konieczności aprowizacji serwerów, instalowania systemów operacyjnych czy dbania o kopie zapasowe. W tym artykule pokażę, w jaki sposób utworzyć rozbudowane rozwiązanie serverless dla Internet of Things, złożone z emulatorów IoT, mechanizmu składowania danych, ich analizy w czasie rzeczywistym oraz prezentacji w witrynie hostowanej w chmurze. Do tego celu wykorzystam usługi od Amazon Web Services, a w tym AWS Lambda, Amazon Simple Notification Service, AWS IoT Core, Amazon API Gateway, Amazon DynamoDB i Amazon S3.

Dawid Borycki

BEZPIECZEŃSTWO

Bezpieczeństwo jednostek (>>więcej o tym artykule<<)

23 września 1999 roku platforma Mars Climate Orbiter w trakcie wchodzenia na orbitę Marsa wykonała manewr, którego celem było ustawienie jej na wysokości 140–150 km nad powierzchnią planety. Manewr ten niestety nie miał szans się powieść, ponieważ sonda znajdowała się już wówczas na wysokości 57 km. Wbrew pierwotnym założeniom weszła ona w atmosferę Marsa, a następnie – chociaż tego dokładnie już nie wiemy – rozbiła się na planecie lub wróciła na heliocentryczną orbitę po opuszczeniu atmosfery, niestety już tylko jako kilkaset kilogramów bezużytecznego złomu.

Wojciech Sura

Jak mnie słyszą, tak mnie piszą, czyli jak głos buduje wizerunek

Na podstawie ludzkiego głosu jesteś w stanie określić, z jaką osobą rozmawiasz. Płeć, przybliżony wiek, słyszysz, czy osoba jest zdrowa, czy przeziębiona, w jakim jest nastroju. Oceniasz jej osobowość, słyszysz, czy jest osobą zdecydowaną, konkretną, dominującą. Oceniają nas ludzie i oceniają nas maszyny. Pisząc odpowiednie algorytmy, nauczyliśmy maszyny rozumienia ludzkich emocji, oceniania naszego stanu zdrowia, a także sprawdzania lojalności wobec pracodawcy. Jak zatem radzić sobie z głosem, aby i ludzie, i maszyny miały o nas jak najlepsze zdanie?

Monika Malinowska

KLUB DOBREJ KSIĄŻKI

Człowiek vs Komputer

Rafał Kocisz