Обновить
3
0
Павел@WebPeople

Менеджер проектов

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

Зачем я использую контейнеры как виртуалки: опыт python-разработчика

Время на прочтение12 мин
Охват и читатели6.1K

Привет, я Денис, python-разработчик в Cloud.ru. Последние три года я работаю с продуктами на базе компонентов OpenStack — для этого нужны разнообразные навыки и знания способов администрирования и разработки в среде Linux. За это время я убедился — мне не хватает уже существующих способов отладки, доставки кода, подключения к prod- и dev-стендам. Поэтому решил придумать свой.

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

Читать дальше

Простая защита скрипта на Python

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели12K

Стек: Python 3.11.7, ntplib, subprocess, getpass для времени, системы, пароля,

PyArmor 8+ для обфускации.

Сценарий: Разработано приложение, которое дает преимущество перед конкурентами, или ваш код содержит конфиденциальные данные. Приложение предстоит установить нескольким сотрудникам (можно увеличить количество немного изменив подход), при этом вы не планируете переносить часть логики на сервер.

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

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

Читать далее

С чего начинать на новом месте (памятка для Руководителя проектов)

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

Каждый РП рано или поздно меняет работу. Вы уходите со старого места, где вы уже хорошо ориентируетесь, и приходите в неизвестность:

- неизвестный проект с неизвестными рисками;

- непонятный руководитель (при первом знакомстве он душка, но какой будет в реале?);

- непонятные коллеги;

- непонятный заказчик.

Причем, как правило, проект, который вам отдают, уже несется на всех парах: команда пашет, заказчик чего-то хочет, у нового руководителя какие-то ожидания. И хорошо, если все так просто. А часто случается, что проект уже летит в бездну, бюджет израсходован, заказчик всех ненавидит, а руководство ждет от вас сдачи на следующей неделе (да, такие случаи тоже бывали 😊).

Это очередная статья о том, чего не рассказывают на курсах РП: о тех самых софт-скиллах, которые потребуются Руководителю проектов с самого первого дня работы. Если вам интересны такие истории, читайте другие мои статьи на Хабре и подписывайтесь на мой ТГ канал "Морковка спереди, морковка сзади".

Выглядит так, что РП, выходящий на новую работу, как пассажир, который пытается запрыгнуть в поезд на ходу, чтобы потом добраться до головы состава и начать им управлять. И чем быстрее летит поезд – тем сложнее в него запрыгнуть. Ну и на все про все у вас примерно 2 недели. 4 от силы, если место ванильное, и поезд еще не разогнался.

Как не свернуть шею и не попасть под колеса на этом славном пути – по пунктам ниже

Читать далее

Как собрать и запитать радиопередатчик из хлама (консервных банок и проволоки) для передачи сигнала SOS

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели38K
Картинка Cmglee, Freepik image_1, Freepik image_2, Youtube-канал «Thomas Durant»

Меня всегда привлекали способы «собрать что-либо из ничего» и сегодня рассмотрим один из них — «выживальщик со стажем», во мне не даёт покоя :-).

Предположим, что вы молодой и перспективный владелец бизнес-империи и зовут вас Ларго Винч каким-то образом попали на необитаемый остров — потерпев крушение или иным способом — например, вас удерживают там «злые дядьки-мафиозники».

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

Одним из наиболее сложных (так как требует определённых технологических приспособлений) и в то же время одним из наиболее перспективных, ввиду своей дальности действия, является радиосвязь. Попробуем прикинуть — как нам это реализовать, не имея под рукой в буквальном смысле почти ничего!
Читать дальше →

Компьютерное зрение на C++: пишем приложение для поиска объектов под Android

Уровень сложностиСредний
Время на прочтение25 мин
Охват и читатели11K

