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

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

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

Level of difficulty Easy
Reading time 8 min
Views 3.4K
Tutorial

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

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

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

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

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

Level of difficulty Easy
Reading time 6 min
Views 7.9K
Tutorial

image


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


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


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

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

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

Reading time 7 min
Views 20K

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

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

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

Reading time 5 min
Views 8.9K
Translation

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


screenshot

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

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

Reading time 8 min
Views 18K

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


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


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


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

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

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

Reading time 13 min
Views 96K

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


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


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

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

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

Reading time 6 min
Views 7.4K
Tutorial
Translation

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

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

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

Reading time 6 min
Views 35K
Tutorial

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

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

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

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

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



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

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

Reading time 12 min
Views 50K

Решение на базе 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
Comments 38

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

Reading time 4 min
Views 3.6K

VB-preview


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

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

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

Reading time 7 min
Views 66K

Привет, Хабр! Представляю вашему вниманию перевод статьи "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
Comments 78

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

Reading time 3 min
Views 57K
Tutorial

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

Total votes 66: ↑63 and ↓3 +60
Comments 37

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

Reading time 5 min
Views 48K
Tutorial


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

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

Reading time 8 min
Views 140K

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


Предисловие


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


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


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

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

Reading time 6 min
Views 19K
Tutorial

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


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


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

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

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

Reading time 7 min
Views 4.1K


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

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

JSON API – работаем по спецификации

Reading time 23 min
Views 145K
В последнее время веб-разработка разделилась. Теперь мы все не full-stack программисты — мы фронтендеры и бэкендеры. А самое сложное в этом, как и везде, это проблема взаимодействия и интеграции.

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

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


Total votes 71: ↑68 and ↓3 +65
Comments 110

«CMS» на базе Google Spreadsheets для статических сайтов

Reading time 2 min
Views 9.8K
Tutorial


Все чаще для рассказа о мероприятии/товаре/услуге компании создают сайты на базе каких либо конструкторов. Либо своими силами, либо привлекая дизайнеров и без участия программиста. Современные конструкторы позволяют собрать классный, яркий, эффектный сайт, но статичный. Любые изменения нужно вносить «ручками в редакторе» и перепубликовать страницу. Но что делать, если данные меняются очень часто или хочется добавить немного автоматизации — вот тут и могут помочь Гугл Таблицы и Charts Query Language (и знакомы программист).
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 4

27 отличных open source-инструментов для веб-разработки

Reading time 3 min
Views 51K
Translation


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Total votes 70: ↑55 and ↓15 +40
Comments 10

Information

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