Bir ekip üyesini web çerçevesini kullanmaya nasıl ikna edebilirim? [kapalı]


10

Soru şudur ve detay şu şekildedir: Bir programcı olarak onu tarafıma getirmek için söyleyebileceğim / yetiştirebileceğim bir şey var mı?

Bu konuda her iki taraf için geçerli argümanlar duymak isterim, ancak çoğunlukla onunla nasıl konuşulacağına dair öneriler.


Benim durumum şu: Lisans kursumda bir takım proje üzerinde çalışıyorum, üniversite için prototip olarak orta büyüklükte bir web sitesi inşa ediyorum. Hepsi grupta eşit kabul edilir ve atanmış bir lider yoktur, bu nedenle bu sorunun cevabı "çekme sırası" olamaz.

Hepsi eşit, ancak üyeler arasında büyük bir bilgi boşluğu var. Söz konusu ekip üyesi ve ben her ikisi de yetenekli geliştiriciyiz, ancak endüstri deneyimi yok. Diğer üç üye daha az yeteneklidir ve ikisi tamamen kalkınmayı seçmemiştir. Üçü de bilgi eksikliği nedeniyle durum hakkında yorum yapmayı reddetti.

Bir grup olarak, web sitesinin uygulanmasında hangi teknolojilerin kullanılacağına karar vermeye geliyoruz; özellikle, bir PHP framework (Code Igniter) kullanılıp kullanılmayacağı.

Ben lehte tartışıyorum:

  1. Tekerleği yeniden icat etmemek
  2. Çalışmak için iyi yazılmış ve test edilmiş kod tabanı
  3. Başlamak (son tarih istediğimizden daha yakın)
  4. Geliştirme hızı
  5. Sağlam ve bakımı kolay tasarım modelleri ve iyi uygulamalar

Eskiden olduğu gibi çalışmaktan yana olduğunu savunuyor:

  • Ismarlama, bir defalık işlevleri bir "kütüphane" dosyasına ihtiyaç duyduğu gibi yazmak
    • Veri erişimi ve bu verilerin sayfanın oluşturulması, oturuma / oturumdan / oturumdan alınması ve verilerin alınması / gönderilmesi vb.
  • Sayfa başına 1 dosyaya sahip olmak (kontrol, sunum ve veriler arasında endişelerin ayrılmasına neden olmaz)

Onun çerçeve kullanımına karşı nedenleri çoğunlukla onun amacını görememesine dayanıyor: tüm bunları zaten yapabilir. Çerçeve bunu değiştirmez, sadece zorlaştırır çünkü çerçeveyi öğrenmek zorundadır; şahsen yazdığı kodu kullanmak istemiyor.

Ayrıca, proje sadece bir prototip olduğundan ve hiçbir zaman sürdürülmeyeceğinden, bunun kod tabanının kalitesinin önemi olmadığını söyledi. Benim için sürdürülemez kod yazmak için bir bahane yok .

Neden bu argümanları yaptığını görebiliyorum, ama onun "sürdürülebilirlik konusundaki endişe eksikliği" ve "iyi tasarıma saygı duymama" ya da endişelerin ayrılmasıyla ilgili bir sorun yaşıyorum. Ancak, tasarım desenleri üzerinde hiç çalışmadığından şüpheleniyorum, bu yüzden yönteminin neden sürdürülemez olduğunu kanıtlamanın ne kadar etkili olduğunu bilmiyorum.

Bu projeye devam etmek istiyorum, ama yıllar boyunca öğrendiğim her şeyi dikkate almadan yapmak istemiyorum. Daha önce de söylediğim gibi, buradaki rütbeyi çekme imkanı yok, diğer ekip üyeleri de içeri girmeye istekli değil. Sadece geri çekilmeli ve işleri kendi yolunda yapmalı mıyım? Daha iyi bilemeyecek kadar inatçı ve deneyimsiz mi? Yoksa burada inatçı olan mıyım?

TL; DR Deneyimsiz ekip üyesi inatçı, onu nasıl yenebilirim?


2
Blog gönderinizde asıl soruyu bulmak çok zor :) Lütfen ikinizin de yaptığınız teknik argümanları vurgulayacak şekilde revize edin. Size tanımadığımız bir kişiyle nasıl konuşacağımızı söyleyemesek de, duruma programcı açısından yaklaşmanıza yardımcı olabiliriz. Orada evrimsel prototipleme konusunda iyi bir soru var, ama emin olamıyorum ...
yannis

4
Bunun bazı bölümleri muhtemelen şunlar
Karlson

