Обновить
25
0
Масляев Александр@maslyaev

Пользователь

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

Пишем первую программу по машинному обучению до 50 строк с помощью Scikit-Learn

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

Сегодня мы воспользуемся возможностями машинного обучения для анализа шоколадного печенья.

Читать о печеньках и ML

Проект — электрический помощник для редакции

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

Казалось бы, для чего редакции может понадобиться telegram-бот? Мы смогли вполне точно ответить на это, когда число наших авторов начало превышать разумные возможности редакторов. В новых экономических реалиях ценна каждая рабочая минута, потому встала задача убрать часть работы, связанной с повторяющимися вопросами, которые можно было бы свалить на бота, для улучшения комфорта взаимодействия всех сторон и, конечно, экономии бесценного времени. А учитывая, что большая часть общения происходит именно внутри телеграма, то и было принято решение завести себе там электрического помощника. Как говорится: телеграм-бот — это не только 40 строчек кода, но ещё и очень полезный выхлоп.
Читать дальше →

Manticore — альтернатива Эластику на C++ с 21-летней историей

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

5 лет назад мы форкнули Manticore из open source версии некогда популярного open source поискового движка Sphinx 2.3.2. У нас было два пакетика травы, семьдесят пять ампул мескалина, три C++ разработчика, один саппорт-инженер, опытный пользователь, менеджер, мать пятерых детей, помогающая нам на полставки и гора багов, крэшей и технических долгов. И вот, по прошествии 5 лет и сотен новых пользователей мы готовы сказать, что Manticore можно использовать как альтернативу Elasticsearch и для полнотекстового поиска и для аналитики данных.

В этой статье хочется: вспомнить как всё начиналось и что было до SOLR и Elasticsearch, максимально объективно обрисовать текущую ситуацию, попытаться понять куда нам двигаться дальше.

Читать далее

Магия ssh

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

Разве что ленивый не писал про ssh и несмотря на это, данный протокол и его возможности не перестают меня восхищать. Здесь я хочу поделиться исключительно своим опытом использования сего замечательного инструмента в своих задачах (При этом активно применяю его даже при разработке на Windows).

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

  • Удалённый доступ — логично, ведь для этого он и предназначался.
  • Монтирование папок по сети — очень удобно для работы с кодом на удалённой машине.
  • Удалённое выполнение команд — нечастая, но используемая мной операция. Удобно получать выхлоп команды в канал другой команды на текущей машине.
  • Запуск графических приложений на удалённой машине.
  • Проксирование трафика — способ перенаправления трафика. Этакий быстрый и простой аналог VPN.
  • Обратный ssh — использую для проброса портов к системам, находящимися за NAT, когда лень настраивать firewall.

Далее вкратце разберу каждый пункт, и особенно пути эффективного и простого использования под Windows.
Читать дальше →

17 убойных репозиториев GitHub, которые нужно сохранить

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

Здесь собраны лучшие и самые полезные репозитории Github, которые будут служить вам долгое время.

Читать далее

Consistent против Rendezvous — чем отличаются подходы для хэширования данных на сервере

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

Всем привет, меня зовут Михаил Алексеев, я работаю программистом в студии ITT, пишу бэкенд на Java. Перформанс — это моя страсть, как и распределенные системы. Но еще больше я люблю, когда математика встраивается в перформансные цели и задумки.

В этом тексте я расскажу про разницу между Consistent и Rendezvous хэшированием, а также на примерах покажу, с какими проблемами мы сталкиваемся в работе.

Читать далее

Как не надо индексировать

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

Развитие происходит по спирали: когда-то люди не умели правильно индексировать, потом (в основном) научились, потом пришли noSQL и все снова забыли знание древних. Что вы будете делать, когда последние из старых DBA отплывут в Валинор?

Снова и снова и сталкиваюсь с полным набором антипаттернов индексирования. Я их перечислю, но! Для каждого антипаттерна есть исключение, когда именно это и стоит делать. Поэтому кликбейтно сформулированное правило верно в 95% случаях, но если вы хотите копнуть глубже, то прочитайте про исключения.

И в конце полезные скрипты для MSSQL, Postgres и MySQL.

Читать далее

Властелин структур

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

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

Читать далее

Создание telegram web apps и взаимодействие с ними в телеграм ботах

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

В обновлении Bot API 6.0 телеграм-боты получили много новых функций. Из них для разработчиков самая примечательная - Telegram Web Apps (Веб-приложения внутри телеграм). С этим нововведением разработчики могут подключать к своим ботам web-приложения, которые открываются в дополнительном окне, что сильно расширяет инструментарий, а, следовательно и функционал ботов в телеграм.

Читать далее

«Ленивый сахар» PostgreSQL

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

SQL - декларативный язык - то есть вы описываете "что" хотите получить, а СУБД сама решает, "как" именно она будет это делать. Некоторые из них при этом позволяют им "подсказывать", как именно лучше выполнять запрос, но PostgreSQL - нет.

Тем не менее, "синтаксический сахар" некоторых языковых конструкций позволяет не только писать меньше кода (учите матчасть!), но и добиться, что ваша база будет делать часть вычислений "лениво", только при фактической необходимости.

Читать далее

OSINT по спутниковым изображениям

Время на прочтение3 мин
Охват и читатели60K
image

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

Зеленый Кот нашел разбившуюся советскую исследовательскую станцию «Марс-3» по снимкам со спутника, тысячи экологов следят за лесами Амазонки и состоянием береговой линии, школьники делают учебные проекты по слежке за популяцией моржей, репортеры проводят расследования, освобождают рабов, мониторят лагеря беженцев.

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

Синхронизируем данные с yarsync

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

yarsync - Yet Another Rsync - предназначен для синхронизации данных между несколькими устройствами, более точно - между файловыми системами в Unix-подобных средах. yarsync обладает интерфейсом, похожим на git, и является Python-обёрткой вокруг программы rsync. Программа доступна под свободной лицензией GPL v3.0 на github (я автор).

yarsync работает там, где есть Питон и rsync.

Данные могут синхронизироваться локально или между разными компьютерами (в таком случае на удалённой машине также должен быть установлен rsync). Кроме того, файловые системы должны поддерживать жёсткие ссылки (hard links). Популярные системы, поддерживающие жёсткие ссылки - ext2-ext4, HFS+, а также NTFS. Не поддерживают жёсткие ссылки FAT, exFAT (часто используемые на флеш-накопителях).

Говоря простыми словами, допустим, что у вас есть компьютеры дома и на даче. У вас есть папка с книгами и статьями по программированию, которые вы собирали долгие годы, и которой регулярно пользуетесь (её копиями на разных машинах). Вы хотите, чтобы эти копии были одинаковы - то есть в идеале чтобы можно было работать с данными на разных компьютерах (добавлять новые статьи, удалять ненужные, переименовывать и перемещать файлы и папки), а затем эти изменения легко переносились на другие копии. Это и делает yarsync, отслеживая изменения и позволяя эффективно синхронизировать данные через доступный сервер или внешний накопитель (жёсткий диск).

Читать далее

Задачи и решения для бойца PostgreSQL

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

Приветствую всех любителей SQL!

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

Представленные ответы подходят для PostgreSQL (большинство задач подойдут и для других СУБД, но результаты и решения могут быть иными. Даже интересно, где возникнут отличия)

Постарайтесь ответить самостоятельно, перед открытием спойлера.

Поехали!
Читать дальше →

Что нового в плане мониторинга в PostgreSQL (Алексей Лесовский)

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


Доклад Алексея Лесовского про то, что нового есть в PostgreSQL в плане мониторинга.


Охватывать Алексей будет 13 и 14 версии. Далее от его лица.

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

Вычисляем π на первом процессоре от Intel — 4004

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

Как-то мне пришла в голову мысль о том, насколько же быстрее современные процессоры по сравнению с ранними экземплярами. Да, можно размышлять об этом эмпирически - зная тактовую частоту и особенности микроархитектуры (как устроен конвейер, сколько есть ALU, и т.д.), можно прикинуть производительность Intel 4004. Пусть и не в FLOPS'ах, ибо нативная поддержка чисел с плавающей запятой появилась позже. Но это будет весьма грубая прикидка, так как у этого процессора есть несколько интересных черт: разрядность только 4 бита (а не 64, как у большинства современных машин), очень скудный набор инструкций (нет даже AND'a и XOR'a!) и ограничения переферии (в частности памяти не так уж и много).

Поэтому я решил исследовать вопрос на практике. В качестве бенчмарка выбор пал на вычисления числа π. В конце-то концов, даже ENIAC в дремучем 1949 году справился с этой задачей! [2]

Читать далее

Как написать сообщение, чтобы его прочитали и поняли

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

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

Читать далее

Мозг тоже болеет: что такое антидепрессанты и нужны ли они вам вообще?

Время на прочтение14 мин
Охват и читатели73K
Депрессия — это не только, когда грустно целый день и нет желания работать. Вы можете вообще про неё не знать и лечиться от другого, не понимая, что речь про гормональный дисбаланс, который можно исправить. А поскольку ходить к неврологу «стыдно», есть все шансы прожить долгую несчастную жизнь с недостатком пары гормонов.


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

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

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

Распределённые транзакции Kafka + PostgreSQL средствами Spring

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

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

Особенно интересной эта задача становится, когда для интеграции используется Kafka, так как она имеет свои ограничения, касающиеся реализации транзакционности. Вообще, сейчас Kafka достаточно широко применяется именно  в качестве платформы для асинхронной интеграции, это справедливо и для проектов, которые мы в ЛАНИТ — Би Пи Эм реализуем, например, в Альфа-Банке и ВТБ. Поэтому, надеемся, данная тема будет интересна многим.

В этой статье рассмотрим подход к реализации распределённых транзакций (в рамках одного Java-приложения), которые охватывают Kafka и реляционную СУБД. Для этого воспользуемся средствами управления транзакциями, имеющимися в Spring.

Варианты с организацией eventual consistency с помощью типовых паттернов (Saga, Transactional Outbox и др.) и/или использования дополнительных платформ (Debezium, Kafka Connect и пр.) - тема для отдельной статьи (так что ждите продолжения). В этой статье тему затрагивать не будем. 

Читать далее

Разбираем алгоритмы компьютерной графики. Часть 1 — «Starfield Simulation»

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

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

Действовать буду по следующему принципу: беру какой-либо графический эффект (из демо, программы, игры – не важно) и пытаюсь реализовать этот же эффект максимально простым и понятным способом, разъясняя что, как и почему сделано именно так.

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

Читать далее

Как сделать интерактивную карту с маршрутами на Python

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

Распространённая задача программистов в работе с геопространственными данными — отобразить маршруты между различными точками. Решением, которое может понадобиться в разработке веб-сайта, делимся к старту курса по Fullstack-разработке на Python.

Читать далее

Информация

В рейтинге
5 774-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность