Her Gün Gelişmek İsteyen Geliştiriciler için AI Kullanım Yöntemleri (290 sayfalık slayt)
(stdy.blog)Geçen hafta Line Plus'ta "Her Gün Gelişmek İsteyen Geliştiriciler için AI Kullanım Yöntemleri" başlıklı bir özel seminer verdim.
Bunu ileride YouTube'a da yüklemeyi düşündüğüm için, son birkaç ayda (veya birkaç yılda) üzerine düşündüğüm şeylerin olabildiğince çoğunu ekledim ve ortaya yaklaşık 230 sayfalık bir içerik çıktı; gerçekte ele alınan kısım bunun yaklaşık 2/3'üydü.
Daha sonra daha düzgün bir revizyondan geçerek son hâliyle 290 slayttan oluşan sürüm 2 tamamlandı.
Aşağıya Gemini ile özetlenmiş içeriği bırakıyorum.
Giriş
- AI okuryazarlığı farkı: İnsanlar arasında AI'dan yararlanma becerisi farkı çok büyük; en yeni AI'ın neyi nereye kadar yapabildiğini bilmek bile bu farkı önemli ölçüde azaltabiliyor.
- Sürekli öğrenmenin önemi: Farklı AI araçlarını düzenli olarak kullanıp öğrenen ve unutmayı da içeren (learn & unlearn) bir yaklaşım sürdürülmezse, aradaki fark yeniden açılıyor.
- Geliştirmenin genişlemesi: Geçmişte geliştiriciler çoğunlukla 'uygulama' aşamasına odaklanıyordu, ancak artık AI sayesinde fikirden pazarlamaya ve operasyona kadar ürün geliştirme sürecinin tamamına dahil olmak mümkün.
1. Bölüm: Kodlama yardımcısı olarak AI'ı daha akıllıca kullanma yöntemleri
- Kodlama yardımcılarının evrimi: Basit otomatik tamamlamadan (VSCode IntelliSense) başlayıp, AI tabanlı kod parçacığı üretimine (TabNine, GitHub Copilot) ve şimdi de doğal dille iletişim kurarak 0'dan 1'e bir şeyler üreten 'vibe coding' ve 'coding agent' dönemine ulaşıldı.
- AI performansı ve maliyetindeki değişim: LLM'lerin performansı hızla gelişirken maliyetler de hızla düşüyor; AI'ın otonom biçimde tamamlayabildiği işlerin uzunluğu ve karmaşıklığı da aynı şekilde artıyor.
- Geliştirmenin özü: 'Kodlama'nın aracı delikli kartlardan doğal dile dönüşmüş olsa da, geliştiricinin özü olan 'kodla problem çözen kişi' değişmedi.
- AI'a delege etme ve yönetim: AI ile iş birliği yapmak, bir insana iş devretmeye benzer. AI'ın yetkinlik seviyesine göre devretme düzeyini ayarlamak (bildirme, ikna etme, danışma, uzlaşma, tavsiye alma, sorgulama, tam devir) ve bir kara kutu olan LLM'nin nasıl çalıştığını gözlemleyerek izlemek önemlidir.
- Context engineering: AI'a 'nasıl (How)'dan çok 'ne (What)' ve 'neden (Why)'in açık şekilde aktarılması önemlidir. Bunun için durum (Situation), görev (Task), niyet (Intention), endişe (Concern), ayarlama (Calibration) unsurlarını içeren STICC çerçevesi faydalıdır.
- Araçlardan (MCP) yararlanma: Coding agent'ların yeteneklerini en üst düzeye çıkarmak için MCP(Model Context Protocol) sunucuları kullanılabilir. Ancak çok fazla araç bağlamak performansı düşürebileceğinden, tarayıcı kontrolü (Playwright) veya kod anlama becerisini geliştirme (Serena) gibi çekirdek işlevleri seçici biçimde kullanmak daha etkilidir.
- Sürüm yönetiminin genişlemesi: Yalnızca kodun değil, kod üretmek için AI'a verilen prompt'ların ve context'in de (plan dokümanları vb.) sürüm yönetiminin kapsamına alınmasına yönelik deneyler gerekiyor.
2. Bölüm: Ürün geliştirme sürecinin genelinde AI'ı daha akıllıca kullanma yöntemleri
- Problem çözme çerçevesi: Ürün geliştirme, 'problemi tanımlama → çözümü uygulama → değişim yaratma' şeklinde üç aşamalı bir süreç olarak görülebilir.
- 'Kendim kullanacağım şeyi kendim yaparım' yaklaşımının önemi: '** Kendim** kullanacağım şeyi kendim yaparım' yaklaşımı, özellikle AI ile kodlamaya yeni başlayanlar için en iyi stratejidir. Yapması kolaydır, beceriler hızlı gelişir ve ölçeklenmesi de kolaydır.
- Kullanıcı merkezli yaklaşım: 'Kimin (kullanıcı) hangi problemini (amaç) nasıl (karmaşıklık) çözeceğini' net biçimde tanımlamak gerekir. İlk olarak 'kendi' problemini çözmek, yani dogfooding yapmak önemlidir.
- Ürün doğrulama: Fikir doğrulaması (MVP), pazar doğrulaması (MMP) ve müşteri sadakati doğrulaması (MLP) üzerinden ürünü geliştirmek gerekir. Başlangıçta ölçek ortaya çıkmasa bile, sahaya inip müşterinin problemini bizzat çözme süreci önemlidir.
- Build in Public: Ürün geliştirme sürecini şeffaf biçimde paylaşarak hayran kitlesi oluşturma stratejisi. Küçük ölçekli girişimciler için etkilidir; burada kilit nokta hikâyeyi 'neden' ve 'nasıl' etrafında anlatmaktır.
3. Bölüm: Tüm bu süreçte junior/senior'ların AI çağına uygun şekilde etkili öğrenme ve büyüme stratejileri
- Daha az önemli hâle gelenler ve daha önemli hâle gelenler: Belirli bir dilin sözdizimi gibi bilgilerin önemi azalırken, büyük bir vizyon belirleme ve karmaşıklığı yönetme becerisi, AI'ın hatalarını fark edip ayarlayabilme yetkinliği, derin alan bilgisi, tasarım ve öğrenme kapasitesi çok daha önemli hâle geliyor.
- Zihniyet (FOMO'yu aşmak): Her yeni aracı takip etmek zorunda değilsiniz. İlgi duyduğunuz kategorileri belirleyip, SNS ve bültenler gibi kanallar üzerinden bilginin size doğal olarak akmasını sağlamak ve sağlıklı bir merak duygusunu korumak önemlidir.
- Öğrenme stratejisi:
- Güvenilir kaynaklardan yararlanma: Resmî dokümanlar, uzmanlarla yapılan konuşmalar ve içgörü sunan yazılar derinlemesine çalışılmalıdır.
- Üretken bilgi peşinde olmak: 'Sonuç'a (tamamlanmış bilgi) değil, sonucu üreten 'süreç'e (üretken bilgi) odaklanmak ve bir aracın kullanımını doğrudan o aracın kendisinden öğrenmek gerekir.
- Ustalardan öğrenmek: Uzmanlara sadece yanıt sormak yerine, "hangi sinyallerle örüntüyü fark ettiklerini" ve "neden böyle düşündüklerini" sorarak düşünme süreçlerini öğrenmek gerekir.
- Senior'un rolü: Kendi örtük bilgisini açık bilgiye (rehberler, örnek kodlar, AI kuralları vb.) dönüştürüp organizasyonla paylaşmak ve farklı alan deneyimlerini birleştirerek ortaya çıkan yeni fikirler üretmek önemlidir.
- Alışkanlık oluşturma: İyi alışkanlıklar bir anda kurulmaz; bunun yerine 'alışkanlık oluşturma alışkanlığı' (ör. mikroskopik retrospektif) ile kişinin kendisini kademeli olarak dönüştürmesi gerekir.
- Uygulama niyeti: 'Yarından itibaren şunu yapmalıyım' gibi belirsiz kararlar yerine, '** ne zaman, nerede, nasıl**' yapılacağını somut biçimde planlamak ('uygulama niyeti') hayata geçirme olasılığını büyük ölçüde artırır.
Sonuç
- Temel erdemler: AI çağında en önemli erdemler 'sağlıklı şüphecilik' ve 'merak'tır.
- AI'ın sınırlarını tanımak: AI'ın bağlam eksikliği, halüsinasyon, güvenlik ve maliyet gibi hâlâ net sınırlara sahip olduğunu kabul etmek gerekir.
- En iyi araç: Var olan herhangi bir AI'dan daha üstün araç, nihayetinde insanın 'beyni'dir ve onu aktif biçimde kullanmak gerekir.
6 yorum
YouTube'a da yükledim! https://www.youtube.com/watch?v=CAgn60EWDmw
YouTube'u da merakla bekleyeceğim hehe
Context engineering - What+Why ile akıllıca komut vermek!
Ayrıca, normalde merak ettiğim pek çok noktayı da çok net şekilde açıklamışsınız :)
Böyle kaliteli bilgileri ücretsiz görebildiğim için hem mahcup hem de minnettarım!!!!
Yok, özür dileyecek bir şey yok... haha, fazlasıyla cömert sözleriniz için teşekkür ederim.
İlk sürümde agent’e nasıl komut verileceği konusunda çok şey öğrendim.
Teşekkür ederim.