Обновить
-1
0
Дмитрий@dr15x86

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

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

Безвентиляторный домашний мини-сервер на базе корпуса HD-Plex H3.S

Время на прочтение6 мин
Охват и читатели99K
Я давно задумывался о новой игрушке, на которой можно запустить несколько виртуальных машин для опытов, но ставить дома шумящий пылесос совсем не хотелось. Альтернативный вариант – покупка VDS (VPS), или машины в каком либо облаке был давно отметен, ну а последние скандалы в области информационной безопасности только укрепили мое мнение.
Итак цель определена — бесшумный и достаточно производительный домашний сервер.
Под катом много картинок, и краткое, очень краткое, описание как можно использовать синюю изоленту в сервере!
Читать дальше →

Доступ к скрытым настройкам UEFI BIOS от Insyde

Время на прочтение29 мин
Охват и читатели552K
Здравствуй Хабр!

Одно из направлений моей компании — продажа технологических решений в области виртуализации. По долгу службы, приходится делать пилотные проекты или устраивать тестовые стенды. Недавно, компания Citrix выпустила новый продукт под название XenClient XT, который по сути является клиентским гипервизором первого уровня, то есть работает на чистом железе. Основной идеей клиентского гипервизора является создание виртуальных машин на собственном ноутбуке. Где и как это применимо — опустим.

Все современные процессоры Intel и AMD поддерживают технологию аппаратной виртулизации.
И так, в моем распоряжении был ноутбук с H77 чипсетом и Intel Core i7-3820QM процессором. Согласно спецификации от производителя, мой процессор поддерживал Intel Virtualization Technology (VT-x) и Intel Virtualization Technology for Directed I/O (VT-d) технологии. Если первая имеется почти на всех новых ноутбуках, то вторая технология встречается только на топовых моделях. Но она дает много преимуществ, как например прямой проброс GDU в виртуальную среду, соответственно клиентская машина получает полную поддержку 3D. Но давайте не будем углубляться в технологии, отличные от тематики данной статьи.

В моем биосе была возможность включения VT-x, но вот управление технологией VT-d не было предусмотрено изначально.
Читать дальше →

Пишем музыку с помощью PHP

Время на прочтение6 мин
Охват и читатели21K
Я не специалист по теории вероятностей, искусственного интеллекта и машинного обучения, кроме того уроки начальной музыкальной школы давно забыты. Но если вы уделите мне 10 минут, то обнаружите, что даже небольшой запас знаний может дать впечатляющие результаты при их творческом применении. Я хочу поделиться с вами, как научить PHP сочинять музыку.

Например, такую:

сгенерированная мелодия
Читать дальше →

Добавление Google Apps в эмулятор Android (Intel x86 Atom System Image)

Время на прочтение2 мин
Охват и читатели39K


Все разработчики под Android знают, насколько медленно работает эмулятор. В июне прошлого года Intel представила Android, который работает в режиме x86 (без эмуляции ARM). И конечно, скорость эмулятора стала потрясающая. Но в системных образах этих эмуляторов отсутствуют Google Apps (Maps, GMail, Calendar, Google Play, аккаунт Google, ...).

В этой статье мы добавим приложения от Google.
Читать дальше →

Android UI thread

Время на прочтение4 мин
Охват и читатели70K
Большая часть кода Android приложения работает в контексте компонент, таких как Activity, Service, ContentProvider или BroadcastReceiver. Рассмотрим, как в системе Android организованно взаимодействие этих компонент с потоками.
Читать дальше →

Как бороться с низкокачественными Android приложениями

Время на прочтение5 мин
Охват и читатели58K
Все согласны, что Google Play переполнен некачественными приложениями, но никто не хочет брать вину на себя — принято винить абстрактный Android или просто Google, который выпустил систему без строгих гайдланов, создал маркет без модерации и дал возможность производителям делать свои оболочки с разноцветными иконками и градиентами.

Но каждый день выходят новые приложения с дизайном из iOS, темами из 2.3, не адаптированные для планшетов и с размытыми картинками на HD-экранах. И в этом виноват не Google, а разработчики. Кто-то не пытается спорить, когда заказчик присылает макеты от iOS версии, кто-то пытается, но сдается. Кто-то разрабатывает приложение ради опыта, откладывая «неважное» на потом, и так оно и остается. Стартапы делают приложения «за день», а потом лихорадочно фиксят баги, создавая снежный ком, который уже никто не перепишет с нуля. Крупные социальные сети, имея деньги и время, каким-то образом умудряются выпускать ужасные клиенты…
Читать дальше →

Клавиатура своими руками под свои руки

Время на прочтение24 мин
Охват и читатели355K

