Обложка канала

.NET Разработчик

Опытный разработчик не так давно зашёл в .Net и поставил цель получить сертификат Microsoft. Свой ежедневный прогресс он описывает на канале .Net Разработчик. Заметки об изученном материале, советы по повышению производительности и поддержке мотивации, ин

.NET Разработчик

3 года назад
Открыть в
День 1505. #BestPractices 20 Вещей, Которым я Научился за 20 Лет. Начало Учиться у тех, кто был до нас, очень важно для успеха, но мы часто забываем одну важную оговорку. Почти все советы зависят от контекста, но они редко полезны во всех случаях. Без понимания контекста совет не имеет смысла или, что ещё хуже, вреден. Следующие советы пригодятся людям, которые … - почти всегда работали в небольших командах, где приходится делать много, имея очень мало ресурсов; - ценят работающее ПО, а не конкретные инструменты; - постоянно запускают новые проекты, но также должны поддерживать ряд старых систем; - ценят продуктивность превыше всего. 1. Я всё ещё очень многого не знаю «Как можно не знать, что такое Kafka?», «Ты никогда не слышал о Rust?» Большинство из нас слышали такого рода заявления. Многие из нас любят разработку ПО, потому что мы учимся на протяжении всей жизни, и в ПО, независимо от того, в каком направлении вы развиваетесь, есть огромные области знаний, которые развиваются во всех направлениях и расширяются с каждым днём. Вы можете потратить десятилетия карьеры и всё ещё иметь огромный пробел в знаниях по сравнению с кем-то, кто также провел десятилетия в, казалось бы, похожей роли. Чем раньше вы это поймёте, тем скорее сможете избавиться от синдрома самозванца и вместо этого получать удовольствие от обучения и обучения других. 2. Самое сложное в ПО — создавать правильные вещи Да, это клише, но большинство программистов не верят этому, потому что думают, что это обесценивает их работу. Это не так. Это подчёркивает сложность и иррациональность среды, в которой нам приходится работать. Вы можете создать самую технически впечатляющую вещь в мире, и никто не захочет ей пользоваться. Это происходит постоянно. Разработка ПО — это в основном слушание, и нам часто приходится быть программистом, экстрасенсом и антропологом в одном лице. Инвестирование в этот процесс проектирования, будь то через увлечённых членов команды UX или просто самообразование, принесёт огромные дивиденды. Как реально рассчитать стоимость создания неправильного ПО? Одно точно, что она гораздо выше, чем просто потерянное время программиста. 3. Лучшие программисты думают, как дизайнеры Великие программисты глубоко задумываются о пользовательском опыте своего кода. Они могут не думать об этом в этих терминах, но будь то внешний API, программный API, пользовательский интерфейс, протокол или любой другой интерфейс; великие инженеры обдумывают, кто будет его использовать, почему он будет использоваться, как он будет использоваться и что важно для этих пользователей. Помнить о потребностях пользователя — это основа хорошего пользовательского опыта. 4. Лучший код — это отсутствие кода или код, который не нужно поддерживать «Кодеры будут кодить». Спросите человека любой профессии, как решить проблему, и он уйдёт в сторону того, в чём он хорош. Это человеческая природа. Большинство программистов всегда будут уходить в сторону написания кода, особенно когда нетехническое решение неочевидно. То же касается кода, который вам не нужно поддерживать. Команды инженеров склонны изобретать колесо, когда уже существует множество колёс. 5. ПО — это средство для достижения цели Основная задача любого программиста — создавать ценность. Очень немногие разработчики понимают это, ещё меньше усваивают это. Усвоить это – значит искать другие способы решения проблем и по-другому смотреть на ваши инструменты. Если вы действительно верите, что ПО – это работа на результат, вы будете готовы найти «правильный инструмент для работы», который может вообще не быть ПО. 6. Иногда нужно перестать затачивать пилу и начинать пилить Некоторые люди склонны сразу бросаться писать код. Другие, как правило, хотят исследовать и впадают в аналитический паралич. В таких случаях установите для себя крайний срок для разработки проекта, а затем просто начните решать проблему. Вы быстро узнаете больше по ходу, и это приведёт вас к лучшему решению. Продолжение следует… Источник: https://www.simplethread.com/20-things-ive-learned-in-my-20-years-as-a-software-engineer/