Kod Yazmak Hamalllıkmış

Yillarca kod yazarak hamallik yapmisiz. Bu yüzden yazilim teknikleri, metotlari vs gelisememis, ayni seyleri tekrar tekrar pisirip, önümüze koymuslar, biz yazilimcilar da hype dan hype a kosup, durmusuz, buna da yazilim demisiz. Ben teknik nedenlerle problem yasamayan bir yazilim projesi görmedim. Her zaman sorun yazilimcinin kendisi olmustur. Verdigi yanlis kararlar, bilgi yetersizligi, over-engineering yapmasi vs […]

Yeni Dönemin Programcilari

Yazilimda esas olan kurgu ve akistir. Genel hatlari ile verileri bagimliliklari ile birlikte kurgulayamazsaniz ve birbirleri ile olan iliskilerde veri akisini düzenleyemezseniz, uygulama ya istenileni yapamaz ya da sig bir sekilde yapabilir. Bu temel prensipleri yapay zeka araclarini kullaniyor olsaniz bile degistiremezsiniz. Kisaca neyin nasil yapilmasi gerektigi hakkinda detayli bilginiz ya da fikriniz yoksa, sizi […]

Yapay Zeka ve Context Türleri

Yapay zeka araclari ile calisirken üc türlü context var: 1. Yapay zekanin kullandigi ve promptlar ile olusturulan context2. Yazilimcinin birden fazla ajani paralelde ayni is üzerinde calisabilmeleri icin kendi zihninde olusturmak zorunda oldugu zihin contexti.3. Beynin (lislemcinin) paralel calisabimek icin kulllandigi context ve onun icindeki context switch Bahsettigim ikinci context sadece paralelde birden fazla ajanla […]

AI Driven Development

Yapay zeka araclarini tam anlamiyla verimli kullandiginiz nasil anlarsiniz? Flow olustugunda… Ben örnegin bir kanatta ajanlarla bir flutter ve web uygulamasini gelistirirken, diger kanatta bunlarin ihtiyac duygugu apileri. backend icin baska ajanlarla olusturuyorum. Bu iki dünya arasinda gidis, gelisler bir flow hissi olustuyor yani dogal bir akis olmaya basliyor. Siz sadece yazilimci olarak gereksinimlere odaklaniyorsunuz […]

Deterministik Yeti

Müsterinin gereksinimlerini tatmin etmek amaciyla yapay zekay kullanimina hakimiyet icin gerekli iki yeti: – Müsteri gereksinimlerini kavramak– Yapay zeka destegi olmasaydi bile bunlari uctan uca tek basina implemente edebilip, canliya alabilecek teknik yeterlilige sahip olmak. Ilki ne yapilmasi gerektigini ve yapay zekanin nasil yönlendirilmesi gerektigi hususuna isaret ederken, ikincisi hayal ürünü olan ve hicten ortaya […]

Yapay Zeka Ile Uctan Uca Yazilim

Yapay zeka konusunda kemiklesmis, bilgi sahibi olmadan fikir beyan edisler artmis durumda. Burada konuyu biraz daha aydinlatabilmek icin kendi düsüncelerimi ve bu konudaki tecrübelerimi paylasmak istiyorum. Ben yapay zeka araclarina hakimiyetin bastan sona ve uctan uca projeler gelistirildiginde olusmaya basladigini tecrübe ettim. Gecen seninin aralik ayindan itibaren Claude Sonet 4.5 i kesfetmem ile yazilimi tamamen […]

Sona Kalanlari Köpekler Isirir

Yazilimcilar yapay zeka konusunda bu aralar üc gruba ayrilmis duruma: – Ilk deneyimini yaptiktan sonra bir ise yaramadigini düsünenler– Hic ilk tecrübesi olmayanlar– Yazillimi tamamen yapay zekaya devredenler Ilk iki kesim genelde yapay zeka hakkinda yapilan olumlu yorumlara kendi olmayan tecrübeleri isiginda karsi koyuyurlar, yani ücüncü kesim bunlari ikna etmekle mesgul. Soru su: Bir devrim […]

Yapay Zekanin Maliyeti

Gecen ay Github Copilot icin 173 dolar ödeme yapmisim. Sürekli Claude Opus 4.6 kullandim. Yazilan kod 5 kisilik senior bir ekibin belki 2 ayda cikacagi türdendi. Bir senior yazilimcinin tüm giderleri ile maliyeti 200K TL civarinda. Bu durumda 2 milyon TL gider karsisinda 173 dolar duruyor. Bir girisimci icin bundan daha güzel bir gider azaltma […]

Prompt Engineering

Herkes prompt yazarken sade ve detayli bir dilin yeterli oldugunu düsünüyor. Prompt yazarken kullanilan dil ilk etapta cok önemli degil, yani gramatiksel kusursuz cümlelerin yazilmasi gerekmiyor. Daha önemli olan sey baglam yani context. Context yapilacak is hakkinda plain text haricinde resim, url, kod, video, teknik terimler vs gibi yapilacak ise isaret eden yapilar ihtiya etmek […]

Yazılımda Geriye Kalan Hersey Artık Teferruattır!

