[{"data":1,"prerenderedAt":302},["ShallowReactive",2],{"post-\u002Ftr\u002Fnormalde-erteleyecegim-isi-ai-ile-bir-saatte-bitirdim":3},{"page":4,"translations":156,"nav":164,"related":288,"random":295},{"id":5,"title":6,"body":7,"categories":124,"category":127,"changeHistory":127,"date":128,"description":129,"disclosures":130,"draft":134,"extension":135,"image":136,"imageAlt":137,"kind":138,"lang":139,"meta":140,"navigation":141,"omitGermanLocalizationDisclosure":134,"path":142,"publishedAt":127,"readingTime":143,"rights":127,"seo":144,"seoTitle":127,"slug":145,"sources":127,"stem":146,"tags":147,"translationKey":153,"type":154,"updated":127,"__hash__":155},"postsTr\u002Ftr\u002Fnormalde-erteleyecegim-isi-ai-ile-bir-saatte-bitirdim.md","Normalde üşenip yapmayacağım işi AI ile bir saatte bitirdim",{"type":8,"value":9,"toc":116},"minimark",[10,20,23,26,29,34,37,40,43,46,49,53,56,59,62,65,68,72,86,94,97,100,104,107,110,113],[11,12,13,14,19],"p",{},"PeşinTaksit, peşin ödeme ile taksitli seçeneklerin gerçek maliyetini karşılaştıran küçük bir araç. ",[15,16,18],"a",{"href":17},"\u002Ftr\u002Fpesintaksit-pesin-mi-taksit-mi-gercek-maliyet-hesaplama-ve-finansal-farkindalik-araci","Projeyi ilk geliştirdiğimde neden yaptığımı ve nasıl çalıştığını ayrı bir yazıda anlatmıştım",".",[11,21,22],{},"Sonra proje bir kenarda kaldı. Çok trafik almıyordu. Ben de üzerine pek düşmüyor, açıkçası çok umursamıyordum.",[11,24,25],{},"Yine de bu küçük proje benim için yönetilmesi gereken bir MariaDB, bir Redis, bir Fastify backend ve bir Nuxt frontend container'ı demekti. Hepsi Docker Swarm üzerinde çalışıyordu.",[11,27,28],{},"Ben projeyi kenarda bırakmıştım. Altyapısı ise hâlâ bakım listemdeydi.",[30,31,33],"h2",{"id":32},"bir-kenardaki-proje-için-dört-container","Bir kenardaki proje için dört container",[11,35,36],{},"PeşinTaksit'in eski yapısında teknik olarak bozuk bir şey yoktu. Sistem düzgün çalışıyordu. Sorun, ürünün ihtiyacından daha büyük bir stack kurmuş olmamdı.",[11,38,39],{},"Veritabanı ayrıydı. Redis ayrıydı. Backend ve frontend ayrı container'larda çalışıyordu. Bunların hepsini Docker Swarm üzerinde yayınlıyor ve yönetiyordum.",[11,41,42],{},"Container yönetmek başlı başına zor bir iş değil. Fakat pek ilgilenmediğim, fazla kullanılmayan küçük bir proje için yapmak istemediğim bir işti. Ürünün aldığı trafik ve ona ayırdığım dikkat bu yapıyı haklı çıkarmıyordu.",[11,44,45],{},"Altyapıyı sadeleştirmek bir süredir aklımdaydı. Normal şartlarda refactoring, veri taşıma ve deployment ile birlikte 3–5 gün ayırmam gerekeceğini düşünüyordum. PeşinTaksit için o zamanı ayırmayacağımı da biliyordum.",[11,47,48],{},"Bu nedenle sistem çalıştığı sürece olduğu yerde duruyordu.",[30,50,52],{"id":51},"dört-containerdan-tek-deploymenta","Dört container'dan tek deployment'a",[11,54,55],{},"PeşinTaksit'in verisi Cloudflare KV için uygundu. AI, MariaDB ve Redis katmanlarını kaldırıp veri erişimini KV üzerinde çalışacak şekilde dönüştürdü.",[11,57,58],{},"Fastify route ve servisleri de Nuxt server route'larına taşındı. Ayrı backend ve frontend container'ları yerine, uygulamanın iki tarafı aynı Nuxt projesinde bir araya geldi. Sonuçta dört ayrı servisi yönettiğim yapı, tek bir Cloudflare Workers deployment'ına dönüştü.",[11,60,61],{},"Ben de üretilen değişikliklere göz gezdirdim ve önemli bir sorun görmedim. Ardından yeni yapıyı Cloudflare Workers'a taşıdım. Refactoring'e başlamam ile yeni yapıyı canlıya almam arasında yaklaşık bir saat vardı.",[11,63,64],{},"Bu bir hız benchmark'ı değil. Bir saat ölçtüğüm süre, 3–5 gün ise işe başlamadan önceki tahminim. AI kullanmadan aynı çalışmayı paralel biçimde yapıp süreleri karşılaştırmadım.",[11,66,67],{},"Benim için önemli olan daha basit: 3–5 gün ayırmayacağım bir işi bir saatte bitirdim.",[30,69,71],{"id":70},"ücretsiz-katman-da-kararın-parçası","Ücretsiz katman da kararın parçası",[11,73,74,75,85],{},"PeşinTaksit şu anda Cloudflare Workers'ın ücretsiz katmanında çalışıyor. Ücretli plana geçmem gerekirse de ",[15,76,84],{"href":77,"className":78,"rel":80,"target":83},"https:\u002F\u002Fdevelopers.cloudflare.com\u002Fworkers\u002Fplatform\u002Fpricing\u002F",[79],"dofollow",[81,82],"nofollow","noopener","_blank","Workers Paid hesabının asgari bedeli ayda 5 dolar",". Kullanım kotası aşılırsa ek ücret oluşabilir, fakat başlangıç maliyeti bu küçük proje için kararımı değiştirecek seviyede değil.",[11,87,88,89,93],{},"Aslında bu yaklaşımı ilk kez kullanmıyorum. ",[15,90,92],{"href":91},"\u002Ftr\u002Fwordpressten-nuxta-yapay-zeka-destekli-icerik-akisi","Bu blogu WordPress'ten Nuxt tabanlı yeni yapısına taşırken"," de işletmem gereken altyapıyı sadeleştirmiştim. evrenbal.com da bugün Cloudflare Workers üzerinde çalışıyor.",[11,95,96],{},"İki proje arasında ölçek ve amaç farkı var. Ortak tercih ise net: Sürekli ilgilenmem gerekmeyen bir proje, mümkün olduğunca az hareketli parça ile çalışmalı.",[11,98,99],{},"Yeni yapının barındırma maliyeti küçük. Benim için daha görünür kazanç, ayrı ayrı takip etmem gereken veritabanı, Redis, backend ve frontend container'larının ortadan kalkması. Projeyi hayatta tutmak için ayırdığım operasyonel dikkat azaldı.",[30,101,103],{"id":102},"peşintaksit-hâlâ-kenarda-duruyor","PeşinTaksit hâlâ kenarda duruyor",[11,105,106],{},"Bu dönüşümden sonra PeşinTaksit bir anda en önemli projem hâline gelmedi. Hâlâ bir kenarda duran, çok fazla trafik almayan küçük bir araç.",[11,108,109],{},"Sıradaki aşamada arayüzünü ve kullanıcı deneyimini iyileştirmek istiyorum. Bunu ne zaman yapacağımı henüz bilmiyorum. En azından artık küçük bir arayüz değişikliğinin arkasında gereğinden büyük bir altyapıyı yönetmek zorunda değilim.",[11,111,112],{},"Bu deneyimde AI'ın değeri şuydu: Yapmaya üşendiğim ve zaman ayırmayacağım bir temizliği yapılabilir hâle getirdi.",[11,114,115],{},"AI PeşinTaksit'i daha önemli bir proje yapmadı. Onu önemine uygun bir altyapıya taşıdı.",{"title":117,"searchDepth":118,"depth":118,"links":119},"",2,[120,121,122,123],{"id":32,"depth":118,"text":33},{"id":51,"depth":118,"text":52},{"id":70,"depth":118,"text":71},{"id":102,"depth":118,"text":103},[125,126],"ai","engineering",null,"2026-09-02","Bir kenarda duran PeşinTaksit dört container ile gereğinden fazla bakım istiyordu. AI desteğiyle yapıyı yaklaşık bir saatte Cloudflare Workers'a taşıdım.",{"aiUse":131,"aiNote":132,"conflictNote":133},"ai-assisted","Bu yazının deneyimi, sayıları, değerlendirmeleri ve nihai editoryal sorumluluğu Evren Bal'a aittir. Metnin yapılandırılması, taslak geliştirme ve kapak görseli üretiminde yapay zekâ destekli araçlardan yararlanılmıştır.","PeşinTaksit, Evren Bal'ın geliştirdiği bir üründür.",false,"md","\u002Fimages\u002Fhero\u002Fpesintaksit-cloudflare-reengineering.webp","Bağlantısı kesilmiş dört altyapı kasasından çıkan mavi uygulama çekirdeği, ray üzerinde küçük bir çalışma birimine ilerliyor","Saha Notu","tr",{},true,"\u002Ftr\u002Fnormalde-erteleyecegim-isi-ai-ile-bir-saatte-bitirdim",3,{"title":6,"description":129},"normalde-erteleyecegim-isi-ai-ile-bir-saatte-bitirdim","tr\u002Fnormalde-erteleyecegim-isi-ai-ile-bir-saatte-bitirdim",[148,149,150,151,152],"ai-coding","refactoring","urun-gelistirme","bakim-yuku","cloudflare-workers","ai-turned-deferred-refactoring-into-one-hour-job","post","aPYtmx2dvxkzYnSmOJNnk9eXAymGH8pYgu_OnYIQbR4",{"tr":157,"en":158,"de":161},{"path":142,"title":6},{"path":159,"title":160},"\u002Fai-turned-a-refactor-i-wouldnt-do-into-a-one-hour-job","With AI, a Refactor I Wouldn't Bother With Took One Hour",{"path":162,"title":163},"\u002Fde\u002Fmit-ki-in-einer-stunde-erledigt-was-ich-sonst-nicht-angefasst-haette","Mit KI in einer Stunde erledigt, was ich sonst nicht angefasst hätte",{"prev":165,"next":168,"others":171,"lucky":287,"readingTime":143},{"path":166,"title":167},"\u002Ftr\u002Ftek-bir-yapay-zeka-modeli-ne-zaman-yeterli","Tek Bir Yapay Zekâ Modeli Ne Zaman Yeterli?",{"path":169,"title":170},"\u002Ftr\u002Fyapay-zeka-istekleri-ne-zaman-farkli-modellere-yonlendirilmeli","Yapay Zekâ İstekleri Ne Zaman Farklı Modellere Yönlendirilmeli?",[172,175,178,181,184,187,190,193,194,197,200,202,205,208,209,212,215,218,221,224,227,230,233,236,239,242,245,248,251,254,257,260,263,266,269,272,275,278,281,284],{"path":173,"title":174},"\u002Ftr\u002Fsirketinizin-ai-bagimliliginin-farkinda-misiniz","Şirketinizin AI Bağımlılığının Farkında mısınız?",{"path":176,"title":177},"\u002Ftr\u002Fyapay-zekaya-ne-kadar-yetki-verilmeli","Yapay Zekâya Ne Kadar Yetki Vermeliyiz?",{"path":179,"title":180},"\u002Ftr\u002Fgsc-verilerinden-anlam-cikarmak-rankextension-yolculugunun-ilk-adimi","RankExtension'a Ne Oldu?",{"path":182,"title":183},"\u002Ftr\u002Fproductlog-once-kendim-icin-insa-ettigim-platform","ProductLog: Önce Kendim İçin İnşa Ettiğim Platform",{"path":185,"title":186},"\u002Ftr\u002Fyapay-zeka-ile-api-gelistirirken-rest-kalitesini-korumak","Yapay Zekâ ile API Geliştirirken Kaliteyi Korumak",{"path":188,"title":189},"\u002Ftr\u002Fturkiyenin-ilk-gercek-zamanli-gizli-musteri-raporlamasi","Türkiye'nin İlk Gerçek Zamanlı Gizli Müşteri Raporlaması",{"path":191,"title":192},"\u002Ftr\u002Fyapay-zeka-sisteminiz-gercekten-sonuc-uretiyor-mu","Yapay Zekâ Sisteminiz Gerçekten Sonuç Üretiyor mu?",{"path":166,"title":167},{"path":195,"title":196},"\u002Ftr\u002Fknow-how-pis-agzima-dus","Know-how Piş, Ağzıma Düş: Bilgiyi Uygulamak mı, Üretmek mi?",{"path":198,"title":199},"\u002Ftr\u002Fsatis-ile-diger-departmanlar-neden-surekli-catisiyor","Satış ile Diğer Departmanlar Neden Sürekli Çatışıyor?",{"path":17,"title":201},"Peşin mi, Taksit mi? – PeşinTaksit’in Ortaya Çıkış Hikayesi",{"path":203,"title":204},"\u002Ftr\u002Fai-projesine-model-secerek-baslamayin","AI Projesine Model Seçerek Başlamayın",{"path":206,"title":207},"\u002Ftr\u002Fyapay-zeka-kod-yazmayi-ucuzlatti-dogrulamayi-degil","Yapay Zeka Kod Yazmayı Ucuzlattı, Doğrulamayı Değil",{"path":169,"title":170},{"path":210,"title":211},"\u002Ftr\u002Fchatbot-gelistirmek-sandiginiz-kadar-basit-degil-gercek-bir-deneyimden-ogrendiklerim","Chatbot geliştirmek sanıldığı kadar basit değil: gerçek bir deneyimden öğrendiklerim",{"path":213,"title":214},"\u002Ftr\u002Fveriniz-yapay-zekaya-hazir-mi","Veriniz Yapay Zekâya Hazır mı? Önce Hangi Karar İçin Olduğunu Söyleyin",{"path":216,"title":217},"\u002Ftr\u002Fkuruma-ozel-yapay-zeka-icin-fine-tuning-sart-mi","Kuruma Özel Yapay Zekâ İçin Fine-Tuning Şart mı?",{"path":219,"title":220},"\u002Ftr\u002Fai-agent-ne-zaman-gerekli-workflow-ne-zaman-yeterli","AI Agent Ne Zaman Gerekli?",{"path":222,"title":223},"\u002Ftr\u002Fayda-1-milyon-gosterim-sifir-gelir-programatik-seo-vaka-analizi","Ayda 1 Milyon Gösterim, Sıfır Gelir: Programatik SEO Vaka Analizi (Post-Mortem)",{"path":225,"title":226},"\u002Ftr\u002Fai-gorunurlugu-yanilsamasi-bing-citation-share","Yapay Zeka Görünürlüğü Yanılsaması: Bing'in Citation Share Verileri Gerçekte Ne Söylüyor?",{"path":228,"title":229},"\u002Ftr\u002Fmesele-llms-txt-degil-yegen","Mesele llms.txt Değil Yeğen!",{"path":231,"title":232},"\u002Ftr\u002Fanlama-borcu-fatura-tek-basina-gelir","Anlama Borcu: Fatura Tek Başına Gelir",{"path":234,"title":235},"\u002Ftr\u002Fkurallardan-kararlara-vanityde-gercek-zamanli-karar-destek-ve-satis-yonetim-platformu","Sağlık turizminde lead yönetimi: Manuel dağıtımdan gerçek zamanlı satış sistemine nasıl geçtik?",{"path":237,"title":238},"\u002Ftr\u002Fteknoloji-yonetimi-ile-dijital-donusum-ayni-sey-degil","Teknoloji Yönetimi ile Dijital Dönüşüm Aynı Şey Değil",{"path":240,"title":241},"\u002Ftr\u002Fyapay-zeka-ve-hic-yapilmayan-ise-alimlar","Yapay zekâ işten çıkarmadan iş sayısını azaltıyor",{"path":243,"title":244},"\u002Ftr\u002Fyazilimciligin-sonu-mu-geldi-yapay-zeka-ile-bir-ronesans-yasaniyor","Yazılımcılığın Sonu mu Geldi? Yapay zeka ile bir rönesans yaşanıyor.",{"path":246,"title":247},"\u002Ftr\u002Fbuild-in-public-2-0","AI Çağında Build in Public: Neyi Paylaşmalı, Neyi Saklamalı?",{"path":249,"title":250},"\u002Ftr\u002Fsurec-otomasyonunda-yapay-zeka-ne-zaman-kullanilmali","Bir Süreci Otomatikleştirirken Yapay Zekâ Ne Zaman Gerekli?",{"path":252,"title":253},"\u002Ftr\u002Fai-verimlilik-kazanci-kimin-cebine-giriyor","AI Verimlilik Kazancı Kimin Cebine Giriyor?",{"path":255,"title":256},"\u002Ftr\u002Fcloudflare-docker-ve-acik-kaynak-araclarla-bir-altyapi-kurmak-camiler-orgun-teknik-hikayesi","Camiler.org'u Neden Tek VPS Üzerinde Çalıştırıyorum?",{"path":258,"title":259},"\u002Ftr\u002Fmusteri-memnun-oldugunu-unutur-hatirlatmak-gerek","Müşteri Memnun Olduğunu Unutur, Hatırlatmak Gerek!",{"path":261,"title":262},"\u002Ftr\u002Fkurumsal-yapay-zekada-rag-ne-zaman-gerekir","Kurumsal Yapay Zekâda RAG Ne Zaman Gerekir?",{"path":264,"title":265},"\u002Ftr\u002Fai-atiflari-kendi-saatine-gore-isliyor","Yapay Zeka Görünürlüğü Aramadan Önce Düştü: Google Verileri Teorimi Nasıl Değiştirdi?",{"path":267,"title":268},"\u002Ftr\u002Fbir-zafer-bir-kac-yenilgi","Bir Zafer, Birkaç Yenilgi",{"path":270,"title":271},"\u002Ftr\u002Fesigin-sifira-inmesi","Eşik Düştü: ProductLog’un Bana Gösterdiği Build in Public Riski",{"path":273,"title":274},"\u002Ftr\u002Fonceki-vibe-coder-donemi-basliyor","“Önceki Vibe Coder” Dönemi Başlıyor: Temiz Kodun Görünmezliği ve Yapay Zekanın Teknik Borç Faturası",{"path":276,"title":277},"\u002Ftr\u002Fbir-butonu-test-konusu-butun-bir-site-degisikligini-kesin-calisacak-cilgin-proje-olarak-gormek","Bir Butonu Test Konusu, Bütün Bir Site Değişikliğini Kesin Çalışacak Çılgın Proje Olarak Görmek",{"path":279,"title":280},"\u002Ftr\u002Fyapay-zeka-caginda-cocuk-yetistirmek","Yapay Zeka Çağında Çocuk Yetiştirmek",{"path":282,"title":283},"\u002Ftr\u002Fredar-kap-bildirimleri-icin-yapay-zeka-destekli-ozet-ve-uyari-sistemi","Redar: KAP Bildirimleri İçin Yapay Zeka Destekli Özet ve Uyarı Sistemi",{"path":285,"title":286},"\u002Ftr\u002Fsoru-sormaktan-isi-devretmeye","Soru Sormaktan İşi Devretmeye: Codex Araştırması Ne Gösteriyor?",{"path":279,"title":280},[289,291,293],{"path":185,"title":186,"date":290},"2026-08-27",{"path":206,"title":207,"date":292},"2026-08-18",{"path":231,"title":232,"date":294},"2026-06-23",[296,298,301],{"path":176,"title":177,"date":297},"2026-08-30",{"path":299,"title":300,"date":290},"\u002Ftr\u002Fbanka-hesap-hareketleri-entegrasyonu","Bir Bankayı Entegre Etmek Kolay. Kırk Bankayı Çalışır Tutmak Değil.",{"path":169,"title":170,"date":128},1788311702811]