RSS
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 41
[>] [Перевод] Расширяя полотно картины Ван Гога “Звездная ночь” с помощью языка Wolfram Language (Mathematica)
habra.14
habrabot(difrex,1) — All
2014-12-02 03:00:02






_Перевод поста Piotr Wendykier "[Extending Van Gogh's Starry Night with Inpainting][1]" Скачать перевод в виде документа _Mathematica_, который содержит весь код использованный в статье, можно [здесь][2] (архив, ~8 МБ)._ Могут ли компьютеры научиться рисовать, как Ван Гог? Определенно да, до некоторой степени! Для этого, подобно художникам-копиистам, алгоритму сначало потребуется взять некоторое оригинальное произведение, а затем он сможет на их основе создать что-то сам. Насколько хорошо он сможет с этим справиться? Пожалуйста, судите сами. [Вторая премия на фотоконкурсе ZEISS][3] [Читать дальше →][4]

[1]: http://blog.wolfram.com/2014/12/01/extending-van-goghs-starry-night-with-inpainting/
[2]: http://goo.gl/SK05Nf
[3]: http://www.eng.cam.ac.uk/news/art-engineering-images-frontiers-technology
[4]: http://habrahabr.ru/post/244729/#habracut

[>] Безопасен ли Telegram? v2
habra.14
habrabot(difrex,1) — All
2014-12-02 06:00:03


С момента самого его появления Telegram не критиковал только ленивый. Этим с одинаковым энтузиазмом занимались резиденты Reddit, Hacker News, etc. [Читать дальше →][1]

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

[>] Почему 1С это плохо и почему так не любят 1С программистов
habra.14
habrabot(difrex,1) — All
2014-12-02 07:00:04




> Мы продолжаем то, что мы уже много наделали.

Черномырдин В.С. Не так давно ко мне в очередной раз обратился клиент с широко известной проблемой. В его компании установили обновления 1С. И работа остановилась, так как программа перестала корректно работать. Думаю, всем, кто сталкивался с программными продуктами от 1С в качестве программиста или пользователя, эта ситуация очень хорошо знакома. Конечно, в данном конкретном случае я постарался решить все проблемы в самые короткие сроки, и, в результате, работа офиса вернулась в привычное русло. Но даже в такой ситуации я получил массу негатива со стороны клиента. И тогда я задумался о том, почему с программными продуктами 1С постоянно возникает такое количество проблем, почему от клиентов идет столько негатива, а самих 1С-программистов часто недолюбливают, в том числе, и другие программисты? [Читать дальше →][1]

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

[>] «Железная» уязвимость в DRAM позволяет изменить содержимое чужой памяти
habra.14
habrabot(difrex,1) — All
2014-12-02 10:30:07


Опубликована статья [Yoongu Kim & others. Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors][1], описывающая способ изменения содержимого DRAM памяти, не требующий доступа по этому адресу. Фактически это означает нарушение изоляции памяти между процессами или виртуальными машинами. Из проверенных 129 модулей памяти, 110 оказались подвержены уязвимости, в том числе, _все_ модули, выпущенные после 2012 года. [Читать дальше →][2]

[1]: http://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf
[2]: http://habrahabr.ru/post/244741/#habracut

[>] [Из песочницы] Как использовать список ядра Linux для создания очереди
habra.14
habrabot(difrex,1) — All
2014-12-02 12:30:03


Приветствую! В данной статье рассматривается использование реализации двусвязного списка ядра Linux. Двусвязный список в ядре Linux реализован в файле **include/linux/list.h**. Мы будем использовать адаптированный вариант [list.h][1] [1], который отличается от оригинального возможностью использовать его в userspace. Например, создадим очередь — структурe данных с доступом к элементам по принципу «первый пришёл — первый вышел» для произвольного типа данных на основе list.h. [Читать дальше →][2]

[1]: http://isis.poly.edu/kulesh/stuff/src/klist/list.h
[2]: http://habrahabr.ru/post/244759/#habracut

[>] Кому должны принадлежать сообщения пользователей мессенджера: Опыт Kato.im
habra.14
habrabot(difrex,1) — All
2014-12-02 13:00:03


[![image][1]][2] Не так давно рунет всколыхнула [новость][3] о том, что Facebook меняет свою политику использования данных и начнет передавать информацию о пользователях третьим лицам без специального разрешения этих самых пользователей. Несмотря на то, что новость была беззастенчиво раздута журналистами, и на самом деле правила соцсети [не особенно изменились][4], пользователей не на шутку [взволновал][5] вопрос приватности и сохранности их данных. Поскольку наш проект [Kato.im][6] — это мессенджер для бизнес-коммуникаций, логично было бы рассказать о том, как мы храним данные, включая историю посланных пользователем сообщений, а также кто и в какой ситуации может получить доступ к этой информации. [Читать дальше →][7]

[1]: http://habrastorage.org/getpro/habr/post_images/ad3/8e0/cee/ad38e0cee8c544d1611dde94450bede6.jpg
[2]: http://habrahabr.ru/company/kato/blog/244763/
[3]: http://lenta.ru/news/2014/11/26/facebook/
[4]: https://meduza.io/cards/kak-facebook-sobiraet-i-ispolzuet-moi-dannye
[5]: http://habrahabr.ru/post/244255/
[6]: https://kato.im/
[7]: http://habrahabr.ru/post/244763/#habracut

[>] Новая графическая оболочка рабочего стола включена в основную кодовую базу ReactOS
habra.14
habrabot(difrex,1) — All
2014-12-02 18:00:03


![image][1] Спустя месяц после релиза версии [0\.3.17][2] мы наконец выполнили свое [обещание][3]: в состав ReactOS принята новая реализация графической оболочки Explorer, развивавшаяся в рамках проекта Explorer-new. Протестировать новый интерфейс можно воспользовавшись ежедневными [тестовыми сборками][4]. Новая оболочка позволила ReactOS сделать шаг вперёд к совместимости (Explorer-new написан с оглядкой на Windows 2003), функциональности и удобству работы.




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

[1]: http://habr.habrastorage.org/post_images/15a/c08/115/15ac081151757d63bc4630b7347eabc1.jpg
[2]: http://habrahabr.ru/company/reactos/blog/243295/
[3]: http://habrahabr.ru/post/234547/
[4]: http://reactos.com/ru/getbuilds
[5]: http://habrahabr.ru/post/244811/#habracut

[>] Вышла новая версия reCaptcha API 2.0
habra.14
habrabot(difrex,1) — All
2014-12-02 18:00:03


![][1] На днях, занимаясь очередным внедрением reCaptcha для одного из проектов, столкнувшись с небольшой проблемой в области отображения нескольких защитных изображений на 1 странице с помощью AJAX я в очередной раз пошел на страницу официальной документации «reCaptcha» и обнаружил, что документация существенно отличается от предыдущих версий. Воспользовавшись поиском стало ясным — в мир вышла «recaptcha 2.0» с обновленным API и визуализацией а так же рядом других «плюшек», о чем я и расскажу в данной статье. [Читать дальше →][2]

[1]: //habrastorage.org/files/b16/811/fc5/b16811fc59034eb8ae3b7ff0639ea229.png
[2]: http://habrahabr.ru/post/244779/#habracut

[>] Github опять заблокирован
habra.14
habrabot(difrex,1) — All
2014-12-02 18:00:03


Обычный вечер веб-разработчика не сулил ничего необычного. Нужно было всего лишь развернуть проект на виртуальной машине.

$ composer create-project symfony/framework-standard-edition xxx
Installing symfony/framework-standard-edition (v2.6.0)
<...>
- Installing symfony/symfony (2.6.x-dev 09d1a15)
Cloning 09d1a15efe18945bb97fac3adc74d56b3bfd42f4
Failed to download symfony/symfony from source: Failed to clone git@github.com:symfony/symfony.git via git, https, ssh protocols, aborting.

