23 puan yazan GN⁺ 2026-01-02 | 1 yorum | WhatsApp'ta paylaş
  • AI kodlama araçlarının gelişmesiyle yazılım üretimi zanaatkâr usulünden otomasyonla endüstrileşmiş bir aşamaya geçiyor; maliyetler düşüyor ve büyük ölçekli üretim mümkün hale geliyor
  • Endüstrileşmenin ikincil etkisi olarak tek kullanımlık yazılım adlı yeni bir kategori ortaya çıkıyor; bu, sahiplenme, bakım veya uzun vadeli anlama beklentisi olmadan üretilen yazılımı ifade ediyor
  • Jevons paradoksuna göre verimlilik artışı toplam tüketimi de artırır; yazılım üretiminde de aynı olgunun görülmesi bekleniyor
  • Tarımın endüstrileşmesi bolluk yerine aşırı işlenmiş gıdalar ve obezite krizini doğurduğu gibi, yazılımın endüstrileşmesi de düşük kaliteli kitlesel üretime yönelik ekonomik baskılar yaratabilir
  • Teknolojik gelişme, endüstrileşme ile yeniliğin etkileşimi üzerinden gerçekleşir ve temel soru şuna indirgenir: "Kimsenin sahip olmadığı yazılımın bakımını kim yapacak?"

Yazılımın endüstriyel dönüşümü

  • Yazılımın üretim maliyeti tarihsel olarak yüksek becerili uzman emeğinin maliyeti tarafından belirlendiği için, bu alan zanaatkârlığa yakındı
  • Endüstrileşme, otomasyon yoluyla insan emeğine bağımlılığı azaltmayı; aynı anda hem maliyet düşüşünü hem de üretim ölçeğinde esnekliği hedefler
  • İnsanın rolü gözetim, kalite kontrol ve endüstriyel süreç optimizasyonuna doğru daralır
  • Endüstrileşmenin birincil ve ikincil etkileri
    • Birincil etkiler: yüksek kaliteli ürün tedarik zincirlerinin bozulması, emeğin aracısızlaşması, giriş bariyerlerinin düşmesi, rekabetin artması, değişim hızının ivmelenmesi
      • Bu etkiler bugün geleneksel yazılım sektöründe görülmeye başladı
    • İkincil etkiler: düşük kaliteli ve düşük maliyetli ürünlerin büyük ölçekte üretimi yeni biçimlerde mümkün hale gelir
      • Baskının endüstrileşmesi → karton kapaklı tür romanlarının ortaya çıkışı
      • Tarımın endüstrileşmesi → aşırı işlenmiş abur cuburun ortaya çıkışı
      • Dijital görüntü sensörlerinin endüstrileşmesi → kullanıcı üretimi videonun ortaya çıkışı
  • Yazılım üretiminin endüstrileşmesi, tek kullanımlık yazılımı (Disposable Software) ortaya çıkarıyor
    • Tek kullanımlık yazılım: sahiplenme, bakım veya uzun vadeli anlama yönünde kalıcı bir beklenti olmadan üretilen yazılım
    • Destekleyenler buna 'vibe-coded software' diyor, şüpheciler ise 'AI slop' olarak adlandırıyor
    • Kolay yeniden üretilebilirlik nedeniyle her bir yazılım çıktısının ekonomik değeri düşüyor
    • Değer eksikliği yüzünden bu eğilimi geçici bir heves saymak kolay, ama bu akıllıca bir değerlendirme değil

