Мне кажутся этими способностями должен обладать не только программист. Они применимы к мелким предпринимателям, менеджерам и вообще ко всем у кого руки растут не из жо..., а голова создана, чтобы ею думать, а не пережевывать "продукты массового потребления".
- Способность читать и понимать описание поставленной задачи, улавливать пожелания того, кто ее ставит (что не всегда легко, так как и задачи, и те, кто их ставит, часто отличаются именно неуловимостью).
- Способность четко видеть действительные трудности и отбрасывать все, не относящееся к делу.
- Способность выявлять все случаи, где можно применить теорию, самостоятельно решиться на ее применение или обратиться за советом к специалисту.
- Способность разбить задачу на ряд обозримых независимых частей и понять взаимосвязи этих частей.
- Способность оценивать эффективность предлагаемых решений с точки зрения затрат на программирование, машинных ресурсов и удовлетворения потребностей пользователя и находить приемлемый компромисс между этими видами эффективности.
- Способность объединять множество частных решений воедино, получая при этом четкое и изящное решение всей задачи.
- Способность выражать решения на простом и понятном языке. Естественный это язык или искусственный - роли не играет, важно лишь, чтобы правильность решения была ясна и людям, и машине.
- Способность при неудаче подавить самолюбие и поискать другой подход (или даже другую задачу).
Дополнительная информация:
0 коммент.:
Отправить комментарий