Как стать автором
Обновить
5
0
Alexander @T13Nemo

Product Manager

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

5 диаграмм, необходимых для документирования архитектуры решений

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

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

Читать далее
Всего голосов 18: ↑17 и ↓1+26
Комментарии3

Zip-файлы: история, объяснение и реализация

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


Мне давно было интересно, как сжимаются данные, в том числе в Zip-файлах. Однажды я решил удовлетворить своё любопытство: узнать, как работает сжатие, и написать собственную Zip-программу. Реализация превратилась в захватывающее упражнение в программировании. Получаешь огромное удовольствие от создания отлаженной машины, которая берёт данные, перекладывает их биты в более эффективное представление, а затем собирает обратно. Надеюсь, вам тоже будет интересно об этом читать.

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Всего голосов 133: ↑132 и ↓1+174
Комментарии45

Нет клещам! Растения против переносчиков болезни Лайма

Время на прочтение3 мин
Количество просмотров46K
Сегодня я написал в своем канале заметку про отпугивание клещей растительными заграждениями. А потом подумал, и решил продублировать на хабр. Пусть она и небольшая по размеру, и не совсем подходит под характерные для меня лонгриды. Но ведь не у всех есть телеграм. И именно сейчас лучшее время для поиска и закупки семян различных растительных репеллентов и «клещегонов». Поэтому сегодня под катом — про биобарьеры против боррелиозного клеща. Из каких растений их лучше сделать!


Защитить дачу от клещей!
Всего голосов 86: ↑86 и ↓0+86
Комментарии185

Полезные инструменты Python

Время на прочтение6 мин
Количество просмотров38K
Друзья, добрый вечер! У нас отличные новости, открыт набор в новую группу по курсу «Разработчик Python». Группа стартует уже в начале июля, а прямо сейчас, по устоявшейся традиции, мы делимся полезным переводом подготовленным для студентов данного курса.



Когда вы только начинаете учить Python, кто-то объясняет вам, что вы можете добавить свою папку с исходниками в переменную среды PYTHONPATH и тогда ваш код можно будет импортировать из других директорий. Очень часто объясняющий забывает сказать, что в большинстве случаев – это плохая идея. Некоторые люди узнают это в интернете, другие просто понимают на собственном опыте. Но слишком большое количество людей (особенно неопытные программисты), думают, что других альтернатив быть не может.
Читать дальше →
Всего голосов 42: ↑40 и ↓2+38
Комментарии38

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы

Время на прочтение12 мин
Количество просмотров108K
На Хабре да и вообще в русскоязычном Интернете есть немало инструкций о том, как перебраться в Нидерланды. Я и сам немало полезного почерпнул из одной статьи на Хабре (ныне, видимо, скрытой в черновике уже нет, вот она). Но я все-таки расскажу о своем опыте поиска работы и переезда в эту европейскую страну. Помнится, и когда я только собирался рассылать резюме, и когда уже проходил собеседования, мне было очень интересно почитать об аналогичном опыте других коллег по цеху.

image

В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
Читать дальше →
Всего голосов 216: ↑202 и ↓14+188
Комментарии306

Прорабатываем навык использования группировки и визуализации данных в Python

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

Привет, Хабр!

Сегодня будем прорабатывать навык использования средств группирования и визуализации данных в Python. В предоставленном датасете на Github проанализируем несколько характеристик и построим набор визуализаций.

По традиции, в начале, определим цели:

  • Сгруппировать данные по полу и году и визуализировать общую динамику рождаемости обоих полов;
  • Найти самые популярные имена за всю историю;
  • Разбить весь временной промежуток в данных на 10 частей и для каждой найти самое популярное имя каждого пола. Для каждого найденного имени визуализировать его динамику за все время;
  • Для каждого года рассчитать сколько имен покрывает 50% людей и визуализировать (мы увидим разнообразие имен за каждый год);
  • Выбрать 4 года из всего промежутка и отобразить для каждого года распределение по первой букве в имени и по последней букве в имени;
  • Составить список из нескольких известных людей (президенты, певцы, актеры, киногерои) и оценить их влияние на динамику имен. Построить наглядную визуализацию.

Меньше слов, больше кода!

И, поехали.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии5

Открытый курс «Deep Learning на пальцах»

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

