Pull to refresh
10
0
Ziyodulla Baykhanov @ziyodulla-baykhanov

User

Send message

Миграция данных в кровавом энтерпрайзе: что анализировать, чтобы не завалить проект

Reading time14 min
Views13K


Типичный проект системной интеграции для нас выглядит так: у заказчика вагон систем для учета клиентов, задача — собрать клиентские карточки в единую базу. И не только собрать, а еще очистить от дублей и мусора. Чтобы на выходе получились чистые, структурированные, полные карточки клиентов.

Для начинающих поясню, что миграция идет по такой схеме: источники → преобразование данных (отвечает ETL или шина) → приемник.

На одном проекте мы потеряли три месяца просто потому, что сторонняя команда интеграторов не изучала данные в системах-источниках. Самое обидное, что этого можно было избежать.
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments26

Поиск секретов в программном коде (по энтропии)

Reading time3 min
Views2.4K
Недавно в открытом доступе появился новый инструмент для поиска приватной информации в открытом коде. Это Entropy — утилита командной строки, которая сканирует кодовую базу на предмет строк с высокой энтропией. Предположительно, такие строки могут содержать секретную информацию: токены, пароли и др.

Подход логичный. Пароли и токены — это по определению строки с высокой энтропией, поскольку они создаются с помощью генераторов случайных или псевдослучайных чисел. Символы в такой последовательности в идеале непредсказуемы.
Читать дальше →
Total votes 7: ↑6 and ↓1+12
Comments4

Telegram Mini App. Как создать Web App с нуля

Level of difficultyHard
Reading time13 min
Views32K

Mini Apps (или же WebApps) - это относительно новый и удобный способ добавления веб приложения прямо в интерфейсе приложения Telegram. Используя JavaScript, становится возможным создавать бесконечное множество интерфейсов, которые смогут заменить полноценный веб-сайт.

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

И сегодня мы попробуем создать miniapp приложение, взаимодействующее с данными пользователя.

Приступим

Читать далее
Total votes 19: ↑18 and ↓1+21
Comments11

Поиск секретов в программном коде (по энтропии)

Reading time3 min
Views3.2K
Недавно в открытом доступе появился новый инструмент для поиска приватной информации в открытом коде. Это Entropy — утилита командной строки, которая сканирует кодовую базу на предмет строк с высокой энтропией. Предположительно, такие строки могут содержать секретную информацию: токены, пароли и др.

Подход логичный. Пароли и токены — это по определению строки с высокой энтропией, поскольку они создаются с помощью генераторов случайных или псевдослучайных чисел. Символы в такой последовательности в идеале непредсказуемы.
Читать дальше →
Total votes 13: ↑12 and ↓1+17
Comments3

Как проходить онбординг? С точки зрения работника

Level of difficultyEasy
Reading time4 min
Views13K

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

Читать далее
Total votes 22: ↑17 and ↓5+18
Comments13

Краткий экскурс в работу мозга: знания для повышения эффективности

Level of difficultyEasy
Reading time7 min
Views4.6K

Здравствуй, читатель! Этой статьей я не хочу тебя сильно грузить. Не буду рассказывать про то, как устроены нейроны, как проявляются наши эмоции через нейромедиаторы и синапсы, про каждую часть головного мозга в отдельности. Тебя как человека, который сознательно хочет развиваться, не надо утомлять лишней информацией. Поэтому расскажу про главное - алгоритм работы и три мозга (системы) внутри одного. Еще, пожалуй, коснемся того, что такое энергия и как она расходуется при функционировании нашей природной операционной системы.

Читать далее
Total votes 21: ↑19 and ↓2+23
Comments8

Zen of Python: история, реализация и пасхалки

Level of difficultyEasy
Reading time6 min
Views7.9K

В мире программирования на Python существует особая философия, представляющая собой специальный документ под названием Zen of Python (Дзен Python). Он включает принципы, направленные на написание ясного, простого и элегантного кода на Python. В этой статье мы поговорим об истории создания этого документа, его реализации и пасхалках, связанных с ним.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments5

Открытый курс машинного обучения. Тема 1. Первичный анализ данных с Pandas

Level of difficultyEasy
Reading time15 min
Views1M


