Bagaimana berkomunikasi dengan rekan kerja yang menganggap kerangka kerja sebagai hit kinerja

10

Bagaimana kita bisa menjual ide seperti "kita harus menggunakan jQuery karena sangat dioptimalkan dan kompatibel dengan peramban silang" atau "kerangka kerja entitas itu keren karena rapi dan merawat model kita secara otomatis" ketika respons umum adalah pernyataan kosong seperti "jquery tidak berkinerja baik "atau" entitas membawa 12 kolom di atas meja ketika kita hanya membutuhkan 10 "?

Saya seorang pria pragmatis yang cenderung mempercayai aksioma yang telah saya kembangkan melalui pengalaman (ini bukan masalah kinerja sampai ada perlambatan yang terlihat). Saya tidak tahu apakah ada "kategori" spesifik yang cocok dengan ekstrim lain, sedangkan semuanya adalah masalah kinerja sampai terbukti sebaliknya ... atau bahkan di mana untuk memulai komunikasi di sini.

P.Brian.Mackey
sumber
7
Dia tidak dipanggil Dick kan? WTF Harian 'Java is Slow'
AlexC
Keluarkan saja tas itu darinya.
Pekerjaan
1
@AlexC - OMG YA !!!!!!!!!!!!
P.Brian.Mackey
1
"Tunjukkan data pada saya!" yang akan menjadi versi IT dari garis Jerry Maguire tentang uang yang Tom Cruise buat terkenal tahun lalu.
JB King
2
Katakan padanya bahwa dia adalah hit kinerja untuk proyek Anda.
Wyatt Barnett

Jawaban:

15

Bawakan mereka fakta-fakta sulit!

Misalnya ada tolok ukur kinerja untuk kerangka kerja ORM dan JS. Di atas itu semua kerangka kerja dan ORM memiliki argumen penjualan yang baik di beranda mereka.

Setelah membaca komentar Anda, saya percaya pada kasus Anda masalahnya bukan teknologi yang tepat. Ini adalah orang-orang yang menolak untuk belajar teknologi baru.

Amir Rezaei
sumber
3
+1 - Kesulitan di sini adalah bahwa saya telah melalui dan membuat prototipe untuk berbagai alat dan teknologi baru untuk ditampilkan ... ya mereka berkinerja baik. Tapi, saya merasa ada stigma terhadap setiap dan semua perubahan atau alat baru yang berasal dari kegagalan alat di masa lalu (dan mungkin ketakutan akan kompleksitas). Jadi, taruhan aman hanya untuk mempertahankan status-quo. Sayangnya, saya tidak tahu berapa lama alat kuno kami akan bertahan melawan meningkatnya harapan dan kebutuhan pengguna.
P.Brian.Mackey
1
@ P.Brian.Mackey - Anda selalu dapat mencoba rute wastafel atau berenang. Pada proyek Anda berikutnya di mana Anda bisa memimpin implementasi, terapkan kerangka kerja Anda. Dia bisa menjaga atau memeriksa.
Joel Etherton
Masalah - Tidak ada pembandingan kerangka kerja JS yang relevan dengan JS khusus (solusi khusus).
Nicole
6

Saya menghadapi masalah ini sebelumnya, orang yang ingin menemukan kembali roda. Saya biasanya menjelaskan kepada mereka bahwa kita dapat membuat produk lebih baik dan lebih halus jika kita menghabiskan waktu menyempurnakan apa yang penting, dan bukan apa yang ada di bawahnya. Plus ... Maksudku kerangka kerja ada untuk ALASAN, dan kinerja benar-benar tidak banyak masalah hari ini. Keandalan lebih penting, dan jika kerangka kerja memiliki ulasan / peringkat yang baik maka mereka mungkin lebih dapat diandalkan daripada sesuatu yang bisa dilakukan orang dengan cepat.


sumber
+1 untuk gagasan bahwa walaupun kemungkinan ada beberapa kinerja yang berhasil, itu biasanya merupakan perdagangan yang bagus untuk mengurangi waktu-ke-kapal secara signifikan, pemeliharaan yang lebih baik, dan, dengan kerangka kerja yang matang / dioptimalkan secara luas, mungkin lebih dapat diandalkan daripada apa yang dapat Anda bangun sendiri . Jarang bahwa penemu-ulang roda akan berpendapat bahwa menggunakan apa pun selain perakitan murni itu satu-satunya cara untuk mencapai kinerja nyata, jadi mengapa penggunaan kerangka kerja di atas garis? (FWIW saya tidak berada di kamp "kinerja tidak banyak masalah hari ini", karena saya masih berpikir kinerja sangat penting. Hanya bukan satu-satunya hal yang penting.)
Matthew Frederick
6