Для меня всё началось вот с этого топика о механических клавиатурах, желания научиться печатать быстрее (к своему стыду до недавних пор печатал двумя пальцами, несмотря на 25летний стаж программирования), и появившихся недавно неприятных ощущений в кистях после рабочего дня (да и вообще времени, проведённого за компьютером).
Провёл короткое исследование о том, что вообще есть из клавиатур для программистов и тех, кто много печатает, и написал вот этот обзорный топик. Купил себе Happy Hacking Lite (минималистичная клавиатура с мембранными переключателями), но печатать на ней оказалось ещё менее удобно, чем на ноутбучной, в основном из за ещё более компактного расположения клавиш.
Вскоре появился топик, в котором автор рассказывал о новоприобитённой им Truly Ergonomic, пожалуй, практически идеальной клавиатуры с моей точки зрения, но в комментариях автор же отметил, что спустя два месяца использования так и не смог совсем пересесть на неё, а положение рук совсем не так и удобно, как рекламируется.
Чуть позже появился топик о Kinesis Advantage, по отзыву автора к которой тоже не так легко привыкнуть, а цена так и просто пугает.
И я решил...

Запуск Windows под Linux KVM

Время на прочтение7 мин
Охват и читатели138K
Задача: запустить некоторое количество виртуальных машин с Windows на типовом Линукс-сервере.

Решение: любой современный Linux-дистрибутив, «родная» технология виртуализации KVM, Windows 2003 и настройки, описанные ниже.

Смотри также: вводную часть статьи по настройке KVM-контейнеров для FreeBSD.
Читать дальше →

Ресурсы, о которых должен знать каждый Android-разработчик

Время на прочтение6 мин
Охват и читатели189K
Сегодня я хочу поделиться с вами моим вольным переводом статьи, написанной Сергеем Повзнером (Sergey Povzner). Сергей ведёт блог bongizmo.com и занимается разработкой туристических гидов под общим названием Citybot.

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

Статья будет полезна как новичкам, так и опытным разработчикам. Это гид по миру Android-разработки.
Читать дальше →

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

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



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

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

We need to go deeper

Управляем вентилятором ноутбука через DSDT в Linux и не только

Время на прочтение10 мин
Охват и читатели64K
Не знаю почему, но я всегда воспринимал системы охлаждения в ноутбуках как некий закрытый черный ящик. Тупость алгоритмов, по которым вентилятор начинал надрывно завывать при еще вполне холодном процессоре, изрядно раздражала во многих ноутбуках, но мне казалось, что все параметры там производители прибили гвоздями и поменять их можно разве что расковыряв BIOS или вообще только вставив какие-нибудь регулируемые резисторы в нужных местах. Ни тем, ни другим мне заниматься совершенно не хотелось, поэтому я об никогда всерьёз даже не задумывался.

Нет, конечно, я слышал про всякие программы, которые могут вмешиваться в управление охлаждением и вроде кто-то ими успешно пользуется, но лично мне с ними вечно не везло, точнее не везло с железом, на котором я пытался их завести. Например, какое-то время назад я пробовал настроить fancontrol на довольно старом ноутбуке HP nc8430 с Убунтой. В итоге, известный скрипт sensors-detect не смог найти ни одного вентилятора в системе, а без этого fancontrol не работает. На разных форумах периодически появляются люди с похожими проблемами, но никто им толком помочь не может.

Тогда я в очередной раз забросил эту тему и вернулся к ней только на днях, когда читал обзоры, подыскивая себе новый ноутбук, и уже вроде бы выбрал почти всем хороший Sony S15, как опять в одном из обзоров читаю про него, что вентилятор в нем вообще не останавливается никогда, даже когда точно можно. Постоянно шумящий ноутбук я больше не хочу, а выбирать как всегда особо не из чего, учитывая, что надо 15", что TN матрицу я тоже больше не хочу, и бюджет ограничен. Ну сами знаете, как оно бывает. Может быть на нем все-таки заведется fancontrol и все будет хорошо, но а если нет? Никаких отчетов по его установке на этот ноутбук найти не удалось. Это побудило меня еще раз копнуть тему программного управления вентиляторами и пройти довольно непростой, но очень увлекательный квест.
Читать дальше →

Работа и жизнь гика с проблемами концентрации внимания

Время на прочтение8 мин
Охват и читатели221K
Каждый — гениален. Но если вы будете судить рыбу по ее способности лазать по деревьям,
она всю жизнь проживет с верой в свою глупость.

Альберт Эйнштейн

Лень — это привычка отдыхать до того, как ты устанешь.

Жюль Ренар


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

Решительно сократить количество проблем можно, придерживаясь следующих рекомендаций:
  1. В голове держать не больше трех-пяти вещей за раз, объединив действия в большие смысловые блоки.
  2. Раз и навсегда выбрать решение по ежедневному набору мелочей: вносить дела к календарь, проверять утюг и т.п.
  3. Разложить все вещи по своим местам и поддерживать заведенный порядок.
  4. Дублировать необходимые и часто используемые вещи; разложить их по всем углам.
  5. Умело пользоваться календарем, мобильником и другими инструментами интернет-века.
  6. И самое главное: НЕ ОТВЛЕКАТЬСЯ ПО МЕЛОЧАМ!
Интересно? Читаем дальше!

О «карманном» перехвате в предпоследний раз