- git://github.com/symfony/symfony.git
fatal: unable to connect to github.com:
github.com[0: 62.192.255.178]: errno=No route to host



![image][1] Причём ещё и по требованию Роспотребнадзора. Интересно, при чём тут он? [][2]

[1]: http://habrastorage.org/files/d2a/492/2e8/d2a4922e885744e68afae8174e43fe66.png
[2]: http://habrahabr.ru/post/244813/#habracut

[>] DDoS-атака в обход балансировщика: защищайте свои cookie!
habra.14
habrabot(difrex,1) — All
2014-12-02 21:30:03


В процессе анализа защищенности IT-инфраструктур нам приходится работать с разным сетевым оборудованием. Бывают хорошо известные устройства и относительно редкие. Среди нечасто встречающихся можно выделить балансировщики нагрузки. Сегодня мы познакомим вас с механизмом поддержания сессий балансировщика F5 BIG-IP методом cookie. Особенность этого механизма в том, что он позволяет злоумышленнику атаковать систему, обходя заданный алгоритм балансировки нагрузки. [![image][1]][2] Что такое балансировщик нагрузки? Это сетевое устройство, распределяющее трафик приложений между серверами, а также позволяющее контролировать и изменять его характеристики в соответствии с заданными правилами. При использовании веб-приложений необходимо, чтобы сессию клиента обслуживал один и тот же сервер. Для этого балансировщик BIG-IP отслеживает и сохраняет сессионную информацию, которая включает адрес конкретного веб-сервера, обслуживающего клиента. Эта информация используется для того, чтобы направлять запросы клиента к одному и тому же веб-серверу в течение одной сессии. [Читать дальше →][3]

[1]: http://habrastorage.org/getpro/habr/post_images/af1/474/8d9/af14748d96ab082c0e503dbdc09b41dc.png
[2]: http://habrahabr.ru/company/pt/blog/244819/
[3]: http://habrahabr.ru/post/244819/#habracut

[>] VPN в каждый дом
habra.14
habrabot(difrex,1) — All
2014-12-02 22:30:04


![][1] Всем привет! Желание сделать VPN сервер максимально простым в установке и удобным в использовании назревало уже давно. За основу я взял **L2TP/IPsec**, эта технология нативно поддерживается всеми устройствами и в отличии от PPTP не вызывает проблем при подключении через сотовых операторов. **tl;dr** Для установки нам потребуется машинка с Ubuntu 14.04 на борту и «белым» IP-адресом, любой VPS подойдет. Достаточно ввести эту волшебную строчку:



и через несколько минут у вас будет рабочий VPN с управлением через браузер (_httр://ip-address:8080/_) или консоль (_instavpn -h_). [Читать дальше →][2]

[1]: //habrastorage.org/files/b1b/1af/22a/b1b1af22aed4451095cf3218ff20d937.png "Картинка для привлечения внимания"
[2]: http://habrahabr.ru/post/243915/#habracut

[>] Цифровой страж Key_P1: история создания и первые результаты
habra.14
habrabot(difrex,1) — All
2014-12-02 23:30:03


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

#### 1\. История создания

В конце 2013 года в компании Мультиклет появились идеи о движении вперёд и производстве не только отечественных процессоров, но и серийных устройств. Рассматривались идеи создания платы ускорителя с огромной производительностью для обычных ПК и устройства для защиты информации. Поскольку компания частная и большого финансирования для ускорителя в тот момент привлечь не удалось было решено начать с производства устройства для защиты информации. Идея о создании устройства для защиты информации зародилась после теста алгоритма ГОСТ89 на процессоре Multiclet P1. Оказалось, что алгоритм шифрования достаточно хорошо распараллеливается и подходит для мультиклеточной архитектуры, пользователь хабра [rnouse][1] выявил ускорение шифрования на мультиклеточной архитектуре по сравнения с процессорами в рутокенах в 4 -5 раз.



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

[1]: http://habrahabr.ru/users/rnouse/
[2]: http://habrahabr.ru/post/244743/#habracut

[>] 3 in 1: Час Кода, День Информатики и День Волонтера
habra.14
habrabot(difrex,1) — All
2014-12-03 01:00:03


Если вы хотите совершить мини-революцию в образовании, увидеть детский «лес рук», глаза умоляющие вас поиграть в робота или восторженные визги от удачно анимированного спрайта, то вот они — дети в наших школах, которые хотят того же. И они ждут, когда вы придете и научите их кодить. 1 день, 1 урок, 1 час. Это действительно просто. ![][1] Сегодня мы хотим рассказать вам об инициативе [Hour of Code][2] проекта [Code.org][3] и предложить поучаствовать. Тем более что в этом году вот это вот все официально поддерживает [наше государство][4]. И тем более, что 4 декабря — день информатики в нашей стране, а 5 декабря — международный день волонтера. [Читать дальше →][5]

[1]: //habrastorage.org/files/9df/8c4/754/9df8c47540c54eaf90f8a6cb323e47de.jpeg
[2]: http://hourofcode.com
[3]: http://code.org
[4]: http://coderussia.ru
[5]: http://habrahabr.ru/post/244287/#habracut

[>] [Из песочницы] Делаем дамп фотографий из диалога vk.com
habra.14
habrabot(difrex,1) — All
2014-12-03 06:30:04


Всем, привет! Вчера мне понадобилось скачать все фотографии из диалога с одним человеком в vk.com. Фотографий было больше 1000 штук. Понятное дело, что ручками это все делать было бы утомительно и… Стыдно. Не для того программированием занимаюсь, чтобы такую работу делать не автоматизированно. Поэтому было решено написать скрипт. В качестве языка был выбран Python. Его удобно использовать для консоли, он довольно быстрый, есть модуль urllib, позволяющий «одним движением» скачивать картинки по ссылке. Но главная причина — это то, что я начал изучать его недавно. Решил дополнительно попрактиковаться. Сам скрипт получился небольшой, но было бы интересно описать процесс создания. Буду стараться писать побольше комментариев в коде, чтобы те, кто не знает python, тоже смогли понять процесс. А от знатоков очень приветствуются советы и указания. Итак, приступим. [Читать дальше →][1]

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

[>] [recovery mode] Виртуальная конференция для разработчиков hacksummit.org
habra.14
habrabot(difrex,1) — All
2014-12-03 09:30:03


Странно, что на Хабре нет никакой информации, когда весь мой твиттер гудит этим эпическим событием в мире програмирования, open source и startups. Основатель одноименного издательства: TIM O'REILLY. Сотрудник GitHub один из авторов книги Pro Git book, майнтайнер веб-странички Git-а и Git Community Book: SCOTT CHACON Создатель BitTorrent: BRAM COHEN Основатель InfoQ: FLOYD MARINESCU Автор Symfony PHP framework: FABIEN POTENCIER [Читать дальше →][1]

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

[>] Новые оптимизации для х86 в ожидаемом GCC 5.0
habra.14
habrabot(difrex,1) — All
2014-12-03 11:00:03


Итак, фактическую разработку новых оптимизаций в GCC 5.0 можно считать законченной. Продукт GCC 5.0 находится сейчас в фазе [stage3][1], то есть идет доработка уже внедренных оптимизаций. В данной и последующих статьях я расскажу об оптимизациях, реализованных в GCC 5.0 для х86 и об их влиянии на производительность программ для процессоров линейки **Intel Atom** и **Intel Core**. Сегодня речь пойдет о векторизации групповых обращений в память. В последующих статьях я расскажу об ускорениях в 32-битном PIC режиме и дополнительном усилении векторизации. [Читать дальше →][2]

[1]: https://gcc.gnu.org/develop.html
[2]: http://habrahabr.ru/post/244137/#habracut

[>] Техосмотр движка Spring RTS
habra.14
habrabot(difrex,1) — All
2014-12-03 12:30:03


![][1]Spring RTS — это движок для игр в жанре «стратегия реального времени». Изначально Spring был написан для повторения популярной в 90\\00-е игры Total Annihilation. В дальнейшем появилось много других красивых и интересных стратегий на этом движке, в том числе и коммерческих. Игры под него кроссплатформенные и представляют из себя трёхмерные стратегии реального времени с огромными картами и большим количеством боевых и строительных юнитов. У игр возникают проблемы со стабильностью. Попробуем взглянуть на исходники (благо, проект открытый). [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/2f0/329/88e/2f032988e7c73919bde91852448cea2e.png
[2]: http://habrahabr.ru/post/244865/#habracut

[>] [Из песочницы] WFC и полицейское расследование
habra.14
habrabot(difrex,1) — All
2014-12-03 15:00:04


Уважаемые клиенты, друзья и коллеги. Вашему вниманию предлагается История с продолжением. История с арестом полицией наших серверов летом 2013 года весьма поучительна не только для нас, но и для всех хостеров, а также тех, кто интересуется работой хостинговых компаний. Поскольку расследование полицией дела практически завершено, мы считаем возможным опубликовать некоторые материалы, проливающие свет на причины и хронологию произошедшего. Сразу скажем, что произошедшее маловероятное событие стало стечением нескольких маловероятных обстоятельств. Мы просто попали под каток компании, проводимой ФБР США и «Майкрософт». [Читать дальше →][1]

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

[>] Краткая инструкция: GitHub через Tor
habra.14
habrabot(difrex,1) — All
2014-12-03 15:00:04


Предлагаю использовать Tor для доступа к сайтам, к которым отсутствует прямой доступ. ![image][1] [Узнать, как использовать git через tor][2]

[1]: https://i.imgur.com/nP4SIiM.png
[2]: http://habrahabr.ru/post/244869/#habracut

[>] Исследование причин аномального голосования на сайте РОИ или особенности электронной демократии в России
habra.14
habrabot(difrex,1) — All
2014-12-03 15:30:03


За сайтом «Российские общественные инициативы» я наблюдаю давно, примерно с [29 мая 2013 года][1]. Как и [другие наблюдатели][2], я замечал аномалии в ходе голосований за различные инициативы. Но это мало кого беспокоило, пока аномалии приводили по нашим оценкам к росту числа голосов. Видимо, никто не считал чем-то плохим, если очередная инициатива наберет 100 000 голосов раньше срока. Всё изменилось, когда аномалии стали замедлять голосование. Это началось 24 ноября в 13:35 по московскому времени. Счетчик голосов за принятие инициативы 9376 уменьшился на 2. Потом еще на 1 и еще на 2. Вечером уменьшение значения счетчика стало происходить всё чаще и чаще. Кто-то заметил это и сообщил автору инициативы. С этого момента начался тщательный мониторинг хода голосования. Я расскажу про некоторые странности голосования, которые мы (наблюдатели) заметили за последнюю неделю. Также я попытаюсь сделать предположения о причинах некоторых из них. Выводов довольно мало, т.к. не всегда есть возможность получить нужные данные о ходе голосования. [Читать дальше →][3]

[1]: http://habrahabr.ru/post/181315/
[2]: http://oroi.ru/viewtopic.php?f=2&t=277&start=880
[3]: http://habrahabr.ru/post/244753/#habracut

[>] [Из песочницы] WordPress для параноиков, часть 1
habra.14
habrabot(difrex,1) — All
2014-12-03 17:00:03


Итак, если вы счастливый владелец [nginx][1], знатный параноик и за каким-то чертом решили поставить wordpress, то… Первое, что пришло в голову — это «надо ограничить сему творению свободу!». Настройки учетной записи, как и настройки php5-fpm, я опущу, так как у каждого свои тараканы, а кто-то вообще на apache запускает. Но вот общие для Wordpress я опишу в этой части. Напишу о том, что сделал, что получилось и почему. [Читать далее][2]

[1]: http://nginx.org/
[2]: http://habrahabr.ru/post/244911/#habracut

[>] [Из песочницы] Фривольное клонирование ОС MS Windows XP / Server 2003 своими руками, средствами GNU/Linux
habra.14
habrabot(difrex,1) — All
2014-12-03 17:00:03




#### Объяснительная записка

Публикую журналированный результат работы по обеспечению себя универсальным живучим **образом** установленной операционной системы (далее ОС) Windows XP SP3. Он понадобился для ускорения процесса установки системы на компьютеры клиентов, пожелавших непременно пользоваться этой привычной версией окошек вопреки разглагольствованиям относительно поддержки, активации и прочих маловажных юзеру моментов.

##### Почему это нужно?

![][1] Что отличает данный материал от распространенных статей на тему клонирования ОС? Ограничения, поставленные передо мною жизнью и самим собой. Перечислю их: 1) ОС должна устанавливаться и работать на разделах произвольных размеров; 2) ОС должна исправно загружаться, будучи установленной на любой тип носителя, поддерживающий загрузку (оснащенный MBR\*); 3) ОС должна функционировать на различных вариантах аппаратно-зависимого уровня (HAL\*\*); 4) Образ ОС должен занимать минимум места на носителе для ускорения его переноса, дооснащения, переборки; 5) Образ ОС должен включать в себя необходимый набор установленного и настроенного лучшим образом ПО (вариант «система под ключ»); 6) Все манипуляции по приготовлению образа и по его развертке должны производиться штатными средствами GNU/Linux\*\*\*. Смысл: разобрать по косточкам принцип работы имеющегося ПО для клонирования ОС; 7) Носителем образа ОС может быть сервер в сети, USB-накопитель (твердотельный либо винчестер), оптический или жесткий магнитный диск; 8) Носитель образа ОС должен быть оснащен средствами диагностики и ремонта ПО компьютера; 9) Желательно процесс клонирования ОС сделать максимально доступным ради хорошей повторяемости без урезания надежности результата; 10) Команда dd, безусловно, хороша, вот только неохота возиться с пустым пространством, нулями и отсутствием четкого вывода текущего действия. Кроме того, раздел, в который будет установлен клон, должен быть произвольным (см. п. 1). Вне рассмотрения: 1) Юридические моменты установки неподдерживаемой ныне ОС; 2) Активация неактивируемой ныне официально ОС; 3) Целесообразность производимых действий. Не красноглазия ради, но токмо волею пославших меня юзеров. Пославших за попытку убедить в кошерности использования свежего свободно-распространяемого программного обеспечения на их дуболомных машинах; 4) Подробности типовой установки ОС Windows XP и доп. ПО на компьютер, за исключением разбивки диска; 5) Подробности метода сетевого клонирования: рассмотрю в дальнейшем, сейчас такой нужды не имею.

##### Кому это нужно?

Работа ориентирована на удовлетворение запросов конечных пользователей. Статья написана для системных администраторов, желающих перенять приобретенный мною опыт и знания и воспользоваться нижеописанным способом. Отсюда подробности, которые могут не понравится торопливым людям. Объем текста, на мой взгляд, чудовищный для легкого восприятия, но я иначе не могу: надо донести каждый мой шаг. Конструктивная критика приветствуется; особенно ценны предложения по совершенствованию способа, а также теория, обосновывающая замечания. Дата написания статьи — 2 декабря 2014 года, посему будущим поколениям шлю свой привет, а насколько сохранится актуальность материала для вас — не ведаю. Добро пожаловать, %username%, под отрезок. [Читать дальше →][2]

[1]: //habrastorage.org/files/71a/178/a34/71a178a3442442dba1036e7f322f2134.jpg
[2]: http://habrahabr.ru/post/244893/#habracut

