Tide Project Bertujuan untuk Mengaudit dan Mencetak Tema dan Plugin WordPress berdasarkan Kualitas Kode

Diterbitkan: 2017-11-23

Minggu lalu XWP merilis pratinjau menarik dari proyek baru bernama Tide yang bertujuan untuk meningkatkan kualitas kode di seluruh plugin WordPress dan ekosistem tema. Perusahaan telah bekerja dengan dukungan Google, Automattic, dan WP Engine, dalam menciptakan layanan baru yang akan membantu pengguna membuat keputusan plugin yang lebih baik dan membantu pengembang dalam menulis kode yang lebih baik.

Manajer pemasaran XWP Rob Stinson merangkum arah proyek sejauh ini:

Tide adalah layanan, yang terdiri dari API, Audit Server, dan Sync Server, yang bekerja bersama-sama untuk menjalankan serangkaian pengujian otomatis terhadap plugin WordPress.org dan direktori tema. Melalui plugin Tide, hasil tes ini dikirimkan sebagai skor agregat di admin WordPress yang mewakili kualitas kode keseluruhan dari plugin atau tema. Sebuah laporan komprehensif dibuat, memperlengkapi pengembang untuk lebih memahami bagaimana mereka dapat meningkatkan kualitas kode mereka.

Pengumuman XWP juga menyertakan tangkapan layar tentang bagaimana data ini dapat disajikan di direktori plugin WordPress:

XWP berencana untuk mengungkap layanan di WordCamp US di Nashville di stan Google di mana mereka akan mengundang komunitas untuk terlibat. Secara alami, proyek dengan potensi dampak sebesar ini pada ekosistem plugin menimbulkan banyak pertanyaan tentang siapa yang berada di balik visi tersebut dan metrik seperti apa yang akan digunakan.

Saya menghubungi Rob Stinson dan Luke Carbis di XWP, yang keduanya merupakan kontributor proyek, untuk melihat ke dalam tentang bagaimana itu dimulai dan di mana mereka mengantisipasinya.

“Tide dimulai di XWP sekitar 12 bulan yang lalu ketika salah satu tim layanan kami mengumpulkan ide, ditindaklanjuti dengan bukti konsep, dari alat yang menjalankan serangkaian tes kualitas kode terhadap paket kode (plugin WordPress) dan mengembalikan hasilnya melalui API, ”kata Stinson. “Kami segera setelah itu datang dengan nama Tide, terinspirasi oleh pepatah 'A naik pasang mengangkat semua perahu,' berpikir bahwa jika alat seperti ini dapat menurunkan hambatan masuk ke kode kualitas yang baik untuk pengembang yang cukup, itu bisa mengangkat kualitas kode di seluruh ekosistem WordPress.”

Stinson mengatakan XWP menggenjot usahanya di Tide selama beberapa bulan terakhir setelah mulai melihat potensinya dan berbagi visi dengan mitra.

“Google, Automattic, dan WP Engine semuanya telah membantu sumber daya (dana, infrastruktur, waktu pengembang, saran, dll.) proyek baru-baru ini juga,” kata Stinson. “Dukungan mereka sangat membantu kami membangun momentum. Google telah menjadi bagian besar dari ini sejak sekitar Agustus. Kami telah bekerja dengan mereka di proyek lain dan ketika kami berbagi dengan mereka visi untuk Tide, mereka menyukainya dan melihat betapa sejalan dengan visi yang mereka miliki untuk web berkinerja lebih baik.”

Layanan Tide saat ini tidak aktif tetapi versi beta akan diluncurkan di WordCamp US dengan plugin WordPress untuk segera menyusul. Stinson mengatakan tim merancang versi pertama untuk menghadirkan kemungkinan Tide dan mendorong umpan balik dan kontribusi dari komunitas.

“Kami menyadari bahwa Tide akan menjadi yang terbaik jika open source,” katanya. “Ada banyak bagian yang bergerak di dalamnya dan kami menyadari bahwa semakin besar masukan dari komunitas, semakin baik itu akan mewakili dan menyelesaikan kebutuhan komunitas seputar kualitas kode.”

Pada fase proyek ini, tidak ada yang ditetapkan. Tim Tide terus bereksperimen dengan berbagai cara untuk membuat data audit plugin tersedia, serta menyempurnakan bagaimana data tersebut ditimbang saat memberikan skor Tide.

“Peringkat bintang hanyalah ide yang telah kami mainkan,” kata Stinson. “Tujuannya adalah untuk menggabungkan laporan lengkap yang dihasilkan oleh Tide menjadi metrik yang sederhana dan mudah dipahami yang dapat dirujuk oleh pengguna WordPress ketika membuat keputusan tentang plugin dan tema. Kami tahu kami belum mendapatkan metrik ini dan cara menampilkannya dengan benar. Kami sudah mendapat umpan balik yang bagus dari komunitas.”

