CraftSummit’15 – Yazılım Ustalığı Konferansı

Neslişah Demirci —  8 Haziran 2015 — 1 Comment

Herkese selamlar,

Bu yazıda sizlere CraftSummit’15 etkinliğinden ve içeriğinden bahsetmeye çalışacağım.

Bahçeşehir Üniversitesi Fazıl Say konferans salonunda 30 Mayıs 2015 tarihinde 09:00-17:00 saatleri arasında gerçekleşen etkinlikte etkinlik boyunca gayet iyi bir şekilde ağırlandık.

İyi ustaların yazılım dünyasına olan bakış açılarını görmek ise ayrı güzeldi.

craftsummit

Konuşmacılardan bahsedecek olursak Sandro Mancuso konferansın ilk konuşmacısıydı. Kendisi Londra Yazılım Ustalığı komitesinin kurucularından. Konuşmasını dinlemekten büyük keyif aldığımı gönül rahatlığı ile söyleyebilirim. Genel itibariyle kendisinden örnekler vererek konuşmasını sürdürmüş oldu. Bu sebeple sohbet havasında geçti. Her işin bize bir şeyler kattığından bahsederek doğru işi meslek deneyimlerimizden yararlanarak bulduğumuzdan bahsetti. Bir işten ne istediğimizi bilmemizin önemli olduğu ve  işi yapmamız ile o işi nasıl yaptığımız konusunun eşdeğer olduğunu, bize güzel örnek ve açıklamalar ile belirtti.

Sunumun Usta Yoda temalı bölümünden bir kaç kare:

CGPNzc0VAAAVmiN    CGPNzc6UIAAOIUc
CGPNzc0UkAE-WzH

Sıradaki konuşmacımız Özcan Acar; Java, Linux ve Çevik Yazılım konusunda uzman. Özcan Acar bize aslında daha çok bilgisayar-insan benzerlikleri, beynin aslında pek fazla rahatını bozmak istememesi beyin bir şeyler öğrenmeye başladığında ve işin içinden çıkamadığında bunu nasıl algıladığı ve Pomodoro tekniğinden bahsetti.

Noel Tichy’nin kişisel gelişim için tanımladığı 3’lü çemberi anlatarak aslında bize “no pain no gain” dedi 🙂

Bu çemberden kısaca bahsedecek olursak beyin aslında rahatını bozmak istemeyen bir organ. Durağan halindeyken konforlu alanında, bir şeyler öğrendiğinde pratik yaptığında öğrenme alanına geçiyor. Düşünmeye başlayıp işin içinden çıkamadığında panik alanına geçiyor (aslında çabuk öğrenimin gerçekleştiği kısım burası).

IMG_7341

Özcan Bey’in bahsettiği konulardan bir diğeri olan Pomodoro tekniğinden kısaca bahsedecek olursam; bir günümüzü görev listeleri şeklinde planlıyoruz ve bir işi bitirebilmek için dakika seçip Pomodorumuzu başlatıyoruz (varsayılan dakika 25), alarm çalana kadar görevimizi kesinlikle bırakmayıp devam ediyoruz. Bittikten sonra 5 dakikalık molayı haketmiş oluyoruz. Bizi dışarıdaki etkenlerin ne kadar böldüğünü düşünürsek yarım saatliğine kendimizi dış etmenlerden soyutlayıp işimize odaklanmak bize oldukça verim kazandıracaktır. Aslında Pomodoro bir timer, tekniği uygulamak için benim fikrime göre illa ki Pomodoro sahibi olmamız gerekmiyor, Google Play ve App Store‘da  da uygulamalar mevcut.

IMG_7343

Bir diğer konuşma ise Armağan Amcalar‘a aitti. Miyagi’nin Sırrı adlı konuşmasında daha çok usta-çırak ilişkisi üzerine değindi. (Miyagi Karate Kid adlı filmde usta rolünde ve bir çırağı var) Startup Kitchen kurucu ortağı ve aynı zamanda baş yazılım mimarlığı yapmakta.

Öncelikle zanaat nedir konusuna değinen Armağan Bey, ardından okullardaki yazılım mühendisliği eğitiminin tam olarak zanaat eğitimi olmayıp, zanaatkarlık eğitiminin aslında çok uzun yıllar süren ve bir iş üzerinde usta-çırak ilişkisi ile çalışılıp kavranması demek olduğunu söylüyor.

İşyeri ortamındaki davranış şekilleriyle ilgili de  “Pasifçe onaylanmaktansa zekice fikir ayrılıkları yaşamayı tercih edin” ve “Hiçbir zaman hiçbir şeyden kim ne derse desin emin olmayın” önerilerinde bulunuyor.

