Как стать автором
Обновить
433
0

Team Lead

Отправить сообщение

Алгоритмы — это лишь одна из переменных в уравнении

Время на прочтение 3 мин
Количество просмотров 46K
Прочитал весьма занимательную статью про важность алгоритмов, вывод из которой показался мне весьма спорным

Для начала — тезис. Я утверждаю, что знание алгоритмов и даже наличие системного образования не делает вас хорошим разработчиком. Можно сказать жестче — для большинства задач вы будете профнепригодны, даже владея теорией графов, зная вычислительные сложности алгоритмов и прочитав всего Кнута.



Все дело в том, что разработка ПО — это не просто алгоритмы или языки.
Читать дальше →
Всего голосов 115: ↑101 и ↓14 +87
Комментарии 143

Для тех, кому влом писать планы

Время на прочтение 5 мин
Количество просмотров 64K
Рекомендую заранее статью про то, как работать в потоке, и статью про спонтанное планирование (для тех, кто ненавидит тайм-менеджмент).

Суть простая — иногда появляются мысли у людей, типа, почему полно книг «Как...», но почти нет «Зачем...». А многие просто страдают от прокрастинации, и пытаются безуспешно жить по методикам, где требуется железная сила воли и организованность — работа по плану.

Ниже немного моих соображений, как быть тем, у кого эта тема не прет, но нужно как-то организовать свои дела.
Читать дальше →
Всего голосов 26: ↑18 и ↓8 +10
Комментарии 4

Что может помочь менеджеру проектов в работе с программистами

Время на прочтение 6 мин
Количество просмотров 62K
Предыдущая статья была достаточно популярна. Я обещал продолжить и держу слово. Делюсь своим личным мнением и не претендую на истину.

В этой части пойдет речь про работу с программистами.



1. Вместо костылей нужен фундамент. Люди, а не методологии


Из опыта внедрений различных методологий Agile сделал следующие выводы
1. Вполне понятным кажущимся решением многим кажется использование типовых советов. Вера в серебряную пулю, джинна из бутылки свойственно большинству людей, менеджеры проектов — не исключение.
Читать дальше →
Всего голосов 38: ↑35 и ↓3 +32
Комментарии 16

Почему иконки чаще мешают удобству, хотя и выглядят красиво

Время на прочтение 2 мин
Количество просмотров 31K
Только что посмотрел прекрасный ролик, в котором показан ответ на вопрос из известного вирусного клипа «Какие-то люди и Эксперт» (про семь красных перпендикулярных линий).

В глаза бросились изменения в интерфейсе Youtube. И так как достаточно часто встречаю такую проблему, то решил сделать пост об этом.

Проблема достаточно простая. Кто не хочет читать — посмотрите быстрый разбор нововведения на Ютубе, а также пример с иконками без надписей и с ними (и убедитесь в заголовке поста), а так прошу под кат.
Читать дальше →
Всего голосов 73: ↑56 и ↓17 +39
Комментарии 81

Почему нет простых решений о том, что лучше — купить серверов или оптимизировать код

Время на прочтение 6 мин
Количество просмотров 33K
В ответ вот на эту статью, про выбор покупки серверов или оптимизации.

Хочется затронуть фактор людской психологии в принятии решений, его недооценку и важность влияния на конечный результат.
Внизу статьи есть тезисное изложение, кому не хочется читать.

Как обычно происходит и почему


Действительно, существует такое распространенное мнение, что железо купить проще и надежнее, чем оптимизировать код.
Другой вопрос, а проводились ли достоверные исследования на эту тему? Думаю, нет, и это только подтверждает тезисы статьи «Программирование, как новый вид человеческой деятельности».

Однако, попробуем построить мысленный эксперимент с некоторыми допущениями. Рынок — это место для естественного отбора. Компании отбираются по признаку выживаемости. Кто обслужил клиента лучше, заработал денег больше и сумел удержаться на рынке, обойти конкурентов — тот и выжил. Обратная связь обеспечивает эволюцию компаний.
И, судя по тому, что компании как инвестируют миллионы долларов как в человеческий потенциал, так и в сервера, имеют место оба подхода, возможно даже их комбинация. О чем было сказано в исходной статье в комментах (комбинации подходов нередки и в других случаях в жизни, например, ястребы и голуби).
Читать дальше →
Всего голосов 55: ↑46 и ↓9 +37
Комментарии 37

