Projelerim
Millwright-Inspector, AI kodlama ajanlarıyla gerçek yazılım projelerinde çalışırken kullanmak üzere tasarladığım bir metodoloji. Adı, kurduğu iki rolden geliyor. Ajan millwright (değirmen ustası) rolünü üstleniyor: gereksinimleri, tasarımı, planı, kodu, incelemeleri ve testleri yazma işinin tamamını o yapıyor. İnsan ise inspector (denetçi): görevi, ajanın ürettiği şeyi okumak, yanlış gördüğü yerlere itiraz etmek ve hazır olduğunda onaylamak. İş akışı, ancak bir denetçi onay verdiğinde bir sonraki aşamaya geçiyor.
Bu yapıyı bir arada tutan şey, artifact dediğim bir grup Markdown dosyası. İş akışının her adımı, ajanın bu dosyalardan birini yazmasıyla bitiyor. Aynı dosya hem o adımın çıktısı, hem de bir sonraki adımın okuyacağı girdi oluyor. Yani gereksinimler artifact'i tasarım adımını, tasarım artifact'i implementasyon adımını besliyor ve bu böyle devam ediyor. Önemli her şey diskte düz metin olarak durduğu için, uzun bir kodlama oturumunu normalde raydan çıkaran şeyler işi bozmuyor: context window'un dolması, başka bir modele geçilmesi veya projeye iki hafta sonra dönüp nerede kaldığını hatırlayamamak gibi durumlar.
Repository, her birinin net bir görevi olan üç klasöre bölünmüş. Journal, insanın oraya boşalttığı ham girdileri tutuyor: fikirler, hata bildirimleri, ekran görüntüleri, Slack'ten yapıştırılan parçalar. Quest mevcut döngünün çalışma alanı; millwright ile inspector arasındaki devam eden iletişim burada geçiyor. Workflow Stream ise her özelliğin kendi klasörü; tamamlanmış artifact'ler zaman içinde burada birikiyor. Bir süre sonra bu klasör, bir özelliğin neden bu hâle geldiğine dair oldukça iyi bir kayda dönüşüyor; bu da elimde nadiren bulunan ama daha sonra sıkça ihtiyaç duyduğum bir şey.
İşi bu şekilde bölmek, inceleme tarafını da kolaylaştırıyor. Denetçi olarak birden fazla iş akışını paralel sürdürebiliyorsunuz, çünkü durum sizin kafanızda değil, dosyaların içinde. Bu aynı zamanda kod yazmayan birinin de iş akışını ilerletebilmesi anlamına geliyor; bir tasarımcı ya da bir ürün yöneticisi, bir gereksinim belgesini veya bir arayüz planını okumak için implementasyonu okumak zorunda değil. Metodoloji belirli bir araca da bağlı değil. Ben genellikle Claude Code üzerinde çalıştırıyorum ama Cursor, Aider veya Codex CLI ile de aynı şekilde işliyor. Ayrıca Millwright-Inspector Development Machine adıyla bir Claude Code eklentisi olarak sürdürdüğüm bir açık kaynak referans uygulaması da var.

Kişisel web sitemi geliştirirken farklı bir yaklaşım denedim. Geleneksel portföy sitelerinin aksine, ki bunlar özgeçmiş belgelerine benzer şekilde geliştirilir, bir 3d sahne oluşturdum ( ThreeJS ).
Web sitesinde mevcut olan tüm route'lar ( NextJS ) sokakta bir bina ile temsil edilmektedir. Geleneksel bir web sayfasındaki gibi bir bağlantıya tıklamak yerine, kullanıcılar bu binalara (veya menüden bina adlarına) tıklayarak o binanın konumuna seyahat eder ve sunucu tarafında render edilmiş sayfayı görüntülerler.
Kullanıcılar ayrıca serbestçe yürüyebilir ve etrafa bakabilir ve herhangi bir binaya tıklamamışlarsa ve henüz herhangi bir sayfaya yönlendirilmemişlerse, kullanıcı kontrolleri ve klavye kısayolları ile sahnenin tadını çıkarabilirler.
Sayfalar "responsive" olarak oluşturulmuştur ve mobil cihazlarda 3d render performansları test edilmiştir.
Sahneyi oluşturma:
Binalar
Doku
Doku uygulanan bina


Doku pişirme
Dışa aktarma
Teknolojiler
Araçlar
Resipise, tanımlı malzemeleri kullanarak kendi yemeklerinizi tasarlamanızı sağlayan bir yemek kitabı uygulamasıdır.
Resipise malzeme veritabanı, esas olarak FDC'den elde edilen gıda verilerini kullanır, böylece kullanıcılar kendi yemeklerini tasarlarken malzemelerinin besin bilgilerini takip edebilirler.
Resipise'in özellikleri:
Yemek kitabım
- Paylaşım butonuna tıklayarak yemek bağlantılarını kopyalayabilir,
- Yemeği yeni "section" lara taşıyabilir,
- Yemeğinizi yeniden adlandırabilir, düzenleyip/silebilirsiniz.
Yemek detaylarım
Tarif
Bir yemek tarifi oluştur
Tarif Önizlemesi
Tarifleri önizle
- Malzemeleri görüntüle.
- Tarif adımlarını görüntüle.
- Yemek besin değerlerini görüntüle.
Program
Zaman dilimi tablosu
- Zaman dilimlerine not ekleyin.
- Gün için not ekleyin.
- Sadece programa eklemek için bir yemek oluşturun (dashboard'unuza eklemeden).
- Malzemelerini ve miktarlarını değiştirerek bir yemek ekleyin.
- O gün için toplam gıda besin alımını görüntüleyin.
Sınırlar
Alışveriş listesi
- "isim", "kategori", "detaylar", "nereden alınır" niteliklerini tanımlayarak alışveriş listenize yeni girişler ekleyin/güncelleyin/silin.
- Mobil modda kontrol butonuna tıklayarak veya sola/sağa kaydırarak girişlerinizin durumunu güncelleyebilirsiniz.
- Görüntülenen liste elemanlarını filtreleyin.
Kullanıcı profil ayarları
- Kullanıcı adınızı ve profil fotoğrafınızı güncelleyin.
- Gelen arkadaş taleplerini görüntüleme, yaptığınız arkadaş taleplerini görüntüleme ve mevcut arkadaşlarınızın listesini gösterme gibi arkadaşlarla ilgili işlemler.
- Günlük besin limitleri oluşturun (Örneğin: Günlük enerji alım limitleri kcal olarak, 1800 kcal vb.).
- Tanımladığınız besin limitlerini program sayfanızda tanımlı herhangi bir günlük zaman dilimine uygulayın.
- Besin değerlerini manuel olarak ekleyerek veya AI yardımını isteyerek yiyecekler ekleyin (Bu özellik, kullanıcıların mevcut resipise veritabanında bulunmayan yiyecekleri eklemelerini sağlamak için eklenmiştir, örneğin belirli bir marka yoğurt vb.).
