Обновить
0
0
Андрей @andreypaa

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

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

Как работать с метками времени (timestamp) в PostgreSQL?

Время на прочтение9 мин
Просмотры217K
Тема работы с временными метками в PostgreSQL плохо раскрыта в русскоязычных профильных публикациях в Интернете и служит частым источником проблем в работе программистов. Предлагаю вашему вниманию перевод материала от Hubert Lubaczewski, автора популярного зарубежного блога depesz.com. Надеюсь, статья будет для вас полезна!

image

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

ATtiny85: прототип беспроводного сенсора

Время на прочтение14 мин
Просмотры64K

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





Цель — создать сенсор работающий, условно говоря, в коробке с искусственным освещением и передающий температуру и статус освещения с немедленной реакцией на изменение освещения: включилось, отключилось, мигнуло. Сенсор решено было сделать мобильным и питать от элемента CR2032, иначе говоря, при разряде до 2.7V (предел для датчика TMP36), можно рассчитывать на 200mAh.



Микроконтроллер ATtiny85 имеет всего 5 портов ввода/вывода и возможность отключить RESET в пользу дополнительного порта. Данный бюджет был распределён следующим образом:



  • 3 порта — радиомодуль NRF24L01+, спецификация требует пять портов, но в данном случае это не приемлемо и будет использована 3-х пиновая конфигурация;
  • 1 порт — датчик освещения на базе фототранзистора BPW17N;
  • 2 порта — температурный датчик на базе TMP36, второй порт нужен для подачи питания, чтобы иметь возможность отключать датчик при необходимости.


Элементная база определена, можно приступать к проектированию.



Читать дальше →

Бескнопочные часы

Время на прочтение5 мин
Просмотры25K
Предлагаемые Вашему вниманию часы являются, по сути, побочным продуктом изучения свойств и повадок популярного зверя по кличке ESP8266. Думаю, любой человек, знакомящийся с каким-либо микропроцессором, рано или поздно реализует на нем свою версию часов.
Единственно, что отличает мои часы – у них нет кнопок. Вообще. Они просто показывают точное время.


— И все же, где же у него кнопка? © Приключения Электроника.

Узнать подробности

Получение сигнала ЭКГ на ПК и задел на ЭЭГ

Время на прочтение4 мин
Просмотры24K
В своей работе над диссертацией моя задача сводится к получению сигнала ЭЭГ. Это очень слабый электрический сигнал с поверхности коры головного мозга, который пробивается через костную ткань и слои эпидермиса. По сравнению с ЭЭГ есть более сильный электрический сигнал – ЭКГ. В этой статье расскажу про аппаратное и программное обеспечение, с помощью которого проводилось считывание сигнала ЭКГ и проведу анализ аппаратной части. Статья может быть полезна людям, которые также ведут работы в данном направлении.
Читать дальше →

Поднимаем сложный проект на Django с использованием Docker

Время на прочтение10 мин
Просмотры76K
Добрый день, коллеги.

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

Исходные данные у нас такие: начинается разработка проекта, в которой планируется «тонкий бэкенд». Т.е. бэк у нас состоит из закешированных страниц (рендерятся любым шаблонизатором), объёмных моделей с сопутствующей логикой (ORM) и REST API, выполняющего роль контроллера. Фактически, View в такой системе редуцировано и вынесено в JS, благо есть разные реакты, ангуляры и прочие вещи, которые позволяют фронтендщикам считать себя «белыми людьми».
Читать дальше →

Проектирование в PostgreSQL документо-ориентированного API: Комплексные запросы (Часть 4)

Время на прочтение6 мин
Просмотры6.8K
Хранение документов в Postgres немного проще, теперь у нас есть серьезные процедуры сохранения, возможность запускать полнотекстовый поиск, и некоторые простые процедуры поиска и фильтрации.

Это только половина истории, конечно же. Рудиментарные поиски могут служить нуждам приложения, но они никогда не будут работать в долгой перспективе, когда нам надо будет задавать более глубокие вопросы.
Читать дальше →

Полезные сниппеты для Nginx конфигов

Время на прочтение5 мин
Просмотры123K


Доброго времени суток, уважаемые хабравчане! В Elasticweb мы негласно ратуем за Nginx и, наверное, мы одни из немногих хостингов, которые не поддерживают Apache и .htaccess соответственно. В связи с этим, большое количество обращений в тех. поддержку связано с оказанием помощи в написании конфигурационного файла для Nginx. Поэтому мы решили собрать коллекцию полезных сниппетов и коллекцию готовых Nging конфигов для наиболее популярных CMS/CMF/Фреймворков на PHP.

Читать дальше →

