RustyKube

RustyKube to prosta aplikacja napisana w języku Rust, jej celem było przede wszystkim zaznajomienie się z technologią Kubernetes. Aplikacja składa się z trzech części: bazy danych, backendu i frontendu. Kubernetes Zainteresowałem się skalowaniem aplikacji i postanowiłem pobawić się technologią Kubernetes, mogłem oczywiście uruchomić jakąś przykładową aplikację ale stwierdziłem że wolę napisać swoją prostą aplikację, w której będę mógł dorzucić sobie jakieś dodatkowe dane, gdybym miał potrzebę a i w przyszłości, gdyby zainteresowała by mnie jakaś technologia to mógłbym sobie ją zmodyfikować 🙂 Aplikacja jest uruchomiona na platformie Google Cloud przy pomocy Google Kubernetes Engine. Aplikacja posiada skonfigurowany CI/CD więc każda aktualizacja w repozytorium powoduje automatyczne wdrożenie w GCP. ...

środa 28 czerwca 2023 · 2 min · 383 słów · Maciej Karpiński

Rust Action RPG

Rust Action RPG Tutorial jest portem świetnego tutoriala stworzonego przez HeartBeast, gdzie pokazuje jak stworzyć prostą grę rpg przy użyciu silnika Godot. Założenia Niedługo przed rozpoczęciem prac nad tym projektem zainteresowałem się językiem 🦀 Rust 🦀, który mnie oczarował od samego początku. Po przerobieniu podstaw stwierdziłem że trzeba się wziąć za cos większego - zawsze mi lepiej nauka programowania wychodziła na większych projektach, gdzie musiałem sam znaleźć rozwiązanie problemu(chociażby podstawowego) niż przerabianie książek czy innych źródeł gdzie autor tłumaczy koncepcje języka lub jego składnie. W tym samym czasie jakoś przypadkiem trafiłem na parę filmików dotyczących silnika Godot na kanale Gamefromscratch i postanowiłem połączyć naukę dwóch rzeczy jednocześnie. ...

wtorek 14 marca 2023 · 2 min · 263 słów · Maciej Karpiński

Cookbook

Cookbook jest aplikacją webową i desktopową umożliwiającą przeglądanie, wyszukiwanie i zapisywanie przepisów na dania i koktajle. Celem projektu było zaprojektowanie i zbudowanie aplikacji, które będą konsumowały zewnętrzne API i synchronizowały między sobą stan użytkownika. Dodatkowym kryterium miało być zastosowanie poznanych wzorców projektowych i jak największe pokrycie kodu testami. Aplikacja desktopowa miała być natywna, było zakazane wykorzystanie technologii WebView (żeby nie robić wrappera aplikacji webowej). Aplikacje wykonane na laboratorium z przedmiotu “Zaawansowane metody programowania” w semestrze letnim 2020/2021. ...

czwartek 9 marca 2023 · 3 min · 592 słów · Maciej Karpiński

HotScrew - Klon Tindera dla robotów!

HotScrew jest mobilną aplikacją, umożliwiającą robotom znalezienie swojej drugiej połówki i umówienie się z nią na randkę przy pomocy wbudowanego czatu. Wzorem przy projektowaniu i programowaniu była aplikacja Tinder. HotScrew dostępna jest na smartfony z systemem operacyjnym Android. Zastosowana technologia umożliwia przy niewielkiej modyfikacji zbudowanie działającej aplikacji na smartfony z systemem iOS lub aplikacji webowej. Aplikacja wykonana na laboratorium z przedmiotu “Programowanie aplikacji mobilnych” w semestrze zimowym 2021/2022. ...

niedziela 26 lutego 2023 · 3 min · 602 słów · Maciej Karpiński

Domowy serwerk

Projekt domowego serwera chodził mi po głowie już od dłuższego czasu, ale z różnych powodów ciągle go odkładałem na później. Projekt w końcu zrealizowałem w 2021/2022 na potrzeby pracy dyplomowej, której celem była budowa domowego serwera multimediów i plików. Promotorem pracy był dr inż. Zbigniew Fryźlewicz. Wymagania pracy dyplomowej: System operacyjny: Linux Serwer multimediów (strumieniowanie muzyki/filmów) Serwer e-booków Serwer plików z możliwością konwersji audio i wideo Hardware Chciałem, żeby urządzenie było w miarę kompaktowe i energooszczędne, więc początkowo rozglądałem się za płytami głównymi w formacie mini i nano ITX, ale wtedy trafiłem na kilka artykułów i filmów przedstawiających realizację podobnych projektów na RaspberryPi. Wcześniej nie miałem okazji „pobawić” się SBC – zawsze uważałem je za gadżet więc i nie wiedziałem jak bardzo pod względem możliwości rozwinęła się ta część IT. Wybór SBC powodował, że jednocześnie miałem załatwioną kwestię niskiego zużycia energii i zachowania kompaktowych wymiarów, z drugiej strony SBC często wykorzystują procesory o architekturze ARM a ta poza telefonami z androidem była dla mnie zupełnie nieznana. Zmiana architektury nie byłaby dla mnie minus a wręcz plusem, w końcu mógłbym zrobić coś nowego niż złożenie kolejnego zestawu na x86-64, poprzedni raz taką zmianę w architekturze dokonałem w okolicach 2000r gdzie przesiadłem się z Amigi 600 na PC. Dużym minusem wszystkich SBC, jakie oglądałem była mała liczba (max 2) lub całkowity brak portów SATA, co uniemożliwiało utworzenie sensownej macierzy dyskowej, a którą mimo braku w wymaganiach chciałem mieć. Szukając informacji jak sensownie podłączyć (nie przez USB!) większą ilość dysków trafiłem na SBC RockPi4 i nakładki Quad i Penta SATA Kit, obie nakładki pozwalają na podłączenie 4 dysków(5 w przypadku Penta) co już pozwala na utworzenie macierzy RAID 5, a to już mnie zadowalało. Kolejnym elementem był wybór twardych dysków, chciałem, żeby były to dyski 2,5” i żeby cena za 1GB była jak najmniejsza. Wybór padł więc na dedykowane dla systemów NAS dyski WD Red Plus o pojemności 1TB z myślą o przyszłej wymianie na pojemniejsze dyski SSD – gdy ich ceny będą korzystniejsze. ...

niedziela 5 lutego 2023 · 5 min · 894 słów · Maciej Karpiński

Strona WWW

Prosta strona stworzona przy użyciu Hugo i motywu PaperMod w celu zebrania w jednym miejscu informacji na temat projektów, w których brałem udział.

piątek 27 stycznia 2023 · 1 min · 23 słów · Maciej Karpiński