Dla devów, którzy shipują sami

Oprogramowanie do feature flag, wybrane bez hype'u

Porównaj oprogramowanie do feature flag pod kątem tego, czego naprawdę potrzebuje solo dev albo mały zespół, a potem zaplanuj projekt wart schowania za flagą. Za darmo, bez rejestracji.

Ciemne biurko dewelopera w nocy: laptop i monitory z kodem oraz panelem feature flag
Do czego ludzie to zatrudniają

Cztery zadania, do których służy feature flag

Wdrażaj w ukryciu, wypuszczaj później

Wrzucaj niedokończoną pracę do main za flagą. Wdrożenie kodu i wydanie funkcji przestają być tym samym zdarzeniem, przez co merge w piątek boli dużo mniej.

Wdrażaj stopniowo

Włącz funkcję dla siebie, potem dla 5% użytkowników, potem dla wszystkich. Jeśli wskaźnik błędów rośnie, zatrzymujesz się na 5%, zamiast przepraszać wszystkich.

Wyłącznik awaryjny w kilka sekund

Kapryśną integrację zewnętrzną albo wolne zapytanie można wyłączyć z panelu. Bez rollbacku, bez redeployu, bez hotfixa o 3 w nocy.

Testuj na prawdziwych użytkownikach

Serwuj dwa warianty, mierz jedną metrykę, zostaw zwycięzcę. Niektóre narzędzia mają eksperymenty w pakiecie, inne zostawiają to Twojemu stosowi analitycznemu.

Porównanie

Cztery narzędzia, uczciwe różnice

Wybieraj najpierw po modelu hostingu i licencji. Ceny zmieniają się często, więc przed zakupem sprawdź limity na stronie każdego dostawcy.

KryteriumLaunchDarklyPostHogGrowthBookUnleash
LicencjaZastrzeżonaMITMITApache
Opcja self-hostNieTakTakTak
Darmowy planTak, z limitem zużyciaTak, 1M żądań flag miesięcznieTak w chmurze, self-host za darmoZa darmo w self-host
Wbudowane eksperymentyTakTak, w chmurzeTakOgraniczone
Najlepiej pasuje doZespołów, które chcą zarządzanego produktu enterpriseZespołów, które chcą też analitykę produktuZespołów, którym zależy na testach A/BZespołów, które potrzebują suwerenności danych
Przypadek użycia

Nie wdrażaj narzędzia, zanim nie masz ryzykownej funkcji

Typowy błąd to instalowanie oprogramowania do feature flag w projekcie, w którym nie ma czego oflagować. Flaga zwraca się wtedy, gdy istnieje zmiana, którą wahałbyś się wypuścić wszystkim: przepływ płatności, migracja danych, funkcja AI o nieprzewidywalnym koszcie. Jeśli nie umiesz wskazać takiej zmiany, na razie wystarczy boolean w zmiennej środowiskowej. Generator na whatshouldibuildnext.com zamienia surowy pomysł w specyfikację z sugerowanym stosem i jedną albo dwiema funkcjami niosącymi realne ryzyko, więc wiesz, co oflagować, zanim wybierzesz dostawcę.

  • Za darmo, działa po stronie klienta, bez rejestracji
  • Wskazuje funkcje, które są ryzykowne w wydaniu
  • Sugeruje stos wspierający Twój SDK flag
Wypróbuj generator
Dłonie dewelopera na klawiaturze, na ekranie diff kodu w ciemnym pokoju
Hosting

Hostowane czy self-hosted: wybierz mniejsze obciążenie

Narzędzia open source do flag są darmowe w sensie licencji, a nie w czasie. Self-hosting oznacza bazę danych do backupu, usługę, którą trzeba utrzymać przy życiu, i ścieżkę aktualizacji do pilnowania, a wszystko to dla systemu, od którego kod produkcyjny zależy przy każdym żądaniu. Hostowane narzędzia zdejmują to z głowy, a ich darmowe plany są wystarczająco hojne dla większości side projectów. Wybieraj self-hosting, gdy rezydencja danych albo koszt za żądanie wymuszają decyzję, a nie dlatego, że brzmi bardziej jak indie hacking. Cokolwiek wybierzesz, koduj przez OpenFeature, żeby wybór dało się cofnąć.

  • Hostowane: bez serwerów, płatność za zużycie
  • Self-hosted: brak opłaty za żądania, uptime masz na głowie
  • OpenFeature pozwala zmienić dostawcę