Jevons paradoksu ve slop'un bağımlılık yapıcılığı

  • Jevons paradoksu: 19. yüzyılda kömür tüketiminde verimliliğin artmasının maliyetleri düşürmesi, talebi artırması ve sonuçta toplam tüketimi yükseltmesi üzerine kurulu ekonomik teori
    • Bugün AI hesaplamasında aynı olgu gözleniyor: modellerin token tahmin verimliliği arttıkça talep hızla yükseliyor ve toplam tüketim artıyor
  • Yazılım geliştirmede de emek maliyetinin düşmesi, tarihsel olarak daha yüksek tüketime ve çıktıya yol açma potansiyeline sahip
  • Tarımın endüstrileşmesinden çıkarılan dersler
      1. yüzyılın başında bilimsel ilerlemenin açlığı ortadan kaldırıp bol gıdalı bir çağ başlatması bekleniyordu; ancak 2025 itibarıyla 318 milyon kişi akut açlık içinde
    • ABD'de yetişkin obezite oranı %40 seviyesine ulaşmış durumda ve diyabet krizi derinleşiyor
    • Aşırı işlenmiş gıdaların zararlı olduğu geniş ölçüde bilinse de Amerikalıların büyük çoğunluğu bunları her gün tüketiyor
    • Endüstriyel sistem, aşırılık ve düşük kaliteli mallar yönünde sürekli ekonomik baskı üretir
      • Üretim maliyeti yeterince düştüğünde, hacmi, marjı ve erişimi maksimize eden şey çoğu zaman çöp ürünler olur
  • AI slop'a yönelik talebin de benzer şekilde doyurulmasının zor olacağı öngörülüyor
  • Akıllı telefonların fotoğraf, video ve ses kaydını demokratikleştirmesi gibi, yazılım da demokratikleşirse sosyal medya ölçeğinde kullanıcı üretimi yazılımın üretilmesi, paylaşılması ve atılması mümkün olabilir
  • Yenilik ve ödül arasındaki geri bildirim döngüsü, son yarım yüzyılın geliştirme anlayışını eski gösterecek bir yazılım çıktısı patlaması yaratabilir

Geleneksel yazılım hayatta kalabilir mi?

  • Aşırı işlenmiş gıdalar tek seçenek olmadığı gibi, sağlıklı ve sürdürülebilir gıda üretimine yönelik talep de var ve büyüyor
  • "Organik yazılım" hareketi mümkün olabilir
  • Giyim sektöründen örnek: endüstrileşmeden önce kıyafetler zanaatkârlar, loncalar, el emeği, yerel kaynaklar ve yıllar içinde biriken uzmanlıkla üretiliyordu
    • Endüstrileşmeden sonra: hammaddelerin kıtalar arası taşınması, fabrikalarda kitlesel üretim, makine montajı, hızlı, tek kullanımlık ve sömürüye dayalı moda
    • Buna rağmen özel dikim takım elbiselerden el örgüsü atkılara kadar el yapımı giyim hâlâ varlığını sürdürüyor
    • Kişiye özel uyum, zenginlik göstergesi, ürün dayanıklılığı veya hobinin zanaatkâr keyfi gibi farklı nedenlerle
  • Yazılımın özgün yanı: maddi olmayan mal ve yenilik

    • Yazılım fiziksel bir ürün olsaydı, insanlar tarafından yazılan yazılım yüksek moda ya da el örgüsü ürünler gibi niş bir alana sıkışabilirdi
    • Ancak yazılım maddi olmayan bir maldır (intangible good) ve diğer endüstrileşmiş alanlardan farklı olarak özünde uzun bir bileşen yeniden kullanımı geçmişine sahiptir
    • Yenilik, yalnızca mevcut ürünlerin daha iyi ya da daha ucuz sürümlerine indirgenmez; çözüm uzayının kendisinin büyümesini de kapsar
      • Tıpkı buhar makinesinin yeniden kullanılabilir makine parçalarını, bunun üretim hatlarını, üretim hatlarının da otomobili mümkün kılması gibi
    • Yazılım geliştirmedeki teknolojik ilerleme mekanizması yalnızca endüstrileşmeyi değil, yeniliği de içerir
    • Ar-Ge pahalıdır, ancak zaman içinde daha büyük değer üretmenin tek yoludur
  • Yenilik ile endüstrileşme arasındaki fark

    • Yenilik, bugün var olanı daha verimli kopyalamaya odaklanmaz
    • Yeni problemleri bulur ve çözer, öncekinin üzerine inşa eder ve daha önce var olamayan yetenekler sunar
    • Endüstrileşme ise bunun ardından ölçeği ve metalaşmayı getirerek bir sonraki yenilik turunun inşa edileceği temeli sağlar
    • Bu iki gücün etkileşimi **'ilerleme (progress)'**dir
  • Büyük dil modelleri: yazılımın buhar makinesi anı

    • LLM'ler yazılımın buhar makinesi anıdır
    • Daha önce bütünüyle kıt insan emeğine dayanan iş sınıflarının maliyetini keskin biçimde düşürür ve çıktıda olağanüstü bir hızlanmayı mümkün kılar
    • Buhar makinesi de boşlukta ortaya çıkmadı: yel değirmenleri ve su çarkları türbinlerden yüzyıllar önce vardı
    • Mekanizasyon kömür ve çelikte başlamadı; otomasyon, ölçek ve sermaye birleşerek ekonomik dönüşümü tetikleyen bir kırılma noktasına ulaştı
    • Yazılım da uzun süredir endüstrileşiyor:
      • yeniden kullanılabilir bileşenler (açık kaynak kod)
      • taşınabilirlik (containerization, cloud)
      • demokratikleşme (low-code/no-code araçları)
      • birlikte çalışabilirlik (API standartları, paket yöneticileri)