[>] [Перевод] Руководство по виртуализации PCI DSS. Часть 1
habra.14
habrabot(difrex,1) — All
2014-12-03 17:00:03


**Стандарт:** Стандарт безопасности данных PCI (PCI DSS) **Версия:** 2.0 **Дата:** Июнь 2011 **Автор:** Специальная группа по Виртуализации Совет Стандартов Безопасности PCI **Дополнительная информация:** Руководство по виртуализации PCI DSS

#### **1 Введение**

Виртуализация отделяет приложения, компьютеры, машины, сети, данные и сервисы от их физических ограничений. Виртуализация — это развивающееся понятие, охватывающее широкий круг технологий, инструментов и методов, которое может привести к значительным эксплуатационным преимуществам для организаций, которые решают использовать виртуализацию. Как и в любой развивающейся технологии, тем не менее, также по-прежнему продолжают развиваться и риски, которые зачастую менее понятны, чем риски, связанные с более традиционными технологиями. Цель данного документа — предоставить руководство по вопросам использования виртуализации в соответствии со Стандартами Безопасности Данных в сфере платежных карт (**PCI DSS**). Для целей этого документа все ссылки приводятся на стандарт **PCI DSS** версии 2.0. Существует четыре простых принципа, связанных с использованием виртуализации в средах с данными владельцев банковских карт:

* a. Если технологии виртуализации используются в среде хранения данных о держателях карт, требования **PCI DSS** распространяются на эти технологии виртуализации.
* b. Технология виртуализации представляет новые риски, которые не могут быть применены к другим технологиям, и которые необходимо оценивать при использовании виртуализации при работе с данными владельцев банковских карт.
* c. Реализация виртуальных технологий может значительно отличаться, и организациям нужно выполнить тщательное исследование для выявления и документирования уникальных характеристик их особого применения виртуализации, включая все взаимодействия с процессами перевода платежей и с данными платежных карт.
* d. Не существует единого метода или решения для настройки виртуализированных сред для удовлетворения требований стандарта **PCI DSS**. Конкретные средства управления и процедуры будут отличаться для каждой среды, в зависимости от того как выполнена и используется виртуализация.

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

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

[>] [recovery mode] Безопасен ли Telegram? v2
habra.14
habrabot(difrex,1) — All
2014-12-03 17:30:04


С момента самого появления Telegram его не критиковал только ленивый. Этим с одинаковым энтузиазмом занимались резиденты Reddit, Hacker News, etc. [Читать дальше →][1]

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

[>] [Перевод] Назад в 2010, или устанавливаем MATE в Ubuntu 14.04
habra.14
habrabot(difrex,1) — All
2014-12-04 00:30:04


![][1] Если и есть что-то совершенно неприемлемое в дистрибутивах Linux, так это то, что выбрать окружение рабочего стола на свой вкус можно выбрать далеко не всегда и не везде. Ведь вовсе не каждый захочет ставить окружение подходящее-под-любой-экран по типу Unity. Я лично всегда любил только GNOME, но с 3 версии и его внешний вид тоже подвергся «юнитизации». Так что в этой статье я хотел бы вам рассказать, как вернуть старые-добрые времена GNOME 2 и Ubuntu 10.04. [Читать дальше →][2]

[1]: //habrastorage.org/files/a92/9cc/cde/a929cccde919432fa239ec3e85135de8.png
[2]: http://habrahabr.ru/post/244931/#habracut

[>] [Из песочницы] Продолжаем ставить OpenWrt на всё что угодно. D-link DNS-320L
habra.14
habrabot(difrex,1) — All
2014-12-04 02:00:03


Приобрел я этот NAS с четкой целью, он должен работать на OpenWRT. Сам я в linux не силен, так что собирал информацию по крупицам с интернета. В русскоязычной части ничего не было найдено, поэтому решил написать инструкцию для народа + сохранить что-то, так как памяти своей я не доверяю. В итоге получился NAS, который загружает прошивку с внутренней памяти и монтирует жесткий диск, подключенный по usb, как основную память. [Читать дальше →][1]

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

[>] Статически проверяемые ссылки на свойства Java-бинов
habra.14
habrabot(difrex,1) — All
2014-12-04 11:00:04


Когда долго и серьезно используешь какой-либо инструмент, неминуемо возникают претензии к нему — неудобства, с которыми сперва миришься, но в какой-то момент понимаешь, что проще один раз исправить, чем все время страдать. Хорош тот инструмент, который позволяет «допилить» сам себя. Java — хороший инструмент, поэтому об одном таком неудобстве и о том, как мы его исправляли, и пойдет речь. [Читать дальше →][1]

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

[>] [recovery mode] Сериализация и С++11
habra.14
habrabot(difrex,1) — All
2014-12-04 12:00:03


![][1] Уверен, что многим кто работает с С++ хотелось, чтобы в этом, дивном языке, была возможность сериализовать объекты так же просто, как скажем в С#. Вот и мне этого захотелось. И я подумал, а почему бы и нет, с помощью нового стандарта это должно быть несложно. Для начала стоит определиться с тем, как это должно выглядеть.

class Test : public Serializable
{
public:
int SomeInt = 666;
float SomeFloat = 42.2;
string SomeString = "Hello My Little Pony";
private:
serialize(SomeInt);
serialize(SomeFloat);
serialize(SomeString);
};


Такое мне вполне подходило, и я уже представлял себе решение. [Читать дальше →][2]

[1]: //habrastorage.org/files/f91/98b/ec6/f9198bec62714fb893903402ba268cb3.jpg
[2]: http://habrahabr.ru/post/244963/#habracut

[>] Новый GNS3 — шаг вперед или прыжок на месте?
habra.14
habrabot(difrex,1) — All
2014-12-04 14:30:03


![][1]

# GNS3 1.2

В начале 2000х ситуация с эмуляторами сетевого оборудования выглядела достаточно плачевно. Но затем появился Dynamips и Dynagen (консольный фронтэнд к Dynamips), которые предоставляли возможность эмулировать некоторые маршрутизаторы Cisco IOS. Впервые Dynamips был представлен общественности в далеком 2005м году. Это была по сути разработка одного человека. Проект понемногу развивался, но был заброшен в 2007м, последняя версия от первоначального автора была с номером 0.2.8-RC2. Управление при этом было далеко от удобного: в текстовых конфигурационных файлах приходилось описывать всю топологию вручную. А затем, в 2007м году, Джереми Гроссман (Jeremy Grossman) начал разработку GNS3, в качестве своего дипломного проекта во время учебы в университете. Со временем GNS3 стал самым узнаваемым и популярным решением для эмуляции сетевого оборудования, в первую очередь для тех кто готовился к сдаче сертификационных экзаменов. И вот сейчас, в 2014м году, выходит эволюционная (с точки зрения разработчиков) версия GNS3 1.0. Но перед тем как приступить к тщательному изучению новой версии, ненадолго вернемся в прошлый год, в тот момент когда стартовала новая веха разработки GNS3. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/8fa/088/f18/8fa088f18c672274f58673cff3703bc7.jpg
[2]: http://habrahabr.ru/post/244955/#habracut

[>] Краткое введение в доверительные отношения, или почему нельзя запускать вслепую без проверки скрипты из интернета
habra.14
habrabot(difrex,1) — All
2014-12-04 15:00:02




# Как работает цепочка доверия

![][1] В недавней статье «VPN в каждый дом» предлагается сделать огромную глупость, а именно пойти к себе на VPS и ввести там вот это:



Как я в комментарии к той статье написал, это очень большая глупость. Вы вслепую запускаете код из интернета, который вы даже не видели, и тут даже совершенно неважно из под **sudo** или нет. [Ну и почему это плохо?][2]

[1]: //habrastorage.org/files/6d7/2ba/6f6/6d72ba6f6375438da6dbba6c8c54ebdf.jpg
[2]: http://habrahabr.ru/post/244991/#habracut