Django ORM. Добавим сахарку

Время на прочтение6 мин
Просмотры28K


Фреймворк Django, пожалуй, самый популярный для языка Python. Однако, при всей его популярности, часто критикуют его ORM — а именно lookup синтаксис через подчеркивания. На самом деле, такой выбор синтаксиса вполне обоснован — он легок в понимании, расширяем, а главное — прост, как швабра. Тем не менее, хочется красоты, или даже прямо изящества. Но красота — понятие относительное, поэтому будем отталкиваться из конкретных задач. Если заинтриговал — добро пожаловать под кат.
Читать дальше →

«Дрон для сельского хозяйства» или как защитить растения без особых усилий

Время на прочтение4 мин
Просмотры28K
Всем доброго времени суток. Конечно, для живущих в мегаполисах эта статья мало чем пригодиться, однако, для людей, живущих «рядом с сельским хозяйством» думаю будет полезной. Буквально недавно всем известная компания DJI выпустила на рынок новинку – «Agras MG-1» — коптер, который является «распылителем». Попросту говоря, это октокоптер, несущий на борту бак с жидкостью и распылителем. «О! Додумались наконец-то» — подумал я. Именно эта идея была темой моей диссертации в институте, однако, сидящие там «профессора» сказали: — « А что тут нового? С самолетов-то уже опрыскивали, и научной новизны тут по сути нет». Ну и после нескольких таких фраз я понял, что никому у нас это не надо кроме меня. А делать то, что никому не надо я не люблю. Честно сказать было неприятно, что такую инновацию по сути «запинали ногами». На этом моя «научная» деятельность и утихла.

А эту статью я решил написать после того, как увидел ценник на новый DJI Argas, и этот ценник был 15000 $. Вы издеваетесь?! $15000 за коптер, красная цена которому 4 тысячи, ну максимум 5 со всей его суперэлектроникой.


Читать дальше →

Мой опыт миграции на PHP 7

Время на прочтение2 мин
Просмотры76K
image
Несколько дней назад я переключил свой сервер с порядка 30-ти сайтами на PHP 7. Некоторые из них были достаточно старыми и составляли широкий набор с различных фреймворков и CMS. Вот несколько советов для тех кто еще не решил переходить на PHP 7 или нет.

Начнем с того что я понимаю что есть много людей которые не считают стабильную версию действительно «стабильной» пока она чуть-чуть не повзрослела, ожидая что еще найдутся какие-то баги или несовместимости. С того что я пока видел, пробуя каждый release candidate как только он выходил, совсем безопасно переключиться на PHP 7 как только он выйдет. Я ни разу не заметил какого-то непонятного поведения или вылета которому виной не был бы я сам. Несмотря на то что это новая версия она не несет много несовместимых изменений, то есть по большому счету можете относиться к ней как к просто PHP 5.7 только существенно быстрее.
Читать дальше →

Нечто «крадет» место на диске?

Время на прочтение4 мин
Просмотры28K
Если Вы не следите за оставшимся свободным местом в корневом разделе — то Вас могут ожидать неприятные новости. В случае переполнения данного раздела, важные для Вашего проекта сервисы перестанут работать. Согласитесь, неработающий MySQL или web server скажется на проекте не лучшим образом.

Читать дальше →

Как я победил в конкурсе BigData от Beeline

Время на прочтение7 мин
Просмотры88K
image

Все уже много раз слышали про конкурс по машинному обучению от Билайн и даже читали статьи (раз, два). Теперь конкурс закончился, и так вышло, что первое место досталось мне. И хотя от предыдущих участников меня и отделяли всего сотые доли процента, я все же хотел бы рассказать, что же такого особенного сделал. На самом деле — ничего невероятного.
Читать дальше →

Бюджетная рассылка СМС

Время на прочтение8 мин
Просмотры48K
Приветствую всех хаброжителей!

Конечно, зализанная тема про рассылку смс сообщений, но как говориться: «много — не мало». Как-то так получилось, что именно она меня постоянно преследует: то одни, то другие добрые люди попросят принять участие (советом, например) в реализации бюджетной рассылки сообщений. И поэтому чтобы не пропадать накопленному добру, оставлю здесь, а вдруг кому-то пригодится…

Итак-с… Опускаем все варианты реализации на базе обычного компа и оси семейства NT. А перейдем сразу к «автономным» системам.

Чем может похвастаться arduino в этом направлении? Отвечу сразу, ОНО работает, но есть нюансы, о которых напишу ниже. Вообщем, имеем китайский вариант arduino 2560 (было перепробовано практически вся линейка) и два дополнительных модуля — сеть W5100 (наиболее стабильный вариант) и GSM SIM 900. Выглядит это все дело как-то так.