12 уроков из управления проектами и запуска стартапов

Время на прочтение 9 мин
Количество просмотров 125K
Я разработал около сотни проектов, в том числе — стартапов. Многие из них достигали пика и умирали, некоторые работают до сих пор. Делал как B2C, так и B2B.

В последнее время наблюдается поток вопросов от знакомых и друзей, которые делают одни и те же ошибки. Я хотел бы рассказать о своем опыте в посте тезисов. И если он будет успешен — продолжить серию.

Если лень читать — ролик, выражающий основной дух и главный смысл, находится внизу. Ролик вызовет восхищение — отлично, идите делать очередной релиз. Ролик вызовет отторжение — читайте пост до другой реакции сколько угодно :)



1. Важнее всего — желание

Один из первых стартапов в моей жизни не состоялся потому, что из четверых друзей, кто решил делать, желания сделать проект по-настоящему не было ни у кого. Если вы не способны в течение каждого дня месяца думать о проекте и предпринимать реальные шаги, возможно, не стоит делать проект.
Читать дальше →
Всего голосов 78: ↑64 и ↓14 +50
Комментарии 41

Sonar как источник задач для регулярного рефакторинга

Время на прочтение 1 мин
Количество просмотров 24K
Простая и короткая статья. Из серии «на заметку хозяйке».

Есть гибкая система сканирования кода на соответствие правилам, метрикам (полезным, типа цикломатической сложности), и так далее.
Называется Sonar.



Пара скриншотов на живых данных под катом.
Читать дальше →
Всего голосов 16: ↑9 и ↓7 +2
Комментарии 27

Как добиваться результата, управляя процессом разработки

Время на прочтение 5 мин
Количество просмотров 34K

О чем это все


Это будет короткий пост. Сначала личная история, а потом как это применить на практике к управлению сотрудниками.
Чисто опыт, никаких теорий.

Во-первых, часто говорят о работе на результате. О людях, ориентированных на процесс или на результат. Соотношение, как говорят, 95% к пяти. Рекомендую всем менеджерам проектов для начала великолепное видео Сергея Котырева в тему. Кстати, горячо рекомендую и другие видео посмотреть — Сергей достиг успеха на непростом рынке и знает, о чем говорит.



Видео ответит вам на вопросы, почему окружающие вас люди (если вы — менеджер проектов по натуре) не хотят брать ответственность, часто не хотят делать задачу так, как ее сделали бы вы, и в целом с вашей точки зрения неэффективны и нерезультативны. Они не специально, просто это такая природа людей, ориентированных по жизни на процесс.
Читать дальше →
Всего голосов 40: ↑28 и ↓12 +16
Комментарии 9

Успех, решение проблем, труд и рутина — звенья одной цепи

Время на прочтение 4 мин
Количество просмотров 28K
Если вокруг одни дураки — значит, вы центральный.


Автор данной статьи предупреждает, что это лишь его личное мнение, и ничего большего. Возможно, что текст полон когнитивных искажений, вызовет когнитивную жопоболь. Поэтому настоятельно рекомендуется убрать от экранов людей со слабыми нервами, женщин и детей до 18 лет

Виконт де Бражелон


Вот эта чудесная статья сподвигла меня на то, чтобы взять перо в столь поздний час.
Я буду писать не об авторе той статьи, которого лично не знаю, а о тех, чье поведение обычно внешним образом повторяет отношение к жизни, изложенное в том материале.

Вспоминается театр, в котором я когда-то играл год и о чем с благодарностью вспоминаю. Руководитель театра за свои деньги организовывает кучу мероприятий, бесплатных для молодых артистов, обучает их и развивает. В обмен — лишь выступление на ведущих площадках, конкурсах. Некоторые из бывших в театре — сегодня звезды ТВ и эстрады.

Неоднократно при мне приходили люди, которых руководитель долго и упорно учил. А затем уходили после неадекватных проявлений в поведении, и всегда поливали калом театр впоследствии. Никто из них, что примечательно, не добился серьезного успеха за последующие годы.

И я не так давно для себя уяснил, почему так происходит. В обществе у нас не принято, например, показывать страх и слабость — поэтому руководитель не признается публично в страхе срыва проекта или слабости навыков менеджмента. Вместо этого демонстрирует принятую в обществе агрессию — орет на подчиненных, закатывает истерики, переходит на личности и так далее.