[>] [Из песочницы] Повышение доверия к РОИ при сохранении секретности персональных данных
habra.14
habrabot(difrex,1) — All
2014-12-04 18:00:02


Этот пост — ответ на [habrahabr.ru/post/244753/][1] Для повышения доверия и прозрачности к РОИ, можно применить достаточно простое решение, описанное в этом посте. Когда пользователь голосует за, против, или отзывает свой голос за какую либо инициативу, необходимо чтобы РОИ генерировал специальный проверочный код, но не содержащий личной информации пользователя. Список таких кодов должен быть доступен в общем пользовании. Таким образом, каждый мог бы проверить результат учета своего голосования в публичном доступе. Данное техническое решение является простым, дает возможность контроля подсчета голосов до некоторой степени и, таким образом, повышает доверие граждан к РОИ. Предлагаемый протокол действий. Для начала, РОИ генерирует 2048 битный RSA ключ-пару (SK, PK), где SK-секретный ключ и PK-публичный ключ. Публичный ключ публикуется в открытом доступе, а секретный хранится и используется только на сервере РОИ. Таких ключей может быть один для всего РОИ или много разных для разных инициатив. Например, можно генерировать свой отдельный ключ для каждой инициативы. Или обновлять ключ для всего ROI время от времени. Для идентификации ключа будем использовать понятие «версия ключа» (или индекс, номер ключа). Дополнительно, но совсем не обязательно для первой версии системы, РОИ может публиковать сертификат ключа. Структура и генерация кодов, которые должны быть в публичном доступе. **1\.** При голосовании пользователем, ROI формирует следующий вектор V, длинною 49 байт: Версия (номер) ключа: 4 байта Номер инициативы: 4 байта Время события (UTC время): 8 байт Тип события: 1 байт (ЗА, ПРОТИВ, ОТЗЫВ) Хеш проголосовавшего пользователя, вычисляемый как H = SHA256(SK; СНИЛС; Номер Инициативы): 32 байта. **2\.** Далее, РОИ использует соответствущий секретный RSA ключ SK для того, чтобы получить вторую часть кода — цифровую подпись: S = RSA\_Encrypt(SK; V) – результат будет 256 байт. **3\.** Пара (V; S) высылается электронной почтой проголосовавшему пользователю, а также помещается в публичный доступ (например, в текстовом PEM формате). [Читать дальше →][2]

[1]: http://habrahabr.ru/post/244753/
[2]: http://habrahabr.ru/post/245017/#habracut

[>] Maple: составление уравнений Лагранжа 2 рода и метод избыточных координат
habra.14
habrabot(difrex,1) — All
2014-12-05 07:30:03




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

По роду профессиональной и научной деятельности я механик. Преподаю теоретическую механику в университете, пишу докторскую диссертацию в области динамики подвижного состава железных дорог. В общем, эта наука поглощает большую часть моего рабочего и даже свободного времени. С Maple (на кафедре была 6-я версия, а у лоточников домой была куплена 8-я) познакомился ещё студентом, когда начинал работать над будущей кандидатской под крылом моего первого (ныше покойного) научного руководителя. Были и добрые люди, что помогли на самом первом этапе разобраться с пакетом и начать работать. И вот так постепенно на его плечи была переложена большая часть вычислительной работы по подготовке диссертации. Диссертация была защищена, а Maple навсегда остался надёжным помошником в научном труде. Часто бывает необходимо быстро оценить какую-нибудь задачу, составить уравнения, исследовать их аналитически, быстро получить численное решение, построить графики. В этом отношении Maple просто незаменим для меня (ни в коем разе не хочу обидеть приверженцев других пакетов). Сделать всё то, что будет предложено читателю под катом, меня задача принесенная ученицей (приходится ещё заниматься и репетиторством) со школьной олимпиады. Условие задачи таково:

> Груз, висящий на нити длины L = 1,1 м, привязанной к гвоздю, толкнули так, что он поднялся, а затем ударился в гвоздь. Какова его скорость в момент удара о гвоздь? Ускорение свободного падения g = 10 м/с
>
>
>
> .

Если не придираться к некоторонной туманности условия, то задача достаточно проста, а её решение, полученное путем довольно громоздких для школьника выкладок, в общем виде дает результат [![][1]][2] И вот тут захотелось проверить решение, полученное с оглядкой на школьную программу по физике независимым способом, например составив дифференциальные уравнения движения этого маятника, да не просто, а с учетом освобождения от связи (в процессе движения нить, считаемая невесомой, провисает и маятник движется как свободная точка). Это послужило катализатором для того, чтобы взять да и откопать свои старые задумки, накопленные ещё со времен работы в оргкомитете Всероссийской Олимпиады студентов по теоретической механике — три года подряд занимался там подготовкой задач компьютерного конкурса. Задумки касались автоматизации построения уравнений движений для механических систем с неудерживающими связями и трением, используя известные всем уравнения Лагранжа 2 рода [![][3]][4] поборов стереотип многих преподавателей о том, что уравнения эти неприменимы к системам с неудерживающими связями и трением. Что касается Maple, то его библиотека для решения задач вариационного исчисления дает возможность быстро получить уравнения Эйлера-Лагранжа, решение которых минимизирует действие по Гамильтону, что применимо для консервативных систем [![][5]][6] где [![][7]][8] — функция Лагранжа, равная разности кинетической и потенциальной энергий системы. Так как расматриваемые задачи не относятся к классу консервативных, то автором была предпринята попытка самостоятельно реализовать автоматизацию построения и анализа уравнений движений. Что из этого вышло, изложено под катом [Читать дальше →][9]

[1]: http://latex.codecogs.com/gif.latex?v&space;=&space;\sqrt{gL\sqrt{3}} "v = \sqrt{gL\sqrt{3}}"
[2]: http://www.codecogs.com/eqnedit.php?latex=v&space;=&space;\sqrt{gL\sqrt{3}}
[3]: http://latex.codecogs.com/gif.latex?\frac{d}{dt}\left(\frac{\partial&space;T}{\partial&space;\dot{q}_i}&space;\right&space;)&space;-&space;\frac{\partial&space;T}{\partial&space;q_i}&space;=&space;Q_i,&space;\quad&space;i=\overline{1,s} "\frac{d}{dt}\left(\frac{\partial T}{\partial \dot{q}_i} \right ) - \frac{\partial T}{\partial q_i} = Q_i, \quad i=\overline{1,s}"
[4]: http://www.codecogs.com/eqnedit.php?latex=\frac{d}{dt}\left(\frac{\partial&space;T}{\partial&space;\dot{q}_i}&space;\right&space;)&space;-&space;\frac{\partial&space;T}{\partial&space;q_i}&space;=&space;Q_i,&space;\quad&space;i=\overline{1,s}
[5]: http://latex.codecogs.com/gif.latex?\frac{d}{dt}\left(\frac{\partial&space;L}{\partial&space;\dot{q}_i}&space;\right&space;)&space;-&space;\frac{\partial&space;L}{\partial&space;q_i}&space;=&space;0,&space;\quad&space;i=\overline{1,s} "\frac{d}{dt}\left(\frac{\partial L}{\partial \dot{q}_i} \right ) - \frac{\partial L}{\partial q_i} = 0, \quad i=\overline{1,s}"
[6]: http://www.codecogs.com/eqnedit.php?latex=\frac{d}{dt}\left(\frac{\partial&space;L}{\partial&space;\dot{q}_i}&space;\right&space;)&space;-&space;\frac{\partial&space;L}{\partial&space;q_i}&space;=&space;0,&space;\quad&space;i=\overline{1,s}
[7]: http://latex.codecogs.com/gif.latex?L&space;=&space;T&space;-&space;\Pi "L = T - \Pi"
[8]: http://www.codecogs.com/eqnedit.php?latex=L&space;=&space;T&space;-&space;\Pi
[9]: http://habrahabr.ru/post/244957/#habracut