Layanan ini tidak hanya dirancang untuk menghasilkan skor tetapi juga untuk memudahkan pengembang mengidentifikasi kelemahan dalam kode mereka dan mempelajari cara memperbaikinya.

“Menurunkan hambatan masuk untuk menulis kode yang baik adalah inspirasi asli dari ide tersebut,” kata Stinson.

Tim Proyek Tide Berencana untuk Menyempurnakan Metrik yang Digunakan untuk Skor Audit berdasarkan Umpan Balik Komunitas

Situs web proyek Tide, wptide.org, akan diluncurkan di WordCamp US dan akan memberikan skor kepada para pengembang, termasuk hal-hal spesifik seperti nomor baris dan deskripsi sniff yang gagal. Pengembang plugin akan dapat menggunakan situs untuk meningkatkan kode mereka dan pengguna WordPress akan dapat dengan cepat memeriksa kualitas sebuah plugin. Manajer produk XWP Luke Carbis menjelaskan bagaimana skor Tide saat ini dihitung.

“Saat ini, Tide menjalankan serangkaian kode sniffs di plugin / tema, mengambil hasilnya, menerapkan beberapa pembobotan (potensi masalah keamanan lebih penting daripada tab vs. spasi), dan kemudian rata-rata hasil per baris kode,” Carbis dikatakan. “Output dari ini adalah skor dari 100, yang merupakan indikator bagus dari kualitas plugin atau tema. 'Algoritma' yang menentukan skor pada dasarnya hanyalah serangkaian pembobotan.”

Bobot yang digunakan layanan saat ini dipilih sebagai titik awal, tetapi Carbis mengatakan tim berharap komunitas WordPress akan membantu mereka memperbaikinya.

“Jika masuk akal, mungkin suatu saat skor ini bisa muncul di admin WordPress (di halaman add new plugin),” kata Carbis. “Atau mungkin itu bisa mempengaruhi hasil pencarian (plugin berperingkat lebih tinggi berada di peringkat pertama). Atau mungkin tetap di wptide.org. Itu benar-benar terserah masyarakat untuk memutuskan. ”

Selain menjalankan codesniffs, layanan Tide akan menjalankan dua pemindaian lainnya. Pemindaian Lighthouse, menggunakan alat otomatis sumber terbuka Google untuk meningkatkan kualitas halaman web, akan dilakukan pada tema, yang menurut Carbis adalah "pencapaian teknologi yang luar biasa."

“Untuk setiap tema di direktori, kami menjalankan instalasi WordPress sementara, dan menjalankan audit Lighthouse dalam instance chrome tanpa kepala,” kata Carbis. “Ini berarti kami mendapatkan laporan mendetail tentang kualitas keluaran ujung depan tema, bukan hanya kode yang mendukungnya.”

Pemindaian kedua Tide akan melakukan langkah-langkah kompatibilitas PHP dan akan berlaku untuk plugin dan tema.

“Tide dapat mengetahui versi PHP mana yang akan digunakan oleh plugin atau tema,” kata Carbis. “Untuk pengguna, ini berarti kami berpotensi menyembunyikan hasil yang kami tahu tidak akan berfungsi dengan pemasangan WordPress mereka (atau setidaknya menampilkan peringatan). Untuk host, ini berarti mereka dapat dengan mudah memeriksa kompatibilitas PHP sebelum memutakhirkan instalasi ke PHP 7 (kami pikir ini akan menyebabkan lebih banyak instalasi ditingkatkan - efek bersihnya adalah peningkatan kecepatan yang nyata, yang menurut kami sangat menarik dan memotivasi). ”

Carbis mengatakan bahwa tim saat ini sedang bekerja dalam jangka pendek untuk memasukkan bagian Kompatibilitas PHP ke dalam API WordPress.org, yang menurutnya dapat mulai memengaruhi hasil pencarian tanpa perubahan apa pun pada inti WordPress.

“Kami juga ingin mulai terlibat dengan komunitas untuk mengetahui apakah menampilkan skor Kualitas Kode kepada pengguna WordPress bermanfaat, dan jika ya, seperti apa tampilannya? (misalnya skor di luar 100, rating bintang 5, A/B/C/D, dll),” kata Carbis. “Kami akan merilis saran kami tentang tampilan plugin ini segera setelah WordCamp US.”

Informasi lebih spesifik tentang metrik yang saat ini digunakan Tide dan bagaimana penerapannya pada plugin dan tema akan tersedia setelah layanan diluncurkan dalam versi beta. Jika Anda menghadiri WordCamp US dan memiliki beberapa saran atau masukan untuk ditawarkan kepada tim, pastikan untuk mampir ke stan sponsor Google.