Привет, Хабр! Меня зовут Кирилл Колодяжный, я пишу код на С++ для систем хранения данных в YADRO. Помимо основной работы, интересуюсь машинным обучением и его возможностями, в том числе на «плюсах». Недавно мне стало интересно разобраться, как развернуть модель компьютерного зрения на мобильном устройстве с операционной системой Android.

 Я изучил доступные инструменты, чтобы понять, какие части приложения можно реализовать на С++, и написать само приложение для телефона. Ни в одном из материалов на подобную тему не описывают реализацию такого приложения от начала до конца, поэтому я собрал свой опыт в серию статей.

Расскажу, как реализовать обнаружение объектов в реальном времени с помощью камеры на мобильной платформе Android с использованием библиотек PyTorch и NCNN и моделей компьютерного зрения YOLOv5 и YOLOv4. Шаблон моего приложения пригодится тем, кто хочет проверить прототип функциональности для компьютерного зрения на С++, использующий OpenCV на Android, но не хочет глубоко погружаться в программирование под Android. 

В первой части цикла мы:

• создадим проект в IDE Android Studio,

• реализуем сессию непрерывного захвата изображений камеры,

• преобразуем изображения в матрицу OpenCV, чтобы сделать дальнейшую работу удобной.

Читать далее

Построим GPT: с нуля и шаг за шагом

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели17K

В этой статье я построил GPT архитектуру на данных из произведений Шекспира и получил достаточно впечатляющие результаты.

Читать далее

Распределение IQ: как программисту выживать в мире, рассчитанном на дураков?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели33K

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

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

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

Читать далее

Как успеть сделать то, что другие отложат на следующий год

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели13K

Если планируете начать новую жизнь с понедельника, у меня для вас новости: понедельников осталось всего 12. 

Еще немного и можно будет снова обещать себе начать ходить в зал и найти работу получше. Прежде, чем это произойдет, позвольте задать вопрос: почему бы не использовать оставшиеся недели, чтобы действительно изменить что-то в своей жизни?

Читать далее

