The best software engineer in the Universe!
Как записать электрогитару в Cubase 5
Если при записи вы хотите использовать различные vst плагины, или виртуальные гитарные процессоры типа Guitar Rig, то может возникнуть проблема задержки в звуке. То есть вы дернули струну, а обработанный плагином гитарный звук слышите через какое-то время. Это время составляет доли секунды, однако бывает довольно заметным и не позволит вам нормально играть. Так вот, чтобы это время было минимальным необходимо установить ASIO-драйвер, который позволяет установить минимальное время задержки. К тому же для качественной записи необходима более-менее хорошая звуковая карта. Например можно использовать недорогую E-MU 0404. Она может быть как внутренней с интерфейсом PCI, так и внешней, подключаемой к компьютеру посредством USB-кабеля. Вместе с картой идет ASIO-драйвер, который необходимо установить.
Битва за конверсию
Мы проведем обзор публичных инструментов, которые мы использовали, чтобы повысить конверсию Бурук на 25% и сделать пользователей немного счастливее. В конце — про новинку от Google Analytics, которая позволяет связать онлайн источники трафика с оффлайн конверсией.
Работа над повышением конверсии состоит из нескольких этапов. Какой из них важнее — сразу и не скажешь, важно, что работа происходит итеративно и информация, полученная на предыдущей итерации, используется для следующей.
Повысить конверсию просто.
Effeckt.css от команды HTML5 Boilerplate: избранные эффекты и переходы на CSS

Подборка полезного для любителей Twitter Bootstrap
Инструменты

Bootstraptor — подборка большого количества бесплатных и премиум тем, в том числе Starter Kit, на основе Bootstrap.
Чем забита ваша память или анализируем содержимое кеша XCache

Вас смущает это число? Меня тоже.
В первую очередь мой пост обращен к тем, кто размещает множество сайтов на сервере. Для остальных он тоже может быть полезен, поскольку с помощью его вы сможете быстро добавить группировку по фрагментам путей закешированных файлов.
Возможно, вы выделили слишком много оперативной памяти под кеш. Размер его можно значительно уменьшить путем отключения тяжеловесных, но редко посещаемых сайтов. Я вам помогу вычислить такие сайты.
Структура конфигов на сайтах Алавар
Сайты Alawar — это сайты для русского, американского, европейских и других рынков, отдельные сайты для mobile-устройств, сайты партнерских программ и др. Все они развернуты на одном инстансе Yii, о чем мы уже писали в нашем блоге на хабре.
Сегодня я расскажу, как мы организовали хранение, структуру и управление конфигами наших сайтов, какие при этом получили преимущества. А также поведаю, как осуществляется деплой нашего проекта в различных окружениях.
Coursera для музыкантов: краткий обзор курсов
- ознакомиться с физическими основами звука и акустики;
- получить базовое или расширить понимание теории музыки, психоакустики и т.п.;
- познакомиться с цифровой обработкой звука, программными инструментами и механизмами обработки;
- научиться писать свои простейшие программы для обработки звука;
- наконец, научиться игре на гитаре, джазовой импровизации, управлению репетициями и другим интересным вещам.
Конвертация FLAC в MP3
FLAC (англ. Free Lossless Audio Codec) — популярный свободный кодек, предназначенный для сжатия аудиоданных без потерь.
В отличие от аудио-кодеков, обеспечивающих сжатие с потерями (MP3, AAC, WMA, Ogg Vorbis) FLAC, как и любой другой lossless-кодек, не удаляет никакой информации из аудиопотока и подходит как для прослушивания музыки на высококачественной звуковоспроизводящей аппаратуре, так и для архивирования аудиоколлекции.[FLAC на Википедии]
Решение искал и опишу для ubuntu. В интернете можно найти множество скриптов для этого, но многие имеют недостатки типа проблем работы с тэгами. Дальше опишу простое решение для преобразования файлов flac с cue файлом в mp3 треки. Для этого используем flac, lame, cue2tracks.
Скачиваем Youtube плейлист в формате mp3 одним bash-скриптом
В работе мне помогает музыка, обычно это открытый таб с плейлистом Youtube. Так вот этот таб в просессе работы съедает до 500MB (!) и даже больше (Google Chrome).
Такое положение дел вынудило написать bash-скрипт, который на входе получает ID плейлиста, на выходе – mp3 файлы, которые можно слушать в любимом плеере, например, в MOC:

