- Yazılım geliştirmenin yeni çağında bir değişim hissediyorum: yaptığım işe daha az dahil oluyorum
- LLM aracılığıyla fonksiyon yazma ve hata düzeltme işlerini devrederken akışa kapılma hissi azalıyor
- Manuel çalışmadan auto-pilot durumuna geçiliyor ve LLM’in yaptığı işi gözden geçirip kabul etme süreci tekrar ediyor
- Bir kişi kendi becerisine kendini kaptırdığında akış (Flow) durumuna girer. Bu, bir zanaatkara dönüşmek gibidir
- Öznenin ve nesnenin sınırlarının kaybolduğu, karmaşık bir problemi çözmeye derinlemesine daldığı durumu ifade eder
- Birçok kişi, programlama iş akışında LLM kullanımındaki son artışın yalnızca daha yüksek seviyeli soyutlama çalışmalarını devreye sokmak olduğunu savunuyor
- Binary → Assembly → C → yüksek seviyeli dillere evrim sürecinde giderek daha fazla yetki verildi
- Ancak LLM’in devreye girmesi yalnızca başka bir soyutlama seviyesi değişimi değil
- Yukarıdaki binary’den assembly’ye, assembly’den C’ye geçişler bilişsel yükü azaltıp mantığa odaklanmaya yardımcı oldu
- LLM ise programın mantığından çok genel yapısına odaklanmayı sağlıyor → önceki değişimlerden farklı
- Programlar parçaların bir araya gelmesiyle oluşur
- Programımızı, onu oluşturan tüm parçaları anlayarak anlarız
- Artık parçaları üretmeyi devrederek zanaatkarın işini devrediyor ve üretimi yönetiyoruz
- Üretim sürecine daha az dahil oluyoruz ve LLM’in ürettiği kod üzerindeki sahipliğimiz azalıyor
- Yani zanaatkarlığı (craftsmanship) yöneticiliğe (management) dönüştürdük
- Ürettiğimiz tam parçalardan çok işin sonucuyla ilgilenmeye başlıyoruz
- Programlama artık amaç değil, araç haline geliyor
- Neyse ki ya da ne yazık ki, kodda hâlâ sorunlar çıkıyor ve kodun bağlamını anlayıp düzeltmek gerekiyor
- Bu da programlama sürecinde hâlâ insan müdahalesine ihtiyaç olduğunu gösteriyor
- LLM ajanları kullanarak programlamaya daha fazla dalmak mümkün olabilir
- Biz yüksek seviyeli soyutlamalara odaklanırken, LLM ajanları yoğun şekilde değişiklik yapar
- Ancak henüz uygun araçlar yok
- Art arda gelen çok sayıdaki değişiklik büyük bir bilişsel yük yaratıyor ve bunu işlemenin bir yoluna ihtiyaç var
- İnsan belleğinin sınırları olduğundan (kısa süreli bellekte yalnızca 7±2 öğe tutulabilir), bilgiyi farklı soyutlama seviyelerinde ifade edecek iyi tasarlanmış araçlara ihtiyaç var
- Böylece ayrıntıları kavrayıp daha büyük resme doğru yakınlaştırma yapılabilir
2 yorum
Zanaatkârlığı yalnızca kodda mı göstermeliyiz? Yazılımın, ürünün kendisinde de zanaatkârlık anlayışına sahip olamaz mıyız?
Başlangıçtan beri programlama bir amaç değil, bir araçtı.
Bu tür araçların gelişimi, insanların gereksiz işlerden çok daha büyük düşüncelere ve tasarıma zaman ayırabilmesi için ilerledi.
Compiler, işletim sistemi, script dili vb..