Pelajari lebih dalam masalah utama developer web

Kumpulan insight tentang poin masalah developer teratas, dikumpulkan dari sejumlah percakapan.

Beberapa bulan yang lalu, Paul Kinlan memposting tentang titik masalah developer teratas pada tahun 2021, jadi sebaiknya Anda memulai artikel ini dengan pembaruan selama 2 kuartal terakhir. Angkanya mengalami perubahan, tetapi peringkatnya tidak berubah.

Tantangan Kuartal 1 2021 Kuartal 2 2021 Kuartal 3 2021 Kuartal 4 2021
Mengikuti perubahan pada platform web atau standar web. 27% 26% 27% 22%
Terus mengikuti perkembangan sejumlah besar alat atau framework baru dan yang sudah ada. 26% 26% 25% 21%
Membuat desain atau pengalaman berfungsi sama di seluruh {i>browser<i}. 26% 28% 24% 21%
Pengujian di berbagai browser. 23% 24% 20% 20%
Memahami dan mengimplementasikan langkah-langkah keamanan. 23% 25% 20% 19%

Seperti yang disebutkan dalam posting blog Paul, kami perlu mengatasi poin masalah ini. Sebagai bagian dari upaya yang lebih besar untuk melakukannya, rekan saya Kadir Topal dan saya telah mewawancarai lebih dari 18 developer. Tujuan kami adalah menyelidiki dan mulai memahami jalur untuk memperbaiki masalah developer teratas.

Diskusi Developer

Pernyataan penyangkalan: analisis tersebut didasarkan pada sejumlah kecil percakapan dengan developer. Jika menggunakan "semua" atau "beberapa", ini merujuk pada developer yang diwawancarai, bukan seluruh komunitas. Diperlukan lebih banyak riset untuk memperkirakan insight tersebut secara lebih luas.

Diskusi ini adalah pengingat yang bagus tentang betapa luar biasa dan beragamnya komunitas developer web, dan saya ingin berterima kasih kepada semua developer yang telah berbicara dengan kami. Beberapa developer memiliki pengalaman lebih dari 25 tahun, sementara developer lain memulai pengalamannya baru-baru ini pada tahun 2020. Beberapa pengembang memulai karier mereka melalui gelar ilmu komputer formal, sementara yang lain memulai karier mereka secara mandiri. Beberapa developer aktif mencari hal baru dan mengikuti perkembangan dengan membaca catatan rilis browser, sementara developer lain belajar tentang hal-hal baru melalui rekan kerja dan teman. Beberapa orang berpikir kompleksitas adalah bagian dari pekerjaan dan senang menerima tantangan, sementara yang lain hanya ingin menyelesaikan pekerjaan mereka. Ketika berpikir untuk memecahkan masalah tersebut, penting untuk mengingat keberagaman ini dalam pikiran kita!

Salah satu hal umum di antara semua developer adalah mereka menggunakan CMS atau framework untuk melakukan pekerjaan mereka. Wordpress, React, Bootstrap, Angular, dan Tailwind disebutkan, tidak ada developer yang menggunakan platform web vanilla dalam produksi. Memilih kerangka kerja saat memulai proyek merupakan sebuah tantangan, dan pengembang sering mempertimbangkan persyaratan non-teknis. Misalnya, apakah akan mudah menyewa developer untuk bekerja dengan framework tersebut. Kami tidak dapat memperbaiki masalah developer jika framework dan CMS tidak disertakan dalam solusi.

Berbicara tentang platform web, sebagian besar developer memahami platform sebagai hal yang mereka kembangkan. Hal ini tidak hanya mencakup definisi klasik platform web, tetapi juga CMS, framework, alat, dan polyfill. Dalam banyak kasus, mengikuti perkembangan terbaru ini merupakan bagian yang mengalami kesulitan terbesar. Hal ini mengubah interpretasi kita atas pertanyaan tersebut, dan sekarang kita tahu bahwa kita perlu memperbarui survei untuk memecahnya menjadi bagian-bagian berbeda yang tidak terlalu ambigu.

Area ambiguitas lainnya adalah definisi standar web. Ketika ditanya tentang contoh dalam menjaga standar, banyak developer menunjukkan kesulitan dalam mengikuti praktik terbaik. Ini adalah area lain yang perlu kami klarifikasi tentang survei ini.

Developer mencari praktik terbaik saat menerapkan pola dan kasus penggunaan tertentu. Postingan blog dan StackOverflow disebutkan sebagai sumber untuk praktik terbaik, tetapi developer sering bertanya-tanya apakah informasi yang mereka baca memang merupakan praktik terbaik dan apakah informasi tersebut sudah diperbarui dengan fitur dan API terbaru. Mereka menginginkan sumber yang lebih resmi untuk membacanya.

Memantau fitur dan API yang memungkinkan kasus penggunaan baru adalah masalah yang lebih kecil. Developer lebih kesulitan dengan fitur, API, dan perubahan pada platform yang menyebabkan perubahan pada praktik terbaik.

Sebagian besar developer setuju bahwa kompatibilitas adalah salah satu tantangan terbesar. Berbagai peningkatan terjadi melalui upaya seperti Compat 2021 dan Interop 2022, tetapi jelas bahwa developer belum melihatnya sebagai masalah yang terselesaikan.

Sebagian besar developer menggunakan polyfill dengan berbagai cara. Namun, dalam banyak kasus, penggunaan transparan bagi developer, karena polyfill dapat ditambahkan secara otomatis oleh alat seperti Babel atau framework. Bagi mereka yang mengelola polyfill mereka sendiri, mencari tahu apakah polyfill "baik" dapat menjadi masalah. Developer menyebutkan menggunakan jumlah penginstalan di NPM dan pembuat polyfill sebagai sinyal. Beberapa developer menyebutkan bahwa mereka berupaya menghapus polyfill yang tidak diperlukan karena penurunan dukungan untuk IE 11.

Framework menimbulkan masalah fragmentasi. Kami mendengar laporan bahwa developer "terjebak" dalam framework versi lama, sehingga mereka membatasi fitur yang dapat digunakan karenanya, tetapi proses migrasi ke versi framework yang sama dapat memerlukan biaya yang mahal dan sulit untuk dibenarkan.

Kesimpulan

Pengembangan web modern memiliki banyak pergerakan, termasuk standar, browser, library, polyfill, CMS, framework, praktik terbaik, dan alat. Keberagaman ini adalah salah satu hal yang hebat tentang web, tetapi saat ini, setiap developer bebas memahami setiap bagian dan bagaimana mereka kompatibel satu sama lain.

Saya ingin tahu apakah ada cara untuk memberikan kejelasan kepada developer tentang bagaimana semua bagian terkait dan lebih keselarasan di antara semua bagian, tanpa mengorbankan keberagaman. Ini adalah masalah yang besar, kompleks, dan sulit untuk dilakukan sekaligus. Tetapi harus mulai dari mana?

Jika Anda memiliki pandangan dan pendapat yang ingin dibagikan. Saya juga ingin berbicara dengan Anda. Saya akan menyiapkan cara untuk memesan percakapan secara langsung, tetapi sementara itu, DM saya terbuka di Twitter. Silakan hubungi kami dan kita dapat meluangkan waktu untuk mengobrol.