Yazılımın Emacs’laşması
(sockpuppet.org)- Yapay zeka ajanları sayesinde birkaç saat içinde kişisel yerel uygulamalar yapılabilir hale geldikçe, yazılım Emacs tarzı özelleştirmenin alanına kayıyor
- MDV.app, macOS için bir Markdown görüntüleyicisi; arama, SQLite FTS indeksleme, yer imleri, içindekiler ve konum hatırlamayı birkaç saat içinde hayata geçiriyor
- Her Electron uygulamasının kendi Chromium kopyasını taşıması sorunu ve yerel UI geliştirmenin zorluğu büyük engellerdi, ancak Claude SwiftUI’yi ustalıkla kullanıyor
- Emacs kültüründeki gibi, herkesin kendi sıkıntısını çözen aşırı spesifik araçlar artıyor; bitmiş üründen çok fikirlerin, gözlemlerin ve prompt’ların değeri büyüyor
- Ajan destekli kodlama, yan projelere ve terminal araçlarına kullanışlı bir UI eklemeyi kolaylaştırıyor ve yerel UI üretimini eğlenceli bir işe dönüştürüyor
Markdown görüntüleyicisini neden kendim yaptım
- Yazılım geliştirmede Markdown, LLM’lerden önce de ortak dil gibi kullanılıyordu; ajanlardan sonra TUI araçları yeniden çoğalınca terminalde Markdown’u durmadan kaydırarak okuma deneyimine katlanmak daha da zorlaştı
- TUI Markdown görüntüleyicileri arasında Charm’ın glow ve Josh’un yaptığı Markless var; Markless içindekiler arasında gezinmeyi de destekliyor ama terminaller genelde eş genişlikli yazı tipi kullandığından uzun süreli okumada yorucu oluyor
- macOS’ta Obsidian, Typora, Bear gibi grafik arayüzlü Markdown düzenleyicileri var ve okuması rahat, ancak hepsi birer düzenleyici olduğu için
.mddosyasını açar açmaz mevcut düzenleme ortamı ve pencere yerleşimi bozuluyor - App Store’daki Markdown görüntüleyicileri ilk bakışta fena görünmese de pratikte aramanın olmaması, uygulama içi satın alma bulunması ya da seçilen metni panoya kopyalayamama gibi sorunlar ortaya çıkıyor
- 2026’da uygun bir görüntüleyici aramayı sürdürmek yerine, istenen Markdown görüntüleyicisini yapay zeka ajanıyla üretmenin daha mantıklı olduğuna karar veriliyor
Claude ile yapılan MDV.app
- MDV.app, App Store’da bulunan özel Markdown görüntüleyicilerinden daha iyi bir seviyeye birkaç saat içinde ulaştı; gerçek etkileşim süresi ise yaklaşık 30 dakikaydı
- Eski bir MacBook’ta Xcode ve git kuruldu, Claude ortamı hazırlandı; Swift ve macOS tasarımıyla ilgili yardımcı kaynakları toplama hazırlığı ise haftalar öncesinden başlamıştı
- MDV en iyi macOS uygulaması ya da olağanüstü yetenekli bir yazılım değil, ancak özel bir macOS Markdown görüntüleyicisi olarak fazlasıyla yeterli ve yaşam kalitesini ciddi biçimde artırıyor
- MDV’nin başlıca özellikleri; belgede metin seçip kopyalama, sabit dizge araması, düzenlenebilir geçmişteki tüm Markdown dosyaları için SQLite FTS indeksleme, kısayol yer imleri ve içindekiler arasında gezinme
- Belgeler arasında geçerken konumu hatırlıyor, yeniden başlatmadan sonra da kaldığı yerden devam ediyor; renk temaları ve rahat okunur tipografi sunuyor, böylece
.mddosyasına tıklayınca istenen okuma ortamı hemen açılıyor
Electron’un sınırları ve yerel UI’daki değişim
- Signal’den her mesaj geldiğinde ekran titriyor ve Signal uygulaması açıkça gizlenene kadar bu durmuyor; hafif titreme neredeyse migren öncesi bir seviyeye kadar sürüyor
- Bunun nedeni Signal’in bir Electron uygulaması olması; dışarıdan yerel bir macOS uygulaması gibi görünse de gerçekte gizli bir web sayfasını işleyen bir Chromium kopyası çalıştırıyor
- Son 10 yılda çıkan neredeyse tüm UI uygulamaları sanki kendi Chromium kopyasını taşıyor gibi ve Electron iyi olmasa da yeterince kabul edilebilir bir seçenek olarak ayakta kaldı
- Gerçek anlamda yerel UI yapmak tarihsel olarak zordu; bunu emanet edecek ortalama seviyede insan bulmak bile güçtü ve yetkin macOS yerel UI geliştiricileri nadirdi
- Claude, ortalama bir SwiftUI geliştiricisinin yerini doldurmanın ötesinde, gerçekten SwiftUI’ye hakim bir geliştirici gibi görünüyor
Emacs kültürünün yazılımın geneline sızma biçimi
- MDV, kurulup kullanılması önerilen bitmiş bir ürün olmaktan çok, Emacs kullanıcılarının parlak bir
.emacsyapılandırmasına bakıp fikir yürüttüğü gibi, fikir çalınıp daha iyisinin yapılacağı bir örnek olarak görülmeli - Emacs kültüründe uzun süreli kullanıcılar, metin düzenlemedeki kişisel rahatsızlıklarını çözmek için elisp ile uygulamalar yazar ve bu araçlar, bir metin düzenleyicinin makul sınırlarının ötesine genişler
- /r/emacs, Product Hunt tarzı ürün tanıtımından çok bir gösterip paylaşma kültürüne benziyor; yaygın kullanılan elisp paketleri var ama Magit dışında çoğu şeyi herkesin kendi daha parlak sürümüyle yeniden yapma eğilimi baskın
- Emacs kültürünün zayıf yanı, Magit dışındaki paketlerin genelde çirkin ve yavaş olması, ayrıca ancak elisp ile uzun süre uğraştıktan sonra fark edilebilecek kötü kullanıcı deneyimlerine sahip olmasıydı
- Yapay zeka ajanları bu kültürü Emacs’ın dışına taşıdı; ekrana ve girdiye erişim olduğu sürece artık yerel UI güvenilir biçimde yapılabildiğinden, yerel UI profesyonelce paketlenmiş programların alanından çıkıp kişisel özelleştirme alanına kayıyor
Kişisel yerel araçların imkanı
- Emacs’laşmış yazılımın çoğu, yalnızca onu yapan kişiye yarayan kişisel yazılımlar olacak ve
.emacsiçinde kalmış eski elisp programları gibi pek çok araç unutulacak - Bazen bu tür programlar kendi sınırlarını aşıp birden fazla kişinin kuracağı kadar yararlı hale gelebilir, ancak o durumda bile en önemli şey dağıtılan çıktı ya da kaynak kod olmayabilir
- Eğer ajan SwiftUI kodunun tamamını yazdıysa, kaynak koda satır satır bakmaktan çok, “böyle bir şey yapılabiliyor ve iyi çalışıyor” şeklindeki fikir ve gözlem daha önemli hale geliyor
- Bu tür yazılımlarda prompt kaynak koddan daha değerli olabilir; yazılımı doğrudan çalıştırarak üretmeye alışkın kişiler için her şey yalnızca teknik olarak değil, pratik olarak da programlanabilir hale geliyor
- Ajanla üretilen yazılıma “inşa edildi” demek bile harcanan çabaya göre fazla iddialı görünüyor; his daha çok, bir anda çok daha yapılandırılabilir hale gelmiş bir platform üzerinde yapılandırma (configuring) yapmaya benziyor
- Yapay zeka kullanan geliştiriciler, yıllardır biriktirdikleri rastgele yan projeleri sonunda bitiriyor
- Artık bu kadar aşırı spesifik araçlar sadece tamamlanmakla kalmıyor, aynı zamanda kullanışlı bir UI da edinebiliyor; bu da Emacs’ın hantal arayüzüne katlanma gerekçelerinin bir kısmını zayıflatıyor
- Terminal uygulamalarını çok daha kolay iyileştirme ihtimali büyüdü;
iostat, birden çok host’a yayılaniostatya dabpftracegibi araçlar da daha anlaşılır biçimlere dönüştürülebilir - Brendan Gregg’in
bpftraceterminal görselleştirmesi için katlanmak zorunda kaldığı karmaşıklığa artık eskisi gibi razı olmak gerekmiyor; hatta elle yapılmış bir örnek de var - Bir zafiyet araştırmacısı olarak 2026’nın ilk yarısındaki ajan destekli kodlamaya dayalı exploit geliştirme ilerlemeleri ilgi çekiciydi, ancak çoğu insan için bu değişim kaygı vericiydi; buna karşılık yerel UI yapmanın eğlenceli hale gelmesi neredeyse saf anlamda iyi bir haber
- Kendi sorunlarına göre uyarlanmış aşırı derecede spesifik araçlar yapıp bir süre keyfini çıkarmaları, sonra da bunları paylaşmaları; daha da iyisi ekran görüntülerini ve kullanılan prompt’ları paylaşmaları öneriliyor
1 yorum
Hacker News görüşleri
Bence artık ineklerin, bugün çoğunlukla önceden paketlenmiş uzman yazılımlar haline gelmiş alanları geri almasının zamanı geldi: podcast uygulamaları, müzik dinleme uygulamaları, feed okuyucular, Bluesky istemcileri, not uygulamaları, masaüstü yer imi/sonra oku uygulamaları, sohbet ve mesajlaşma, zaman takipçileri, tarif yöneticileri gibi şeyler
Claude ile, mevcut alternatiflerden daha iyi sonuçları rahatlıkla elde edebilirsiniz. En iyi ya da dünya çapında rekabetçi uygulamalar olmayabilirler ama kendi tuhaf çalışma tarzınıza çok daha iyi uyan uygulamalar yapabilirsiniz
Music.app kullanması acı verici bir uygulama ama Apple temel işlevleri zaten uzun zaman önce MusicKit’e çıkardı. Artık asıl ürün gerçekten MusicKit, bu yüzden neden hâlâ Music.app kullandığımızı bilmiyorum; bu da yeni bir değişim
Buna yönelik bir deney https://github.com/dharmatech/9social
İlk istemciyi plan9 için yazdım; tasarım ancak böyle dürüst kalıyor. plan9/rc/acme üzerinde çalışıyorsa mantıklıdır
Video demosu https://youtu.be/q6qVnlCjcAI ve mevcut uygulama 3000 satırdan az kod içeriyor
Emacs demişken, 9social büyük ölçüde bir Emacs projesi olan Org Social’dan ilham aldı: https://github.com/tanrax/org-social
Bu, zaman girmek için eksik bir spreadsheet tabanlı arayüz. Danışmanlık için yapmıştım ama veri depolama kısmına kadar gelemedim. İnsanların doğal biçimde zamanı girdiği neredeyse her yolu işleyebilen tatlı bir algoritması var; bunu, mevcut zaman takipçilerinin yapılandırılmış girişi dayatmasından nefret ettiğim için yaptım: https://stackoverflow.com/a/49185071/59087
Tarif yöneticisi: https://repo.autonoma.ca/repo/recipe-fiddle
LLM çağında malzemeleri sınıflandırmak ve PDF yayını için TeX’e biçimlendirmek çok daha kolay olacak. Bu projenin fikri, web tariflerini veya el yazısı taramaları neredeyse kopyala/yapıştır ile otomatik biçimlendirmekti
F-Droid’da tüm bu koşulları karşılayan bir uygulama yoktu, ben de APK’yi kendim yaptım
LLM çağı sayesinde yazılım üretimi o kadar kolaylaştı ki bence her şey bir .emacs dosyası gibi oldu. Yani her birey tamamen kişisel ve sonsuzca özelleştirilebilir bir yazılım kozasına sahip olacak
OP’nin ifadesiyle, mevcut bir şeyi kurup öğrenmektense kendi çözümünü yapmak daha kolay hale geldi
Lisp de iyi bir benzetme. Lisp makrolarına yönelik eski bir eleştiri, her programcının işi kendi özel diline çevirip başkasının okuyamayacağı hale getirmesiydi
Mark Tarver’ın 2007 tarihli “The Bipolar Lisp Programmer” yazısını da hatırlatıyor: https://hn.algolia.com/?query=comments%3E0%20The%20Bipolar%20Lisp%20Programmer&type=story&dateRange=all&sort=byDate&storyText=none&prefix
Orada “brilliant bipolar mind” deniyordu; bu, bugün ironik ya da ciddi biçimde sık duyulan AI psychosis ile de ilginç biçimde kesişiyor
Tarver’ın yazısında https://www.marktarver.com/bipolar.html Lisp topluluğunun “throw-away design” anlayışının BBM’ye tam uyduğu anlatılıyor. Lisp bir şeyleri gelişigüzel ortaya atmayı o kadar kolaylaştırıyor ki herkes kendi çözümünü yapıyor ve kendisine geri dönüyorsa bunun yeterli olduğunu düşünüyor
Buna karşılık C/C++’ta anlamlı bir şey yapmak çok zor olduğu için bu başlı başına bir başarı oluyor ve belgeler hazırlamakla iş birliği yapma motivasyonu doğuyor. İşveren açısından iletişim kuran, dokümantasyon yapan ve birlikte çalışan 10 kişi; yerine koyması zor bir Lisp hacker’ından daha çekici
Üretim kolaylaştıkça tüketim darboğaz haline geliyor ve paylaşmak zorlaşıyor. .emacs dosyaları parmak izi kadar kişisel; parçalarını alabilirsiniz ama bir başkasınınkini tümden kullanmak istemezsiniz
Bu kozalar daha fazla özelleştikçe başkalarının onları anlaması ya da kullanmak istemesi daha da zorlaşıyor. Bilişsel maliyet büyük ama aynı zamanda başkasının kıyafetlerini giymek gibi rahatsız edici. Buna AI psychosis’ten çok AI solipsizmi demek daha doğru olabilir
Yazılımda asıl zor kısım yapılandırma yönetimi haline geliyor. Kaynağı nasıl paylaşacağız, nasıl sürümleyeceğiz? Kaynak nedir? Prompt mu? OP de sonunda kod yerine ekran görüntüleri ve prompt’ların paylaşılmasından yana kayıyor
Show HN’de de üretilen kodun artık kaynak olmadığı, bu yüzden prompt’ları paylaşmamız gerektiği yönünde bir deneme balonu uçuruldu ama bilen insanlardan ciddi tepki aldı: https://news.ycombinator.com/item?id=47213630
GitHub’ın gördüğü baskı da muhtemelen bu akım yüzünden kaçınılmaz. Halefinin neye benzeyeceği belirsiz ama sonunda gerekecek. Şimdilik sessiz giden at arabası aşamasındayız gibi görünüyor
Daha da önemlisi takım çalışması. Herkes BBM olursa ya da her birimiz sadece kendimiz için 7/24 üretim yapan çılgın BBM ordularına sahip olursak, birlikte nasıl çalışacağız? Kozalar birbirleriyle nasıl iletişim kuracak ve birlikte çalışabilir olacak? AI solipsistlerinden oluşan bir takım kulağa çelişki gibi geliyor
AI odaklı, ajan tarzı geliştirmenin ön cephesindeki ekipler ve startup’lar bu sorunu şu anda gerçekten yaşıyor olmalı. Benim ürettiğim kodla seninkini nasıl birleştireceğimiz gibi meseleler. Bu sürtünme yüzünden, üretilmiş kodun verimlilik kazancının bir kısmı geri verilebilir
Bunun henüz açık açık pek konuşulmaması üzücü. Kimse zorunlu ayakta alkış sırasında ilk oturan olmak istemiyor ama bunu bedelsiz bir öğle yemeği gibi göstermek tartışmayı sıkıcılaştırıyor ve evrimi yavaşlatıyor
Yeni araçlarla en ciddi ve en ileri işi yapan insanlar eksilerini dile getirmezse, AI’ın yazılım geliştirmede değersiz olduğunu düşünen alaycı kesimden başka kimse bu eksilerden söz etmeyecek. İnsanlığın yok oluşundan ziyade hata sayısındaki artışı ya da verimlilikteki duraklamayı konuşmak daha zor bir atmosfer var
Gerçekte neler olduğunu, insanların nasıl tepki verdiğini ve bunun zamanla nasıl değişeceğini bilmek istiyorum. Galiba meetup’lara gitmem gerekecek
İlgili makalenin başlığı da “Easier to Write, Harder to Read” idi: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=6726702
Neden LLM ile yapılmış belirli bir konuşmanın çıktısını okuyayım? Konuşma konusunu bilirsem, daha iyi bir konuşmayı kendim yapabilirim
Bu tür yazılımlar da benzer. Biraz zevk farkı olabilir ama çoğu durumda önemli olan fikirler ve tarifler
Aylık bir “Vibe HN” başlığı güzel olurdu
Bundan daha kısa sürede özel bir WhatsApp yaptığını gösteren bir video paylaşılabilir mi merak ediyorum. Daha insanları anlık yapılmış bir mesajlaşma uygulamasına çekme sorununa bile gelmedik
Şimdi ise “bu ticket’ı Claude’a vereceğim, sen de Copilot ile dene de sonuçları karşılaştıralım” ya da “ben kaba bir sonuçla PR açayım, sen kendi aracınla incele” noktasına geldik. Açıkçası bu neredeyse anlamsız hissettiriyor ve pair programming tamamen öldü
Birden fazla ajan çalıştırıp farklı çalışma ağaçlarında sorun düzelten ve agents.md içindeki tutarsızlıkları onaran birini izlemek kimin hoşuna gider ki
Kendi kendini işleten tam otonom bulut pipeline’ları kurma yönünde bastırıyoruz ama yönetim bunu sessizce bastırmaya çalışıyor gibi. Bunun gerçekten işe yarayabildiği kanıtlandığı anda bazılarının rahat pozisyonlarını kaybedeceğine dair basit bir farkındalık var sanki
UNIX bir ürün değil, araç yapmak ve gerçek problemleri çözmek için optimize edilmiş bir ortamdı; araçlar C ile yazılıyordu. O sırada BBM’ler Boston’da Lisp ile meşguldü herhalde
C++ ise bambaşka bir hikâye; orada IDE gerekiyor
Emacs’in böyle bir niteliğe sahip olmasının sebebi Lisp kullanması. Programcıların her şeyi kendilerinin yapmaya başlaması şeklindeki genel eğilim Lisp’te gözlenmişti ve buna The Lisp Curse denmişti
Buna lanet denmesinin sebebi, programcıların iş birliği yapmayı bırakması. Herkes kendi kulesine kapanmış bir büyücüye dönüşüyor, genel ilerleme duruyor ve karanlık çağ geliyor
LLM çağı sayesinde kişisel yazılım üretildiği doğru
Ama dürüst olmak gerekirse, Emacs kullanırken geçirdiğim zaman bana kişisel yazılım yapmayı öğretmedi. Emacs yapılandırmam son derece kırılgandı; bunu Windows ve macOS’ta birlikte kullanmaya çalışmak ise tam bir kâbustu
Üniversite projelerini, org-mode ile bir tür iş akışını karıştırıp güzel LaTeX dosyaları üreten tuhaf bir düzenekle yazmıştım ama bugün bunu tekrar nasıl derleyeceğimi açıklayamam. Denesem muhtemelen LLM’e bunu doğrudan LaTeX’e çevirmesini söylerdim
Hayatımda mümkün olduğunca az bakım işi olmasını istiyorum ve her şeyi kendim yapmak her zaman bu hedefle uyumlu olmuyor
Bir NETFX uygulamasını Rust ile yeniden yazmışlığım var. Çünkü kurulumunun 20 dakika sürmesi sinir bozucuydu: https://github.com/bevan-philip/wlan-optimizer
Bir programcının gündelik işi; yerel, uzak, bulut veya gömülü bilgisayar sistemlerinin davranışını değiştirmektir. Gereksinimler değişir, kapsam kayar, problem alanı evrilir, birikim kaçınılmazdır
Dil yığınları, veri türleri, biçimler, CLI ve web araçları, protokoller, paradigmalar, açık kaynak ile kapalı uygulamalar arasında sürekli geçiş yapmak zorundayız
Bu yüzden sürekli uyum sağlamamız ve kendi kontrol düzlemimizi de değişime göre ayarlamamız gerekir. Buradaki öz otomasyondur. Küçük can sıkıcı şeylerin hepsi otomatikleştirilebilir ve otomatikleştirilmelidir. Bu, iş akışını durmadan dönüştürmek demektir; yani araçların sürekli bakımıdır ama acı veren reaktif bakım değildir
Programcı olup da kendiniz için sürekli yazılım yapmak istememek bir yanılsamadır. Bu, restoranda ocağı açan ama evde bıçağa bile dokunmayan bir aşçı gibi olur
Emacs, aşçının evdeki mutfağıdır. Bakımın; arızaları tamir etmek ve değişimi takip etmek gibi reaktif bir yanı, bir de anlayışınız geliştikçe araçları yoğurmak gibi üretken bir yanı vardır. Programcı ilkininkinden nefret etmeli, ikincisine ise çekilmelidir
Emacs, araçlarla işin aynı mizacı paylaşması sayesinde üretken bakım için neredeyse benzersiz biçimde uygundur
Emacs için “yapılandırmaya çok iş düşüyor” şikâyeti yaygındır ama bunun anlamı çoğu zaman “değer elde etmeden önce yatırım yapmak istemiyorum”dur. Bu uzun vadede akıllıca bir strateji değil. Emacs’i kariyer boyunca ve yaşam boyu toplam bakım yükünü azaltan genel amaçlı bir araç olarak görmek daha doğru
Emacs ya da VIM yapılandırmaları sadece metin dosyalarıdır; sıradan bir editörde açılabilir ve ihtiyaçlara göre düzenlenebilir, ayrıca neyin nerede olduğu bilinir. Benim VIM yapılandırmam 20 yıllık; sadece 1-2 yıl önce elle paket yönetimini bırakıp bir eklenti yöneticisine geçtim
Burada gatekeeper da yok, bağımlılık da
Buna karşılık bugünkü yöntem ya üçüncü taraf bir şirkete 20-200 dolar ödemeyi ya da yerelde çalıştırmak için epey güçlü bir GPU gerektiriyor; ayrıca bir metin dosyasına talimatlar yazıp istenen hale gelene kadar tekrar tekrar düzeltmeniz gerekiyor
Bu da kendi kendine bağımlılık eklemek demek ve eğer insan incelemesinin zorlanacağı kadar dolaşık hale gelirse, bu bağımlılık güçlü bir bağımlılığa dönüşecek. İster pahalı bir GPU olsun, ister verileri hissedar memnun etmek zorunda olan bir şirkete yollamak olsun, fark etmiyor
Bu ikisinin nasıl farklı olduğunu ve ödediğimiz gerçek bedelin ne olduğunu ayırt etmemiz gerekiyor
Kişisel yazılım, yani kişinin kendisi için program yazması fikri, 1960’lardaki ev tipi bilişimin asıl vizyonuydu
PC tam olarak öngörülmemişti ama herkesin evinde bir bilgisayar terminali olacağı ve ihtiyaç duyduğu işleri yapmak için program yazacağı düşünülüyordu. Programlamanın herkesin öğrenebileceği kadar kolaylaşacağı hayal ediliyordu
Henüz orada değiliz ama LLM sayesinde yaklaşıyoruz
Yani uzman olmayanların, iyi tasarlanmış bileşenler ve kolay anlaşılır mecazlarla kurulmuş bir üretim ortamında ilginç yazılımlar yapabilmesi fikri. Tesadüfi ya da gereğinden fazla tasarlanmış karmaşıklık katmanları temizlenmiş olmalı
Bu vizyonda da yazılım dikkatli mantıksal düşünme gerektirir ama bu düşünceyi çalışan koda dönüştürmenin külfeti çok daha azdır. Araç zinciri ve build sistemi kâbusu da yoktur
Onun yerine çok güçlü modeller inşa edip karmaşık büyüleri bizim yerimize tekrarlayıp yeniden birleştirmelerini sağladık. Ama karmaşıklık hâlâ duruyor ve uzman olmayanlar için hâlâ opak
Yine de LLM bu karmaşıklığın bir kısmını gidermeye yardımcı olabilir. LLM tarafından üretilen yazılımın, bireyler tarafından kolayca anlaşılabildiği ve doğrudan değiştirilebildiği bir yön hâlâ mümkün ve LLM dünyasıyla da güzel biçimde tamamlayıcı olabilir
Bu bir yapılabilirlik meselesi değil; zamanlama meselesi ve bu da en fazla 10 yıl, büyük ihtimalle çok daha kısa. Kod yazmayı bilmeyen akrabalarım bile şimdiden böyle şeyler yapıyor
Bu gelecekteki bilişim biçimi gerçekten çok güzel ve inanılmaz derecede güçlendirici bir yön
Şu anki Swift uygulaması 15 bin satır; bunun 5000 satırı test, 10 bin satırı uygulama kodu. Neredeyse bitti ve ihtiyacım olanı yapıyor. 20 saat sürdü
Swift’i hiç yapmamıştım; bunu kendim yapsaydım kişisel olarak 500 saat sürerdi diye düşünüyorum
Muhtemelen çoğumuz tembel olduğumuz için o kadar ileri gitmeyiz ama yine de düşünmeye değer
Uygulama kavramının kendisi çok daha akışkan hale gelecek
Bir uygulama dinamik bir dille yazıldıysa, kullanıcının kodu bizzat yeniden yazıp tamamen yeni özellikler eklememesi için bir sebep yok
Makalenin ana metniyle doğrudan ilgili değil ama terminalin neredeyse her zaman sabit genişlikli olması nedeniyle uzun yazıları okumayı yorucu bulma fikrine katılmıyorum. Kişisel olarak eş genişlikli yazı tipleriyle uzun metin okumak bana çok daha rahat geliyor
Yazar ilginç bir noktaya parmak basmış. Değişkenler şunlar: araç yapmanın zorluğu, yayımlamanın zorluğu, başkalarına sağladığı fayda, yayımlandığında getirdiği sosyal ödül ve bağımlılık eklemenin olumsuz teşviki
Hazır bir çözüm bulmanın zorlaşma derecesi, birinin onu yapma maliyetiyle bir başkasının nasıl yayımlanacağını çözme maliyetine göre artar. Tersine, topluluk için ne kadar faydalıysa insanlar o kadar haber verir ve bulmak kolaylaşır
Yapma zorluğu ile yayımlama zorluğu arasında büyük fark varsa, özellikle de yapmak çok daha zorsa, insanlar genelde bir şeyi yapıp sonra unutmaya eğilimli olur. Yayımlama tarafı düşükse, sorunlar için ortaya daha az çözüm çıkar
İkisi de düşükse ve başkalarına sağlanan fayda ile sosyal ödül, bağımlılık maliyetinden yüksekse leftpad gibi durumlar yaşanır. NPM’deki birçok paket; yüksek fayda ve ödül, düşük bağımlılık maliyeti kombinasyonundan oluşur
Emacs Lisp’te eskiden yapma zorluğu yüksekti ama şimdi düştü; öğrenme eğrisi aşıldıktan sonra yayımlama zorluğu da düşüktür. Fayda, ödül ve bağımlılık maliyetleri de hiçbir yönde çok yüksek değildir
Bu da, bir aracın zaten var olup olmadığına bakmadan oturup onu yapma senaryosunu üretir. VSCode ya da eski Eclipse’te yayımlama zorluğu daha yüksek olduğu için durum farklıydı
Sanırım benden daha genç biri bunu dünyaya bir makale konusu olarak sunacak
Bu yazı, LLM kodlamasının getireceği ama henüz tam gerçekleşmemiş bir değişimi ima ediyor. Acaba artık Electron/React Native’i bırakıp, LLM’in Figma, wireframe ve davranış tanımlarını her platform için gerçek yerel uygulamalara dönüştürmesini sağlayamaz mıyız?
CRUD uygulamaları için API tanımlarıyla UI mockup’ları, hatta başka bir platformda zaten uygulanmış ekran görüntüleriyle bile epey ileri gidilebilir. Bunlar LLM’lerin iyi olduğu türden iyi tanımlanmış işler. Eşdeğerlik testleri de önemli ölçüde otomatikleştirilebilmeli
“Belki bir gün Android’i de ekleriz” ya da “Mac/Linux kullanıcıları yeterince fazla değil” gibi bahaneler hâlâ geçerli olacak mı? iOS uygulamasında şifre sıfırlama gibi daha az kullanılan akışları uygulamayıp rastgele bir WebView açmak da hâlâ savunulabilir mi?
Cihazın içinde azımsanmayacak miktarda mantık barındıran uygulamalarda bile, LLM Go veya Rust gibi cross-compile’ı kolay dillere yeniden yazma konusunda oldukça umut verici göründü
Daha kışkırtıcı söylemek gerekirse, bu noktada neden SwiftUI öğrenesiniz ki? Çoğu iş için SwiftUI uzmanlığı, “Microsoft Word’ü çok derinlemesine öğrenmek” ile benzer bir kategoriye girdi
Buna zaman ayıranlara saygım var ama ayırsanız da ayırmasanız da sonuç farkı milimetre düzeyine yakın
Programlamanın tamamı için böyle düşündüğümü söylemiyorum. Sadece artık bazı dillerde uzmanlaşmanın gerekçesi çok daha karmaşık hale geldiğini düşünüyorum