1 puan yazan GN⁺ 4 일 전 | 1 yorum | WhatsApp'ta paylaş
  • Uzun süre beklemiş kişisel projeler, yeni şeyler öğrenmekten çok uygulamayı tamamlamaya odaklandığı için kodlama yardımcı araçlarını denemeye çok uygundu
  • YouTube Music’i OpenSubsonic API üzerinden sunan bir shim yeniden uygulanarak, farklı Subsonic istemcilerinin aynı şekilde bağlanabilmesi sağlandı
  • Önce en küçük yapı ve uygulama kuralları sabitlendi, ardından kısa yineleme döngüleriyle çalışılırken OpenAPI spesifikasyonuna dayalı stub üretimiyle gerçek istemci bağlantı testleri birlikte yürütüldü
  • Yalnızca spesifikasyona uyan ilk uygulama gerçek bağlantıda hemen dağıldı; istek günlükleri incelenip birim testleri eklenerek arama ve oynatma çalışır hâle getirildi
  • Bu bir öğrenme amaçlı stretch proje değil de sadece var olmasını istediğiniz bir proje ise, kodlama yardımcı araçları ertelediğiniz işi gerçekten kullanılan bir servise dönüştürmede büyük yardımcı olabiliyor

Proje arka planı ve yaklaşım

  • Uzun zaman önce başlanıp bitirilemeyen bir kişisel proje, yapay zeka kodlama yardımcı araçlarını denemek için uygundu
    • Yeniden canlandırılan şey, YouTube Music ile OpenSubsonic API arasında köprü kuran bir shim idi
    • OpenSubsonic, müzik akışı istemci ve sunucusunu ayırabilen bir API sözleşmesi olarak kullanıldı
    • Sunucuda Navidrome, masaüstü istemcide Feishin, Android tarafında ise Symfonium kullanıldı
  • Shim, YouTube Music’i OpenSubsonic API’ye uygun biçimde sunarak herhangi bir istemcinin bağlanabilmesini sağladı
    • Metadata sorguları için ytmusicapi, akış için ise yt-dlp programatik olarak çağrıldı
    • Temel akış işlevi görece kolay bağlandı ancak standartla uyumlu şekilde tüm endpoint’leri uygulamak için uzun bir kuyruk iş kaldı
  • Bu proje, yeni ya da özgün bir problemden çok net bir spesifikasyonun uygulanmasına odaklandığı için kodlama yardımcı araçlarıyla iyi eşleşti
    • Deney, Claude Code ve Opus 4.6 ile en baştan yeniden uygulama şeklinde yürütüldü

İlk kurulum

  • Başlangıç noktası, yapısı önceden sınırlandırılmış minimal bir proje idi
    • Bir uv projesi oluşturulup fastapi, pydantic, ytmusicapi, yt-dlp bağımlılık olarak eklendi
    • main.py, FastAPI örnek ana dosyasıyla değiştirildi ve OpenSubsonic OpenAPI spesifikasyonu klasöre kondu
    • README’ye sunucunun rolü, kullanılan kütüphaneler, dokümantasyon URL’si ve openapi.json konumu kısa biçimde yazıldı
    • Boş bir TODO dosyası eklendi ve /init ile CLAUDE.md oluşturuldu
  • CLAUDE.md içinde uygulama kuralları ayrıca tanımlanarak tekrar eden talimatlar azaltıldı
    • Metot parametreleri ve dönüş değerleri için type annotation ve docstring istendi
    • Veri modellemesi Pydantic V2 kurallarına göre hizalandı
    • Docstring’lerde Google tarzı args ve returns bölümleri istendi
    • Testler, üst seviye fonksiyonlar ile assert ve fixture kullanan modern pytest stiline göre düzenlendi
  • Bu başlangıç noktası bir git repository olarak paketlendi

