Когда вы в последний раз задавались вопросом, этичен ли ваш процесс разработки программного обеспечения?

Говоря о программной инженерии, существует общая тенденция рассматривать этику и профессионализм как несовместимые понятия. Этика почти исключительно связана с результатами, такими как написание вредоносного программного обеспечения вместо написания полезного приложения или взлом системы вместо повышения безопасности,
в то время как профессионализм связан с процессом получения результатов, способами разработки программного обеспечения. работы в организации.

Я еще не видел, чтобы кто-нибудь оценивал методы и способы работы команд разработчиков программного обеспечения как этичные или нет — они всегда оцениваются только как профессиональные или нет.

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

⚡ Непрофессиональный выбор становится ЭТИЧЕСКОЙ дилеммой в тот момент, когда вы можете ПРЕДСКАЗАТЬ результаты. И после 50 лет разработки программного обеспечения, agile-революции, мы знаем этические последствия непрофессиональных действий в области разработки программного обеспечения. ⚡

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

Представьте, что у вашего клиента есть определенная сумма денег и времени, он просит вас о продукте, вы обещаете, что доставите его, а затем терпите неудачу…

не только один раз, но вы терпите неудачу так часто и надежно, что вся индустрия привыкает к обещаниям разработчиков программного обеспечения быть в целом ненадежными. Подумайте о ситуации с точки зрения клиентов…

Быть непредсказуемым — это, конечно, непрофессионально… но постоянно выбирать практики, которые гарантированно приводят к провалу, срыву сроков, локальным оптимизациям, пустой трате денег и времени всех, спиралям смерти, разочарованиям, увольнениям… Это выходит за рамки профессионализма. Это делает нас неэтичными❗

✅ Верно и обратное: если мы выбираем методы, повышающие шансы на успех, мы выбираем этический вариант.

💰 К счастью, этический выбор здесь также является экономически выгодным. Клиенты получают то, что им нужно, быстрее и с более высоким качеством, заинтересованные стороны получают выгоду от своих инвестиций. Команды находятся под меньшим давлением и имеют более здоровый баланс между работой и личной жизнью… Выигрывают все.

Научный метод, экстремальное программирование Кента Бекса, непрерывная поставка Дейва Фарли, чистая agile Роберта Мартина, картографирование потока создания ценности и теория ограничений, устранение искусственной сложности — это этично, это гибкость, и это профессиональная разработка программного обеспечения.

Сделайте правильный выбор!

Спасибо за вашу поддержку и увидимся в следующий раз!

Если вам нравится контент, поддержите меня на Patreon или с помощью Super Thank, или посетите и прочитайте мои статьи на Medium.

https://www.patreon.com/SoftwareMinimalist
https://medium.com/@SoftwareMinimalist