Настраиваем NGINX для мультиязычных сайтов

Уже давно считается хорошим тоном отдавать контент сайта на языке, предпочитаемом пользователем. Некоторые сервера определяют язык по месту нахождения пользователя с помощью модулей геолокации, остальные берут настройки браузера. Языковые предпочтения пользователя часто сохраняются в cookie, и затем используются при повторном визите.
Какой метод определения языка пользователя подходит лучше – вопрос достаточно спорный. Мой личный ранг значимости языковой информации (в порядке убывания): cookie, настройки браузера, регион.
Для поисковых систем, социальных сетей и прочих агрегаторов информации важно знать, на каком языке должна быть проиндексирована или загружена страница, например в качестве миниатюры в хронику фейсбука. Это значит, что ссылка должна однозначно указывать на язык.
Распространенные варианты кодирования языковой информации о ресурсе следующие:
- каждая языковая версия на отдельном субдомене, например
en.example.com
,ru.example.com
- язык ресурса указывается в префиксе URI, например
example.com/en/
,example.com/ru
- язык ресурса указывается в GET параметре, например
example.com?lang=en
,example.com?lang=ru
Первый вариант наиболее радикальный, каждая языковая версия сайта рассматривается как отдельный ресурс. Могут возникнуть сложности с SSL сертификатом, необходимо заранее предусмотреть все возможные варианты в SAN DNS Host Name, или заказать сертификат с маской, например *.example.com.
Второй вариант наиболее практичный, выбор языка входит в URI, значит, не будет проблем с индексацией и копированием ссылки.
Третий вариант выглядит менее привычно, требует дополнительной логики при добавлении остальных GET параметров и может смутить пользователя при копировании ссылки. Не самый лучший вариант для публичных ссылок.

Я расскажу о реализации второго варианта на базе сервера NGINX. При минимальных изменениях можно применить описанные настройки и для первого варианта.
Библиотеки для конвертирования PDF документа в картинку
Не так давно, мне попался проект, заказчик которого хотел свои сохранённый в PDF маркетинговые шедевры конвертировать в один из графических форматов, например PNG. После долгих уговоров и приведения контраргументов, бюджет проекта позволял купить недорогой .NET компонент.
Оставалось выбрать самый подходящий под требования заказчика и, по-возможности, с хорошей англоговорящей, англо пишущей службой поддержки (не с полуострова Индостан):
Как Яндекс распознаёт музыку с микрофона