MVP uygulama akışı

  • Çalışma yöntemi plan modu ve kısa yineleme döngüleriyle ilerledi
    • Sıradaki iş prompt olarak verildi ve ilk planda eksik kalan noktalar ya da sorunlar kontrol edildi
    • Sapma olduğunda ilgili kaynak bağlantıları ek olarak verildi ya da birden fazla seçenek varsa arama aracıyla daha yerleşik yaklaşımın bulunması sağlandı
    • Her işten sonra "Accept and clear context" kullanılarak bağlam temizlenip döngü tekrarlandı
  • İlk uygulama, OpenAPI spesifikasyonundan yalnızca yeni JSON endpoint’leri için stub üretmeye odaklandı
    • Eski XML endpoint’leri ile yeni JSON endpoint’leri birlikte bulunsa da kapsam yalnızca yenilerle sınırlandı
    • Uygulama sonrasında tüm metotların doğru olup olmadığını yeniden kontrol eden bir doğrulama aşaması eklendi
    • Spesifikasyon olsa bile ilk denemede hatalar çıktı ve çoğu ikinci kontrolde yakalandı
  • Büyük değişikliklerden sonra /init yeniden çalıştırılarak CLAUDE.md, yeni duruma göre güncellendi
  • Sonraki aşama, arama ve akış yapabilen minimum işlevselliği tanımlayıp bağlamaktı
    • Hedef, bir Subsonic istemcisini bağlayıp şarkı aratabilecek ve çalabilecek en küçük işlev setini kurmaktı
    • Arama için ytmusicapi, akış için yt-dlp kullanıldı

Gerçek bağlantıda ortaya çıkan sorunlar ve düzeltmeler

  • Dışarıdan bakınca makul görünen bir uygulama hızla ortaya çıksa da, Feishin ile gerçekten bağlanınca hemen çöktü
    • İstemci doğrudan test edilip sunucu istek günlükleri Claude Code’a verilerek tekrar tekrar düzeltme yapıldı
    • Sadece spesifikasyondan görünmeyen ayrıntılı farklar da vardı; örneğin endpoint’lerin .view sonekinin çıkarılması gerekiyordu
  • Her hata oluştuğunda geri dönüşleri önlemek için yeni birim testleri yazıldı
  • Çok fazla yineleme gerekmeden Feishin üzerinde gerçekten ses oynatılmaya başlandı
    • Temel sorun, stub endpoint’lerinin hiçbir şey döndürmemesiydi
    • Çoğu endpoint, boş olsa bile yapısı doğru bir yanıt döndürecek şekilde değiştirilmek zorundaydı
  • Ancak bu seviyedeki MVP, eski POC’den çok da farklı değildi ve gerçek kullanılabilirlik sonraki uzun kuyruk işlere bağlıydı

Uzun kuyruk işler ve tüm işlevlere genişleme

  • OpenSubsonic dokümantasyonuna göre API, 15 kategoriye yayılmış yaklaşık 80 endpoint içeriyordu
  • MVP için gereken kapsam görece küçüktü
    • getLicense, getUser, getGenres, getMusicDirectories, boş ama geçerli koleksiyonlar döndürüyordu
    • getSong, sorgu parametresindeki ID’yi olduğu gibi geri verip varsayılan değerleri dolduran bir pass-through olarak ele alındı
    • search3, basit bir ytmusicapi çağrısıyla uygulandı
    • stream, asyncio.to_thread ile sarılmış yt-dlp çağrısından "bestaudio" format URL’sini çıkarıyordu
    • getCoverArt, kapak görseli URL’sini yt-dlp ile alıyordu
  • Gerçek Subsonic istemci tam işlevselliğini desteklemek için ek çalışma gerekti
    • ytmusicapi çağrılarına kullanım sınırlarına takılmamak için basit bir bellek içi önbellek eklendi
    • Müzik metadata’sını saklamak için sqlite kullanıldı ve browsing kategorisindeki tüm endpoint’ler uygulandı
    • getTopSongs da top songs listesini sorgulayarak işlendi
  • Akış sırasında parçalar diske kaydedilerek yeniden indirme önlendi
    • İstemci, indirme bitmeden stream endpoint bağlantısını keserse tamamlanmamış dosyaları temizlemek için ek işlem gerekiyordu
  • Bu işler aslında elde de yapılabilirdi ama bir türlü tamamlanamayan kısımlardı; dağıtım planı olmadığı için kimlik doğrulama gibi zor alanlar ise hâlâ atlandı
  • Sonuçta kısa akşam saatleri içinde Subsonic istemcilerinin bağlanabildiği çalışan bir servis ortaya çıktı ve projeye Sub-standard adı verildi

