Процесс документирования архитектуры программного обеспечения может показаться пугающим. Но на самом деле достаточно всего 5 диаграмм, чтобы объяснить структуру вашей системы практически любому.
Product Manager
Zip-файлы: история, объяснение и реализация
Мне давно было интересно, как сжимаются данные, в том числе в Zip-файлах. Однажды я решил удовлетворить своё любопытство: узнать, как работает сжатие, и написать собственную Zip-программу. Реализация превратилась в захватывающее упражнение в программировании. Получаешь огромное удовольствие от создания отлаженной машины, которая берёт данные, перекладывает их биты в более эффективное представление, а затем собирает обратно. Надеюсь, вам тоже будет интересно об этом читать.
В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Нет клещам! Растения против переносчиков болезни Лайма
Полезные инструменты Python
Когда вы только начинаете учить Python, кто-то объясняет вам, что вы можете добавить свою папку с исходниками в переменную среды PYTHONPATH и тогда ваш код можно будет импортировать из других директорий. Очень часто объясняющий забывает сказать, что в большинстве случаев – это плохая идея. Некоторые люди узнают это в интернете, другие просто понимают на собственном опыте. Но слишком большое количество людей (особенно неопытные программисты), думают, что других альтернатив быть не может.
Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы
В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
Прорабатываем навык использования группировки и визуализации данных в Python
Привет, Хабр!
Сегодня будем прорабатывать навык использования средств группирования и визуализации данных в Python. В предоставленном датасете на Github проанализируем несколько характеристик и построим набор визуализаций.
По традиции, в начале, определим цели:
- Сгруппировать данные по полу и году и визуализировать общую динамику рождаемости обоих полов;
- Найти самые популярные имена за всю историю;
- Разбить весь временной промежуток в данных на 10 частей и для каждой найти самое популярное имя каждого пола. Для каждого найденного имени визуализировать его динамику за все время;
- Для каждого года рассчитать сколько имен покрывает 50% людей и визуализировать (мы увидим разнообразие имен за каждый год);
- Выбрать 4 года из всего промежутка и отобразить для каждого года распределение по первой букве в имени и по последней букве в имени;
- Составить список из нескольких известных людей (президенты, певцы, актеры, киногерои) и оценить их влияние на динамику имен. Построить наглядную визуализацию.
Меньше слов, больше кода!
И, поехали.
Открытый курс «Deep Learning на пальцах»
После 18-го февраля начнется открытый и бесплатный курс "Deep Learning на пальцах".
Курс предназначен для того, чтобы разобраться с современным deep learning с нуля, и не требует знаний ни нейросетей, ни machine learning вообще. Лекции стримами на Youtube, задания на Питоне, обсуждения и помощь в лучших русскоязычных DS-сообществах — ODS.ai и ClosedCircles.
После него вы не станете экспертом, но поймете про что все это, сможете применять DL на практике и будете способны разбираться дальше сами. Ну, в лучшем случае.
Одновременно и в том же объеме курс будет читаться для магистрантов Новосибирского Государственного Университета, а также студентов CS центра Новосибирска.
Выглядеть объяснение на пальцах будет примерно так:
Главная ссылка — dlcourse.ai. Подробности ниже.
Курс о Deep Learning на пальцах
Курс не претендует на полноту, скорее это способ поиграться руками с основными областями, где deep learning устоялся как практический инструмент, и получить достаточную базу, чтобы свободно читать и понимать современные статьи.
Материалы курса были опробованы на студентах кафедры АФТИ Новосибирского Государственного Университета, поэтому есть шанс, что по ним действительно можно чему-то научиться.
Как правильно чистить лук, или Почему разработка ПО выходит из-под контроля
Вы придумали стартап и с самыми лучшими намерениями нанимаете разработчика для реализации своей идеи. Но идет неделя за неделей, а приложение по-прежнему нуждается в доработке. Как-то незаметно появляются новые функции, и масштаб задачи понемногу расширяется.
Складывается ощущение, что проект зажил собственной жизнью и пытается сожрать вас.
Как так случилось? Может, наняли плохого разработчика? Кто-то ошибся в планировании проекта? А вдруг сама идея проекта была ужасной?
Возможно. Но часто проект бывает с самого начала обречен на провал из-за недопонимания одного важного момента.
Мы предполагаем, что продукт определяется набором функций, записанных на листочке бумаги: иногда что-то добавляется, иногда убирается — но масштаб проекта всегда будто бы можно понять с одного взгляда.
Это предположение — неверно.
Проект — это не лист бумаги, не двумерный объект — у него есть глубина.
Каждую функцию на поверхности можно раскрыть — и так слой за слоем. Будь у меня склонность к громким заголовкам, я бы сказал, что всякое приложение — это лук, и нужно уметь правильно его чистить. Не очень понятно? Тогда давайте я поясню, что имеется в виду, и расскажу, почему не получается раскрывать слои приложения без слёз.
Переведено в Alconost
Видеопост: спутник Сатурна, кубик в кубе и инопланетный летающий кит
У нас накопилась новая порция интересных видеороликов, которыми мы хотели бы с вами поделиться.
Новое слово в гонках
Компания Hankook Tire совместно с Университетом Пфорцхайма (Pforzheim), Германия, создали замечательный ролик, иллюстрирующий идею концепта адаптивных даже не покрышек, а назовём это «колёсными системами».
Фанат перемонтировал «Чужого» и «Прометея» в один фильм
Видео уже потёрли копирасты. Скачать файл можно тут (ссылка из комментов) или на торренте с субтитрами
Русские субтитры к фильму отдельно (22.07.15 — обновлено)
Фильм создан путём сокращения материала «Прометея» на полчаса, вместо которого был добавлен почти час материалов из «Чужого» 1979 г. В «Заброшенном» также использованы и удалённые сцены из «Прометея». Чтобы сгладить контраст картинки фильма почти 40-летней давности с картиной 2012 года, он сделал «Заброшенного» чёрно-белым.
Стендапы в стиле Kanban
Всё началось, когда летом 2014 года в Москве мы с Асхатом шли на тренинг и он обратил моё внимание на разницу между стендапами в Scrum и Kanban. До этого я не придавал особого значения таким нюансам. У нас в компании для части проектов используется Kanban, но стиль стендапов остался от Scrum'а.
Сейчас мы поменяли подход к стендапам, об этом я расскажу дальше, покажу разницу между тем, что было и тем, что стало. В конце статьи есть ссылки для более глубокого погружения в тему с описанием разных мнений и нюансов.
Moscow Atlassian Meetup в Москве 21 апреля
Во вторник, 21 апреля, Mail.Ru Group организует первый Moscow Atlassian Meetup. В офисе компании соберутся эксперты в области организации общения с пользователями и управления проектами. В программе события — доклады по продуктам Atlassian (JIRA, Confluence и другим), а после — их обсуждение и общение единомышленников в свободной обстановке.
LeanKanban-2014 — обзор конференции и видео докладов
Два трека, пара десятков докладов от приглашенных западных гуру и известных наших, как консультантов, так и живых топ-менеджеров. Собственно видео я снял и опубликовал оперативно, через неделю, но только сейчас дошли руки, что бы отсмотреть и написать краткий обзор, чтобы соориентировать и рекомендовать потенциальному зрителю именно то, что ему нужно.
Как обычно, мои видео — монтаж с нескольких камер и экрана, звук с микрофона, версии с английским и русским переводом, и все взбодрено, для быстрого и динамичного просмотра. Для ощущения атмосферы всего этого — вот минутный ролик о конференции, без особых спойлеров.
Конференция чисто менеджерская, от поднимаемых тем и аргументов, и местами сильно избитого бизнес-жаргона, у «сферического линейного разработчика» наверняка будет
Под катом будет уже краткий обзор, со ссылками на видео и прочие материалы (т.е. не бойтесь открыть страницу, видео не встроено).
10 докладов с AgileDays-2015 — Iteration-01
- Два дня, пять треков, огромные залы московского Центра Международной Торговли (не путать с WTC).
- Темы:
- Agile-менеджмент — от высокоуровнего управления разработкой в неповоротливых компаниях-монстрах, до «бережливого старта» в стартапах.
- Продуктовый аспект — как не только правильно разрабатывать, а творить именно нужное и правильное.
- Специфические вопросы процессов и технологий — тестирование и бизнес-анализ, юзабилити и проектирование.
- Современные архитектурные практики — *DD, и даже немного о функциональном программировании.
Там было круто — вы многое пропустили, если вас там не было. Но. Видеозаписи и прочие материалы докладов публикуются и будут доступны всем. Запись моя, добротная, все как обычно — монтаж, несколько камер, экран, звук с микрофона, технологии оживления.
И я, как член программного комитета, заботящийся о том, чтобы докладчики донесли свои знания до всех заинтересованных, попробую сделать серию публикаций, включающих и видео доклада, аннотации и слайды, и мой очень краткий постобзор. Слона надо есть по частям — еще готово не все видео, смонтированное надо еще отсмотреть и отрефлексировать, да и большие статьи отпугивают своим объемом и читателей и писателей — стыдно признаться, что я, за несколько заходов, но так и не смог дописать за год эпический обзор 72 видеодокладов с прошлого AgileDays-2014, и даже обзор 2011 осилил только через полгода. Конечно же, обзор Agile-конференции надо делать итеративно, максимально быстро отгружая value потребителям. И, как принято в Agile, возможно даже прекратить поставки, если продукт не понравится пользователям…
Итак, смотрите и решайте — такой формат ОК или нет…
Интерфейсы в реальном мире (ещё примеры)
- Позволяет выбрать напор воды.
- Позволяет выбрать температуру воды.
- И защищает систему от гидравлического удара.
Вот тут вы можете узнать пару своих знакомых кранов:
А это — очень страшный автомобильный диод, по нему только вперёд:
Итак, если вам интересно продолжение про интерфейсы в реальном мире – заходите в пост. Осторожно, трафик.
Agile с точки зрения программиста
Недавно наткнулся на интересную статью «Меня беспокоит Agile, и я хочу об этом поговорить». В ней рассказывается про тюнинг этого процесса с точки зрения менеджера.
Мне же захотелось описать, что такое agile для меня как программиста. Без манифестов и громких слов. И что в нем особенного по сравнению с другими методологиями.
Impact Mapping на практике
Когда читал книгу Impact Mapping первый раз, у меня было желание бросить её на середине. Всё, что там написано, слишком очевидно. Я нашел в себе силы и дочитал, благо книга коротная и с большими картинками. Как в последствии выяснилось, вся соль была в том, что все эти очевидные и простые практики из книги я не применял в своей работе.
Иногда заказчики писали свои цели в официальных документах к проекту. Иногда мне казалось, что я и так понимаю цели заказчика — они абсолютно очевидны. К чему уточнять очевидное? Разницу я почувствовал, когда начал применять Impact Mapping в работе.
Медиацентр из MacMini и Rapsberry PI
Или самый простой и удобный медиацентр, понятный всем домочадцам
картнка для привлечения внимания
Привет, Хабр! С каждым днем собрать дома медиацентр становится все проще. Вариантов много – от HTPC из старого железа до безымянных устройств размером с флэшку. На хабре было много обзоров самодельных бесшумных HTPC, android-боксов и нет-топов для реализации домашних медиасерверов. Я испытал много разных вариантов, прежде чем найти самый подходящий для себя и, самое главное, для домочадцев.
Задача-минимум:
1. Собрать и структурировать всю медиатеку воедино
2. Сделать ее максимально доступной к просмотру на двух телевизорах в разных комнатах
3. Иметь возможность просмотра или загрузки (для оффлайн просмотра) фильмов из медиатеки на мобильных устройствах
4. Удаленный запуск торрентов с мобильных устройств
5. Бесшумная работа устройств.
Путем проб и ошибок, я пришел к использованию XBMC на стареньком Mac-mini + Rapsberry Pi.
Пробы, ошибки, и удобная конфигурация под катом.
Карьера менеджера проекта vs организация
Как построить карьеру менеджера проектов?
Нужно ли расти из технического специалиста или целенаправленно, с нуля учиться на менеджера? Смогу ли я управлять коллективом, не умея выполнять задания, которые я даю своим сотрудникам? Что ждет меня через 3-5-7 лет? Что предпринять сейчас, чтобы приблизиться к собственной мечте (и какова вообще она — карьерная мечта руководителя проектов)?
Я больше 10 лет занимаюсь проектным менеджментом и такие вопросы слышу часто (да что там — задаю их и сам себе). Единственно-верных ответов, конечно, не существует, а вот собственными соображениями я поделиться могу.
Сам я давно пришел к убеждению, что ни у специалистов по кадрам, ни у тех, кто занимается проф. ориентацией, нет ответов ни на эти, ни на более конкретные вопросы. Например, «Может ли менеджер проектов перейти из сферы ИТ, скажем, в строительство?».
Мы знаем, примеры есть. Однако, когда и почему такие переходы оказываются успешны — ответить затрудняемся.
Часто работодатели не ограничиваются в вакансии требованиями к знаниям проектного управления и общему стажу, а обязательно требуют релевантный опыт (например — 5 лет в управлении разработкой сайтов или внедрения ERP и т.п.). Сами менеджеры тоже стараются строить карьеру с таким прицелом, чтобы развиваться в наиболее симпатичной области. Но это на уровне интуиции. А можно ли подвести под нее какие-либо правила?
Информация
- В рейтинге
- Не участвует
- Откуда
- Auburndale, Massachusetts, США
- Дата рождения
- Зарегистрирован
- Активность