Skip to content
← Wszystkie wpisy

Wpisy z tagiem #ruby

7 min czytania

AI-native Rails stack w 2026

Poskładaj to razem — Solid Stack bez Redisa, Kamal, pgvector i wypracowane w praktyce zasady budowania z LLM — a wyłania się spójny obraz: Rails to znakomite środowisko dla aplikacji AI-native, właśnie dlatego, że pozwala małemu zespołowi budować i uruchamiać zarówno aplikację, jak i jej funkcje AI. Synteza tego, w którym miejscu ten stos się dziś znajduje.

5 min czytania

Ruby 3.5 i stan YJIT oraz ZJIT

Historia JIT Ruby po cichu stała się jedną z najciekawszych rzeczy w języku. Z Ruby 3.5 YJIT jest dojrzały i rozsądnym domyślnym — a nowy JIT oparty na metodach, ZJIT, wyłania się obok niego. Spojrzenie na koniec roku na to, gdzie stoi praca wydajnościowa Ruby i dlaczego posiadanie dwóch podejść JIT to zdrowy znak.

6 min czytania

Ruby 3.4 i długa droga do zamrożonych literałów łańcuchowych

Ruby 3.4 robi ostrożny krok ku zmianie tworzonej od dekady: uczynieniu literałów łańcuchowych zamrożonymi domyślnie. Mechanizm przejścia — „schłodzone” łańcuchy, które ostrzegają zamiast łamać — to mała lekcja mistrzowska ewolucji języka bez łamania świata. Spojrzenie na to, dlaczego zamrożone łańcuchy i jak Ruby dochodzi tam łagodnie.

5 min czytania

Ruby 3.3: YJIT przyspiesza, a Prism przepisuje parser

Nagłówkiem Ruby 3.3 jest szybszy, dojrzalszy YJIT — ale cichszą, bardziej brzemienną zmianą jest Prism, nowy parser tolerujący błędy, który staje się standardem. Spojrzenie na to, co jest w tegorocznym świątecznym wydaniu, co dostajesz za darmo i dlaczego nowy parser ma większe znaczenie, niż brzmi.

6 min czytania

Function calling: pozwól modelowi używać twoich narzędzi

Function calling pozwala LLM-owi poprosić twój kod o uruchomienie funkcji i skorzystanie z wyniku — model, który umiał tylko mówić, zaczyna wyszukiwać dane i działać. Szczegółowo o tym, jak to naprawdę działa, dlaczego to po prostu ustrukturyzowany output z pętlą dookoła i dlaczego to ty w pełni kontrolujesz, co się faktycznie uruchamia.

6 min czytania

Strumieniowanie odpowiedzi LLM z Turbo Streams

Wywołanie LLM trwa sekundy, a użytkownik gapiący się na spinner czuje każdą z nich. Strumieniowanie tokenów w miarę ich generowania zamienia martwe oczekiwanie w żywy tekst — a Turbo Streams to dokładnie ten prymityw Railsów, który wypycha ten tekst na stronę. Deep-dive o podłączeniu wolnego wyjścia modelu do responsywnego UI.

4 min czytania

Ruby 3.1: YJIT ląduje i nowy debugger

Ruby 3.1 przybywa w Boże Narodzenie z YJIT — nowym JIT od Shopify, który wreszcie przyspiesza realne obciążenia Rails, nie tylko benchmarki — plus nowoczesny debugger, lepsze komunikaty błędów i wygodną składnię. Praktyczny przegląd.

5 min czytania

Zasady SOLID w systemie tradingowym

SOLID może brzmieć jak zbiór pustych akronimów, dopóki system nie urośnie na tyle, żeby ukarać cię za ich ignorowanie. Opowieść z praktyki o zastosowaniu tych pięciu zasad w systemie tradingowym — gdzie każda z nich naprawdę się sprawdziła, a dogmatyczne trzymanie się ich tylko by zaszkodziło.

4 min czytania

Ruby 2.6: podgląd JIT i nieskończone zakresy

