Pluginy do Chrome – niedoceniana nisza biznesowa

28.05.2020 AUTOR: Jakub Kot

Dużą popularnością wśród twórców aplikacji cieszą się wszelkiego rodzaju sklepy aplikacji na telefon takie jak Google Play czy Apple App Store. Dzięki ustandaryzowanym narzędziom dostarczanym przez Google i Apple tworzenie aplikacji jest przyjemne, a twórca publikując aplikację w marketplace zyskuje dostęp do szerokiej publiczności. Oczywiście popularność tych platform sprawia, że konkurencja wśród twórców jest bardzo duża i dosyć trudno przebić się z produktem, a fakt, że jest to całkowicie nowy ekosystem (dla programistów backend, frontend, desktop) sprawia, że bariera wejścia dla programisty jest wysoka i wymaga znacznej specjalizacji.

Wtyczki do przeglądarek

Istnieje również inna grupa sklepów z aplikacjami – sklepy z rozszerzeniami do przeglądarek potocznie zwanymi “wtyczkami” lub pluginami. Na pierwszy rzut oka może wydawać się, że są to platformy mniej atrakcyjne niż platformy mobilne. W końcu telefon towarzyszy nam cały czas, a z desktopu korzystamy tylko przez wycinek dnia (pluginy do przeglądarek zazwyczaj nie działają w ich wersjach na smartfony). Warto jednak zauważyć, że w nowoczesnej pracy biurowej większość naszego produktywnego czasu zazwyczaj spędzana jest właśnie w przeglądarce internetowej. Szczególnie jeśli pracujemy w ekosystemie przeglądarkowym takim jak Gmail czy Office 360.

Ponieważ desktop służy najczęściej głównie do pracy biurowej, to budując pomocne narzędzia na platformy desktopowe mamy największy potencjał do poprawy produktywności pracowników biurowych, oraz jednocześnie mamy potencjalnego sponsora gotowego zapłacić za taki wzrost produktywności – pracodawcę owego pracownika biurowego.

Tworzenie wtyczek do przeglądarek ma też tę zaletę, że charakteryzuje się niską barierą wejścia dla programistów webowych – zazwyczaj tworzy się je w Javascript korzystając z dedykowanych API. Nie ma tutaj krzywej uczenia się nowego języka, środowiska, architektury czy platformy jak w przypadku aplikacji mobilnych.

Biorąc pod uwagę powyższe, a także znacznie mniejszą liczbę twórców aplikacji na te platformy, platformy te jawią się jako dobra nisza do tworzenia płatnych aplikacji wspierających produktywność biznesu.

Zalety platform z wtyczkami do przeglądarek:

  • Niższa konkurencja niż na platformach mobilnych
  • Targetowanie klienta biznesowego, który speðza większośc czasu na desktopie
  • Tworzone w JavaScript – niska bariera wejścia dla programistów WEB

Platforma Chrome

W ostatnich latach najpopularniejszą przeglądarką internetową na desktop jest Chrome posiadający około 68% udziału w rynku. Pozostała część rynku rozkłada się na kilka przeglądarek posiadających jednocyfrowe części procentowe ogółu użytkowników. Nie dziwi więc fakt, że to na tę platformę twórcy najchętniej tworzą wtyczki i to opisem tej platformy zajmiemy się w dalszej części artykułu.

Możliwości jakie udostępnia platforma Chrome:

Przede wszystkim tworząc kod, który ma działać natywnie jedynie na Chrome możemy porzucić jakiekolwiek dbanie o zgodność i interoperacyjność. Możemy śmiało korzystać z EcmaScript 6 i wszystkich eksperymentalnych API z HTML5 i nie tylko, które zostały zaimplementowane jedynie w Chrome a brakuje ich w innych przeglądarkach.

Oczywiście oprócz zwykłych możliwości EC6 i HTML5 środowisko pluginu umożliwia nam również interakcję z użytkownikiem (najczęściej poprzez naciśnięcie przycisku w pasku nawigacji), a także daje wtyczce dostęp do warstwy DOM stron przeglądanych przez użytkownika.

Dzięki temu aktywna wtyczka może analizować co użytkownik widzi na ekranie, a także ingerować w tę treść. Ta na pozór błaha właściwość daje w istocie bardzo szerokie możliwości, gdyż możemy jej użyć do rozszerzania funkcjonalności interfejsów stron, z których korzystają nasi użytkownicy.

Dodatkowo oprócz dostępu do źródła przeglądanych stron Chrome udostępnia dla twórcy rozszerzenia dedykowane API, które umożliwiają ingerencję w to jak przeglądarka pracuje. Na przykład odpowiednio budując rozszerzenie możemy uzyskać wgląd w zapytania wysyłane przez stronę WWW do serwera, a nawet modyfikować te zapytania w locie.

