Daniel Bachhuber Membahas WP-CLI, WP REST API, dan Tantangan Berkontribusi pada Open Source di Roots Radio Podcast

Diterbitkan: 2016-05-16

daniel-bachhuber Daniel Bachhuber, pengelola proyek WP-CLI dan pengembang yang berkontribusi untuk WP REST API, bergabung dengan Chris Carr dan Austin Pray pada episode terbaru podcast Roots Radio. Bachhuber membahas pengalamannya baru-baru ini dalam meng-crowdfunding karyanya di “A More RESTful WP-CLI” serta tantangan yang dia hadapi sebagai kontributor untuk berbagai proyek open source selama bertahun-tahun.

Di bagian pertama episode, Bachhuber membagikan bagaimana dia menghabiskan 283 jam waktu yang didanai komunitas WordPress untuk memajukan proyek WP-CLI dan WP REST API. Pendanaan memberinya kesempatan untuk mendedikasikan pembagian waktu antara dua proyek. Bachhuber menghabiskan sekitar 95 jam menuju REST API pada bulan Januari dan Februari, tetapi sebagian besar waktu digunakan untuk membuat WP-CLI lebih ramah bagi pengembang yang bekerja dengan REST API.

“Pengembang WordPress akan meluangkan banyak waktu sekarang untuk menulis titik akhir REST yang mengekspos fungsionalitas mereka ke dunia, dan akan sangat menyenangkan jika WP-CLI beroperasi dengan baik dengan itu dan memungkinkan Anda untuk menggunakan fungsionalitas itu di baris perintah tanpa harus menulis perintah WP-CLI Anda sendiri secara terpisah,” kata Bachhuber.

Dia membahas tantangan untuk mencapai tujuan yang luas ini dan apa yang dia pelajari tentang crowdfunding selama proses tersebut.

“Proyek kickstarter RESTful WP-CLI sengaja dibuat ambisius, karena saya seorang pria yang memiliki ide-ide besar dan suka melakukan hal-hal besar,” kata Bachhuber. “Ada beberapa hal yang saya merasa sangat senang bahwa saya dapat mengirimkan dan memproduksi sejauh ini, dan ada fitur lain yang, karena satu dan lain alasan, saya belum dapat mengeksekusi dan itu sedikit membuat frustrasi. .

“Ini adalah permainan bola yang sama sekali berbeda yang mencoba mengelola harapan pendukung Kickstarter Anda daripada satu klien. Saya punya 107 klien yang harus saya bahagiakan,” katanya.

Namun demikian, Bachhuber mengatakan dia bisa mendapatkan backlog masalah untuk WP-CLI hingga kurang dari 60 masalah dan waktu khusus telah memungkinkannya untuk menyelesaikan masalah lama yang telah “menahan sejak awal waktu.”

Sebagai bagian dari hadiah yang ditawarkan untuk kontributor kampanye crowdfunding, Bachhuber menawarkan waktunya untuk berkonsultasi dengan individu dan organisasi, yang menurutnya lebih mudah daripada hadiah barang curian fisik tradisional.

“Saya sangat senang bahwa saya memilih [konsultasi] daripada harus memberikan barang curian fisik, karena sangat sulit untuk mendapatkan dan mengirim ke semua orang, terutama ketika Anda memiliki pendukung internasional,” katanya. “Meskipun saya telah menghabiskan banyak waktu saya untuk memenuhi penghargaan dan berbicara dengan orang-orang dan menelepon mereka dan bertemu dengan mereka secara langsung, ini adalah upaya yang jauh lebih mudah untuk dikelola daripada mengirim 100 cangkir kopi ke seluruh dunia.”

Ketika ditanya apakah dia akan melakukannya lagi, Bachhuber menjawab ya tetapi menekankan bahwa menghabiskan banyak waktu untuk proyek open source hanya akan berhasil jika Anda menjaga keseimbangan yang sehat dengan aspek kehidupan lainnya.

“Saya pikir sangat penting bahwa jika Anda berkontribusi pada proyek open source secara teratur atau bahkan mempertahankannya, Anda menyeimbangkan waktu Anda antara itu dan hal-hal lain,” katanya. “Sangat mudah untuk bosan dengan proyek open source tersebut jika Anda menghabiskan 100% waktu Anda untuk itu selama sebulan penuh atau enam bulan.