В мире есть всего несколько специализированных компаний, которые профессионально занимаются распознаванием музыкальных треков. Насколько нам известно, из поисковых компаний Яндекс стал первым, кто стал помогать российскому пользователю в решении этой задачи. Несмотря на то, что нам предстоит ещё немало сделать, качество распознавания уже сопоставимо с лидерами в этой области. К тому же поиск музыки по аудиофрагменту не самая тривиальная и освещённая в Рунете тема; надеемся, что многим будет любопытно узнать подробности.
Wasted Dreams. Краткая инструкция по запуску
Описание получилось настолько красочным, что мне (думаю, и многим другим) захотелось посмотреть на игру. К сожалению, в оригинальной статье отсутствует последовательность шагов по запуску игры в эмуляторе.
Наверняка это не проблема для тех, кто давно знает платформу Amiga, однако, надеюсь, кому-то этот пост поможет как запустить игру, так и посмотреть на старую, но довольно необычную платформу.
К тому же, кажущийся тривиальным подход с эмуляцией CD-образа для приставок с CD-приводом в данном случае не сработал, пришлось идти несложным, но состоящим из множества мелких шагов обходным путём.
Добро пожаловать под кат за подробностями запуска Wasted Dreams на Вашем компьютере!
WebMarkupMin HTML Minifier – современный HTML-минимизатор для платформы .NET
В начале 2012 года я работал над серией статей о клиентской оптимизации в ASP.NET MVC для журнала MSDeveloper.RU. Всего было опубликовано 2 статьи: «Сжатие JS- и CSS-файлов» и «Менеджеры ресурсов», но в моих планах было написать еще 2 статьи: одну про оптимизацию графики, а вторую про минимизацию HTML-разметки и GZIP/Deflate-сжатие (далее просто HTTP-сжатие). К сожалению, эти планы не удалось воплотить в жизнь из-за нехватки свободного времени (в тот момент, я запускал проект Bundle Transformer) и последовавшего закрытия журнала.
Но недавно я решил вернуться к теме оптимизации HTML-разметки. После небольшого исследования я понял, что под .NET практически не существует полноценных HTML-минимизаторов. Все существующие .NET-решения производят лишь 2 операции: удаление ненужных пробельных символов и удаление HTML-комментариев, из-за чего они очень сильно проигрывают решениям с других платформ. Поэтому я решил написать собственный HTML-минимизатор для .NET, о котором и пойдет речь в данной статье.
Эволюция HTML-минимизаторов
Прежде чем приступить к описанию своего проекта, я хотел бы немного рассказать о почти 15-летней истории HTML-минимизации и эволюции программный средств, автоматизирующих данный процесс.
Вопреки расхожему мнению, техники минимизации HTML-кода появились намного раньше, чем аналогичные техники для JavaScript. Уже в конце 1998 года Артемий Лебедев в 17-м параграфе ководства «Паранойя оптимизатора» описывал некоторые техники минимизации HTML-кода.
RBAC Авторизация в YII и LDAP

RBAC — это простой и мощный способ централизованного управления доступом в веб приложении. Основным его достоинством является то, что при правильном понимании и применении иерархии авторизации можно очень гибко управлять доступом не изменяя код контроллеров.
К сожалению стандартный мануал по RBAC в YII оставляет больше вопросов чем ответов. Эту ситуацию я и намереваюсь исправить.
Я расскажу о создании “правильной” иерархии: как делать не стоит. А в завершении я приберёг инструкцию, о том как подружить LDAP авторизацию (из ActiveDirectory ) с Yii и RBAC.
Все кто заинтересовался, добро пожаловать под кат!
ASP.NET MVC и ненавязчивая валидация с Backbone.js
Когда Photoshop отображает совсем не то, что надо

Такая вот ситуация: дизайнер присылает макет, а у верстальщика открывается какая то лабуда светлая, или темная (если верстальщик испольует МасOS, а дизайнер Win.). Или же верстальщик сохраняет картинку, а там цвета другие стали.
Разберемся почему так и как с этим жить.
Раскрываем магию MySQL или о строгости и мягкости MySQL
1. Деление на ноль возвращает NULL вместо ошибки
2. Выход за диапазон допустимых значений неявно приводит число к допустимому значению, а не к ошибке и откату транзакции
3. Вставка неверного типа данных также приводит к неявному преобразованию и успешному выполнению операции
Таких примеров я могу привести огромное число, но цель статьи не сделать очередное собрание высосанных из пальца примеров, а объяснить, почему происходит то или иное действие. Вся эта мистика MySQL давно описана в документации и легко объяснима, в чём вы сможете убедиться сами, прочитав статью до конца.
Для меня эта первая статья на хабре, поэтому я старался писать дотошно подробно. Уверен, что она будет полезна всем, кто работает с MySQL. Большую помощь в написании статьи оказала подготовка к сдаче на сертификат разработчика MySQL, а точнее книга «MySQL Certification Study Guide».
Итак, мой друг, начнём!
Информация
- В рейтинге
- Не участвует
- Дата рождения
- Зарегистрирован
- Активность