1 puan yazan GN⁺ 4 시간 전 | 1 yorum | WhatsApp'ta paylaş
  • MIT 6.001 Structure and Interpretation of Computer Programs dersinin tüm akışını 20 video ders üzerinden takip etmek mümkün; bu da SICP’yi sistemli biçimde gözden geçirmek için iyi bir kaynak olmasını sağlıyor
  • Dersler Temmuz 1986'da Hewlett-Packard çalışanlarına yönelik olarak verildi ve Hewlett-Packard Television tarafından profesyonel şekilde üretildi
  • Videolar MIT OCW ve ayrı bir sunum sitesinde izlenebiliyor; ayrıca ticari kullanımla uyumlu bir Creative Commons lisansı ile sunuluyor
  • Ders içeriği, 1985 tarihli SICP 1. baskıyı temel alıyor; 1996'daki 2. baskıda bazı programlar yeniden yazıldı ve yeni materyaller eklendi
  • Genel konu başlıkları ve sunum sırası korunduğu için, 2. baskıyla çalışan öğrenciler için de hâlâ değerli bir başvuru kaynağı

Ders yapısı ve sunum biçimi

  • Hal Abelson ve Gerald Jay Sussman tarafından verilen 20 ders, MIT 6.001 Structure and Interpretation of Computer Programs dersini eksiksiz biçimde kapsıyor
  • Dersler Temmuz 1986'da Hewlett-Packard çalışanlarına yönelik olarak verildi ve Hewlett-Packard Television tarafından profesyonel şekilde üretildi
  • Videolar, Hal Abelson ve Gerald Jay Sussman tarafından sağlanan materyallerden oluşuyor ve izinli olarak kullanılıyor
  • Aynı videolar MIT OCW dışında ayrı bir sunum sitesinde de yer alıyor ve ticari kullanımla uyumlu bir Creative Commons lisansına tabi

Ders kitabı baskılarıyla ilgili notlar

  • Bu dersler, 1985'te yayımlanan Structure and Interpretation of Computer Programs 1. baskı temel alınarak verildi
  • 1996'daki 2. baskıda, derslerde ele alınan çeşitli programlar yeniden yazıldı ve yeni materyaller eklendi
  • Genel konu başlıkları ve sunum sırası değişmediği için, 2. baskıyı kullanan öğrenciler için de bu video dersler yararlı olmaya devam ediyor

Ders listesi

1 yorum

 
GN⁺ 4 시간 전
Hacker News yorumları
  • SICP çalışmak için MIT Scheme kullanabilirsiniz; alternatif olarak Racket ya da DrRacket’e şu eklenti paketini ekleyerek de kullanabilirsiniz: https://docs.racket-lang.org/sicp-manual/

    • Eğitim amacıyla bence yalnızca MIT Scheme önermek daha doğru
      Diğerlerinde dikkati dağıtabilecek çok fazla çevresel özellik var
    • Bu iki sistem önerisine katılıyorum ama bir notla
      MIT Scheme Apple Silicon’da çalışacak şekilde yapılmadı; biraz uğraşla amd64 sürümü güncel Mac’lerde kullanılabiliyor ama Apple Rosetta2’yi kaldırırsa muhtemelen ortadan kalkacak
      Bu yüzden Racket daha iyi bir seçenek olabilir
      Makul herhangi bir Scheme uygulaması SICP için kullanılabilir ama 2. baskıdan sonra dil değiştiği için önermem
      Ancak kendi projenize başladıktan sonra başka sistemler kullanabilirsiniz; eski deyimlerin modern karşılıklarını bulmak için belgeleri okumanız gerekebilir
    • MIT Scheme, “işe yarayabilecekler arasında en basit” seçenek
  • Her programcı LISP öğrenmeli ya da en azından ciddi biçimde çalışmalı
    Uygulama programcılarının çoğu, C programcıları gibi yalnızca prosedürel düşünmeyi biliyor
    LISP donanımı değil kavramları ele alan “güzel” bir dil; 1990’da mezun olduğum okulda birkaç yıl lisansüstü projelerde kullandığımda düşünme biçimim tamamen değişmişti

  • Eskiden yalnızca kitaptan SICP yapmayı denemiştim; bence dersler çok daha iyi ve kitap yardımcı referans görevi görüyor

    • Üniversite eğitimi zaten yaklaşık 1000 yıl boyunca aşağı yukarı böyle işledi
  • Alıştırmaları çözmeniz ya da kitabı takip etmeniz gerekmiyor
    Bu alana yeni girmiş olun ya da onlarca yıllık deneyiminiz olsun, bu videoları henüz izlemediyseniz veya SICP dersini almadıysanız neredeyse herkes için faydalı olabilir

  • Bu videoları ve kitabın tamamını sonuna kadar çalıştım; haber grubu üzerinden çevrimdışı bir çalışma grubu da kurduk
    Gerçekten keyifliydi ve büyük bir sıçrama sağladı ama kitabın ortalarına doğru çalışma grubundaki kişi sayısı azalmaya başladı

  • SICP oku tavsiyesi /g/’de aldığım en iyi tavsiyeydi

  • Bununla Lisp öğrendim; ardından Clojure öğrendim ve kariyerimi onun etrafında kurdum

    • Harika. Clojure’u nasıl öğrendiğini merak ediyorum
      Oldukça sevdiğim bir dil
  • Gerçekten şiddetle tavsiye ederim
    Daha ilk dersi izleyince hemen içine çekiliyorsunuz

  • Sistem programlama ile ilgilenen biri buradan ne elde edebilir?

    • Bu dersler değişebilirlik, durum yönetimi ve soyutlama gibi konuların temel sorularını neredeyse benzersiz derecede iyi ortaya koyuyor
      Bu yüzden sistem programlama büyük ölçüde durum yönetimi ve soyutlamayla ilgili olduğu sürece, bunun çok derinden ilgili olduğunu düşünüyorum
      Ama “sistem programlama” ile zaten var olan dağınık sistemleri zorla birbirine bağlamayı ya da üçüncü taraf kütüphaneler konusunda sezgi geliştirmeyi kastediyorsanız pek ilgili olmayabilir
      Yine de burada da içgörü var. Sussman’ın SICP’yi bir kenara bırakıp MIT’de yeni bir giriş dersi oluşturulmasını neden istediğini anlattığı bir video izlemiştim; kendi cilaladığı mücevheri saygılı ve düşünceli bir şekilde kenara koyuyordu
      Bu, artık tüm soyutlama katmanlarını baştan sona görebileceğimizi bekleyebileceğimiz dönemin bittiği anlamına geliyordu
  • Bu derslerin ses kalitesi çok kötü
    Temiz biçimde düzeltmenin bir yolu var mı?