Pull to refresh
0
0

User

Send message

Как установить умный дом Home Assistant

Reading time3 min
Views79K
Это статья написана для напоминания, что умный дом стал намного ближе, чем мы думали.

Home Assistant-это open-source платформа для автоматизации, работающая на Python 3. Позволяет отслеживать и контролировать все устройства в доме и автоматизировать действия. Идеально может работать на одноплатном компьютере Raspberry PI.

Посмотреть демо



Что такое умный дом можно почитать в википедии тут и тут.

Давайте по порядку:

1. Центральное ядро
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments36

Введение в алгоритм A*

Reading time10 min
Views177K
При разработке игр нам часто нужно находить пути из одной точки в другую. Мы не просто стремимся найти кратчайшее расстояние, нам также нужно учесть и длительность движения. Передвигайте звёздочку (начальную точку) и крестик (конечную точку), чтобы увидеть кратчайший путь. [Прим. пер.: в статьях этого автора всегда много интерактивных вставок, рекомендую сходить в оригинал статьи.]


Для поиска этого пути можно использовать алгоритм поиска по графу, который применим, если карта представляет собой граф. A* часто используется в качестве алгоритма поиска по графу. Поиск в ширину — это простейший из алгоритмов поиска по графу, поэтому давайте начнём с него и постепенно перейдём к A*.
Total votes 70: ↑69 and ↓1+68
Comments20

Создание игры на Unreal Engine 4 за 150 часов (видео + исходники)

Reading time6 min
Views186K
Приветствую, Хабр! Хотел бы познакомить вас с относительно небольшим проектом, который я сделал c нуля примерно за 150 часов (50 заходов ~3 часа каждый) на Unreal Engine 4. Проект я делал в прямом эфире только на стримах раз в неделю (в общей сложности ушел год), попутно отвечая на вопросы пользователей.

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

  • Планирование и прототипирование проекта
  • Продумывание и реализация архитектуры проекта и отдельных его компонентов
  • Реализация интерфейса пользователя
  • Отладка и исправление ошибок
  • Работа с ассетами и графикой

image

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

Если вам интересны подробности проекта, записи стримов, исходники и прочее, читайте далее.
Total votes 103: ↑99 and ↓4+95
Comments45

Как сделать очередного бота в Telegram

Reading time5 min
Views47K

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



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

Подробности и пицца под катом
Total votes 17: ↑14 and ↓3+11
Comments14

Что не так с интерфейсами авиасервисов и как это исправить: подход проекта Aviageek

Reading time3 min
Views24K
image

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

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

Эта схема, безусловно, доказала свою жизнеспособность, однако и она не лишена недостатков. Мы постарались исправить ситуацию в проекте Aviageek.
Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments123

Несколько полезных кейсов при работе с массивами в JavaScript

Reading time5 min
Views38K
Очень часто на тостере вижу вопросы вида «Как отсортировать массив в JavaScript по определенному правилу?», «Как сделать с массивом в JavaScript <действие>?» и т.д.

Под катом собраны некоторые манипуляции над массивами.
Читать дальше →
Total votes 25: ↑19 and ↓6+13
Comments36

Torrents Time: Popcorn Time в виде плагина для браузера. Уже поддерживается на The Pirate Bay

Reading time3 min
Views29K
image

Сервис Popcorn Time для просмотра видеофайлов с торрентов без предварительного скачивания, стал доступен в виде плагина для браузера. Плагин с открытым кодом поддерживается на специальном сайте для онлайн-просмотра видео Popcorn Time Online.

Плагин доступен для Internet Explorer, Chrome и Firefox под операционки Windows 7 (и выше) и OS X 10.8 (и выше). Разработчики обещают добавить поддержку Safari уже через несколько недель. Возможно, что и Edge не останется в стороне.

Более того, один из старейших и популярнейших трекеров, непотопляемый The Pirate Bay, также оперативно организовал поддержку плагина в своей поисковой системе.

История вопроса