Ayrıca hayalimizdeki kodu yazabilmemiz için çok fazla pratik yapmamız gerektiğinin de altını çiziyor. Kullanmamızı önerdiği araçlar ise aşağıdaki resimlerde, araştırmanızı tavsiye ederim.

IMG_7347                                                            GitHub
GitLab

IMG_7346
Trello

IMG_7348

Slack

Konferansın bir diğer konuşmacısı Alexandru Bolboaca (CTO at Mozaic Works) bize “Kullanışlı Yazılım Tasarımı”‘ndan bahsetti. Tasarımımızın gerçekten kullanıcılar tarafından anlaşılabilir olmasından, yazılım içinde yaptığımız yönlendirmelerin gücünden bahsetti.

İyi bir tasarım için  5 özellikten bahsetti:

  1. Learnability
  2. Efficiency
  3. Memorability
  4. Errors
  5. Satisfaction

CGPqkKfWsAAeQBZ

Burada ise kendisi espirili bir yaklaşım ile kod kalitesini özetliyor 🙂 Özellikle yazılımın tasarım kısmı ile ilgililer için güzel bir sunum olduğunu belirtebilirim.

CGPn0H7WoAAU41c

Sonraki konuşmacımız Alvaro Garcia Ba ise yazılım ustalığı konusundaki uzun yolculuktan kendimizi nasıl bir maratonun parçası olarak tanımlayacağımızdan başlayarak konuşmasını sürdürdü.

IMG_7349           CGQZT1qWgAARYXG

Konuşmacı ayrıca günümüzün en büyük sorunlarından biri olan iş ve özel hayat döngüsünü dengede tutma üzerine konuştu.

IMG_7353

Diğer konuşmacımız Joe B. Rainsberger TDD (Test Driven Development) tekniği ile ilgili video konferans konuşmasıyla aramıza uzaktan katıldı. Bu konuşmasıyla hem yüksek kalitede kod geliştirmeyi teşvik etmek, hem de karşımıza çıkabilecek durumlara karşı en iyi şekilde hazırlıklı olabilmek adına, bu geliştirme yöntemini öneriyor.

Test Driven Development yönteminden kısaca bahsetmek gerekirse;

Yazılmış olan kodun testini yapmak için kod yazılıp istenildiği zaman uygulanması. Bu testler bir kez hazırlanır, tekrar istenilen zamanlarda çalıştırılabilir. Oldukça faydalı bir tekniktir; kodun bir parçası değiştirildiği zaman kodun diğer kısımlarının bu durumdan etkilenip etkilenmediğinden emin olmuş oluyoruz. Aslında bu teknik kısa vadede vakit alıyormuş gibi gözükebilir ancak uzun vadede oldukça faydalıdır. En basit yöntemi ise yapılmış olan testin bir kereye mahsus klavye mouse hareketlerini kaydederek tekrar tekrar yazılım üzerinde uygulanabilir.

Son konuşmacımız Lemi Orhan Ergin. Konuşmacımız bizlere Pair Programming (Eşli Programlama)‘ten bahsetti. Kendisi yazılım geliştirirken tek başına kalmak istediğimizi, aslında bunun bir risk olduğunu, çünkü kimseden geri bildirim almadan hem kodu geliştirip hem testini yaptığımızda gözümüzden kaçabilecek önemli şeylerin olabileceğini belirtti.

Çalışılan eş ile bol bol konuşulup fikir alışverişi yapılması, hem size kendinizi rahat hissettirecek, hem de tek başına öğrenmenizden çok daha fazla şey öğrenebileceğinizi vurguluyor. Optimum süre olarak ise 90 dakikada bir dönüşümlü olarak çalışıp günde 4-6 saati geçmemizi belirtiyor.

CGQgE3GWwAASG-F

CGQmjA3WoAEzV9F

CGQpovyW8AAG1xN

CGQmjA

Etkinlikte aynı zamanda sosyal medyayı kullanan katılımcılar da düşünülmüştü. En çok tweet atan 5 kişi Jetbrains’ten istediği lisanslı ürünü almaya hak kazandı. Gerçi Lemi Orhan bu konuda centilmenliğini gösterip ilk 2 lisansı doğum günü olanlara hediye etti ki bence çok hoş oldu 🙂

Yazılımı ve yazılımcıyı destekleyen eğitimlere devam edilmesi dileğiyle 🙂

Sevgilerimle..

Neslişah Demirci

Posts

One response to CraftSummit’15 – Yazılım Ustalığı Konferansı

  1. Katılma fırsatı bulamayanlar arkadaşlar için ortamın havası hakkında bir nevze de olsa bilgi aktarmışsınız.
    Paylaşımınızdan ötürü teşkkürler

Yorum yapmak için