Pośmiertne wprowadzenie Gutenberga na rynek, abyśmy mogli objąć Gutenberga produktem
Opublikowany: 2022-03-10Po 10 miesiącach od wydania jako nowy domyślny edytor WordPressa, Gutenberg wciąż jest zlekceważony przez znaczną liczbę osób ze społeczności twórców stron internetowych, którzy często podają jako powody, by go zignorować, brak wsparcia dostępności (mimo że nastąpiła znaczna poprawa dostępności miejsce), jak wolno jest (choć teraz działa znacznie szybciej) i kilka innych skarg. Ta pesymistyczna reakcja na Gutenberga jest najbardziej widoczna w internetowych artykułach demonstrujących możliwości Gutenberga, które zamiast wywoływać pozytywną reakcję czytelników, budzą w większości pogardę (co znajduje odzwierciedlenie w strumieniu negatywnych komentarzy).
Wiele osób wydaje się być złych „na Gutenberga” (za chwilę zobaczymy, czym właściwie jest Gutenberg), wyrażając, że Gutenberg nigdy nie powinien się wydarzyć, a przynajmniej nigdy nie został zintegrowany z rdzeniem WordPressa jako jego domyślne doświadczenie, a przynajmniej nie tak szybko. Różni ludzie mają różne powody, by sprzeciwiać się Gutenbergowi, przy czym niektóre z nich mają większe znaczenie osobiste niż inne. Na przykład niektórzy ludzie widzieli zagrożone ich źródła utrzymania, ponieważ ciężko pracowali, aby wyspecjalizować się w pewnym rozwiązaniu, które w związku z przybyciem Gutenberga może zniknąć (tak jak każdy, kto pracuje z tą marką lub marką kreatorów stron). Naprawdę rozumiem, dlaczego ci ludzie są źli na Gutenberga i współczuję im.
Uważam jednak również, że nieustanne gniewanie się na Gutenberga i odrzucanie całości – nawet nie zastanawiając się, czy warto z tego korzystać – nie jest rozsądnym podejściem. Kiedy został wprowadzony na rynek, byłem dość przeciwny Gutenbergowi, myśląc, że nie jest gotowy i takie stanowisko trwało przez kilka miesięcy. Jednak ostatnio coraz częściej używam Gutenberga i mogę nawet twierdzić, że obecnie naprawdę mi się to podoba. O ile na początku sama też byłam trochę zła „na Gutenberga”, to pozwoliłam swojej złości odejść i teraz faktycznie mogę na tym skorzystać.
Poprzez ten artykuł spróbuję zmienić narrację, w której najczęściej przedstawiany jest Gutenberg. Wyliczę, co poszło nie tak w przeszłości, i opiszę, czym był i czym był Gutenberg, z którego mogę dać skok wiary, by przedstawić Gutenberga w korzystnym świetle. Będę również argumentował, że Gutenberg już jest pozytywną siłą i jako taki zasługuje na kolejną szansę (jeśli jeszcze tego nie zrobiłeś).
Czym właściwie jest Gutenberg
Z mojego punktu widzenia najważniejszym powodem, dla którego Gutenberg nie jest szerzej akceptowany, jest to, że kiedy ludzie mówią o Gutenbergu, przyrównują go nie do jednego, ale właściwie do dwóch bytów (które są ze sobą mylone), a mianowicie:
- Gutenberg, start;
- Gutenberg, produkt.
Gutenberg jako „produkt” to sama wtyczka/funkcjonalność. Gutenberg jako „uruchomienie” był procesem, który obejmował początkowy rozwój i wydanie Gutenberga, prawdopodobnie rozpoczęty, gdy założyciel WordPress Matt Mullenweg przedstawił Gutenberga szerszej publiczności w czerwcu 2017 r. podczas WordCamp Europe 2017, a zakończył na początku grudnia 2018 r., kiedy WordPress 5.0 był wydany wraz z Gutenbergiem połączył się z nim.
(Po zakończeniu uruchomienia rozpoczął się nowy etap, który trwa do dziś: „Cykl ciągłych dostaw Gutenberga”. Jednak ten etap bardzo różni się od „Gutenberga – premiera”, ponieważ nie było z nim żadnych poważnych problemów, a ponieważ nie prowadzi to do żadnych nieporozumień co do „produktu Gutenberga”. Z tego powodu nie ma potrzeby omawiania tego w tym artykule.)
Musimy odróżnić te dwa podmioty, „premierę” i „produkt”. W związku z tym mam nadzieję, że od teraz, kiedy mówimy o „Gutenbergu”, zawsze oznacza to „Gutenberg produkt”, a jeśli chcemy odnosić się do „Gutenberga – premiera”, musimy wyraźnie go nazwać (być może używając dowolnej z jego odmian , np. „Pierwsze opracowanie/wydanie Gutenberga” lub podobne wyrażenia). Co najważniejsze, musimy powstrzymać się od mieszania premiery i produktu w tej samej torbie: wymienianie jakiegokolwiek czynnika, który przyczynił się do rozczarowującego wprowadzenia Gutenberga jako powodu, aby nie używać Gutenberga w naszych projektach, powinno zostać wycofane, a Gutenberg jako produkt powinien zostać oceniony tylko wbrew własnym cechom. To jest uczciwe wobec produktu Gutenberga.
Uważam, że chociaż „Gutenberg premiera” została słusznie skrytykowana, ciągła pogarda pod adresem Gutenberga produktem była niesprawiedliwa (nawet jeśli była uzasadniona) i że sam Gutenberg produkt jest ofiarą splamionej reputacji do nazwy „Gutenberg” podczas jego frustrującej premiery. Na przykład podczas wyszukiwania „Gutenberg” w katalogu wtyczek WordPressa, ponieważ algorytm decydujący o rankingu wtyczek bierze pod uwagę ranking wtyczek, Gutenberg pojawia się dopiero w okolicach 10. pozycji. Jednak wiele z jednogwiazdkowych ocen nie miałoby miejsca, gdyby Gutenberg nie został połączony z rdzeniem; gdyby początkowo została wydana tylko jako wtyczka i poczekała, aż najważniejsze błędy i problemy (takie jak brak dostępności) zostaną rozwiązane przed połączeniem z rdzeniem, jej ocena byłaby dzisiaj wyższa.
Jeśli jesteśmy w stanie rozdzielić te dwa podmioty (wprowadzenie i produkt) i zająć się nimi oddzielnie, to z jednej strony możemy zrobić sekcję zwłok tego, co poszło nie tak podczas premiery Gutenberga i wprowadzić tę wiedzę do bieżącej ciągłej dostawy cykl, aby te same błędy się nie powtórzyły (w rzeczywistości wydaje się, że to już się dzieje, jak opiszę poniżej); z drugiej strony możemy pozwolić sobie na docenienie Gutenberga jako produktu, dodać go do naszych stosów i miejmy nadzieję, że z niego skorzystamy.
Zrobię dokładnie to, z własnego punktu widzenia.
Co poszło nie tak podczas premiery Gutenberga?
W jednym zdaniu zespół prowadzący proces popełnił błąd (tak to grzecznie się mówi).
WordPress 5.0 z połączonym z nim Gutenbergiem został uruchomiony na początku grudnia 2018 r., tuż przed WordCamp US. Uruchomienie go było wtedy błędną decyzją z bardzo prostego powodu: Gutenberg nie był jeszcze gotowy. W szczególności sytuacja w zakresie dostępności była bardzo tragiczna, ponieważ Gutenberg był prawie bezużyteczny dzięki urządzeniom ułatwiającym dostęp, takim jak czytniki ekranu, skutecznie uniemożliwiając każdemu korzystanie z edytora WordPressa. A ponieważ społeczność WordPressa bardzo głośno chroni prawa wszystkich (dosłownie wszystkich) do dostępu do Internetu, ten pospieszny start nie został dobrze przyjęty.
Matt Mullenweg (który kierował procesem wydania) mógł mieć dobre powody, by być nieugiętym, jeśli chodzi o uruchomienie w tym dniu, co może mieć na przykład sens z biznesowego punktu widzenia. Jednak z pewnością nie miało to sensu z perspektywy społeczności. Rzeczywiście, wielu członków społeczności poczuło się zdradzonych, narzekając, że muszą się spieszyć z testowaniem stron swoich klientów, mimo że byli na wakacjach. Można śmiało powiedzieć, że przez wiele osób takie przedwczesne uruchomienie było postrzegane jako wrak (nawet jeśli oprogramowanie działało poprawnie, więc w rzeczywistości nie doszło do Y2K), co wywołało niepotrzebne niezadowolenie, a którego można było doskonale uniknąć poprzez odłożenie na później uruchomienie lub najpierw wypuszczenie Gutenberga jako wtyczki, która zostanie scalona z rdzeniem na późniejszym, bardziej stabilnym etapie.
Czy ból, frustracja i rozczarowanie zadane społeczności naprawdę były warte kosztów? Wierzę, że większość ludzi powie, że tak nie było. Absolutnie myślę, że tak nie było. Moim zdaniem takich sytuacji, w których podejmuje się działania wbrew woli większości członków społeczności, należy w przyszłości unikać (chyba, że są ku temu naprawdę dobre powody, nawet jeśli nie wszyscy się na to zgadzają; tak było w przypadku premiery Gutenberga, którego nie znam, bo nie znam żadnego naprawdę dobrego powodu, aby to uzasadnić).
W swojej prezentacji podczas tego samego WordCamp US Matt Mullenweg przyznał, że popełniono błędy podczas uruchamiania Gutenberga i że nauczył się lekcji, aby te błędy, miejmy nadzieję, się nie powtórzyły. Myślę, że możemy przyjąć jego przeprosiny i ufać, że następnym razem jego decyzje będą słuszne (mimo że od tamtego czasu doszło do nowych kłótni na równie ważne tematy). Jednak szkody już zostały wyrządzone: otworzyła się rana, której zagojenie może zająć trochę czasu, więc społeczność będzie mniej ufna, dopóki zaufanie do przywództwa WordPressa nie zostanie w pełni przywrócone.
Dlaczego teraz wydaje się, że jest znacznie lepiej
Teraz dobra wiadomość: wydaje się, że sytuacja w większości przybrała pozytywny kierunek, a wymienione poniżej ulepszenia już się pojawiły.
Udoskonalona komunikacja
Jedną z najgłośniejszych skarg na start Gutenberga był brak komunikacji ze strony kierownictwa. Ze względu na brak odpowiednich kanałów do zarządzania projektem i komunikowania jego decyzji (przynajmniej nie w sposób kompleksowy) trudno było uzyskać dokładny obraz całej sytuacji. (Na przykład informacje różnych autorów lub zespołów były publikowane różnymi drogami, w tym nieoficjalnymi, takimi jak osobiste blogi).
Ta troska została znacznie poprawiona. W szczególności ilość informacji na blogach marki (gdzie różne społeczności wchodzą w interakcje, aby podejmować decyzje dotyczące WordPressa w różnych obszarach, takich jak rdzeń, dostępność, projekt, internacjonalizacja i inne) oraz częstotliwość, z jaką informacje są aktualizowane zostały wzrosła, a każdy zespół organizuje regularne spotkania oparte na Slack (przeważnie odbywające się co tydzień lub co dwa tygodnie), w którym może uczestniczyć każdy, kto ma konto użytkownika WordPress.org. Jak doświadczyli niektórzy członkowie społeczności, teraz możliwe jest rzetelne śledzenie wydarzeń na dany temat i posiadanie wystarczającej ilości informacji, aby móc się zaangażować.
Skutki wprowadzenia Gutenberga skłoniły również Matta Mullenwega do rozszerzenia przywództwa WordPressa o dwie nowe role: dyrektora wykonawczego, który nadzoruje i kieruje wszystkimi zespołami współpracowników w ich pracy nad budowaniem i utrzymaniem WordPressa, oraz kierownika ds. marketingu i komunikacji, który kieruje zespołem marketingowym i nadzorować ulepszanie WordPress.org, powiązanych stron internetowych i wszystkich jego punktów sprzedaży (niestety osoba przypisana do tej roli zrezygnowała niedługo po tym, więc trzeba znaleźć kogoś innego, kto przejmie to stanowisko).
Zespół Triage utworzony w celu rozwiązania otwartych problemów
W początkowej fazie rozwoju Gutenberga kilka osób skarżyło się, że istniejące błędy, które nagromadziły się w tysiącach, powinny zostać naprawione przed dodaniem nowej funkcjonalności do WordPressa.
W marcu tego roku utworzono zespół triage, aby usunąć otwarte problemy w narzędziu do śledzenia błędów WordPress Trac. To ciężka praca potrzebna od wielu lat. Jeśli kiedykolwiek zostanie ukończony, WordPress będzie miał szansę przełączyć się z Traca na bardziej nowoczesny moduł do śledzenia błędów, taki jak GitHub.
Dostępność stale przeradza się w problem
Problemy z ułatwieniami dostępu są rozwiązywane w każdym nowym wydaniu Gutenberga, a wersja 6.3 zapewnia lwią część ulepszeń. Przy obecnym tempie poprawy najbardziej nierozstrzygnięte kwestie dostępności (zgłoszone w audycie Gutenberg Accessibility Audit) powinny wkrótce przejść do przeszłości.
Ocenianie Gutenberga na podstawie własnych zasług
Teraz, gdy podzieliliśmy Gutenberg na premierę od produktu Gutenberg, możemy przystąpić do analizy Gutenberga jako produktu i zdecydować, czy warto go dodać do naszego stosu aplikacji, opierając się wyłącznie na jego własnych zaletach i wadach. Wiele osób słusznie wskazuje problemy Gutenberga jako powód, dla którego mu nie ufać (zamiast skupiać się na nieudanym uruchomieniu). Jednak Gutenberg poprawiał się skokowo, a wiele z krytykowanych problemów mogło zostać rozwiązanych lub może być na krawędzi rozwiązania. W związku z tym oceny negatywne powinny mieć datę wygaśnięcia i zostać ponownie ocenione. Jeśli damy Gutenbergowi nową szansę i zobaczymy, na czym stoi obecnie, możemy docenić, że mimo wszystko nie jest tak źle. Moim zdaniem Gutenberg zasługuje na cieplejsze przyjęcie niż obecnie.
Jestem zdumiony, że Gutenberg wciąż jest porównywany do poprzedniego sposobu edycji treści w WordPressie (głównie przez tinymce, ale też shortcodes, widgety i inne), argumentując, że przez Gutenberga trudniej jest kodować. Może to prawda, ale również nie ma sensu: Gutenberg nie jest tutaj po to, aby zapewnić nowy sposób kodowania naszej aplikacji, tworząc te same funkcje, co w przeszłości; zamiast tego jest tutaj, aby znacznie ulepszyć to, co można zrobić, oferując dodanie funkcji do naszych aplikacji, o których w przeszłości można było tylko pomarzyć. Ponadto Gutenberg nie jest kolejnym kreatorem stron. Rzeczywiście, porównywanie Gutenberga do Divi lub Beaver Buildera podobnie nie ma sensu, ponieważ jest to jak porównywanie Victorinox do zwykłego noża: tak, możesz tworzyć witryny/strony za pomocą Gutenberga (właściwie jeszcze nie, ale to już jest praca w postęp), ale to tylko jedno z wielu jego zastosowań; istnieje kilka innych zastosowań, które są początkowo ukryte, ale kiedy wyciągniesz je z ich przedziału i zrozumiesz, jak działają, odkryjesz nowy świat możliwości. Poniżej opiszę niektóre z tych nowych możliwości, które Gutenberg wnosi do stołu.
Najpierw omówmy, co nie jest tak wspaniałe w Gutenbergu. Uważam, że jedyną rzeczą, w której Gutenberg można naprawdę uznać za szkodliwą, jest stroma krzywa uczenia się Reacta (czyli biblioteki JavaScript, w której jest kodowany Gutenberg). WordPress zawsze był bardzo inkluzywny, umożliwiając ludziom z dowolnego środowiska (nie tylko programistom, ale także osobom nie posiadającym wiedzy technicznej, takim jak blogerzy, marketingowcy, sprzedawcy itp.) stworzenie motywu lub wtyczki lub uruchomienie witryny. Bez wątpienia już tak nie jest i niesprawiedliwe jest oczekiwanie, że wszyscy będą musieli nauczyć się React, aby utworzyć blok Gutenberga (niekoniecznie tak jest, ponieważ możemy również tworzyć bloki przy użyciu innych bibliotek JavaScript, a nawet bez użycia JavaScript , na przykład przez bloki ACF, jednak użycie Reacta jest najbardziej logiczną opcją, choćby dlatego, że Gutenberg jest za jego pomocą zakodowany). Jedynym argumentem, który może uzasadnić tę wadę, jest to, czy poprawia to wrażenia użytkownika. Zobaczmy, czy można to uznać za przypadek.
Jak argumentowałem w poprzednim moim artykule, architektura oparta na blokach Gutenberga radykalnie zmienia sposób, w jaki budowane są aplikacje: Zamiast myśleć w kodzie HTML, możemy teraz myśleć w kategoriach komponentów jako jednostki do budowy strony internetowej. Ta architektura jest łatwiejsza w utrzymaniu i bardziej odporna, ponieważ każdy komponent (lub blok) może być niezależnie rozwijany i testowany, a ponieważ jest łatwy do ponownego użycia, może obniżyć koszty tworzenia kilku aplikacji. Rzeczywiście, niedawną popularność bibliotek JavaScript, takich jak Vue i React, można w dużym stopniu przypisać ich obsłudze komponentów. Jest to świetna funkcja, którą programiści uwielbiają i z której, jak sądzę, po rozpoczęciu programowania nie ma odwrotu.
W tym samym artykule opiszę również, w jaki sposób Gutenberg może wesprzeć strategię „Utwórz raz, publikuj wszędzie” (znaną również jako „COPE”), umożliwiającą stworzenie jednego źródła prawdy treści, które będzie przesyłane do wszystkich naszych aplikacji, w zależności od tego medium lub platforma, na której działają: sieć, e-mail/biuletyny, aplikacje na iOS/Android, VR/AR, pomoc domowa (np. Amazon Alexa) i inne. Dzięki temu, że ogólne zarządzanie treścią jest znacznie prostsze, COPE pozwala również na obniżenie kosztów produkcji treści na różne platformy. Kiedy po raz pierwszy napisałem swój artykuł, teoretyzowałem, że można to zrobić. Jednak ostatnio wdrożyłem COPE dla WordPressa i działa jak czar! (Wypatruj kolejnego artykułu, w którym szczegółowo wyjaśnię, jak to działa.)
Połączenie COPE i WordPress API (WP REST API, WPGraphQL i mój własny PoP API) zapewni jeden przekonujący powód do zarządzania całą naszą zawartością dla wszystkich naszych aplikacji za pośrednictwem WordPress. Innym ważnym powodem będzie łatwość użycia Gutenberga (która nie jest jeszcze w pełni dostępna, ale przy obecnym tempie rozwoju, pojawi się prędzej niż później), umożliwiając użytkownikowi końcowemu tworzenie rozbudowanych treści w bardzo prosty sposób.
Mamy już dostęp do wspaniałych nowych funkcji, takich jak podgląd w czasie rzeczywistym wyglądu treści, kopiowanie/wklejanie z Dokumentów Google z doskonałym formatowaniem, tworzenie skomplikowanych warstw siatki z zagnieżdżonymi elementami w środku i wiele innych. Możemy również oczekiwać, że nowe bloki zapewnią zupełnie nieoczekiwane funkcje, których nigdy sobie nie wyobrażaliśmy. Założę się, że za pośrednictwem Gutenberga WordPress ma szansę zostać menedżerem zasobów cyfrowych w sieci. (Napisałem już artykuł, który wkrótce zostanie opublikowany tutaj w Smashing Magazine na ten temat i moje uzasadnienie tego śmiałego stwierdzenia.)
Ponadto Gutenberg pozwala na ponowne wykorzystanie kodu z innymi CMS-ami lub frameworkami (takimi jak Drupal i Laravel), dzięki czemu kodowanie dla WordPressa nie musi już ograniczać się do WordPressa, co po raz kolejny pozwala nam obniżyć koszty opracowania biblioteki, która musi działać w jak największej liczbie systemów (na przykład może na tym skorzystać firma zapewniająca integrację swojego API dla wielu różnych platform i języków, takich jak Stripe). Obecnie wydaje się, że tylko kod po stronie klienta (JavaScript i CSS) jest ponownie używany, jednak kod PHP po stronie serwera może być również ponownie wykorzystany. (Niedługo ponownie opublikuję artykuł na temat Smashing wyjaśniający, jak to zrobić.)
Te cechy są już rzeczywistością i możemy oczekiwać, że Gutenberg dostarczy w nadchodzących latach o wiele bardziej przekonujących powodów swojego istnienia (według Matta Mullenwega, Gutenberg obecnie wdrożył tylko około 10% swojego potencjału).
Możemy wreszcie spróbować wydać werdykt w sprawie produktu Gutenberg: Moje stanowisko jest takie, że ustanawia on wyższą barierę wejścia do WordPressa, co jest godne ubolewania, jednak jest to również pięknie zaprojektowane oprogramowanie, które daje naprawdę nowe możliwości WordPressowi i , ze względu na znaczenie WordPressa, ogólnie w świecie tworzenia stron internetowych. I między tym kompromisem między kosztami a korzyściami, uważam, że posiadanie Gutenberga jako części WordPressa jest bardziej tego warte niż nie. Mam nadzieję, że zgodzisz się z moją opinią, a jeśli nie, to przynajmniej powody przeciwko niej mogą opierać się wyłącznie na cechach Gutenberga jako produktu.
Wniosek
Gutenberg jest obecnie w najlepszym wydaniu — zaczął zapewniać użytkownikom wspaniałe wrażenia, które wcześniej nie były możliwe w przypadku WordPressa. Jednak nie każdy zdaje sobie z tego sprawę, bo nie każdy może zabrać się za objęcie Gutenberga. Jest to niefortunna okoliczność, ponieważ Gutenbergowi (jako produktowi) nie należy winić za błędy, które miały miejsce podczas uruchamiania Gutenberga. Jeśli jesteśmy w stanie rozdzielić te dwa podmioty i potraktować każdy z nich niezależnie, możemy wtedy przekonująco poprosić ludzi, aby dali Gutenbergowi kolejną szansę , sugerując, że Gutenberg jako produkt warto mieć, nawet jeśli wprowadzenie Gutenberga było nieudanym procesem.
W tym artykule zrobiłem sekcję zwłok nieudanego startu Gutenberga, opierając się na moim własnym zrozumieniu wydarzeń. Przeprowadzenie takiej sekcji zwłok może pomóc społeczności i kierownictwu upewnić się, że te niefortunne błędy się nie powtórzą. Po sekcji zwłok przystąpiłem do oceny Gutenberga na podstawie jego własnych zalet i zadeklarowałem swoje stanowisko: Uważam, że Gutenberg jest świetnym narzędziem, a społeczność WordPressa z pewnością może na tym skorzystać. A ponieważ będzie coraz lepiej, Gutenberg może nawet zainaugurować nową złotą erę WordPressa.