Bunun için doğru kullanım alanı neresi?

  • Kodlama yardımcı araçlarını koşulsuz şekilde zorlamak yerine, bağımlılık nedeniyle yetkinlik kaybı konusundaki kaygı da korunuyordu
  • Kişisel projeler büyük ölçüde iki kola ayrılıyordu
    • Öğrenmek ve gelişmek için yapılan stretch projeler
    • Sadece var olmasını istediğiniz projeler
  • Bu proje ikinci kola aitti ve kodlama yardımcı araçları, uzun süredir bitirilemeyen isteği somut bir şeye dönüştürmek için çok uygundu
    • Normalde el sürülmeyecek bir projeye gerçekten sahip olunmuş oldu; bu, okunmamış kitap yığınından birini eksiltme hissine daha yakındı
  • Önemli ölçüt, ikinci tür projeleri yapıp yapmamak değil, birinci türdeki öğrenme amaçlı projelerin de sürdürülüp sürdürülmediğiydi

1 yorum

 
GN⁺ 4 일 전
Hacker News görüşleri
  • En sık yarım bıraktığım proje video oyunlarıydı
    Onlarca yarım kalmış proje klasörüm var ve artık bunu yeniden bir deney olarak ele alıyorum
    Geçen hafta bunlardan birini Claude ile yeniden çalıştırdım; gerçekten çok iyi uydu ve yönü de hemen düzeltti
    Bunun en başta terk edilmiş bir proje olduğunu söyleyince, V0 gameplay loop'unu önce bitirip oradan eğlenceyi yakalayarak genişletmemiz için beni teşvik etti; böylece vazgeçmedim
    Oyun tasarımı fikirleri verince çalışan kod üretti, procedural algoritma makaleleri verince implementasyonunu yaptı, eşya beyin fırtınası yaptı, grafik asset'ler üretti, hatta lore oluşturmaya bile yardım etti
    Claude Code + Godot kombinasyonu gerçekten çok eğlenceli; uzun zamandır ilk kez bilgisayar kullanmak bu kadar keyifli geldi

    • Bir LLM'den it yerine he diye bahsedildiğini ilk kez gördüm
      Yargılamak için söylemiyorum ama epey ilginç, biraz da rahatsız edici geldi
    • Ben tam tersiyim
      Onlarca deney klasörüm vardı; bunların önemli bir kısmı artık gerçek projelere dönüşüyor
    • Son zamanlarda eğlenceli olan şey, birkaç ay ya da bir yıl önce agent driven development ile başlayıp tıkanarak durmuş projeleri en yeni Claude veya codex ile yeniden elime alıp daha ileri taşımak
      Artık gerçekten çalışır hale gelenler de var, hâlâ ajanların kaldıramayacağı kadar karmaşık olanlar da
      Yine de kişisel uygulama yapmak giderek kolaylaşıyor
      Yakında “Alexa, buzdolabındaki yiyeceklerin fotoğrafını çekip besin bilgilerini toplayan, egzersiz uygulamamla senkronize olan, sağlık uygulamasındaki hedeflerle uyumlu malzemelerle karşılaştıran ve bütçe, konum ve diyet kısıtlarıma göre daha iyi malzemeleri e-postayla bildiren bir iPhone uygulaması yap” dediğinde 15 dakika içinde uygulamanın ortaya çıkacağı noktaya geleceğiz gibi görünüyor
    • Godot, LLM'lerle iyi çalışacak şekilde tasarlanmış bir araç gibi durmuyor
      Örneğin birkaç kez hatalı tres dosyaları çıktı ve LLM'in ID üretmesine izin vermek de epey istikrarsız hissettirdi
    • Procedural tarafta, LLM'i procedural loop'un bir parçası haline getirmeyi de deniyorum
      Bunun üstüne bir tür canlı anlatı katmanı eklemek gibi
      Yerel modeller hâlâ yavaş ve zayıf ama yine de ne tür sonuçlar verdiğini görmek oldukça ilginçti
  • Gerçekten harika
    Artık kişisel yazılım miktarı inanılmaz arttı
    Dün MediaWiki ile tamamen entegre çalışan yerel bir metin editörü yaptım; otomatik link tamamlama ve sözdizimi girişi yardımı da ekledim
    Bu tür yazılımlar başkaları için neredeyse değersiz olduğu için benden başka kimsenin yapması için bir neden yok ve ben de eskiden çok uzun sürdüğü için yapamıyordum
    Ama kodlamayı ajanlara bırakınca darboğaz implementasyon değil, benim dikkat sürem oluyor; kafamdaki boş slotlara bu tür kişisel işleri atmak oldukça iyi çalışıyor
    Gerçekten iyi bir dönemdeyiz gibi geliyor

    • Birkaç hafta önce, 1998'de başladığım Quake 2 mod'unu sonunda bitirdim
      AI sayesinde COVID sonrası tükenmişliği ve yarım kalmış proje yığınını aşabildim
      Bugün terminalle ilgili bir RDP aracını da düzelttim, 10 yıl önce OpenRA'da açtığım bir issue'ya da yeniden döndüm
      Motor 10 kat hızlandı ve pathfinding artık çoğunlukla düzgün çalışıyor
    • Gerçekten inanılmaz
      Yaklaşık 120 kişisel aracım var ve darboğazın implementasyondan context switching'e kaydığı tespiti tam isabet
      Bu yüzden artık her proje köküne bir markdown dosyası koyuyor, durduğumda durum ve sonraki adımları yazıyorum
      Böylece geri döndüğümde 20 dakika boyunca “Ben en son nerede kalmıştım?” yükünü ödemiyorum
      Zaten başkası kullanmayacağı için edge case'lerle uğraşma ya da dokümantasyon baskısı da yok; sadece benim sorunumu tam çözüp bir sonrakine geçmem yeterli
    • AI olmadan ne kadar süre yaşadığımızı merak ediyorum
      Şu anki üretkenlik patlamasına bakınca, bu kadar çok küçük ihtiyacı biriktirmek bile epey zaman almış olmalı
    • Paskalya Scavenger Hunt planlaması için bile bir uygulama yaptım
      Ne kadar niş olduğunu düşününce komik geliyor
  • Zaten kod yazmayı biliyordum ama zamanım yoktu; AI ise açık kaynak projeleri dünyaya sunmamı sağlayan tam bir oyun değiştirici oldu
    Eskiden yapmak için motivasyon bulamadığım Linux için yerel GUI uygulamalarını şimdi keyifle yapıyorum

    • Sambervise: https://github.com/edward-murrell/sambervise
      Samba 4 Active Directory Domain Controller'ı uzaktan yöneten bir Linux GUI uygulaması
    • Krbtray: https://github.com/edward-murrell/krbtray
      Linux Mint / Cinnamon ve GtkStatusIcon kullanan GTK ortamları için bir Kerberos ticket yönetimi GTK3 sistem tepsisi uygulaması
    • Bu gerçekten insanın AI ile kodlama fikrine ısınmasını sağlıyor
      Çünkü ikisi de gerçekten ihtiyaç duyduğum ve aradığım türden uygulamalar
    • Bir diğer önemli değişim de büyük ölçekli refactoring maliyetinin ciddi biçimde düşmesi
      Kodlama asistanları sayesinde, modül tasarımı da dahil olmak üzere derin yapısal değişiklikleri eskisine göre çok daha az zamanla denemek mümkün oldu
      Elbette bunun bir bedeli var; bazı modeller sık sık bakım yapılabilirlik standardının altında kod üretiyor
      Yazım süresinden tasarruf etmek, tekrar tekrar düzeltme, temizlik ve system prompt ya da instruction dosyalarını güçlendirme için harcanan zamanı ortadan kaldırmıyor
  • Araçları çok kullanmanın deskilling yaratacağı kaygısına pek katılmıyorum
    Ben bir milenyalim ve el aletleriyle, eski ahşap birleştirme yöntemleri kullanarak mobilya yapıyorum
    Bunu bana kimse öğretmedi; sadece internetteki kaynaklardan öğrendim ama sonuçta istediğim şeyleri öğrenebildim
    Bu becerileri bir gün kaybetmekten korkmamamın nedeni de gerekirse yeniden öğrenebilecek olmam
    Kitaplar, videolar, araçlar ve ahşap ortadan kaybolmuyor
    AI kullanınca, elle daha az kod yazdım diye beynimde bir kara delik oluşmuyor
    Alzheimer gibi bilgiyi sonsuza dek kaybetmiyorsun; sadece biraz yeniden ısınma süresi gerekiyor ve sonra hızlıca geri geliyor
    Kodlamadan yönetime geçip yıllar sonra geri dönen insanlar da biraz paslanmış oluyor ama yine de işi yeniden kavrıyor
    Özellikle kişisel projelerde Opus token'larını yakmana da gerek yok
    Ucuz bir abonelikle MiniMax gibi bir şey kullanıp, container içinde yolo mode'da çalıştırman ve sadece context, prompt, web search ve beads gibi bir ticket sistemi vermen yeterli
    Acil bir iş de olmadığı için brainstorm → plan → implementation → testing sırasını koruyup, sadece mock ya da unit test değil gerçek test imkânları da sağlarsan zaman ve para tasarruf ederek sonunda bitirebilirsin

  • 12 yıl önce, günümün/haftamın/ayımın ne kadar kaldığını çubuk uzunluklarıyla gösteren, hava durumunu da en yüksek-en düşük sıcaklık ve bulutluluk gibi değerleri çubuklarla ifade eden basit bir uygulama yapmak istemiştim
    Metin ve ASCII ile bir noktaya kadar ilerledim ama her gün kullanmak isteyeceğim bir arayüz oluşturamadım; grafik UI'ı ise hiç yapamadım
    Sonra Claude Code'a istediğim grafik arayüzü anlattım ve çalıştırdım; tam istediğim uygulamayı üretti, üstelik benim bilmediğim bir tarih ayrıştırıcı hatasını da buldu
    Şimdi o uygulamayı ekranın köşesinde sürekli açık tutuyorum
    Sıradaki hedefim, çocukların okula gitmediği günlerin sabahında alarmı otomatik kapatan bir iPhone uygulaması yapmak
    iPhone uygulamalarından hiç anlamıyorum ve öğrenmeye de zamanım yok, o yüzden eskiden buna hiç cesaret edemezdim
    Kişisel uygulamalar için Claude Code gerçekten mükemmel; kod kalitesi de çok kritik olmadığı için üretileni olduğu gibi kullanmak gayet yeterli

    • Claude Code kişisel uygulamalar için gerçekten çok uygun
      Yıllardır kullandığım bir Mac clipboard manager, bir OS güncellemesinden sonra garipleşti ve App Store'daki alternatiflerde de istediğim özellikler yoktu
      Sonra Simon Willison'ın SwiftUI vibe coding yazısını görüp Claude Code ile kendim yaptım
      Birkaç iterasyon gerekti ama şimdi Mac menü çubuğunda tam istediğim ve hatta daha fazlasını yapıyor
      Özellikle CC'ye ek özellik fikirleri sordum; aklıma gelmeyen seçenekleri uzun uzun önerdi ve seçtiklerimi birebir uygulatmam beni epey etkiledi
      İki gün önce de LibreOffice'in yeni markdown düzenleme bileşenine benzeyen ama daha küçük ve hafif özel bir markdown editörü istediğimi fark ettim
      Bu yüzden GPT 5.5 ile taslağını çıkardım, CC ile de implementasyonu yaptım; iki vibe coding oturumu sonunda dosya açma/oluşturma, kelime işlemci benzeri düzenleme ve canonical markdown kaydetme yapan hafif, yerel bir Mac uygulaması neredeyse tamamlandı
      Şimdilik sadece markdown table desteği eksik; bugün onu da yaptırmayı düşünüyorum
      https://simonwillison.net/2026/Mar/27/vibe-coding-swiftui/
      https://news.ycombinator.com/item?id=47298885
    • Kesinlikle öyle
      Bir şeyler yapmayı seviyorum ama bazen sadece ortaya çıkmış sonucu hızlıca elde etmek istiyorum
      Belirli amaçlı kişisel bir aracı, bütün hafta sonunu feda etmeden elde etmek istediğinde LLM desteği gerçekten harika ve kod kalitesi de çok önemli olmuyor
    • Hatta uygulamayı kendin yapmana bile gerek olmayabilir
      iPhone'da bunu varsayılan Shortcuts uygulaması ile çözebilirsin
      Tüm alarmları kapatan bir shortcut oluşturup, takvim gibi sinyalleri okuyarak belirli tarihlerde veya saatlerde alarmları açıp kapatmasını sağlayabilir ve bunu düzenli bir takvimle çalıştırabilirsin
  • Yan projelerin, çoğu zaman gerçekten yapmak istemiyorsan pek değeri olmadığını düşünüyorum
    Süreç ve deneyim öncelikliyse buna boş zaman etkinliği derim; sonuç öncelikliyse buna iş derim
    Eğer çok sayıda yan projeyi sadece sonuç için yapıyorsan, aslında boş zamanında çalışıyorsun demektir; bunun ne kadar “özgür” olduğu tartışılır
    Modern toplum zaten bizden fazlasıyla sonuç talep ediyor; en azından yan projeleri akıl sağlığımız için ayrı tutmak isterim
    Yine de daha büyük bir iyilik adına inandığın bir amaç varsa durum farklı olabilir ve böyle bir amaç sürecin kendisini zenginleştirebilir

    • Çok fazla hobim var ve programlama bunlardan sadece biri
      Bazen diğer hobilerimi daha keyifli hale getirecek yazılımlara ihtiyaç duyuyorum ama bu, hobi X'e ayıracağım zamanı o yazılımı yazmaya harcamak istediğim anlamına gelmiyor
      Üstelik bu işler bazen benim eğlence için yapmak istediğim türden kodlama da olmuyor
      İşte burası benim için LLM destekli kodlamanın sweet spot'u oldu; gerçekten de başka hobilerimden daha çok keyif almak için birkaç yardımcı uygulama yaptım
      Hâlâ hobi zamanı ama o hobinin kodlama olması gerekmiyor
    • Kodlamak için kodluyorsan evet, öyle olabilir
      Ama kaşımak istediğin bir itch ya da gerçekleştirmek istediğin bir hedef varsa ve bugüne kadar zaman ya da motivasyon eksiktiyse, bunun neden boş zaman emeği sayılması gerektiğini anlamıyorum
      Eskiden bütün hafta sonunu ya da tatili yiyen projeler, şimdi 15 dakikada iskeletini çıkarabileceğin şeylere dönüştü; bu da bence işin tam karşı tarafına daha yakın
    • Bu bakış açısına katılıyorum; oldukça sağlıklı bir tutum
      30 yılı aşkın süredir programlıyorum ama komut satırı uygulamalarıyla hep memnundum; ancak yakın zamanda Qt öğrenip düzgün masaüstü uygulama arayüzleri eklemeye başladım
      Öğrenme eğrisi çok dikti ama artık büyük ölçüde aştım
      Sonra LinkedIn'de uygulamanın ekran görüntülerini ve ücretsiz açık kaynak olduğunu paylaştım; ama beni işe bile almayacak LinkedIn tipi insanlar tarafından yüzlerce yorum aldım
      “Bunu iş akışımıza entegre etmek isteriz” ya da “Bunu deneyen ilk kişi sen değilsin” gibi şeyler söylüyorlardı; bu hiç motive edici değildi, daha çok başkaları için ücretsiz iş yapıyormuşum ya da anlamsız eleştiriler topluyormuşum gibi hissettirdi
      Bu yüzden yaklaşık bir ay ara verdim, sonra da aslında sevdiğim şeyin Qt öğrenmek ve eski programlarımı yeniden canlı görmek olan sürecin kendisi olduğunu fark ettim
      Artık buna kendi project car'ım gibi yaklaşıyorum
      Sürekli söküp yeniden yapıyor, veri modelini tamamen değiştirip farklı tasarımların artılarını eksilerini görüyor, kendi grafik görünümlerimi yazıyor ve dil çevirileri ekliyorum
      İşlev olarak çoktan bitmiş durumda ama iç yapısı tamamen farklı olan yaklaşık beş sürümü var; eğlenceli olan da tam olarak bu
      İş günüm boyunca da çok iyi iş görüyor ve bir daha LinkedIn'de bundan bahsetmemeye karar verdim
  • Kişisel repomun içinde not uygulaması denemesi olan üç ayrı proje vardı; hepsi fikirler ile boş zaman arasındaki boşlukta takılı kalmıştı
    Ama Claude Code sayesinde gerçekten istediğim olanı iki ay içinde tamamladım
    Yapım sürecinin kendisi şimdiye kadar bulduğum en iyi hobiydi; oyun oynamaktan ya da sonsuz scroll yapmaktan çok daha iyi
    Yıllardır aklımda taşıdığım bir fikir sonunda yayımlandığında, o uygulamanın içine benden daha derin bir parça giriyor ve böyle şeyler üreten solo geliştiricilerin sayısı bence çok artacak

    • Ama bunu kim satın alacak sorusu ayrı
      Eski projeleri yeniden canlandırmayı küçümsemek için söylemiyorum ama pazarın aşırı derecede özelleşmiş projelerle dolup taşması çok olası
      Eskiden uygulama kutularının üstünde teknik özellikler yazardı; şimdi ise kullanım amacı ve kapsamı anlatan yeni bir modelleme dili gibi bir şeye ihtiyaç duyabiliriz
  • Benim deneyimim de neredeyse birebir aynıydı
    Karşılaştırmalı toplama yapan yan projem bir yıldan uzun süre %20 tamamlanmış halde kalmıştı; ayda bir açıyor, yapılacaklar listesine bakıp bunalıyor ve sekmeyi kapatıyordum
    Ama Claude ile birkaç hafta sonu uğraşınca o yarım duvarı aştım
    En şaşırtıcı olan saf hız değildi; bir şey yapmak için önce eski kodumu bir saat boyunca yeniden kafama yüklemem gereken yeniden giriş maliyetinin ortadan kalkmasıydı
    Abartılı hype sinir bozucu ama bu araçlarla dalga geçenlerin çoğu, bunların tam da bu sıkıcı işler için ne kadar kullanışlı olabildiğini bence hiç denemedi

  • Her zaman kaldırabileceğimden daha fazla fikrim vardı ve bunların bazıları gerçekten iyiydi
    AI araçları sayesinde artık bunların daha fazlasını en azından çalışır durumda hayata geçirebiliyorum
    İronik olan, bu tür implementasyonların değerinin hızla düşmesi
    Birkaç hafta önce, tarayıcıda çalışan ve sunucu gerektirmeyen küçük bir arama kütüphanesi yaptım; Elasticsearch tarzında term/matching query ve aggregation'ın çoğunu destekliyor, ayrıca WebGPU ile ANN vector search de ekledim
    Neredeyse “feature X ekleyelim” deyince anında yapılan bir süreçti ve bunu gerçek web sitelerinde de kullandım
    Ölçeklenmiyor ama bloglar ve dokümantasyon siteleri için çok iyi; doküman sitesi https://querylight.tryformation.com/ adresinde
    Tam hayal ettiğim gibi çalışıyor ve Elasticsearch'ün uzun kuyruk özelliklerinden daha fazlasını da büyük çaba harcamadan ekleyebileceğimi hissediyorum
    Buna karşılık GitHub tepkisi oldukça sönüktü
    Artık herkes AI ile kendi işini üretmekle meşgul olduğu için başkasının emeğini eskisi kadar heyecanla karşılamıyor gibi; aslında bunu anlayabiliyorum da
    Bir arama kütüphanesine ihtiyacın varsa kendin üretebilir ya da AI'ın uygun olanı seçmesini sağlayabilirsin
    Zaten bunu yapmak da aşırı büyük bir emek gerektirmedi
    Bu tür projelerin ekonomik değeri hızla düşüyor
    Yine de üretmeyi sevdiğim için devam ediyorum; ayrıca bu araçlarla çalışma öğrenme eğrisini aşmanın önemli olduğunu düşünüyorum
    Önümüzde hâlâ yapılacak çok iş var ama insanlar daha az ödeyip yine de yeterince iyi sonuç bekleyecek; bu beklentiyi karşılamak için araç ustalığı gerekecek
    Sonuçta mümkün olan alan genişledikçe hırs çıtası da yükseliyor; AI işi yapacak diye insandan beklentinin düşeceğini sanmak hata olur
    Ben de son birkaç aydır çok uzun saatler çalışıyorum

  • Yıllardır her hafta birkaç farklı ürün fikri aklıma geliyordu ama hepsi Apple Notes'ta birikiyordu
    Buna karşılık son bir ay içinde bunlardan üçünü gerçekten kullanılabilir beta'lara dönüştürdüm ve şu anda üçünü de her gün kullanıyorum