Semua orang tampaknya tidak setuju dengan kolega Anda, tetapi saya pikir Anda harus menanggapi argumennya dengan serius jika tidak ada alasan lain selain memahami sudut pandangnya. Saya sangat percaya pada kerangka ketika Anda membutuhkannya atau ketika mereka benar-benar memberikan optimasi, tetapi saya juga percaya bahwa terlalu mengandalkan pada suatu kerangka kerja dapat menyebabkan pengembangan yang lemah dalam beberapa kasus.

Saya pikir Anda harus mendekati masalah lebih sedikit dari sudut pandang bahwa rekan kerja Anda salah dan lebih dari sudut pandang bahwa penggunaan kerangka kerja yang Anda pikirkan akan meningkatkan waktu pengembangan, kinerja, pemeliharaan, dll.

Saya selalu mencoba untuk mengingat untuk menggunakan alat yang tepat untuk pekerjaan yang tepat. Saya tidak perlu sled 12lb (jQuery) untuk memalu paku untuk menggantung gambar (swap gambar). Tetapi jika saya mengalami situasi di mana saya menggantung gambar yang membutuhkan lonjakan kereta api untuk tetap di dinding, saya lebih baik memiliki kereta siap untuk pergi.

Joel Etherton
sumber
4

dia benar, ada overhead

tetapi asumsi bahwa overhead kerangka lebih dari solusi kode tangan mungkin tidak benar, dan bahkan jika itu benar, overhead mungkin tidak signifikan.

mengusulkan tes:

  • Anda berdua menulis sesuatu yang realistis tetapi relatif kecil
  • Anda menggunakan jQuery (atau apa pun) dan dia tidak dapat menggunakan apa pun
  • mengukur dua hal:
    1. berapa lama Anda berdua untuk kode solusi (dengan asumsi keterampilan pengkodean Anda setara)
    2. berapa lama untuk menjalankan (siklus hidup penuh) setiap solusi

kemungkinan besar, akan ada overhead kecil dengan kerangka kerja - sangat kecil - tetapi perbedaan besar dalam berapa lama waktu yang dibutuhkan untuk kode [dan debug!] solusinya

maka teman Anda bisa berdebat dengan fakta, bukan dengan Anda

Catatan: bersiaplah untuk resistensi lanjutan; berkali-kali pushback terhadap framework ditulis dalam istilah teknis, tetapi sebenarnya merupakan tabir asap untuk "tidak ditemukan di sini" atau "Saya tidak ingin belajar alat lain"

Steven A. Lowe
sumber
3

Ingatkan kolega Anda yang menemukan kembali roda itu bahwa apa yang dia lakukan adalah berbagai Optimalisasi Dini. Bagaimana dia bisa tahu bahwa kerangka kerja ini merepresentasikan hit kinerja yang tidak dapat diterima sampai mereka terbukti menyebabkan masalah. Sementara itu, produktivitas timbal balik Anda pasti akan turun dengan semua pekerjaan ekstra yang harus Anda lakukan.

Adam Crossland
sumber
2

Bagaimana dengan menjelaskan kinerja yang mencapai waktu pengiriman proyek ketika Anda tidak menggunakan beberapa kerangka kerja yang sangat menghemat waktu dan teruji pertempuran ini?

G_P
sumber
Tidak yakin alasan pemungutan suara, apakah Anda mengatakan TIDAK menggunakan jQuery atau kerangka kerja mapan lainnya (selama ada kebutuhan yang pasti untuk mereka) akan mempersingkat waktu pengiriman proyek? Ini pada dasarnya adalah argumen "jangan menemukan kembali roda" ...
G_P
Saya pergi dengan pengecut downvote, juga. Seseorang memiliki bug di kiesternya hari ini.
Adam Crossland
1
Saya setuju dengan Anda (dan tentu saja tidak menurunkan suara Anda!), Tetapi saya telah melihat waktu pengembangan berkepanjangan karena menggunakan kerangka kerja untuk tugas sederhana yang bisa dilakukan dengan cepat dengan tangan, dan kemudian harus berurusan dengan kerangka kerja yang tidak cukup benar, tidak melakukan cukup apa yang Anda butuhkan, tidak cukup dipahami, dll
Carson63000
@ Carson63000 - Setuju dengan Anda 100% - Ruang lingkup tugas yang ada pasti perlu ditimbang terhadap dampak dari memperkenalkan kerangka kerja.
G_P
1