Открытый курс машинного обучения mlcourse.ai сообщества OpenDataScience – это сбалансированный по теории и практике курс, дающий как знания, так и навыки (необходимые, но не достаточные) машинного обучения уровня Junior Data Scientist. Нечасто встретите и подробное описание математики, стоящей за используемыми алгоритмами, и соревнования Kaggle Inclass, и примеры бизнес-применения машинного обучения в одном курсе. С 2017 по 2019 годы Юрий Кашницкий yorko и большая команда ODS проводили живые запуски курса дважды в год – с домашними заданиями, соревнованиями и общим рейтингом учаcтников (имена героев запечатлены тут). Сейчас курс в режиме самостоятельного прохождения.

Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments61

Как создать свой стикер пак с помощью нейросети Stable Diffusion

Level of difficultyEasy
Reading time9 min
Views21K

Вы знали, что не обязательно быть дизайнером, чтобы создать свой красивый пак стикеров?

Сегодня я поведаю историю создания своего стикерпака из 20+ стикеров с моим персонажем по имени Эвелинн с помощью нейросетей. Вам не понадобится мощная видеокарта и даже Photoshop(в большинстве случаев): я покажу, как сделать всё это прямиком в браузере. Это простой, доступный и бесплатный способ создания уникальных стикеров, справится даже чайник, надеюсь, он уже закипел, приступим!

Читать далее
Total votes 32: ↑31 and ↓1+37
Comments14

Со дня на день ожидается взрыв новой звезды, который будет видно невооружённым глазом

Level of difficultyEasy
Reading time4 min
Views100K

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

Эта звёздная система называется T. Coronae Borealis, она также известна как Пылающая звезда, и большую часть времени она слишком тусклая, чтобы быть видимой невооружённым глазом. Но примерно раз в 80 лет сильный термоядерный взрыв делает её ярче более чем в 10 000 раз. В последний раз это произошло в 1946 году, так что теперь настала наша очередь увидеть его.

Читать далее
Total votes 69: ↑58 and ↓11+66
Comments178

Беда «войти в айти» или курсы тестировщика отзывы: Сколько студентов на самом деле находит работу после Skillbox

Level of difficultyEasy
Reading time10 min
Views42K

В 2021 году я начал масштабное исследование трудоустройства 400 QA-студентов более десятка различных курсов. Исследование получилось настолько длинным, что превратилось в дюжину хабр-статей с 500'000 просмотрами, а некоторые из его участников успели пройти путь от "какой курс посоветуете?" до "поздравьте, мне предложили позицию сеньора".

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

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

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

Читать далее
Total votes 42: ↑34 and ↓8+37
Comments143

Что нового в планировщике / оптимизаторе запросов Postgres 16

Level of difficultyMedium
Reading time18 min
Views7.1K

PostgreSQL 16 вносит немало улучшений в планировщик запросов и позволяет выполнять многие SQL-запросы быстрее, чем в предыдущих версиях PostgreSQL.

Если вы посмотрите на PG16 release notes, то увидите некоторые из этих улучшений. Но из-за объема изменений, вносимых в каждом выпуске PostgreSQL, невозможно предоставить достаточно подробную информацию о каждом изменении.

В этом посте вы получите глубокое представление о 10 улучшениях, внесенных в планировщик запросов PostgreSQL 16. Для каждого из улучшений будет сравнения выходных данных планировщика PG15 и PG16, а также примеры того, что изменилось, в виде автономного теста, который вы можете попробовать сами.

Читать далее
Total votes 27: ↑27 and ↓0+27
Comments0

Кластеризация в ML: от теоретических основ популярных алгоритмов к их реализации с нуля на Python

Level of difficultyHard
Reading time34 min
Views27K

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

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

Читать далее
Total votes 36: ↑36 and ↓0+36
Comments3

Самое понятное объяснение Специальной теории относительности

Level of difficultyMedium
Reading time13 min
Views119K

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

Читать далее
Total votes 385: ↑385 and ↓0+383
Comments391

За три миллиарда лет до зарождения Милкомеды

Reading time7 min
Views9.4K

