Какой лучший урок ты выучил в своей карьере? [закрыто]

26

Я думаю, что «нет такой вещи, как пятиминутная работа» - программисты склонны чрезмерно оптимистично относиться к разработке, и что мы должны действительно продумать последствия, прежде чем обещать быстрое решение проблемы, а затем погрузиться в код

Райан
источник

Ответы:

26

Всегда есть лучший способ написать свой код.

Независимо от того, насколько хорошо вы найдете код, который вы пишете, вы будете удивлены, насколько это плохо, если вы пересмотрите его через несколько лет. Просто потому, что несколько лет назад вы не знали о некоторых шаблонах, которые вы знаете сегодня, или о некоторых языковых особенностях, которые вы изучили за это время и т. Д.

Арсений Мурзенко
источник
И как только вы решите это, перестаньте бить себя об этом. Учитесь, улучшайте, но выполняйте работу. Я был парализован в IDE, потому что боялся, что пропустил трюк. Вот для чего нужен рефакторинг. :-)
Iain Holder
17
  1. Подумайте, прежде чем начать кодирование.

  2. Нет ничего более постоянного, чем временные решения :)

  3. Если решить проблему очень сложно, скорее всего, сама проблема плохо поставлена ​​с самого начала.

Конрад Моравский
источник
11

Ваше программное обеспечение будет жить значительно дольше, чем вы думаете, когда оно будет написано.

Я начал свою карьеру в 80-х годах. Я начал с программного обеспечения, которое появилось в 70-х годах и все еще использовалось в 90-х годах (возможно, дольше, я не знаю наверняка о его судьбе). Часть моего собственного открытого исходного кода находится на полпути через второе десятилетие.

Брайан Оукли
источник
9

Хорошо работать с другими очень важно.

«Покажи мне свое« иди к парню », и я покажу тебе твои проблемы»

Кодеры Slapdash Hero - те, кто просто запускает код, не обращая внимания на условности, удобочитаемость или что-либо еще, над кем работает, - могут принести больше вреда, чем пользы.

Нельзя сказать, что люди, которые могут писать тонны кода хорошего качества - это плохо. Просто редко.

Iain Holder
источник
Я думаю, что этот ответ заслуживает большего количества голосов. +1 с моей стороны :-)
Компьютерщик
7

Изучение новых языков является частью работы

Я узнал о четырех языках программирования в школе еще в 80-х, но использовал один из них на работе. У меня было четыре работы, на которых я даже не знал языка, на котором меня наняли.

В целом, я изучил и профессионально использовал, возможно, дюжину языков в моей карьере, включая FORTRAN, c, c ++, c #, java, perl, Tcl, ruby, groovy, awk, python, sh, batch, DCL, javascript и другие. несколько маленьких DSL. Делая небольшую математику, я, кажется, усваиваю новый язык каждые пару лет, хотя есть много совпадений.

Если что-то было постоянным в моей карьере, это перемены.

Брайан Оукли
источник
6

Программное обеспечение никогда не бывает полным.

В требованиях, улучшениях, исправлениях ошибок всегда есть некоторые изменения, с которыми вы должны быть готовы справиться. Таким образом, будьте гибкими и принимайте тот факт, что "software is never complete"и всегда есть место для улучшений.

оборота ЭльЮсубов
источник
5

Продолжайте учиться каждый день. Знание сегодня устарело завтра.

По иронии судьбы этот ответ должен быть устаревшим и завтра. Но на самом деле, усердно изучайте один или два материала и будьте сертифицированы, если это возможно, будьте богом этого (может быть, языками программирования или администрированием системы / сети / базы данных) и всегда следите за другими мелочами, такими как другие языки без значения для ты.

Я имею в виду, например, быть отличным профессионалом в администрировании Java и Oracle DB, но немного изучить Python, PHP, C ++, HTML5, Javascript, но не до уровня сертификации. Изучите все существующие веб-или языковые рамки. Изучите или попробуйте получить некоторый (базовый) опыт работы с каждой существующей базой данных, такой как SQL Server, MySQL, Cassandra, HBase, PostgreSQL, и всем миром No-SQL, таким как MongoDB и CouchDB. Попробуйте иметь некоторый опыт администрирования и виртуализации Linux.

