Pull to refresh
5
0
Артем Карпов @muz1kand

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

Send message

Бесплатные векторные карты на своём хостинге

Level of difficultyMedium
Reading time6 min
Views13K

Векторные карты Protomaps на базе OSM

Каждый веб-разработчик знает о OpenStreetMap (OSM), свободной альтернативе Google Maps. Несмотря на всеобщую известность OSM, у некоторых всё-таки возникают вопросы: как сделать веб-карту с открытыми данными OSM, как самостоятельно публиковать карты?

На эту тему есть популярные руководства, в том числе по работе с базами PostGIS и запуску тайлсерверов для реализации бесшовных карт OSM. Но есть принципиально иной подход — векторные карты Protomaps, которые обеспечивают более высокое разрешение, настройку внешнего вида и наложение произвольных меток. Они изначально предполагают максимальную простоту в создании своих карт. А главное, что разместить тайлы можно на своём хостинге или в облаке.
Читать дальше →
Total votes 89: ↑86 and ↓3+83
Comments12

LYWSD03MMC: ZigBee сеть на термометрах

Level of difficultyMedium
Reading time5 min
Views17K

NB: Это скорее шуточная статья, не воспринимайте написанное всерьёз.

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

После того как удалось заставить датчик подключаться к сети, мне стало интересно, а что ещё можно сделать из термометра? Сам чип достаточно функциональный, в нём есть I2C, SPI, несколько UART, и даже USB. Жаль только, что в версии, которая стоит в датчике на выводы чипа выведено немного из того что есть внутри чипа. И ещё сама разводка платы тоже накладывает ограничения, если мы не хотим паяться к ножкам микроконтроллера или разводить отдельную плату под неё. Конечно, есть модули с чипом TLSR82658 на алиэкспрессе, TB03F, TB04 но для них требуется отдельная плата или навесной монтаж, потому это не наш вариант.

Итак, что в теории можно сделать?

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

Тестовые серверы Telegram: инструкция по эксплуатации

Reading time11 min
Views15K

Про разработку ботов в Telegram написано много текстов, а про «тестовый дата-центр» практически ничего. Ранее Pavelgram освещал этот вопрос: он кратко рассказал, что такое тестовые серверы и как с ними работать. Я продолжу это начинание.

Эта статья — сборник разбросанной документации и результатов экспериментов. Под катом расскажу о технических особенностях тестового окружения для разработки, покажу примеры ботов и юзерботов. В качестве бонуса — история «о жизни в тестовом контуре».
Читать дальше →
Total votes 64: ↑64 and ↓0+64
Comments6

AGLoRa 2.0 Вторая версия LoRa трекера. Всё сломать и переделать

Level of difficultyEasy
Reading time8 min
Views4.8K

Всем привет! Прошла пара лет с того момента как я попробовал сделать прототип... Хотя нет, начну с начала. 

Все началось с той самой статьи про LoRa котика! После того как несколько человек прислало мне на неё ссылку я подумал что штука может оказаться интересной, после чего запилил прототип своего LoRa трекера на Arduino, просто посмотреть как оно вообще может работать. Оно заработало, я опубликовал проект и пообщался с теми кто пробовал его собрать.

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

Любопытненько
Total votes 14: ↑14 and ↓0+14
Comments16

Доменные имена с валидным SSL для локальных Docker-контейнеров

Level of difficultyEasy
Reading time6 min
Views9.9K

image


Ранее (11 февраля 2019) пост уже публиковался мной с таким заголовком, но был отправлен в небытие по причине смерти домена, а как следствие и сервиса с ним связанного. Причин тогда было две — статистика скачивания докер-образа оставляла желать лучшего, и цена за продление домена (что был зарегистрирован в nic) стала для меня неожиданно выше той, которую я был морально готов заплатить за него.


Но есть время не продлять домены разбрасывать камни, а есть время извиниться за сделанную ошибку. Все, кому сервис был полезен, кто им пользовался и однажды заметил что он (localhost.tools) не резолвится — приношу свои извинения, и исправляю ситуацию (лучше поздно чем никогда, верно?).


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

Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments28