Ruby 2.6.0 ukazuje się w Boże Narodzenie z pierwszym krokiem ku kompilatorowi JIT — dużą sprawą dla przyszłości Ruby — plus nieskończone zakresy, then jako alias dla yield_self i Bundler w bibliotece standardowej. Praktyczny przegląd.

5 min czytania

GraphQL w Ruby: API od schematu

GraphQL pozwala klientowi poprosić dokładnie o dane, których potrzebuje, rozwiązując over- i under-fetching REST. Deep-dive o graphql-ruby — typy, zapytania, mutacje, resolvery — pułapka N+1, którą tworzy, i uczciwe spojrzenie na GraphQL vs REST.

4 min czytania

Wgrywanie plików z ActiveStorage

Rails 5.2 wreszcie umieszcza wgrywanie plików we frameworku z ActiveStorage. Przegląd tego, jak działa — bloby, załączniki, backendy usług, warianty i bezpośrednie uploady — oraz uczciwe porównanie z CarrierWave i Paperclip.

4 min czytania

Ruby 2.5: rescue w blokach i szybszy boot

Ruby 2.5.0 ląduje w Boże Narodzenie z garścią praktycznej ergonomii — rescue/ensure wprost w blokach do/end, yield_self, Hash#slice — plus szybszy start i przekazywanie bloków. Praktyczny przegląd.

4 min czytania

Ruby 2.4: ujednolicony Integer i szybsze hashe

Ruby 2.4.0 przybywa w Boże Narodzenie z dawno spóźnionym porządkiem — Fixnum i Bignum scalone w jeden Integer — plus szybszy Hash, Enumerable#sum, Regexp#match? i binding.irb. Praktyczny przegląd.

5 min czytania

Refaktoryzacja ku heksagonalnym Railsom

Rails to świetny mechanizm dostarczania i kiepskie miejsce na logikę biznesową. Deep-dive o architekturze heksagonalnej w Railsach — porty i adaptery, izolacja domeny od frameworka i jak daleko to ciągnąć, zanim stanie się przeinżynierowaniem.

4 min czytania

Deploye Capistrano bez łez

Capistrano automatyzuje wdrożenie po SSH z atomowymi releasami i rollbackiem na jedną komendę. Praktyczny przewodnik po modelu releases/current, plikach współdzielonych, łańcuchu zadań Rails, konfiguracji multistage i pułapkach wartych poznania.

5 min czytania

Zadania w tle z Sidekiq i Redis

Sidekiq przetwarza zadania w tle wątkami i Redisem, i jest szybki — ale szybkość przychodzi z regułami. Deep-dive o tym, jak działa, dlaczego twoje zadania muszą być małe i idempotentne i jak przeżyć ponawiania oraz współbieżność.

4 min czytania

Ruby 2.2: inkrementalny GC i GC symboli

Ruby 2.2.0 przybywa w Boże Narodzenie z dwoma usprawnieniami garbage collectora ważnymi dla realnych aplikacji — inkrementalnym GC skracającym pauzy i GC symboli, który wreszcie zamyka długotrwały wyciek pamięci i wektor ataku DoS.

4 min czytania

Blog programisty z Jekyllem i GitHub Pages

Dlaczego strona statyczna to właściwe narzędzie na blog programisty i jak zbudować go z Jekyllem oraz hostować za darmo na GitHub Pages — front matter, layouty Liquid, posty w Markdownie i pisanie w tym samym workflow, którego już używasz do kodu.

5 min czytania

Dowodzenie flotą EC2 z konsoli

Klikanie po konsoli AWS nie skaluje się poza garstkę serwerów. Jak sterujemy flotą EC2 z Ruby — deklarując instancje jako dane, uzgadniając stan pożądany z faktycznym i tagując się ku zdrowiu psychicznemu.

7 min czytania

Własny, szyfrowany pęk kluczy do haseł w Ruby

Weekendowy projekt: maleńki sejf na hasła z linii poleceń oparty na Ruby i OpenSSL. Rzetelny przegląd wyprowadzania kluczy, IV, szyfrowania z uwierzytelnieniem, porównania w czasie stałym — i każdego sposobu, w jaki da się kryptografię po cichu i z pewnością siebie zepsuć.