Это самый большой урок, который я извлек из своего 16-летнего опыта. В течение почти 10 лет я был программистом на одном языке, использующим Pascal в его эпоху и Visual Basic 6 в начале тысячелетия, а также разработчиком PHP с 9 лет назад. Но с тех пор я узнаю, что разработчики должны знать хотя бы немного обо всем.

оборота Луис Арриохас
источник
1
Теоретические вещи являются исключением из этого.
5

«Если твоя математика неверна, ты тост».

Узнал это впервые несколько лет назад. Узнал это снова всего две недели назад.

craGon
источник
3

Я бы сказал, что лучший урок, который я усвоил,

«Вы всегда должны стремиться к лучшему подходу, а не к вашему ».

SiB
источник
3

Я узнал, что лучший принцип дизайна - это KISS (будь проще, глупый!) .

Я понял, что основной задачей должно быть обеспечение простоты и чистоты вашего кода, и каждый член команды должен понимать, что у вас за код. The KISS principleутверждает, что большинство систем работают лучше, если они остаются простыми, а не сложными, поэтому простота должна быть ключевой целью при проектировании, и следует избегать ненужной сложности.

Е.Л. Юсубов
источник
3

Если это не сломано, не исправляйте это!

Попытка расширить и улучшить то, что уже работает, может доставить вам большую головную боль

Барт с
источник
3

Нет попытки

Допустим, у вас есть задача или набор задач, которые, по оценкам, займут 4 дня. Затем ваш босс или руководитель проекта спрашивает, можете ли вы попытаться сделать это за два дня по какой-то важной причине. Желая быть хорошим, гибким сотрудником, у вас может возникнуть соблазн сказать: конечно, вы можете попробовать. Скорее всего, это приведет к тому, что вы либо пропустите крайний срок, либо собираетесь сделать недоделанный хак, чтобы это сделать. И это не вина твоего босса, что он попросил тебя сделать это, это его работа. Это ваша вина, что вы не сказали «нет», это ваша работа.

Вы не можете торговаться со временем. Вы можете торговаться с размахом. Будьте профессиональны и не продавайте себя коротко.

simoraman
источник
Что вы думаете об обстоятельствах, в которых ваш босс / менеджер на самом деле хочет, чтобы вы пошли на компромисс с качеством за счет будущей работы и других вещей, чтобы выполнить работу быстрее?
Сэм
3

«Этого никогда не случится» на самом деле означает «Этого не произойдет до первого дня в производстве»

Йенс Шаудер
источник
2

Приятно писать первоклассный, современный, чистый код.

Даже если меня попросят сделать какой-нибудь быстрый обходной путь, который разрушит базу кода, я скорее сделаю это хорошим способом.

Adronius
источник
1
  • Написание кода легко. Читать код сложно. Даже если код твой. Поэтому, когда это возможно, выбирайте удобочитаемый подход.

  • Вы не умнее других. Никогда не думайте, что вы подходите лучше всего потому, что он ваш.

  • Обратите внимание на то, что сказано, а не НА КОГО сказано. Блестящие идеи могут прийти для самых неожиданных источников.

  • Не ленись. Не торопитесь, чтобы написать хороший код. Вам все равно придется исправить это по более высокой цене.

superM
источник
0

Не используйте необычные функции ООП только потому, что можете! - ЯГНИ (Тебе это не понадобится)

Use fancy OOP featuresпотому что они имеют конкретную, очевидную выгоду для проблемы, которую вы пытаетесь решить . Ты смеешься, но я вижу это все время. Большинство программистов никогда не встречали объект, который им не нравился. Я думаю, что должно быть наоборот: эти методы виновны, пока не будут доказаны невиновными в суде KISS .

Е.Л. Юсубов
источник