Pull to refresh
1
0
Василий Титовченко @unibasil

Программист

Send message

Настало время раскрыть карты

Reading time6 min
Views9.2K

Всем здравствуйте, уважаемые Хабровчане!

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

Начну с небольшого знакомства и расскажу о своем опыте работы. Без малого 13 лет я являюсь исследователем транспортных сетей в телеком индустрии. Работал в одном из крупнейших операторов связи, был экспертом, менеджером, обычным инженером. Строил и свопировал региональные транспортные сети, развернул с коллегами систему мониторинга сетей MBH от Москвы до Владикавказа, крайние два года отдал изучению графовых баз данных, которые позволили решить не решаемую проблему - автодискавери и построение топологии сетей с путями прохождения трафика сервисов мобильной сети и B2B клиентов. Если забежать немного вперед, то данная система осталась не нужна главному заказчику, и мы благополучно выкинули ее на помойку истории. К сожалению, так бывает, но сейчас не об этом.

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

Немного тезисов - что нужно понять.

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

В Data Science не нужна математика (Почти)

Reading time6 min
Views87K

Привет, чемпион!

Ребята с «вышкой» всё время умничают, что в Data Science нужна «математика», но стоит копнуть глубже, оказывается, что это не математика, а вышмат.

В реальной повседневной работе Data Scientist'а я каждый день использую знания математики. Притом очень часто это далеко не «вышмат». Никакие интегралы не считаю, детерминанты матриц не ищу, а нужные хитрые формулы и алгоритмы мне оперативнее просто загуглить.

Решил накидать чек-лист из простых математических приёмов, без понимания которых — тебе точно будет сложно в DS. Если ты только начинаешь карьеру в DS, то тебе будет особенно полезно. Мощь вышмата не принижаю, но для старта всё сильно проще, чем кажется. Важно прочитать до конца!
Читать дальше →
Total votes 143: ↑136 and ↓7+129
Comments87

Методы рационального мышления и Магрибский молитвенный коврик

Reading time9 min
Views30K
image

— Папа, расскажи мне сказку, — подошел ко мне крошка сын.

— Может быть не прямо сейчас, сына? У меня пинкидемон какой-то резиновый попался, от него пули отскакивают, — пробормотал размахивая свитчем я, — вот дойду до точки сохранения и…

— Сейчас, — наставал сын, — Надо.

— Ладно, — согласился я, — только чур, потом не жалуйся, что сказка не понравилась. Уж больно она страшная.

— Обещаю не жаловаться, — радостно отрапортовал сын.

Своего обещания, он, конечно, не сдержал. Потому что я рассказал историю Магрибского Молитвенного Коврика.

— Это какая-то неправильная сказка, — возмущался малыш, — В ней нет ни логики, ни смысла, ни морали.

— Добро пожаловать в реальный мир, сына. У нас тут такое всё.

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

А вот это был удар ниже пояса. Репутацию нужно было спасать.

— Ты потер нужную лампу, сынуля. Я литератор. Я могу поправить любую историю.

— Ты заново перепишешь сказку?

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

И я продолжил.
Читать дальше →
Total votes 117: ↑104 and ↓13+91
Comments205

PROOF OF STAKE – это скам

Reading time16 min
Views104K

Proof of Stake (PoS) – это мошенничество. Когда я говорю это, я имею в виду, что PoS 1) заявлен как система консенсуса, и 2) фактически неспособен на самом деле обеспечить консенсус.

Читать далее
Total votes 118: ↑99 and ↓19+80
Comments485

Petite-vue

Reading time8 min
Views7.8K

Привет, эта статья - "перевод документации и часто используемых примеров" для petite-vue + ещё немного приколов и одна интересная практика (с которой не всё так очевидно, как могло бы казаться).

Зачем нужен petite-vue?

Petite-vue это 6-ти килобайтное подмножество Vue, основной задачей которого, по словам Эвана, является Progressive Enchancement.

