Search
Write a publication
Pull to refresh
3
0
Алексей @ParaPilot

User

Send message

Автоматизация вытяжки в ванной комнате

Reading time4 min
Views93K
Ванная комната является помещением, постоянно подвергающимся воздействию повышенной влажности и перепадам температуры — как результат, в нем с легкостью может поселиться плесень и грибок. Основной способ борьбы — вентиляция помещения. Вентиляция может быть как естественной, так и принудительной. Если естественная вентиляция монтируется еще на стадии строительства здания, то принудительная система вентиляции может быть реализована в любой момент времени.



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

Unit тесты на практике

Reading time12 min
Views147K
В последнее время появилось и продолжает появляться достаточно много публикаций на тему разработки через тестирование. Тема достаточно интересная и стоит того, чтобы посвятить её исследованию какую-то часть своего времени. В нашей команде мы используем модульное тестирование уже на протяжении года. В этой статье я хочу рассказать о том, что получилось и какой опыт в итоге мы приобрели.

Сразу оговорюсь, что примеры приводятся применительно к языку C# и платформе .NET. Соответственно, в других языках/платформах подходы и реализации могут отличаться.

Итак…
Читать дальше →

Юнит-тестирование для чайников

Reading time15 min
Views1.1M
Даже если вы никогда в жизни не думали, что занимаетесь тестированием, вы это делаете. Вы собираете свое приложение, нажимаете кнопку и проверяете, соответствует ли полученный результат вашим ожиданиям. Достаточно часто в приложении можно встретить формочки с кнопкой “Test it” или классы с названием TestController или MyServiceTestClient.



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

Оно выполняет свою задачу, но сложно для автоматизации. Как правило, тесты требуют, чтобы вся или почти вся система была развернута и сконфигурирована на машине, на которой они выполняются. Предположим, что вы разрабатываете web-приложение с UI и веб-сервисами. Минимальная комплектация, которая вам потребуется: браузер, веб-сервер, правильно настроенные веб-сервисы и база данных. На практике все еще сложнее. Разворачивать всё это на билд-сервере и всех машинах разработчиков?

We need to go deeper

Контроллер управления светодиодными RGB-лентами LED-C-01

Reading time4 min
Views24K
В настоящее время многоцветная светодиодная лента получила большое распространение и пользуется повсеместной популярностью во многих областях человеческой деятельности. Так, в частности, RGB-ленты можно встретить в обычных квартирах и загородных домах. Нередко их используют в качестве украшения магазинов или торговых центров. В последние годы светодиодные многоцветные ленты стали служить украшением для автомобилей и применяются в тюнинге.

Для того, чтобы управлять такой лентой необходим специальный контроллер. Мы разработали электронное устройство, предназначенное для управления многоцветной светодиодной лентой — контроллер LED-C-01.



Читать дальше - Осторожно! Много картинок.

Как компьютер сам свой код улучшал, или программируем процесс программирования

Reading time9 min
Views34K
На носу было придумывание темы для диплома, на кафедре популярностью пользовались различные варианты идей связанных с генетическими алгоритмами, а мне самому хотелось сделать что-нибудь этакое. Так и родилась идея, давшая начало данному проекту, а именно генетическому оптимизатору программного кода.



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

Например вот такая забавная оптимизация набора арифметических инструкций (взятых из какой-то подвернувшейся под руку математической библиотеки), соответствующих формулам: , которая на 6 джаве с выключенным JIT у меня давала около 10% ускорения, при этом на первый взгляд даже не очевидно что эти формулы эквивалентны (ОТКУДА ТУТ OR? ЭТО ВООБЩЕ ЗАКОННО?!), хотя это так. Под катом я расскажу, как именно получались такие результаты и каким образом компьютер придумывал лучший код чем тот, который мог написать я сам.
Читать дальше →

Интегрируем оплату через Paypal в web-приложение

Reading time21 min
Views75K
В данной статье рассмотрена интеграция разовых платежей, а также оплаты по подписке с помощью Paypal в веб-приложение. Примеры реализованы на PHP, но, в принципе, без особых проблем то же самое можно сделать с помощью других технологий. Данный метод выбран как компромисс между простотой и гибкостью. Это попытка написать руководство, которое поможет быстро разобраться в теме и интегрировать оплату через Paypal в свой проект.

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

Потрясающая коллекция бесплатных шрифтов за 2014 год

Reading time1 min
Views123K
Привет, Хабр! Многие уже знают о моей страсти к попытке собрать самое лучше, что может быть полезно для веб-разработчиков или веб дизайнеров. И шрифты — не исключение. Программное обеспечение для работы со шрифтами постоянно развивается. Количество дизайнеров желающих опробовать себя в типографике растет с каждый днем. А сегодня я хочу представить вам их наработки — 30 потрясающих бесплатных шрифтов, которые мне удалось собрать за последний год.