[>] Пишем прошивку для Arduino на С++ с REST управлением через последовательный порт и экранчиком
habra.14
habrabot(difrex,1) — All
2014-12-05 08:30:03


![image][1] Это второй пост про [Wi-Fi роботанк][2]. В нем будет написано как не надо делать прошивки, если вы суровый программист микроконтроллеров и как можно сделать, если нужна максимальная наглядность и возможность рулить прошивкой почти как веб-приложением прямо с терминала. То есть, например, отправив в последовательный порт что-то типа

battery?act=status

получим в ответ что-то типа

{ "status": "OK", "minValue": 600, "maxValue": 900, "value":750, "percent": 50 }

Для тех, кому лень читать статью, сразу [ссылка на github][3] и [Яндекс-диск][4], у кого гитхаб залочен (спасибо [MaximChistov][5]). [Читать дальше →][6]

[1]: http://habrastorage.org/files/364/de3/b7e/364de3b7e9c94a5383a00867e48cfcdd.jpg
[2]: http://habrahabr.ru/post/244407/
[3]: https://github.com/zabbius/tank/tree/master/arduino
[4]: https://yadi.sk/d/ar05_222dAEDP
[5]: http://habrahabr.ru/users/maximchistov/
[6]: http://habrahabr.ru/post/245043/#habracut

[>] Оперативное планирование в Redmine
habra.14
habrabot(difrex,1) — All
2014-12-05 13:00:03


![][1] В прошлой статье я рассказывал, как мы в Redmine настроили [жизненный цикл задач для программистов][2], сейчас хочу рассказать о том, как мы планируем задачки в Redmine в разрезе месяца (про стратегическое планирование, наверное, напишу в отдельной статье).

## Как мы планируем

Вкратце расскажу о процессе оперативного планирования, которое работает в нашем IT-отделе. Любой сотрудник компании может написать заявку в ИТ-отдел на разработку какой-то функции в ПО или на другую работу (некоторые заявки требуют согласования руководителя, другие — нет). [Читать дальше →][3]

[1]: //habrastorage.org/files/90f/64b/778/90f64b7783c14e53bee5bb0c0c5b287c.png
[2]: http://habrahabr.ru/post/227507/
[3]: http://habrahabr.ru/post/245065/#habracut

[>] Подготовка к сертификационному экзамену Microsoft 70-483 «Programming in C#»
habra.14
habrabot(difrex,1) — All
2014-12-05 13:00:03


![][1] Во время подготовки к экзамену номер 70-483 нашел множество разрозненных сайтов с различными ссылками на мануалы, которые мне немного помогли. Но, что помогло мне больше, так это то, что я составил для себя памятку на нескольких страницах, выдержками из которой и хочу поделиться. Целью не является подробное описание C#, целью является освежить в памяти и заострить внимание на некоторых необходимых темах. Если какие-то темы вам незнакомы, то это значит, что у вас есть пробелы, которые необходимо устранить. Раскрывать вопросы тестирования я не могу (да и не помню я уже их), но, если многие из перечисленных ниже нюансов, трюков и тонкостей, помогут вам, то вы на меня не обижайтесь (написано с иронией). [Читать дальше →][2]

[1]: //habrastorage.org/files/bcc/ee1/be9/bccee1be9a264ab4967e4703fab6f749.jpg
[2]: http://habrahabr.ru/post/245067/#habracut

[>] GitHub опять разблокировали
habra.14
habrabot(difrex,1) — All
2014-12-05 14:00:03


По сообщению заместителя руководителя Роскомнадзора Максима Юрьевича Ксензова сайт github.com исключен из реестра запрещённых сайтов РФ.

> Ввиду того,что администрация GitHub предприняла меры по удалению запоещенной информации, доступ к ресурсу на территории РФ возобновлен
>
> — Максим Ксензов (@mksenzov)
>
> [5 декабря 2014][1]

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

[1]: https://twitter.com/mksenzov/status/540690915904741376
[2]: http://habrahabr.ru/post/245073/#habracut

[>] [recovery mode] Сеть доверия
habra.14
habrabot(difrex,1) — All
2014-12-05 15:30:03


Помню в 2009 году с началом экономического кризиса я днями сидел перед телевизором разгадывая причины. Финансовые аналитики заливались соловьями, шла очередная передача, и вдруг один эксперт ляпнул: «Финансовый кризис обусловлен кризисом доверия». Думаю: «Доверие? О чём говорит этот клоун?!», – я готов был слушать про поднимающуюся экономику Китая, про насыщение общества потребления, про заканчивающиеся природные ресурсы, но не про человеческое доверие. Сразу возразить было нечего, поэтому я задумался. Со временем реплика про «доверие» заставила пересмотреть взгляд на устройство общества, придумать механизм учёта оценок и как поставить этот механизм на службу конструктивного развития отдельной личности и общества в целом. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/b80/1e8/9ad/b801e89adea64712a8405192427791b9.jpg
[2]: http://habrahabr.ru/post/245111/#habracut

[>] Мобильные телефоны и тотальная слежка АНБ: как это работает
habra.14
habrabot(difrex,1) — All
2014-12-05 15:30:03


[![image][1]][2] Имя Эдварда Сноудена последние два года регулярно мелькает в новостях по теме информационной безопасности. Благодаря разоблачениям этого бывшего сотрудника американских спецслужб все уже слышали, что Агентство национальной безопасности (АНБ, NSA) обладает возможностями тотальной мобильной слежки за гражданами. Но как именно устроена эта слежка, мало кто знает. В данном обзоре мы собрали некоторые подробности о технологиях, которыми пользуется NSA — и не только оно. Одна из первых неприятных новостей от Сноудена касалась подрыва доверия к **технологиям криптозащиты**. В рамках секретного проекта АНБ под названием [Bullrun][3] была получена возможность обхода многих систем шифрования – но не за счёт взлома, а за счёт эксплуатации закладок, специально оставленных производителями по требованию АНБ. А в некоторых случаях вендоров просто обязали сдавать агентству шифровальные ключи. Таким образом, [были дискредитированы][4] многие стандарты безопасности, считавшиеся надёжными и применявшиеся в крупном бизнесе и государственных организациях. [Читать дальше →][5]

[1]: http://habrastorage.org/getpro/habr/post_images/01b/255/137/01b2551371c334c9d319d1b32f12adbd.png
[2]: http://habrahabr.ru/company/pt/blog/245113/
[3]: http://www.theguardian.com/world/interactive/2013/sep/05/nsa-project-bullrun-classification-guide
[4]: http://www.nytimes.com/2013/09/06/us/nsa-foils-much-internet-encryption.html
[5]: http://habrahabr.ru/post/245113/#habracut

[>] [Перевод] Анонс новых возможностей Typescript 1.4
habra.14
habrabot(difrex,1) — All
2014-12-05 16:00:03


Выпустив версию Typescript 1.3, мы сфокусировались на усовершенствовании системы типов и добавлении функционала ECMAScript 6 в TypeScript. Давайте рассмотрим некоторые новые возможности, которыми вы сможете пользоваться в новой версии. **Все описанные в статье вещи уже реализованы в мастер-ветке нашего [репозитория на Github][1] — вы можете выкачать ее и попробовать их уже сейчас.** ![][2] Новые возможности позволяют более аккуратно и легко работать с переменными, которые имеют различный тип во время исполнения. Они сокращают количество мест, где нужно явно указывать тип, проверять его или использовать тип `any`. Авторы типизирующих файлов (`.d.ts`) могут также использовать эти возможности для описания внешних библиотек. Те, кто следят за развитием компилятора, могли заметить, что мы сами тоже ими пользуемся. [Читать дальше →][3]

