Pull to refresh
2
0
Никита А. @nanshakov

Программист Java

Send message

Изучаем и парсим биржевую информацию Мосбиржи. Наш первый парсер на Python, разбор кода

Reading time 7 min
Views 13K

Как устроен ISS MOEX (информационно-статистический сервер Московской Биржи) и как можно парсить с него биржевые данные. Разбор кода программы. Это первое знакомство с MOEX, дальше будем изучать куда как более актуальный для алготрейдинга продукт мосбиржи - ALGOPACK. Однако перед этим общее знакомство с архитектурой iss moex должно быть. Стратегическая задача - использовать данные для алготрейдинга (работы торгового робота) напрямую с московской биржи.

Читать далее
Total votes 13: ↑12 and ↓1 +11
Comments 9

Процесс разработки приложения Python по дедупликации файлов с использованием контрольных сумм

Level of difficulty Easy
Reading time 16 min
Views 4.8K

История начинается с несложной задачи и небольшого Python приложения.

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

С источников файлы не удаляются пока в этом не появится острая необходимость, в первую очередь потому, что это «естественная» резервная копия. Ну и бывает удобно иметь какие‑то фотографии и видео у себя под рукой.

В процессе своего повествования, постараюсь пояснить принятые мной решения, некоторые из которых прямо напрашиваются на решение иным способом.

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 42

Собственный VPN с управлением через браузер на базе WireGuard

Reading time 2 min
Views 21K

Задача организовать VPN в Москве или Спб для работы с сервисами не доступными с зарубежных IP и шифрования трафика для доступа к ресурсам компании при использовании публичного WiFi заграницей.

Остро потребность в VPN в России возникла после вынужденного отъезда части сотрудников зарубеж. Необходима возможность управлять пользователями, чтобы легко выдавать доступ сотрудникам.

Читать далее
Total votes 13: ↑12 and ↓1 +11
Comments 22

Домашнее облако

Reading time 4 min
Views 42K

Со временем пришло осознание 2х моментов:

- удобно использовать такие облачные сервисы как Google Docs и DropBox

- не хочется при этом зависеть от облачных провайдеров (дорого, проблемы сохранности данных, проблемы неожиданности отключений и изменений и тп)

При этом в интернетах любят термин Home Lab, но не хочется экспериментировать. Это должно быть что-то вроде wifi-роутера: просто работает и на саму систему особо внимания не обращаешь. При этом должно масштабироваться (как добавление новых wifi-точек в mesh-сеть): поэтому облако.

Читать далее
Total votes 20: ↑13 and ↓7 +6
Comments 68

О том, как мы немного наплевали на маркетинг и сварили крем для век по вашим просьбам

Reading time 9 min
Views 8.8K
Как поступают фирмы, когда разрабатывают новые продукты?

• Маркетологи изучают рынок.
• Конкурентов.
• Продукты.
• Спрос.
• Смотрят, что можно скопировать и кого заместить.
• Прорабатывают стратегию продаж.
• Определяют форму, в которой будет выпускаться то или иное средство.
• И только потом, после долгого анализа, начинают готовить сам продукт.

Как сделали мы (в какой-то степени это было безумство храбрых): послушали покупателей, которые давно и много просят нас сварить какой-нибудь плотный и питательный крем для век, и сварили.

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


Формула одного из основных элементов крема выглядит так

Сейчас расскажу о том, что из этого получилось.
Читать дальше →
Total votes 53: ↑49 and ↓4 +45
Comments 9

Рисующие роботы с LEGO за 6 шагов

Reading time 5 min
Views 3.6K

Мы, команда мастерской Tinkering Studio в «Эксплораториуме», считаем, что LEGO даёт много возможностей для изучения движений, механизмов и передач. Один из наших многократно проверенных опытов — прикрепление маркеров к деталям LEGO Technic для создания удивительных и поражающих воображение рисующих роботов, которые рисуют узоры в движении. С помощью набора деталей LEGO можно создавать бесконечные вариации и делать неожиданные открытия. Подробности — к старту флагманского курса по Data Science.


Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Comments 2

Как предоставить доступ для всех устройств из локальной сети к VPN

Reading time 7 min
Views 33K

Наверное, ни для кого уже не секрет, что использование технологии Virtual Private Network (VPN) становится повседневной необходимостью. На рынке присутствует много решений – платных и бесплатных.

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

Читать далее
Total votes 18: ↑14 and ↓4 +10
Comments 52

TypeScript в React-приложениях. 1. Как типизировать данные

Reading time 7 min
Views 16K

Данная статья является первой в цикле статей о практическом применении языка Typescript в React-приложениях. Амбициозная цель автора — в конечном счёте написать книгу, которая будет ближе к практике чем к теории. В этом смысле книга не будет разжёвывать документацию языка, а предложит рассмотрение подходов и примеров типизации отдельных аспектов React-приложений.