Szkic planu wydania rozdzielający się na dwie ścieżki obok laptopa
Pierwsze kroki

Od zera do funkcji pod flagą

  1. 1

    Nazwij ryzykowną zmianę

    Wybierz jedną funkcję, która mogłaby Cię zranić, gdyby poszła zepsuta. To Twoja pierwsza flaga, nie wszystkie dwadzieścia.

  2. 2

    Zacznij od darmowego planu

    Załóż konto albo uruchom lokalnie obraz open source, weź klucz SDK i podepnij jedną flagę w osobnym branchu.

  3. 3

    Domyślnie wyłączone

    Ustaw bezpieczne zachowanie jako fallback, żeby nieudane pobranie flagi nigdy nie odsłoniło niedokończonego kodu.

  4. 4

    Wdrażaj etapami

    Najpierw Ty, potem mały procent, potem wszyscy. Obserwuj błędy i opóźnienia między krokami.

  5. 5

    Usuń flagę

    Gdy funkcja stoi na 100% i jest stabilna, usuń flagę i martwą ścieżkę kodu w jednym pull requeście.

FAQ

Częste pytania

Czym jest oprogramowanie do feature flag?
To narzędzie, które pozwala włączać i wyłączać ścieżki kodu w czasie działania, bez ponownego wdrażania. Zawijasz ryzykowną zmianę we flagę, wdrażasz ją wyłączoną, potem włączasz dla siebie, dla procenta użytkowników albo dla wszystkich, a w razie awarii wyłączasz natychmiast.
Czy na solo side projekcie potrzebuję oprogramowania do feature flag?
Zwykle nie w pierwszym dniu. Boolean w zmiennej środowiskowej załatwia sporo. Sięgnij po prawdziwe narzędzie, gdy potrzebujesz targetowania per użytkownik, stopniowych wdrożeń albo wyłącznika awaryjnego, który da się przełączyć bez dotykania serwera.
Czy istnieje darmowe narzędzie do feature flag?
Tak. LaunchDarkly, PostHog, GrowthBook, Flagsmith i Statsig mają darmowe plany, a Unleash, GrowthBook, Flagsmith i PostHog mają wersje open source, które można hostować samemu. Limity i ceny się zmieniają, więc sprawdź stronę cennika przed zakupem.
Hostować samemu czy korzystać z usługi hostowanej?
Hostowane oznacza brak serwerów do łatania i flagi ewaluowane za Ciebie. Self-hosted oznacza brak opłaty za żądania i pełną kontrolę nad danymi, ale to Ty prowadzisz bazę i uptime. Przy side projekcie darmowe plany hostowane zwykle dają mniej roboty.
Czym jest OpenFeature i czy to ma znaczenie?
OpenFeature to niezależne od dostawcy API do ewaluacji flag. Jeśli kodujesz przez nie, zmiana dostawcy później oznacza wymianę wtyczki providera, a nie przepisywanie każdego wywołania flagi. To tania polisa na wypadek lock-in.
Jak zapobiec zalegającym starym flagom?
Przy tworzeniu każdej flagi przypisz właściciela i datę usunięcia. Flagę, która od kilku tygodni stoi na 100%, traktuj jak dług: usuń flagę i martwą gałąź kodu w tym samym pull requeście.
Co zbudować, żeby poćwiczyć na flagach?
Coś z przynajmniej jedną funkcją, którą nerwowo wypuściłbyś wszystkim. Generator na whatshouldibuildnext.com zaplanuje mały projekt z jedną albo dwiema ryzykownymi funkcjami, co daje realny powód, żeby owinąć kod we flagę.

Zaplanuj coś wartego flagi

Darmowy generator specyfikacji, działa po stronie klienta, bez rejestracji. Dostajesz funkcje i sugerowany stos, a potem wybierasz narzędzie do flag.