Popcorn Time изначально появился как клиент для скачивания торрент-файлов со встроенным медиапроигрывателем. Поскольку чаще всего пользователей интересуют торренты с видеофайлами (фильмами и эпизодами сериалов), вполне логично было ожидать появления подобного ПО.
Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments34

go-скрипт который делает аудиокнигу из текстового файла используя один из лучших синтезаторов речи — Ivona от Amazon

Reading time2 min
Views41K
Указываем в скрипте путь на книгу в txt — на выходе получаем папку с озвучкой хорошим синтезом.
Читать дальше →
Total votes 42: ↑34 and ↓8+26
Comments36

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

Reading time5 min
Views121K


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

Читать дальше →
Total votes 94: ↑91 and ↓3+88
Comments44

git punish – команда которой мне всегда нехватало

Reading time1 min
Views5.2K
Бывает, хочется подойти к подсказанным git blame-ом коллегам, посмотреть им ласково в глаза и поговорить о наболевшем. В такие моменты отсутствие команды git punish кажется невообразимым.
К счастью, это поправимо
Total votes 35: ↑15 and ↓20-5
Comments26

Настраиваем сочетания клавиш в Linux наподобие Mac OS X

Reading time4 min
Views28K

Раньше, у меня довольно часто возникала такая ситуация, когда одновременно работаешь в терминале и, например, в браузере.
После нескольких часов работы начинаешь путаться и в терминале вместо [Ctrl]+[Shift]+[C] нажимаешь [Ctrl]+[C], а в браузере наоборот. В итоге в терминале вы получаете прерывание а в браузере вместо ожидаемого эффекта у вас медленно прогружается дебаггер.
В один прекрасный момент меня это достало и я решил, что пора что-то менять…
Меня тоже это достало!
Total votes 26: ↑20 and ↓6+14
Comments54

Android архитектура клиент-серверного приложения

Reading time13 min
Views105K
Клиент-серверные приложения являются самыми распространенными и в то же время самыми сложными в разработке. Проблемы возникают на любом этапе, от выбора средств для выполнения запросов до методов кэширования результата. Если вы хотите узнать, как можно грамотно организовать сложную архитектуру, которая обеспечит стабильную работу вашего приложения, прошу под кат.


Читать дальше →
Total votes 30: ↑27 and ↓3+24
Comments36

Как быстро раздать wifi с ноутбука — 3 простых команды

Reading time2 min
Views719K
Периодически я сталкиваюсь с ситуациями, когда необходимо быстро настроить раздачу интернета через WiFi со своего ноутбука и под рукой нет специальной программы. Вот и сейчас мой роутер приказал долго жить и оставил дом без интернета. А не так давно телефон друга отказался подключаться к моему роутеру и мы быстро организовали дополнительный wifi-сигнал с моего ноута, что спасло ситуацию.

И помогают мне в этом 3 команды:
netsh wlan set hostednetwork mode=allow
netsh wlan set hostednetwork mode=allow ssid=FastWifi key=12345678 keyUsage=persistent
netsh wlan start hostednetwork

Под катом я детально расскажу как и что нужно делать и покажу на примере настройки Windows 7.

Читать дальше →
Total votes 66: ↑39 and ↓27+12
Comments21

Новости проекта Qucs: подготовка к релизу 0.0.19

Reading time2 min
Views12K


Qucs — это симулятор электронных схем с открытым кодом. О нём рассказывает моя предыдущая статья на Хабре.

Сейчас наш проект готовится к следующему релизу 0.0.19, который выйдет до 1 сентября текущего года. За время с предыдущего релиза (1 сентября 2014) 6 разработчиков совершили более 700 коммитов. Данная заметка содержит краткий обзор ожидаемых новшеств.

Скачать снапшоты предрелизной версии можно здесь:


Снапшоты не рекомендованы для использования в повседневной работе! Это тестовая версия! Для работы используйте стабильную версию 0.0.18

О найденных багах сообщать в наш багтрекер: github.com/Qucs/qucs/issues

