Facebook PROGRAMINIZI EXTEDE Mİ?
Facebook PROGRAMINIZI EXTEDE Mİ?
Özet:
Bu makalede, çift programlama kavramını ve doğru uygulamasını tartışacağım. Ayrıca, kişisel deneyime dayalı ayrıntılı açıklamalar sağlayarak çift programlama ile ilgili 15 benzersiz soruyu cevaplayacağım. Çift programlama, eğitim ile ilgili değil, kıdemli çiftlerin kıdemli ve genç çiftleri ile gençlerle birlikte eşleştiği işbirlikçi bir yaklaşımdır. Etkili çift programlama, iyileştirilmiş iletişim ve kod kalitesine yol açabilir.
Anahtar noktaları:
- Çift programlama eğitim ile ilgili değil, işbirlikçi bir yaklaşım.
- Kıdemli geliştiricilerle kıdemli geliştiriciler ve genç geliştiricilerle eşleştiricilerle eşleştiriciler.
- Kıdemli ve genç bir geliştirici arasında etkili eşleştirme hala olabilir.
- Bir stajyerle eşleştirmek, her iki taraf için değerli öğrenme deneyimlerine yol açabilir.
- Yönetimin verimliliğe odaklanması, çift programlamada zorluklar yaratabilir.
- Çift programlama, bir hava trafik kontrolörü değil, yardımcı pilot gibi hissetmelidir.
- Çift programlama mentorlukla eşdeğer değildir.
- Eşleştirme, anında geri bildirim sağlar ve aşırı karmaşık kodu tanımlamaya yardımcı olur.
- Çift programlama sırasında etkili iletişim önemlidir.
- İş yükü paylaşılmalı ve her iki geliştirici de katkıda bulunmalıdır.
- Eşleştirme oturumları sırasında yan konuşmalar dikkat dağıtıcı olabilir.
- Tüm sorunlar çift programlama gerektirmez ve bireysel çalışma gerekli olabilir.
- Çift programlama daha uzun sürebilir, ancak anında akran incelemesi ve işbirliği sağlar.
- Genç geliştiriciler yine de çift programlama yoluyla öğrenebilir, ancak çaba ve etkili iletişim gerektirir.
- Etkili çift programlama için sorgulama ve deneme gereklidir.
Sorular:
1. Çift programlama nedir?
Çift programlama, iki geliştiricinin aynı görevde birlikte çalıştığı işbirlikçi bir yaklaşımdır.
2. Kıdemli geliştiriciler kıdemli geliştiriciler ve genç geliştiricilerle eşleştirmeli mi, genç geliştiricilerle?
Evet, kıdemli geliştiricilerle kıdemli geliştiriciler ve genç geliştiricilerle eşleştirmek, etkili işbirliği sağlar.
3. Kıdemli bir geliştirici bir genç geliştirici ile eşleştirebilir mi?
Evet, eğitim amacıyla ideal olmasa da, kıdemli ve genç bir geliştirici arasında etkili eşleştirme hala meydana gelebilir.
4. Bir stajyerle eşleştirmek nasıl faydalı olabilir?
Bir stajyerle eşleştirmek, her iki taraf için değerli öğrenme deneyimleri sağlayabilir.
5. Çift programlamada ne zorluklar ortaya çıkabilir?
Yönetimin üretkenliğe odaklanması, çift programlamada zorluklar ve stres yaratabilir.
6. Programlama hissi nasıl eşleşmeli?
Çift programlama, bir hava trafik kontrolörü yerine yardımcı pilot gibi hissetmelidir.
7. Mentorluğa eşdeğer çift programlama?
Hayır, çift programlama mentorluğa eşdeğer değildir. Eşitler arasında işbirlikçi bir yaklaşımdır.
8. Çift programlamanın avantajları nelerdir?
Çift programlama anında geri bildirim sağlar, karmaşık kodu tanımlamaya yardımcı olur ve iletişimi geliştirir.
9. Çift programlamada ne tür iletişim önemlidir?
Çift programlamada hem sözel hem de kod yoluyla etkili iletişim gereklidir.
10. Bir geliştirici eşleştirme oturumuna hakim olursa?
Hayır, iş yükü paylaşılmalı ve her iki geliştiricinin de katkıda bulunmak için eşit fırsatları olmalı.
11. Eşleştirme oturumları sırasında hangi zorluklar yönde konuşmalar oluşturabilir??
Yan konuşmalar dikkat dağıtıcı olabilir ve odağı eldeki birincil görevden yönlendirebilir.
12. Çift programlama tüm problemler için uygun mu?
Hayır, çift programlama tüm problemler için uygun olmayabilir ve bazen bireysel çalışma gereklidir.
13. Çift programlama daha uzun sürer mi?
Çift programlama tek başına kodlamadan daha uzun sürebilir, ancak anında akran incelemesi sağlar ve işbirliğini kolaylaştırır.
14. Genç geliştiriciler çift programlama yoluyla öğrenebilir mi?
Evet, genç geliştiriciler çift programlama yoluyla öğrenebilir, ancak çaba ve etkili iletişim gerektirir.
15. Etkili çift programlama için hangi yaklaşım gereklidir?
Etkili çift programlama için sorgulama, deneme ve aktif olarak katılmak önemlidir.
Facebook PROGRAMINIZI EXTEDE Mİ?
Bu soruyu objektif olarak nasıl cevaplayacağından emin değilim. Bu topluluğun öznel soruları desteklemediğini unutarak çözmeye çalıştığınız sorunu netleştirebilir misiniz??
Çift programlama yapmanın doğru yolu nedir?
Birini kodladığımı hissettiğim çok fazla hikaye var ve beni 30 dakikayı alacak bir hikaye 3 saat alıyor, bu arada, daha genç geliştiricilerin gerçekten öğrenip öğrenmediğini sorguluyorum.
99K 23 23 Altın Rozetler 189 189 Gümüş Rozetler 305 305 Bronz Rozetler
sordu 22 Şubat 18:19
561 4 4 Gümüş Rozetler 5 5 Bronz Rozetler
Bu soruyu objektif olarak nasıl cevaplayacağından emin değilim. Bu topluluğun öznel soruları desteklemediğini unutarak çözmeye çalıştığınız sorunu netleştirebilir misiniz??
22 Şubat 18:54
Çiftler programı != Eğitim . Çifte geliştiğinizde kıdemli ve genç ile eşleştirmelisiniz. Eğitim yaptığınızda kıdemli ile eşleştirmelisiniz
23 Şubat 9:21
Çiftler programı != Eğitim Ancak, kıdemli ve gençleri eşleştirmek mümkündür. Tabii ki eğitim sona erecek ve işleri yavaşlatacak. Ama bu yine de olacak. Etkili eşleştirmenin gerçekleşemeyeceği anlamına gelmez.
23 Şubat 15:16
Sistemimizin nasıl çalıştığı hakkında hiçbir fikri olmayan bir stajyerle eşleştim. Bir yazıcıyla konuşmamız gerekiyordu ve yazıcıya komutu her değiştirdiğinizde yeniden derlenmesi gereken bir komut gönderen kod vardı. Bunu bir komut kabuğuna dönüştürmeye karar verdim. Stajyere ne yaptığımı açıkladı. Önünde çıplak kemikler versiyonu yazdı. Nereye çalıştığını göstermeliyim ve yorgundum ve “Buradan almak istiyorum?” “Elbette!”Harika yaptı. Tam o zaman ve orada cilalanmış.
23 Şubat 15:19
@Antigamer Baş problemin seni yavaşlatan gençler değil gibi geliyor. Verimlilik konusunda sizi vurgulamak için yönetim. Onlar mı yoksa sen mi olduğunu söyleyemem. Unutmayın, teknik şeyler hakkında gerçekten hiçbir fikirleri yok. Ama eğer düşük performans gösteriyormuş gibi hissediyorsanız, her zaman onu alırlar ve haklı olduğunuzu varsayarlar.
23 Şubat 15:26
6 Cevaplar 6
Çift programlama, 12 yaşında bir kıpır kıpır bir hava uçağını konuşmaya çalışan bir hava trafik kontrolörü gibi hissettiriyorsa, yanlış yapıyorsunuz.
Yanlış olmasının nedeni, bir radyoda konuşurken kilometrelerce uzakta olmamanızdır. Tam oradasın ve klavyeyi istediğiniz zaman alabilir. Ortak pilot gibi hissetmeli. Kontrolü vermiyorsun çünkü yapmalısın. Yapıyorsun çünkü yapabilirsin.
Çifti programlamasının değil, mentorluk yapmak. Öğretmen-mükemmel bir ilişki, önemli ölçüde daha fazla deneyime sahip olsa bile, birlikte çalışan iki kişiden çok farklı hissediyor. Programlamayı eşleştirmek için alışmak zaman alır, bu yüzden ilk başta garip hissediyorsa endişelenmeyin.
ekstremasyon.Org – Çift Programlama
Kavramanız gereken şey eşleştirmenin amacıdır. “Eşleştiriyorduk” diyebilirsiniz. Bu yüzden doğal dilinizde iletişim kurabilirsiniz: kod.
Buradaki müthiş şey, bir kod satırı yazabilir ve “Bu mantıklı mı??”Bu sıkı bir besleme geri döngüsü. Kod çok zekice hızlı olduğunda çözebilirsiniz.
“Kaydırma”, “bir konsol deyimi ekle”, “Dosya X’e git”, “Z hattından sonra Y yazabilir misin”, vb.
Eşleştirirken söyleyeceğiniz tek şey buysa, klavyeyi zaten al. Kaşıktan beni bir yürüyüşle beslemek yerine, neler olduğunu söyle. Bunu neden yapıyoruz. Bunu kendim yapmayı nasıl bilebilirdim.
Söyle bana. Sadece klavyeyi almayın, bazı gizemli klavye kısayollarını tıklayın ve büyüyü gerçekleştirin. Bana hile nasıl çalıştığını göster.
Ayrıca, sadece tüm gündemi dikte etmeyin. Yapabileceğim işleri yapmak. At ve bunun bir parçası olmama izin ver. Cehennem şanslı olabilir ve benden bir şeyler öğrenebilirsin. Klavye ileri geri kaydırılmalıdır.
Yan konuşmalar genellikle eşleştirme seansları sırasında ortaya çıkar, eldeki işten uzaklaşır
Oh bir dakikanızı ayır ve insan ol. Beni ikna et, beni bir insan olarak gören biriyle konuşmaya.
Karmaşık problemleri çözmek genellikle çok daha uzun sürer, çünkü birçok mühendisin aslında bir çözüm tasarlamak için zamana ihtiyacı vardır
Doğru. Bazılarının tavan fayanslarına kalem atması için harcanan zamana ihtiyacı var. Bazılarının lastik ördek zamanına ihtiyacı var (gümüş saç setindeyseniz bir sondaj tahtası). Çift programlama her zaman her sorun için değildir.
- Bunu bir çağrıda yapmak daha uzun sürer ve genellikle analiz felci ile sonuçlanır.
Evet eşleştirme tek başına kodlamadan daha uzun sürebilir. Ama eğer doğru yapıyorsanız, anında gayri resmi bir akran incelemesi ve bazı işbirliğinde bazılarını da alıyorsunuz.
Analiz felç için kolay tedavi, aptalca bir şeyler yapmak ve insanların size neden yanlış olduğunu açıklamaktır. Yanlış bitene kadar bunu yineleyin.
Daha genç geliştiricilerin gerçekten öğrenip öğrenmediğini sorguluyorum.
Sorgulamaya devam et. Neyin işe yarayıp neyin işe yaramadığını öğrenin. Bunu yapmanın tek bir yolu yok. Ama bunu sadece yapmamız gerektiği için yapmak kesinlikle yanlış.
22 Şubat’ta 18:57
Candied_orange Candied_orange
99K 23 23 Altın Rozetler 189 189 Gümüş Rozetler 305 305 Bronz Rozetler
Analiz felç için kolay tedavi, aptalca bir şeyler yapmak ve insanların size neden yanlış olduğunu açıklamaktır. Yanlış bitene kadar bunu yineleyin. Bu altın. Her durumda çalışır. TDD ve aşağıdan yukarıya tasarım becerilerinizi eğitmek, yerinde teknoloji zorlukları yapmak veya 2 film arasında karar vermek kesinlikle nefret edeceğiniz ancak GF’niz umursamıyor. Sadece “bir şey yap”, tekerleği döndürün ve ataletle taşınmanıza izin verin
22 Şubat 21:43
“Buradaki müthiş şey, bir kod satırı yazabilir ve “Bu mantıklı mı??”“Ve bu yüzden çift programlama tam bir zaman kaybıdır. Yetkili hiçbir programcının bunu tek bir kod satırı hakkında sorması gerekmez. Bunu tek bir satır değil, tüm tutarlı işlevsellik bloğu hakkında sormanız gerekiyor – ve programcı bitene kadar buna sahip değilsiniz. Tamamen programlamanın son üründeki ana hata kaynağı olduğu inancına dayanıyor ve bunun yanlış bir inanç olduğu kanıtlanmıştır.
23 Şubat 8:53
@Graham sık sık, tek bir satır dır-dir Tutarlı bir blok. Bazen, tek bir blokta bir değişikliği temsil eder ve bağlamda mantıklı olup olmadığını bilmek istiyorum. Diğer zamanlarda akıllıca ama çok açık bir şey yaptım ve ayrıntılı mı yoksa kısa bir yorumu mı hak edip etmediğini bilmek istiyorum. Hayırsever olmak!
23 Şubat 13:45
Buradaki ironi ben’m tek bir satırda geri bildirim almak ve diliyorum’D Daha erken aldı.
23 Şubat 14:12
@Graham Öncelikle kaynak kodundan gelmeyen hatalar hakkında söylediklerinizle gerçekten ilgileniyorum – daha fazla bilgi edinmek isteyeceğim için bunun için bir alıntı (lar) var mı?.
23 Şubat 14:21
Ortak desen, daha kıdemli geliştiricilerin genellikle tüm süreç boyunca daha fazla genç geliştiriciyi tutmasıdır
Her şeyden önce, çift programlama doğal olarak ders veya mentorluk gerektirmez. Yeterli bir kıdem dengesizliği ile, zamanın bir parçasının harcandığını kabul etmelisiniz eğitim çalışmak yerine. Bu, anında sonuç beklentilerinizi zaten değiştirmelidir.
Çift programlamanızın öğrenmeye değil, tamamen teslim etmeye odaklanmasını istiyorsanız, eşit geliştiricileri eşit deneyimle eşleştirmeniz veya olabildiğince yakın olmanız gerekir. Bunu yapmıyorsunuz, bu yüzden doğası gereği ya yaşlılarınızı hamstring (junior’ın temposuna gitmek zorunda kalarak) ya da gençlere iş hakkında talimat vermeye ihtiyacınız var (bir kıdemli hızda yapıldığından).
Temelde bir ekran görüntüsüne bakarken kodlama. “Kaydırma”, “bir konsol deyimi ekle”, “Dosya X’e git”, “Z hattından sonra Y yazabilir misin”, vb.
Bu çift programlama değil, bu dikte ediyor. Hem bir dağıtım mekanizması olarak verimsizdir (bir düşünce trenini takip etmek iki kişinin) ve bir öğrenme aracı olarak (Söylediğiniz gibi körü körüne kopyalamak, anlayışı teşvik etmiyor).
Sadece bir sorunu nasıl çözeceklerine odaklanabilmeleri ve bir genç geliştiriciye düzgün bir şekilde rehberlik edemezlerse, bir geliştiricinin kıdemini ciddi şekilde yeniden düşünürdüm. Bu, bir genç (işi yapabilir ancak gözetim gerektirebilir), Medior (çok fazla gözetim olmadan kendi işlerini yapabilir) ve kıdemli profil (kendi işlerini yapabilir ve başkaları için gözetim sağlayabilir) arasındaki ayırt edici fark budur.
Yan konuşmalar genellikle eşleştirme seansları sırasında ortaya çıkar, eldeki işten uzaklaşır
İşle ilgili olmayan konuşmalar, bu iki kişi çift programlama olmadan bitişik oturursa ve bu nedenle çift programlamanın bu değerini değerlendirirken alakalı olmazsa olurdu.
İşle ilgili konuşmalar tam olarak mesele çift programlama; Çiftin bilgilerini birbirlerine aktarmasına izin verir ve/veya her ikisi için yeni bir şey öğrenmek için birlikte çalışmalarına yardımcı olur.
Karmaşık problemleri çözmek genellikle çok daha uzun sürer, çünkü birçok mühendisin aslında bir çözüm tasarlamak için zamana ihtiyacı vardır – bunu bir çağrıda yapmak daha uzun sürer ve genellikle analiz felci ile sonuçlanır.
Her şeyden önce buna çift tasarımı denir. Bu ikisini keyfi olarak bir araya getiremezsiniz.
İkincisi, çift programlama, her iki göz setinin de aynı anda, her zaman ve başka bir şeye bakmasını gerektirmez. Bir sonraki görevin tasarımına baksa da, belgeleri okuma, kıdemli başka bir şey yapması mükemmel bir şekilde mümkündür, . Junior, kıdemli’nin ihtiyaç duyulmadığı veya her iki aktiviteyi aynı anda dengeleyebileceği daha önemsiz bir görev gerçekleştirirken.
Sorunuzun temeli kafası karışık olarak karşımıza çıkıyor. Bir sistem uyguladınız, belirli bir şekilde yapılandırdınız ve ondan sonra Sistemin sizin için önemli görünen şeylere gerçekten yardımcı olmadığını fark etmeye başladınız mı?. Bu arabayı atın önüne koyuyor.
Önce çözmeye çalıştığınız sorunu anlamak, sonra bir sistem arayın, sorunu gerçekten çözeceğini onaylamak ve ancak sonra uygulamaya başlamak daha mantıklıdır.
22 Şubat 22: 25’te cevaplandı
41.6K 8 8 Altın Rozetler 83 83 Gümüş Rozetler 115 115 Bronz Rozetler
“Her şeyden önce buna çift tasarımı denir. Bu ikisini keyfi olarak bir araya getiremezsiniz.” — Bunun OP’nin sorusunun kalbine doğru kesildiğine inanıyorum. Her görev veya etkileşim çift programlama için uygun değildir.
24 Şubat 15:38
Bence uçağdaki iki pilotun en yakın düşünebileceğim, bu yüzden ele aldığınız sorunların orada nasıl çözüldüğüne genel bir bakış yapalım. Havacılıkta iki pilot var, bir pilot uçuş ve pilot izleme var. Pilot izleme de tamamen kursta ve herhangi bir zamanda devralabilir. Bu çok iyi çalışıyor ve teknik olarak bu uçaklar tek bir insan tarafından uçabilse bile, değişmesi pek olası değil.
Ben kendim değilim, uzun deneyime sahip yazılım mühendisiyim. Ama eskiden havacılık yığını değişiminde oldukça aktif oldum, gerçek pilotlar tarafından gönderilen hem soruları hem de cevapları okuyordum, bu yüzden bir genel bakış sunabilmeli gerektiğini düşünün. Bizim için yararlı olabilir.
Steril kokpit
Kokpitte uçuşla ilgili olmayan konuşmalar kesinlikle yasaktır. Aynı şey çift programcılar arasında olmalı. Kadar basit.
Kararlar
Pilot uçuş tarafından küçük kararlar alınır, ancak pilotlar daha büyük kararlar verirken iletişim kurar. Pilotlar ayrıca, yapmaları gereken birçok standart eylemi tanımlayan kontrol listelerini de takip edin. Bir şeyler ters giderse, pilotlar “Güvenilmez Airspeed Reading” kontrol listesini çekin ve yapılması gereken uzun tartışmalardan başlamak yerine oradaki adımları izleyin. Kaptan kesinlikle eminse, hızlı bir şekilde karar verme önceliği vardır, herhangi bir kuralı, kontrol kulesinden herhangi bir yönü geçersiz kılar ve tartışma olmadan ancak bu hafifçe yapılmaz. Kaptan Kontrol Kulesi’ndeki talimatları göz ardı ettiğinde, bunu hemen anlatmalıdır.
Bu nedenle, baş geliştiricinin “yaklaşım x tam olarak burada çok daha iyi kod oluşturur, bu yüzden genel kurallar farklı bir şey çağırsa bile kullanıyoruz” gibi bir şey söyleme hakkına sahip olmasını bekliyorum, ancak bu çok sık gelmemeli.
İş bölümü
Pilotlar, her birinin uçağı az ya da çok eşit olarak kontrol eder, ancak sadece üç motorla 747 uçmak veya Heraklion Havalimanı’na iniş gibi zor görevler var ve burada “Kaptanın Uçmayı Yapması Gerekiyor”. Aksi takdirde, her iki pilot da bu uçağı uçurmak için tamamen eğitilmiş ve niteliklidir ve çok derinlemesine mikro yönetimine ihtiyaç duymaz.
Bu nedenle, kodla aktif olan çift programcının istediği gibi yazmasını ve kaydırmasını beklerdim, bir başkası sadece gözlemliyor ve sadece söyleyecek kayda değer bir şey varsa müdahale ediyor. Ayrıca programcılardan birinin her zaman yazmasını ve diğerinin her zaman izlemesini beklemiyorum.
Kaptan Eğitimi
Son olarak, rolü daha iyi anlamak için, yeni bir kaptan ilk olarak uçağın “gerçek bir kaptanı” olan başka bir, daha deneyimli kaptanla eğitildi, ancak uçuş iyi giderken, ikinci pilotun rolünü oynuyor. Bundan sonra, genç kaptan çok daha deneyimli (uçuş saatlerine kadar) ikinci pilotla uçmak için eşleştirildi. Ancak o zaman kaptan daha az yetenekli görebileceği biriyle uçmaya hazır olarak kabul edilir.
Çift kontroller
İki pilot tarafından uçurulması amaçlanan uçaklar normalde ikili kontrollere sahiptir. Bu deseni takip etmek için, klavye olmasa da en azından ikinci fareyi bağlamak iyi bir fikirdir. Bu, geliştiriciler arasındaki “sürüşü” çok hızlı bir şekilde geçmeye izin verir.
Facebook PROGRAMINIZI EXTEDE Mİ?
О э э с сне
М з з рарегистрировали подозрительный тик, исходящий из Вашей сий. С п с о ы ы с п п с xм ы с с ы xм ы ы с с о x ыи с с ои от от от оз пе пе от от оз он оны от оны онныы онныы онн вы, а н, а нбн Вы,. Поч yatırıl?
Эта страница отображается в тех случаях, когда автоматическими системами Google регистрируются исходящие из вашей сети запросы, которые нарушают Условия использования. Сраница перестанет отображаться после того, как эи запросы прекратяттся. До эого момента дл Ekim ил исползования служб Google нобходим çar.
Источником запросов может служить вредоносное ПО, подключаемые модули браузера или скрипт, настроенный на автоматических рассылку запросов. Если вы используете общий доступ в Интернет, проблема может быть с компьютером с таким же IP-адресом, как у вас. Обратитесь к своемtern. Подробнее.
Проверка по со может luV пе появляться, ео е Вводия, оожо Вы воде сн ыыыые ае iri ае ае iri ае ае iri пе ае iri ае ае iri пе ае iri пе ае iri пе ае iri пе ае ае ае ае iri пе аотототыыыыыыыыыыыететет ]p anauma аете keluma емами, или же водите запросы очень часто.
Facebook ve bireysel bir kodlama kültürünün efsanesi
Yeni bir günlük e -posta bültenini başlattık! Artık her gün gelen kutunuzdaki en son TNS makalesinin ücretsiz bir toplanmasını alabilirsiniz. Şimdi kaydolun, asla bir hikayeyi kaçırmayın, her zaman bilinçte kal.
Mühendislik kültürü üzerine son bir yazıda Facebook Yazılım Mühendisi Pierre Raynaud-Richard, sosyal medya devinin nasıl’S Dev Culture işbirliğini teşvik eder ve yarattıkları kod üzerinden gurur duyar.
Raynaud-Richard için çok önemli’S Terlasyonu, onun çürütülmesidir ‘Bireysel Kod Sahipliği’ mantra. “Birçok yazılım geliştirme şirketi inanıyor ve pratik yapıyor “Bireysel Kod Sahipliği.” Bu böyle temel bir prensip gibi gelmeyebilir, ancak aslında bir yazılım kuruluşunun nasıl çalıştığını tanımlamak için uzun bir yol kat ediyor,” Raynaud-Richard yazıyor.
BT karşısında, yaklaşım dahili uzmanları gururla daha iyi yazılı, daha az arabası kodu oluşturmayı teşvik ediyor gibi görünüyor, birçok şirket için asıl etki, inovasyonu engellemesi ve geliştiricilerin becerileri büyümesidir. Raynaud-Richard, geliştiriciler statükoyu tercih ettikçe yaklaşımın şirket inovasyonunu caydırdığını söylüyor: zamanla, inşa ettikleri kod tabanını savunuyorlar ve ona karşı örtük bir önyargıya sahipler, yeni fırsatlara veya zorluklara uyum sağlayamıyorlar. Bireysel geliştiriciler için yaklaşım, beceri tabanlarını ayakkabı boynuzlayarak ve yüksek etki fırsatlarını belirleme yeteneklerini daraltarak becerilerini geliştirir.
“Bireysel kod sahipliği, ilk bakışta bazı cazip faydalar sağlar: daha iyi tasarlanmış, korunmuş ve desteklenen kod ve bileşenler ve hizmetler için daha uzun ömürlü. Ne yazık ki, yenilik ve şirket ve bireysel büyümeyi sınırlayabilen katı rollerin tanımlanması pahasına yapar,” Raynaud-Richard’ı bitiriyor.
Bugün içinde’S’nin tam yığın geliştirme ortamları, yazılım ekipleri hiçbir geliştiricinin her şeyi bilemeyeceğini biliyor. Ancak birçoğu, esnek bir mühendislik kültürünü teşvik etmek için bireysel kod sahipliği modelinin geliştirdiği artan uzmanlaşma caddesinden daha yaratıcı araçlara yöneliyor.
Başlangıç geliştirme kültürü
CTO ve kurucu ortağı Ian Plosker’a göre, Hizmet Olarak Veritabanı olarak Hizmet Olarak Başlangıç Orchestrate, beş zaman diliminde çalışan 10 mühendisden oluşan dağıtılmış bir ekibe sahiptir.
“Biz yok’T genellikle kod sahipliğine sahiptir,” Plosker diyor. “Bununla birlikte, bölge uzmanları doğal olarak gelişir, genellikle kodu geliştiren veya gözden geçiren kişiden başlar.” Plosker, zaman zaman, belirli mühendislerin belirli teknolojiler veya yöntemlerde uzmanlaşabileceğini ve bu teknoloji kullanıldığında daha sık projelere çekileceğini söylüyor.
“Kodun sahibi olan bir kişi tehlikelidir, çünkü tüm ekip işlerin nasıl çalıştığını bilmeden geçebilir. Neyse ki, daha küçük bir organizasyonda, bundan kurtulmak daha zor. Bilginin organizasyonun etrafına yayılması gerçekten önemlidir.”
Bireysel kod sahipliğini önlemek için Orchestrate’de kullanılan temel süreçlerden biri kod incelemeleridir: “Kod incelemeleri, bilgi aktarımı için en önemli yerlerden biridir, en az ikinci bir kişinin kodu bilmesini garanti eder, test senaryolarının tamamlandığını değerlendirir ve kod tabanının nasıl çalıştığını bilir.”
Orchestrate, birden çok veritabanından oluşan bir koleksiyon için tek bir API ve kullanıcı arayüzü sağlar. Anahtar değerlerle başlarken, ürün artık tam metin, zamana göre sipariş edilen ve grafik aramaları dahil olmak üzere bir dizi arama formatını mümkün kılıyor. En son teklif, geliştirildiği gibi bireysel kod sahipliği yaklaşımından kaçınan yeni bir jeo -uzamsal arama özelliği oldu:
“Github’ı biraz kullanıyoruz, bu nedenle jeo -uzamsal arama özelliklerini eklediğimizde olduğu gibi bir özellik dalı üzerinde çalışan bir geliştiriciniz olacak. Bu yüzden mühendis bir özellik şubesinde çalışacak, bunu birleştirmek için bir çekme isteği açarlar. Umarım, tüm birim testlerini ve entegrasyon testlerini eklerler ve’S derin teknik değerlendirme gerçekleştiğinde.
“Özellik önemliyse, şeylere en az iki çift göz alırız ve GitHub, sözler hakkında belirli satırlar hakkında yorum yapmanızı sağlar ‘Hey, neden böyle yaptın?’
“Yani orada konuşma oluyor, çekme isteklerine gömülü çok fazla bilgi var.
“Tamamen gözden geçirildikten sonra çalıştırırız ve test ederiz.
“Test için birkaç adımımız var: Dahili olarak, makinenizde bir bütün düzenleme yığını oluşturabilen Orchestrate Runner adlı bir aracımız var (Java tabanlı bir HTTP sunucusu, web ön ucu ve tüm bunlar aracı tarafından dahili olarak eğilir). O’Testin ilk turu.
“O zaman Github’daki her taahhüt Travis CI tarafından yönetilir. Bu bizim için oldukça iyi çalışıyor ve bu tüm birim testlerimizi ve entegrasyon testlerimizi çalıştıracak. Travis CI içinde mini bir düzenleme yığını bile döndürüyoruz.
“Hipchat’i de kullanıyoruz, Hipchat’imizde bize kod dağıtımımız hakkında çok şey anlatabilecek bir bot bile oluşturduk. Her başarılı yapı ustasından sonra, Travis yapısının sonunda S3’e yükleniriz ve derleme numarasına dayanarak, chatbot’umuzdan bu kodu dağıtmasını isteyebiliriz! Beğenmek, ‘Hey Prodbot, USC sahneleme ortamına 46 numaralı yapı dağıtım.’ Plosker ayrıca, geliştirici ekibinin herhangi birinin birbirlerine soru sormasına veya kodlama kalıpları ve tasarım seçenekleri hakkında gayri resmi sohbetler başlatmasına izin veren bir sohbet müşterisi olan Mumble’a işaret ediyor.
Yeni özellik tasarımı etrafında işbirliğini ve grup tartışmasını teşvik etmek için Orchestrate, herhangi bir ekip üyesini fikri özetleyen bir teklif oluşturmaya teşvik eder:
“Herhangi bir büyük özelliğe başlamadan önce, birisinin bu özellik için bir şampiyon haline gelmesi olma eğilimindedir. Bu yüzden özellik için bir teklif yazmaktan hoşlanıyoruz: burada’Nasıl çalışır, burada’Neden bunu yapmalıyız, zorluklar, fırsatlar… bunlar Google Dokümanlar olma eğilimindedir ve tüm ekip bunun üzerinde çalışacak. Gerçekten organik oluyor.
“Örneğin, şu anda arama yönü üzerinde çalışıyoruz, bu yüzden herkesin yorumladığı bir belge var. Bu noktada zaten dolaşan biraz bilgimiz var.”
Ölçeklenebilir iş
Çevrimiçi menü ve gıda dağıtım hizmeti Just Eat – şu anda 13 ülkede faaliyet gösteren ve 2014’ün ilk yarısında% 58 gelir artışını açıkladı – sadece İngiltere ofislerinde yaklaşık 60 geliştiriciden oluşan bir mühendislik ekibine sahip. Şirket görüyor “Oldukça önemli, hızlı büyüme” Teknik lidere göre geliştiricilerin iki ofis konumunda ve uzaktan birlikte çalışmasını isteyen Anton Jefcoate. “Büyüme oranı bizi bazı oldukça iyi uygulamalara yönlendirdi. Vakıflar zaten oradaydı, ama yapabilirsiniz’Geliştirme ekibinizi ölçeklendirirken tanıttığınız mühendislik kültüründen uzaklaşın.
“Biz’Ve farklı alanlarla başa çıkmak için geliştirici ekiplerimizi birkaç gruba ayırdı: tüketici uygulamaları, iş uygulamaları, API’lerde çalışan geliştiriciler.. API ekibi tüm platformun çekirdeğidir. Böylece API ekipleri daha da bölünür ve platformun belirli bölümlerinin kontrolünü ele alırlar.
“Herhangi bir yeni proje, API tarafından yönlendirilen ve yerel uygulamalar ekibinden birkaç kişiyi bir araya getirecek:’Herhangi bir projede en az iki, maksimum 10 kişi. Özelliğin boyutuna açık bir şekilde ve özelliğin platformdan ne kadar yayılacağına bağlıdır.”
Jefcoate, Raynaud-Richard’ın yazılım şirketlerinde bireysel bir kod mülkiyeti kültürel modelinin eksikliklerini söyleme hakkı olduğunu düşünüyor.
“Dezavantajlar bizim için doğru çalışan şeylerdir,” diyor Jefcoate. “Bence Agile bu kültürü kıran şeylerden biri. Bence çevik, geliştiriciler eskiden izole edildi, ancak Agile takımı birey üzerinde teşvik ediyor. Üretecek ekibin izleme hızına veya daha büyük iyiliğine bakarken, herkes çalışmayı eşit olarak paylaşır. Çok büyük bir kültürümüz var. inanıyorum’çalışma uygulamaları ve çevik akışlar kullanan kişilerin türü: burada’Bazı işler yapmak, herkes güverteye giriyor ve bu’Kendini bireysel bir kod sahipliği senaryosuna ödünç verin.”
Just Eat, bulut tabanlı yazılım girişimleri arasında daha tanıdık gelen bir dizi kültürel yönü kopyalar. Kuşaklarındaki diğerleri gibi (2001’de Just-EAT), açık kaynak projeleri oluşturma kültürüne sahiptirler ve genellikle başvuranlardan neyin yapılabileceğini göstermelerini veya sadece yemek yiyebilecek fırsatları göstermelerini isteyen bir işe alım süreci kullanırlar’s kod tabanı.
JEFCOATE açık kaynak yaklaşımını, gururunu geliştirmenin farklı bir yolu olarak görüyor’Bireysel kod sahipliğinden gelebilecek S-kod avantajı:
“Yalnızca yığınımıza bakmanız ve sorunlarımızı her gün çözmek için kullandığımız tüm açık kaynak araçlarını görmeniz gerekir, bu nedenle genel bir geliştirici topluluğu olarak, gerçekten daha büyük iyilikten yararlanıyoruz. Açık Kaynak Sorunlar birçok kişi tarafından çözülmesine izin verir; Bu miktarda denenmiş ve test edilmiş geçmişe sahip ücretsiz ürünlere sahip olduğunuz yere gidebileceğiniz çok az yer var. Açık kaynaklı çalışıyor ve sanırım bizim için, buna geri katkıda bulunmak, bir şirket olarak ne hakkında olduğumuz hakkında biraz açıklama yapıyor. (Bebeklik döneminde nispeten) ortaya koyduğumuz açık kaynaklı şeyler, geliştirici topluluğuna sorunları çözmeye yardımcı olan genel şeylerdir. Geliştiricilerin platformumuzda yeni teknikleri test etmeye yardımcı olmalarını sağlayarak, geliştiricilerimizin tüm Just Eat Mühendislik Grubu için sorunları çözmelerini sağlayarak, bireysel kod sahipliğinin (gurur geliştirmek ve kodlama projelerine kişisel dokunuşu ve kişisel yatırımı teşvik etmek gibi şeyler) yararlanmaya çalışıyoruz. Bu olursa, muhtemelen şirketimizin dışında bir şeyleri çözecektir, böylece’Açık kaynak projelerimiz nasıl başlıyor. Genellikle ölçeklendirme ve esneklik ile ilgili. Önce dahili olarak benimsemeye çalışıyoruz ve sonra topluluğun yararlanabileceği bir şey olup olmadığını görüyoruz.”
Bireysel bir kod sahipliği modeli yerine işbirlikçi bir kültürü daha da yerleştirmek için, geliştiricileri yeni ekip yapılandırmalarında bir araya getirmek için üç aylık iç hackathonları tutar: “Grup kodu sahipliği ile, geliştiriciler daha fazla meşgul olduğu veya alan uzmanları haline geldiğinden, kodun nasıl daha iyi olabileceği gibi bazı avantajları kaçırıyorsunuz. Dahili hackathons, geliştiricilerimizi kişisel evcil hayvan projeleri üzerinde çalışmaya teşvik etmek için uzakta.”
Just Eat, yapılan işleri izlemek ve çekme isteklerini koordine etmek için Jira’yı kullanır ve ardından her çekme isteği akran olarak incelenir: “Bir ekip yarı bağımsızdır, ancak her şey küresel bir ürün gereksinimi tarafından yönlendirilir. Küresel gereksinimi geçtikten sonra, ekipler bunu yapmak için kendi kendini yönetme eğilimindedir. Yani açılan bir çekme talebi genellikle bir takım görüşmesinde. O zaman akran incelemeleri harika bir süreçtir çünkü doğrulama yanı sıra öğrenir. Çok fazla otomasyonumuz var: CI’mizde evet/hayır için bu konuşlandırılabilir mi?.”
Jefcoate de şirketi görüyor’Şirketin değer verdiği bireysel kodlama kültürünün antitezini gösteren çift programlamanın (iki programcının birlikte çalışması, hat için çizgi, bir kodlama projesinde) kullanımı: “Yeni geliştiriciler ve genel bir geliştirme uygulaması olarak çift programlama kullanıyoruz. Özellikle yeni bir şey üzerinde çalışıyorsam, birisiyle eşleşeceğim ve başka birinin bunu bildiğinden emin olacağım. Bunlar uzaktan yapılır, eşleştirme kod kalitesi standardizasyonunu elde etmek için en iyi araçlardan biridir.”
İşletme geliştirme kültürü
Jakub Nesetril, API Tasarım ve Belgelendirme Kodlama Araç Paketi olan Apiary’de Kurucusu ve CEO’sudur. Bu hafta, Apiary, daha büyük şirketlerin API ürün ve hizmetleri oluştururken bireysel kod sahipliğinden uzaklaşmasına yardımcı olmak için Enterprise için Apary’yi yayınladı. Nesetril, her biri farklı şekillerde yazılmış ve şimdi belirli bir iş birimine atanan bireysel geliştiricilerden ziyade birden fazla ekip üyesi tarafından çalışan ortak kodlama yapılarına ve nomenclatues’e sahip olması gereken birden fazla API ile uğraşan işletmeleri görüyor.
Binlerce arıtı kullanıcısında, Nesetril genellikle bireysel bilgisayar korsanları veya küçük ekipler, her geliştiricinin neredeyse bireysel bir kod sahipliği yaklaşımına sahip olabileceği açık kaynak araçlarını kullanıyor (çoğunlukla tek kodlayıcı oldukları için). Takımlar büyüdükçe arıtı ticari ürünü kullanmaya başlarlar ve 20 takım üyesine ulaştıklarında takımlar için arı arısına geçerler. Bu aşamada, organizasyonel altyapı, geliştirici kodlamasının çeşitli API projelerinde eşit olmasını sağlamak için bir ürün yöneticisi getirme eğilimindedir.
Kurumsal müşteriler arasında-takımlar geliştirici sayılarına ulaştığında 40-60 veya daha fazla-bir API mimarı işe alınma eğilimindedir. “Mücadele ettikleri şeylerden biri API’leri için tutarlı bir tasarım ve’Neden Enterprise için arıtı inşa ettik,” Nesetril açıklıyor. Ürünün merkezinde, şirketlerin geliştiricilerin isimlendirme ve veri formatları gibi organizasyonel sözleşmelere uymasını sağlamasına yardımcı olan bir stil rehber aracı vardır.
Nesetril, kurumsal müşterilerin bireysel kod sahipliği eski kavramlarını terk ettiğini görüyor, özellikle de birçoğu birleşme ve devralmalar yoluyla farklı bir API mirasını miras aldığından veya bireysel kullanım durumları bağlantısı kesilmiş iş birimleri içinde ilk API geliştirme projelerini sürdüğü için.
“Tarihsel olarak, hesap verebilirlik yarattığı için kod sahipliği için güçlü bir baskı vardı, ancak aynı zamanda işbirliği için zorluklar yarattı. İşletmelerdeki geliştirici ekipleri arasında, bireylerin projelerin çeşitli bölümlerine girip çıkabileceği çok daha fazla paylaşılan kaynak görüyoruz,” diyor Nesetril.
“İşbirlikçi yaklaşımlarla ilgili hile, gerçeğin tek bir versiyonuna ihtiyaç duymalarıdır. Herkes şirket içindeki her şey konusunda uzman olamaz, ancak dahili olarak bir şey üzerinde çalışabildikleri zaman harika. Hakikat kültürünün tek bir versiyonuyla en büyük numara, işbirliğini sınırlamadan o yere gelmektir.” Nesetril, geliştiricileri bireysel kod uzmanları olmaya teşvik eden bir kültür oluşturmadan birden fazla API’yi yönetmeye çalışan işletmeler için ideal olduğuna inanıyor: “Onlara bir API üzerinde çalıştıklarında, proaktif bir gelişmiş kontrol ve bildirim seviyelerine uyduğunu düşünür, o zaman daha deneysel ve hırslı olmanızı sağlar. İnsanlar erken anlamlı katkılar yapmaya başlayabilir.”
Bireysel Kod Sahipliği (Yarı Kamu) Ölüm Ölüm
Ne Raynaud-Richard’S blog yazısı aslında yapıyor olabilir bireysel kod sahipliğinin zamanını ve ölümünü işaret ediyor. Zaten, girişimlerden işletmeye kadar her seviyedeki işletmeler daha işbirlikçi kalkınma yaklaşımlarını benimsiyor. Google Tools ve HipChat, her seviyedeki geliştirici ekiplerinde yaygın olarak kullanılır ve daha işbirlikçi bir ahlakı güçlendirmeye yardımcı olan yeni geliştirici ürünleri ortaya çıkmaktadır. Bugün içinde’En büyük kodlama becerisinin eşzamansız konsensüs binası olduğu durumlarda uzmanlaşma ve genel bilgi arasında orta bir yol olan dev ortamı: dağıtılmış bir ekipte bilgi transferini işbirliği ve kolaylaştırma yeteneği.
Flickr Creative Commons aracılığıyla özellik görüntüsü.
Bilgi paylaşımı için çift programlamanın faydaları nelerdir??
“. Эксперты добавляют важные сведения в эту коллективную статью, созданную с использованием искусственного интеллекта. Вы можете делать т же самое.
Эо ся я нового типа – при е дании мы и сзании мы иызании м искterny. А эают ее, делялясь своими ay.
Если вы хотите внести свой вклад, запросите приглашение, отметив статью как понравившуюся или отреагировав на нее. Подробнее
Son 27’de güncellendi. 2023 г.
Çift programlama, iki geliştiricinin aynı kod tabanında aynı anda çalıştığı, bir bilgisayar ve bir klavye kullanarak ortak bir kodlama uygulamasıdır. Kod kalitesini, verimliliği ve öğrenmeyi artırmak için Scrum ve XP gibi çevik yazılım geliştirme metodolojilerinde genellikle kullanılır. Bu makalede, çift programlamanın geliştiriciler arasında kod mülkiyetini ve bilgi paylaşımını nasıl teşvik edebileceğini ve etkili bir şekilde çalışmasını sağlamak için en iyi uygulamalardan bazıları nelerdir.
Помогите дрtern
Добавить сранить
Kod Sahipliği
Kod sahipliği, geliştiricilerin yazdıkları ve sürdürdükleri kod için sahip oldukları sorumluluk ve hesap verebilirlik duygusudur. Kod kalitesi üzerinde olumlu etkileri olabilir, çünkü geliştiricilerin kodlama standartlarını takip etme, testler yazma, yeniden düzenleyici ve hataları düzeltme olasılığı daha yüksektir. Bununla birlikte, bilgi siloları oluşturmak, işbirliğini azaltmak ve belirli bireylere bağımlılığı artırmak gibi olumsuz etkileri de olabilir. Çift programlama, tüm ekibin kod tabanından sorumlu olduğu toplu sahipliği teşvik ederek kod sahipliğini dengelemeye yardımcı olabilir ve hiç kimse belirli bir özelliğin veya modülün tek uzmanı veya sahibi değildir. Çift programlama, geliştiriciler uzmanlıklarını ve bilgilerini ortaklarıyla paylaşabilir ve birbirlerinden öğrenebilirler, çünkü bilgi kaybı riskini de azaltabilir.
Помогите дрtern
Добавить сранить
Sky’da Java Geliştiricisi
- Копировать сылку на Вклад
- Пожловаться на Вклад
Пожаловаться
Пожаловаться
Назад отравить
Сас prure! Вы боше не o}} ücи э эот Вклад.
Çift programlama aslında kod sahipliğini tamamen kaldırır. Çiftlerin sağlıklı rotasyonu ile programlanmış bir ortamda herhangi bir parçanın gerçek sahibi yoktur.
Bilgi paylaşımı
Bilgi paylaşımı, geliştiriciler arasında bilgi, beceri ve deneyimleri aktarma ve değiştirme sürecidir. Öğrenme, yenilik ve problem çözmeyi geliştirebilir, ayrıca bir güven ve geri bildirim kültürünü teşvik edebilir. Çift programlama, geliştiricilerin soru sorabileceği, kavramları açıklayabileceği, teknikler gösterebileceği ve geri bildirim verebilecekleri doğal ve etkileşimli bir öğrenme ortamı yarattığı için bilgi paylaşımı için güçlü bir araçtır. Çift programlama, geliştiricileri ufuklarını genişletebilen ve becerilerini geliştirebilen farklı bakış açılarına, yaklaşımlarına ve kodlama stillerine de maruz bırakabilir.