İlerlemenin bitmeyen döngüsü

  • Yazılımın sanayi devrimine giriyoruz, ancak bu bir kopuş anı değil, muazzam bir hızlanma
  • Endüstrileşme teknolojik ilerlemenin yerini almaz; ama hem yeni fikirlerin soğurulmasını hem de yeni yeteneklerin metalaştırılmasını büyük ölçüde hızlandırır
  • Yeni teknolojilerin üzerine inşa etmenin maliyeti daha hızlı düştükçe, yenilik de daha hızlı serbest kalır
  • İlerlemenin döngüsü sürüyor, ancak kitlesel otomasyon çağında çark her zamankinden daha hızlı dönüyor

Temel soru: ekosistem ve bakım

  • Açık soru, endüstriyel yazılımın baskın olup olmayacağı değil; bu baskınlığın çevresindeki ekosisteme ne yapacağıdır
  • Önceki sanayi devrimleri maliyetleri sonsuzmuş gibi görünen çevrelere dışsallaştırdı, ama o çevreler sonunda sonsuz çıkmadı
  • Yazılım ekosistemi de farklı değil: bağımlılık zincirleri, bakım yükü ve çıktı ölçeğiyle katlanan güvenlik yüzeyi
  • Teknik borç dijital dünyanın kirliliğidir ve ona bağımlı sistemleri boğana kadar görünmez kalır
  • Kitlesel otomasyon çağında en zor problem üretim değil, gözetim ve sorumlu sahiplenme (stewardship) olabilir
  • Temel soru: "Kimsenin sahip olmadığı yazılımın bakımını kim yapar?"

