Agile строится на многих идеях (Кайзден, Lean, канбан и т.д). Но одним из наиболее важных аспектов является совокупность исследований человеческой мотивации. В этой статье я рассмотрел некоторые их этих идей и подчеркнул, что очень легко применять Agile, но упускать из виду эти мотивационные факторы.
Engineering manager
Код без тестов — легаси
Если вы работаете в IT, то о легаси вы слышите часто — обычно с множеством негативных коннотаций. Понятно, что это не «хороший код», но какой? Может старый, может не поддерживаемый или не обновляемый, а может просто чужой? Есть ли «полноценное» определение «легаси», на которое можно ссылаться? А когда разберемся — что нам делать с легаси? Попробуем разобраться.
Важнейшая мотивация
Википедия дает какое-то сложное определение того, что такое мотивация. Я описал бы мотивацию более матафорично, на примере героя игры. Мотивация — это эликсир, после употребления которого у героя повышается уровень силы и стремления к новым свершениям. Чем выше уровень силы, тем сильнее пробивная или защитная мощь. Применительно к работе мотивация — это побуждение к действию, которое приводит к повышению силы сотрудника. Повышение силы сотрудника дает ему больше уверенности и энергии в решении задач, а также в борьбе с трудностями. Руководитель, который не следит за тем, чтобы у сотрудника был достаточный запас эликсира, рано или поздно столнется с падением стремления к новым свершениям.
Безграмотная мотивация — хуже отсутствия какой-либо мотивации
На самом деле в некоторых случаях это будет ошибкой. Один из довольно ярких примеров — мотивация персонала. Именно в разговорах о мотивации многие руководители проявляют вопиющую биологическую безграмотность.
Как проводить Code Review по версии Google
Вопросы код-ревью меня интересуют очень давно. Много раз возникали те или иные проблемы то с качеством кода, то с климатом в коллективе. И действительно, code review — это если не единственное, то одно из самых главных мест для возникновения конфликтов в коллективе разработчиков.
И вот недавно при подготовке к очередному выпуску подкаста "Цинковый прод" я узнаю, что Google опубликовал свод правил по проведению Code Review, битком набитый ценными мыслями. Весь материал довольно объемный и не влезет в одну статью, поэтому я постараюсь выделить наиболее интересные (мне) мысли.
Итак, поехали
Часть вторая. Как проходить code review по версии Google
Возможно вы читали первую часть статьи про код ревью со стороны ревьювера (кстати, мы уже успели ее обсудить в последнем выпуске подкаста "Цинковый прод").
Так как статья набрала много лайков, пишу обещанное продолжение про код ревью с другой стороны — со стороны автора изменений кода
Как обычно, будем говорить MR (Merge Request) вместо CL, потому что термин CL мало кто понимает.
Оригинал инструкции для авторов MR по версии Google можно посмотреть здесь, а я дам краткую выжимку.
Итак, поехали
Требования ACID на простом языке
Мне нравятся книги из серии Head First O`Reilly — они рассказывают просто о сложном. И я стараюсь делать также.
Когда речь идёт о базах данных, могут всплыть магические слова «Требования ACID». На собеседовании или в разговоре разработчиков — не суть. В этой статье я расскажу о том, что это такое, как расшифровывается ACID и что означает каждая буква.
Требования ACID — набор требований, которые обеспечивают сохранность ваших данных. Что особенно важно для финансовых операций. Мы же не хотим остаться без денег из-за разрыва соединения или ошибки в ПО, не так ли?
Аспекты хороших юнит-тестов
Эта статья является конспектом книги «Принципы юнит-тестирования».
Давайте для начала перечислим свойства хороших юнит-тестов.
Первое. Интегрированы в цикл разработки. Пользу приносят только те тесты, которые вы активно используете; иначе писать их нет смысла.
Второе. Тестируют только самые важные части вашего кода. Не весь рабочий код заслуживает одинакового внимания.
Третье. Дают максимальную защиту от багов с минимальными затратами на сопровождение. Для этого нужно уметь распознавать эффективные тесты и писать их.
Однако распознавание и написание эффективного теста – два разных навыка. И для приобретения второго навыка необходимо сначала освоить первый. Далее в этой статье будет показано, как распознать эффективный тест. Также будет рассмотрена пирамида тестирования и тестирование по принципу «черного ящика» / «белого ящика».
2 новых видеоурока по SEO из цикла «SEO для начинающих от А до Я»
Продолжение будем выкладывать в нашем блоге.
Видеоуроки по SEO от преподавателя школы интернет-маркетинга IMpro Александра Докучалова.
В этот раз мы публикуем два видеоурока: теоритический урок по техническим факторам ранжирования и более практический урок по оптимизации струтуры сайта с примерами.
Знаем, что информации по SEO в Сети сильно много, поэтому дабы не допустить сомнений в экспертности материала, пару слов о спикере школы интернет-маркетинга IMpro:
Александр Докучалов — эксперт в области инструментальных методов поискового продвижения, web-аналитики и повышения эффективности интернет-маркетинга и разработчик 28 комплексных образовательных программ по интернет-рекламе.
А еще Саша, тот самый человек, который разработал уникальную технологии поискового продвижения SEO 2.0, которая с 2014 года перенимается крупными интернет-агентствами. Член экспертного клуба «Премии Рунета».
12 недельный скетч марафон, сделать или умереть
Наверняка вы видели в моей ленте на Dribbble или Behance за последние 4 месяца много красочных и бессмысленных интерфейсов :) Если нет, то это был 12 недельный sketch марафон в котором я на протяжении 12 недель (включая выходные) делал по 1 shot каждый день. Ниже я расскажу о том что из этого вышло.
5 вещей, которых вы не знали о многопоточности
В этом выпуске серии «5 вещей …», я представлю некоторые из тонких аспектов многопоточного программирования, в том числе synchronized-методы, volatile переменные и атомарные классы. Речь пойдет в особенности о том, как некоторые из этих конструкций взаимодействуют с JVM и Java-компилятором, и как различные взаимодействия могут повлиять на производительность приложений.
Справочник по синхронизаторам java.util.concurrent.*
В java.util.concurrent много различных классов, которые по функционалу можно поделить на группы: Concurrent Collections, Executors, Atomics и т.д. Одной из этих групп будет Synchronizers (синхронизаторы).
Синхронизаторы – вспомогательные утилиты для синхронизации потоков, которые дают возможность разработчику регулировать и/или ограничивать работу потоков и предоставляют более высокий уровень абстракции, чем основные примитивы языка (мониторы).
Information
- Rating
- Does not participate
- Location
- Киев, Киевская обл., Украина
- Registered
- Activity