Это далеко идущие планы, а на текущий момент задача цикла статей — собрать фидбек о правильности авторских суждений, которые основаны на личном опыте разработки приложений на Typescript и местами противоречат популярной литературе по языку Typescript. Тем не менее доводы к этим суждениям должны заинтересовать сообщество фронтэнд-разработчиков.

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 9

Особенности построения хранилища данных на базе ClickHouse в Yandex Cloud

Reading time 16 min
Views 7.4K

В данной статье делимся опытом внедрения решения на базе СУБД ClickHouse и сервисов Yandex Cloud. Мы не коснёмся тонких настроек ClickHouse или его масштабирования, но затронем достаточно интересные на наш взгляд темы:

• как загружать данные из On-premise в облачный ClickHouse с использованием сервисов Yandex Cloud – Functions, Object Storage, Message Queue;

• как обрабатывать/преобразовывать данные в облачном ClickHouse – очищать и строить витрины; какие «подводные камни» нам встретились на этом пути.

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 7

Вторая жизнь старого железа. Продакшн

Reading time 7 min
Views 55K

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

Всё это можно восстановить, починить, дать железу вторую жизнь, порадовать себя и родственников. Вполне вероятно, что в ближайшие годы продажи паяльных станций побьют рекорды, а ларьки по ремонту техники откроются на каждом углу.
Читать дальше →
Total votes 74: ↑71 and ↓3 +68
Comments 92

Большой гайд. Пишем микросервисы на Java и Spring Boot, заворачиваем в Docker, запускаем на EKS, мониторим на Grafana

Reading time 37 min
Views 81K

Туториалы делятся на две больших категории: либо "как нарисовать сову", либо подробно расписанные тысячи шагов в формате "напиши туториал для дурака - и только дурак захочет его читать".

Как какой из двух категорий относится эта статья — решать вам.

В этой статье вы увидите пошаговое создание cloud-native микросервиса на Amazon AWS, пригодное для "чтения с листа". Чтобы понять, что здесь происходит, не нужно разворачивать проект - достаточно обладать живым воображением и прочитать текст по диагонали. Если же вы всё-таки захотите повторить шаги, вам будут жизненно нужны знания вида, как создавать классы в IDE и что такое Spring.

Вначале мы напишем пару простых микросервисов на Spring Boot, докеризуем их, зальём в AWS, настроим красивые доменные имена и HTTPS, прикрутим логирование и мониторинг, Prometheus и Grafana. Это небольшое путешествие по всем кругам ада, из которого вы не вернетесь прежним.

Текст написан на основе текстов и демо-проекта microservice-customer за авторством @kamaruzzaman. Если вы потеряли нить повествования, всегда можно зайти на GitHub и найти весь код в пригодном для запуска виде. Если захочется закопаться в тему, то бро Дима Чуйко (@Teapot) написал вам ещё две части статьи "Микросервисы: от CRUD до Native Image" (раз, два).

Последняя важная оговорка. В этом гайде будут использоваться технологии Amazon и обычные дистрибутивы OpenJDK. Автор осознает, что мы живём в России, и возможно, вместо Amazon куда лучше подойдет что-то вроде SberCloud или MTS Cloud, а вместо обычного OpenJDK - Axiom JDK с сертификацией по ФСТЭК. Особенности российских технологий - тема для отдельной статьи. Если вы захотите таковую после чтения этого гайда - отметьтесь в комментариях.

Читать далее
Total votes 88: ↑87 and ↓1 +86
Comments 27

Создаём своё объектное хранилище за чаc

Reading time 17 min
Views 7.5K


Привет! Меня зовут Артем Гаврилов и я работаю в Tarantool. Сегодня я расскажу, как быстро создать объектное хранилище на основе платформы in-memory вычислений Tarantool и распределённой файловой системы IPFS (InterPlanetary File System).


Мы рассмотрим пример шардирования стороннего приложения с помощью Tarantool и сделаем MVP объектного хранилища с отказоустойчивостью на уровне ЦОДа, в то время как более простые решения отказоустойчивы только на уровне нескольких серверов.


Тем, кто знаком с IPFS, вероятно, будет интересно читать начиная с раздела «С чем мы столкнёмся».

Читать дальше →
Total votes 38: ↑38 and ↓0 +38
Comments 3

Как завести счета в Казахстане и получить платежные дебетовые карточки менее чем за одну неделю

Reading time 4 min
Views 39K

Задавайте вопросы под постом, друзья, и я постараюсь ответить на ваши комментарии (по делу).

Предисловие

Мы разберем, как завести счета в Казахстане и сделать рабочие карточки Visa и Mastercard в различных банках. Вы узнаете, зачем я поехал в соседнюю страну, к чему это привело, как по приезде взаимодействовать с финансовой системой наиболее быстро и эффективно, и что для этого требуется.

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