Так и у нас в России не принято брать на себя ответственность за свою жизнь. А вот обвинять кого угодно — это приветствуется в любом коллективе. Поэтому признать себя виновным в факапе — это участь немногих, а вот публично поливать критикой окружающих и самому в нее поверить в итоге — идет на ура.

Также не принято работать, за исключением IT и ряда других сфер — а вот говорить о работе любит каждый
Читать дальше →
Всего голосов 45: ↑37 и ↓8 +29
Комментарии 10

Быть менеджером среднего звена — не проблема, если вы готовы к этому

Время на прочтение 8 мин
Количество просмотров 47K
Точнее было бы сказать, если у вас есть способности к этому.

В продолжение темы, затронутой в этом посте.

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

— Вам, конечно,  известно,  как  осуществляется  на  Земле  программа образования. Практически любой человек  может  усвоить  любые  знания,  но каждый индивидуальный мозг лучше подходит для одних видов знаний, чем  для других.  Мы  стараемся  по  возможности  сочетать   устройство   мозга   с соответствующими  знаниями  в  пределах  квоты  на   специалистов   каждой профессии.
А.Азимов, Профессия


Удивительно, как написанное фантастом претворяется в жизнь. Сегодня некоторые ученые (Сергей Савельев) говорят о возможности сделать систему анализа врожденных способностей и талантов человека, другие более аккуратны в оценках (Дробышевский мне ответил на вопрос, что есть предрасположенности врожденные, но они перекрываются средой). В одном все сходятся, что именно мозг определяет способности человека и то, как у него пойдет та или иная деятельность; и что мозги у нас у всех уникальные и постоянно изменяющиеся (связи постоянно перестраиваются).
Читать дальше →
Всего голосов 46: ↑40 и ↓6 +34
Комментарии 25

Распространенные заблуждения в управлении проектами

Время на прочтение 6 мин
Количество просмотров 116K
Когда я работал программистом, ко мне нередко подходили с просьбой помочь сделать проект за долю. В некоторых я участвовал. Но очень мало проектов взлетело.
Со временем я стал менеджером проектов, а люди все так же подходят. И сами вокруг делают стартапы. Взлетают единицы.
Почему же?


Быстро разбогатеть и уплыть на собственный остров просто, увы, лишь в мечтах.

Ответ, увы, кроется не в идее, реализации и даже не в рынке. Дело только в голове создателя стартапа. А точнее, в мифах, которыми она полна.

Именно мифы, которые заставляют мыслить неправильно, приводят к неудаче. И чем больше человек в них верит, чем меньше он способен изменять свое мышление, эволюционировать — тем выше шанс провала.

В этой статье я собрал одни из самых часто встречаемых мифов. И написал их опровержение, вкупе с реальными кейсами, как на самом деле нужно мыслить и действовать.
Читать дальше →
Всего голосов 101: ↑89 и ↓12 +77
Комментарии 44

О комментариях в коде замолвите слово

Время на прочтение 3 мин
Количество просмотров 16K
Появился пост, в комментариях к которому (какая ирония) было много мнений,
что самый лучший код — self-documenting и все такое.

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

Читать дальше →
Всего голосов 47: ↑32 и ↓15 +17
Комментарии 23

Вариант эффективного интервью

Время на прочтение 3 мин
Количество просмотров 58K
Волею судеб, мне приходится набирать web-программистов уже несколько лет. Прошерстив сотни резюме, проведя десятки собеседований, хочу поделиться текущей структурой интервью.

А ты записался добровольцем?
А ты записался добровольцем прошел собеседование?

Интервью состоит из трех частей, занимает 30-60 минут.
1. Рассказ программиста о себе.
2. Короткие вопросы на кругозор.
3. Решение задач

Рассказ программиста о себе.


В первую очередь прошу человек рассказать, как пришел к web-программированию. Когда начал, когда подсел на программирование :)
Очень спрашиваю про последнее место-два работы, что человек делал, за что отвечал, что в техническом и организационном плане там делал.

Нужно, чтобы человек расслабился.
Когда-то на этом этапе спрашивал про пять вариантов, почему люки круглые и прочие вопросы, но это давно отмерло, потому что не дает ничего :)

Как только становится понятно, что движет человеком и какой у него опыт, переходим к технической части.
Читать дальше →
Всего голосов 68: ↑43 и ↓25 +18
Комментарии 49

