Search
Write a publication
Pull to refresh
3
0.2
Павел @WebPeople

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

Send message

ДНК глазами программиста

Reading time15 min
Views93K
От переводчика: Так как я не являюсь биологом, возможны неточности в переводе терминов (и не только :). Оригинал находится здесь.

Если ты – молоток, то во всём увидишь гвоздь


Это всего лишь размышления программиста о ДНК. Я не являюсь молекулярным генетиком.

Исходный код


Находится здесь. Это не шутка. Исходники можно просмотреть с использованием замечательного набора скриптов Perl под названием "Ensembl". Геном человека занимает приблизительно 3 гигабайта, которые можно сократить до 750 мегабайт, если отбросить шелуху. Немного печалит, что это всего лишь 2.8 браузеров Mozilla Firefox.

ДНК похожа скорее не на исходники на языке C, а на байт-код для виртуальной машины под названием «ядро клетки». Крайне сомнительно, что существуют исходники, которые можно скомпилировать в этот байт-код: то, что мы видим, – это всё, что у нас есть.
Читать дальше →

Поступление в ШАД: как затащить математику

Level of difficultyMedium
Reading time9 min
Views18K

Всем привет!

Продолжаем говорить о поступлении в Школу анализа данных Яндекса, а именно про подготовку по математике. Обсудим с чего начать, что входит в программу экзамена и какие бесплатные ресурсы помогут выстроить эффективную подготовку (в статье около 50 ссылок на книги/курсы), а в конце статьи поговорим про плюсы и минусы платной подготовки

Читать далее

Kaggle — практическое изучение Big Data. Что это за платформа, и как она работает

Reading time5 min
Views24K

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

Время от времени здесь публикуются статьи с упоминанием Kaggle. Это крупнейшая международная платформа соревнований по Data Science. В организации соревнований участвуют крупные и не очень компании, а многие задачи решают реальные проблемы медицины, ИИ, разработки и т. п. 

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

Читать далее

Как стать успешным менеджером продукта: курсы, где обучают прямо сейчас

Reading time8 min
Views42K
Сегодня сложно представить себе стартап или любой IT-бизнес без менеджера продукта. И как только находили общий язык разработчики и клиенты, когда не было менеджеров по продукту?
Как в случае со многими руководящими позициями, этой профессии сложно научиться с нуля — к ней ведёт долгий карьерный путь, изучение множества аспектов о сфере и самой компании.

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

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

CBLT — безопасный, быстрый и минималистичный веб-сервер на языке программирования Rust

Level of difficultyMedium
Reading time5 min
Views7.8K

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

Чтобы погрузиться сильнее в язык, вместо пет-проекта я начинаю писать свои библиотеки для работы с базами данных (ORM), JSON, акторами, MVC веб-фреймворком, логированием и т.д. Библиотеки, которые вряд ли будут кому-то нужны, но они помогут мне лучше понять язык программирования. На удивление, с языком Rust я добрался до написания своего веб-сервера. Раньше такого не было. Думаю, это из-за того, что Rust — это язык системного программирования и грех на нём не попробовать заняться оптимизацией перформанса.

В итоге я столкнулся с тем, что Rust не имеет аналогов Nginx, Lighttpd, Caddy, HAProxy, Apache, Tomcat, Jetty и т.д. Все эти веб-сервера написаны на C, Go, Java и т.д. Имеются только веб-фреймворки: Actix, Axum, Rocket, Hyper и т.д.

В целом я прикинул, что обычно я использую Nginx для следующих целей:

1. TLS для доменов

2. Проксирование запросов на бэкэнд

3. Раздача статических файлов

В итоге решил написать свою реализацию веб-сервера на Rust.

Читать далее

Boson — разработка СУБД «с нуля» (итог)

Level of difficultyMedium
Reading time11 min
Views5.3K

Цель проекта Boson — это разработка встроенного движка базы данных документов JSON, написанный на C++. Основные возможности: стандартное хранилище JSON-документов в формате ключ/значениями с постоянным хранением на диске. Размер документов до 4Gb. Быстрый поиск документов по ID с использованием индекса B+ дерева. Поддержка курсоров для линейного обхода записей. База данных в одном файле, без временных файлов. Простое, чистое и легкое в использовании API. Самодостаточный и не требующий настройки.

В предыдущих двух статьях мы прошли шаги от кэширования файлового ввода/вода (часть I) до построенного на его базе хранилища записей произвольной длины (часть II) с проверкой целостности, возможностью получения записей списком и повторным использованием свободного места. Теперь мы переходим к завершающей части и "сердцу" СУБД - индексу.

Зачем нужен индекс: предположим, что в базе есть 1 млрд не отсортированных записей документов, тогда поиск конкретного документа по ID потребует O(n) операций, то есть до 1 млрд операций в худшем случае. Однако, если бы документы в базе были бы отсортированы по ID, то поиск в сортированной базе, тем же бинарным поиском занял бы O(log n) занял бы 30 операций. Что, теоретически, на базе в 1 млрд записей будет в 33.3 млн раз быстрее.