Время на прочтение2 мин
Охват и читатели77K
Под андроид существует немало различных программ, реализующих тот или иной функционал по перехвату и анализу трафика.
В большинстве своем это однозадачные утилиты, выполняющие 1-2 функции (droidsheep, faceniff), хотя есть и комплексные тулкиты с большим заявленным набором функций (dsploit).

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

how to: Как и зачем работать с svn через git

Время на прочтение3 мин
Охват и читатели67K
Добрый день!

В статье я расскажу, как мы работаем с svn через git и почему не выбрали чистый git.

SVN


Subversion — это централизованная система контроля версий. Это главный ее минус и главный ее плюс :)

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

Главный минус — это merge… Те, кто часто делает мерж средствами svn, понимает о чем я.
Это медленно (даже меееееееедлееенно), требует постоянного соединения с репозиторием, а еще эти svn-properties, которые мешают читать diff.
Читать дальше →

Android. Обзор боевых приложений

Время на прочтение2 мин
Охват и читатели326K
Доброго времени суток!

Наряду со статьей "iPhone: MiTM атака из кармана", родилась почти аналогичная статья про Android.

Мы уже знаем, на что способен iPhone. Уступает ли ему Android?

Было рассмотрено около 25 боевых приложений. Хочу предоставить вам результат маленького исследования. Многие приложения даже не запустились, некоторые подвесили телефон намертво, но некоторые даже работали!

Весь софт тестировался на телефоне LG Optimus, с версией Android 2.3.

Итак, краткий обзор боевого софта на Android:

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

SSH-туннели — пробрасываем порт

Время на прочтение2 мин
Охват и читатели444K
Не всегда есть возможность, да и не всегда надо, строить полноценный туннель с интерфейсной парой адресов. Иногда нам нужно лишь «прокинуть» вполне определённые порты.

Тут важно понимать, что туннель можно организовать как изнутри сети, к ресурсам которой вы хотите получить доступ, на внешний ssh-сервер. Также можно организовать туннель с хоста в Интернете на пограничный ssh-сервер сети, чтобы получить доступ к внутренним ресурсам.
Читать дальше →

Дырка большого диаметра в Microsoft Windows

Время на прочтение1 мин
Охват и читатели7.4K
Выполнение произвольного кода путём посылки специально сконструированного потока UDP-пакетов на закрытый порт.

Подвержены все 32 и 64 битные версии:
* Windows 7
* Windows Vista
* Server 2008 (в т.ч. R2)

Подробнее здесь: technet.microsoft.com/en-us/security/bulletin/ms11-083

Эффективное использование Vim

Время на прочтение11 мин
Охват и читатели75K

Введение


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

Эта статья — не набор “волшебных команд” и рецептов (cookbook, как называют такие наборы по-английски), хотя они тут тоже присутствуют, а, скорее, попытка описать, как общие принципы построения эргономичных интерфейсов можно применить в практике использования Vim, чтобы сделать из него удобную и эффективную среду работы с текстами.

Эта статья также не является tutorial’ом для начинающих пользователей Vim, хотя и им (а также пользователям Emacs) может быть интересна, поскольку некоторые упоминаемые принципы являются достаточно общими и действуют не только в системах редактирования текстов, а вообще везде, где идет речь об использовании компьютера для редактирования чего-либо. Тем не менее, я предполагаю, что читатель знаком с основными концепциями, применяемыми в Vim (режимы, регистры, буфера, команды) и не останавливаюсь на их подробном описании.

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

Первый блин комом, или Как начать писать под Android и не бросить

Время на прочтение3 мин
Охват и читатели50K
На написание статьи вдохновили несколько жалоб на разных ресурсах о том, что во время написания или установки sdk что-то не получалось или что-то повисло и поэтому «забил на Android». Действительно, человек, который хочет заняться разработкой под эту платформу, может потеряться в обилии статей и мануалов о том, как написать свое первое «Hello, Adroid» или как сделать конкретное приложение, особенно если недостаточно опыта в программировании. В этой статье я попробую охватить по возможности все способы, которые помогут в процессе самообучения и не дадут потерять энтузиазм из-за появившихся трудностей. Надеюсь, эта статья поможет сэкономить начинающим время и нервы.

Тех, кому этого ресурса достаточно, данная статья вряд-ли заинтересует.

Установка и настройка инструментов для разработки хорошо описана в Android Development Tutorial, поэтому это я могу пропустить.

Где тестировать свое приложение


Сначала нужно определиться, на что устанавливать и где тестировать свой проект. Можно ставить на эмулятор, как это описано в выше указанной статье. Как многие замечают, работает он очень медленно. К тому же, частое заблуждение – перед запуском приложения новички закрывают каждый раз эмулятор и снова его запускают. Этого делать не надо.
Другой способ — можно установить на VirtualBox Android-x86.
Но настоящий девайс рано или поздно понадобится – хотя бы по той причине, что писать приложения, где задействована камера или видео, или очень неудобно, или просто невозможно. Поэтому, если есть возможность приобрести устройство с Android – лучше использовать его. Я ставлю на свой HTC Wildfire, не смотря на то, что в нем появляется ненужный хлам, но я экономлю свое время (и нервы).

Какую литературу использовать

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

Информация

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