“Saya cukup berniat untuk mengatakan bahwa uang yang saya kumpulkan akan menutupi keterlibatan saya dengan proyek selama enam bulan, beberapa jam, dan itu akan menjadi pekerjaan paruh waktu. Itu adalah cara yang sangat sehat untuk mendekatinya. Saya pikir saya akan terbakar jika saya hanya mencoba menyelam ke dalamnya, menghidupkannya, dan beralih ke hal berikutnya, ”kata Bachhuber.

Tantangan Emosional Bekerja di Proyek Open Source

Selama wawancara, Bachhuber diminta untuk membagikan perasaannya tentang apa yang dia sebut sebagai "kerfuffle dengan REST API" yang terjadi pada bulan Februari. Tim REST API telah menulis proposal penggabungan pada bulan September 2015 yang merekomendasikan penggabungan API dalam dua bagian – infrastruktur di 4.4 dan posting, komentar, istilah, dan titik akhir pengguna di 4.5 atau 4.6. Setelah sebagian mengeksekusi proposal itu, tim mengadakan obrolan status untuk membahas rencana ke depan.

Bachhuber mengatakan bahwa diskusi tersebut menjadi “peristiwa yang sangat emosional” setelah Matt Mullenweg mengatakan proyek tersebut membutuhkan kesamaan fitur dengan admin WordPress sebelum salah satu titik akhir dapat dipertimbangkan untuk digabungkan. Setelah menghabiskan ratusan jam ke dalam proyek bersama beberapa kontributor berdedikasi yang sudah tersebar tipis, dia menemukan persyaratan baru ini adalah pil yang sulit untuk ditelan.

“Baik atau buruk, sebagai pengelola atau bahkan peserta proyek open source, Anda harus memiliki kulit yang tebal dan menyadari bahwa setiap saat keputusan yang dibuat bukan tentang Anda – tetapi tentang proyek tersebut,” kata Bachhuber. “Bahkan jika Anda secara pribadi tersinggung dengan keputusan itu, itu tidak masalah karena ini bukan tentang Anda. Ini benar-benar sulit untuk dihadapi secara emosional.”

Bertahun-tahun Bachhuber berkontribusi dan memelihara proyek sumber terbuka telah mengajarinya beberapa hal tentang mengelola stres dan konflik yang ia rencanakan untuk dibagikan di WordCamp Europe dalam sebuah ceramah berjudul, “Belasungkawa saya, Anda sekarang adalah pengelola proyek OS yang populer. ”

“Saya menemukan banyak kegembiraan dalam memelihara proyek open source,” kata Bachhuber. “Saya juga harus secara aktif bekerja untuk mengatasi sisi emosional persamaan untuk memastikan saya berada di ruang yang sehat untuk terus mempertahankan proyek dan proyek tersebut tidak mempengaruhi saya secara pribadi. Butuh waktu bertahun-tahun bagi saya untuk sampai pada titik di mana saya merasa nyaman dengan itu.”

Dalam kasus WP REST API, Bachhuber telah tiba di tempat di mana ia dapat mengelompokkan reaksi dan tanggapan emosionalnya terhadap pendapat yang berbeda.

"Saya telah sampai pada titik di mana saya peduli tetapi saya tidak peduli," katanya. “Saya peduli dalam arti bahwa saya masih ingin melihat titik akhir itu masuk ke inti dan melihat hasil kerja kami terwujud. Saya tidak peduli karena saya tidak terikat secara emosional dengan apa yang terjadi pada kerangka waktu tertentu. Sejujurnya saya lebih suka itu terjadi ketika sudah siap untuk terjadi sebelum waktunya, dan saya menyadari bahwa saya mungkin bukan orang yang memenuhi syarat terbaik untuk membuat keputusan itu.

Di sisa episode, Bachhuber dan Carr membahas React, Redux, Karma, Enzyme, dan alat lain untuk pengujian dan pengembangan dengan REST API. Lihat rekaman episode di Roots Radio untuk detail lebih lanjut tentang karya Bachhuber di WP-CLI dan pengalaman crowdfunding-nya.