Jeszcze do niedawna Chrome udostępniał nawet API dostępu do gołych gniazd sieciowych (socket API), co dawało możliwość nawet implementacji serwera HTTP w pluginie. Obecnie ten typ wtyczki (zwany w ekosystemie Chrome Aplikacją “Packaged App”) ma status “deprecated” i jest wycofywany, i nie jest jasne co się stanie z tym API – czy zostanie ono udostępnione dla zwykłych rozszerzeń czy zostanie wygaszone.

Wybór niszy i automatyzacja powtarzalnych czynności

Typowym zastosowaniem rozszerzeń Chrome jest rozszerzanie funkcjonalności już istniejących aplikacji webowych i stron WWW, oraz automatyzacja powtarzalnych czynności. Wybierając grupę odbiorców, warto zastanowić się jakie czynności dnia codziennego wykonywane w przeglądarce są powtarzalne i zajmują użytkownikowi dużo czasu. Idealnie jeśli uda znaleźć nam się taką grupę odbiorców, której czas przelicza się na pieniądze po wysokich stawkach (dużo zarabiają i dużo pracują) oraz grupa ta jest wystarczająco szeroka, żeby zapewnić odpowiednią trakcję i TAM (wielkość rynku).

Subiektywna check lista wyboru grupy docelowej:

  1. Szukamy grupy zawodowej, czyli ludzi, których czas przeliczany jest na pieniądze – tworzenie aplikacji dla studentów może być opłacalne, ale profesjonalistów znacznie łatwiej przekonać do zakupu
  2. Najlepiej, żeby nasza grupa docelowa była wąsko wyspecjalizowana, ale przy tym dosyć liczna
  3. Idealnie jeśli nasza grupa docelowa wykonuje powtarzalne czynności na jakichś portalach i przy tym idealnie jeśli portale te są przestarzałe i toporne w użyciu, albo mamy pomysł jak łatwo wzbogacić lub rozszerzyć ich funkcje za pomocą technologii.

Dobór grupy docelowej klientów w powyższy sposób gwarantuje, że jeśli uda nam się usprawnić dla nich jakiś uciążliwy proces wykonywany w przeglądarce to będą oni skorzy zapłacić za takie usprawnienie.

Jak zacząć?

Jak wspomniałem już wcześniej bariera wejścia w programowanie rozszerzeń Chrome jest dla programistów web niewielka, więc jeśli znasz już JavaScript i HTML to możesz skorzystać z tutoriali stworzonych przez Google i zabrać się za pierwszy projekt bazując na nich. Nie potrzebujesz do tego żadnego SDK czy specjalnych edytorów – wystarczy zwykły edytor kodu i standardowa instalacja przeglądarki Google Chrome. Polecam też skorzystać z jakiejś gotowej struktury folderów i plików – tzw. boilerplate. Nie polecam przy zaczynaniu projektu pluginu zabierać się do tego z użyciem zbyt rozbudowanych frameworków JS. Bywają one niekompatybilne z architekturą rozszerzeń Chrome czasami w dość nieoczywisty sposób.

Jeśli nie jesteś jeszcze programistą Web to nie zalecam nauki JavaScriptu od zera podczas pisania rozszerzenia. Mimo, że proste, to jest to jednak środowisko dosyć specyficzne, i może ono komplikować proces debugowania kodu.

Inspiracja – przykładowe płatne rozszerzenia oszczędzające czas pracy zawodowców

  1. MixMax.com – Wtyczka rozszerzająca możliwości Gmaila o śledzenie otwarcia maili (rozszerzenie funkcji), automatyczne przypominanie o braku odpowiedzi, czy możliwość tworzenia sekwencji mailowych (automatyzacja). Skierowana jest do wszystkich profesjonalistów pracujących w środowisku Google Apps. Pobiera opłaty abonamentowe.
  2. KRS Scout  – polska wtyczka do automatyzacji pracy z systemem EKRS, umożliwiająca pobieranie i wyświetlanie sprawozdań finansowych firm oraz zapisywanie ich do Excela czy PDFa (full disclosure: wtyczka została stworzona przez firmę KHOTech , której autor tekstu jest właścicielem). Pobiera opłaty abonamentowe.
  3. Octopus CRM – rozszerzenie automatyzujące akcje na platformie Linkedin takie jak dodawanie znajomych wysyłanie wiadomości itp. Przeznaczone dla handlowców, którzy prowadzą na Linkedinie akwizycję klientów. Pobiera opłaty abonamentowe.

Podsumowanie

Rozszerzenia Chrome mogą być ciekawym ekosystemem do budowania biznesu abonamentowego SaaS. Konkurencja nie jest tak duża jak na platformach mobilnych, uzyskujemy dostęp do pokaźnego rynku, a przy tym możemy dostarczać wartość klientowi biznesowemu, który będzie skłonny za to zapłacić. Dodatkowo bariera wejście w technologię jest stosunkowo niewielka, więc koszty developmentu nie będą zabójcze, a efekty mogą być bardzo dobre.

 

Do góry!

Polecane artykuły

07.07.2020

Skaner – dlaczego warto po niego ...