1 yorum

 
GN⁺ 2026-01-02
Hacker News görüşleri
  • Bu yazı, yazılımı inşa etmekle (build) yazılımı yazmayı (writing) karıştırıyor
    Dünyada zaten neredeyse her işi yapabilen ucuz, seri üretilmiş yazılımlar var
    Geliştiricinin rolü, mimar ya da tasarım mühendisi gibi yeni planlar oluşturmaktır
    Bu tür tasarımlar estetik duygu ve bağlama dair içgörü gerektirir; LLM'ler bu konuda çok iyi yardımcı olamıyor
    Rusça öğrenince Tolstoy olunmaması gibi

    • Bryan Cantrill'in aktardığı Jeff Bonwick sözünde olduğu gibi, kod hem bilgidir hem de makinedir
      Mimar bir plan yaptığında bu fiziksel bir binaya dönüştürülür, ama geliştirici kod yazdığında onun kendisi çalışan bir makine olur
      YouTube videosu bu kavramı da açıklıyor
      UML ile mimari çizmek, gerçek bir makine üretmek değildir
    • Görünüşe göre terimlerin teknik anlamına fazla takılıyor
      Yazının özü, çoğu yazılımın artık zanaatkârlığın ürünü değil, sanayileşmiş seri üretim malları hâline gelmesidir
      Ama harika yazılımlar yine de var olmaya devam edecek
    • İnşaat sektöründe çalışan biri olarak bakınca, tasarım mühendisi ayrıntıları yükleniciye bırakabilir ama yazılımda bu mümkün değil
      Yazılım; tasarımı, edge case'leri keşfetmeyi ve gerçek uygulamayı birlikte içerir
      Yani tasarım tüm sürecin yalnızca üçte biridir
    • Gerçekte birçok proje, iş karar vericilerinin cehaleti yüzünden spagetti koda dönüşüyor
      İyi mühendisler bunu bir miktar hafifletebilir ama sınırları var
      Sonuçta düşüncesiz süreçlerden ancak ‘endüstriyel atık’ gibi kodlar çıkar
    • Yazıdaki benzetme yanlış yorumlanmış
      LLM'nin ürettiği şey bir ‘Rus edebiyatı başyapıtı’ değil, Rus sosyal medyası yorumu seviyesinde kod
      LLM'ler düşük kaliteli yazılımı ucuza üretmede mükemmel
      Bu sayede eskiden yapmaya değmeyecek basit script'ler kolayca üretilebiliyor,
      ama aynı zamanda çöp içerik taşmasını da beraberinde getiriyor
  • Benzetmelerle düşünmek kulağa ikna edici gelse de pratikte zayıf kalıyor
    Fiziksel ürünlerle yazılımın marjinal maliyet yapısı tamamen farklı
    Fiziksel ürünlerde birim başına maliyet sıfırdan büyüktür, dijital ürünlerde ise marjinal maliyet 0'dır
    Zaten yazılımların çoğu ücretsiz ya da çok ucuz olduğundan, ‘ucuz sanayileşme’ kavramı tam oturmuyor
    Yapay zeka geliştirme maliyetini düşürse bile pazar yapısı dramatik biçimde değişmeyebilir

    • Benzetmeler yeni olasılıkları keşfetmek için faydalıdır, ama bir şeyi dışlamak için mantık olarak kullanılmamalıdır
    • Yazıda da bunun bire bir tam bir karşılaştırma olmadığı açıkça belirtiliyor
    • Dijital ürünlerde de depolama, bant genişliği, elektrik gibi maliyet kalemleri var
      Ayrıca tüketiciler kaliteye kıyasla fiyata daha duyarlı
      Ücretsiz mobil oyunların ücretli oyunları ezip geçmesi bunun bir örneği
  • Yakın zamanda LLM ile neredeyse tamamlanmış kişisel bir proje yaptım
    Bir kasaba tarihi web sitesi hazırlıyordum ve modelin giderek saçma yönlere kaymasını kontrol etmek zordu
    Hız arttı ama hâlâ bir ‘kaptan’ rolüne ihtiyaç vardı

    • Sorun, ‘kürek çekenlerin’ rolünün ortadan kalkması
      Kaptan ve 100 kürekçiden, kaptan ve buhar makinesine geçildiğinde geri kalan insanlar nereye gidecek sorusu ortaya çıkıyor
  • Sanayileşmenin kaliteyi düşürdüğü algısı yanlış
    Seri üretim sistemleri tam tersine kalite kontrolünü aşırı derecede iyileştirebilir
    Orta sınıf seri üretim bir otomobilin, zanaatkâr üretimi bir otomobilden daha iyi olduğu durumlar çoktur

    • Sanayileşme düşük bir asgari kalite tabanı sağlar ama aynı zamanda bir üst sınır da yaratır
      El yapımı ekmek ya da el yapımı mobilyada olduğu gibi, seri üretimden çok daha üstün zanaat ürünleri de vardır
      Ama bunların pazarlanabilirliği düşüktür
    • El yapımı süper otomobiller ya da butik pastane ürünleri hâlâ seri üretim ürünlerden üstündür
      Yani sanayileşme her kalite alanının yerini almaz
    • Yapay zekanın kalite kontrolünü iyileştirip iyileştiremeyeceği şüpheli
    • Önce ‘kalite’ için ölçütün ne olduğunu netleştirmek gerekir
      Lüks otomobillerin çoğu hâlâ zanaatkâr usulüyle üretiliyor
    • O zaman Amish mobilyası gibi örnekler nasıl açıklanabilir diye soruluyor
  • 30 yıllık bir geliştirici olarak, yazdığım kodun çoğu sonunda çöp kutusuna gitti
    Veri işleme, log analizi, modelleme gibi işleri yapmaya devam ediyorum ama yapay zeka çıksa da işin özü değişmiyor
    Sadece ortaya çıkan sonuç biraz daha ‘parlak renkli’ oluyor

    • 25 yıldır çalışıyorum ama gerçekten production'a alınmış kodum neredeyse yok
      Çoğu iptal edildi ya da prototip olarak kaldı
    • Terzinin diktiği kıyafetlerin de sonunda atılması gibi, yazılımın da bir ömrü var
      El yapımı kıyafetle fast fashion arasındaki ilişki gibi, geleneksel geliştirme ile yapay zeka üretimi kod arasındaki ilişki de benzer
    • Bu gerçeklik bana korkutucu geliyor
      Bu yüzden iş dışındaki duygusal anlamı seyahat, aile, sanat gibi yerlerde bulmak gerektiğini düşünüyorum
  • Bugünlerde ‘vibe-coded’ kişisel yazılımlar artıyor
    Simon Willison'ın yan projeleri buna örnek
    Gelecekte daha fazla ‘tek kişilik fork’ göreceğiz gibi duruyor

    • Ben de yakın zamanda açık kaynağa küçük özellik eklemeleriyle katkı yapmaya başladım
      Ama upstream'e alınması çok zaman alıyor
      Nix ile build ortamını otomatikleştirince işler çok daha kolaylaştı
      Nix'in daha yaygın kullanılmasını isterdim, ama monokültür konusunda da kaygılarım var
  • Yazılımın önemli yönlerinden biri kullanıcının öğrenme maliyetidir
    Kapalı kaynak yazılımlar kullanıcıyı yeni sürümlere uyum sağlamaya zorlar,
    açık kaynak ise istikrarlı arayüzler sunarak yeniden öğrenme maliyetini azaltır
    Örnek: mutt, vim, talon gibi programlar

    • Sınır sadece açık kaynak olup olmamaya göre çizilmiyor
      Windows aksine istikrarlı API'ler sundu ve açık kaynak içinde de çok sayıda kırıcı değişiklik örneği var
    • Ben bu kavrama ‘Knowledge Pool’ diyorum
      Bu, bir organizasyonun belirli araçlar ya da yöntemler hakkında paylaştığı kolektif bilgi deposudur
      Gereksiz arayüz değişiklikleri bu bilgi havuzunu tükettiği için, onu korumak pazar rekabetçiliği hâline gelir
  • Yazılımın sanayi devrimi zaten yüksek seviyeli dillerin ortaya çıkışıyla başladı
    Assembly yerine yüksek seviyeli dillerin kullanılabildiği an tam olarak buydu

    • Yazı da bunu kabul ediyor
      Açık kaynak, bulut, low-code/no-code, API standardizasyonu gibi şeyler zaten sanayileşmeyi ileri taşıyor
    • Ama terminal, klavye, gerçek zamanlı düzenleme ortamı gibi şeyler de başka birer yenilikti
      Delikli kart destesi girişinden etkileşimli geliştirme ortamına geçiş asıl devrimdi
    • Codex ya da Claude Code gibi modellere bakınca, bunun daha başlangıç olduğu görülüyor
      Şimdiye kadarki ilerleme sadece hız artışıydı; daha büyük değişimler henüz gelecek
  • Ben de yazarın vizyonuna katılıyorum
    Yazılımların çoğu gereksiz yere karmaşık ve ben sadece kendi sorunumu çözecek bir araç istiyorum
    Örneğin ses dosyası yükleyince onu sahnelere göre bölüp görüntülerle senkronlayarak video oluşturan bir aracı LLM ile yaptım
    Hataları var ve özellikleri eksik, ama benim sorunumu çözmesi için yeterli
    Sonuçta benim ihtiyacım yazılım değil, çıktı (video)
    Bir sonraki projede daha iyi bir sürüm yapabileceğimi düşünüyorum
    Sanayileşmiş yazılım çağı zaten başladı ve buna uyum sağlamamız gerekiyor

    • Ama banka, vergi, maaş gibi gerçek dünyaya bağlı yazılımlar farklı
      Bu tür sistemler sadece kodla ikame edilemez ve zaten ücretsiz alternatifleri de var
  • Assembler, compiler, garbage collection, yüksek seviyeli diller gibi şeyler de sonuçta karmaşıklık dağını yükselten araçlardı
    LLM de aynı şekilde, sadece o dağı daha hızlı inşa etmeyi sağlıyor; karmaşıklığı azaltmıyor

    • Benim deneyimime göre LLM, karmaşıklık yönetiminde yardımcı olmuyor
      Sadece geliştirme hızını artırıyor