Мудрость предков

Читаю сейчас книгу Jon Bentley: More programming Pearls (на русском ее не нашёл). Это продолжение его книги Жемчужины программирования. Саму книгу не могу никому посоветовать, так как она мне не очень-то нравится - написана 20 лет назад и большинство проблем, рассматриваемых в книге, уже устарело.
Но есть в этой книге одна глава, которая мне понравилась - это глава с изречениями разных людей. Прошло уже 20-30 лет, но эти изречения так и остаются актуальными сейчас.
Привожу здесь наиболее понравившиеся мне с переводом.



Начну с отличного на мой взгляд:
Sure, 90% of all software is crap. That’s because 90% of everything is crap. Mary Shaw, Carnegie-Mellon University
Конечно, 90% программ - дерьмо. Но это потому что 90% всего остального в мире - это тоже дерьмо.
А вы думали только программисты создают “плохие” продукты? Оглянитесь вокруг.



Testing can show the presence of bugs, but not their absence. Edsger W. Dijkstra
Тестирование может доказать наличие багов, но не их отсутствие. Дэйкстра
Удивительно, но до сих пор многие тестеры, программисты и даже менеджеры этого не понимают. А между тем - это краеугольный камень всего процесса тестирования.



Принцип KISS:
Keep It Simple, Stupid
Сохраняй простоту, болван.
Это выражение сложно перевести точно на русский. Но принцип KISS - основа программирования. Есть много методов и метрик измерения сложности и борьбы с ней. Так что помните - KISS!



The fastest I/0 is no I/O. Nils-Peter Nelson, Bell Labs
Самый быстрый I/O - это отсутствие I/O.
Думаю, эта истина будет валидна еще не один десяток лет. Процессоры быстры, память быстра, но любая операция I/O с внешними устройствами чудовищно медленна. Так что лучший способ их оптимизации - убирать эти I/O.



Electricity travels a foot in a nanosecond. Commodore Grace Murray Hopper, US Navy
Электричество преодолевает расстояние в один фут за наносекунду.
Это главная причина аппаратного ограничения на частоту работы компьютера, выраженная красивой фразой.



[Rule of Credibility] The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time. Tom Cargill, Bell Labs
[Правило достоверности] Первые 90% кода расходуют первые 90% времени разработки. Оставшиеся 10% кода расходуют еще 90% времени разработки.
Сейчас это правило больше известно под именем “80/20″, но вы же понимаете - все эти цифры совершенно условны.



Good judgement comes from experience, and experience comes from bad judgement. Freed Brooks
Опыт помогает принять хорошие решения, но сам опыт получается из плохих решений.
Так что не бойтесь ошибаться, ведь чем больше ошибок, тем больше ваш опыт и тем лучше вы будете принимать решения в будущем.



When in doubt, use brute force. Ken Thompson, Bell Labs
Когда сомневаетесь - используйте грубую силу.



20% of all input forms filled out by people contain bad data. Vic Vyssotsky, Bell Labs
20% всех форм, заполненных людьми, содержат ошибочные данные
Не уверен, что сейчас процент такой же, но с чего бы ему поменяться? Поэтому в интерфейсе должны быть везде подсказки, выбор из списка, а не ввод значений руками, проверка всех значений и т.п. Чем меньше человек вводит руками, тем меньше ошибок.



If it ain’t broke, don’t fix it. Ronald Reagan
Если что-то не сломано - не исправляйте это. Рональд Рейган



[The Maintainer's Motto] If we can’t fix it, it ain’t broke. United States Army
[Лозунг службы поддержки] Если мы не можем что-то исправить, то это не считается сломаным. Армия США
Этот лозунг сейчас обычно звучит, как “Это не баг - это фича”.



PI seconds is a nanocentury. Tom Duff, Bell labs
ПИ секунд - это наностолетие.
Эта забавная фраза позволяет легко запомнить число секунд в году. Из нее следует, что 100 лет - это примерно 3.14*10 в 9 степени, значит 1 год - это около 3.14*10 в 7 степени (на самом деле 3.155, но погрешность менее 0.5%).



Понравилась статья? Подпишись на RSS!


Похожие записи:
Книги + программисты = деньги
Не будите спящего программиста
2 признака кода с душком: убей его и лови всё молча
Я умею программировать на С++!?

11 комментариев к Мудрость предков

Ответить

 

 

 

Вы можете использовать эти HTML тэги

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>