Из истории одного стартапа

Время на прочтение 4 мин
Количество просмотров 67K
Волею судеб, запуская очередной проект, я столкнулся с достаточно интересным фактом.

Многие мои знакомые так или иначе пытаются делать проекты, получается у немногих.

Я хочу рассказать на небольших примерах о том, что нужно делать в проекте, а на что можно забить, даже если это противоречит вашим интуитивным устремлениями.
Читать дальше →
Всего голосов 69: ↑58 и ↓11 +47
Комментарии 33

Говнокод или суперархитектура? Сначала говнокод, а потом эволюционный рефакторинг!

Время на прочтение 3 мин
Количество просмотров 74K
Ответ на статью.

Если вы не разрабатываете ПО для машин или систем автоматического поддержания жизни и тд — нижесказанное работает для вас при грамотном применении.

Сразу скажу — не моя идея, в статье «Проектирования больше нет?» сам Мартин Фаулер писал об эволюционном рефакторинге. А Боб Мартин даже целую книгу запилил с примером поэтапного развития приложения (и не одним), назвав «Быстрая разработка ПО» и продемонстрировав умение виртуозно материться на Java и C++.

Во-первых, говнокод на первом этапе обязателен. Причин куча. Раз — вы ничего не знаете о реальных условиях работы приложения, все ваши домыслы фигня. Пока реальный опыт не получен, пока не занесены первые живые данные реальным пользователем — у вас нет обратной связи. Если вы не согласны, почитайте Макконнелла, миф о стабильных требованиях, и получите левелап.
Читать дальше →
Всего голосов 202: ↑157 и ↓45 +112
Комментарии 170

Да, но кто сказал, что они купят это?

Время на прочтение 5 мин
Количество просмотров 82K
Продолжение перевода серии статей «5 уроков просмотра стартапов»,
прошлая статья Настоящие нечестные конкурентные преимущества


На сотнях стартап питчей в Capital Factory, не нашелся и десяток людей, которые были бы готовы сказать «если вы создадите этот продукт, я дам вам X долларов».



Задумайся над этим: сотни людей готовы уволиться с постоянной работы, потратить свои сбережения, рискнуть личной репутацией, трудиться 70 часов в неделю, пережить такой же стресс, как и рождение ребенка (поверьте мне, я испытал рождение и ребенка, и стартапов)… и все это при том, что нет жалкого десятка людей, действительно готовых заплатить за то, что предлагают стартаперы.

Недальновидно, не правда ли?
Читать дальше →
Всего голосов 75: ↑60 и ↓15 +45
Комментарии 60

Практика борьбы с прокрастинацией и нелюбовью к планированию

Время на прочтение 7 мин
Количество просмотров 165K
DISCLAIMER: Все изложенные ниже приемы работают для меня, и не факт, что будут работать для вас. IMHO only, на истинность в последней инстанции не претендую.

В этом посте я соберу тезисно несколько приемов, которые помогают бороться с прокрастинацией и делать работу.

Как ни странно, большая часть из них относится к переделываю своих привычек. Потому что то, что навязывает нам среда, книги, и что мы сами себе прививаем, часто работает против нас.



Отдых тела и ума


Сон и еда
По себе заметил, если не выспался — работать хочется в несколько раз меньше. Нужно найти для себя способ высыпаться, действуя из позиции Автора.

Второй важный пункт — еда. Для работы мозга — а работа в IT суть интеллектуальный труд — нужно много хорошей еды.
Если вы выспались и сыты, то силы должны быть, если их нет, идем дальше.

Активное тело, температура в помещении
Иногда нужно размять тело. Вовсе не так просто в СССР была производственная зарядка, о которой так бодро пел Высоцкий.

Тут есть глубокий физический смысл. Когда вы приводите свои мышцы в активность, повышается их тонус, в теле изменяется обмен веществ. Организм понимает, что нужно стать бодрее — и через 10-15 минут разминки вы себя не узнаете.
Читать дальше →
Всего голосов 94: ↑77 и ↓17 +60
Комментарии 43

О великих велосипедах, или почему иногда нужно писать с нуля

Время на прочтение 4 мин
Количество просмотров 93K

Not invented here — источник инноваций и причина успеха?


Я не могу дать тебе рецепт успеха, но рецепт провала могу дать точно: каждый день и каждую минуту делай все так, как делают окружающие.
Неизвестный автор.


