Yapay zeka destekli calisirken uctan uca bir uygulamayi gelistiriyor olmak cok önemli. Kesinlikle frontend icin ayri, backend icin ayri analiz ve implementasyon yapilmamasi gerekiyor. Zaten klasik calisma yöntemlerinde ekipleri en cok mesgul eden durum da bu olmustur; kendi baslarina, koordine etmeden is yapmalari ya da backendin arayüzleri istedigi sekilde yönlendirmeye calismasi.
Okumaya devam etYapaya Zekaya Güvenmek
Yapay zeka ile uygulamayi cikardiniz ama kodun durumu hic icinize sinmedi mi?
Akliniza bircok soru geliyor olabilir. Örnegin yük altinda stabil calisak mi? Paralel islemler veriler üzerinde hata izleri birakacak mi vs. Eger akliniza hicbir soru gelmiyor ve uygulamayi hemen canliya almak istiyorsaniz, bu yaziyi önce okuyun derim :)
Okumaya devam etBitti mi?
Yapay zeka bir uygulama özelligi tamamladiginda, bilin ki o özellilk daha cok eksik.
Yapay zeka sahip oldugu context kadar duruma hakim olabilir. Bilgi ve veri eksikliginden dolayi durumu 360 derece analiz etme ihtimali cok düsük. Bu yüzden bir uygulama özelliginin kapsamini yaziimci tayin etmek ve akabinde kontrol etmek zorundadir.
Okumaya devam etYazılımda Döngüler
Yapay zeka ile yazilim yaparken benim döngülerim
– Gereksinimleri kücük parcalara bölüp, gerekli promptlar ile yazilimi yaptiriyorum.
Okumaya devam etNyet!
Tribünden bir futbol maci seyrederek, iyi bir futbolcu olunabilir mi? Nyet!
Teknolojik gelismeleri takip ederek, iyi bir yazilimci olunabilir mi? Nyet!
Okumaya devam etAmiga Efekti
Amiga 500 sahibi olanlar bilirler. Ram extension slotu vardi. 512KB olan hafizayi yine 512KB bir kart ile 1MB yapmistim.
Yapay zeka ile böyle bir analoji yasiyorum. Söyle ki:
Okumaya devam etClaude Opus
Opus 4.7 ile deneyimlediklerim:
Yeni Opus’dan 4.6 ile yaptirdigim karmasik bir veri senkronizyon implementasyonunu analiz etmesini ve aciklarini bulmasini istedim. Yirmiye yakin madde iceren bir liste olusturdu. Bunlardan dört tanesi cok kritik. Özellilkle bunlardan ilki bir güvenlik sorunu.
Okumaya devam etLütfen
Opus-4.7 daha bi özgüveni yüksek mi ne?
Bir sorunu analiz etmesini istedim. “Tam stack lazim, yoksa sallamis olurum” diyor :).
Okumaya devam etZayıf Bağlam
Yapay zeka baglam sorunu nedeni ile alzheimer hastasi gibi yaptigi cogu seyi unutabilir.
Bu kücük capli islerde sorun teskil etmiyor. Lakin bir sorunu cözmek icin daire icinde dönmeye basladiginda, zayif bir baglam yapay zekanin birbiri arkasina hep ayni cözümleri uygulayarak, degisik sonuclar almaya calismasina sebep olabilir.
Okumaya devam etDağarcığın Gücü
Yapay zaka ile ortaya cikan isin kalitesi, yazilimcinin yetenekleri ile dogrudan iliskilidir. Yazilimci neyi yapabiliyorsa yani neye kadir ise, onu yapay zekaya yaptirabilir. Buradaki tek fark; kendisinin yapmiyor, yaptiriyor olmasidir.
Okumaya devam etGereksinimlere Odaklanma
Eskiden bir uygulama bünyesinde herhangi birsey yapilmak istendiginde sürec yazilimci icin söyle isliyordu:
Yazilimci ne yapilmasi gerektigini anladiktan sonra, bu gereksinimi hayata gecirmek icin teknik detaylar ile boguslaya basliyordu. Bu bogusmaca sonucunda asil gereksinim yazilimci odagindan cikiyor ve teknik cözüm onun yerini aliyordu. Bu sebeple istenilen degil de teknik olarak yapilabilen ortaya cikiyordu cogu zaman.
Okumaya devam etAnalizin Analizi
Yapay zeka insanlarda oldugu gibi dogru analiz yapamadigi taktirde karmasik cözümler üretebiliyor. Söyle daha kolay olmaz mi dediginizde, haklisiniz cok karmasik düsünmüsüm, bu benim düsündügüm cözümden cok daha mantikli ve basit diyebiliyor.
Okumaya devam etHuma Context Switch
Yapay zeka ile calisirken en limitleyici faktör yazilimcinin kendisi.
Yazilimci birden fazla ajan ile calisirken baglamlari (context) yönetimesi, context switch nedeni ile onu cok zorluyor.
Okumaya devam etYapay Yeka İle Calışırken En Büyük Challenge
Yapay zeka ile calisirken en büyük challenge nedir?
Uydurup, uydurmadigini anlamak ve ona göre aksiyon almak.
Okumaya devam etÇevik Yazılımın Rönesansı
Yazilim dünyasinda tas üzerinde tas kalmiyor :) Dogru bilinenler ve uygulamalar artik kendiliginden ortadan kalkmaya yüz tutuyor. Bunlarin basinda garip toplantilar var. Digerlerine diger yazilarimda deginecegim.
Okumaya devam etHangisi Daha Verimli
Hangisi daha verimli?
1. Frontend programcisi api gereksinimlerini backend programcisina delege ediyor ve IO veri yapilari üzerinde uzlasma saglamalari gerekiyor. Test, entegrasyon vs derken aradan uzun bir zaman geciyor ve api tam istenildigi sekilde calismayabiliyor. Bu beraberinde uzlasma seanslari getiriyor. Frontend programcisi backend ve api development konularinda kendisini tamamen saliyor ve UI harici bir is yapmiyor. Ayni sekilde backend programcisi asil gereksnimlerden bihaber api programlamaya devam ediyor ve gereksinimleri anlama konusunda frontend yazilimcisina bagimli hale geliyor.
Okumaya devam etKonuyu Bilmiyorlar
Yapay zeka ile gelinen son nokta…
1. En radikal yazilimcilar yazilimi tam anlamiyla birakti ve sadece gereksinimlere ve testlere odaklaniyolar.
Okumaya devam etTakım Olayı Bitmiştir
Bilyorum bunlar cok radikal söylemler, ama ben daha önceki yazilimci tecrübelerimi güncel tecrübelerimle kiyasladigim zaman ortaya ckan görüsler bunlar. Gülüp gecebilisiniz. Nasil olsa kisa bir zaman sonra kendiniz deneyimleyeceksiniz. Ben size hizlandirilmis halini anlatiyorum, yani spoiler :)
Okumaya devam etTest Edenler Kazandı
Ben sahsen “ben programciyim, test yazmam” diyen cok programci gördüm. Bunlardan hala cokca var.
Simdilerde ise bu programcilarin yapay zekanin ürettigi kodu test etmekten baska ellerinde hicbir secenek kalmamis olmasi ne kadar ironik degil mi :)
Okumaya devam et