В процессе выхода на международный рынок с API Карт мы решили отказаться от комментирования кода на русском языке. При этом на основе комментариев формируются справочники сервиса, которые затем публикуются у нас на портале, и отказываться от поддержки справочников на русском языке мы не хотели. Из доклада Олеси Горбачевой и Максима Горкунова вы узнаете, как технические писатели Яндекса совместно с разработчиками API Карт поменяли язык комментариев и организовали синхронную поддержку справочников и примеров сразу на двух языках.
Рубрика «Совершенный код» - 30
Локализация комментариев в коде. Лекция Яндекса
2017-10-29 в 10:43, admin, рубрики: api яндекс.карт, dita, doxygen, javascript, jsdoc, open source, teamcity, xliff, автоматический перевод, Блог компании Яндекс, документация, документация кода, перевод, Совершенный код, Яндекс APIVim спустя 15 лет
2017-10-25 в 12:32, admin, рубрики: tmux, vim, Блог компании Mail.Ru Group, Графические оболочки, ненормальное программирование, никто не читает теги, Совершенный код
Мои предыдущие посты об использовании Vim (1, 2) читатели приняли хорошо, и пришло время обновления. В Vim 8 появилось много очень нужной функциональности, а новые сайты сообществ вроде VimAwesome облегчили поиск и выбор плагинов. В последнее время я много работаю с Vim и организовал рабочий процесс исходя из максимальной эффективности, вот снимок моей текущей работы.
Вкратце:
- FZF и FZF.vim — для поиска файлов.
- ack.vim и
ag— для поиска файлов. - Vim + tmux — ключ к победе.
- Благодаря асинхронности ALE — это новый Syntastic.
- …И многое другое. Об этом ниже.
Code review по-человечески (часть 1)
2017-10-20 в 7:34, admin, рубрики: code review, python, код ревью, неправильные пробелы, отладка, Программирование, просмотр кода, психология, Совершенный код, эго
В последнее время я читал статьи о лучших практиках code review и заметил, что эти статьи фокусируются на поиске багов, практически игнорируя другие компоненты ревью. Конструктивное и профессиональное обсуждение обнаруженных проблем? Неважно! Просто найди все баги, а дальше само сложится.
Так что у меня случилось откровение: если это работает для кода, то почему не будет работать в романтичных отношениях? Итак, встречайте новую электронную книгу, которая поможет программистам в отношениях со своими возлюбленными (обложка на иллюстрации слева).
Моя революционная книга обучит вас проверенным техникам по выявлению максимального количества недостатков в своём партнёре. Книга не затрагивает следующие области:
• Обсуждение проблем с сочувствием и пониманием.
• Помощь партнёру в устранении недостатков.
Насколько я могу понять из чтения литературы по code review, эти части отношений настолько очевидны, что вообще не стоят обсуждения.
Как вам нравится такая книжка? Предполагаю, что она вам не очень по душе.
Читать полностью »
Почему роботы должны форматировать код за нас
2017-10-18 в 14:40, admin, рубрики: edisonsoftware, javascript, React, ReactJS, Блог компании Edison, Программирование, Совершенный код
Раньше я думал, что иметь индивидуальный стиль кодирования это хорошо для программиста. Это показывает, что вы опытный разработчик, который знает, как должен выглядеть хороший код.
В колледже мои преподаватели говорили, что они понимают, когда мои однокурсники используют мой код в своих работах из-за особого стиля кодирования. Сейчас я думаю, что они понимали это потому, что мой код был по крайней мере хоть как-то отформатирован, в то время как у других была полная неразбериха.
С тех пор я потратил много времени, рассуждая о стиле кодирования и выбирая инструменты для его осуществления. Настало время что-то менять.
Читать полностью »
Как эмпирическое правило «победитель получает все» работает и не работает в разработке
2017-10-03 в 4:17, admin, рубрики: Алгоритмы, Винни Пух, выбросы, вычислительная математика, Гауссиана, Дробные производные, закон Бенфорда, Заря Программирования, Зевс, Коши, Леви, математика, оптимизация, производительность, скоро зима, Совершенный код, Солнечная система, статистика, фракталы, Хинчин, ЧебышевПредлагаю переработанный вариант своего выступления на конференции разработчиков, в котором я решил отвлечься от фреймворков-технологий и порассуждать на тему сопоставимости в разработке.

Под катом слайды с пояснением.
Читать полностью »
t1ha
2017-10-02 в 14:35, admin, рубрики: C, cityhash, hash, hash function, t1ha, высокая производительность, ненормальное программирование, системное программирование, Совершенный кодЧуть менее чем самая быстрая, переносимая, 64-битная хэш-функция, с достойным качеством.
Да, вжух и в дамки, примерно так. Читаем дальше?
t1ha = Fast Positive Hash
2017-10-02 в 14:35, admin, рубрики: C, cityhash, hash, hash function, t1ha, высокая производительность, ненормальное программирование, системное программирование, Совершенный кодЧуть менее, чем самая быстрая, переносимая, 64-битная хеш-функция, с достойным качеством.
Да, вжух и в дамки, примерно так. Читаем дальше?
Внедрение code style в существующий проект
2017-09-20 в 12:48, admin, рубрики: Code Style, IT-стандарты, php, sonarqube, Блог компании ZeroTech, Программирование, Разработка веб-сайтов, Совершенный код, статический анализ кода, управление разработкойВероятно, в любой команде рано или поздно возникает вопрос создания и утверждения стандартов кодирования. На первый взгляд, задача вполне тривиальная. Но лишь в том случае, когда решается на раннем этапе развития проекта. Тогда разработчикам необходимо лишь выбрать и применить один из популярных стандартов, и чаще всего этот выбор за них делает фреймворк, который они используют.
В нашем случае всё не так просто. Проект, над которым мы работаем, начал свою жизнь ещё до того, как различным стандартам и описаниям лучших практик в среде разработки стали уделять большое внимание. В том числе, задолго до появления столь популярных ныне PSR стандартов для PHP. По этим причинам задача стандартизации кода не ставилась на более ранних этапах, а теперь – предстала нашей команде в качестве вызова.
В этой публикации мы расскажем о том, как пришли к пониманию необходимости единого code style, и выработали методы его постепенного внедрения в масштабный проект. Этот опыт может быть интересен тем, кто пока не использует стандартизацию, но уже ощущает в этом потребность.
Моки и явные контракты
2017-09-16 в 16:08, admin, рубрики: Elixir, Elixir/Phoenix, mock, stub, testing, Совершенный код, тестирование, Тестирование IT-системНаверное каждый, кто начинал писать юнит и интеграционные тесты, сталкивался с проблемой злоупотребления моками, которая приводит к хрупким тестам. Последние, в свою очередь, создают у программиста неверное убеждение в том, что тесты только мешают работать.
Ниже представлен вольный перевод статьи, в которой José Valim — создатель языка Elixir — высказал своё мнение на проблему использования моков, с которым я полностью согласен.
Несколько дней назад я поделился своими мыслями по поводу моков в Twitter:

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

