Zbiór statystyk dotyczących najczęstszych problemów deweloperów, zebranych w ramach indywidualnych rozmów.
Kilka miesięcy temu Paul Kinlan opublikował artykuł o najważniejszych problemach deweloperów w 2021 roku, więc można rozpocząć ten artykuł od aktualizacji informacji z ostatnich 2 kwartałów. Liczby nieco się przesunęły, ale ranking się nie zmienił.
Wyzwanie | I kwartał 2021 r. | II kwartał 2021 r. | III kwartał 2021 r. | Czwarty kwartał 2021 roku |
---|---|---|---|---|
Nadążanie za zmianami w platformie internetowej lub w standardach internetowych | 27% | 26% | 27% | 22% |
Nadążanie za korzystaniem z dużej liczby nowych i istniejących narzędzi lub platform. | 26% | 26% | 25% | 21% |
Zadbaj o to, aby projekt lub interfejs działały tak samo w różnych przeglądarkach. | 26% | 28% | 24% | 21% |
Testowanie w różnych przeglądarkach. | 23% | 24% | 20% | 20% |
Informacje na temat środków bezpieczeństwa i ich wdrażanie. | 23% | 25% | 20% | 19% |
Jak wspomnieliśmy w poście na blogu Paula, musimy skonsultować się z tymi problemami. W ramach większych starań o to mój kolega, Kadir Topal, przeprowadziłem z nami wywiady z ponad 18 deweloperami. Chcemy zbadać i zrozumieć sposoby wyeliminowania najczęstszych problemów deweloperów.
Dyskusje dla deweloperów
Wyłączenie odpowiedzialności: te statystyki opierają się na niewielkiej liczbie rozmów z deweloperami. Przy użyciu opcji „Wszystkie” lub „jakiś” odnosi się do deweloperów branych pod uwagę, a nie całej społeczności. Potrzeba więcej badań, aby szerzej udostępnić te statystyki.
Te rozmowy uświadomiły nam, jak niesamowita i różnorodna jest społeczność programistów internetowych. Dziękuję wszystkim deweloperom, którzy z nami rozmawiali. Niektórzy deweloperzy mają ponad 25 lat doświadczenia, a inni – dopiero w 2020 roku. Niektórzy programiści rozpoczynali swoją karierę od formalnego dyplomu informatyki, a inni rozpoczęli karierę samodzielnie. Niektórzy deweloperzy aktywnie szukają nowości i na bieżąco śledzą informacje o wersji przeglądarki, podczas gdy inni dowiadują się o nowościach od współpracowników lub znajomych. Niektórzy uważają, że złożoność jest częścią pracy i lubią stawiać sobie wyzwania, a inni chcą po prostu wykonać swoją pracę. Myśląc o rozwiązywaniu tych problemów, pamiętaj o różnorodności naszych działań.
Jedną z typowych cech deweloperów jest to, że do swojej pracy wszyscy używają systemu CMS lub platformy. Wspomniano o Wordpressie, React, Bootstrap, Angular i Tailwind. Żaden z deweloperów nie używał w produkcji platformy internetowej „vanilla”. Wybór platformy na początku projektu nie jest łatwy, a deweloperzy często biorą pod uwagę wymagania inne niż techniczne. Na przykład od tego, czy łatwo będzie zatrudnić programistę do pracy z takim schematem. Nie możemy rozwiązać problemów programistów, jeśli nie uwzględnimy platform i CMS.
Jeśli chodzi o platformę internetową – większość deweloperów rozumie ją jako coś, nad czym aktualnie pracują. Obejmuje to nie tylko klasyczną definicję platformy internetowej, ale też systemy CMS, platformę, narzędzia i kody polyfill. W wielu przypadkach największym problemem jest nadążanie za tymi kwestiami. To zmieniło naszą interpretację tego pytania i teraz wiemy, że musimy zaktualizować ankietę, by podzielić ją na mniej niejasne części.
Kolejnym obszarem niejasności jest definicja standardów internetowych. Zapytani o przykłady zachowywania zgodności ze standardami często zwracają uwagę na problemy z przestrzeganiem sprawdzonych metod. To kolejna kwestia, którą musimy wyjaśnić.
Deweloperzy szukają sprawdzonych metod implementacji określonych przypadków użycia i wzorców. Posty na blogu i StackOverflow są wymieniane jako źródła sprawdzonych metod, ale deweloperzy często zastanawiają się, czy czytane informacje stanowią sprawdzoną metodę i czy są aktualne informacje o najnowszych funkcjach i interfejsach API. Chciałby je czytać z bardziej oficjalnego źródła.
Nadążanie za funkcjami i interfejsami API, które umożliwiają stosowanie nowych przypadków użycia, jest mniejszym problemem. Deweloperzy mają więcej trudności z funkcjami, interfejsami API i zmianami na platformie, które powodują zmianę sprawdzonych metod.
Większość deweloperów zgadza się, że zgodność aplikacji jest jednym z największych wyzwań. Dzięki takim działaniom jak Compat 2021 i Interop 2022 radzimy sobie coraz lepiej, ale deweloperzy nie uważają jeszcze za rozwiązany problem.
Większość programistów używa kodu polyfill w taki czy inny sposób. W wielu przypadkach deweloperzy mogą jednak w sposób przejrzysty o tym informować, ponieważ kod polyfill można dodać automatycznie za pomocą narzędzi takich jak Babel lub platforma. Dla osób, które samodzielnie zarządzają kodami polyfill, mogą sprawdzić, czy kod polyfill jest „dobry”. może stanowić problem. Deweloperzy wspomnieli o liczbie instalacji w NPM oraz o tym, że twórca kodu polyfill był używany jako sygnały. Kilku deweloperów wspomniało o pracy nad usunięciem kodu polyfill, który przestał być obsługiwany z powodu wycofania obsługi IE 11.
Platformy wprowadzają problemy z fragmentacją. Dotarły do nas doniesienia, że deweloperzy „utknęli”. do starszej wersji platformy z ograniczeniem dostępnych funkcji, ale migracja na nowszą wersję tego samego środowiska może być kosztowna i trudna do uzasadnienia.
Podsumowanie
Nowoczesne tworzenie stron internetowych składa się z wielu ruchomych elementów, w tym standardów, przeglądarek, bibliotek, polyfill, CMS, platform, sprawdzonych metod i narzędzi. Różnorodność to jedna z największych zalet internetu, ale w tej chwili to od każdego programisty należy indywidualnie zrozumieć każdy element i to, w jaki sposób są ze sobą zgodne.
Zastanawiam się, czy istnieje sposób na uświadomienie deweloperom, jak wszystko ze sobą współgra, i czy jest to silniejsze, bez wpływu na różnorodność. To duży, złożony problem i trudny do wykonania jednocześnie. Ale od czego zacząć?
Czy masz swoje opinie i opinie, którymi chcesz się podzielić. Chętnie z Tobą porozmawiam. Wcześniej skonfiguruję możliwość bezpośredniej rezerwacji rozmów, a tymczasem moje czaty są otwarte na Twitterze. Skontaktuj się z nami, to znajdziemy czas na rozmowę.