Donald Knuth ünlü alıntılar

son güncelleme : 5 Eylül 2024

other language: spanish | czech | german | french | italian | slovak | turkish | ukrainian | dutch | russian | portuguese

Donald Knuth
  • Bir algoritmaya inanılması gerekir.

  • Bilim, bir bilgisayara açıklayabilecek kadar iyi anladığımız şeydir. Sanat, yaptığımız her şeydir.

  • Günlük hayat programlama gibidir sanırım. Bir şeyi seviyorsan, içine güzellik koyabilirsin.

  • Dijital bir bilgisayar için program hazırlama süreci, yalnızca ekonomik ve bilimsel olarak ödüllendirici olabileceği için değil, aynı zamanda şiir veya müzik bestelemek gibi estetik bir deneyim olabileceği için özellikle çekicidir.

  • Bilgisayar programcılığı bir sanattır, çünkü birikmiş bilgiyi dünyaya uygular, çünkü beceri ve yaratıcılık gerektirir ve özellikle güzellik nesneleri ürettiği için. Bilinçaltında kendini bir sanatçı olarak gören bir programcı, yaptıklarından zevk alacak ve daha iyisini yapacaktır.

  • İnsanlar bilgisayar biliminin dahilerin sanatı olduğunu düşünür, ancak gerçek gerçeklik tam tersidir, sadece birçok insan mini taşlardan oluşan bir duvar gibi birbiri üzerine inşa eden şeyler yapar.

  • Bilgisayarlar talimatları takip etmede iyidir, ancak zihninizi okumada değil.

  • Aslında görmek istediğim şey, binlerce bilgisayar bilimcisinin istediklerini yapmak için kendilerini serbest bırakmaları. Sahayı gerçekten ilerleten şey bu.

  • Programların inşasına yönelik geleneksel tutumumuzu değiştirelim. Asıl görevimizin bir bilgisayara ne yapması gerektiğini öğretmek olduğunu hayal etmek yerine, bir bilgisayarın ne yapmasını istediğimizi insanlara açıklamaya odaklanalım.

  • Yukarıdaki koddaki hatalara dikkat edin; Sadece doğru olduğunu kanıtladım, denemedim.

  • Bir restorana gidip yemek sipariş edemiyorum çünkü menüdeki yazı tiplerine bakmaya devam ediyorum.

  • Erken optimizasyon tüm kötülüklerin köküdür.

  • Nasıl sahip olabilirsin [...] sayılar? Sayılar dünyaya aittir.

  • Bilgisayarlarla dikkatsizce ilgilenmekten daha fazlası olan kişilerin, temel donanımın neye benzediğine dair en azından bir fikre sahip olmaları gerekir. Aksi takdirde yazdıkları programlar oldukça tuhaf olacaktır.

  • Rastgele seçilen bir yöntemle rastgele sayılar üretilmemelidir

  • Güneş, uzun vadede battığı kadar sık doğar, ancak bu hareketini rastgele yapmaz.

  • Bence program yazan insanlar, Tanrı'nın doğası hakkında en azından bir parça ekstra içgörüye sahipler... çünkü bir program oluşturmak genellikle küçük bir evren yaratmanız gerektiği anlamına gelir

  • Her sanatı bir bilime dönüştürmek için sürekli çaba göstermeliyiz: Bu süreçte sanatı ilerletiriz.

  • Algoritmaların analizine ve programlama dillerinin tasarımına yaptığı büyük katkılardan ve özellikle bu başlıkla sürekli bir dizi halinde tanınmış kitapları aracılığıyla "bilgisayar programlama sanatına" yaptığı katkılardan dolayı.

  • Bir liste ancak en zayıf halkası kadar güçlüdür.

  • Daha azıyla daha fazlasını yapmak çok daha ödüllendirici.

  • Unix'i tek bir çatı altında yaşayan normal ifadelerin 30 tanımı olarak tanımlıyorum.

  • Bir matematikçinin hayatını değerli kılan şey, üç ya da dört meslektaşının kin dolu hayranlığını kazanmasıdır.

  • En zor şey, yapılması gereken çok acil şeyler olduğunda geceleri uyumaktır. Günümüz makineleriyle mümkün olduğunu bildiğimiz ile şu ana kadar bitirebildiklerimiz arasında büyük bir boşluk var.

  • Programlama dilinde en önemli şey isimdir. İyi bir isim olmadan bir dil başarılı olmaz. Son zamanlarda çok iyi bir isim icat ettim ve şimdi uygun bir dil arıyorum.

  • Şu anda Ubuntu Linux'u bağımsız bir dizüstü bilgisayarda kullanıyorum - internet bağlantısı yok. Bazen bu makine ile ağ sörfü ve grafikler için kullandığım Mac'ler arasında flash bellek sürücüleri taşıyorum; ama aile mücevherlerime sadece Linux'a güveniyorum.

  • IBM'DEN aldığımız kılavuzlar program örneklerini gösterecekti ve bundan çok daha iyisini yapabileceğimi biliyordum. Bu yüzden biraz yeteneğim olabileceğini düşündüm.

  • En iyi programlar, bilgi işlem makinelerinin bunları hızlı bir şekilde gerçekleştirebilmesi ve insanların bunları net bir şekilde anlayabilmesi için yazılmıştır. Programcı ideal olarak matematiksel kavramların yanı sıra geleneksel estetik ve edebi biçimlerle çalışan, bir algoritmanın çalışma şeklini iletmek ve bir okuyucuyu sonuçların doğru olacağına ikna etmek için çalışan bir deneme yazarıdır.

  • Bilinmeyen DNA dizilerinin telif hakkı bildirimlerine ve patent korumalarına dönüşeceğine dair bir önsezim var.

  • Her şeyi optimize ederseniz, her zaman mutsuz olursunuz.

  • Programcı, makine odaklı bir dili anlayarak çok daha verimli bir yöntem kullanma eğiliminde olacaktır; gerçeğe çok daha yakındır.

  • Bununla birlikte, bir şeyi yapmanın genellikle aklınıza gelen ilk yoldan daha basit ve daha iyi bir yolu olduğunu her zaman unutmayın.

  • Önemli olan, yeterince yiyeceğiniz ve güzel bir eviniz olduğunda, başkaları için yapabilecekleriniz, bir bütün olarak işletmeye katkıda bulunabileceklerinizdir.

  • [Bir programcının] psikolojik profili, çoğunlukla soyutlama seviyelerini düşük seviyeden yüksek seviyeye kaydırma yeteneğidir. Küçükte bir şey görmek ve büyükte bir şey görmek.

  • Bilim, onu bir bilgisayara öğretebilecek kadar iyi anladığımız bilgidir; ve eğer bir şeyi tam olarak anlamıyorsak, onunla başa çıkmak bir sanattır.

  • Richard Bellman'ın Dinamik Programlama kitabı, bazı bölümlerin sonunda "Alıştırmalar ve Araştırma Sorunları" başlığı altında bir grup sorunun bir araya getirildiği, derin, çözülmemiş sorunların ortasında son derece önemsiz soruların ortaya çıktığı önemli, öncü bir çalışmadır. Birinin bir keresinde Dr. Bellman'a egzersizleri araştırma sorunları dışında nasıl anlatacağını sorduğu rivayet edilir ve şöyle yanıtlar: "Eğer çözebilirseniz, bu bir egzersizdir; aksi takdirde bu bir araştırma sorunudur."

  • Programlama, başka bir insana bilgisayarın ne yapmasını istediğini söyleme sanatıdır.

  • Matematiksel bir formül asla kimseye "sahiplenilmemelidir"! Matematik Allah'a aittir.

  • Programcılar, programlarının kritik olmayan bölümlerinin hızı hakkında düşünmek veya endişelenmek için muazzam miktarda zaman harcarlar ve bu verimlilik girişimlerinin hata ayıklama ve bakım düşünüldüğünde aslında güçlü bir olumsuz etkisi vardır. Küçük verimlilikleri unutmalıyız, zamanın yaklaşık% 97'sini söylemeliyiz: erken optimizasyon tüm kötülüklerin kökenidir. Yine de bu kritik% 3'teki fırsatlarımızı kaçırmamalıyız.

  • Bilgisayar bilimi konusunda biyolojiyle ilgili olabildiğince emin olamam. Biyolojinin üzerinde çalışılması gereken 500 yıllık heyecan verici sorunları vardır. Bu seviyede.

  • Aslında, hayatımın on yılını T E X projesi üzerinde çalışarak geçirdikten sonraki ana sonucum, yazılımın zor olmasıdır. Yapmak zorunda olduğum her şeyden daha zor.

  • Ağaçlar bilgisayar biliminin hemen her yerinde filizlenir...

  • Neredeyse tüm zamanınızı teoriye harcadığınızı fark ederseniz, dikkatinizi pratik şeylere çevirmeye başlayın; teorilerinizi geliştirecektir. Neredeyse tüm zamanınızı pratiğe harcadığınızı fark ederseniz, dikkatinizi teorik şeylere çevirmeye başlayın; Bu uygulamanızı geliştirecektir.

  • ... yeni bir sistemin tasarımcısı yalnızca uygulayıcı ve ilk büyük ölçekli kullanıcı olmamalıdır; tasarımcı ayrıca ilk kullanım kılavuzunu da yazmalıdır. ... Tüm bu faaliyetlere tam olarak katılmamış olsaydım, kelimenin tam anlamıyla yüzlerce iyileştirme asla yapılmazdı, çünkü onları asla düşünmezdim ya da neden önemli olduklarını algılayamazdım.

  • Yeni bir tür sistemin tasarımcısı uygulamaya tam olarak katılmalıdır.

  • E-posta, hayattaki rolü her şeyin üstünde olmak olan insanlar için harika bir şeydir. Ama benim için değil; Benim rolüm şeylerin altında olmaktır. Yaptığım şey uzun saatler çalışmak ve kesintisiz konsantrasyon gerektiriyor.

  • İlk programım bana gelecekte yapacağım hatalar ve ayrıca hataların nasıl bulunacağı hakkında çok şey öğretti. Bu bir nevi hayatımın hikayesi, hatalar yapmak ve onlardan kurtulmaya çalışmak. İşleri düzeltmeye çalışıyorum. Muhtemelen çok fazla hata yapmamaya takıntılıyım.

  • Belirli TeX kavramları gayri resmi olarak tanıtıldığında, genel kurallar belirtilecektir; Daha sonra kuralların kesinlikle doğru olmadığını göreceksiniz. Genel olarak, sonraki bölümler öncekilerden daha güvenilir bilgiler içerir. Yazar, bu kasıtlı yalan söyleme tekniğinin aslında fikirleri öğrenmenizi kolaylaştıracağını düşünüyor. Basit ama yanlış bir kuralı anladığınızda, bu kuralı istisnalarıyla tamamlamak zor olmayacaktır.

  • ...Belki de en önemli derslerden biri, YAZILIMIN ZOR olmasıdır. Bundan sonra karşılaştığım her başarılı yazılım aracına çok daha fazla saygı duyacağım. Geçtiğimiz on yıl boyunca, TeX ve Metafont için programların yazılmasının, yaptığım diğer tüm şeylerden (teoremleri kanıtlamak veya kitap yazmak gibi) çok daha zor olduğunu öğrendiğimde şaşırdım. İyi bir yazılımın oluşturulması, diğer şeylerden önemli ölçüde daha yüksek bir doğruluk standardı gerektirir ve diğer entelektüel görevlerden daha uzun bir dikkat süresi gerektirir.

  • ...yöntemler gerçeklerden daha önemlidir. Bir öğrenciye verilen bir sorunun eğitimsel değeri, çoğunlukla, onu çözmek için çağrılan düşünce süreçlerinin sonraki durumlarda ne sıklıkla yardımcı olacağına bağlıdır. Sorunun cevabının ne kadar yararlı olabileceği ile çok az ilgisi var. Öte yandan, iyi bir problem öğrencileri de motive etmeli; cevabı görmekle ilgilenmelidirler. Öğrenciler çok farklı olduğu için, herkesin beni memnun eden sorunları sevmesini bekleyemem.