Polar



Polar

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

Microsoft добавил средство сбора телеметрии в Windows 7/8/8.1

Reading time1 min
Views301K
Сегодня на MS Windows 7 и 8.1 прилетели обновления KB3080149 и KB3075249. Телеметрическая информация передаётся на следующие сервера:
vortex-win.data.microsoft.com
settings-win.data.microsoft.com

Передача осуществляется через TCP по порту 443 с использованием SSL.
Для параноиков людей, беспокоящихся о несанкционированной передаче информации Microsoft (далее возможно и третьим лицам), предлагаю добавить сервера в список исключений маршрутизатора, а следующие строчки в файл hosts (%windir%\System32\drivers\etc\hosts):
127.0.0.1 vortex-win.data.microsoft.com
127.0.0.1 settings-win.data.microsoft.com

Простейший физический движок

Reading time4 min
Views65K
Вас интересуют игры? Хотите создать игру но не знаете с чего начать? Тогда вам сюда. В этой статье я рассмотрю простейший физический движок, с построения которого можно начать свой путь в GameDev'e. И да, движок будем писать с нуля.
Читать дальше →

Открытка-лабиринт. Подарок, который невозможно открыть, не разгадав головоломку

Reading time4 min
Views62K
Однажды я принёс другу на день рождения подарок, завёрнутый в бумагу с узором лабиринта. Друг пошутил, что было бы здорово, если бы надо было по-настоящему найти путь, чтобы открыть подарок. Мы принялись обсуждать, как можно построить механический лабиринт, причём без использования какой-либо электроники.
Так родилась идея к следующему празднику создать открытку-головоломку. В этой статье я расскажу, как её изготовить и какие тонкости нужно учесть.


Лабиринт в процессе прохождения.
Читать дальше →

Еще один сервер из подручных средств с претензией на красоту

Reading time6 min
Views16K


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

P.S. много фото.
Читать дальше →

Новое универсальное 2DIN головное устройство на базе Android для автомобиля. Построй свою мечту

Reading time4 min
Views32K
Всем привет.

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

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



Кто-то скажет: «Засунули Nexus 7 в приборную панель», и отчасти будут правы. На тематических ресурсах Nexus 7 часто используется для сборок подобного типа (у меня у самого N7 2013). Но мы хотим выйти за рамки «просто планшета в авто» и создать достойный продукт.
В связи с тем, что одну из центральных ролей в нашей жизни сейчас играет смартфон, предполагается максимально интегрировать его в будущую систему. По сути сделать смарт — сервером, а головное устройство (далее ГУ) терминалом. Технологий и протоколов для осуществления похожего функционала существует целый набор: Android Auto, Apple CarPlay, MirrorLink, Miracast, MHL и т.д.
Если вам интересна судьба данного устройства, если вы хотите поучаствовать в его создании, поделиться опытом, подсказать интересные решения определить его конечный вид — добро пожаловать под кат.
Читать дальше →

Android на x86 ноутбуке

Reading time4 min
Views53K
image
image

Попался в руки старый нетбук Acer Aspire One, самый первый из них, с 8 Гб тормознутой флешки вместо диска. За время активной жизни на нем были WinXP (очень медленно) и Arch Linux (едва приемлемо). Я уже собирался вернуть на него обратно Arch и потом в меру сил придумывать, зачем же он нужен, но тут наткнулся на проект Android х86. Он более-менее развивается и направлен на запуск Андроида на ноутбуках, планшетах и иногда настольных компьютерах с архитектурой х86. Началось все с порта на Asus Eee PC в районе версии 1.6, но постепенно поддержка разнообразного настольного железа расширилась. Сейчас доступна для скачивания версия 4.4-r3, 5.0 в работе. Соответствие между ветками для х86 и теми, что устанавливаются на телефоны для меня крайне призрачны, потому что сталкиваться с потрохами системы не приходилось. Есть еще аналогичный проект Android-IA, курируемый Intel, но там поддерживается меньше железа и обязательно требуется UEFI для загрузки.
Читать дальше →

«Почти умный» тёплый пол на Arduino

Reading time6 min
Views34K
Мой обычный вечер — это посиделки за компьютером. Холодными вечерами частенько появлялось желание сделать моё место отдыха комфортнее. Точнее, периодически было просто холодно ногам. Идеи были различные, вплоть до покупки USB тапочек с подогревом. Однако, все они казались мне нелепыми и отметались. И вот однажды, просматривая YouTube канал одного из любителей Arduino, я наткнулся на видео, где рассказывалось про инфракрасную плёнку. Увидев эту плёнку, я сразу понял: «Вот то, что мне надо!»