Читать далее

Выбираем BI платформу для начинающего специалиста

Level of difficultyEasy
Reading time4 min
Views12K

Привет! Я работаю аналитиком данных в IT компании и только начинаю писать статьи на habr. Как и все когда-то я только начинала входить в IT и не понимала, что мне необходимо знать. Эта статья поможет тем кто находится в поисках подходящей BI платформы для изучения.

Читать далее

UML для всех: почему бы не описать проект на языке диаграмм?

Level of difficultyEasy
Reading time6 min
Views8.4K

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

Читать далее

Синтез цифровых схем: что почитать при любом уровне подготовки

Level of difficultyEasy
Reading time7 min
Views15K

Осенью стартовал новый поток Школы синтеза цифровых схем — нашей бесплатной образовательной программы о современных приемах проектирования цифровых микросхем. От серийных ASIC и микропроцессоров общего назначения до реконфигурируемых FPGA и специализированных вычислителей. По этим и связанным темам выпущено немало профессиональной литературы. Мы попросили преподавателей Школы — Юрия Панчула и Александра Рябова — выбрать книги, которые помогут при обучении в школе и самостоятельном освоении синтеза цифровых схем.

Читать далее

Анонимный мессенджер — обязательный стандарт для каждого человека

Reading time8 min
Views68K


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

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

Поэтому анонимное средство коммуникаций с надёжным шифрованием — это обязательный стандарт для нормального человека. Телеграм с секретными чатами — не самый лучший вариант. Чтобы гарантировать подобие анонимности, там нужно совершить ряд необязательных действий, включая покупку виртуального номера за TON'ы (сначала нужно купить эти TON'ы, что тоже нетривиальная процедура).

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

Книга: «Математика для Data Science. Управляем данными с помощью линейной алгебры, теории вероятностей и статистики»

Reading time6 min
Views16K
image Привет, Хаброжители!

Растущая доступность данных привела к тому, что data science и машинное обучение стали востребованными профессиональными областями. Если вы стремитесь сделать карьеру в области data science, искусственного интеллекта или инженерии данных, вам просто необходимо разбираться в основах теории вероятностей, линейной алгебры, математической статистики и машинного обучения. Автор включил в книгу ровно столько высшей математики, математического анализа и статистики, сколько нужно, чтобы лучше понимать, как работают библиотеки, с которыми вы встретитесь.
Читать дальше →

Уже не джун, но знаний нужно всё больше. Как самостоятельно учиться сложным вещам

Reading time6 min
Views12K

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

Один из важных моментов — это мышление роста, который подразумевает замену убеждения «я плох в X» на «я еще не узнал о X». Конечно, позитивный настрой помогает, но, одного его явно недостаточно, особенно на длинной дистанции. Обучение — это навык, над которым нужно упорно работать. Под катом разработчик и автор Джулия Эванс рассмотрит конкретные приемы, которые помогут вам стать более эффективным учеником. В частности — как превращать свое незнание в конкретные вопросы, которые приведут к решению задач и получению новых знаний.

Читать далее

Полный гайд о стиле для IT-специалистов: как выглядеть актуально и чувствовать себя комфортно

Level of difficultyEasy
Reading time7 min
Views49K

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

Читать далее

Кейс: Как боты из Директа накликали 10000р. по скрытым ссылкам

Level of difficultyMedium
Reading time5 min
Views9.4K

В этой статье я продемонстрирую ботов, которые совершают конверсии. Покажу как нейронка Яндекса на них обучается, мы увидим как Директ списывает цену за конверсию, совершенную ботом. На кейс я потратил примерно 10000 рублей - все эти 10000 рублей съели боты.

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

Читать далее

Рекрутеры — паразиты? Отказ на свою же должность в IT

Level of difficultyEasy
Reading time5 min
Views112K

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

Читать далее

Ждет ли безработица ИТ-сектор России

Level of difficultyEasy
Reading time2 min
Views65K

Плохие новости для тех, кто думает что «поймал Бога за бороду» выбрав в качестве профессии одну из ИТ специальностей. Индекс HH.ru для профобласти ИТ впервые держится выше значения 8 второй месяц подряд. 

Читать далее

Выживание в суровой среде

Level of difficultyMedium
Reading time16 min
Views16K
Картинка Freepik

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

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

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

Дорожная карта теории вероятностей для собеседований, ШАД и олимпиад

Level of difficultyEasy
Reading time5 min
Views14K

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

Читать далее

Как вернуть энергию и интерес

Reading time34 min
Views40K

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

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

Читать далее

Information

Rating
4,130-th
Location
Россия
Date of birth
Registered
Activity

Specialization

Project Manager, Product Manager
Senior