RSS
Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 41
[>] Уменьшаем потребление CPU Skype под Linux и Mac OS
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


<img src="http://habrastorage.org/getpro/habr/post_images/710/3ac/a6b/7103aca6bd187e48e147c96707b6b5be.png" alt="image" align="left"/> Skype. Как мы его любим и одновременно ненавидим. Долгое время, Skype был единственной программой, которую я старался закрывать при работе лаптопа от батареи: потреблял около 4% CPU, будил процессор 250-300 раз в секунду, ничего при этом не делая, оставляя процессору меньше времени на нахождение в более энергосберегающем состоянии.



Увидел я однажды Vayun(http://habrahabr.ru/post/236629/#comment_7963611">комментарий</a> пользователя <a href="http://habrahabr.ru/users/vayun/" class="user_link):

<blockquote>Возможно проблема проявляется не у всех, проверить легко: запускаем скайп, запускаем top (на ноутбуке работающем от батареи наглядней будет powertop) и смотрим сколько он отъедает cpu.



Я долго не возился, придавил только poll, увеличив timeout. Это даёт наибольший выигрыш (уменьшая %CPU скайпа раз в 5), но наверное можно лучше. </blockquote>

Собственно, вот: Читать дальше (https://github.com/ValdikSS/skype-poll-fix">Skype-poll-fix</a>. Увеличивает таймаут у вызовов poll (Linux) и kevent (Mac OS), снижая потребление процессора в 4-5 раз. <a href="http://habrahabr.ru/post/242043/#habracut)

[>] Организация своего хоста виртуализации на Hetzner
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


<img src="https://www.proxmox.com/images/proxmox/proxmox-logo.png" alt="image"/><img src="http://habrastorage.org/getpro/habr/post_images/159/9ba/c0e/1599bac0ecf3fb5225cc2d3f90b95991.gif" alt="image"/>



Proxmox Virtual Environment (Proxmox VE) — система виртуализации с открытым исходным кодом, основанная на Debian GNU/Linux. Разрабатывается австрийской фирмой Proxmox Server Solutions GmbH, спонсируемой Internet Foundation Austria.



… и, надо сказать, очень приятная в обслуживании и эксплуатации система.



Я работаю со своими клиентами (в большинстве случаев студии веб-дизайна, или standalone-клиенты) уже около 5 лет. Все мои клиенты используют услуги немецкого хостера Hetzner. Можно долго рассуждать о качестве предоставляемых ими услуг, качестве железа в их серверах — но факт остается фактом: предложения Hetzner в сегменте root-серверов вне конкуренции по соотношению цена/качество.



Справка: по состоянию на время написания статьи стоимость ежемесячной аренды сервера линейки EX60(http://www.hetzner.de/hosting/produkte_rootserver/ex60) (Intel® Core™ i7-920, 48 GB DDR3 RAM,2 x 2 TB SATA 3 Gb/s 7200 rpm HDD ) составляет всего 59€ в месяц. Согласитесь, совсем недорого.



В этой статье я хотел бы описать небольшой howto по установке на root-сервер системы виртуализации proxmox, чтобы просто показать, насколько это легко и доступно. Не буду описывать варианты кластеризации системы из 2-х и более серверов (возможно, сделаю это в следующей статье, если сообществу будет интересно), а распишу самый простой вариант.

Начинаем установку!(http://habrahabr.ru/post/242031/#habracut)

[>] Яндекс.Браузер теперь и для Linux
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


Говорят, что обещанного ждут три года, но мы управились быстрее, и только что на YaC 2014(https://yandex.ru/yac2014/on-air/) была представлена первая бета-версия Яндекс.Браузера для Linux.



В этом посте, помимо ссылки, небольшой рассказ о том, в чем была сложность поддержки Flash Player, какой процент сотрудников Яндекса используют Linux и почему нам особенно важны комментарии на Хабре про него.



<img src="http://habrastorage.org/files/410/7c0/cf5/4107c0cf547046e3b09e96eaa81d688d.png" alt="image"/>



Эту сборку можно было бы назвать специальной версией для Хабрахабра — нигде нас не просили выпустить ее так активно, как здесь. Под любой нашей статьей про Яндекс.Браузер обязательно было примерно такое:



[img habrastorage.org/files/802/9d6/75a/8029d675a32f4baca42a6fc9b207603b.png]



С другой стороны, в самом Яндексе около 15% сотрудников используют на десктопах те или иные дистрибутивы линукса. Несколько сотен человек из их числа добровольно помогают нам тестировать предварительные сборки браузера. Поэтому спрос на браузер был в том числе и внутренний.

Читать дальше (http://habrahabr.ru/post/241915/#habracut)

[>] Ubuntu 14.10 (Utopic Unicorn) доступна для скачивания
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


[img habrastorage.org/files/fef/1ce/0d4/fef1ce0d4bd34403815c52c4a032d793.png]



Несколько часов назад на серверах Canonical появились ссылки на скачивание образов и торрент-файлов новой версии дистрибутива. На главной странице тут(http://releases.ubuntu.com/14.10/). Как всегда, призываю качать .torrent и становиться на раздачу.

Читать дальше (http://habrahabr.ru/post/241379/#habracut)

[>] Шпаргалка по управлению сервисами CentOS 7 с systemd
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


Systemd – менеджер системы и сервисов в операционной системе Linux. При разработке eго стремились спроектировать обратно совместимым со скриптами инициализации SysV init и предоставить полезные функции, такие, как параллельный запуск системных сервисов во время загрузки, активацию демонов по требованию, поддержку снепшотов состояния системы и логику управления сервисами, основанную на зависимостях. В CentOS 7 systemd заменяет Upstart как систему инициализации по умолчанию.



В этой статье мы рассмотрим процесс управления сервисами в systemd для пользователя CentOS 7. Эти знания будут полезны и в других дистрибутивах, ведь systemd уже давно используется в Fedora и планируется в Ubuntu 14.10 и Debian 8. Хорошо это или нет — оставим за кадром.



<img src="https://infoboxcloud.ru/community/uploads/images/00/00/01/2014/10/22/e9f531.png" alt="CentOS 7 Systemd Infobox" width="400"/>



В процессе чтения статьи вы можете попробовать systemd на облачных VPS(http://infobox.ru/vps/linux/">классических VPS</a> и <a href="http://infobox.ru/vps/cloud/) от Infobox. Мы стремимся своевременно добавлять поддержку современных ОС, чтобы вы могли использовать последние технологии для более эффективной работы. Сама идея написания статьи родилась после очередного вопроса пользователей об использовании сервисов в CentOS 7.

Читать дальше (http://habrahabr.ru/post/241237/#habracut)

[>] Страсти вокруг systemd и его использования по умолчанию в Debian
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


[img habrastorage.org/files/e87/e00/c5b/e87e00c5b7d74c90891dfc3ea644b605.png" align="right]Группа «давних Unix-админов» открыла сайт debianfork.org(http://debianfork.org/). Они призывают сообщество рассмотреть альтернативу форка Debian, потому что этот дистрибутив собирается переходить на демон systemd.



Systemd — демон инициализации других демонов в Linux, который используется вместо SystemV Init (sysvinit). Его особенность — интенсивное распараллеливание запуска служб в процессе загрузки, что позволяет существенно ускорить старт операционной системы. Вероятно, скоро его начнут использовать по умолчанию в Debian.



Это очередной этап давней дискуссии вокруг systemd. Некоторые считают, что он нарушает философию Unix. Более месяца назад (та же?) группа активистов запустила проект BoycottSystemd.org(http://boycottsystemd.org/), призывая бойкотировать systemd и дистрибутивы Linux, которые используют этот демон.

Читать дальше (http://habrahabr.ru/post/240839/#habracut)

[>] Погружаемся в Docker: Dockerfile и коммуникация между контейнерами
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


В прошлой статье мы рассказали, что такое Docker(http://habrahabr.ru/company/infobox/blog/237405/) и как с его помощью можно обойти Vendor–lock. В этой статье мы поговорим о Dockerfile как о правильном способе подготовки образов для Docker. Также мы рассмотрим ситуацию, когда контейнерам нужно взаимодействовать друг с другом.



<img src="https://infoboxcloud.ru/community/uploads/images/00/00/01/2014/10/15/ca8a68.jpg" width="600"/>

В InfoboxCloud(http://infoboxcloud.ru) мы сделали готовый образ Ubuntu 14.04 с Docker. Не забудьте поставить галочку «Разрешить управление ядром ОС» при создании сервера, это требуется для работы Docker.

Читать дальше (http://habrahabr.ru/post/240623/#habracut)

[>] Как ускорить контейнер: тюнингуем OpenVZ
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


<img width="250" height="166" src="http://habrastorage.org/getpro/habr/post_images/97b/196/724/97b1967242cd6cd45756de9c5926f8dc.jpg" alt="image" align="left"/>

OpenVZ — это OpenSource-реализация технологии контейнерной виртуализации для ядра Linux, которая позволяет запускать на одной системе с ядром OpenVZ множество виртуальных окружений с различными дистрибутивами Linux внутри. За счет своих особенностей (контейнерная виртуализация идет на уровне ядра, а не железа) по ряду показателей производительности – плотности, эластичности, требованиям к размеру оперативной памяти, скорости отклика и т.д. – она работает лучше, чем другие технологии виртуализации. Например, тут(http://openvz.org/Performance) можно посмотреть сравнения производительности OpenVZ с традиционными системами гипервизорной виртуализации. Но, помимо этого, в Linux и OpenVZ есть и масса вариантов тонкой настройки.

В данной статье мы рассмотрим нетривиальные варианты настроек контейнеров ядра OpenVZ, которые позволяют улучшить производительность всей системы OpenVZ.

Читать дальше (http://habrahabr.ru/post/240197/#habracut)

[>] Видео и обзор конференции OSSDEVCONF-2014
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


Пару недель назад в Калуге прошла конференция OSSDEVCONF-2014, или более солидно «Одиннадцатая конференция разработчиков свободных программ». Тематика в целом — «как внедрять СПО», «перспективы импортозамещения», «СПО во всех видах — от госпорталов до CAD-систем и Instant Messengerов», тонкости разработки сложного опенсорса, фишки отечественных линукс-дистрибутивов. Докладчики — ALT Linux, Red Hat, ROSA, Институт Системного программирования и т.п. К сожалению, получилось так, что народу собралось немного — осенние болезни скосили участников и докладчиков (один из в полуживом состоянии осилил записать удаленный доклад…), ну и трудно, несмотря на бесплатность, собрать людей на конференцию не в городе-транспортном узле. В результате, всего полтора десятка докладов, и они ищут зрителей — я сделал добротную видеозапись (монтаж с нескольких камер и экрана, звук с микрофонов, технологии оживления™ и т.п.)



В качестве пикрелейтед — минутный обзорный ролик.



<iframe src="//player.vimeo.com/video/106435790" width="500" height="281" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>



А под катом предлагаю краткий обзор-классификацию с ссылками на видео и дополнительные материалы («слайды-тезисы-контакты докладчика»).

Читать дальше (http://habrahabr.ru/post/240089/#habracut)

[>] Разговорное радио на коленке
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


[img habrastorage.org/files/112/e60/c80/112e60c801d640e9be72430911ab5abd.jpg" align="right" width="300]В определённый момент, страдая от лени обновлять новостной блог про OpenStreetMap, я решил сделать еженедельную передачу про проект. Вместо трёх часов вымучивания текста — часик пообсуждать со знакомыми участниками OSM новинки и актуальные вопросы. Отличная идея, порадовались и разошлись. Через полгода со словами «ну блин хватит бездельничать, давайте послезавтра звоните в скайп» я начал разбираться, как в этом вашем линуксе записать звук с микрофона и скайпа, одновременно передавая его в интернет. Эта история — про настройку PulseAudio, про скайп и мамбл, и про удивительный JACK. Оказалось, поднять собственное радио с гостями в эфире проще, чем нарисовать для него логотип.

Читать дальше (http://habrahabr.ru/post/239541/#habracut)

[>] [recovery mode] Установка и запуск Asterisk на Android-смартфоне
habra.14
habrabot(difrex,1) — All
2014-11-05 13:24:04


Здравстуй, хабр!

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



Читать дальше (http://habrahabr.ru/post/239419/#habracut)

[>] Уменьшаем потребление CPU Skype под Linux и Mac OS
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


<img src="http://habrastorage.org/getpro/habr/post_images/710/3ac/a6b/7103aca6bd187e48e147c96707b6b5be.png" alt="image" align="left"/> Skype. Как мы его любим и одновременно ненавидим. Долгое время, Skype был единственной программой, которую я старался закрывать при работе лаптопа от батареи: потреблял около 4% CPU, будил процессор 250-300 раз в секунду, ничего при этом не делая, оставляя процессору меньше времени на нахождение в более энергосберегающем состоянии.



Увидел я однажды Vayun(http://habrahabr.ru/post/236629/#comment_7963611">комментарий</a> пользователя <a href="http://habrahabr.ru/users/vayun/" class="user_link):

<blockquote>Возможно проблема проявляется не у всех, проверить легко: запускаем скайп, запускаем top (на ноутбуке работающем от батареи наглядней будет powertop) и смотрим сколько он отъедает cpu.



Я долго не возился, придавил только poll, увеличив timeout. Это даёт наибольший выигрыш (уменьшая %CPU скайпа раз в 5), но наверное можно лучше. </blockquote>

Собственно, вот: Читать дальше (https://github.com/ValdikSS/skype-poll-fix">Skype-poll-fix</a>. Увеличивает таймаут у вызовов poll (Linux) и kevent (Mac OS), снижая потребление процессора в 4-5 раз. <a href="http://habrahabr.ru/post/242043/#habracut)

[>] Яндекс.Браузер теперь и для Linux
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


Говорят, что обещанного ждут три года, но мы управились быстрее, и только что на YaC 2014(https://yandex.ru/yac2014/on-air/) была представлена первая бета-версия Яндекс.Браузера для Linux.



В этом посте, помимо ссылки, небольшой рассказ о том, в чем была сложность поддержки Flash Player, какой процент сотрудников Яндекса используют Linux и почему нам особенно важны комментарии на Хабре про него.



<img src="http://habrastorage.org/files/410/7c0/cf5/4107c0cf547046e3b09e96eaa81d688d.png" alt="image"/>



Эту сборку можно было бы назвать специальной версией для Хабрахабра — нигде нас не просили выпустить ее так активно, как здесь. Под любой нашей статьей про Яндекс.Браузер обязательно было примерно такое:



[img habrastorage.org/files/802/9d6/75a/8029d675a32f4baca42a6fc9b207603b.png]



С другой стороны, в самом Яндексе около 15% сотрудников используют на десктопах те или иные дистрибутивы линукса. Несколько сотен человек из их числа добровольно помогают нам тестировать предварительные сборки браузера. Поэтому спрос на браузер был в том числе и внутренний.

Читать дальше (http://habrahabr.ru/post/241915/#habracut)

[>] Шпаргалка по управлению сервисами CentOS 7 с systemd
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


Systemd – менеджер системы и сервисов в операционной системе Linux. При разработке eго стремились спроектировать обратно совместимым со скриптами инициализации SysV init и предоставить полезные функции, такие, как параллельный запуск системных сервисов во время загрузки, активацию демонов по требованию, поддержку снепшотов состояния системы и логику управления сервисами, основанную на зависимостях. В CentOS 7 systemd заменяет Upstart как систему инициализации по умолчанию.



В этой статье мы рассмотрим процесс управления сервисами в systemd для пользователя CentOS 7. Эти знания будут полезны и в других дистрибутивах, ведь systemd уже давно используется в Fedora и планируется в Ubuntu 14.10 и Debian 8. Хорошо это или нет — оставим за кадром.



<img src="https://infoboxcloud.ru/community/uploads/images/00/00/01/2014/10/22/e9f531.png" alt="CentOS 7 Systemd Infobox" width="400"/>



В процессе чтения статьи вы можете попробовать systemd на облачных VPS(http://infobox.ru/vps/linux/">классических VPS</a> и <a href="http://infobox.ru/vps/cloud/) от Infobox. Мы стремимся своевременно добавлять поддержку современных ОС, чтобы вы могли использовать последние технологии для более эффективной работы. Сама идея написания статьи родилась после очередного вопроса пользователей об использовании сервисов в CentOS 7.

Читать дальше (http://habrahabr.ru/post/241237/#habracut)

[>] Погружаемся в Docker: Dockerfile и коммуникация между контейнерами
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


В прошлой статье мы рассказали, что такое Docker(http://habrahabr.ru/company/infobox/blog/237405/) и как с его помощью можно обойти Vendor–lock. В этой статье мы поговорим о Dockerfile как о правильном способе подготовки образов для Docker. Также мы рассмотрим ситуацию, когда контейнерам нужно взаимодействовать друг с другом.



<img src="https://infoboxcloud.ru/community/uploads/images/00/00/01/2014/10/15/ca8a68.jpg" width="600"/>

В InfoboxCloud(http://infoboxcloud.ru) мы сделали готовый образ Ubuntu 14.04 с Docker. Не забудьте поставить галочку «Разрешить управление ядром ОС» при создании сервера, это требуется для работы Docker.

Читать дальше (http://habrahabr.ru/post/240623/#habracut)

[>] Видео и обзор конференции OSSDEVCONF-2014
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


Пару недель назад в Калуге прошла конференция OSSDEVCONF-2014, или более солидно «Одиннадцатая конференция разработчиков свободных программ». Тематика в целом — «как внедрять СПО», «перспективы импортозамещения», «СПО во всех видах — от госпорталов до CAD-систем и Instant Messengerов», тонкости разработки сложного опенсорса, фишки отечественных линукс-дистрибутивов. Докладчики — ALT Linux, Red Hat, ROSA, Институт Системного программирования и т.п. К сожалению, получилось так, что народу собралось немного — осенние болезни скосили участников и докладчиков (один из в полуживом состоянии осилил записать удаленный доклад…), ну и трудно, несмотря на бесплатность, собрать людей на конференцию не в городе-транспортном узле. В результате, всего полтора десятка докладов, и они ищут зрителей — я сделал добротную видеозапись (монтаж с нескольких камер и экрана, звук с микрофонов, технологии оживления™ и т.п.)



В качестве пикрелейтед — минутный обзорный ролик.



<iframe src="//player.vimeo.com/video/106435790" width="500" height="281" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>



А под катом предлагаю краткий обзор-классификацию с ссылками на видео и дополнительные материалы («слайды-тезисы-контакты докладчика»).

Читать дальше (http://habrahabr.ru/post/240089/#habracut)

[>] [recovery mode] Установка и запуск Asterisk на Android-смартфоне
habra.14
habrabot(difrex,1) — All
2014-11-05 15:30:03


Здравстуй, хабр!

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



Читать дальше (http://habrahabr.ru/post/239419/#habracut)

[>] [Из песочницы] XMonad + XMobar = ❤
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


Многие слышали про тайловые оконные менеджеры, некоторые даже слышали о XMonad. А ребята из Google даже [променяли][1] Unity/Gnome на XMonad. Что же это такое, как это настраивать и как с этим жить? Краткий workaround для любителей кастомизировать всё подряд. ![][2] [Подробности][3]

[1]: http://habrahabr.ru/post/143734/
[2]: //habrastorage.org/files/60b/3fb/325/60b3fb3255144aee80a402c6d1d818ca.png
[3]: http://habrahabr.ru/post/242351/#habracut

[>] [Из песочницы] Настройка своего сервера синхронизации Firefox Sync
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


![image][1] Firefox Sync, это служба, которая позволяет пользователям переносить полностью свою историю, пароли, закладки, открытые вкладки и даже дополнения между различными устройствами, на которых установлен браузер Firefox, как для десктопной версии, так и для Android. Firefox Sync реализуется двумя сущностями — сервисом авторизации (Firefox account API) и сервером синхронизации (Firefox Sync). Давно возникла идея настроить свой сервер для синхронизации паролей, закладок и прочих радостей жизни. По роду деятельности, не очень доверяю публичным сервисам, таким, как LastPass или Google Account. На мой взгляд, приватные данные должны храниться на своем сервере. Ну да хватит лирики, приступим к настройке. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/70f/3a9/461/70f3a9461ae7dc521b22173cfa688096.png
[2]: http://habrahabr.ru/post/241889/#habracut

[>] [Из песочницы] Обновление tzdata для России (системное и java в Ubuntu/Debian, а также в MySQL)
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09




### Предисловие

Как многие помнят, в этом году был принят закон, в связи с которым поменялись часовые пояса в России с 26 октября 2014 г. Само собой, сразу после принятия закона я поставил в календарь напоминалку на начало октября «обязательно обновить tzdata». Каково же было моё удивление, когда я не обнаружил апдейтов tzdata в debian и ubuntu. Решил подождать еще немного, наткнулся на открытые баги в дистрибутивах (Ubuntu [\#1377813][1], [ #1371758][2], Debian [\#761267][3]). Коллеги усиленно напоминали о необходимости апдейтов, но мейнтейнеры не реагировали. Чтобы не устроить себе аврал к концу месяца, решил собрать пакеты и проапдейтить вручную. Важно отметить, что информацию о зонах в некотором софте, например, в MySQL, потребуется обновить вручную. Далее последует короткий мануал. [Читать дальше →][4]

[1]: https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1377813
[2]: https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1371758
[3]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=761267
[4]: http://habrahabr.ru/post/240937/#habracut

[>] [Из песочницы] Готовим Debian к переводу часов 26 октября 2014 года
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


Приближается 26 октября 2014 года — день, когда в 2 часа ночи в большинстве регионов России в очередной (и как снова обещано в последний) раз часы буду переведены на час назад. Кроме того, в некоторых регионах происходит смена часового пояса. Ознакомиться подробно где и что меняется можно в [Федеральном законе от 21.07.2014 № 248-ФЗ «О внесении изменений в Федеральный закон „Об исчислении времени“][1]. В этом посте я хочу акцентироваться на вопросе приведения в актуальное состояние данных о часовых поясах в Debian. [Читать дальше →][2]

[1]: http://pravo.gov.ru:8080/page.aspx?111660
[2]: http://habrahabr.ru/post/240915/#habracut

[>] [Из песочницы] Голосовой автоинформатор даты и времени, приятным женским голосом, русским языком, на базе asterisk? Легко
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


В преддверии выходных не чем себя занять, так как по регламенту не позволены грандиозные настройки? На старом, заброшенном сервере запылился asterisk? Абоненту нечем тестировать телефонную линию? <s>Для тех, кому не с кем поговорить и для тех, кто потерялся во времени</s>.

<div style="text-align: center"><img src="//habrastorage.org/files/e96/0a9/c86/e960a9c86d4d406da44dea3d7e6ea819.jpg" /></div>

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

> Текущее время пятнадцать час
>
> <u>ов</u>
>
> , двадцать од
>
> <u>на</u>
>
> минут
>
> <u>а</u>
>
> , двадцать секунд. Сегодня среда, пятнадцат
>
> <u>ое</u>
>
> октябр
>
> <u>я</u>
>
> .
>
>

или

> Текущее время од
>
> <u>ин</u>
>
> <u>час</u>
>
> , тридцать пять минут, десять секунд. Сегодня четверг, шестнадцатое октября.
>
>

Для простоты и прозрачности внедрения мы не будем пользоваться AGI и попросим железную леди сообщать нам дату и время, по большому счету, поработав лишь с dialplan\`ом и say.conf\`ом. И если ваш asterisk до сих пор не говорит по-русски — не беда, этому мы его научим. Кому стало интересно, добро пожаловать под хабракат. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/240649/#habracut

[>] [Из песочницы] rawdog — аггрегатор RSS без завышенных запросов
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09




#### Лирическое вступление

В связи с недавним [отпочкованием][1] от Хабрахабра нового ресурса, у меня возникла нужда обустроить удобный способ чтения обоих ресурсов. Первая мысль, разумеется, была об RSS, благо движок у обоих сайтов его поддерживает. Оставались сущие пустяки — найти хороший RSS-аггрегатор, который можно было бы установить на малосильную VPS (поскольку участь Google Reader'а несколько охладила желание полагаться на сторонний сервис). [Читать дальше →][2]

[1]: http://habrahabr.ru/company/tm/blog/240135/
[2]: http://habrahabr.ru/post/240545/#habracut

[>] [Из песочницы] Реанимация D-Link NAS DNS-325
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


Добрый день! Хочу поделиться историей о том, как я чинил <s>примус </s> свой домашний NAS D-Link DNS-325. Сам NAS у меня обычно в режиме минимального потребления электроэнергии с выключенными жёсткими дисками WD Green (установлен fun\_plug на внешнюю USB флешку, об этой «прокачке» есть [статья][1] на Хабре). Однажды, после отпуска, я включил питание на NAS, чтобы просмотреть/загрузить фотографии. Он не включился. Cветодиод питания весело замигал, загорелись индикаторы сотояния HDD, но мигание продолжалось и продолжалось без признаков жизни. При нормальных условиях мигание означает процесс загрузки, который должен завершиться полной инициализацией и установлением стабильного свечения power LED. После многих попыток запустить устройство, отключения жёстких дисков, нажатия кнопки reset (которая, кстати, безполезна пока загрузка не завершится успешно), я с горечью осознал, что это не тривиальная проблема, с которой мне прийдётся справиться самому из-за истёкшей гарантии (12 месяцев). [Читать дальше →][2]

[1]: http://habrahabr.ru/post/155557
[2]: http://habrahabr.ru/post/239805/#habracut

[>] [Из песочницы] Организация backup-сервера. Linux, ZFS и rsync
habra.14
habrabot(difrex,1) — All
2014-11-05 19:25:09


TL;DR: Статья о настройке бекапа линуксовых серверов. В качестве хранилища используется раздел ZFS с включенными дедубликацией и компрессией. Ежедневно делаются снапшоты, которые сохраняются в течение недели (7 штук). Ежемесячные снапшоты хранятся в течение года (еще 12 штук). В качестве транспорта выступает rsync: на сервере он запущен демоном, на клиентах он запускается из crontab. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/239513/#habracut

[>] Альтернативная прошивка OpenWRT BarrierBreaker 14.07
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24


Салют, Хабр! OpenWRT — альтернативная прошивка для сетевых устройств (роутеров). К счастью, мы уже [давно знакомы][1] с OpenWRT и ее возможностями, но как-то так получилось, что упустили выход новой версии этого замечательного продукта. Что нового в OpenWRT BarrierBreaker 14.07: [Читать дальше →][2]

[1]: http://habrahabr.ru/search/?q=OpenWRT
[2]: http://habrahabr.ru/post/242367/#habracut

[>] IceCash 1.3. Linux рабочее место кассира на php, с драйвером Штрих-М
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24


<img src="http://habrastorage.org/getpro/habr/post_images/99d/416/058/99d4160585a4c2773315ecd0c28799f4.png" width="300" alt="image" /> Всем привет. Как-то давным придавно писал статью [первый пост][1] о проекте **IceCash**. Собственно никуда этот проект не потерялся, живет себе в моей организации и понемногу совершенствуется. Работает примерно на сорока кассах. Не шедевр, конечно, но свою функцию выполняет. [Читать дальше →][2]

[1]: http://habrahabr.ru/post/146170/
[2]: http://habrahabr.ru/post/242217/#habracut

[>] ah — лучше, чем history
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24


Так получается, что я провожу в консоли (терминале) достаточно времени, порой даже больше, чем хотелось бы. Порой даже исполняю там какие-то команды и внимательно изучаю их вывод. Часто случается, что к выводу той или иной команды приходится возвращаться, а он постоянно теряется: то терминалы захлопываются, то в `tmux` окно закрываешь, то выводы прочих команд уже давным-давно забили и похоронили ту самую полезную строчку. Для того, чтобы сохранить вывод какой-либо утилиты я, как и многие, пользовался `tee`. Это работало, но постоянная суета среди бесконечных `error.log`, `out.log`, `output.log`, `err.log` `log.log`, `lll.txt` и тп если не сводила с ума, то безумно раздражала; вместо того, чтобы вести какой-то порядок, постоянно подмывало создать Новую Папку (1), где и похоронить эти самые логи, периодически бэкапя могильничек: порядок предполагал какую-то систематизацию, а в разгаре работы вспоминать как назвать свой файл крайне не хотелось. Тогда я написал [ah][1], крохотную утилитку, которая сильно-сильно улучшила мою жизнь. [Читать дальше →][2]

[1]: https://github.com/9seconds/ah
[2]: http://habrahabr.ru/post/242207/#habracut

[>] Унифицированная динамическая корпоративная подпись с логотипом Postfix + alterMIME + addAttachFilter + Active Directory или MySQL
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24




#### Введение

Практически в любой компании руководство требует соблюдать тот или иной формат деловой переписки, где почтовой подписи отводится особая роль. Часто бывает так, что руководство компании обязывает всех ставить унифицированную корпоративную подпись, но на практике большинство сотрудников игнорируют данное обязательство по разным причинам, либо структура подписи отличается от корпоративной (шрифтом, цветом, шаблоном текста). Разумеется, практически вся работа по выполнению этой задачи ложится на плечи системного администратора. Это хорошо, когда в компании работают пара десятков сотрудников и единожды добавить корпоративную подпись не составит большого труда. Но что делать, когда в вашей компании работают более 50 человек, которые могут использовать разные почтовые клиенты, и которым периодически требуется замена программного обеспечения? Получается, что в долгосрочной перспективе, выполнить это требование практически не возможно. Как результат, руководству приходится время от времени пинать своих подчиненных, что может вызвать гнев в сторону провинившегося сотрудника, а также всего отдела IT. В лучшем случае кто-то получит замечание, в худшем — лишится премии. В этой статье расскажу, как можно реализовать поставленную задачу, с какими сложностями придется столкнуться, и как эти сложности преодолеть.

#### Задача и проблемы ее реализации

Как правило, руководство требует, чтобы корпоративная подпись с логотипом компании присутствовала в каждом письме у всех сотрудников. Согласовать такую подпись довольно просто, а вот реализовать поставленную задачу весьма затруднительно на стороне почтового сервера. Возможно многие из вас уже пробовали справится с этой задачей, использую связку **alterMIME + addAttachFilter**, но бросали эту затею по многим причинам. Как правило, чтобы вы не делали, структура писем или подписи становится не читаемая, особенно при активной переписке, а также если кто-то использует **Microsoft Outlook**. Что же, давайте разберем все эти проблемы… [Читать дальше →][1]

[1]: http://habrahabr.ru/post/242185/#habracut

[>] Пассивный фингерпринтинг для выявления синтетического трафика
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24


![image][1]![image][2]Я достаточно долгое время вынашивал идею рассмотреть клиентов публичного web-сервиса, браузер которых посылает заголовок User-Agent как у браузера в Windows, и которые при этом имеют все признаки сетевого стэка \*nix-систем. Предположительно, в этой группе должна быть большая концентрация ботов, запущенных на недорогих хостингах для накрутки трафика или сканирования сайта. [Читать дальше →][3]

[1]: http://habrastorage.org/files/2dc/9c9/2c9/2dc9c92c9d4f47498f30623bf326e02c.jpg
[2]: http://185.4.75.211/_.svg
[3]: http://habrahabr.ru/post/241309/#habracut

[>] Odroid W, или потрошим малиновый пирожок
habra.14
habrabot(difrex,1) — All
2014-11-05 20:05:24


На днях копался в прайсе одной московской компании, в которой почти год назад прикупил Малинку, и с удивлением в числе прочего обнаружил Odroid W — ту самую плату [«Малина в три раза мельче»][1]… С учётом того, что деньги были и я всеравно хотел пару штук таких — сделал заказ и в пятницу таки забрал его… ![image][2] Это «обзорник» по щупанию лапами новой платы и раскрытие некоторых неочевидных на первый взгляд вещей. [Читать дальше →][3]

[1]: http://habrahabr.ru/post/233133/
[2]: http://habrastorage.org/getpro/habr/post_images/b58/cda/d15/b58cdad1595cf026a47b510b45487288.jpg
[3]: http://habrahabr.ru/post/240823/#habracut

[>] Хакеры взломали более 3 млн. аккаунтов iTunes?
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:03


![][1] Во вторник в Интернете появились [сообщения][2] об утечке 3.887.882 учетных записей iTunes. Базу с аккаунтами и паролями неизвестные выложили на Pastebin.com и ряде других сайтов. В настоящее время эти записи уже удалены, однако нам доступна некоторая статистика, которая приводится ниже. [Читать дальше →][3]

[1]: http://habrastorage.org/files/884/f3a/359/884f3a35941447078bef55d4f8875897.png
[2]: http://belsec.skynetblogs.be/archive/2014/11/04/anonymous-hackers-claim-they-hacked-3-million-itunes-account-8318771.html
[3]: http://habrahabr.ru/post/242439/#habracut

[>] Просмотр всех нажатий клавиш в Google Docs
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:03


С [мая 2010 года][1] Google Docs ввёл новый формат документов, который сохраняет подробную историю версий. Вы можете открутить действия назад, словно в замедленном фильме. Текстовый редактор сохраняет время нажатия клавиш с точностью до микросекунды. Журналист и хакер Джеймс Сомерс сумел [взломать внутренний формат Google Docs][2] и извлечь метки времени для каждого нажатия клавиш. Таким образом, вы можете посмотреть историю создания документа от начала и до конца. Более того, кейлоггер Google Docs очень продвинутый: он присваивает уникальные идентификаторы символам, так что знает даже, откуда и куда скопирована каждая буква! Самое главное, что для вас открыта история нажатия клавиш и чужих документов, которыми с вами поделились коллеги для совместной работы. Это можно назвать неожиданным поведением программы. Если я создаю документ, а потом открываю к нему совместный доступ, я не могу ожидать, что все коллеги увидят полную историю, как создавался этот текст, какие слова исправлялись и какие предложения удалялись, прежде чем документ выложили на всеобщее обозрение. [Читать дальше →][3]

[1]: http://googledocs.blogspot.com/2010/05/whats-different-about-new-google-docs.html
[2]: http://features.jsomers.net/how-i-reverse-engineered-google-docs/
[3]: http://habrahabr.ru/post/242433/#habracut

[>] [Из песочницы] Jump Start в PowerShell (часть I)
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:03


Только автоматизация. Только PowerShell. ![][1]

#### Предисловие

В качестве хобби и при наличии времени преподаю студентам в УКИТ (бывший Московский государственный колледж информационных технологий). На данный момент у меня мало времени, чтобы уделить его группе студентов, зато вполне достаточно, чтобы подготовить пост здесь, на Хабре. Я работаю системным администратором в крупной не ИТ-компании с большой завязкой на ИТ ресурсы. По роду деятельности представляется решать большое количество однотипных задач по обслуживанию пользователей. С языком PowerShell познакомился около двух лет назад, но вплотную занялся им лишь спустя год, не осознав поначалу его огромных возможностей. В статье, прежде всего, я буду ориентироваться на тех, кто хочет начать работать с PowerShell, но пока не доверяет ему или не знает, с какой стороны подступиться к этому чуду. **Внимание: PowerShell вызывает привыкание.** [Читать дальше →][2]

[1]: //habrastorage.org/files/dc3/20a/c3a/dc320ac3ae3045afad6c394bce588cc2.png
[2]: http://habrahabr.ru/post/242425/#habracut

[>] Программирование для начинающих — пример создания Азбуки Морзе на базе визуальной системы Snap!
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


![][1] Одной из целью популяризации DIY-робототехники, для меня, является привлечение внимания к IT, к программированию. И в этом плане мне интересны визуальные среды программирования, где простым Drag&amp;Drop можно создавать программы. Для тех кто только начинает изучать компьютер — такой способ программирования может на начальном этапе вызвать интерес (благодаря своей простоте), и дальше уже способствовать к самостоятельному изучению (чего-то более сложного). Думаю многие слышали про **Scratch** — это «классика жанра» (созданная в MIT, идея 2003 и выход в релиз 1.0 в январе 2006 году), но для его работы необходимо установка ПО на компьютер (или Flash). Некоторое время назад в University of California at Berkeley была разработана система **Snap!**, интерфейсе которой близок к Scratch, но **работает в браузере**, на базе классических html/js/css. То есть для работы с ней — вам достаточно только браузера (и к тому же [она open-source][2]). Вот о веб-системе визуального программирования Snap! я и хочу рассказать. Изучать что-то новое всегда интересно на каком либо примере из жизни, вот я и решил попробовать задачу рисования и озвучивания азбуки Морзе — этапы решения этой задачи и будет содержимым данной публикации. Программа будет при нажатии на клавиши — рисовать соответствующие символы, и так же «озвучивать». На КДПВ приведена итоговая программа, и справа написано «HI HABR, HABR HI».

<div class="spoiler"><b class="spoiler_title">Живое демо</b><div class="spoiler_text">Если кому-то хочется сразу увидеть результат, то <a href="http://makeitlab.ru/snap/snap.html#open:http://makeitlab.ru/snap_demo/morse_code.xml">демо здесь</a>.
Управление:
"<b>клавиша вверх</b>" — инициализация параметров и очистка (лучше нажать после загрузки — выставится ширина точек) "<b>клавиша вниз</b>" — перевод строки клавиши "<b>h</b>", "<b>i</b>", "<b>a</b>", "<b>b</b>", "<b>r</b>" — рисование и озвучивание соотв. буквы с помощью азбуки Морзе.
</div>
</div>

[Читать дальше →][3]

[1]: //habrastorage.org/files/ece/de7/353/ecede735364542bcb5515ddaa2e1d96c.jpg
[2]: https://github.com/jmoenig/Snap--Build-Your-Own-Blocks
[3]: http://habrahabr.ru/post/242323/#habracut

[>] Мировой тур RAD Studio XE7 в Минске, Нижнем Новгороде и Красноярске
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


![][1] Уважаемые друзья, Мы продолжаем Мировой тур RAD Studio XE7 и в этом квартале мы стартуем с Минска, в котором будем 26 ноября, далее 2 декабря ждите нас в Нижнем Новгороде, а окончание тура будет 10 декабря в Красноярске. В этот раз мы будем освещать не только темы по кроссплатформенной разработке и корпоративной мобильности, но и коснемся проблем с которыми сталкиваются корпоративные разработчики по взаимодействию с различными базами данных. В ходе мероприятия спикеры расскажут как: • Разрабатывать кроссплатформенные приложения с помощью нового дизайнера единого интерфейса; • Улучшать производительность настольных и мобильных приложений с помощью библиотеки параллельных вычислений, используя преимущества многоядерных процессоров; • Как обеспечить использование мобильной инфраструктуры стандартными сервисами • Сбалансировать ИТ инфраструктуру и масштабировать работу с данными за счет включения корпоративных сервисов [Читать дальше →][2]

[1]: //habrastorage.org/files/0cc/745/fd2/0cc745fd259841a0852822ee1095980a.jpeg
[2]: http://habrahabr.ru/post/242383/#habracut

[>] Встречайте, IntelliJ IDEA 14 уже здесь
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Закончились праздники и выходные, но не поводы радоваться. Что может быть приятнее, чем узнать о долгожданном обновлении любимой Java IDE? Мы с нетерпением ждали четыре долгих дня, чтобы удивить вас этим приятным сюрпризом. Встречайте [IntelliJ IDEA 14][1]! ![image][2] Рассказывая о том, чем мы занимались большую часть года, мы всякий раз переживаем и волнуемся. Каждая новая версия IntelliJ IDEA поднимает планку всеобщих ожиданий. И все-таки каждое обновление — еще один шанс для нас доказать, что совершенству нет предела. Удалось ли на этот раз — судить вам! [Читать дальше →][3]

[1]: https://www.jetbrains.com/idea/whatsnew/
[2]: http://habrastorage.org/getpro/habr/post_images/89f/a80/980/89fa80980665f703eb4268dc7370b4f8.png
[3]: http://habrahabr.ru/post/242395/#habracut

[>] [recovery mode] Экономика развивающихся стран. Камбоджа
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Размышляя о том, как поднять экономику Нашей Многострадальной, поселился я на фрилансе на месяц в Камбодже, одной из беднейших стран Юго-Восточной Азии. О том, на какие мысли меня это натолкнуло и как там вообще обстоят дела и пойдёт эта статья. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/242389/#habracut

[>] Поддержка MultiTouch + Gestures в Delphi XE4
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04




<div style="text-align: center"><img src="//habrastorage.org/files/66f/57b/fe5/66f57bfe574148dc97ffcc9c3f8d2ede.jpg" /></div>

Как-то незаметно для меня прошли все эти новые веяния в виде активных мониторов, на которые пользователь может тыкать пальцами. И знать бы о них не знал, кабы месяца три назад начальство не приобрело себе ноутбук, который можно порвать на две части (экран отдельно, клавиатура отдельно), причем не Surface какой-то, пропиаренный MS, а уже самый проходной у пользователей – от [ASUS][1], за гораздо меньшие деньги (относительно). Да и закуплен был данный девайс не просто так – задача выросла оттуда, откуда и не ждали. Де юре: мы проводим огромное количество семинаров в месяц, и вот именно на них, нашим лекторам начали демонстрировать несовместимость нашего ПО с этим пресловутым тачем. Де факто: на почту саппорта начали сыпаться гневные письма пользователей плана – «я два раза тапнула, а оно не тапнулось, может не так тапнула?» А начальство все это скрупулезно отслеживало на своем «порватом» ноутбуке и готовило ТЗ. И вот настал тот день. Мне на рабочий стол был воздвигнут третий монитор, [23 дюйма от LG][2] (с поддержкой Touch ввода аж 10 пальцами) и поставлена задача – это должно заработать в течении трех дней! А работаю то я в XE4 – беда. [Читать дальше →][3]

[1]: http://www.asus.com/in-search-of-incredible/ru-ru/asus-transformer-book-t300
[2]: http://www.ixbt.com/monitor/lg-23et63v.shtml
[3]: http://habrahabr.ru/post/242355/#habracut

[>] [Из песочницы] ZeroMQ: сокеты по-новому
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


В любом среднем или крупном приложении, будь оно desktop или web, для бизнеса или для личного пользования, программисту необходимо решить важную архитектурную задачу — как будут общаться между собой потоки, процессы, модули, ноды, кластера, и прочие части эко-системы его приложения. Многие разработчики решают идти по пути наименьшего сопротивления, возложив эту задачу, например, на СУБД. Скажем, один процесс положил данные в БД, второй прочитал, обработал — положил еще и так далее. Про обмен через файлы в наши годы уже стыдно говорить, но и такое случается. Другие же программисты пытаются создать какое-то свое, специализированное решение и, как правило, выбирают сокеты. Задача проектирования и разработки архитектуры приложения крайне интересная, но это отдельная тема. В данном посте хотел бы поделиться своим первым впечатлением от знакомства с библиотекой ZeroMQ. ZeroMQ предлагает разработчику некий высокий уровень абстракции при работе с «сокетами». Библиотека берет на себя часть забот по буферизации данных, обслуживанию очередей, установлению и восстановлению соединений, и прочие вещи. Вместо того, чтобы заниматься такими глупостями, вы можете сосредоточиться на главном — архитектуре и логике приложения. Однако, в этом мире бесплатный сыр только в мышеловке. Поэтому я постарался по мере сил и опыта выяснить, чем придется поплатиться за удобство, какие я нашел плюсы и минусы при применении данной библиотеки. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/242359/#habracut

[>] ZeroNights 2014: взломай и получи
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


![image][1] ZeroNights, пожалуй, единственная конференция по безопасности в России, с которой любой посетитель может вернуться не только с объемным багажом полезных знаний, применимых на практике, но и с солидным денежным призом ;) В этом году азартная составляющая мероприятия зашкаливает. С программой конференции можно ознакомиться здесь: [2014\.zeronights.ru/assets/files/schedule\_rus\_fin.pdf][2] Подробности наших активностей смотрите ниже. [Читать дальше →][3]

[1]: http://habrastorage.org/files/cac/eb8/a40/caceb8a40e9343df8cf535ccfbe6833d
[2]: http://2014.zeronights.ru/assets/files/schedule_rus_fin.pdf
[3]: http://habrahabr.ru/post/242319/#habracut

[>] ИБ по-американски. Часть 4. Разбираемся с «подгонкой» и «перекрытиями» и завершаем этот обзор
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


![][1] _\*Оставьте свою работу на рабочем месте!\*_ Итак, нелёгкий путь по <s>обзиранию</s> созданию краткого обзора NIST SP 800-53 подходит к логическому концу. Я рад, что мне удалось совершить задуманное и написать пусть небольшой, но законченный по содержанию цикл статей, не остановившись на первой или второй части. В дальнейшем, надеюсь, получится от случая к случаю делиться с общественностью своими соображениями на тему ИБ, ИТ и аудита. Итак, в этой статье будет наконец-то поведано о выборе набора контролей безопасности, подгонке его под нужды конкретной организации и создании так называемых перекрытий «overlays», применимых вне масштабов отдельной организации. Ссылки на предыдущие статьи: [ИБ по-американски. Часть 1. Что такое NIST 800-53 и как выглядят контроли безопасности?][2] [ИБ по-американски. Часть 2. А можно поподробнее о NIST 800-53 и причём тут управление рисками?][3] [ИБ по-американски. Часть 3. Что из себя представляет базовый набор контролей безопасности и как определять критичность информационных систем?][4] [ИБ по-американски. Часть 4. Разбираемся с «подгонкой» и «перекрытиями» и завершаем этот обзор][5] [Продолжаем читать внутри][6]

[1]: //habrastorage.org/files/adb/d07/3ed/adbd073edd824961abc2d78c2fec34f5.jpg
[2]: http://habrahabr.ru/post/238245/
[3]: http://habrahabr.ru/post/238951/
[4]: http://habrahabr.ru/post/238977/
[5]: http://habrahabr.ru/post/239097/
[6]: http://habrahabr.ru/post/239097/#habracut

[>] Пишем плагин для XBMC с собственным интерфейсом: часть III — API и микро-фреймворк
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04




#### Вступление

Это III часть цикла статей, посвященных написанию плагинов для XBMC с собственным интерфейсом. В предыдущих частях ([часть I][1] и [часть II][2]) я рассказал об основных принципах создания интерфейса плагинов XBMC и дал несколько простых примеров. В этой части я хочу совсем кратко рассказать о различных API для взаимодействия с XBMC, продемонстрировать написанный мною микро-фреймворк, упрощающий компоновку интерфейса. [Читать дальше →][3]

[1]: http://habrahabr.ru/post/193704/
[2]: http://habrahabr.ru/post/194124/
[3]: http://habrahabr.ru/post/194380/#habracut

[>] Оптимизация для начинающих, или о пользе профилирования
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Попалась мне задача написать на PHP оптимальный алгоритм вставки нового значения в упорядоченный массив. Причем аргументировано доказать, что именно этот алгоритм лучший. Для этого предлагалось написать три варианта и выбрать из них лучший. Конечно же я знаю, что лучший метод поиска — бинарный, но раз сказали доказать, что он лучший, так и быть, напишу еще два. С таким настроем и уверенностью в будущем результате я и принялся кодить. Что из этого получилось приглашаю начинающих программистов почитать, а опытных обсудить. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/242309/#habracut

[>] [Перевод] Типы данных наносят ответный удар
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Это вторая часть моих размышлений на тему «Python, каким бы я хотел его видеть», и в ней мы более подробно рассмотрим систему типов. Для этого нам снова придётся углубиться в особенности реализации языка Python и его интерпретатора CPython. Если вы программист на языке Python, для вас типы данных всегда оставались за кадром. Они где-то там существуют сами по себе и как-то там взаимодействуют друг с другом, но чаще всего вы задумываетесь об их существовании только когда возникает ошибка. И тогда исключение говорит вам, что какой-то из типов данных ведёт себя не так, как вы от него ожидали. Python всегда гордился своей реализацией системы типов. Я помню, как много лет назад читал документацию, в которой был целый раздел о преимуществах утиной типизации. Давайте начистоту: да, в практических целях утиная типизация — хорошее решение. Если вы ничем не ограничены и нет нужды бороться с типами данных по причине их отсутствия, вы можете создавать очень красивые API. Особенно легко на Python получается решать повседневные задачи. Практически все API, которые я реализовывал на Python, не работали в других языках программирования. Даже такая простая вещь, как интерфейс для работы с командной строкой (библиотека [click][1]) просто не работает в других языках, и основная причина в том, что вам приходится беспрестанно бороться с типами данных. Не так давно поднимался вопрос добавления статической типизации в Python, и я искренне надеюсь, что лёд, наконец, тронулся. Постараюсь объяснить, почему я против явной типизации, и почему надеюсь, что Python никогда не пойдёт по этому пути. [Читать дальше →][2]

[1]: http://click.pocoo.org/
[2]: http://habrahabr.ru/post/242305/#habracut

[>] Анонс Brackets 1.0 и Extract for Brackets (Preview версия)
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


![image][1] Я думаю, что большое количество людей, занимающихся или интересующихся веб-разработкой давно уже опробовали open-source IDE [Brackets][2]. На хабре не раз упоминали о ней (например, [тут][3]), поэтому не буду много разглагольствовать и перейду к сути. Сегодня, спустя почти 3 года, в течение которых участвовало 245 контрибьюторов, наконец вышла версия 1.0 — способ объявить миру, что Brackets готов. Несмотря на то, что выпуск имеет версию 1.0, разработчики относятся к нему как и к любому другому релизу. Новые продолжат выпускаться так же часто как и сейчас — каждые 3-4 недели.

## Встречайте Extract for Brackets (preview)

Отдельно заслуживает внимания плагин Extract for Brackets, который наконец доступен для публичного тестирования, предназначенный упростить верстку веб-сайтов. [Читать дальше][4]

[1]: http://habrastorage.org/getpro/habr/post_images/130/ea2/4b1/130ea24b191831d0a1aad2677095c84a.png
[2]: http://brackets.io/
[3]: http://habrahabr.ru/post/190454/
[4]: http://habrahabr.ru/post/242297/#habracut

[>] Quotient filter
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Quotient filter — это вероятностная структура данных, позволяющая проверить принадлежность элемента множеству. Она описана в 2011 г. как замена фильтру [Блума][1]. Ответ может быть: — элемент точно не принадлежит множеству; — элемент возможно принадлежит множеству. [Читать дальше →][2]

[1]: http://habrahabr.ru/post/112069/
[2]: http://habrahabr.ru/post/242285/#habracut

[>] Почему буфер должен расти экспоненциально
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Сотрудник Mozilla Николас Нетеркот опубликовал заметку с очень [чётким объяснением][1], почему размер буфера памяти для программы нужно увеличивать экспоненциально, а не линейно. Предположим, что у нас есть структура данных, для которой нужно всё больше памяти, например, строка или вектор. Если новые элементы не помещаются в буфере, то создаётся новый буфер, туда копируются всё содержимое из старого, а затем старый буфер освобождается. Обычное этим занимается `realloc()`. Так вот. Представим, что наш изначальный 1-байтный буфер растёт по 1 байту до тех пор, пока не достигнет размера 1 МиБ. Сколько памяти мы задействовали для него кумулятивно?

1 + 2 + 3 + … + 1,048,575 + 1,048,576 = 549,756,338,176 байт

Неслабо, да? [Читать дальше →][2]

[1]: https://blog.mozilla.org/nnethercote/2014/11/04/please-grow-your-buffers-exponentially/
[2]: http://habrahabr.ru/post/242279/#habracut

[>] Бесплатный Code signing для Open Source от Certum
habra.14
habrabot(difrex,1) — All
2014-11-06 11:35:04


Запустив сегодня программу, описанную в [статье][1], я увидел следующее предупреждение:

<div style="text-align: center"><img src="//habrastorage.org/files/a33/1ba/cfa/a331bacfae894c808e66178043467e09.png" /></div>

Бросается в глаза необычный префикс, **Open source developer**. Кроме того, несколько дней назад я уже видел точно такой же префикс, с другим именем. Напрашивается вывод, что, скорее всего, существует какая-то программа выдачи подобных сертификатов. Несложный поиск показал следующее: [Что именно?][2]

[1]: http://habrahabr.ru/post/242199/
[2]: http://habrahabr.ru/post/242267/#habracut

Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 41