[1]: https://github.com/Microsoft/TypeScript
[2]: //habrastorage.org/files/917/e4b/1c7/917e4b1c700947779cc159a81088dbfa.png
[3]: http://habrahabr.ru/post/245109/#habracut

[>] [Из песочницы] Сервис мониторинга свободного места на Bash
habra.14
habrabot(difrex,1) — All
2014-12-05 16:30:03


Добрый день! Хотелось бы рассказать Вам об очередном велосипедостроении. Просматривая Хабр, я наткнулся на замечательную статью: [Bash: запускаем демон с дочерними процессами][1]. После прочтения возникла идея написать что-нибудь полезное, с преферансом и куртизантками, куда же без этого.

##### Вводная:

**ОС:** Astra Linux 1.2 (1.3) Из вводной следуют два вывода:

1. Нельзя устанавливать не сертифицированное ПО, иначе мы словим лютую попаболь с двух направлений (Заказчик и Руководство).
2. Т.к. мы настоящие пионеры и не ищем легких путей, то вывод команды df нас не интересует.

[Приступим][2]

[1]: http://habrahabr.ru/post/151771/
[2]: http://habrahabr.ru/post/245107/#habracut

[>] [Перевод] Выразительный JavaScript: HTTP
habra.14
habrabot(difrex,1) — All
2014-12-06 11:00:03




#### Содержание



* [Введение][1]
* [Величины, типы и операторы][2]
* [Структура программ][3]
* [Функции][4]
* [Структуры данных: объекты и массивы][5]
* [Функции высшего порядка][6]
* [Тайная жизнь объектов][7]
* [Проект: электронная жизнь][8]
* [Поиск и обработка ошибок][9]
* [Регулярные выражения][10]
* [Модули][11]
* [Проект: язык программирования][12]
* [JavaScript и браузер][13]
* [Document Object Model][14]
* [Обработка событий][15]
* [Проект: игра-платформер][16]
* [Рисование на холсте][17]
* [HTTP][18]
* Формы и поля ввода
* Проект: Paint
* Node.js
* Проект: веб-сайт по обмену умениями
* [Песочница для кода][19]

_Мечта, ради которой создавалась Сеть – это общее информационное пространство, в котором мы общаемся, делясь информацией. Его универсальность является его неотъемлемой частью: ссылка в гипертексте может вести куда угодно, будь то персональная, локальная или глобальная информация, черновик или выверенный текст. Тим Бернес-Ли, Всемирная паутина: Очень короткая личная история_ [Читать дальше →][20]

[1]: http://habrahabr.ru/post/240219/
[2]: http://habrahabr.ru/post/240223/
[3]: http://habrahabr.ru/post/240225/
[4]: http://habrahabr.ru/post/240349/
[5]: http://habrahabr.ru/post/240813/
[6]: http://habrahabr.ru/post/241155/
[7]: http://habrahabr.ru/post/241587/
[8]: http://habrahabr.ru/post/241776/
[9]: http://habrahabr.ru/post/242609/
[10]: http://habrahabr.ru/post/242695/
[11]: http://habrahabr.ru/post/243273/
[12]: http://habrahabr.ru/post/243277/
[13]: http://habrahabr.ru/post/243311/
[14]: http://habrahabr.ru/post/243815/
[15]: http://habrahabr.ru/post/244041/
[16]: http://habrahabr.ru/post/244405/
[17]: http://habrahabr.ru/post/244545/
[18]: http://habrahabr.ru/post/245145/
[19]: http://eloquentjavascript.net/code
[20]: http://habrahabr.ru/post/245145/#habracut

[>] Хакер нашел способ читать файлы на серверах Facebook
habra.14
habrabot(difrex,1) — All
2014-12-06 22:00:03






Bug Bounty программы приносят плоды различным фирмам, в том числе и крупнейшим. Чаще всего, хакеры находят достаточно простые в эксплуатации уязвимости вроде XSS и CSRF, но бывают и интересные, которые встречаются достаточно редко. Одним из таковых, является недавний пример чтения файлов на серверах Facebook, найденный Йосипом Франковичем ([Josip Franjković][1]). [Читать дальше →][2]

[1]: http://josipfranjkovic.blogspot.ru/
[2]: http://habrahabr.ru/post/245159/#habracut

[>] Простое обнаружение объектов по цвету
habra.14
habrabot(difrex,1) — All
2014-12-07 01:00:03


Доброго времени суток. В этом коротком посте хотел показать простой способ поиска объектов по цвету с [OpenCV][1]. Для экспериментов использовал камеру Logitech WebCam C270 [Читать дальше →][2]

[1]: https://ru.wikipedia.org/wiki/OpenCV
[2]: http://habrahabr.ru/post/245139/#habracut

[>] OpenWorm — международный проект по созданию компьютерной модели червя
habra.14
habrabot(difrex,1) — All
2014-12-07 02:30:02


![][1] OpenWorm — попытка построить полную симуляцию червя, состоящего из 302 нервных клеток и 95 мышечных. Проект стартовал в начале 2011 года и в настоящее время продолжает свое существование с помощью сотрудничества ученых и программистов из США, России и Европы. Все усилия рассматриваются как первый шаг на пути к имитации больших биологических систем. Для построения модели взят червь C. elegans. [Читать дальше →][2]

[1]: //habrastorage.org/files/39a/ef4/d6e/39aef4d6ebf14b63bf4bd513ac4e41d9.jpg
[2]: http://habrahabr.ru/post/208036/#habracut

[>] Формализм Лагранжа в задачах с сухим трением
habra.14
habrabot(difrex,1) — All
2014-12-08 06:30:05




# Введение

Данная статья являет собой логическое продолжение темы, начатой в [предыдущей публикации ][1]. Как и было обещано в комментариях, рассмотрим применимость метода избыточных координат к динамическому анализу механических систем движущихся под действием сил сухого кулоновского трения. В качестве иллюстративного примера решим следующую задачу ![][2]

> Тонкий однородный стержень массы
>
> _m_
>
> = 2 кг, длины
>
> _AB_
>
> = 2
>
> _l_
>
> = 1 м в точке
>
> _A_
>
> шарнирно прикреплен к невесомому ползуну, перемещающемуся в горизонтальных шероховатых направляющих. В начальный момент времени стержень расположен вертикально, затем его отклоняют от вертикали на ничтожно малый угол и отпускают без начальной скорости. Необходимо составить уравнения движения данной механической системы и найти закон её движения. Коэффициент трения между ползуном и направляющими равен
>
> _f_
>
> = 0,1.
>
>

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

[1]: http://habrahabr.ru/post/244957/
[2]: //habrastorage.org/files/16e/7ba/bef/16e7babef7304c0fa6a51f43b9cdfee5.png
[3]: http://habrahabr.ru/post/245211/#habracut

[>] Обработка и оформление отчетов в Excel на PHP
habra.14
habrabot(difrex,1) — All
2014-12-08 08:00:04


Не редко при разработке некоего проекта, возникает необходимость в формировании отчетной статистики. Если проект разрабатывается на **Delphi**, **C#** или к примеру, на **С++** и под **Windows**, то тут проблем нет. Всего лишь необходимо воспользоваться [COM][1] объектом. Но дела обстоят иначе, если необходимо сформировать отчет в формате excel на **PHP**. И чтобы это творение функционировало на **UNIX**-подобных системах. Но, к счастью, не так все плохо. И библиотек для этого хватает. Я свой выбор остановил на **PHPExcel**. Я уже пару лет работаю с этой библиотекой, и остаюсь доволен. Поскольку она является кроссплатформенной, то не возникает проблем с переносимостью. PHPExcel позволяет производить импорт и экспорт данных в excel. Применять различные стили оформления к отчетам. В общем, все на высоте. Даже есть возможность работы с формулами (сам я не пробовал). Только помните, что вся работа (чтение и запись) должна вестись в кодировке _utf-8_. [Читать дальше →][2]