Вот почему мы всегда пишем селекторы на XPath

Reading time7 min
Views22K

Привет, Хабр! Сегодня хочется поговорить про XPath — мощный и гибкий инструмент для работы с веб-интерфейсами, который при этом почему-то остается не особенно популярным. Статей и мануалов по XPath очень много, и в этом посте я постараюсь рассказать, как мы применяем данный инструмент и почему считаем его более эффективным, чем другие подходы. Если вам знаком термин “селектор”, а тем более — если вы слышали про XPath, добро пожаловать под кат, там много полезного!

Читать далее
Total votes 19: ↑15 and ↓4+11
Comments21

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

Reading time5 min
Views9.4K

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


screenshot

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

Django Admin с миллионами записей — 11 практик оптимизаций для начинающих

Reading time8 min
Views21K

Django — самый популярный Python web-framework. За больше чем 10 лет оброс огромным слоем возможностей. Среди них можно выделить — Django Admin — это готовый CRUDL интерфейс с поиском, фильтрами и хитрыми настройками.


Каждый раз стартуя проект на Django, удивляюсь насколько круто иметь админку — web интерфейс просмотра данных. Да еще и бесплатно.


Каждый раз поддерживая проект на Django, удивляюсь, как же сложно поддерживать админку в рабочем состоянии.


В этой статье я постараюсь привести 11 практик, которые позволят избегать тормозов админки максимально долго.

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

Полезные консольные Linux утилиты

Reading time13 min
Views107K

В этой подборке представлены полезные малоизвестные консольные Linux утилиты. В списке не представлены Pentest утилиты, так как у них есть своя подборка.


Осторожно много скриншотов. Добавил до ката утилиту binenv.


binenv — cамая интересная утилита для установки новых популярных программ в linux, но которых нет в пакетном менеджере.

Читать дальше →
Total votes 118: ↑114 and ↓4+110
Comments110

Как создать свою собственную Луну

Reading time6 min
Views8K

В этой статье рассказывается, как с нуля изготовить 3D-модель Луны. Казалось бы, Зачем создавать модель Луны самому, если её можно купить? Хотя бы потому, что при самостоятельном изготовлении модели Луны вы сможете задавать желаемые параметры, например размеры и толщину оболочки, разрешение изображения, пределы вращения, положение секущей плоскости, сможете сделать отверстие для лампы и так далее. Приступим же к творению своей собственной Луны.

Приятного чтения
Total votes 11: ↑9 and ↓2+7
Comments1

Масштабируемый Продакшн-реди Телеграм бот на Django

Reading time6 min
Views37K

На хабре очень много статей о том, как создать простейшего Телеграм бота с кнопками и логикой. Есть инструкции, как это все запустить на сервере. В этой статье я расскажу, как делать масштабируемых ботов "для продакшена", которыми смогут пользоваться сотни тысяч пользователей.

Читать далее
Total votes 25: ↑22 and ↓3+19
Comments20

Файловый сервер на Samba, видимый отовсюду

Reading time2 min
Views22K
В этой краткой заметке я не буду касаться настройки Samba, благо таких материалов в сети более, чем достаточно.

Я хотел бы рассказать о том, как сделать доступ к файловому серверу удобнее.



TL;DR: настройка Avahi и WSD, чтобы файловый сервер отображался в сетевом окружении в Windows, в MacOS и в Ubuntu (и в других дистрибутивах, разумеется, но в них я не проверял).
Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments3

Среда разработки PHP на базе Docker

Reading time12 min
Views56K

Решение на базе Docker, которое позволит создать на локальном компьютере универсальную среду разработки на PHP за 30 - 40 минут. Несколько версий PHP — 7.3 и 7.1 с набором наиболее востребованных расширений. Готовый к работе монитор процессов Supervisor. Предварительно сконфигурированный веб-сервер Nginx. Базы данных: MySQL 5.7MySQL 8PostgreSQLMongoDB 4.2Redis. Настройка основных параметров окружения через файл .env. Возможность модификации сервисов через docker-compose.yml.

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

