Мне на глаза попался документ с правилами и рекомендациями по процессу ревью кода внутри компании. Я решил, что такой полезной информацией надо поделиться с внешним миром. С благословения автора я публикую работу
Читать полностью »
Рубрика «Программирование» - 367
Процесс ревью кода в HH.RU
2018-09-06 в 8:29, admin, рубрики: code review, Git, github, HH, hh.ru, Блог компании HeadHunter, Программирование, разработка, ревью, ревью кода, Совершенный код, хедхантерРецепт полезного код-ревью от разработчика из Яндекса
2018-09-06 в 7:10, admin, рубрики: agile, codereview, Git, github, javascript, rebase, review, Блог компании Яндекс, Программирование, ревью, ревью кода
Привет. Меня зовут Сергей, последние пять лет я работаю в Яндексе. За это время участвовал в разработке одиннадцати проектов. Писал код на JavaScript, Python и C++. Некоторые проекты делал в одиночку, другие разрабатывал в группе из восьми человек. Но в каждой команде, на всех проектах, вне зависимости от языка программирования я использовал код-ревью.
С помощью код-ревью я постоянно узнаю что-то новое. Иногда, глядя на чужой код, хочется воскликнуть: "А что, так тоже можно?". В чужом коде я нахожу интересные приёмы и беру их себе на вооружение. Много новых знаний черпаю из комментариев к моему коду. Для меня стало открытием, что люди любят делиться своим опытом. Даже когда я разрабатываю проект в одиночку, то прошу ребят из другой команды посмотреть мои пулреквесты. Это мотивирует писать красивый и понятный код.
Но так было не всегда. Когда-то ревью было для меня наказанием. Я мог неделю с вдохновением писать код, вкладывая в него все силы. Отправлял пулреквест, трижды пинговал ревьювера, а в ответ получал сухое "вроде ок" или, что ещё хуже, десятки комментариев не по существу.
Мне на ревью приходили пулы из пяти тысяч строк. Я часами пытался разобраться в коде, по сотне раз скроллил от функции к тесту и обратно. Писал десятки бесполезных комментариев о пропущенной точке с запятой. Всё это жутко меня раздражало. Часто откладывал ревью на потом, и у меня накапливались десятки непросмотренных пулов.
Если вы чувствовали это на себе, значит, статья для вас. Сегодня я расскажу о приёмах и инструментах, которые использую каждый день на протяжении пяти лет ежедневного код-ревью.
Славик и GMT+3 или польза для людей
2018-09-05 в 20:56, admin, рубрики: usability, дизайн, забота, Клиентская оптимизация, польза для людей, Программирование, юзабилитиЭто Славик — обычный ПХП-программист. Не джуниор и не сеньор, а парень из тех, кого раньше называли «веб-мастерами». Славик может и ЦМС поковырять, и свою написать, и шаблон сверстать, и сервер поадминить.
В этом году Славик завязал со всем этим и решил устроиться на стабильную работу. Знакомые подкинули неплохой вариант — транспортной компании «N-лайнз» нужен разработчик на поддержку готовой системы бронирования.
Славик обрадовался. Оплата неплохая, стабильная, всегда есть что делать. А главное, наконец-то будет явная польза для людей. Славику всегда хотелось понимать, как его работа кому-то принесёт пользу. Так он туда и устроился.
Однажды утром Славик увидел в Джире новую задачу:
Конференция PyCon Russia 2018: видео всех докладов и презентации
2018-09-05 в 11:08, admin, рубрики: django, python, Блог компании IT-People, конференция, машинное обучение, Программирование22-23 июля прошла шестая конференция для python-программистов PyCon Russia. Под катом — много видео, презентации и фотографии. А еще посмотрите отчетный ролик — в нем коротко о том, как прошел PyConRu-2018.
Прыжок в облако. Строим бюджетное решение для интернета вещей на NodeMCU + Azure IoT Hub
2018-09-05 в 7:30, admin, рубрики: azure, IoT, iot hub, Lua, microsoft, Microsoft Azure, xaker, Блог компании Microsoft, Интернет вещей, облако, Программирование, хакерСамое популярное назначение IoT устройств это сбор телеметрии. На сегодняшний день цены на облачные IoT сервисы снизились настолько, что позволить себе их использовать может и обычный рядовой пользователь. Сегодня расскажем о том, как отправить данные в облако с платы NodeMCU используя язык Lua.
Интересности и полезности python. Часть 2
2018-09-04 в 20:13, admin, рубрики: python, полезные приёмы, ПрограммированиеВ предыдущей статье мы рассмотрели несколько интересных моментов языка python, разумеется, одной статьёй они не исчерпываются, поэтому продолжим.
В одном из комментариев рассматривался следующий код:
SEX = 'Female', 'Male'
sex = SEX[True] # -> Male
sex = SEX[False] # -> Female
Тестируем создание библиотеки компонент для Angular с помощью новой команды для Angular-Cli — library
2018-09-04 в 16:14, admin, рубрики: angular, angular-cli, front-end, front-end разработка, javascript, npm, Программирование, Разработка веб-сайтов, управление разработкой
Когда проектов становится чуть больше чем один, возникает необходимость как-то переиспользовать не только отдельные модули с кодом, но и сами UI-компоненты. Вариантов решения проблемы много — от традиционного копипаста, до настройки отдельного проекта с тестами, документацией и даже блекджеком.
Проблема в том, что второй вариант требует значительных усилий по подготовке и каждый такой проект уникальный — со своим инструментарием в котором каждому новому разработчику нужно разбираться заново. В конце июля, команда Angular предложила свое, комплексное, решение этой проблемы добавив в angular/cli новую команду для создания библиотек — library.
Давайте посмотрим, что из этого получилось.
Для тестов, взята самая свежая из стабильных версий angular/cli — 6.1.5 (04.09.2018)
Первый опыт или как пытаться стать Легендой кода и магии
2018-09-04 в 14:38, admin, рубрики: Алгоритмы, ненормальное программирование, Программирование, Спортивное программированиеВсем привет. Меня зовут Валентин.
10 июля я прочел на Хабре пост Оли Ollisteka про платформу codingame.com и решил попробовать свои силы в логических задачах, а так же в конкурсе Legends of Сode and Magic.
В виду большого количества свободного времени я увлекся головоломками и задачами, которые присутствуют на данном ресурсе. Что хорошо, что каждая задача, каждый puzzle заставляет искать решение, пусть иногда и не очевидное.
Далее будет краткая информация о правилах конкурса, а так же о некоторых очевидных или не очень вещах для новичков.
Legends of Code and Magic
Контест, который проходит с 25 июля по 24 августа. Игра в некотором смысле похожа на Hearthstone, однако часть вещей улучшена в сторону баланса между игроками.
Игра проходит между двумя игроками, и это пошаговая игра. Каждый игрок имеет свою колоду карт, выбранную из доступных вариантов во время фазы Draft перед фазой Battle.
Читать полностью »
A7 Data Server: управление данными онлайн
2018-09-04 в 13:43, admin, рубрики: javascript, piterjs, QML, Блог компании PiterJS, Программирование, управление даннымиОсновные структуры данных. Матчасть. Азы
2018-09-04 в 10:45, admin, рубрики: Алгоритмы, дерево, массив, Матчасть, очередь, перевод, Программирование, стек, типы данных, хешВсе чаще замечаю, что современным самоучкам очень не хватает матчасти. Все знают языки, но мало основы, такие как типы данных или алгоритмы. Немного про типы данных.
Еще в далеком 1976 швейцарский ученый Никлаус Вирт написал книгу Алгоритмы + структуры данных = программы.
40+ лет спустя это уравнение все еще верно. И если вы самоучка и надолго в программировании пробегитесь по статье, можно по диагонали. Можно код кофе.