[1]: http://ru.wikipedia.org/wiki/Component_Object_Model "Component Object Model"
[2]: http://habrahabr.ru/post/245233/#habracut

[>] Highload ++ 2014 глазами докладчика, который очень любит Processing Large-Scale Graph Data разными нехорошими способами
habra.14
habrabot(difrex,1) — All
2014-12-08 14:00:03


Всем привет! Вы наверняка слышали о конференции разработчиков высоконагруженных систем Highload++ или сами участвовали или выступали или даже перестали ездить на нее, проклиная ее в соц.сетях. К конференции Highload у меня весьма трепетное отношение, ибо моя первая поездка на нее в 2012 стабилизировала хаотичные на тот момент знания в некую упорядоченную цепь, структуру и предоставила наиболее широкий обзор текущего рынка Highload технологий в России и за ее пределами. В 2013 году я с удовольствием смотрел онлайн-трансляцию вечером из офиса Тамтэка, обсуждая с коллегами преимущества Rabbit MQ, дубльгисовские попытки запихать все в Neo4j, а также доклад нашего коллеги Дениса Нелюбина о сравнении производительности NoSQL баз данных (Aerospike, Couchbase, Mongo, Cassandra) на нашем тестовом фреймворке, в разработке которого я сам принимал участие годом ранее. В 2014, 14 марта, в свой день рождения, я отправил заявку с описанием доклада на Highload и стал ждать. После полугода мне пришло подтверждение и я отправился в путь, надеясь не только познакомиться с коллегами, работающими в смежных областях, но и поднять свое Big Data сознание на новой уровень. ![image][1] [И наступил день первый ... и разверзлись врата ..][2]

[1]: http://habrastorage.org/getpro/habr/post_images/12f/507/9af/12f5079af15e8bc21538c5bcbdf6ba95.jpg
[2]: http://habrahabr.ru/post/245215/#habracut

[>] Вышла финальная версия ядра Linux 3.18
habra.14
habrabot(difrex,1) — All
2014-12-08 14:00:03


Линус Торвальдс, в соответствии с графиком, в воскресенье вечером выпустил новое ядро Linux 3.18. В этой версии ядра пользователи смогут найти довольно много [обновлений][1] и новых возможностей. Осталось дождаться пока новое ядро интегрируют в репозитории и дистрибутивы. Хотя, опытные пользователи могут установить ядро прямо сейчас. [Читать дальше →][2]

[1]: http://www.phoronix.com/scan.php?page=news_item&px=MTg1NjA
[2]: http://habrahabr.ru/post/245261/#habracut

[>] Обустраиваем хомяка или «OpenWrt уделывает прошивку от TP-LINK?». Часть 1 — подготовительная
habra.14
habrabot(difrex,1) — All
2014-12-08 14:30:03


![][1] «Этим полукреслом мастер Гамбс начинает новую партию мебели. 1865 г. Санкт-Петербург» (И. Ильф, Е. Петров). Вы не ошиблись, это еще одна статья о сборке альтернативной прошивки для домашних маршрутизаторов, этих горячих в некоторых местах повелителей наших малых локальных сетей. На резонный вопрос почему бы сразу не писать там, где такому материалу [самое место][2] отвечу: хочу описать процесс начав с подготовки виртуальной машины для сборки (да, это будет Ubuntu на VirtualBox), пройдя через сборку прошивки, подключение внешнего жёсткого диска и настройку загрузки с него, подключение принтера, установку и настройку пакетов вроде медиасервера и torrent клиента, и попытаться закончить описанием такой настройки [StrongSwan][3], которая позволит подключаться к нему с IPhone, IPad и Windows Phone без установки сторонних клиентов. При этом хочется не обойти стороной как важные вещи вроде безопасности, так и полезные мелочи вроде скрипта, который будет отключать на ночь вырвиглазные синие светодиоды моего TL-WDR3600. И я совсем не уверен в полноте своих знаний по многим из озвученных сейчас вопросов. Одним словом, на данном этапе у меня громадьё планов и сумбур. Поэтому важны любые советы и предложения. Текст статьи точно будет меняться и дополняться с течением времени, а вся статья может быть скрыта в черновики по итогам голосования чтобы не засорять Хабр. Если вы заинтересовались, хотите помочь советом или вам просто захотелось бросить в автора тапком — добро пожаловать. Далее по тексту я постараюсь подробно описать это обещающее интересное времяпрепровождение действо, суть которого схематично изобразил [средневековый японский художник][4].




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

[1]: //habrastorage.org/files/290/b35/1c3/290b351c392945f8985cda203657d563.png
[2]: http://wiki.openwrt.org/
[3]: http://en.wikipedia.org/wiki/StrongSwan
[4]: http://en.wikipedia.org/wiki/Keisai_Eisen
[5]: http://habrahabr.ru/post/245103/#habracut

[>] [Перевод] Эффективный JSON с функциональными концепциями и generics в Swift
habra.14
habrabot(difrex,1) — All
2014-12-08 16:30:04


Это перевод статьи Tony DiPasquale [«Efficient JSON in Swift with Functional Concepts»][1].

### Предисловие переводчика.

Передо мной была поставлена задача: закачать данные в формате JSON с [Flickr.com][2] о 100 топ местах, в которых сделаны фотографии на данный момент, в массив моделей:

//------ Массив моделей Places
struct Places {
var places : [Place]
}

//-----Модель Place
struct Place {

let placeURL: NSURL
let timeZone: String
let photoCount : Int
let content : String

}


Кроме чисто прагматической задачи, мне хотелось посмотреть как в _Swift _работает «вывод типа из контекста» (type Inference), какие возможности _Swift_ в функциональном программировании, и я выбрала для парсинга JSON алгоритмы из статьи Tony DiPasquale [«Efficient JSON in Swift with Functional Concepts and Generics»][3], в которой он «протягивает» generic тип `Result` для обработки ошибок по всей цепочке преобразований: от запроса в сеть до размещения данных в массив Моделей для последующего представления в `UITableViewController`. Чтобы посмотреть как _Swift _работает «в связке» с _Objective-C_, для считывания данных с [Flickr.com][4] использовался Flickr API, представленный в курсе Стэнфордского Университета [«Stanford CS 193P iOS 7»][5], написанный на _Objective-C_. В результате помимо небольшого расширения Моделей:

extension Place: JSONDecodable {
static func create(placeURL: String)(timeZone: String)(photoCount: String)(content: String) -> Place {
return Place(placeURL: toURL(placeURL), timeZone: timeZone, photoCount: photoCount.toInt() ?? 0, content: content)
}
static func decode(json: JSON) -> Place? {
return _JSONParse(json) >>> { d in
Place.create
<^> d <| "place_url"
<*> d <| "timezone"
<*> d <| "photo_count"
<*> d <| "_content"
}
}
}

extension Places: JSONDecodable {
static func create(places: [Place]) -> Places {
return Places(places: places)
}
static func decode(json: JSON) -> Places? {
return _JSONParse(json) >>> { d in
Places.create
<^> d <| "places" <| "place"

}
}
}


мне самостоятельно пришлось написать только три строчки кода: [Читать дальше →][6]

[1]: http://robots.thoughtbot.com/efficient-json-in-swift-with-functional-concepts-and-generics
[2]: https://www.flickr.com/
[3]: http://robots.thoughtbot.com/efficient-json-in-swift-with-functional-concepts-and-generics
[4]: https://www.flickr.com/
[5]: http://web.stanford.edu/class/cs193p/cgi-bin/drupal/
[6]: http://habrahabr.ru/post/244821/#habracut

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 41