3
he doesn't want to use code he hasn't personally written.İşletim sistemini,
IDE'yi

4
@AndyBursh öğrenirken I want to know exactly how everything worksgeçerli bir argüman, yeniden icat edildiğinde çark aslında kabul edilebilir. Belki, sadece belki, bunu inatçılık olarak değil, yardım çığlığı olarak okuyabilirsiniz.
yannis

4
since the project is only a prototype and will never be maintained Son son sözler :) Keşke bu varsayımı yaptığım her seferinde bir dolarım olsaydı ve yüksek up'ların sabırsızlığı ve kısa vadeli açgözlülüğünün prototipin şimdi ürün olduğuna karar verdiğini öğrendim.
maple_shaft

Yanıtlar:


20

Onu onunla konuşamayacaksın. Buna Dunning-Kruger etkisi denir . Ne bilmediğini bilmemek için çok cahil ve avantaj olarak ifade ettiği şeyi kaybetmekten çok korkuyor.

Bir uzlaşmaya varamadığınızda, bunun yerine bir uzlaşmaya varmalısınız. Belki de işi parçalara ayırabilirsiniz, böylece çerçeveyi öğrenme ihtiyacı asgari düzeydedir. Belki bir tür "tasarım" var, burada her biri birkaç hafta boyunca kendi yolunuzu yapıyor ve sonra takım hangisinin en iyi olduğunu oy veriyor. Belki sponsor profesörünüzü veya müşterinin bağlantının çözümünde kim varsa dahil edebilirsiniz.


3
+1, çünkü bu bazen gerçek dünya olur. En iyi yaklaşım olan başka bir geliştiriciye katılamadığım işlerde bulundum. Bu yüzden ikimiz de bir POC başlattık ve her birinin artılarını ve eksilerini inceledik. Her 10 kişiden 9'unda iki POC'nin birleşimi olan bir çözüm benimsemiştik ve herkes süreçten bir şeyler öğrendi.
Timothy Baldridge

1
+1 Dunning-Kruger hakkında bilgi vermek için! Herkesin bilmesi gerek ..
Stephen Gross

Bah. Dunning-Kruger'a birisiyle aynı fikirde olmadığınızda atıf yapmak çok kolay - onlara aptal demek çok kolay. Belki takım arkadaşı, çerçevelerin ödev ruhunu ihlal ettiğine inanıyor, belki de bir çerçevenin çözdüğü sorunları çözmek istiyor, belki CodeIgniter, Cake, Symfony tartışmasından kaçınmak istiyor ... İlk varsayım o değildi o bir salaktı.
Corbin Mart

1
@Corbin, Dunning-Kruger zeka eksikliğinden değil, deneyimsizlikten ibaret. Çok farklı iki şey. Sebeplerinizin geçerli olabileceğine katılıyorum, ancak OP bunların iddia ettiği argümanlar olmadığını söyledi. Bunun yerine, çerçeve kullanımının "anlamını görmez", çünkü daha kısa sürede kendini sıfırdan iyi bir şey yazabilir. Hemen hemen hiç bir şey bilmediği bir çözüme kıyasla kendi yeterliliğini fazla tahmin eden deneyimsiz bir kişi, Dunning-Kruger'in bir ders kitabı örneğidir. Böyle insanlar bir şeyle "konuşulamaz", gösterilmeleri gerekir.
Karl Bielefeldt

7

Sizin lehinize olan bir argüman bilginin tekrar kullanılabilirliğidir. İyi bilinen ve yaygın olarak kullanılan bir çerçeveyi (CodeIgniter gibi) öğrenen tüm ekip üyeleri bir sonraki projede bilgilerini tekrar kullanabilecektir. Bir gelişigüzel bilgi sahibi olmakla birlikte, tescilli bir “kütüphane” tekrar kullanılamaz. Muhtemelen bu proje hakkında yararlı ve tekrar kullanılabilir bilgiler edinmeyi tercih ettikleri için bu diğer ekip üyeleriyle iyi yankılanabilir.

Başka bir argüman, geliştirme / bakım maliyetlerinin somut bir ölçümü olabilir. CodeIgniter'da tecrübeli bir geliştiricinin, tüm bu tescilli fonksiyonları kendi başına yazan meslektaşınızdan daha hızlı gelişebileceğini hayal ediyorum. Bu hem sizin hem de onunla özdeş bir web sayfası (CodeIgniter ile birlikte, kendi yolunda) oluşturup tamamlanma zamanlarını ölçerek gösterilebilir. Ardından, tekrar tamamlanma süresini ölçerek sayfalarda bir dizi değişiklik / uzantı yapın. Tabii ki, şartname nötr zeminde savaşmak için her ikinizden bağımsız biri tarafından hazırlanmalıdır.

