Программисты – люди серьезные и бескомпромиссные. Но это не значит, что у них нет чувства юмора. Они умеют посмеяться над другими, а иногда (хоть и не охотно) над собой. Программист Нареш Кумар долго подслушивал остроумные высказывания своих коллег и трепетно их коллекционировал. Перлы он собрал в единую подборку и опубликовал в своем блоге. AIN.UA перевел самые забавные из них.

«Эти цитаты относятся к разработке и сопровождению, отладке, багам, дизайну и документации, качеству кода, тестированию, управлению и т.д. Они смешные, но отчасти правдивые. Некоторые из них может понять только разработчик», – написал Нареш Кумар. Ну что же, поехали.

  1. Хороший программист всегда смотрит и направо, и налево прежде чем перейти улицу с односторонним движением.
  2. Не волнуйся, если не работает. Если бы все всегда работало, у тебя бы не было работы.
  3. Самая большая проблема с программистами в том, что ты никогда не сможешь понять, чем он занимается, пока не будет слишком поздно.
  4. Большинство из вас знают достоинства программистов. Их, конечно же, три: лень, нетерпеливость и высокомерие.
  5. Всегда пиши код так, как будто человек, который будет его саппортить – психопат-убийца, который знает, где ты живешь.
  6. Плохое ПО одного человека – постоянная работа другого.
  7. Если бы строители строили дома так, как программисты пишут код, то первый же дятел, присевший на фасад, уничтожил бы цивилизацию.
  8. Если сразу не получилось хорошо, назовите это версией 1.0.
  9. Когда создадут язык программирования, который позволит программистам писать код на английском языке, выяснится, что они не знают английского.
  10. Почему у нас никогда нет времени на то, чтобы сделать все правильно, но всегда есть время на то, чтобы сделать этого больше?
  11. Любой твой код, в который ты не заглядывал больше шести месяцев, будет выглядеть как код, который написал кто-то другой.
  12. Программирование – как секс. Одна ошибка, и ты должен поддерживать его до конца жизни.
  13. Ходить по воде и разрабатывать ПО из спецификации легко. Просто нужно заморозить и то, и другое.
  14. Первые 90% кода занимают первые 90% времени на разработку… Оставшиеся 10% кода занимают еще 90% времени на разработку.
  15. Комментировать свой код – как убирать в туалете. Никогда не хочется это делать, но это реально важно для создания приятного опыта у ваших гостей.
  16. Программирование сегодня – это гонка, в которой разработчики ПО стремятся построить больше качественных программ, защищенных от идиотов, а вселенная стремится породить больше качественных идиотов. Пока вселенная побеждает.
  17. Самая сложная часть в дизайне… держаться подальше от фич.
  18. Чтобы понять рекурсию, нужно сперва понять рекурсию.
  19. Есть два типа языков программирования: те, которые люди постоянно ругают, и те, которыми никто не пользуется.
  20. Если бы в Java была реализована уборка мусора, большинство программ удаляли бы себя сразу после запуска.
  21. В теории нет разницы между теорией и практикой. Но на практике есть.
  22. Готовсь, цельсь, пли – быстрый подход к разработке ПО. Готовсь, цельсь, цельсь, цельсь, цельсь – медленный подход к разработке ПО.
  23. Программирование – на 10% наука, на 20% изобретательность и на 70% попытка заставить изобретательность работать вместе с наукой.
  24. Легче что-то померить, чем понять, что ты только что померил.
  25. Контрольные показатели не лгут, но лгуны снимают контрольные показатели.
  26. Лучше научите людей, рискуя, что они уйдут, чем не делайте ничего, рискуя, что они останутся.
  27. Цель компьютерных наук – построить что-то, что простоит хотя бы до того момента, когда мы закончим это строить.
  28. Java относится к JavaScript так же, как Сом к Сомали.
  29. Совсем не важно, чтобы получилось хорошо с первого раза. Жизненно важно, чтобы хорошо получилось с последнего.
  30. Индекс массива должен начинаться с 0 или 1? Мой компромисс по поводу 0,5, я считаю, был отвергнут без надлежащего рассмотрения.
  31. Копировать-вставить – это ошибка в дизайне.
  32. У компьютеров хорошо получается выполнять инструкции, а не читать ваши мысли.
  33. Удаленный код – отлаженный код.
  34. Если отладка – это процесс удаления багов из кода, то получается, что программирование – это процесс помещения их туда.
  35. Отладка в два раза сложнее, чем написание кода. Следовательно, если вы пишете код настолько умно, насколько это возможно, вы по определению недостаточно умны, чтобы его отладить.
  36. Достаточно сложно найти ошибку в вашем коде, когда вы ее ищете. Это еще сложнее, если вы предполагаете, что ваш код не содержит ошибок.
  37. Это не баг – это незадокументированная фича.
  38. Без требований или дизайна программирование – это искусство добавлять баги в пустой файл.
  39. Плохой код на самом деле не плохой. Его просто не так поняли.
  40. Есть только два способа писать программы без ошибок. Работает третий способ.
  41. Внимание, в коде выше могут быть баги. Я только доказал его корректность, но не запускал.
  42. Софт проходит бета-тестирование незадолго до того, как выходит в свет. Бета на латыни означает “все еще не работает”.
  43. Самое лучшее улучшение производительности – это перевод из нерабочего состояния в рабочее.
  44. Самые дешевые, быстрые и надежные компоненты те, которых тут нет.
  45. Думаю, Microsoft так назвал .Net, чтобы он не попал в список директорий Unix.
  46. У программного обеспечения и церквей много общего – мы сначала строим их, а потом на них молимся.
  47. Программное обеспечение не закончено до тех пор, пока не умер последний пользователь.
  48. Большинство программного обеспечения сегодня очень похоже на египетские пирамиды с миллионами кирпичей друг на друге, построенных без целостности конструкции, но посредством грубой силы тысяч рабов.

Ранее на AIN.UA выходила подборка стереотипов о программистах в GIF-картинках.