Сложнее всего вычислить правильные 20 процентов

Закон Парето, также известный как правило 80/20, уже давно стал популярным в Интернете, особенно в кругах продуктивности и мотивации. Суть в том, что 80% продукции часто производится 20% входных данных.

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

Это правило часто цитируют и используют в бизнесе и спорте, но как насчет программирования?

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

За исключением цифровых технологий, вы никогда не заканчиваете.

10% знания

Когда дело доходит до программирования, нужно многому научиться.

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

Функциональные и объектно-ориентированные решения часто являются наиболее популярными, если вы хотите писать эффективный код. Модульные шаблоны и события, основанные на событиях, часто становятся предметом дискуссий о том, как повысить эффективность и результативность разработчиков.

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

Это такие вещи, как шаблоны CRUD, работа с массивами, преобразование данных и передача вещей между компонентами и классами.

Сеансы, открытие / закрытие подключений к базам данных, использование API для входа в социальные сети и интеграция платежных шлюзов - вот некоторые общие требования для серверных приложений. Маршрутизация и модульный CSS важны для клиентской части.

5% Работайте умнее, а не усерднее

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

Что такое ручные выкройки?

Одно из его официальных названий - императивный шаблон - или процедура, которую программа должна выполнять в определенном порядке для получения правильного вывода. На самом деле, вещи никогда не появляются в том порядке, в котором они должны быть в 100% случаев.

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

Умное кодирование - это процесс уменьшения сложности и, следовательно, потенциальных точек отказа. В дополнение к этому, количество линий, которые вам нужно поддерживать, также будет уменьшено как побочный эффект.

5% креативность

Креативный код никогда не рекомендуется - если вы не занимаетесь поэзией кода, а это совсем другое дело.

Программирование - это не искусство. Программирование - это процесс перевода бизнес-требований в цифровой формат. Однако способность творчески соединить ваши знания вместе - это то, что делает или мешает вашему окончательному результату.

Чаще всего написание кода может рассматриваться как механическое и лишенное эмоций. В каком-то смысле это так. Идея творчества основана на страсти и воображении.

Однако, как однажды сказал Марк Твен:

«Новой идеи не существует. Это невозможно. Мы просто берем множество старых идей и помещаем их в своего рода мысленный калейдоскоп. Мы даем им возможность составить новые любопытные комбинации.

Мы бесконечно крутим и составляем новые комбинации; но это те же старые куски цветного стекла, которые использовались на протяжении всех веков ».

Способность создавать творческие решения - это способность соединять вместе точки знаний для создания эффективного программного обеспечения в заданное время.

80% Создание точек

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

- Стив Джобс, выступление на церемонии вручения дипломов в Стэнфордском университете.

Самые эффективные и действенные разработчики среди нас кажутся нескончаемым объемом знаний, охватывающим разные области. Кажется, они знают все, что нужно знать. Вы можете поговорить с ними на любую тему.

От обычных вещей, которые мы видим в наших социальных сетях, до случайных лакомых кусочков знаний, таких как процесс производства стекла.

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

В результате они расширяют свои творческие границы, добавляя больше точек для соединения, когда требуются творческие решения.

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

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

Все это добавляет до 100%

20% фактических работ определяет эффективность выпуска. Однако то, как вы потратите оставшиеся 80%, также имеет значение.

На самом деле мы не сможем увидеть 80%, пока они не материализуются в той или иной форме в уравнении 20%. Это потому, что для каждого проекта требуется свой коктейль в 20%.

Не существует единой комбинации, которая работает каждый раз, - нет волшебного решения каждой проблемы. Разработчик мифического единорога - это просто разработчик, который знает, как постоянно привлекать нужные 20%.

Знания - это только верхушка всего. Да, это во многом объясняет, насколько прочной, модульной и гибкой будет ваша конечная поставка.

Способность распознавать закономерности и реализовывать точки знаний также являются основными факторами в том, чтобы быть эффективным и действенным разработчиком.

Чтобы выяснить, какие 20% подходят для вашего проекта, вам понадобится ряд точек знаний, из которых можно выбирать. Вот почему 80% тоже имеют значение - и почему вы должны развивать это как можно больше, в дополнение к тому, чтобы тратить свое время на изучение шаблонов и методов кодирования.

Спасибо за чтение. ❤

Афинья