Под катом краткий обзор изменений.
Читать дальше →
Total votes 38: ↑38 and ↓0+38
Comments11

Установка php5.5+php-fpm+mysql+nginx на Mac OS X Mavericks

Reading time7 min
Views86K
Каждый веб-разработчик, выбравший Mac, после первичной настройки системы ищет рабочий инструментарий. И если c IDE и редакторами всё понятно, то что-либо подобное по удобству win-довым OpenServer или Denwer за бесплатно найти трудно. Есть отличное решение MAMP PRO, но оно стоит две тысячи деревянных. Да и работа через Apache некоторых может смутить.

Занимаясь решением этого вопроса, набрёл на интереснейший материал, который рассказывает о том, как при помощи консольного пакет-менеджера Homebrew настроить рабочее пространство буквально за 5-10 минут. Публикую его перевод, потому что кому-нибудь подобная инструкция по настройке веб-окружения на Mac обязательно пригодится.

Читать дальше →
Total votes 58: ↑40 and ↓18+22
Comments75

Nginx и https. Получаем класс А+

Reading time4 min
Views161K
image

Недавно вспомнилось мне, что есть такой сервис — StartSsl, который совершенно бесплатно раздаёт trusted сертификаты владельцам доменов для личного использования. Да и выходные попались свободные. В общем сейчас напишу, как в nginx настроить HTTPS, чтобы при проверке в SSL Labs получить рейтинг А+ и обезопасить себя от последних багов с помощью выпиливания SSL.

Итак, приступим. Будем считать, что у вы уже зарегистрировались на StartSsl, прошли персональную проверку и получили вожделенный сертификат. Для начала опубликую итоговый конфиг, а после этого разберу его.
Читать дальше →
Total votes 61: ↑52 and ↓9+43
Comments85

Именование сложных действий в REST API

Reading time3 min
Views61K
Во всех руководствах в описаниях REST дают простые примеры, типа вот вам пользователи, они будут ресурсом /users, вот вам один пользователь, он будет /users/[id] и действия с ним добавить\удалить\изменить.

А что если действия сложные или комплексные и не вписываются в GET\POST\DELETE?

Читать дальше →
Total votes 64: ↑51 and ↓13+38
Comments113

Navigation Drawer в стиле Material Design за 5 минут

Reading time9 min
Views114K
imageВ данной статье я расскажу, как быстро добавить в ваше приложение для Android боковое меню (aka Navigation Drawer) в стиле Material Design. Для этого мы воспользуемся библиотекой, любезно предоставленной Mike Penz.

У вас получится Navigation Drawer, который:

  • Соответствует последним рекомендациям по дизайну (Google Material Design Guidelines);
  • Поддерживает использование нескольких Drawer (можно выдвигать второй справа);
  • Поддерживает использование бейджей;
  • Имеет простой и понятный интерфейс (API);
  • Может выползать как под, так и поверх Status Bar;
  • Позволяет менять иконки, цвета, бейджи во время выполнения;
  • Использует AppCompat support library;
  • Работает, начиная с API 14.

Помимо этого, новички обучатся интеграции сторонних библиотек в свой проект, что крайне полезно, учитывая их грандиозное разнообразие на Github.

Читать дальше →
Total votes 24: ↑20 and ↓4+16
Comments21

Кроссплатформенное приложение в Android Studio на jMonkeyEngine 3

Reading time6 min
Views23K
jMonkeyEngine (jME) — трёхмерный игровой движок с открытым исходным кодом. Написан на Java и использует по умолчанию LWJGL для рендеринга. Полностью поддерживаются версии OpenGL со второй по четвёртую.
Как-то раз упоминался на Хабре в далёком 2010-м году.

Помимо характеристик примечателен джавой и не очень примечателен средой разработки NetBeans, которая идёт в комплекте с SDK.

В данной статье хочу рассказать о том, как прикрутить обезьянку к привычной Android Studio.
Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments1
1
23 ...

Information

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