Pull to refresh
-3
0
Даниленко Макс @maxDanylenko

Engineering manager

Send message

Agile: используем человеческую мотивацию

Reading time6 min
Views5.3K

Agile строится на многих идеях (Кайзден, Lean, канбан и т.д). Но одним из наиболее важных аспектов является совокупность исследований человеческой мотивации. В этой статье я рассмотрел некоторые их этих идей и подчеркнул, что очень легко применять Agile, но упускать из виду эти мотивационные факторы.

Читать далее
Total votes 7: ↑4 and ↓3+1
Comments19

Код без тестов — легаси

Reading time9 min
Views24K

Если вы работаете в IT, то о легаси вы слышите часто — обычно с множеством негативных коннотаций. Понятно, что это не «хороший код», но какой? Может старый, может не поддерживаемый или не обновляемый, а может просто чужой? Есть ли «полноценное» определение «легаси», на которое можно ссылаться? А когда разберемся — что нам делать с легаси? Попробуем разобраться.

Выводы неочевидны.
Total votes 29: ↑25 and ↓4+21
Comments23

Важнейшая мотивация

Reading time3 min
Views9.9K
image
Википедия дает какое-то сложное определение того, что такое мотивация. Я описал бы мотивацию более матафорично, на примере героя игры. Мотивация — это эликсир, после употребления которого у героя повышается уровень силы и стремления к новым свершениям. Чем выше уровень силы, тем сильнее пробивная или защитная мощь. Применительно к работе мотивация — это побуждение к действию, которое приводит к повышению силы сотрудника. Повышение силы сотрудника дает ему больше уверенности и энергии в решении задач, а также в борьбе с трудностями. Руководитель, который не следит за тем, чтобы у сотрудника был достаточный запас эликсира, рано или поздно столнется с падением стремления к новым свершениям.
Читать дальше →
Total votes 33: ↑20 and ↓13+7
Comments13

Безграмотная мотивация — хуже отсутствия какой-либо мотивации

Reading time3 min
Views34K
Часто бывает, что какие-то бизнес-принципы одни компании копируют у других — просто потому, что директор компании когда-то где-то уже видел, как что-то было сделано в других компаниях, и, в силу отсутствия каких-либо знаний в соответствующей области, ему проще всего сделать у себя точно так же: вроде же как-то работает.

На самом деле в некоторых случаях это будет ошибкой. Один из довольно ярких примеров — мотивация персонала. Именно в разговорах о мотивации многие руководители проявляют вопиющую биологическую безграмотность.
Читать дальше →
Total votes 39: ↑31 and ↓8+23
Comments59

Как проводить Code Review по версии Google

Reading time5 min
Views127K
Вопросы код-ревью меня интересуют очень давно. Много раз возникали те или иные проблемы то с качеством кода, то с климатом в коллективе. И действительно, code review — это если не единственное, то одно из самых главных мест для возникновения конфликтов в коллективе разработчиков.

И вот недавно при подготовке к очередному выпуску подкаста "Цинковый прод" я узнаю, что Google опубликовал свод правил по проведению Code Review, битком набитый ценными мыслями. Весь материал довольно объемный и не влезет в одну статью, поэтому я постараюсь выделить наиболее интересные (мне) мысли.


Итак, поехали

Читать дальше →
Total votes 154: ↑147 and ↓7+140
Comments134

Часть вторая. Как проходить code review по версии Google

Reading time3 min
Views26K
Возможно вы читали первую часть статьи про код ревью со стороны ревьювера (кстати, мы уже успели ее обсудить в последнем выпуске подкаста "Цинковый прод").

Так как статья набрала много лайков, пишу обещанное продолжение про код ревью с другой стороны — со стороны автора изменений кода

Как обычно, будем говорить MR (Merge Request) вместо CL, потому что термин CL мало кто понимает.


Оригинал инструкции для авторов MR по версии Google можно посмотреть здесь, а я дам краткую выжимку.


Итак, поехали

Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments36

Требования ACID на простом языке

Reading time6 min
Views247K