Зачем?

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

Читать далее
Total votes 47: ↑38 and ↓9 +29
Comments 104

Lego Ideas: как превратить идею в полноценный набор Lego

Reading time 7 min
Views 21K


В этой статье хотел бы рассмотреть один интересный ресурс — Lego Ideas, и поделится своим опытом публикации работ на нем. Примечательно то, что даже если у вас нет под рукой конструктора Lego — не проблема. Главное обладать хорошей фантазией и любить собирать конструкторы (ну и компьютер не помешает). Также упомяну, что участник должен быть старше 12 лет.

Сайт Lego Ideas, разработанный компанией LEGO Group, позволяет пользователям делится своими идеями для участия в розыгрыше призов, или даже для полноценного выпуска вашей идеи в качестве официального набора Lego.

Всего на сайте есть 3 вида участия: Activities, Challanges и Product Ideas.

Читать далее
Total votes 48: ↑48 and ↓0 +48
Comments 15

Как и чем живёт современный Токио

Reading time 16 min
Views 30K
В предыдущем материале я рассмотрел причины, привёдшие к образованию Токайдo, а также основы японского городского планирования. Сегодня расскажу о том, как и чем живёт современный Токио, ядро этого громадного мегалополиса: жилищный вопрос, постепенный отход от эгалитаризма в эпоху post bubble economy, несколько социальных феноменов.

Читать дальше →
Total votes 120: ↑118 and ↓2 +116
Comments 20

У Unity всё плохо

Reading time 9 min
Views 100K

На просторах интернета, и в частности хабра, очень трудно встретить статьи с критикой игрового движка Unity. Я решил это исправить, и приготовил вам текст о переходе на DOTS, насилию над C#, знаменитых UI пакетах, MonoBehaviour, универсальности и о многом другом.

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

Читать далее
Total votes 91: ↑83 and ↓8 +75
Comments 168

ClickHouse для продвинутых пользователей в вопросах и ответах

Reading time 44 min
Views 34K

В апреле инженеры Авито собирались на онлайн-посиделки с главным разработчиком ClickHouse Алексеем Миловидовым и Кириллом Шваковым, Golang-разработчиком из компании Integros. Обсуждали, как мы используем систему управления базами данных и какие сложности у нас возникают.


По мотивам встречи мы собрали статью с ответами экспертов на наши и зрительские вопросы про бэкапы, решардинг данных, внешние словари, Golang-драйвер и обновление версий ClickHouse. Она может быть полезна разработчикам, которые уже активно работают с СУБД «Яндекса» и интересуются её настоящим и будущим. По умолчанию ответы Алексея Миловидова, если не написано иное.


Осторожно, под катом много текста. Надеемся, что содержание с вопросами поможет вам сориентироваться.


Читать дальше →
Total votes 34: ↑33 and ↓1 +32
Comments 3

Как полностью отключить Защитник Windows на Windows 10

Reading time 3 min
Views 1.1M


В Windows 10 имеется встроенный антивирус Windows Defender («Защитник Windows»), защищающий компьютер и данные от нежелательных программ: вирусов, шпионских программ, программ-вымогателей и многих других типов вредоносных программ и действий хакеров.

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

Единственная проблема связана с тем, что полностью удалить или отключить Windows Defender у вас не выйдет – эта система глубоко интегрирована в Windows 10. Однако есть несколько обходных путей, при помощи которых вы можете отключить антивирус – это использование локальной групповой политики, реестра или настроек Windows в разделе «Безопасность» (временно).
Читать дальше →
Total votes 28: ↑16 and ↓12 +4
Comments 28

Flame-графики: «огонь» из всех движков

Reading time 3 min
Views 6.8K

Всем снова привет! Приглашаем на онлайн-встречу с Василием Кудрявцевым (директором департамента обеспечения качества в АО «РТЛабс»), которая пройдёт в рамках курса «Нагрузочное тестирование». И публикуем перевод статьи Michael Hunger — software developer and editor of Neo4j Developer Blog and GRANDstack!

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

Читать далее
Total votes 9: ↑8 and ↓1 +7
Comments 9

Как починить «сломанный» VPS сервер на Linux

Reading time 2 min
Views 15K


Мы в компании Ruvds запустили на нашем хостинге возможность аренды серверов на Linux с операционными системами Centos, Debian и Ubuntu server!

Поэтому, мы объявляем конкурс «Как починить „сломанный“ VPS сервер на Linux». Попробуйте ваши силы в конкурсе, ведь в прошлый раз победитель справился за 3 часа. На этот раз мы немного усложнили задачу.

Условия конкурса
Нужно настроить веб-сервер nginx таким образом, чтобы при обращении на адрес http://your_vps_ip отображался сайт подготовленный для этих целей.
Читать дальше →
Total votes 17: ↑13 and ↓4 +9
Comments 17

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity