Projekt Tide ma na celu audyt i ocenę motywów i wtyczek WordPress w oparciu o jakość kodu
Opublikowany: 2017-11-23W zeszłym tygodniu XWP opublikował intrygujący podgląd nowego projektu o nazwie Tide, który ma na celu poprawę jakości kodu w ekosystemach wtyczek i motywów WordPress. Firma pracuje przy wsparciu Google, Automattic i WP Engine nad stworzeniem nowej usługi, która pomoże użytkownikom podejmować lepsze decyzje dotyczące wtyczek i pomagać programistom w pisaniu lepszego kodu.
Kierownik marketingu XWP, Rob Stinson, podsumował dotychczasowy kierunek projektu:
Tide to usługa składająca się z API, Audit Server i Sync Server, działająca w tandemie w celu przeprowadzenia serii automatycznych testów wtyczki WordPress.org i katalogów motywów. Dzięki wtyczce Tide wyniki tych testów są dostarczane jako zagregowany wynik w panelu administracyjnym WordPress, który reprezentuje ogólną jakość kodu wtyczki lub motywu. Generowany jest obszerny raport, dzięki któremu programiści mogą lepiej zrozumieć, w jaki sposób mogą podnieść jakość swojego kodu.
Ogłoszenie XWP zawierało również zrzut ekranu przedstawiający, jak te dane mogą być prezentowane w katalogu wtyczek WordPress:

XWP planuje zaprezentować usługę na WordCamp US w Nashville na stoisku Google, gdzie zaprosi społeczność do zaangażowania. Oczywiście projekt, który może mieć tak duży wpływ na ekosystem wtyczek, rodzi wiele pytań o to, kto stoi za wizją i jakie metryki zostaną użyte.
Skontaktowałem się z Robem Stinsonem i Lukiem Carbisem z XWP, którzy są współtwórcami projektu, aby dowiedzieć się, jak to się zaczęło i dokąd zmierzają.
„Tide rozpoczęło się w XWP około 12 miesięcy temu, kiedy jeden z naszych zespołów serwisowych opracował pomysł, a następnie weryfikację koncepcji narzędzia, które przeprowadziło serię testów jakości kodu względem pakietu kodu (wtyczka WordPress) i zwrócił wyniki za pośrednictwem interfejsu API” – powiedział Stinson. „Niedługo potem wymyśliliśmy nazwę Tide, zainspirowaną przysłowiem „Wzbierający przypływ unosi wszystkie łodzie”, myśląc, że jeśli takie narzędzie może obniżyć barierę wejścia do kodu dobrej jakości dla wystarczającej liczby programistów, może podnieść jakość kodu w całym ekosystemie WordPressa.”
Stinson powiedział, że XWP zintensyfikowało swoje wysiłki w sprawie Tide w ciągu ostatnich kilku miesięcy po tym, jak zaczęła dostrzegać jego potencjał i dzielić się wizją z partnerami.
„Google, Automattic i WP Engine również ostatnio pomogły zasobom (fundusze, infrastruktura, czas programisty, porady itp.) w projekcie” – powiedział Stinson. „Ich wsparcie naprawdę pomogło nam nabrać rozpędu. Google był w tym dużą częścią od około sierpnia. Pracowaliśmy z nimi przy innych projektach i kiedy podzieliliśmy się z nimi wizją Tide, pokochali ją i zobaczyli, jak jest ona zgodna z ich wizją lepszej wydajności sieci”.
Usługa Tide nie jest obecnie aktywna, ale wersja beta zostanie uruchomiona w WordCamp US z wtyczką WordPress, która będzie dostępna wkrótce. Stinson powiedział, że zespół zaprojektował pierwszą wersję, aby zaprezentować możliwości Tide i zachęcić do zgłaszania opinii i wkładu ze strony społeczności.
„Zdajemy sobie sprawę, że Tide będzie najlepsze, jeśli będzie miało otwarte źródło” – powiedział. „Istnieje wiele ruchomych części i zdajemy sobie sprawę, że im większy wkład ze strony społeczności, tym lepiej będzie ona reprezentować i rozwiązywać potrzeby społeczności związane z jakością kodu”.
Na tym etapie projektu nic nie zostało ustalone. Zespół Tide nadal eksperymentuje z różnymi sposobami udostępniania danych audytu wtyczek, a także dopracowuje sposób, w jaki te dane są ważone podczas dostarczania wyniku Tide.
„Ocena gwiazdek to tylko pomysł, z którym się bawiliśmy” – powiedział Stinson. „Celem tego będzie zagregowanie pełnego raportu generowanego przez Tide w prosty i łatwy do zrozumienia wskaźnik, do którego użytkownicy WordPressa mogą odwoływać się przy podejmowaniu decyzji dotyczących wtyczek i motywów. Wiemy, że nie mamy tej metryki i sposobu, w jaki jest ona wyświetlana w odpowiedni sposób. Otrzymaliśmy już świetne opinie od społeczności”.