Salah satu opsi adalah untuk memberitahunya bahwa ia akan bertanggung jawab atas penyempurnaan kinerja - jika dapat ditunjukkan ada masalah kinerja! Atau, jika Anda memiliki sumber daya, bangun dua konsep Bukti: Anda membangun milik Anda dengan jQuery, dan semua yang Anda inginkan. Ia dapat membangunnya dengan sistem super cepat yang digulung tangan sendiri. Jangan biarkan ini berlangsung selama lebih dari beberapa hari (ini adalah bukti konsep) dan lihat siapa yang berkinerja lebih baik di akhir.

Dan tentu saja seperti yang disebutkan orang lain, dapatkan beberapa angka keras dan profil kinerja untuk kedua sisi argumen.

FrustratedWithFormsDesigner
sumber
1

Pertama, ia mungkin tepat untuk situasi spesifik Anda.

Karena tampaknya Anda mengalami masalah untuk membuatnya melihat sudut pandang Anda, Anda perlu melakukan pekerjaan yang lebih baik untuk meyakinkannya.

Anda berdua berada di dua titik berbeda di sepanjang garis antara "Bangun" dan "Beli". Ini adalah garis yang cukup panjang. Di sebelah kiri, di "Bangun" Anda memiliki SpaceX, yang harus membangun seluruh industri. Di sebelah kanan, dalam "Beli" Anda memiliki outsourcing lengkap dari semua fungsi TI ke IBM, HP, dan sejenisnya, dan bisnis tidak memiliki kode sama sekali. Di tengah, sekitar 2 mm terpisah, adalah kalian berdua. Anda berdua perlu meyakinkan manajemen bahwa pendekatan Anda pada "build vs buy" pada framework dan orm dan semacamnya - dan dengan "buy" Maksud saya "tidak dibangun di rumah" - adalah demi kepentingan terbaik perusahaan, lama -istilah. Twitter akan mati jika mereka melakukan outsourcing ke IBM. Mereka menggulung sendiri. Berpikir tentang itu.

Either way, manajemen perlu turun dari lapangan golf dan masuk ke sana dan melakukan pekerjaan mereka.

Christopher Mahan
sumber
0

Nah untuk ORM satu jawabannya adalah "Hanya jika Anda menulis permintaan Anda seperti itu, yang sama dapat dikatakan untuk SQL". Seperti yang orang lain katakan, fakta sulit adalah yang Anda butuhkan.

Juga, ajukan pertanyaan spesifik untuk menggali apa yang dia katakan - "Bisakah Anda memberi saya contoh JQuery tidak tampil karena itu bukan pengalaman saya".

Opsi ketiga, dan pengembang tua yang bijak menyarankan ini kepada saya, cukup sertakan "hal" itu (dengan asumsi itu tidak memiliki masalah buruk).

Mencari persetujuan hanya mengarah pada jawaban "tidak". Dapatkan di sana, maka Anda dapat meminta mereka untuk menunjuk ke area tertentu dan meminta mereka untuk memberi tahu Anda apa masalahnya.

"Hei, kode EF ini, hanya mengembalikan 2 item data yang dibutuhkan dari tabel itu, apa masalahnya" dll.

Jelas, Anda perlu cukup percaya diri pada diri sendiri dan alat yang Anda gunakan sebelum melanjutkan dengan pendekatan ini! :-)

ozz
sumber
0

Yah menolak perpustakaan seperti itu di luar kendali adalah bodoh dan terkadang sombong. Jam produk diinvestasikan dalam ini dan pemikiran di belakang mereka membuat menolaknya hanya konyol.

Bisa jadi rekan kerja Anda benar karena Anda perlu membandingkan dan mengalahkan tuntutan perangkat lunak, yang merupakan bagian dari desain. Bisa jadi solusi ORM atau ActiveRecord adalah hanya untuk banyak kerja keras atau sebaliknya, bahwa perangkat lunak membutuhkan solusi yang benar-benar digabungkan untuk DB dan ORM tidak akan memotongnya.

Mempertimbangkan hal-hal ini penting setiap kali Anda mendesain perangkat lunak.

Untuk perpustakaan sisi klien saya harus mengatakan itu benar-benar bodoh karena Anda selalu dapat menemukan kerangka kerja yang cocok untuk kebutuhan Anda. Dan seperti yang dikatakan beberapa orang di depan saya, Apa yang lebih baik daripada kerangka yang diuji pertempuran?

Biarkan dia mengeluarkan semua masalah lintas browser, dia akan mendatangi Anda dengan sukarela tentang cara menggunakan kerangka kerja.

Btw, saya pernah punya bos yang tidak bertanggung jawab atas kerangka kerja. Saya hanya menunjukkan kepadanya betapa mudahnya membuat permintaan ajax alih-alih menyalin fungsi berulang-ulang (yang merupakan ide bodoh di tempat pertama), yah dia tidak tahu bagaimana kode begitu ..

Cu7l4ss
sumber