Мне нравятся книги из серии Head First O`Reilly — они рассказывают просто о сложном. И я стараюсь делать также.

Когда речь идёт о базах данных, могут всплыть магические слова «Требования ACID». На собеседовании или в разговоре разработчиков — не суть. В этой статье я расскажу о том, что это такое, как расшифровывается ACID и что означает каждая буква.

Требования ACID — набор требований, которые обеспечивают сохранность ваших данных. Что особенно важно для финансовых операций. Мы же не хотим остаться без денег из-за разрыва соединения или ошибки в ПО, не так ли?

Читать далее
Total votes 15: ↑11 and ↓4+7
Comments10

Аспекты хороших юнит-тестов

Reading time11 min
Views8.8K

Эта статья является конспектом книги «Принципы юнит-тестирования».

Давайте для начала перечислим свойства хороших юнит-тестов.

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

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

Третье. Дают максимальную защиту от багов с минимальными затратами на сопровождение. Для этого нужно уметь распознавать эффективные тесты и писать их.

Однако распознавание и написание эффективного теста – два разных навыка. И для приобретения второго навыка необходимо сначала освоить первый. Далее в этой статье будет показано, как распознать эффективный тест. Также будет рассмотрена пирамида тестирования и тестирование по принципу «черного ящика» / «белого ящика».

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments0

2 новых видеоурока по SEO из цикла «SEO для начинающих от А до Я»

Reading time2 min
Views6.8K
Продолжаем цикл видеоуроков по SEO для новичков. Первые два урока вышли еще в августе прошло года и вот наконец-то мы собрали ресурсы для записи продолжения.

Продолжение будем выкладывать в нашем блоге.

Видеоуроки по SEO от преподавателя школы интернет-маркетинга IMpro Александра Докучалова.

image

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

Знаем, что информации по SEO в Сети сильно много, поэтому дабы не допустить сомнений в экспертности материала, пару слов о спикере школы интернет-маркетинга IMpro:

Александр Докучалов — эксперт в области инструментальных методов поискового продвижения, web-аналитики и повышения эффективности интернет-маркетинга и разработчик 28 комплексных образовательных программ по интернет-рекламе.

А еще Саша, тот самый человек, который разработал уникальную технологии поискового продвижения SEO 2.0, которая с 2014 года перенимается крупными интернет-агентствами. Член экспертного клуба «Премии Рунета».
Читать дальше →
Total votes 18: ↑6 and ↓12-6
Comments1

12 недельный скетч марафон, сделать или умереть

Reading time4 min
Views18K
image

Наверняка вы видели в моей ленте на Dribbble или Behance за последние 4 месяца много красочных и бессмысленных интерфейсов :) Если нет, то это был 12 недельный sketch марафон в котором я на протяжении 12 недель (включая выходные) делал по 1 shot каждый день. Ниже я расскажу о том что из этого вышло.
Читать дальше →
Total votes 10: ↑8 and ↓2+6
Comments29

5 вещей, которых вы не знали о многопоточности

Reading time10 min
Views291K
Хоть от многопоточности и библиотек, которые её поддерживают, отказываются немногие Java-программисты, но тех, кто нашёл время изучить вопрос в глубину ещё меньше. Вместо этого мы узнаём о потоках только столько, сколько нам требуется для конкретной задачи, добавляя новые приёмы в свой инструментарий лишь тогда, когда это необходимо. Так можно создавать и запускать достойные приложения, но можно делать и лучше. Понимание особенностей компилятора и виртуальной машины Java поможет вам писать более эффективный, производительный код.

В этом выпуске серии «5 вещей …», я представлю некоторые из тонких аспектов многопоточного программирования, в том числе synchronized-методы, volatile переменные и атомарные классы. Речь пойдет в особенности о том, как некоторые из этих конструкций взаимодействуют с JVM и Java-компилятором, и как различные взаимодействия могут повлиять на производительность приложений.
Читать дальше →
Total votes 86: ↑77 and ↓9+68
Comments40

Справочник по синхронизаторам java.util.concurrent.*

Reading time14 min
Views269K
Целью данной публикации не является полный анализ синхронизаторов из пакета java.util.concurrent. Пишу её, прежде всего, как справочник, который облегчит вхождение в тему и покажет возможности практического применения классов для синхронизации потоков (далее поток = thread).

В java.util.concurrent много различных классов, которые по функционалу можно поделить на группы: Concurrent Collections, Executors, Atomics и т.д. Одной из этих групп будет Synchronizers (синхронизаторы).



Синхронизаторы – вспомогательные утилиты для синхронизации потоков, которые дают возможность разработчику регулировать и/или ограничивать работу потоков и предоставляют более высокий уровень абстракции, чем основные примитивы языка (мониторы).
Читать дальше
Total votes 45: ↑41 and ↓4+37
Comments15

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Registered
Activity