Выучить очередной фреймворк
Total votes 11: ↑10 and ↓1+9
Comments7

Физика в Python с использованием Pymunk

Reading time6 min
Views31K

Физика. Кто-то её любит, кто-то нет, но определённо это неотъемлемая часть нашего существования. В этой статье мы рассмотрим как самому создавать физические симуляции используя всего 2 библиотеки Python.
К концу статьи мы сделаем интерактивную симуляцию взаимодействия тел и поймём основы использования библиотеки Pymunk.

В этом туториале вы сможете создать симуляцию тел как на гифке сверху!

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

Overpass API: следующий уровень владения OpenStreetMap

Reading time12 min
Views22K

В своих различных геосервисах мы используем данные OpenStreetMap (OSM). Данные в OSM заносятся, в основном, через специальные программы-редакторы, про самые популярные из которых мы писали тут и тут. На программном уровне редакторы общаются с главным сервером через OSM API. Этот API работает как на чтение, так и на запись и предоставляет лишь минимально необходимые возможности. Через него выборку можно ограничить только прямоугольником, но не произвольной полигональной областью, также нет ни фильтрации данных, ни способов их преобразования перед отправкой клиенту. Но что делать, если тебе нужно выбрать данные из OSM, отсеив много лишнего, желательно сразу показать результаты на карте, и при этом ты ни разу не программист? Тут-то на помощь и приходит Overpass API — мощный инструмент запросов к данным OSM, и Overpass Turbo — веб-приложение, предоставляющее графический интерфейс к Overpass API и дополнительные удобства при работе с запросами.

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

Как работает модерация на Хабре

Reading time19 min
Views23K

Всем привет! Это мы, команда модераторов Хабра. Долгое время мы делали свою работу, иногда появлялись в комментариях и часто слышали мнение о том, что мы вообще роботы. С ростом активности и потока публикаций мы увидели, что читатели и пользователи, а иногда и корпоративные клиенты, не до конца понимают, как работает модерация. Если коротко, то большинству видится либо автоматика, либо люди, окружённые тремя мониторами, на которых на дашбордах валятся алерты о нарушениях, запросах и острых моментах. На самом деле всё проще и одновременно сложнее, а главное, лампово и по-людски. Мы собрали самые популярные мифы, вопросы, замечания и решили рассказать, как же работают модераторы на Хабре. Время выйти из сумрака!

Читать далее
Total votes 134: ↑132 and ↓2+130
Comments225

О типах

Reading time5 min
Views7.3K

Автор оригинального материала — Роберт С. Мартин (Uncle Bob), 25 июня 2021

Я написал свою первую программу в 1964 году. Программа называлась «Компьютеризированные ворота мистера Паттерсона» и была реализована на маленьком пластиковом компьютере под названием DIGICOMP-I, который представлял из себя симпатичный маленький трехбитный конечный автомат с 6 логическими элементами.

Читать далее
Total votes 18: ↑16 and ↓2+14
Comments4

Лучший способ выбора случайной точки в круге

Reading time10 min
Views21K
image

Допустим, вам нужно найти случайную точку с равномерным распределением в круге. Как же это сделать лучше всего? Когда я впервые начал изучать эту задачу, я работал над программным проектом, требовавшим случайного распределения значений в круге, но довольно быстро я спустился в неожиданно глубокую кроличью нору, заполненную любопытной математикой, поэтому решил объединить все свои находки в одну статью.
Читать дальше →
Total votes 73: ↑73 and ↓0+73
Comments41

Автоматизация наполнения Changelog через CI

Reading time3 min
Views6K

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

Читать далее
Total votes 9: ↑7 and ↓2+5
Comments18

Самый полный чек-лист для защиты от мошенников

Reading time17 min
Views156K

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

Читать далее
Total votes 148: ↑146 and ↓2+144
Comments169

Цифровой урбанизм в России: где брать данные для своего проекта по анализу городской среды