Bir diğeri - belirttiğiniz gibi - kod kalitesidir. Web sayfaları hazır olduğunda, her biri için aynı kabul testleri kümesini çalıştırın ve hata yoğunluğunu karşılaştırın.

Tabii ki, zaman baskısı altında olduğunuzda, bu tür ölçümleri durdurma ve yapma imkanı olmayabilir. Yani muhtemelen bu ikileme hızlı bir çözüm bulmak istiyorsunuz. Diğer ekip üyelerini ikna etmeye çalışın (örneğin, yayınınıza gelen cevapları burada okuyarak :-), ona bir grup baskısı çekmek için). Sonunda, gerçekten ikna edilemiyorsa, projeyi biri onun için ve - ideal olarak - ekibin geri kalanı için CodeIgniter kullanarak iki parçaya ayırmak isteyebilirsiniz. Yeteneklerinizi en iyi şekilde yerine getirmeye odaklanın ve istediği şeyi yapmasına izin verin. Sonuçlar muhtemelen kendileri için konuşacaktır.


Bunu göstermek için bir hız testi fikrini seviyorum. Ne tür kabul testleri yapabiliriz? Kesinlikle bunu önereceğim, ancak onunla (veya grupla) iyi bir şekilde oturacağından emin değilim çünkü hepimizin yönetmesi gereken başka süreler var ve herkesin özellikle spec veya "israf zamanı" ( Eminim ki).
Andy Hunt

1
Bilim, çalışıyor: xkcd.com/54
StuperUser

5

Diğer 3 takım arkadaşına katılman gerektiğini hissediyorum. İkinizin de argümanlarınızı onlara sunmanız ve bunları anlamaları için onlara açıklama yapmanız gerekir. Günün sonunda, bu kod tabanı ile de çalışmak zorunda kalacaklar. Ve eğer hepsi eşitse, o zaman ne ile çalışmak istediklerini söylemeliler.

Her birinizin kendi çözümlerinizin faydalarını özetlemek ve diğer ekip üyelerine neden en iyi yol olduğunu düşündüğünüzü göstermek için iyi bir yaklaşım olacağını düşünüyorum. Sonra karar versinler. 3 tane var, bu yüzden kravat kırıcı olacak.

Belirtmek istediğiniz bir şey, eğer bu sizin Sr. projenizse ve diğer ekip üyelerinin başka bir deneyimi yoksa, bu projenin potansiyel işverenlere yapabilecekleri işi yansıtması gerektiğidir. Doğru yaparsanız, bir röportajda iyi bir konuşma noktası olabilir. Yeni mezunlardan üst düzey projelerini, nasıl tasarlandıklarını ve geliştirildiklerini belirtmelerini istediğimi biliyorum.

Eğer diğer adamın yaklaşımı ile giderse, onu emmek zorunda kalacaksınız. Ama umudunu kaybetme. Yazdığı kaosun her şeyi etkilememesi için iyi bir tasarım geliştirin. Zamanınız varsa, bazı kodları temizleyin ve bazı şeylerini yeniden düzenleyin ve her seferinde tekerleği yeniden icat etmek zorunda olmadığını gösterin.


Bunun dürüstçe gruptaki diğer insanlara nasıl yansıdığını düşünmemiştim. Buna dikkat çekeceğim.
Andy Hunt

1

Üniversitenin bir sanal alan gibi olduğunu hissediyorum. Orada yaptığınız şeylerin çoğu dağıtımda kullanılmıyor. Böylece size rahatlık alanınızı denemeniz ve çıkmanız için çok daha fazla özgürlük sunar. Başarısız olmanın çok fazla etkisi olmayacağından yeni şeyler keşfedin. Ayrıca sizin durumunuzda, ekip üyelerinizin önceden bilgisi olan birisinin onlara yardımcı olması gibi ek bir avantajı vardır.

Diğer deneyimli ekip üyelerine gelince, yeni bir şey öğrenmek istemiyorsa üniversiteye gelmesi gerekmez. Bu, yeni bir şey öğrenmek ve araç kutusuna eklemek için iyi bir fırsat.

Deneyimsiz ekip üyeleri için, işe alınma / daha iyi istihdam edilme şansları, özgeçmişlerinde CodeIgniter gibi bir çerçeve ile artacaktır (aslında bunu özgeçmişlerinde haklı çıkarmak için bilgi).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.