![image][1] _КДПВ_ Кто-то создает программное обеспечение с открытым исходным кодом, а я провожу много времени размышляя над тем, как сделать программное обеспечение лучше. Бесконечный поток просьб о помощи на форумах Stack Overflow, GitHub, Slack, в электронных письмах и личных сообщениях неизбежен. К счастью, в итоге вы знаете многих людей, которые добились определенного успеха и сделали фантастические вещи, и знание о том, что вы приняли в этом участие благодаря вам и вашей помощи, является хорошей мотивацией для новых достижений. У вас возникает вопрос: какие качества программного обеспечения приводят разработчика к успеху или к неудаче? Как я могу улучшить свой софт и помочь бо́льшему количеству людей стать успешным? Я могу ясно сформулировать некоторые основные принципы или полагаюсь на интуицию в зависимости от конкретного случая? (Рождение и воплощение одной мысли это два совершенно разных действия). Возможно это что-то вроде принципов [Дитера Рамса][2], способствующих качественному дизайну программного обеспечения?
* Хороший проект является инновационным.
* Хороший проект делает продукт полезным.
* Хороший проект эстетичен.
* Хороший проект делает продукт понятным.
* Хороший проект ненавязчив.
* Хороший проект честен.
* Хороший проект длителен.
* Хороший проект продуман до мельчайших деталей.
* Хороший проект безвреден для окружающей среды.
* В хорошем проекте дизайна настолько мало, насколько это возможно.
[Читать дальше →][3]
[1]:
https://habrastorage.org/getpro/habr/post_images/0ea/fba/a64/0eafbaa64ffa4af65a5473aef822ab91.png
[2]:
https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%BC%D1%81,_%D0%94%D0%B8%D1%82%D0%B5%D1%80
[3]:
https://habrahabr.ru/post/279459/#habracut