Около ста лет назад, на рубеже 1923 и 1924 годов, Эдвин Хаббл открыл галактики. К началу XX века считалось, что размеры Вселенной примерно соответствуют размеру Млечного Пути, и диаметр её составляет около 300 000 световых лет. Существовала даже теория «островной Вселенной», которая вплоть до начала 1920-х оставалась мейнстримовой. На тот момент жёстко не разграничивались космические объекты, расположенные в пределах Млечного Пути и вне его. Хаббл первым стал разделять «галактические туманности», которые мы сегодня называем «просто туманностями» и «внегалактические туманности», которые сегодня называются «галактиками». Также Эдвин Хаббл открыл разбегание галактик, и скорость этого разбегания является основной величиной, описываемой законом Хаббла. Впоследствии удалось установить, что Млечный Путь — сам по себе галактика, одна из многих, причём, он относится к наиболее распространённому классу спиральных галактик. Одиночных галактик во Вселенной совсем немного. Напротив, большинство галактик входят в сверхскопления либо в небольшие кластеры. Наша галактика также находится в составе именно такого кластера, который называется «Местная группа».

Читать далее
Total votes 46: ↑43 and ↓3+58
Comments19

Apache Spark: что там под капотом?

Reading time5 min
Views52K

Вступление


В последнее время проект Apache Spark привлекает к себе огромное внимание, про него написано большое количество маленьких практических статей, он стал частью Hadoop 2.0. Плюс он быстро оброс дополнительными фреймворками, такими, как Spark Streaming, SparkML, Spark SQL, GraphX, а кроме этих «официальных» фреймворков появилось море проектов — различные коннекторы, алгоритмы, библиотеки и так далее. Достаточно быстро и уверенно разобраться в этом зоопарке при отсутсвие серьезной документации, особенно учитывая факт того, что Spark содержит всякие базовые кусочки других проектов Беркли (например BlinkDB) — дело непростое. Поэтому решил написать эту статью, чтобы немножко облегчить жизнь занятым людям.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments12

Сборка pgModeler в Windows 10 без знания Qt

Level of difficultyEasy
Reading time4 min
Views3.2K

‎Как собрать pgmodeler, если о Qt вы услышали первый раз, а о существовании C++, знаете только то, что он существует?

Оправляемся в увлекательный мир сборки
Total votes 2: ↑1 and ↓10
Comments9

Реактивные приложения с паттерном RxPM. Прощайте​ MVP и MVVM

Reading time12 min
Views40K

Уже продолжительное время я размышляю над паттерном RxPM и даже успешно применяю его в «продакшене». Я планировал сначала выступить с этой темой на Mobius, но программный комитет отказал, поэтому публикую статью сейчас, чтобы поделиться с Android-сообществом своим видением нового паттерна.


Все знакомы с MVP и MVVM, но мало кто знает, что MVVM является логическим развитием паттерна Presentation Model. Ведь единственное отличие MVVM от PM – это автоматическое связывание данных (databinding).


В этой статье речь пойдет о паттерне Presentation Model с реактивной реализацией биндинга. Некоторые ошибочно называют его RxMVVM, но корректно будет называть его RxPM, потому что это модификация шаблона Presentation Model.


Этот паттерн удобно использовать в проектах с Rx, так как он позволяет сделать приложение по-настоящему реактивным. Кроме того, он не имеет многих проблем других паттернов. На диаграмме ниже представлены различные варианты и классификации шаблонов представления:



Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments42

Различия между MVVM и остальными MV*-паттернами

Reading time11 min
Views161K


От переводчика:
Уже опубликовано много материалов по MVC и его производным паттернам, но каждый понимает их по-своему. На этой почве возникают разногласия и холивары. Даже опытные разработчики спорят о том, в чем отличие между MVP, MVVM и Presentation Model и что должен делать тот или иной компонент в каждом паттерне. Ситуация усугубляется еще и тем, что многие не знают истинную роль контроллера в классическом варианте MVC. Предлагаю вашему вниманию перевод хорошей обзорной статьи, которая многое проясняет и расставляет всё по своим местам.
Разобраться в MV-паттернах
Total votes 38: ↑37 and ↓1+36
Comments29
1
23 ...

Information

Rating
Does not participate
Registered
Activity

Specialization

Data Scientist, Data Engineer