Как правильно разговаривать с вашим руководителем? (памятка Руководителю проектов

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K

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

Когда у вас проблемы на проекте, вам хочется прийти к руководителю, выговориться, пожаловаться, чтобы похвалили и сказали, что надо делать. И лучше, чтобы не по телефону, а лично. Если у вас такое было или есть (у меня было, знаю, о чем пишу), знайте: это нормальная человеческая реакция – в сложный момент хочется поддержки, выговориться, обняться и порыдать - но это непрофессиональная реакция. Вы не на сеансе у психолога, вы на работе. Здесь не платят за "послушать, обнять и принять".

Вам придется научиться формулировать вашу проблему определенным образом, чтобы получать результат. Как это делать - под катом.

Это очередная статья о том, чего не расскажут на курсах РП: о тех самых софт-скиллах, которые потребуются Руководителю проектов с самого первого дня работы. Если вам интересны такие истории, читайте другие мои статьи на Хабре и подписывайтесь на мой ТГ канал "Морковка спереди, морковка сзади".

Читать далее

Рейтинг инструментов BPMN

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели28K

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

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

В конце статьи вы найдете сводную таблицу со всеми инструментами.

Читать далее

Как дедуля Сунь-Цзы помогает в переговорах

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели8.8K

Мой папа всегда был увлечён Китаем и китайской культурой. Например, когда мне было 16 лет, он ненавязчиво заменял журналы «Cool Girl» (Журнал для настоящих девчонок!) и «Все звёзды» (12 постеров и 2 суперпостера внутри!) на классические произведения китайской литературы. 

Одной из подложенных папой книг был древнекитайский трактат Сунь-Цзы под названием «Искусство войны». Это небольшое по объёму, но плотное по панчам произведение, в котором мысли и рекомендации автора изложены в афористичной манере. Как будто на обложке Esquire Сунь-Цзы в бежевом кашемировом свитере и твидовых брюках-чинос, а внутри — «25 правил жизни китайского полководца».

Когда мне было 18 лет, бормоча про себя цитату «Война — это путь обмана», мне удалось: уговорить маму отпустить ночевать на дачу к одногруппникам, убедить, что чёрный оверсайз балахон — это модно и нарядно, и доказать родителям, что ещё одна собака дома — это не псарня, а гармоничный комплект. 

А теперь перейдём от моего папы и его псарни к рассказу о том, зачем мудрость Сунь-Цзы нужна именно вам.

Читать далее

Чек-лист: выбираем разговорный клуб, в котором захочется остаться

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели3.9K

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

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

Читать далее

Писать код для компьютеров сложно, ещё сложнее — писать код для людей

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели10K

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

А теперь немного усложним задачу. Будем писать код для людей!

Объясню, что я имею в виду: я говорю о коде, с которым смогут взаимодействовать другие люди. В частности, я имею в виду искусство создания удобных фреймворков, библиотек, API, SDK, DSL, встроенных DSL или даже языков программирования.

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

Ричард Фейнман как-то сказал: «Представьте, насколько сложнее была бы физика, если бы электроны имели чувства». Он говорил это в другом контексте, но мне кажется, это частично описывает и программирование для людей. У человека, интерпретирующего твой код, есть чувства!

Давайте поговорим о том, как упростить ему задачу.
Читать дальше →

Что показывает ваш мультиметр (напряжение или погоду на Марсе)?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели13K


До тех пор, пока в вашем хозяйстве имеется единственный мультиметр, у вас не возникает никаких проблем — в ваших устройствах присутствует именно то напряжение, которое он показывает (смайл). Но как только у вас появляется два или больше мультиметров, немедленно встаёт вопрос: кому из них можно верить, а кто откровенно врёт при каждом измерении (и насколько и в какую сторону)?

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

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

Обо всём этом мы и поговорим далее, а заодно я поделюсь впечатлениями о мультиметрах, которые приняли участие в этом исследовании.
Читать дальше →

Как превратить дейли из утренней пытки в эффективный инструмент

Время на прочтение4 мин
Охват и читатели9K

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

Что с ними не так? Предлагаю разобраться в причинах и следствиях.

Читать далее

Как написать свой небольшой парсер на Python?

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели10K

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

Читать далее

Железо или архитектура? Два направления книг по схемотехнике для начинающих

Время на прочтение5 мин
Охват и читатели11K

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

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

Читать далее

Уникальные стили визуализации данных в Python: от Cyberpunk до элегантности

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели18K

Необычные стили для визуализации данных на Python: от киберпанка до эстетики. В статье рассмотрены 5 малоизвестных стилей для визуализации данных и создания дашбордов.

Читать далее

0! = 1? или почему факториал нуля равен единице

Время на прочтение2 мин
Охват и читатели260K
Давным давно, еще в классе 10-ом (лет 8 назад) я случайно обнаружил довольно нехитрое объяснение того, почему факториал нуля равен единице.

Я рассказывал про это многим учителям, но никого не торкнуло. Поэтому я просто выложу это знание здесь, а то вдруг кому-то пригодится или наведет на определенные мысли. Сразу скажу я не математик, наткнулся на это случайно, когда игрался с числами. Я тогда даже не знал что такое факториал :)
Перейдем к делу!

От Gantt до WBS: Ключевые термины в Проджект-Менеджменте

Уровень сложностиПростой
Время на прочтение18 мин
Охват и читатели2.9K

Это серия из трёх статей, предназначенных для новичков в IT, для тех, кто находится в процессе перехода в IT или только планируют сменить нишу.

Здесь будут собраны базовые термины из IT-индустрии, которые стоит знать начинающим Проджект и Продакт Менеджерам, Продукт-Овнерам, а также тем, кто ещё не определился со своей ролью.

В конце статьи оставил ссылки на 2 другие статьи из серии.

Читать далее

Информация

В рейтинге
5 788-й
Откуда
Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Менеджер проекта, Менеджер продукта
Старший