Vue.js компонент для справки/документации

Reading time4 min
Views3.9K

VB-preview


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

Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments1

Пять интересных способов использования Array.reduce() (и один скучный путь)

Reading time7 min
Views72K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Five Interesting Ways to Use Array.reduce() (And One Boring Way)" автора Chris Ferdinandi.


Из всех современных методов работы с массивами самым сложным из всех, что мне пришлось использовать, был Array.reduce().


На первый взгляд он кажется простым, скучным методом, который мало что дает. Но, не смотря на свой скромный вид, Array.reduce() является мощным и гибким дополнением к вашему набору инструментов разработчика.


Сегодня рассмотрим некоторые интересные вещи, которые можно сделать с помощью Array.reduce().

Читать дальше →
Total votes 19: ↑13 and ↓6+7
Comments79

Знакомьтесь, <details>

Reading time3 min
Views62K

Я хочу рассказать о замечательном элементе <details> и показать несколько примеров его использования, от простых до безумных.

Total votes 66: ↑63 and ↓3+60
Comments37

Админка за 5 минут. Фронтэнд — react-admin, бэкэнд — Flask-RESTful

Reading time5 min
Views52K


Если нужно на коленке получить быстро админку, где фронтендом будет react-admin, а бэкендом Flask-RESTful api, то ниже минимальный код в несколько десятков строк, чтобы это реализовать.
Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments41

Arduino и прерывания таймера

Reading time8 min
Views155K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Timer interrupts" автора E.


Предисловие


Плата Arduino позволяет быстро и минимальными средствами решить самые разные задачи. Но там где нужны произвольные интервалы времени (периодический опрос датчиков, высокоточные ШИМ сигналы, импульсы большой длительности) стандартные библиотечные функции задержки не удобны. На время их действия скетч приостанавливается и управлять им становится невозможно.


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


Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments19

Радиолюбительская технология: производство печатной платы прототипа на китайской фабрике

Reading time6 min
Views19K

Цель публикации: рассказать, как с минимальными затратами времени и денег изготовить несложную печатную плату.


Как уже было написано ранее, творчество радиолюбителей имеет ограниченный возможностями семьи бюджет и имеет ограничение по отнятому у семьи времени. В борьбе с этими ограничениями радиолюбителям помогает применение CAD/CAM. Причём, CAD может быть установлен на домашнем компьютере, а CAM располагаться в другой части света.


В этой статье описано: как подготовить и выгрузить из CAD Eagle 7.7.0 задание в формате Gerber RS274X для CAM, расположенной в КНР; как оформить заказ на изготовление печатной платы и её доставку в РФ.

Читать дальше →
Total votes 35: ↑26 and ↓9+17
Comments37

Реверс-инжиниринг бинарного формата на примере файлов Korg SNG. Часть 2

Reading time7 min
Views4.3K


В прошлой статье я описал ход рассуждений при разборе неизвестного двоичного формата данных. Используя Hex-редактор Synalaze It!, я показал как можно разобрать заголовок двоичного файла и выделить основные блоки данных. Так как в случае формата SNG эти блоки образуют иерархическую структуру, мне удалось использовать рекурсию в грамматике для автоматического построения их древовидного представления в понятном человеку виде.

В этой статье я опишу похожий подход, который я использовал для разбора непосредственно музыкальных данных. С помощью встроенных возможностей Hex-редактора я создам прототип конвертера данных в распространенный и простой формат Midi. Нам придется столкнуться с рядом подводных камней и поломать голову над простой на первый взгляд задачей конвертации временных отсчетов. Наконец, я объясню как можно использовать полученные наработки и грамматику двоичного файла для генерации части кода будущего конвертера.
Total votes 11: ↑11 and ↓0+11
Comments2
1
23 ...

Information

Rating
Does not participate
Location
Псков, Псковская обл., Россия
Date of birth
Registered
Activity