После 18-го февраля начнется открытый и бесплатный курс "Deep Learning на пальцах".


Курс предназначен для того, чтобы разобраться с современным deep learning с нуля, и не требует знаний ни нейросетей, ни machine learning вообще. Лекции стримами на Youtube, задания на Питоне, обсуждения и помощь в лучших русскоязычных DS-сообществах — ODS.ai и ClosedCircles.


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


Одновременно и в том же объеме курс будет читаться для магистрантов Новосибирского Государственного Университета, а также студентов CS центра Новосибирска.


Выглядеть объяснение на пальцах будет примерно так:



Главная ссылка — dlcourse.ai. Подробности ниже.

Читать дальше →
Всего голосов 94: ↑92 и ↓2+90
Комментарии72

Курс о Deep Learning на пальцах

Время на прочтение2 мин
Количество просмотров175K
Я все еще не до конца понял, как так получилось, но в прошлом году я слово за слово подписался прочитать курс по Deep Learning и вот, на удивление, прочитал. Обещал — выкладываю!

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

Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.


Читать дальше →
Всего голосов 117: ↑117 и ↓0+117
Комментарии31

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

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


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

Складывается ощущение, что проект зажил собственной жизнью и пытается сожрать вас.



Как так случилось? Может, наняли плохого разработчика? Кто-то ошибся в планировании проекта? А вдруг сама идея проекта была ужасной?

Возможно. Но часто проект бывает с самого начала обречен на провал из-за недопонимания одного важного момента.

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

Это предположение — неверно.

Проект — это не лист бумаги, не двумерный объект — у него есть глубина.

Каждую функцию на поверхности можно раскрыть — и так слой за слоем. Будь у меня склонность к громким заголовкам, я бы сказал, что всякое приложение — это лук, и нужно уметь правильно его чистить. Не очень понятно? Тогда давайте я поясню, что имеется в виду, и расскажу, почему не получается раскрывать слои приложения без слёз.

Переведено в Alconost
Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии35

Видеопост: спутник Сатурна, кубик в кубе и инопланетный летающий кит

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


У нас накопилась новая порция интересных видеороликов, которыми мы хотели бы с вами поделиться.

Новое слово в гонках




Компания Hankook Tire совместно с Университетом Пфорцхайма (Pforzheim), Германия, создали замечательный ролик, иллюстрирующий идею концепта адаптивных даже не покрышек, а назовём это «колёсными системами».
Читать дальше →
Всего голосов 23: ↑19 и ↓4+15
Комментарии9

Фанат перемонтировал «Чужого» и «Прометея» в один фильм

Время на прочтение1 мин
Количество просмотров28K
Кино на ночь: двух с половиной часовой микс «Чужого» и «Прометея» «Заброшенный» (Derelict), сделанный юзером Дэниэлом aka JobWillins:



Видео уже потёрли копирасты. Скачать файл можно тут (ссылка из комментов) или на торренте с субтитрами

Русские субтитры к фильму отдельно (22.07.15 — обновлено)

Фильм создан путём сокращения материала «Прометея» на полчаса, вместо которого был добавлен почти час материалов из «Чужого» 1979 г. В «Заброшенном» также использованы и удалённые сцены из «Прометея». Чтобы сгладить контраст картинки фильма почти 40-летней давности с картиной 2012 года, он сделал «Заброшенного» чёрно-белым.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии35

Стендапы в стиле Kanban

Время на прочтение5 мин
Количество просмотров44K
Stand-up meeting, Daily Scrum Meeting или просто планёрки стали привычной практикой в IT. Я описывал различные нюансы стендапов ещё 5 лет назад в статье Stand-up meeting: лучшие и худшие практики. Казалось бы, техника проведения стендапов уже рассмотрена со всех сторон. Что в планёрке может быть сложного? Но совсем недавно наша компания начала практиковать несколько другой подход, с помощью которого мы ускорили выход задач в релиз.

Всё началось, когда летом 2014 года в Москве мы с Асхатом шли на тренинг и он обратил моё внимание на разницу между стендапами в Scrum и Kanban. До этого я не придавал особого значения таким нюансам. У нас в компании для части проектов используется Kanban, но стиль стендапов остался от Scrum'а.

Сейчас мы поменяли подход к стендапам, об этом я расскажу дальше, покажу разницу между тем, что было и тем, что стало. В конце статьи есть ссылки для более глубокого погружения в тему с описанием разных мнений и нюансов.
Читать дальше →
Всего голосов 20: ↑20 и ↓0+20
Комментарии7

Moscow Atlassian Meetup в Москве 21 апреля

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


Во вторник, 21 апреля, Mail.Ru Group организует первый Moscow Atlassian Meetup. В офисе компании соберутся эксперты в области организации общения с пользователями и управления проектами. В программе события — доклады по продуктам Atlassian (JIRA, Confluence и другим), а после — их обсуждение и общение единомышленников в свободной обстановке.
Читать дальше →
Всего голосов 23: ↑18 и ↓5+13
Комментарии5

LeanKanban-2014 — обзор конференции и видео докладов

Время на прочтение10 мин
Количество просмотров7.5K
Прошлой осенью прошла менеджерская конференция LeanKanban Russia-2014.

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

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



Конференция чисто менеджерская, от поднимаемых тем и аргументов, и местами сильно избитого бизнес-жаргона, у «сферического линейного разработчика» наверняка будет butthur идиосинкразия («WAT?? Процессы? Инновации? Менеджеры-бездельники! Фигли думать, трясти надо!»), но с точки зрения менеджмента — это самые свежие тренды. Так что наверно, в отделенном от хабра мозге мегамозге, обзору будет самое место.

Под катом будет уже краткий обзор, со ссылками на видео и прочие материалы (т.е. не бойтесь открыть страницу, видео не встроено).

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

10 докладов с AgileDays-2015 — Iteration-01

Время на прочтение16 мин
Количество просмотров6.1K
Пару недель назад в Москве прошла AgileDays-2015 — самая крупная в РФ конференция по современным методам управления в разработке.
  • Два дня, пять треков, огромные залы московского Центра Международной Торговли (не путать с WTC).
  • Темы:
    • Agile-менеджмент — от высокоуровнего управления разработкой в неповоротливых компаниях-монстрах, до «бережливого старта» в стартапах.
    • Продуктовый аспект — как не только правильно разрабатывать, а творить именно нужное и правильное.
    • Специфические вопросы процессов и технологий — тестирование и бизнес-анализ, юзабилити и проектирование.
    • Современные архитектурные практики — *DD, и даже немного о функциональном программировании.
Вращаясь в «продвинутых» кругах часто кажется, что Agile-подходы уже «захватили весь мир», и хватит уже говорить о понятном и общеизвестном. Но в реальной жизни, все конечно гораздо запущенней — есть успешная когорта «early adopters», и как видно в широко известной картинке «дилеммы инноватора», далее идет большая пропасть, и либо те, кто совсем не в курсе, либо кому про Agile «все понятно, ибо сосед-Рабинович напел». Это видно даже по ряду недавних публикаций на мегамозге. Поэтому реальный, и даже не всегда успешный, опыт от тех, кто в теме и нашел и все грабли, и кучу ништяков — очень полезен, и гораздо более актуален, чем даже книги, как правило уже устаревающие к моменту публикации. Докладчики — не евангелисты, а практики, из крупных компаний и стартапов, хотя да, были и консультанты, рассказывающие о «сгибании несгибаемого» — типа аджайлизации банков.

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

И я, как член программного комитета, заботящийся о том, чтобы докладчики донесли свои знания до всех заинтересованных, попробую сделать серию публикаций, включающих и видео доклада, аннотации и слайды, и мой очень краткий постобзор. Слона надо есть по частям — еще готово не все видео, смонтированное надо еще отсмотреть и отрефлексировать, да и большие статьи отпугивают своим объемом и читателей и писателей — стыдно признаться, что я, за несколько заходов, но так и не смог дописать за год эпический обзор 72 видеодокладов с прошлого AgileDays-2014, и даже обзор 2011 осилил только через полгода. Конечно же, обзор Agile-конференции надо делать итеративно, максимально быстро отгружая value потребителям. И, как принято в Agile, возможно даже прекратить поставки, если продукт не понравится пользователям…

Итак, смотрите и решайте — такой формат ОК или нет…

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

Интерфейсы в реальном мире (ещё примеры)

Время на прочтение10 мин
Количество просмотров140K
Обычный кран с горячей и холодной водой очень жесток к пользователю. В идеале его интерфейс решает три основные задачи:
  • Позволяет выбрать напор воды.
  • Позволяет выбрать температуру воды.
  • И защищает систему от гидравлического удара.

Вот тут вы можете узнать пару своих знакомых кранов:



А это — очень страшный автомобильный диод, по нему только вперёд:



Итак, если вам интересно продолжение про интерфейсы в реальном мире – заходите в пост. Осторожно, трафик.
Читать дальше →
Всего голосов 110: ↑105 и ↓5+100
Комментарии227

Agile с точки зрения программиста

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


Недавно наткнулся на интересную статью «Меня беспокоит Agile, и я хочу об этом поговорить». В ней рассказывается про тюнинг этого процесса с точки зрения менеджера.
Мне же захотелось описать, что такое agile для меня как программиста. Без манифестов и громких слов. И что в нем особенного по сравнению с другими методологиями.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии46

Impact Mapping на практике

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


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

Иногда заказчики писали свои цели в официальных документах к проекту. Иногда мне казалось, что я и так понимаю цели заказчика — они абсолютно очевидны. К чему уточнять очевидное? Разницу я почувствовал, когда начал применять Impact Mapping в работе.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии13

Медиацентр из MacMini и Rapsberry PI

Время на прочтение6 мин
Количество просмотров141K
Или самый простой и удобный медиацентр, понятный всем домочадцам



картнка для привлечения внимания

Привет, Хабр! С каждым днем собрать дома медиацентр становится все проще. Вариантов много – от HTPC из старого железа до безымянных устройств размером с флэшку. На хабре было много обзоров самодельных бесшумных HTPC, android-боксов и нет-топов для реализации домашних медиасерверов. Я испытал много разных вариантов, прежде чем найти самый подходящий для себя и, самое главное, для домочадцев.

Задача-минимум:
1. Собрать и структурировать всю медиатеку воедино
2. Сделать ее максимально доступной к просмотру на двух телевизорах в разных комнатах
3. Иметь возможность просмотра или загрузки (для оффлайн просмотра) фильмов из медиатеки на мобильных устройствах
4. Удаленный запуск торрентов с мобильных устройств
5. Бесшумная работа устройств.

Путем проб и ошибок, я пришел к использованию XBMC на стареньком Mac-mini + Rapsberry Pi.
Пробы, ошибки, и удобная конфигурация под катом.
Читать дальше →
Всего голосов 70: ↑61 и ↓9+52
Комментарии75

Карьера менеджера проекта vs организация

Время на прочтение17 мин
Количество просмотров67K
В предыдущей статье «Медовый месяц менеджера: как его провести с пользой» мы говорили о том как происходит назначение на позицию менеджера и что может делать новый менеджер первые месяцы работы в должности. Давайте продолжим разбираться в этой теме.

Как построить карьеру менеджера проектов?


Нужно ли расти из технического специалиста или целенаправленно, с нуля учиться на менеджера? Смогу ли я управлять коллективом, не умея выполнять задания, которые я даю своим сотрудникам? Что ждет меня через 3-5-7 лет? Что предпринять сейчас, чтобы приблизиться к собственной мечте (и какова вообще она — карьерная мечта руководителя проектов)?

Я больше 10 лет занимаюсь проектным менеджментом и такие вопросы слышу часто (да что там — задаю их и сам себе). Единственно-верных ответов, конечно, не существует, а вот собственными соображениями я поделиться могу.

Сам я давно пришел к убеждению, что ни у специалистов по кадрам, ни у тех, кто занимается проф. ориентацией, нет ответов ни на эти, ни на более конкретные вопросы. Например, «Может ли менеджер проектов перейти из сферы ИТ, скажем, в строительство?».

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

Часто работодатели не ограничиваются в вакансии требованиями к знаниям проектного управления и общему стажу, а обязательно требуют релевантный опыт (например — 5 лет в управлении разработкой сайтов или внедрения ERP и т.п.). Сами менеджеры тоже стараются строить карьеру с таким прицелом, чтобы развиваться в наиболее симпатичной области. Но это на уровне интуиции. А можно ли подвести под нее какие-либо правила?
Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии9

Информация

В рейтинге
Не участвует
Откуда
Auburndale, Massachusetts, США
Дата рождения
Зарегистрирован
Активность