Reading time18 min
Views11K

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

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

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

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

Внутреннее устройство Kubernetes-кластера простым языком

Reading time6 min
Views65K

Прим. перев.: как многим хорошо известно, Kubernetes — это всего лишь пять бинарников. Об их назначении и рассказывает в этой статье Vedashree Patil, консультант из Deloitte Digital. Когда ей потребовалось изучить Kubernetes, она столкнулась с большим количеством новой информации, осознать которую за короткое время было непросто. Так она пришла к идее уменьшить порог вхождения в K8s другим специалистам, создав цикл публикаций «Kubernetes 101». Все статьи сопровождаются простыми и наглядными комиксами. Представляем вниманию перевод материала под названием «Внутри кластера» из этого цикла.

Как выглядит кластер Kubernetes? Как работают узлы? Из этой статьи вы узнаете обо всех основных компонентах системы Kubernetes.

Читать далее
Total votes 65: ↑63 and ↓2+61
Comments10

5 главных алгоритмов сэмплинга

Reading time4 min
Views29K


Работа с данными — работа с алгоритмами обработки данных.


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


Эта статья посвящена наиболее распространённым способам сэмплинга при работе с данными.

Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments1

19 видов льда

Reading time7 min
Views42K
image

Лёд взрывается, тонет в воде, проводит ток, генерирует мощное магнитное поле.

Мой друг в детстве приклеивал на капельку пластилина таракана на дно формочки для льда, заливал водой и замораживал. Потом швырял ледяные кубики с начинкой в стену и кричал «Я — Сабзиро!» А я всё время выбирал Глациуса в Killer Instinct, потому что изящный. В «Семиевии» из льда на астероиде построили реактивный двигатель и льдом же его топили. Ну и, конечно же, «Колыбель для кошки». А тем временем в реальности…

Аргоннская национальная лаборатория в 1980 придумала технологию ледяной гидросмеси (ice slurry), которая не образует ледяные наросты, не слипается, течет по трубам и в 5-7 раз эффективнее простой воды для охлаждения.

Микрокристаллы льда «ледяная кровь» хорошо проникают в маленькие кровеносные сосуды без вреда для клеткок. При остановке сердца время для спасения пострадавшего теоретически может увеличиться с 10 до 45 минут.

Д. Пайк предложил добавить в лед опилки и из этого композита (пайкерита) сделать… авианосец.

Чуток копнув, я узнал, насколько глубока ледяная кроличья нора.

Читать дальше →
Total votes 64: ↑59 and ↓5+54
Comments33

Песочница для Nginx

Reading time5 min
Views9.4K

Как-то я болтала с приятелем о том, как было бы здорово, если бы был такой сайт-песочница, где бы можно было просто скопировать-вставить конфиг Nginx-а и протестировать его. И я поняла, что это не так уж сложно сделать, поэтому погрузилась в тему и сделала: nginx-playground.wizardzines.com.


screenshot

Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments21

Добавляем GUI в EFI

Reading time9 min
Views8.7K

В стандартном EDK нет поддержки графического интерфейса. Есть только из коробки пиксельный/текстовый вывод и TUI для HII интерфейса. А хочется капельку красоты и человеческий GUI. Дак добавим же! Даже не ради чего-то конкретного, а просто JUST FOR FUN!

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

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

Что должен, но не знает про конкуренцию в PostgreSQL каждый разработчик?

Reading time13 min
Views21K

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

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

Реализация простого механизма регулярных выражений в 70 строк кода

Reading time7 min
Views6.5K

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

Строка с шаблоном должна была включать поддержку следующих метасимволов:

^ - начало строки

$ - конец строки

. - любой символ

* - 0 или более раз

? - 0 или 1 раз

+ - 1 или более раз

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

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments14
1
23 ...

Information

Rating
Does not participate
Location
Владивосток, Приморский край, Россия
Registered
Activity