Данный проект можно кратко описать так: я положил кусок инфракрасной плёнки под дополнительный слой паркета, добавив к нему систему автоматического управления с помощью Arduino, нескольких датчиков и VB.NET. Теперь по порядку, что и как получилось.


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

«МойОфис»: Первые шаги

Reading time3 min
Views66K
Позвольте представиться, мы – «Новые облачные технологии», команда разработчиков проекта «МойОфис». Коллектив состоит из инженеров, принимавших участие в создании офисных пакетов «Лексикона» и мобильного QuickOffice. Не так давно о нас уже успели рассказать на CNews, «МегаМозге» и даже вышел небольшой пользовательский обзор.

Пришло время для повествования от первого лица. Эта статья открывает наш блог на «Хабрахабре», в котором мы будем писать о том, кто мы и что делаем. Давайте знакомиться!


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

Сравнение .NET календарей. Опыт первого знакомства

Reading time10 min
Views16K
Онлайн-планировщики хороши тем, что позволяют получить доступ к вашему календарю с любого устройства. При этом не стоит беспокоиться о сохранности данных в случае проблем с компьютером или смартфоном или о синхронизации расписаний между устройствами. Однако, количество инструментов, предназначенных для создания таких планировщиков может вызвать недоумение. Существуют JavaScript календари, .NET календари. Календари могут быть сторонними плагинами для популярных фреймворков или одним из компонентов этих фрейморков. Доступны также и stand-alone календари с возможностью интеграции с другими продуктами. Задача этой статьи — рассмотреть четыре разных .NET компоненты с целью помочь выяснить, на какой из них стоит обратить внимание и какой лучше подходит для пользователей разного уровня.

image

Вот список претендентов на сегодня:

— DayPilot ASP.NET Event Calendar
— DHTMLX Scheduler .NET
— Devexpress ASP.NET Scheduler
— Telerik .NET Scheduler

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

Итак, приступим.
Читать дальше →

Фриланс из палатки

Reading time6 min
Views32K
За два с лишним года моей работы в офисе у меня было огромное количество интересных задач, которые иногда были даже чересчур интересными и затягивали похлеще игровых автоматов и компьютерных игр. Многие люди с нетерпением и трепетом ждут каждой пятницы и с тоской провожают вечер воскресения в предчувствии очередного понедельника. В моем же случае понедельников особо бояться не приходилось, так как я занимался тем, что мне нравится, и было очень приятно осознавать, что я выбрал профессию, которая была мне по душе.

Но какой бы интересной не была работа программиста, рано или поздно она неизбежно превращается в рутину. В силу интересности задач, ежедневный восьмичасовой рабочий день пролетал практически незаметно и два с лишним года в офисе после университета промелькнули, словно две недели. Остерегаясь пропустить еще лет 10 своей жизни, я решил, что нужно что то менять. Параллельно с основной работой я иногда фрилансил для расширения стека технологий и небольшого дополнительного заработка, поэтому появилась идея на некоторое время полностью перейти на фриланс, поездить по миру и поработать из разных городов. При этом хотелось посетить как можно больше стран, и не просто посетить «для галочки» города и известные достопримечательности, а получше узнать культуру каждой страны, быт и особенности местного населения, увидеть, чем, к примеру, восточная Чехия отличается от западной… И тут мне в голову пришла гениальная идея, поехать в Европу на велике.
Читать дальше →

Используем SVG на сайте

Reading time6 min
Views228K


Оставим за скобками вопрос о целесообразности использования SVG на сайте. Каждый сам для себя должен определить полезность этой технологии. Тем более что эта тема поднималась уже неоднократно.

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

Статья рассчитана в первую очередь на тех, кто до сих пор не использует векторную графику на своих сайтах, но очень хочет быть одной ногой в будущем настоящем.
Для любопытных сразу приведу сводную таблицу:
Иконочный шрифт IMG, background-image Object Inline
CSS Манипуляции Частично1 Нет Частично2 Да
JS манипуляции Частично1 Нет Да Да
SVG анимации Нет Да Да Да
Интерактивные SVG анимации Нет Нет Да Да
Читать дальше →

Arduino Mega Server

Reading time7 min
Views95K
image

Да, это снова Ардуино, но не спешите закрывать страничку, на этот раз вас ждёт нечто действительно новое и интересное. В основном в этой статье речь пойдёт о микроконтроллерных платах Arduino Mega и плате сетевого интерфейса Ethernet Shield W5100 и о том чуде, которое можно с ними сотворить если позволить себе выйти за рамки стереотипов.
Читать дальше →

Information

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