Usługa jest przeznaczona nie tylko do generowania wyników, ale także do ułatwienia programistom identyfikowania słabości w ich kodzie i uczenia się, jak je naprawić.
„Obniżenie bariery wejścia do pisania dobrego kodu było pierwotną inspiracją dla tego pomysłu” – powiedział Stinson.
Plany zespołu projektowego Tide w celu udoskonalenia wskaźników wykorzystywanych do wyniku audytu w oparciu o opinie społeczności
Witryna projektu Tide, wptide.org, zostanie uruchomiona w WordCamp US i zapewni programistom wyniki, w tym szczegóły, takie jak numery linii i opisy nieudanych sniffów. Twórcy wtyczek będą mogli wykorzystać stronę do ulepszenia swojego kodu, a użytkownicy WordPressa będą mogli szybko sprawdzić jakość wtyczki. Menedżer produktu XWP, Luke Carbis, wyjaśnił, w jaki sposób obecnie obliczana jest ocena pływów.
„W tej chwili Tide uruchamia serię sniffów kodu we wtyczce/motywie, pobiera wyniki, stosuje pewną wagę (potencjalne problemy z bezpieczeństwem są ważniejsze niż tabulatory i spacje), a następnie uśrednia wyniki na wiersz kodu” Carbis powiedział. „Wynikiem tego jest wynik na 100, co jest doskonałym wskaźnikiem jakości wtyczki lub motywu. „Algorytm”, który określa wynik, to w zasadzie tylko seria ważenia”.
Wagi, z których obecnie korzysta usługa, zostały wybrane jako punkt wyjścia, ale Carbis powiedział, że zespół ma nadzieję, że społeczność WordPress pomoże im go udoskonalić.
„Jeśli ma to sens, może pewnego dnia ten wynik pojawi się w panelu administracyjnym WordPressa (na stronie dodawania nowej wtyczki)” – powiedział Carbis. „A może może to wpłynąć na wyniki wyszukiwania (wyżej oceniane wtyczki są na pierwszym miejscu). A może po prostu pozostaje na wptide.org. To naprawdę zależy od społeczności”.
Oprócz uruchomienia kodenifów, usługa Tide uruchomi dwa inne skany. Skanowanie Lighthouse przy użyciu zautomatyzowanego narzędzia Google o otwartym kodzie źródłowym do poprawy jakości stron internetowych zostanie przeprowadzone na motywach, co według Carbis jest „ogromnym osiągnięciem technologicznym”.
„Dla każdego motywu w katalogu uruchamiamy tymczasową instalację WordPressa i przeprowadzamy audyt Lighthouse w bezgłowej instancji Chrome” – powiedział Carbis. „Oznacza to, że otrzymujemy szczegółowy raport na temat jakości wyjściowej motywu, a nie tylko kodu, który go obsługuje”.
Drugie skanowanie Tide wykona pomiary zgodności z PHP i będzie miało zastosowanie zarówno do wtyczek, jak i motywów.
„Tide może powiedzieć, z którymi wersjami PHP będzie działać wtyczka lub motyw” — powiedział Carbis. „Dla użytkowników oznacza to, że możemy potencjalnie ukryć wyniki, o których wiemy , że nie będą działać z ich instalacją WordPress (lub przynajmniej wyświetlić ostrzeżenie). W przypadku hostów oznacza to, że mogą łatwo sprawdzić zgodność z PHP przed aktualizacją instalacji do PHP 7 (sądzimy, że spowoduje to aktualizację o wiele więcej instalacji – efektem netto jest zauważalny wzrost prędkości, co uważamy za naprawdę ekscytujące i motywujące). ”
Carbis powiedział, że zespół pracuje obecnie w perspektywie krótkoterminowej nad wprowadzeniem fragmentu PHP Compatibility do API WordPress.org, który, jego zdaniem, może zacząć wpływać na wyniki wyszukiwania bez żadnych zmian w rdzeniu WordPress.
„Chcielibyśmy również zacząć kontaktować się ze społecznością, aby dowiedzieć się, czy wyświetlanie wyniku jakości kodu użytkownikom WordPressa jest pomocne, a jeśli tak, to jak to wygląda? (np. wynik na 100, ocena 5 gwiazdek, A/B/C/D itp.)” – powiedział Carbis. „Naszą sugestię dotyczącą tego, jak może to wyglądać jako wtyczka, opublikujemy wkrótce po WordCamp US”.
Bardziej szczegółowe informacje na temat metryk, z których obecnie korzysta Tide oraz ich zastosowania do wtyczek i motywów, będą dostępne po uruchomieniu usługi w wersji beta. Jeśli uczestniczysz w WordCamp US i masz jakieś sugestie lub uwagi do zaoferowania zespołowi, koniecznie wpadnij na stoisko sponsorskie Google.
