Pertanyaannya adalah ini dan detailnya sebagai berikut: apakah ada yang bisa saya katakan / angkat, sebagai seorang programmer, untuk membawanya ke pihak saya?
Saya ingin mendengar argumen yang sahih untuk kedua belah pihak mengenai hal ini, tetapi sebagian besar saran untuk cara membicarakannya.
Situasi saya adalah ini: Saya sedang mengerjakan proyek tim pada program gelar saya, membangun situs web menengah sebagai prototipe untuk universitas. Semua dianggap sama dalam kelompok dan tidak ada seorang pun pemimpin yang ditunjuk sehingga jawaban untuk masalah ini tidak bisa "tarik peringkat".
Semua sama, namun ada kesenjangan besar dalam pengetahuan antara anggota. Anggota tim yang dimaksud dan saya sama-sama pengembang yang cakap, meskipun ia tidak memiliki pengalaman industri. Tiga anggota lainnya kurang mampu, dan dua telah memilih keluar dari pengembangan sepenuhnya. Ketiganya telah menolak untuk mengomentari situasi karena kurangnya pengetahuan.
Sebagai sebuah kelompok, kami akan memutuskan teknologi apa yang akan digunakan dalam implementasi situs web; khusus, apakah akan menggunakan kerangka kerja PHP (Code Igniter) atau tidak.
Saya berdebat mendukung, dengan mengutip:
- Tidak menciptakan kembali roda
- Basis kode yang ditulis dan diuji dengan baik untuk bekerja
- Mulai (tenggat waktu lebih dekat dari yang kita inginkan)
- Kecepatan pengembangan
- Pola desain yang sehat dan dapat dipelihara serta praktik yang baik
Dia berdebat untuk bekerja dengan cara yang biasa dia lakukan:
- Menulis dipesan lebih dahulu, fungsi satu kali ke file "perpustakaan" seperti ketika ia membutuhkannya
- Fungsi untuk akses data dan rendering data halaman, mendapatkan / pengaturan ke dan dari sesi dan mendapatkan / memposting data dll
- Memiliki 1 file per halaman (sehingga tidak ada pemisahan kekhawatiran di antara kontrol, presentasi, dan data)
Alasannya menolak menggunakan kerangka kerja sebagian besar didasarkan pada dia tidak bisa melihat intinya: dia sudah bisa melakukan semua hal itu. Kerangka kerjanya tidak mengubah itu, itu hanya membuatnya lebih sulit karena dia harus belajar kerangka kerja; dia tidak ingin menggunakan kode yang belum dia tulis sendiri.
Dia juga mengatakan bahwa "tidak masalah kualitas basis kode, karena proyek ini hanya prototipe dan tidak akan pernah dipertahankan". Bagi saya, itu bukan alasan untuk menulis kode yang tidak dapat dipelihara.
Saya bisa melihat mengapa dia membuat argumen itu, tetapi saya mempersoalkan "kurangnya kepeduliannya terhadap pemeliharaan" dan "mengabaikan desain yang baik", atau bahkan pemisahan masalah. Namun, saya curiga dia tidak pernah mempelajari pola desain, jadi saya tidak tahu seberapa efektif menunjukkan mengapa metodenya bisa terbukti tidak dapat dipertahankan.
Saya ingin melanjutkan proyek ini, tetapi saya tidak ingin melakukannya tanpa memperhatikan semua yang telah saya pelajari selama bertahun-tahun. Seperti yang saya katakan sebelumnya, tidak ada kemungkinan menarik peringkat di sini, juga tidak ada anggota tim lain yang mau melakukan pitching. Haruskah saya mundur dan melakukan sesuatu dengan caranya? Apakah dia terlalu keras kepala dan tidak berpengalaman untuk tahu lebih baik? Atau apakah saya yang keras kepala di sini?
TL; DR Anggota tim yang tidak berpengalaman sedang keras kepala, bagaimana saya bisa memenangkannya?
he doesn't want to use code he hasn't personally written.
Dia lebih baik membuang sistem operasinya, IDE, telepon, lampu lalu lintas dll.
I want to know exactly how everything works
adalah argumen yang valid ketika belajar, sedang menciptakan kembali roda sebenarnya dapat diterima. Mungkin, mungkin saja, Anda bisa membacanya sebagai teriakan minta tolong dan bukan sebagai keras kepala.
since the project is only a prototype and will never be maintained
Akhir kata-kata terakhir :) Saya berharap saya punya satu dolar setiap kali saya membuat asumsi ini dan menemukan bahwa ketidaksabaran dan keserakahan jangka pendek dari para petinggi memutuskan bahwa prototipe ADALAH produk sekarang.