image

Задача была следующая:
— устройство должно уметь общаться по http
— отправлять сообщение
— выдавать результат в формате json

Гугл делится всей необходимой информацией, и на выходе получаем следующий код:

Читать дальше →

Заставляем сервис php-fpm 5.6, запущенный через systemd, читать глобальные переменные окружения

Время на прочтение6 мин
Просмотры14K
Это короткий how-to для реализации конфигурации php-сервиса, зависимого от окружения, в котором он запущен. Я буду рад, если кто-то подскажет более изящное решение или поправит в мелочах.

Основная идея


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

Проблема

В этой статье слишком много раз повторяется «переменные окружения».
Из коробки php-fpm игнорирует глобальные переменные окружения (getenv function), в то время как php cli их может получать.
Читать дальше →

Грандиозное тестирование аккумуляторов AA/AAA

Время на прочтение6 мин
Просмотры318K
После моего грандиозного тестирования батареек многие просили провести такие же основательные тесты NiMh-аккумуляторов. За четыре месяца я протестировал 198 аккумуляторов (44 модели AA и 35 моделей AAA).



Читать дальше →

ESP-8266 и уровень сигнала: выбор типа антенны

Время на прочтение3 мин
Просмотры47K
За прошедший с момента своего появления год ESP-8266 мутировал из аскетичной ревизии 01 в многоногих монстров вроде ESP-201 или NodeMCU board, способных существенно подвинуть младшие Ардуины из сегмента “меряю температуру, мигаю светодиодом”, выдавая бесплатным бонусом полноценный WI-FI. Собственно, в качестве этого самого Wi-Fi у разных ревизий платы я и предлагаю разобраться.

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

Вволю поупражнявшись в жонглировании слаболитературными оборотами сел гуглить, у кого из плат семейства ESP-8266 сигнал получше, но, вопреки ожиданиям, среди тонн статей и рулонов форумов этой информации найти не удалось. Посему решил восполнить этот пробел: стараниями дядюшки Ляо разжился четырьмя разными ревизиями платы с разными типами антенн, которые и будут участвовать в тестах уровня сигнала.
Читать дальше →

Собираем DJI f450 или почему я не купил Phantom 3

Время на прочтение4 мин
Просмотры47K
Немного истории. Квадрокоптер типа f450 у меня уже около 3х лет. За все это время на нем поменялись 3 комплекта двигателей, 2 комплекта регуляторов и пропеллеров: от дешевых turnigyдо t-motor. Но в итоге, после выхода комплекта E300 от DJI, я остановился именно на них. Этот набор* вместе с рамой я заказал с ebay.


Читать дальше →

Памятка евангелиста PostgreSQL: репликанты против репликации

Время на прочтение14 мин
Просмотры38K


В продолжение серии публикаций «Памятка евангелиста PostgreSQL...» (1, 2) дорогая редакция снова выходит на связь, на этот раз с обещанным обзором механизмов репликации в PostgreSQL и MySQL. Главным поводом для написания послужила частая критика репликации MySQL. Как это часто бывает, типичная критика представляет из себя забористую смесь из правды, полуправды и евангелизма. Всё это многократно реплицируется разными людьми без особых попыток разобраться в услышанном. А поскольку это довольно обширная тема, я решил вынести разбор в отдельную публикацию.
Читать дальше →

Использование ASF и Atmel Start в IAR

Время на прочтение3 мин
Просмотры6.5K


ASF и IAR


Библиотека для продуктов Atmel ASF имеет две версии: встроенную в Atmel Studio и так называемую stand-alone. Stand-alone версия может использоваться, например, в IAR. Так как сам по себе IAR несколько аскетичен с точки зрения различных фишек типа автозаполнения, то использование ASF как внешней библиотекой, не так интерактивно и удобно, как в Atmel Studio, но тем не менее, можно один раз все настроить и использовать новинку Atmel Start — WEB конфигуратор кода для удобства и ускорения разработки.
Читать дальше →

Обучение машинному обучению

Время на прочтение3 мин
Просмотры32K
beeline 100% match
Я не настоящий бигдатщик, я просто xgboost на github'e нашел.

Погоня за 500кр от Билайна заставила окунуться в мир машинного обучения, к коему я интерес проявлял и раньше, но доверия не оказывал и, соответственно, не окунался. Беглый поиск показал, что в этом плане рулит сейчас xgboost от китайских товарищей из вашингтонского университета. Как я понял, это что-то вроде Apple в области машинного обучения: нажал одну кнопку — получил быстро и красиво что хотел.
Читать дальше →

Информация

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