Как стать автором
Обновить
1
0
Василий Титовченко @unibasil

Программист

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

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

Время на прочтение6 мин
Количество просмотров9.3K

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

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

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

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

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

Читать далее
Всего голосов 15: ↑14 и ↓1+18
Комментарии9

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

Время на прочтение6 мин
Количество просмотров88K

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

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

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

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

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

Время на прочтение9 мин
Количество просмотров30K
image

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

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

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

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

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

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

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

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

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

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

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

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

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

И я продолжил.
Читать дальше →
Всего голосов 117: ↑104 и ↓13+91
Комментарии205

PROOF OF STAKE – это скам

Время на прочтение16 мин
Количество просмотров104K

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

Читать далее
Всего голосов 101: ↑82 и ↓19+80
Комментарии485

Petite-vue

Время на прочтение8 мин
Количество просмотров8.1K

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

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

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

Выучить очередной фреймворк
Всего голосов 7: ↑6 и ↓1+9
Комментарии7

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

Время на прочтение6 мин
Количество просмотров32K

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

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

Читать далее
Всего голосов 41: ↑41 и ↓0+41
Комментарии10

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

Время на прочтение12 мин
Количество просмотров25K

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

Читать далее
Всего голосов 28: ↑28 и ↓0+28
Комментарии10

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

Время на прочтение19 мин
Количество просмотров24K

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

Читать далее
Всего голосов 77: ↑75 и ↓2+127
Комментарии225

О типах

Время на прочтение5 мин
Количество просмотров7.4K

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

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

Читать далее
Всего голосов 16: ↑14 и ↓2+14
Комментарии4

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

Время на прочтение10 мин
Количество просмотров22K
image

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

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

Время на прочтение3 мин
Количество просмотров6.5K

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

Читать далее
Всего голосов 8: ↑6 и ↓2+5
Комментарии18

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

Время на прочтение17 мин
Количество просмотров158K

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

Читать далее
Всего голосов 117: ↑115 и ↓2+144
Комментарии169

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

Время на прочтение18 мин
Количество просмотров12K

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

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

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

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии57

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

Время на прочтение6 мин
Количество просмотров69K

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

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

Читать далее
Всего голосов 57: ↑55 и ↓2+61
Комментарии10

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

Время на прочтение4 мин
Количество просмотров30K


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


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


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

Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии1

19 видов льда

Время на прочтение7 мин
Количество просмотров45K
image

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

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

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

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

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

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

Читать дальше →
Всего голосов 52: ↑47 и ↓5+54
Комментарии33

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

Время на прочтение5 мин
Количество просмотров9.9K

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


screenshot

Читать дальше →
Всего голосов 12: ↑10 и ↓2+12
Комментарии21

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

Время на прочтение9 мин
Количество просмотров9.1K

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

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

Читать далее
Всего голосов 24: ↑24 и ↓0+24
Комментарии5

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

Время на прочтение13 мин
Количество просмотров21K

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

Читать далее
Всего голосов 37: ↑36 и ↓1+42
Комментарии6

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

Время на прочтение7 мин
Количество просмотров6.8K

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

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

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

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

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

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

? - 0 или 1 раз

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

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии14
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Владивосток, Приморский край, Россия
Зарегистрирован
Активность