Blockchain teknolojisini hatirlayalim. Her derde deva olacak diye pazarlandi. Aslinda bulduklari cözüm icin cok uzun bir zaman sorun aradilar. O arayis hala devam ediyor… Cözümleri son care gibi dikte etmek ve müstterinin gercek gereksinimlerini göz ardi etmek yazilimda bir gelenek. Her daim “böyle bir cözüm var, sizin probleminize uyuyor ya da kendinizi buna göre uydurun” […]

Junior Yazılımcı Olsam Nasıl İş Bulurdum?

Yapay zekanin yayginlasmasi ile junior yazilimcilarin artik sektöre girmeleri hemen hemen imkansiz hale geldi. Bugün üniversiteyi bitirmis bir junior yazilimci olsaydim, nasil is bulurdum? Bu verecegim örnek acimasiz ve is gücünü sömürme olarak algilanacak, lakin back to the roots yapmak zorundayiz, aksi taktirde genclerin is gücü olarak kendilerini ispatlama sanslari kalmamistir. Eskiden ve hala bazi […]

Refactoring Artik bir Zihin Aktivitesidir

Neden kodu yeniden yapilandirmak (refactoring) artik sadece bir zihin aktivitesidir? Eskiden bir yazilim ürünü icin gelistirilecek özelliklerin bir maliyeti vardi. Buna göre de yer yer öncelik siralamasi yapilirdi. Simdi bu maliyet hemen hemen ortadan kalkmis durumda. Maliyetin kaybolmaya yüz tutmasi, yazilimci olarak istedigimizi yapacagiz anlamina gelmiyor. Neden yazilim yaptigimizi hatirlayalim. Yazilim müsterisi icin yapilir. Yazilim […]

Tuvaldeki Uygulama

Degerli arkadaslar, yapay zeka ile yazilimin nereye dogru gittigini size resmetmeye calisacagim. Kendim, biraz sonra okuyacaklarinizi intensif bir sekilde son günlerde yasiyorum, yani dogrudan tecrübelerimle sabit. Ben sadece 3 gün icinde bir device management sistemi gelistirdim. Bu cihaz tarafinda go ile bir agent, sunucu tarafinda bir spring boot + angular uygulamasi. Iki taraf icinde hic […]

Ürün ve MVP Ötesi

Ürün ya da mvp cikarmak sorun degil, asil mevzu onu müsterisi ile bulusturmak. Kod yazip, ürün olusturmak baska bir sey, o ürünü canliya alip, calistirmak cok baska birsey. Bu yüzden her yazilimicinin yazilim haricinde hakim olmasi gereken teknik konulari basliklar olarak yaziyorum. Gerisini bilenler tamamlayabilir: Kod yazdim, isim bitti mi diyorsunuz?

Yapay Zeka Ile Deklaratif Programlama Cagi

Promptlar ile kod yazdirmak deklaratif programlama tarzidir. Nasil degil ne yapilacagini beyan etmemiz yeterlidir. Deklaratif apiler araciligiyla neyin nasil yapildigini bilmeden zaten yillardir deklaratif programliyorduk. Simdi nasil kismini LLMlerin üstlenmis olmasi bizim calisma ve düsünme tarzimizda birsey degistirmez. Bugünün programciligi ehliyeti olan herkesin istedigi marka bir araci sürebiliyor olmasi ile ayni seydir. Ehliyetim var ama […]

Yazay Zeka ile Otomasyon Cilginligi

Artik nereye bakarsaniz claude code ya da türevleri ile yazilim projelerinde her seyi otomatize etmeye calisanlari göreceksiniz. Kesinlikle bir satir kod yazma niyetleri olmadigi gibi gereksinim analizinden dogan artefaktlari yapay zekanin alabilecegi bir yerde (örng. backlog) tutup, gerisini full otomatize etmeyen calisan tiplerden bahsediyorum. Genelde bu tipler “aksamdan bir dügmeye bastim, sabah kalktigimda tüm uygulama […]

Test Yazmaya Gerek Kalmadi

Artik kodu yapay zeka yaziyor, bunu kabul ettik. Peki biz yazilimci olarak isin neresindeyiz? Bunu burada uzun uzun anlatmak istemiyorum. Yazilimci olarak isimiz baska alanlara kaymis durumda, ama artik kod yazmayacagiz. Artik en önemli görevlerimizden birisi test yazmak / yazdirmak ve yapay zekanin olusturdugu kodun yani olusturmak istedigimiz ürünün davranislarini test etmek. Ama test kodunu […]

LLM’ler Cagimizin Yeni Derleyicileri

Su anda LLM ler turing complete degil. Er ya da gec LLM ler derleyicilerde oldugu gibi deterministik sonuclar üretmeyi ögrenecekler. Assembly kodunun elden yazildigi günler bunun icin güzel bir örnek. Yüksek dil derleyicileri assembly kodu / microcode üretmeye basladiklarinda, assembly programcilari bu ciktilara cok güvenmez ve ciktiklari elden kontrol ederlermis. Bunu artik kimse yapmiyor, cünkü […]

Kim Code Review Yapar?

Copilot / Sonet 4.5 sadece fkir olarak tanimladigim uygulama icin genis kapsamli feature listesi olusturup, bunlari 45 dakika icinde  6.319 satir kod ve 46 Dart dosyasi olarak implemente etti. Ayni zaman zarfinde uygulamanin ihtiyac duydugu backend API de olustu. Bu ufak capli bir uygulama idi. Genis capli bir uygulamada kod satir adedi 100K ya ulasabilir. […]