Otwarcie kodu źródłowego Notify Cyber

Repozytorium GitHubArchiwalna stronaWpis na Reddit

Wpis na LinkedInWpis na HackerNews

Po ponad 2 latach i ponad 17 tys. unikalnych odwiedzających, udostępniamy kod źródłowy Notify Cyber!

Na początku 2023 roku Dylan Eck i ja (Mehmet Yilmaz) zbudowaliśmy Notify Cyber, ponieważ frustrowało nas przebijanie się przez rozproszone źródła wiadomości o cyberbezpieczeństwie. Zbudowaliśmy platformę, która agregowała wiadomości z ponad 7 źródeł, w tym komunikaty bezpieczeństwa Apple, alerty CISA, bazę CVE NIST, Dark Reading, IT Security Guru, Microsoft Security Response Center (MSRC), Trellix oraz The Hacker News. Backend był Pythonowym kolektorem, który czyścił i przetwarzał dane bez potrzeby scrapowania z użyciem przeglądarki; potrafił pobierać całą zawartość za pomocą prostych żądań i parsowania. Następnie podsumowywaliśmy artykuły przy użyciu API OpenAI i przechowywaliśmy wszystko w bazie danych PostgreSQL na Supabase. Frontend i bezserwerowe API były hostowane na Vercel, Dylan zbudował czysty interfejs Next.js i React, podczas gdy ja utrzymywałem backend. Zarejestrowaliśmy domenę przez Google Domains i obsługiwaliśmy listę oczekujących za pomocą prostego Google Form. Cała infrastruktura działała w całkowicie darmowym planie, co było idealne do potwierdzenia koncepcji. Aby poznać pełną historię tego, co skłoniło nas do zbudowania tego projektu, przeczytaj nasz oryginalny wpis na blogu z 29 maja 2023.

Premiera była pouczająca. Uruchomiliśmy projekt w czerwcu 2023 z niemal zerową liczbą codziennych odwiedzających. Przez pierwsze dwa tygodnie prowadziliśmy marketing na Twitterze, ale nie zdobyliśmy żadnych nowych użytkowników. Dylan i ja byliśmy zniechęceni i zamierzaliśmy porzucić projekt, ale jako ostatnią deskę ratunku zdecydowaliśmy się wykonać jeszcze jeden, finalny ruch na Reddit.

Po dniach wzajemnych ustaleń i przepychanek Dylanowi udało się uzyskać akceptację pojedynczego wpisu i opublikować go na r/cybersecurity. I w ciągu 3 dni mieliśmy ponad 8 tys. odwiedzających i ponad 100 osób na naszej liście oczekujących. Ten wpis ostatecznie osiągnął ponad 65 tys. wyświetleń przy 96% współczynniku upvote.

W ciągu ponad dwóch lat urosliśmy do ponad 17 tys. unikalnych odwiedzających i ponad 43 tys. odsłon stron, wszystko dzięki organicznemu wzrostowi. W tym czasie zwiększyliśmy też liczbę osób na liście oczekujących do ponad 160. Bezlitośnie optymalizowaliśmy także koszty, obniżając miesięczne wydatki z 38 dolarów do zaledwie 1,85 dolara poprzez przeniesienie kolektora z instancji chmurowej na Raspberry Pi 3B+ działający w moim domu. Frontend i API pozostały na darmowym planie Vercel, ale przeniesienie zbierania danych na lokalny sprzęt było przełomem. Skonfigurowaliśmy instancję Linode jako failover na czas moich podróży, ale przez większość czasu był to po prostu ten mały Raspberry Pi cicho pracujący w tle, uruchamiający kontenery Docker i zasilający naszą bazę danych świeżymi wiadomościami o bezpieczeństwie. To właśnie tego rodzaju zaradna infrastruktura, której większość ludzi nawet by nie rozważała, ale udowodniło to, że nie potrzeba drogich wdrożeń chmurowych, aby uruchomić coś o realnym wpływie.

Udowodniliśmy, że istnieje realne zapotrzebowanie na to, co stworzyliśmy. Prowadzenie działającej usługi oznaczało mierzenie się z prawdziwymi wyzwaniami, takimi jak awarie infrastruktury i problemy z bazą danych, a wszystko to nauczyło nas, jak szybko reagować i utrzymywać niezawodność na dużą skalę. Ostatecznie jednak nie udało nam się rozpracować monetyzacji ani znaleźć realnego modelu biznesowego, który miałby sens. Co ważniejsze, zarówno Dylan, jak i ja doszliśmy do momentu, w którym koszt alternatywny stał się zbyt wysoki. 5 października 2025 zdecydowaliśmy się wycofać platformę i udostępnić cały kod źródłowy jako open source.

W trakcie tej podróży odkryliśmy, że czas i dystrybucja mają znaczenie. MVP może być zrobione po macoszemu, ale realizacja musi być dopracowana. Buduj to, rozwiązując to, co sprawia ci przyjemność. Realne zapotrzebowanie nie zawsze przekłada się na poprawny model biznesowy. I jest godność w zamykaniu/przeorientowaniu projektu.

Jeśli chodzi o to, co dalej, obecnie skupiam się na rozwiązywaniu kilku interesujących problemów w Charter/Spectrum i mam też kilka ekscytujących projektów na horyzoncie. Ale do tego czasu chcę zamknąć ten rozdział związany z Notify Cyber. Pokazał mi on namiastkę tego, jak wygląda dopasowanie produktu do rynku i jak nie potrzeba finansowania ani wymyślnego marketingu, aby stworzyć wpływowy projekt/produkt. Bootstrapping może być drogą dla większości produktów programowych i tę lekcję przenoszę do wszystkiego innego, co będę tworzyć w przyszłości.

Jeśli coś budujesz, nie bój się publicznej porażki. Działaj dalej, iteruj szybko, w razie potrzeby zmieniaj kierunek i wiedz, kiedy zamknąć jeden rozdział, aby móc rozpocząć następny lepiej.

Specjalne podziękowania dla Dylana Ecka za prowadzenie prac nad frontendem i nasz sukces na Reddit!

ostatnia gorzko-słodka scena z samurai jack