Очень часто в компаниях выступают против синдрома «not invented here». Я, как менеджер проектов, прекрасно понимаю соображения такого толка. Велосипеды — это лишние затраты, удлинение сроков разработки, сложность и дороговизна поддержки продукта в будущем, зависимость от разработчиков велосипеда и все такое прочее.

Но как программист, понимаю однозначно — без велосипедов не будет инноваций. А без инноваций не будет прорывных технологических решений, новых проектов. Будут только одинаковые, похожие друг на друга, собранные из одного набора кубиков проекты и приложения, никак не могущие конкурировать между собой (разве что кто кого засудит и «отожмет» рынок).

Не случайно поэтому Гугл выделяет 20% на свободное творчество, и это рождает такие великолепные переосмысления старых вещей, как почтовый клиент Gmail.

Но обо все по порядку. В этой статье я хочу коротко рассказать о трех «велосипедах», которые произвели революцию в своей области.
Читать дальше →
Всего голосов 158: ↑121 и ↓37 +84
Комментарии 90

Как делать удобные ajax-сайты

Время на прочтение 6 мин
Количество просмотров 56K
Несмотря на то, что AJAX стал стандартом де-факто для реализации многих элементов интерфейса, по-прежнему большая часть разработчиков делают сайты так, что пользоваться ими очень неудобно.

Сразу скажу, что существуют такие web-приложения, которые лишены указанных ниже недостатков (например, Gmail, Хабрахабр). Но это — счастливые исключения, лишь подтверждающие правила.

1. Трудность навигации


Прежде всего, состояние. Тот, кто читал «Психбольницу в руках пациентов» Купера, знает, о чем речь. Складным ножом легко пользоваться потому, что у него всего два состояния: раскрыт и сложен. А в случае же с сайтом вы имеете очень большое количество состояний. И если к неопределенности в плане ссылок мозг еще привыкает со временем — пользователь знает, что он находится на одной странице, и всего его действия ограничены ею одной, что сказывается на относительной легкости моделировании различных состояний по страницам — то с аяксом такого не происходит.


Довольная Гаечка наконец-то нашла нормальный ajax-сайт!
Читать дальше →
Всего голосов 111: ↑91 и ↓20 +71
Комментарии 91

Top 5 раздражающих моментов в работе программиста

Время на прочтение 4 мин
Количество просмотров 194K
В процессе работы, будучи программистом, в разные периоды я не раз сталкивался с рядом проблем. Во многом из-за непонимания клиентами и руководителями работы программиста. Хочется собрать наиболее раздражающие моменты, которые делают работу невыносимой и портят все удовольствие, и объяснения начинающим менеджерам на доступном языке, как не быть в глазах разработчика обузой.

1. А сколько займет сделать этот раздел (дается ТЗ из одной строки)?

Как правило, отвлекают от работы вопросом, сбивают с потока. Просят назвать срок, когда неизвестна ни задача, ни требования, только одно предложение. И так настойчиво, что, чтобы отвалили, называешь прикидочный срок.

Менеджеру: поймите, что программист строит в голове модель будущей системы. По одному предложению нельзя смоделировать приложение. И только ваша вина, если вы не потрудились уточнить ТЗ (это ваша работа, кстати) у заказчика, а хотите сразу назвать ему срок (и цену). Потому что оценка с потолка невозможна — вроде как ответить на вопрос «сколько времени займет покрасить комнату неизвестной площади?».

2. Ты же ОБЕЩАЛ сделать за два дня, а прошла неделя! (моют мозг по сроку из пункта 1)

По исследованиям, сроки разработки реальных систем в большей части случаев всегда дольше запланированных. Во многом из-за изменений в процессе работы, которые никто не закладывал. И потом, срок, данный без ТЗ, сроком вообще нельзя считать. И напирая на этот срок, менеджер демотивирует меня как программиста. Когда не выполняет свою работу и свои косяки валит на меня.

Менеджеру: ничто так не демотивирует, как обвинение в некомпетентности и лжи. Постарайтесь давать точное ТЗ и бить задачу на простые кусочки, в чем программист с удовольствием поможет (если хорошо попросить). Тогда можно будет более точно управлять сроками.
Читать дальше →
Всего голосов 195: ↑159 и ↓36 +123
Комментарии 203

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность