haandev

Yazılım, web ve aradaki her şey üzerine notlar.

GitHubRSSENTR
  • 13 Kasım 2026

    JavaScript'i önceden derlemek: bytecode, JIT ve Bun AoT

    Bun artık TypeScript'i doğrudan makine koduna derleyebiliyor. Bunun ne anlama geldiği ancak bir JavaScript motorunun kodu nasıl çalıştırdığına, bu zincirin nereden kesilebileceğine ve önceden derlemeyi deneyen Android, Java ve Hermes'in neyle karşılaştığına baktıktan sonra netleşiyor. JavaScriptCore'un katmanlarından bun compile'a bir yürüyüş: kısa ve uzun ömürlü süreçler için Bun'ın kendi rakamları, kapalı dünyanın bedeli ve V8 isolate'leriyle bir karşılaştırma.

    • javascript
    • typescript
    • compilers
    • bun
    • runtimes
    • systems design
  • 31 Ekim 2026

    Silme iki olaydır

    Bir kaydı silmek iki ayrı olaydır: onu geçersiz ilan etmek ve kapladığı alanı geri kazanmak. Dosya sistemlerinde ikinci olay çoğunlukla kimseyi beklemez; çok sürümlü veritabanlarında en eski aktif okuyucuyu bekler. O çizginin adı vacuum ufkudur. Başka sistemlerde hangi adlarla geçtiği, onu kimin geride tuttuğu, biri tuttuğunda bedeli kimin ödediği ve dosya sistemi, veritabanı ve kuyruktan oluşan üç ideal kutbun silinen veriyi nasıl farklı geri kazandığı.

    • databases
    • file systems
    • mvcc
    • garbage collection
    • storage
    • systems design
  • 20 Ekim 2026

    Zaman, sütunun bir özelliğidir

    Date, Darwen ve Lorentzos yirmi yıl önce, zamanlı veride zamanla değişen her niteliğin kendi tablosu olması gerektiğini gösterdi: altıncı normal form. Ayrıştırmayı şemayı tasarlayana bıraktılar, ve kimse yapmadı. Bunu motora taşıyan bir öneri: sütun düzeyinde bir deklarasyon, projeksiyonları LEFT JOIN'e, koşulları EXISTS'e çeviren bir planlayıcı, ileri tarihli güncellemeler ve benzersizlik üzerine tek bir katı kural.

    • databases
    • sql
    • temporal data
    • normalization
    • query planning
    • systems design
  • 28 Eylül 2026

    İş ilanı, işten önce yazılmış bir spec'tir

    Bilgiye ulaşmak ucuzladığında kıt olan şey bilgi olmaktan çıkar. Kıt olan artık doğru soruyu sorabilmek ve gelen cevabı anlayabilmektir. İş ilanının arkeolojisi, işe alım araştırmalarının gerçekte ne söylediği, bilmeyi değil sormayı ölçen üç mülakat formatı ve junior paradoksuna bir cevap.

    • hiring
    • recruitment
    • ai
    • leadership
    • organization
    • interviewing
  • 19 Ağustos 2026

    Ekibimi nasıl motive ediyorum

    Self-Determination Theory'nin üç temel psikolojik ihtiyacı, kendi deneyimimden eklediğim dördüncüsü — içsel rekabet — ve herkesin farklı motive olduğu bir ekipte bunun nasıl işlediği. Bir de hiç değişmeyen tek ilke: asla sırt çevirmemek.

    • motivation
    • leadership
    • management
    • self-determination theory
    • team
    • psychological safety
  • 19 Ağustos 2026

    Spec-Driven Development'ın Çözmediği Şey: Organizasyon

    Spec-driven development tartışması araç katmanında sıkışmış durumda. Asıl soru şu: spec'i kim yazıyor, kaç tane var, ve ürün kararı kod katılaşmadan önce mi alınıyor. Üç organizasyon tipi, bir kapı formülü ve tersinirliğin gerçek tanımı.

    • ai
    • sdlc
    • spec-driven development
    • organization
    • agile
    • software engineering
  • 8 Ağustos 2026

    Veri dillerinin anatomisi: bayt, isim ve spektrum

    Diskte dosya diye bir şey yok. Dosya, satır, document, mesaj — hepsi baytlara bakan programların taktığı isimler. Bu yerinden oynatma, SQL'in beş alt dilini de sistem kategorilerini de yeniden çerçeveliyor.

    • databases
    • file systems
    • sql
    • abstraction
    • systems design
  • 29 Temmuz 2026

    qr kod örneği üzerinde bilim ve teknolojinin kümülatif yönü üzerine

    Bozuk bir listeyi düzeltmek ve bir kareye eğik bakmak: birbirinden habersiz iki matematik kolu, 1994'te bir QR kodunda buluşuyor.

    • qr
    • mathematics
    • history of science

© 2026 haandev