RSS
Pages: 1 ... 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 ... 210
[>] О сложности выращивания сакуры: как я участвовал в Ludum Dare 34
habra.15
habrabot(difrex,1) — All
2016-01-04 16:00:02


Привет, хабр! В данном посте речь пойдет о моем участии в конкурсе Ludum Dare 34, который был около трех недель назад. В результате получился пазл под названием Growing Sakura, геймплей которой можно видеть на гифке (не пугайтесь, она весит всего 300Кб):



Кратко о правилах игры: изначально у нас есть гексагональное поле и несколько корневых бутонов (или один, как на гифке выше). Из него можно пустить 3 ветки (двумя способами — кликая левой или правой кнопкой мыши). Из каждого бутона на ветке левым кликом мыши можно сделать Y-разветвление, а правым — просто продолжить ветку дальше (I-разветвление). Если в каком либо направлении ветка расти не может (соответствующая клетка занята или в нужном направлении нет клетки) — то ветка не растет. В соответствии с последним условием нужно правильно выбирать порядкок «разворачивания» веток. В итоге получится дерево (или несколько деревьев) такое, что между двумя смежными ветками нет острых углов. Цель игры — покрыть все клетки игрового поля. Не заглядывая под кат попробуйте подумать секунд 10 и прикинуть, насколько сложной может быть эта игра. [Читать дальше →][1]

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

[>] IBM открывает blockchain-лабораторию
habra.15
habrabot(difrex,1) — All
2016-01-04 17:00:03


![][1] Корпорация IBM совместно с некоммерческой организацией Innovate Finance планирует провести изучение потенциала технологии Blockchain с целью разработки новых методов ведения бизнеса в современных условиях. На основе этой технологии создавалась система криптовалюты Bitcoin, успешно функционирующая уже несколько лет. Криптовалюта сейчас превратилась в признанное платежное средство, виртуальную денежную единицу, которая принимается крупными и мелкими предприятиями, корпорациями и сервисами. Теперь IBM планирует изучить дополнительные возможности Blockchain, задействуя собственные вычислительные и аналитические мощности. Технология, о которой идет речь, сейчас привлекает внимание банков и финансовых структур, которые изучают Blockchain с целью реализации новых проектов. [Читать дальше →][2]

[1]: https://habrastorage.org/files/735/4ec/ae0/7354ecae05434f0eb2aae5340e511d34.jpg
[2]: http://habrahabr.ru/post/274501/#habracut

[>] Решение головоломки Галакуб на Питоне
habra.15
habrabot(difrex,1) — All
2016-01-05 00:30:02


На новый год купил племяннику головоломку Галакуб. Задача собрать из разных деталей куб размером 4х4х4. Суммарный объём деталей, как раз, 4х4х4. Прежде, чем дарить надо было собрать головоломку. Красивое симметричное решение нашлось достаточно быстро. Но стало интересно единственное это решение или нет. Интуиция подсказывала, что единственное, но хотелось проверить. ![][1] Я решил по-быстрому запилить скрипт для перебора всех вариантов. В идеале нужно было успеть до новогодней речи Путина. Ситуация усугублялась тем, что код писался на Макбуке моих родителей. Поставить на него какие-то библиотеки — это задача покруче, чем написать саму программу. Код получился на удивление красивый и понятный. Его удобно объяснять. Может быть, текст будет полезен, например, изучающим Питон. [Читать дальше →][2]

[1]: https://habrastorage.org/files/9bf/74e/247/9bf74e2473ea4910a27c6586356c9709.JPG
[2]: http://habrahabr.ru/post/274527/#habracut

[>] Программирование микрокомпьютера LEGO NXT Mindstorms 2.0. Введение
habra.15
habrabot(difrex,1) — All
2016-01-05 02:30:03


Здравствуйте. В своих статьях я хочу Вас познакомить с основами программирования микрокомпьютера LEGO NXT Mindstorms 2.0. Для разработки приложений я буду использовать платформы Microsoft Robotics Developer Studio 4 (MRDS 4) и National Instruments LabVIEW (NI LabVIEW). Будут рассматриваться и реализовываться задачи автоматического и автоматизированного управления мобильными роботами. Двигаться мы будем от простого к сложному. ![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/6ca/e98/fae/6cae98faeea742b6a1955d5de7d50cfd.jpg
[2]: http://habrahabr.ru/post/274519/#habracut

[>] [Перевод] Разработка приложений для Apple Watch (iPhone и iPad) с помощью Wolfram Language (Mathematica)
habra.14
habrabot(difrex,1) — All
2015-05-03 19:00:02






_Перевод поста Стивена Вольфрама (Stephen Wolfram) "[Instant Apps for the Apple Watch with the Wolfram Language][1]". Выражаю огромную благодарность [Кириллу Гузенко][2] за помощь в переводе._

----

Моя цель — с помощью [Wolfram Language][3] вывести программирование на новый уровень. И за прошлый год (см. статью на Хабрахабре "[Стивен Вольфрам: Рубежи вычислительного мышления (отчёт с фестиваля SXSW)][4]") мы расширили [способы использования и развёртывания языка][5] — на рабочем компьютере, в облаке, мобильных и встраиваемых платформах и т. д. А что по поводу носимых гаджетов? И, в частности, насчет Apple Watch? Несколько дней назад я решил посмотреть, что тут можно сделать. Так что я освободил свой день под это дело и начал писать код. Идея заключалась в написании кода с помощью [Wolfram Programming Cloud][6], но вместо создания веб-приложения или web API мне нужно было получить приложение для Apple Watch. И, что достаточно удобно — первая, предварительная, версия нашего [Wolfram Cloud app][7] теперь доступна в App Store: ![][8] ![][9] Оно позволяет выгружать приложения из [Wolfram Cloud][10] сразу на iPhone, iPad и Apple Watch. [Читать дальше →][11]

[1]: http://blog.wolfram.com/2015/04/28/instant-apps-for-the-apple-watch-with-the-wolfram-language/
[2]: http://vk.com/ld742
[3]: http://www.wolfram.com/language/
[4]: http://habrahabr.ru/company/wolfram/blog/255579/
[5]: http://www.wolfram.com/language/uses/
[6]: http://www.wolfram.com/programming-cloud/
[7]: https://itunes.apple.com/us/app/wolfram-cloud/id978701305
[8]: //habrastorage.org/files/617/0ff/f97/6170fff9714841efb8bfd188198b5a7c.jpeg
[9]: //habrastorage.org/files/d40/d71/e96/d40d71e967a54e7ebe205824ada95519.jpeg
[10]: http://www.wolfram.com/cloud/
[11]: http://habrahabr.ru/post/257171/#habracut

[>] Восход разработчикономики
habra.15
habrabot(difrex,1) — All
2016-01-05 03:30:02




> ###### **От переводчика**
>
> Почитывая несколько лет назад журнал "
>
> [Форбс][1]
>
> ", я наткнулся на статью, которую нашёл крайне интересной. Ну, знаете как бывает — читаешь, читаешь, и на каждом абзаце воскликаешь: «О! Це ж про меня!». Не мог поверить, что я один такой, и никто не сподобится уж если не перевести, то хотя бы сослаться на неё в русскоязычной прессе. Однако за четыре года этого так и не произошло. Ну что ж, «хочешь сделать что-то правильно — сделай это сам», посему предоставляю вниманию почтенной публики первую половину статьи. (Стараюсь переводить художественно, поэтому работа двигается небыстро; размер оригинала — больше 30 килобайт, и, «земную жизнь пройдя до половины», я понял, что
>
> [держаться нету больше сил][2]
>
> .)
>
>
>
>
>
> P.S. Так и не смог разобраться, как поставить в заголовке тег «перевод».



#### **Восход разработчикономики**

В эволюционной биологии существует теория, согласно которой взаимный альтруизм и сотрудничество возникли как решение проблемы хранения еды. Если вам, раннему гоминиду, подфартило завалить крупного мамонта, у вас не было ни малейшего шанса схарчить его целиком до того, как он протухнет. Тогда вы делились едой: лучшим вложением для избыточного капитала было вложение в желудок вашего приятеля. В этом случае вы могли потребовать возврата вклада в тот раз, когда мамонта завалит уже этот самый приятель. В последнее время я размышлял над этой идейкой в контексте человеческого богатства. Если только вы не являетесь профессиональным инвестором (а даже если и являетесь), в настоящее время находить места для хранения избытка капитала, где он бы был в безопасности и не амортизировался слишком быстро (не говоря уже о принесении дохода) становится всё сложнее и сложнее. Фондовый рынок всё чаще навевает мысли о кровавом пиршестве “медведей”. Волатильность и неожиданные кратковременные ралли делают игру с короткими позициями небезопасной. Даже хранение активов в долларах, похоже, таит свои опасности — благодаря угрозе девальвации и всяким новомодным словечкам вроде «количественного смягчения», которые мы, среднестатистические инвесторы, слышим впервые. Евро сейчас тоже не смотрится как радужная альтернатива. Решение инвестировать в золото — и вообще в любое сырьё — кажется, требует несколько апокалиптического взгляда на мир, и размышлений о том, как вы планируете получить доступ к собственно предмету владения в случае, если всё и правда полетит в тартарары (хочется отметить, что в настоящий момент не могу назвать такой взгляд на мир так уж неоправданным). Но есть одна тихая гавань — если вы знаете, как в неё вложиться: разработчики ПО. [Читать дальше →][4]

[1]: http://www.forbes.com/
[2]: https://www.youtube.com/watch?v=ipc99Nm7QgA
[3]: http://onforb.es/rM6Ir8
[4]: http://habrahabr.ru/post/270267/#habracut

[>] Фабрика сайтов (Ф.CMS) проиграла суд
habra.14
habrabot(difrex,1) — All
2015-05-03 19:00:02


Наверняка многие активные MODX-разработчики слышали про «Фабрику сайтов». Это такие ребята, которые сделали копию движка MODX Revolution, назвали ее Ф.CMS и клепают на ней сайты, выдавая за собственный движок. Но помимо того, что они взяли сторонний опенсурс-движок, они еще и «позаимствовали» различные модули сторонних разработчиков, так же переименовали их и продают как свои, не указывая никакого авторства. Среди пострадавших — [andchir][1] и [bezumkin][2]. Последний [писал про эту ситуацию][3] довольно давно и подробно. В прошлом году мне пришлось столкнуться с парой клиентов, чьи сайты долго и безнадежно разрабатывались в Фабрике. Один из сайтов был мной переделан и по результатам был [написан подробный топик][4], где я разбирал качество выполненной работы указанной компании. И да, переданный мне сайт был разработан на Ф.CMS, действительно очень сильно напоминающую MODX Revolution, и да, в качестве модуль интернет-магазина использовался ShopKeeper by [Andchir][5]. [Читать дальше →][6]

[1]: http://habrahabr.ru/users/andchir/
[2]: http://habrahabr.ru/users/bezumkin/
[3]: https://bezumkin.ru/sections/blog/497/
[4]: http://modxclub.ru/topics/fabrika-sajtov-otzyivy.html
[5]: http://habrahabr.ru/users/andchir/
[6]: http://habrahabr.ru/post/257149/#habracut

[>] Анимация падающего снега на Canvas эффективнее анимации на DOM в несколько раз
habra.15
habrabot(difrex,1) — All
2016-01-05 17:30:03


ещё зима, предлагаю устроить хакатончик по реализации лучших алгоритмов на канвасе и их аналогов на DOM, взяв за основу в основном древние нативные алгоритмы, которые как максимум обёртывались в плагин jQuery, чтобы было удобно подключать. Большая часть этих алгоритмов не соразмеряет нагрузку на процессор или сделана неэффективно, поэтому даже при малом числе снежинок грузят процессор на 100%. [Вот пример обзорной статьи][3], где рассмотрены более 10 реализаций, не все, встречающиеся в природе. В дополнение, рассмотрим несколько избранных, чтобы получить задел на развитие алгоритма и реализацию его с хорошей эффективностью (получится ещё 5-6 вариантов). На этой основе можно построить доработку. [подробности][4]

[1]: https://habrastorage.org/files/dfa/01c/6af/dfa01c6af10147b49e7fcacc7da23c54.png
[2]: http://spmbt.github.io/snowfalls/jSnowMultiWin.htm
[3]: http://www.jqueryrain.com/2012/04/top-jquery-snow-falling-effect-plugin-tutorial-with-example/
[4]: http://habrahabr.ru/post/274535/#habracut

[>] Jii 0.8: Миграции, ReactViews, изоморфное приложение и прочие плюшки
habra.15
habrabot(difrex,1) — All
2016-01-05 20:00:03


Привет всем жителям и гостям хабра и с новым годом! :) В этой статье я хочу рассказать о том, с какими фичами Jii вступил в 2016-й год и что его в ждет в новом году.



Итак, начнем по порядку. [Читать дальше →][1]

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

[>] [Перевод] Создание функции на Rust, которая возвращает String или &str
habra.15
habrabot(difrex,1) — All
2016-01-05 20:30:02




### От переводчика

[![КДПВ][1]][2] Это последняя статья из цикла про работу со строками и памятью в Rust от Herman Radtke, которую я перевожу. Мне она показалась наиболее полезной, и изначально я хотел начать перевод с неё, но потом мне показалось, что остальные статьи в серии тоже нужны, для создания контекста и введения в более простые, но очень важные, моменты языка, без которых эта статья теряет свою полезность.

----

Мы узнали как [создать функцию, которая принимает String или &str][3] ([англ.][4]) в качестве аргумента. Теперь я хочу показать вам как создать функцию, которая возвращает `String` или `&str`. Ещё я хочу обсудить, почему нам это может понадобиться. [Читать дальше →][5]

[1]: https://habrastorage.org/files/6b8/cb6/a67/6b8cb6a67c1a45e7b803703a89846a2f.png "КДПВ"
[2]: http://habrahabr.ru/post/274565/
[3]: http://habrahabr.ru/post/274455/
[4]: http://hermanradtke.com/2015/05/06/creating-a-rust-function-that-accepts-string-or-str.html
[5]: http://habrahabr.ru/post/274565/#habracut

[>] Google исправила уязвимости в Android
habra.15
habrabot(difrex,1) — All
2016-01-06 07:00:03


Google выпустила обновление безопасности для Android _Nexus Security Bulletin — January 2016_, которое закрывает 12 уязвимостей в этой мобильной ОС. Одна из исправленных уязвимостей CVE-2015-6636 (_Remote Code Execution Vulnerability in Mediaserver_) относится к типу Remote Code Execution (RCE) и позволяет злоумышленникам удаленно исполнить код с повышенными привилегиями в Android с использованием вредоносного мультимедийного файла. Для доставки этого файла может быть использовано MMS-сообщение или фишинговый веб-ресурс для браузера. Еще четыре критические уязвимости относятся к типу Elevation of Privilege (EoP) и позволяют атакующим повысить привилегии своего кода в системе до уровня ядра ОС. ![][1] Другие две уязвимости относятся к типу High, одна из них CVE-2015-6641 в компоненте Bluetooth позволяет атакующему подключиться по беспроводному подключению к устройству и получить доступ к личной информации пользователя. Другая уязвимость CVE-2015-6642 типа Information Disclosure в ядре позволяет обойти встроенные механизмы безопасности Android и получить повышенные привилегии в системе. [Читать дальше →][2]

[1]: https://habrastorage.org/files/f95/f81/3fa/f95f813fa42049e6a6c973b85ff5b000.png
[2]: http://habrahabr.ru/post/274559/#habracut

[>] Mesosphere открывает тестовый доступ к своей ОС для дата-центров
habra.14
habrabot(difrex,1) — All
2015-05-04 04:00:03


![][1] Про операционные системы для дата-центров начали говорить относительно недавно. И буквально полгода назад [компания Mesosphere][2] заявила об успешной разработке подобной операционной системы. Сейчас компания сделала второе заявление: она открывает тестовый доступ к своей ОС, при этом в тестовый период ОС от Mesosphere будет доступна не всем, а предоставляться по заявкам заинтересованных организаций. Стоит отметить, что некоторые организации и стартапы получили такой доступ. К примеру, [Kubernetes][3], сторонний проект Google, сейчас полностью интегрирован с ОС Mesosphere. Процесс интеграции начался еще в прошлом году, и сейчас, как видим, успешно завершен. Кстати, проект от Mesosphere заинтересовал не только представителей телекоммуникационной сферы, но и инвесторов, [которые уже выделили][4] около $50 млн на этот проект. Среди прочих инвесторов — Andreessen-Horowitz, Khosla Ventures, SV Angel и Fuel Capital. [Читать дальше →][5]

[1]: http://habrastorage.org/getpro/habr/post_images/4f2/541/b5c/4f2541b5c31d9eb327864bfddfe5ab50.png
[2]: http://mesosphere.io/
[3]: http://kubernetes.io/
[4]: http://venturebeat.com/2014/12/07/mesosphere-funding/
[5]: http://habrahabr.ru/post/257139/#habracut

[>] Некоторые современные подходы в области обработки естественного языка
habra.15
habrabot(difrex,1) — All
2016-01-06 11:00:02


Результаты научных исследований, полученные в последние годы в задачах [распознавания речи][1] [1], машинного перевода [2], определения оттенка предложения [3] и [частей речи][2] [4] показали перспективность нейросетевых алгоритмов глубокого обучения в сравнении с классическими методами обработки естественного языка (natural language processing). Однако, в области [вопросно-ответных][3] и [диалоговых][4] систем еще остается много нерешенных задач [5, 6]. В данной статье дан обзор результатов применения современных алгоритмов для задач обработки и понимания естественного языка. Обзор содержит описание нескольких разных подходов и не претендует на полноту исследований. ![][5] **Human**: _how many legs does a cat have ?_ **Machine**: _four, i think ._ **Human**: _What do you think about messi ?_ **Machine**: _he ’s a great player ._ **Human**: _where are you now ?_ **Machine**: _i ’m in the middle of nowhere ._ (из [статьи][6] _A Neural Conversational Model_. КДПВ из фильма Ex Machina) [Читать дальше →][7]

[1]: http://arxiv.org/abs/1412.5567
[2]: http://arxiv.org/abs/1506.07285
[3]: http://arxiv.org/abs/1511.08130
[4]: http://arxiv.org/abs/1512.05742
[5]: https://habrastorage.org/files/2f7/bc7/6f1/2f7bc76f1dbd4a899265afe4813de4de.jpg
[6]: http://arxiv.org/pdf/1506.05869v3.pdf
[7]: http://habrahabr.ru/post/274577/#habracut

[>] Что делать если Google authenticator всегда выдает неправильные коды
habra.14
habrabot(difrex,1) — All
2015-05-04 10:30:02


![][1] Доброго времени суток. Я хотел бы рассказать вам о проблемах 2FA аутентификации на устройствах Android 4.4.2 KitKat и о решении, которое в нашем случае прекратило долгие поиски. Некоторое время назад мы с коллегами решили добавить Двухэтапную аутентификацию (Two factor authentication или для краткости 2FA) для нашего маленького офисного сервера на базе Ubuntu Server. 2FA это дополнительный уровень безопасности и приятное дополнение к уже существующему механизму аутентификации. Кроме обычной пары логин + пароль от пользователя, выполняющего авторизацию, требуется цифровой ключ, который динамически изменяется каждые 30 секунд и генерируется устройством, находящимся во владении пользователя. Для генерации ключа мы использовали Приложение [Google authenticator][2] и мобильный телефон на платформе Android. После разовой настройки приложение генерирует коды, имеющие срок жизни в 30 секунд, точно такие же коды генерирует сервер. При аутентификации коды сравниваются. Так как данные не передаются от сервера и хранятся только на устройстве — этот механизм является более безопасным, чем отправка кодов подтверждения (например как 3D-secure SMS подтверждение в банковских системах). [Читать дальше →][3]

[1]: https://lh6.ggpht.com/SK6qynd5-RDcys_3anR6QLocnjY_o9ZbDMmKtTnrAiQ3zNuWVFbkE2N15IyNBGBUhdkH=w300-rw
[2]: https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=ru
[3]: http://habrahabr.ru/post/257197/#habracut

[>] [Перевод] Итоги 2015-го года для C++
habra.15
habrabot(difrex,1) — All
2016-01-06 13:30:03


![][1]Возможно, я скажу банальную вещь, но прошедший год был хорошим годом для С++! Просто факты:

* Вышла Visual Studio 2015 с отличной поддержкой возможностей С++14/17 и даже нескольких экспериментальных вещей
* Вышел долгожданный GCC 5.0
* С++ набрал серьёзную популярность. Где-то с июля — третье место в Tiobe Ranking
* На конференции CppCon 2015 было сделано несколько важных анонсов

А теперь об этом и другом немного подробнее [Читать дальше →][2]

[1]: https://habrastorage.org/files/b11/a45/65c/b11a4565ce1844c4ba6bd6a18a8eabab.png
[2]: http://habrahabr.ru/post/274549/#habracut

[>] Бесплатные SSL-сертификаты теперь на 3 года от WoSign
habra.14
habrabot(difrex,1) — All
2015-05-04 13:00:02


![][1] Вчера обнаружил, что WoSing дает бесплатно сертификат, теперь уже, на 3 года. [Читать дальше →][2]

[1]: //habrastorage.org/files/d59/003/7d3/d590037d38604e45add24153b662d561.png
[2]: http://habrahabr.ru/post/257207/#habracut

[>] На следующей неделе Microsoft прекращает поддержку всех версий IE, кроме 11
habra.15
habrabot(difrex,1) — All
2016-01-06 15:30:05


12 января корпорация Microsoft [прекращает поддержку][1] Internet Explorer версий 8, 9 и 10. Прежде, чем полностью прекратить поддержку устаревших версий своего обозревателя, компания выпускает финальный патч. После этого указанные версии Internet Explorer более не будут получать обновления безопасности или техническую поддержку. В [недавнем патче][2] исправляются несколько новых проблем, плюс добавляется уведомление «End of Life», которое предлагает пользователям переходить на IE 11 или Microsoft Edge — следующую версию браузера корпорации. [Читать дальше →][3]

[1]: https://www.microsoft.com/en-us/WindowsForBusiness/End-of-IE-support?tduid=%28152800698a41e035097041fc5f7e78c3%29%28190947%29%281929404%29%28skim66960X1514734X6f64dcb219dfa13758ce89ea999485cd%29%28%29
[2]: https://support.microsoft.com/en-us/kb/3123303?sd=rss&spid=14019
[3]: http://habrahabr.ru/post/274595/#habracut

[>] [Из песочницы] Universal Memcomputing Machines как альтернатива Машине Тьюринга
habra.15
habrabot(difrex,1) — All
2016-01-06 16:00:03


_Данную статью можно считать вольным переводом (хотя скорее попыткой разобраться) [данной статьи][1]. И да, написанна она скорее для математиков, нежели для широкой аудитории._ _Небольшой спойлер: в начале это казалось мне какой-то магией, но потом я понял подвох…_ В наши дни машина Тьюринга (далее МТ) — универсальное определение понятия алгоритма, а значит и универсальное определение «решателя задач». Существует множество других моделей алгоритма — лямбда исчисление, алгорифмы Маркова и т.д., но все они математически эквивалентны МТ, так что хоть они и интересны, но в теоретическом мире ничего существенно не меняют. Вообще говоря, есть другие модели — Недетерминированная машина Тьюринга, Квантовые машины Тьюринга. Однако они (пока) являются только абстрактными моделиями, не реализуемые на практике. Полгода назад в Science Advances вышла интересная [статья][2] с моделью вычислений, которая существенно отличается от МТ и которую вполне возможно реализовать на практике (собственно статья и была о том, как они посчитали задачу SSP на реальном железе). И да. Самое интересное в этой модели то, что, по заверению авторов, в ней можно решать (некоторые) задачи из класса NP полных задач за полином времени и памяти. [Читать дальше →][3]

[1]: http://arxiv.org/abs/1405.0931
[2]: http://advances.sciencemag.org/content/1/6/e1500031
[3]: http://habrahabr.ru/post/274593/#habracut

[>] EPAM, собери мне геном
habra.14
habrabot(difrex,1) — All
2015-05-04 15:30:02


Если сравнивать человека с компьютером, то его тело – это hardware, а то, что вдыхает в него жизнь – software. И сегодня речь пойдёт о человеческом software – его геноме. ![image][1] [Читать дальше →][2]

[1]: http://habrastorage.org/files/6c6/ab9/f33/6c6ab9f3316f4441a60475fe162678b4.jpg
[2]: http://habrahabr.ru/post/257215/#habracut

[>] Что делать, если Google authenticator всегда выдает неправильные коды
habra.14
habrabot(difrex,1) — All
2015-05-04 15:30:02


![][1] Доброго времени суток. Я хотел бы рассказать вам о проблемах 2FA аутентификации на устройствах Android 4.4.2 KitKat и о решении, которое в нашем случае прекратило долгие поиски. Некоторое время назад мы с коллегами решили добавить Двухэтапную аутентификацию (Two factor authentication или для краткости 2FA) для нашего маленького офисного сервера на базе Ubuntu Server. 2FA это дополнительный уровень безопасности и приятное дополнение к уже существующему механизму аутентификации. Кроме обычной пары логин + пароль от пользователя, выполняющего авторизацию, требуется цифровой ключ, который динамически изменяется каждые 30 секунд и генерируется устройством, находящимся во владении пользователя. Для генерации ключа мы использовали Приложение [Google authenticator][2] и мобильный телефон на платформе Android. После разовой настройки приложение генерирует коды, имеющие срок жизни в 30 секунд, точно такие же коды генерирует сервер. При аутентификации коды сравниваются. Так как данные не передаются от сервера и хранятся только на устройстве — этот механизм является более безопасным, чем отправка кодов подтверждения (например, как 3D-secure SMS подтверждение в банковских системах). [Читать дальше →][3]

[1]: https://lh6.ggpht.com/SK6qynd5-RDcys_3anR6QLocnjY_o9ZbDMmKtTnrAiQ3zNuWVFbkE2N15IyNBGBUhdkH=w300-rw
[2]: https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=ru
[3]: http://habrahabr.ru/post/257197/#habracut

[>] [Из песочницы] Настройка logrotate + доступ для сбора логов по SFTP
habra.15
habrabot(difrex,1) — All
2016-01-06 16:00:03


У меня стояла задача: настроить сжатие логов DNS сервера Unbound, с возможностью удобного сбора этих бэкапов в коллектор. Также требовалось ограничить права доступа, чтобы с коллектора можно было зайти только в дирректорию, где хранятся бэкапы логов. Указанные действия проводил на CentOS 7 Minimal и CentOS 6.6 Minimal. [Читать дальше →][1]

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

[>] Трансгуманизм в массы: разблокировка устройства на Android Lollipop вживленным NFC-чипом
habra.14
habrabot(difrex,1) — All
2015-05-04 16:00:02


Еще в школе я познакомилась с жанром аниме. Мультяшные куклы с огромными глазами не особо впечатлили, но тогда я увидела по телевизору сериал Wonder Beat Scrumble — и для меня открылось то, что в аниме тоже неплохо выглядит: всяческая механика, электроника и вообще крутые штуки, связанные с техногенным путем развития. С тех пор я с восхищением наблюдала за развитием технологий в нашем времени и не в мультиках, а наяву — компьютеры, сотовые телефоны, беспроводная связь, бионические протезы. Узнала новый термин «трансгуманизм» и мечтала, мечтала, мечтала что когда-нибудь люди начнут расширять возможности своего тела за счет объединения биологии и механики с электроникой. Для меня эта мечта стала сбываться — об этом под катом. [Читать дальше →][1]

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

[>] [Перевод] Незаметные достоинства регулярных выражений в Python
habra.15
habrabot(difrex,1) — All
2016-01-06 16:30:06


![image][1] В стандартной библиотеке Python есть немало кошмарных модулей, но этого нельзя сказать о модуле re. Несмотря на его преклонный возраст и многолетнее отсутствие обновлений, я считаю этот модуль одним из лучших среди всех динамических языков. Python — один из немногих динамических языков, в которых отсутствует встроенная поддержка регулярных выражений, но это компенсируется проработанной базовой системой (с точки зрения API). В то же время он весьма причудлив. К примеру, поведение написанного на Python парсера может вас удивить. Если вы попытаетесь в ходе импорта профилировать Python, то, скорее всего, 90% времени вы проведёте в работе с модулем re. [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/37b/b56/e2e/37bb56e2e5bfab9ee28b6030bb6ad02e.png
[2]: http://habrahabr.ru/post/274349/#habracut

[>] [Перевод] Async/await в C#: подводные камни
habra.14
habrabot(difrex,1) — All
2015-05-04 17:00:02


Я бы хотел обсудить подводные камни, которые наиболее часто встречаются при работе с фичей async/await в C#, а также написать про то, как их можно обойти. [Читать дальше →][1]

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

[>] Spring Boot: от начала до продакшена
habra.14
habrabot(difrex,1) — All
2015-05-04 19:00:02


![][1]![][2] В данной статье я попробую расписать все шаги, которые потребуются для создания небольшого проекта на Spring Boot и развертывания его на боевом сервере. [Читать дальше →][3]

[1]: //habrastorage.org/files/0ed/0bc/1f8/0ed0bc1f8ab842d1b0d30e4a26c76482.png
[2]: //habrastorage.org/files/5d7/b9a/6dd/5d7b9a6dd9c94175a05883b9fdd97303.png
[3]: http://habrahabr.ru/post/257223/#habracut

[>] [Из песочницы] Eddystone и Physical Web: эволюция биконов
habra.15
habrabot(difrex,1) — All
2016-01-06 18:00:04


![][1] Меня зовут Алекс, я Android-разработчик в компании Touch Instinct. Недавно Google пригласил меня в жюри на хакатон BaumanHack. Я подготовил доклад о специфике Eddystone и Physical Web, делюсь основными тезисами. [Читать дальше →][2]

[1]: https://habrastorage.org/files/435/77d/b2b/43577db2bee240d6a5df0646b29769aa.png
[2]: http://habrahabr.ru/post/274585/#habracut

[>] NFX — Ультраэффективная Бинарная Сериализация в CLR
habra.14
habrabot(difrex,1) — All
2015-05-05 00:30:02




# Требования

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

* самозацикленные графы объектов (деревья с back-references)
* массивы структур (value types)
* классы/структуры с readonly полями
* инстансы существующих .Net коллекций (Dictionary, List), которые внутренне используют custom-сериализацию
* большое кол-во инстансов типов, специализированных для конкретной задачи

Речь пойдёт о трёх аспектах, которые очень важны в распределённых кластерных системах:

* скорость сериализации/десериализации
* объём объектов в сериализированном виде
* возможность использовать существующие объекты без надобности “украшения” этих объектов и их полей вспомогательными атрибутами для сериализации

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

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

[>] Дайджест по итогам 2015 года
habra.15
habrabot(difrex,1) — All
2016-01-06 20:00:04


![][1] Мы решили поздравить всех читателей блога с наступившим Новым годом и подвести итоги прошедшего. Конец 2015 года ознаменовался круглыми числами — 6000-й билд в SVN и 5000-й участник группы [https://vk.com/kolibri\_os][2] социальной сети ВКонтакте. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/332/ac0/97c/332ac097cb7bfba245943a942c69f564.png
[2]: https://vk.com/kolibri_os
[3]: http://habrahabr.ru/post/274487/#habracut

[>] Оптимизируем шаг за шагом с компилятором Intel C++
habra.14
habrabot(difrex,1) — All
2015-05-05 11:00:02






Каждый разработчик рано или поздно сталкивается с проблемой оптимизации своего приложения, причём сделать это хочется с минимальным вложением усилий и максимальной выгодой в плане производительности. В этом вопросе на помощь приходит компилятор, который на сегодняшний день многое умеет делать автоматически, нужно только сказать ему об этом с помощью ключей. Опций компиляции, как и видов оптимизации, развелось достаточно много, поэтому я решил написать блог о пошаговой оптимизации приложения с помощью компилятора Intel. Итак, весь тернистый путь компиляции и оптимизации нашего приложения можно разбить на 7 шагов. Пошагали! [Читать дальше →][1]

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

[>] [Перевод] Почему функциональное программирование — мейнстрим?
habra.15
habrabot(difrex,1) — All
2016-01-07 00:30:04


Функциональное программирование вряд ли можно назвать новым явлением. Еще в начале 90-х, когда я учился в университете, нам нередко приходилось писать что-то на LISP. Казалось бы, 25 лет прошло – но ведь уже тогда этот язык программирования был старше меня. Преимущества функционального программирования давно признаны широкой общественностью. Успешное развитие программного обеспечения нередко сводится к максимальному упрощению существующих механизмов, которые позволяют новым приложениям приспособиться к требованиям современных пользователей. А заодно приходится спешить, успевая в сжатые сроки представлять потребителям продукцию с неограниченными возможностями. Гораздо проще справиться с поставленной задачей, когда разрабатываемые приложения можно условно разделить на несколько чистых функций, проверить которые не составляет труда. В таких алгоритмах нет каверзных побочных эффектов и абстрактных формулировок, рассчитанных на результаты в глобальном масштабе. Но, похоже, ни один функциональный язык не претендует на звание общепризнанного. Я имею в виду своеобразную всемирную гегемонию C в 70-х, который позже передал корону C ++, Java, а со временем и JavaScript. Ни один из претендентов второго эшелона (Python, PHP, Perl, Ruby, C# ...) не попадал в категорию функциональных. [Читать дальше →][1]

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

[>] Бесплатные SSL-сертификаты — теперь на 3 года от WoSign
habra.14
habrabot(difrex,1) — All
2015-05-05 11:30:02


![][1] Вчера обнаружил, что WoSing дает бесплатно сертификат, теперь уже на 3 года. [Читать дальше →][2]

[1]: //habrastorage.org/files/d59/003/7d3/d590037d38604e45add24153b662d561.png
[2]: http://habrahabr.ru/post/257207/#habracut

[>] [Перевод] Инструменты для взлома, мелькавшие в сериале Mr Robot
habra.15
habrabot(difrex,1) — All
2016-01-07 07:00:03


![image][1] Всё время, пока в Голливуде снимали фильмы про хакеров, самым популярным инструментом для «взлома» была утилита nmap. Когда продюсеры фильма пытались добавить немного реалистичности, на экране компьютеров мелькал вывод nmap. Вроде бы первой отличилась Тринити из фильма «Матрица». Также эта утилита появлялась в Elysium, The Bourne Ultimatum, Die Hard 4 и других киношках. ![image][2] Первый сезон Mr Robot получил одобрение от специалистов по безопасности за попытки реалистичного показа работы хакеров. В показанных эпизодах хакеры общались через IRC, использовали виртуальные машины Linux, а главный герой ходил в толстовке с капюшоном. Естественно, поскольку это телешоу, создателям пришлось проявить толику творчества. И пока им удаётся сохранять неплохой баланс между повествованием и реальными техническими возможностями. Кратко рассмотрим увиденные нами в сериале средства для взлома.

#### Kali Linux

![image][3] Несколько раз можно видеть использование дистрибутива Kali Linux – операционки, изначально снабжённой инструментами для проникновения и тестирования безопасности систем. Если вам интересна тема сетевой безопасности – скачивайте её себе и начинайте пробовать. Естественно, только в учебных целях. Не взламывайте чужие компьютеры – это незаконно! [Читать дальше →][4]

[1]: https://habrastorage.org/getpro/habr/post_images/fb4/97f/2ad/fb497f2adb1f06ce5ef498dd2227abfa.png
[2]: https://habrastorage.org/getpro/habr/post_images/027/7a3/706/0277a3706f1f40e0e5abe0c943278cff.png
[3]: https://habrastorage.org/getpro/habr/post_images/0e9/496/c35/0e9496c350a513fda2fb9ebd1eb26d57.png
[4]: http://habrahabr.ru/post/274621/#habracut

[>] Немного сахара в комбинаторике
habra.15
habrabot(difrex,1) — All
2016-01-07 16:30:02


Доброго времени суток, хабр! Каждый уважающий себя программист знает, что глубокие вложенности — плохой стиль. Но есть алгоритмы, которые реализуются каскадом вложенных циклов (3 и более). В этой статье я хочу рассказать, как можно справиться с проблемой вложенных циклов при переборе комбинаций на любимом языке D. [Читать дальше →][1]

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

[>] Решение лабиринтов на Perl
habra.14
habrabot(difrex,1) — All
2015-05-05 13:30:02


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

#### Читаем лабиринт

Лабиринт можно представлять в разных форматах. Мы будем использовать SVG, поскольку в этом случае легко будет нарисовать решение поверх него.

<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="112" height="96" version="1.1" xmlns="http://www.w3.org/2000/svg">
<rect width="112" height="96" fill="white" stroke="none" />
<title>5 by 4 orthogonal maze</title>
<g fill="none" stroke="#000000" stroke-width="3" stroke-linecap="round" stroke-linejoin="round">
<line x1="16" y1="16" x2="32" y2="16" />
<line x1="48" y1="16" x2="80" y2="16" />
<line x1="16" y1="80" x2="96" y2="80" />
<line x1="16" y1="16" x2="16" y2="80" />
<line x1="96" y1="16" x2="96" y2="80" />
<line x1="64" y1="16" x2="64" y2="32" />
<line x1="32" y1="32" x2="32" y2="48" />
<line x1="32" y1="32" x2="48" y2="32" />
<line x1="64" y1="32" x2="64" y2="48" />
<line x1="64" y1="32" x2="80" y2="32" />
<line x1="32" y1="48" x2="48" y2="48" />
<line x1="48" y1="48" x2="48" y2="64" />
<line x1="48" y1="48" x2="64" y2="48" />
<line x1="80" y1="48" x2="80" y2="64" />
<line x1="16" y1="64" x2="32" y2="64" />
<line x1="48" y1="64" x2="64" y2="64" />
<line x1="80" y1="64" x2="80" y2="80" />
</g>

<g fill="black" stroke="none" stroke-width="1">
<text x="24" y="26" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">1</text>
<text x="40" y="26" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">2</text>
<text x="56" y="26" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">3</text>
<text x="72" y="26" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">4</text>
<text x="88" y="26" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">5</text>
<text x="24" y="42" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">6</text>
<text x="40" y="42" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">7</text>
<text x="56" y="42" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">8</text>
<text x="72" y="42" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">9</text>
<text x="88" y="42" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">10</text>
<text x="24" y="58" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">11</text>
<text x="40" y="58" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">12</text>
<text x="56" y="58" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">13</text>
<text x="72" y="58" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">14</text>
<text x="88" y="58" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">15</text>
<text x="24" y="74" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">16</text>
<text x="40" y="74" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">17</text>
<text x="56" y="74" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">18</text>
<text x="72" y="74" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">19</text>
<text x="88" y="74" text-anchor="middle" style="font-family:Arial Narrow; font-size: xx-small;">20</text>
</g>
</svg>




![][1] Файл мы будем обрабатывать двумя регулярками – одна для размера, а вторая – для поиска линий. [Читать дальше →][2]

[1]: //habrastorage.org/files/230/b16/b2f/230b16b2f426458099389b899dcfdcdb.png
[2]: http://habrahabr.ru/post/257251/#habracut

[>] [Из песочницы] Охота на грызунов под Linux
habra.15
habrabot(difrex,1) — All
2016-01-07 19:00:03


Существует масса средств мониторинга операционной системы, но особый смысл имеет задача отловить момент возникновения проблемы и поймать причину высокой нагрузки или источник проблем c производительностью. Я называю это охотой на «грызунов» ресурсов. Для этого я сочинил для себя несложный скрипт **ratskill.sh** который вы сможете модифицировать под свои системы и задачи. Принцип работы несложный — скрипт запускается с заданной периодичностью, проверяет уровень Load Average (вы можете использовать другие контрольные параметры) и в случае превышения заданной величины скрипт выполняет заданный набор диагностических команд с созданием отчета который высылается на указанный вами почтовый адрес. [Читать дальше →][1]

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

[>] Играем мускулами. Методы и средства взлома баз данных MySQL
habra.14
habrabot(difrex,1) — All
2015-05-05 13:30:02


![][1] MySQL — одна из самых распространенных СУБД. Ее можно встретить повсюду, но наиболее часто она используется многочисленными сайтами. Именно поэтому безопасность базы данных — очень важный вопрос, ибо если злоумышленник получил доступ к базе, то есть большая вероятность, что он скомпрометирует не только ресурс, но и всю локальную сеть. Поэтому я решил собрать всю полезную инфу по взлому и постэксплуатации MySQL, все трюки и приемы, которые используются при проведении пентестов, чтобы ты смог проверить свою СУБД. 0day-техник тут не будет: кто-то еще раз повторит теорию, а кто-то почерпнет что-то новое. Итак, поехали! [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/5e9/6b5/e08/5e96b5e080f92e62126f023ef978ef66.jpg
[2]: http://habrahabr.ru/post/256665/#habracut

[>] [Из песочницы] «Иная» логика и обратимые вычисления
habra.15
habrabot(difrex,1) — All
2016-01-08 00:00:03


![камень-ножницы-бумага (на ауребеш)][1] В конце прошлого года Google Translate к выходу нового эпизода «Звёздных войн» добавил поддержку «Галактического языка» Ауребеш. Правда оказалось, что при выборе этого языка просто происходит перевод на английский. Если использовать Chrome или Firefox, то появляется шрифт, в котором вместо латиницы подставлены символы ауребеш, ну а в IE без особых хитростей выводится английский текст. Начал вспоминать другие примеры создания «языков чужаков». Например, язык Клингонов из «Звёздного пути» тоже основан на латинице, но при этом достаточно проработан, имеет свой синтаксис и словарь. Языки народов Средиземья из «Властелина колец» – вообще отдельная история. А ещё существуют такие языки, как Линкос, специально разработанный Гансом Фройденталем для межпланетного общения и основанный на предположении, что математика является универсальным языком общения для любых разумных существ. [Читать дальше →][2]

[1]: https://habrastorage.org/files/cea/a3e/eeb/ceaa3eeeb2bf4d5c8257dc396ad7ed06.jpg
[2]: http://habrahabr.ru/post/274645/#habracut

[>] Лекции Техносферы. 2 семестр. Современные методы и средства построения систем информационного поиска
habra.14
habrabot(difrex,1) — All
2015-05-05 14:30:02







Снова в эфире наша образовательная рубрика. На этот раз предлагаем ознакомиться с очередным курсом Техносферы, посвящённым информационному поиску. Цель курса — рассказать об основных методах, применяемых при создании поисковых систем. Некоторые из них представляют собой хороший пример смекалки, некоторые показывают, где и как может применяться современный математический аппарат. Преподаватели курса: Алексей Воропаев, Владимир Гулин, Дмитрий Соловьев, Игорь Андреев, Алексей Романенко, Ян Кисель. [Читать дальше →][1]

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

[>] PROLOG для программистов
habra.15
habrabot(difrex,1) — All
2016-01-08 04:00:03


Язык логического программирования PROLOG (далее – ПРОЛОГ) большинству программистов представляется чем-то запутанным и малопригодным для практического применения. В то же время, Интернет основан на символьной информации, поэтому практически все современные программисты сталкиваются с необходимостью обрабатывать символьные структуры данных, а ведь для этого и предназначен язык логического программирования ПРОЛОГ. Этот язык – идеальный для работы с символьными структурами, текстовыми файлами и для построения интеллектуальных программ. [Читать дальше →][1]

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

[>] Обзор примера применения обучения с подкреплением с использованием TensorFlow
habra.15
habrabot(difrex,1) — All
2016-01-08 09:00:02


![КПДВ. В Karpathy game играет нейронная сеть][1] Всем привет! Я думаю, что многие слышали о [Google DeepMind][2]. О том как они обучают программы играть в игры Atari лучше человека. Сегодня я хочу представить вам статью о том, как сделать нечто подобное. Данная статья — это обзор идеи и кода [примера][3] применения [Q-learning][4], являющегося частным случаем обучения с подкреплением. Пример основан на [статье сотрудников Google DeepMind][5]. [За подробностями добро пожаловать под кат][6]

[1]: https://habrastorage.org/files/70a/74e/0b1/70a74e0b15ad4a97944eb06d63dd2aff.png
[2]: http://deepmind.com/
[3]: https://github.com/nivwusquorum/tensorflow-deepq
[4]: https://ru.wikipedia.org/wiki/Q-%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5
[5]: https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf
[6]: http://habrahabr.ru/post/274597/#habracut

[>] [Перевод] Социология алгоритмов: Как связаны финансовые рынки и высокочастотная торговля (Часть 2)
habra.15
habrabot(difrex,1) — All
2016-01-08 11:30:02


[![][1]][2] Ранее в нашем блоге мы публиковали [первую часть][3] [исследования][4] социологии финансовых алгоритмов, выполненного профессором Высшей школы социальных наук Эдинбурга Дональда МакКензи. Сегодня мы представляем вашему вниманию продолжение этой интересной работы — во второй части речь идет о разных типах HFT-заявок, дарк-пулах и связанных экологиях финансовых рынков. [Читать дальше →][5]

[1]: https://habrastorage.org/files/2a1/d08/7b9/2a1d087b9d504296868199544f418898.jpg
[2]: http://habrahabr.ru/company/itinvest/blog/274671/
[3]: http://habrahabr.ru/company/itinvest/blog/274247/
[4]: http://www.fixnetix.com/perch/resources/algorithms25.pdf
[5]: http://habrahabr.ru/post/274671/#habracut

[>] [Из песочницы] Изменение схемы разбивки диска на арендуемом VPS
habra.14
habrabot(difrex,1) — All
2015-05-05 16:30:02


«Можно ли сделать произвольную схему разбивки диска на виртуальном сервере?» Такой вопрос однажды возник в моей голове. Сразу скажу — речь о случае, когда нет доступа к гипервизору (иначе это было бы слишком легко). На первый взгляд может показаться, что вопрос не решаемый. В самом деле — чтобы переразбить раздел, его нужно отмонтировать. В случае с домашними компьютерами для этого используют Live\{CD,USB\}. Но если в вашем распоряжении только ssh? Пару секунд на обдумывание — и я нашёл решение. Казалось, на этом можно успокоиться: сам проблему придумал, сам решил. Но потом я в шутку задал этот же вопрос коллеге, будучи уверен, что у него так же не возникнет затруднений с решением вопроса. Результаты меня удивили. Опросив других, оказалось что все опрошенные уверены, что переразбить диск на VPS невозможно. Дальше всех пошёл только один парень, который сказал: «Можно, но не корневой раздел». Если вы тоже не знаете решения этой задачки или просто хотите посмотреть на пример реализации — добро пожаловать в статью! [Читать дальше →][1]

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

[>] Как я стал самым маленьким программистом в республике точно
habra.15
habrabot(difrex,1) — All
2016-01-08 12:30:02


Привет, Хабр! Я, наверное, самый маленький программист в республике, если не в стране. Сейчас мне всего 11, но я хорошо знаю Си и C++. Давайте приступим к теме статьи — о моем пути программиста. Продолжение под катом. [Читать дальше →][1]

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

[>] Билайн автоматически добавляет тулбар с поиском Mail.Ru
habra.14
habrabot(difrex,1) — All
2015-05-05 16:30:02


![][1] Наверное, многие слышали про тулбар от Билайн. С их стороны этот сервис вежливо назван "[Мини-кабинет][2]".

> «Мини-кабинет» – это сервис самообслуживания в браузере, с помощью которого можно узнавать баланс, остаток интернет трафика, управлять услугами связи и менять тарифные планы, а также получать ссылки на полезные сервисы от «Билайн»

Есть говорить по-другому, то билайн добавлял на любую не зашифрованную (http) страницу свой javascript код и в браузере отображался тулбар с информацией о балансе и ссылками на сайт билайна. На хабре о нем как-то [писали][3] и проблема вроде как была решена. Однако, Билайн решил пойти еще дальше и начал добавлять на сайты тулбар с поиском mail.ru. ![][4] [Читать дальше →][5]

[1]: //habrastorage.org/files/32b/07c/ef7/32b07cef72a3475784d5745c430e6c1b.png
[2]: http://spb.beeline.ru/customers/products/mobile/services/details/mini-kabinet/
[3]: http://habrahabr.ru/post/230921/
[4]: //habrastorage.org/files/808/62e/3b0/80862e3b061b405a9eb3d1fb2d8e1b1e.png
[5]: http://habrahabr.ru/post/257133/#habracut

[>] Обезвреживаем бомбу с Radare2
habra.15
habrabot(difrex,1) — All
2016-01-08 18:30:04


![][1] Доброго времени суток, %username%! Сегодня мы отправимся изучать бесчисленные возможности фреймворка для реверсера — radare2. В виде подопытного я взял первую попавшую бомбу, она оказалась с [сайта][2] Университета Карнеги Меллон. [Читать дальше →][3]

[1]: https://habrastorage.org/files/0f6/894/09e/0f689409e9a246c1b214c3a2fd9402f2.png
[2]: http://csapp.cs.cmu.edu/3e/bomb.tar
[3]: http://habrahabr.ru/post/274617/#habracut

[>] [Перевод] Арбелос
habra.14
habrabot(difrex,1) — All
2015-05-05 18:00:01






_Скачать статью в виде [документа Mathematica (NB)][1], [CDF-файла][2] или [PDF][3]._ Выражаю огромную благодарность [Кириллу Гузенко][4] за помощь в переводе.

----

В этой статье систематически проверяются некоторые свойства фигуры, известной с древних времён, называемой [арбелос][5]. Она включает в себя несколько новых открытий и обобщений, представленных автором данной работы.

### Введение

Будучи мотивирован вычислительными преимуществами, которыми обладает _[Mathematica][6]_, некоторое время назад я решил приступить к исследованию свойств арбелоса — весьма интересной геометрической фигуры. С тех пор я был впечатлен большим количеством удивительных открытий и вычислительных проблем, которые возникали из-за всё расширяющегося объёма литературы, касающейся этого примечательного объекта. Я вспоминаю его сходство с нижней частью культового велосипеда пенни-фартинг из The Prisoner (телесериал 1960-х), шутовской шапкой Панча (знаменитых Punch and Judy) и символом инь-ян с одной перевёрнутой дугой; см. рис. 1. В настоящее время существует специализированный каталог архимедовых кругов (круги, содержащиеся в арбелосе) [1] и важные применения свойств арбелоса, которые лежат вне поля математики и вычислительных наук [2]. Многие известные исследователи занимались этой темой, в том числе Архимед (убитый римским солдатом в 212 г. до н.э.), Папп (320 г. н.э.), Кристиан О. Мор (1835-1918), Виктор Тебо (1882-1960), Леон Банкофф (1908-1997), Мартин Гарднер (1914-2010). С недавних пор свойствами арбелоса занимаются Клейтон Додж, Питер Ай. Ву, Томас Шох, Хироши Окумура, Масаюки Ватанабе и прочие. Леон Банкофф — человек, который привлекал всеобщее внимание к арбелосу в последние 30 лет. Шох привлёк внимание Бэнкоффа к арбелосу в 1979 году, открыв несколько новых архимедовых кругов. Он послал 20-страничную рукописную работу Мартину Гарднеру, который направил её Бэнкоффу, который затем отправил 10-страничный фрагмент копии рукописи Доджу в 1996 году. Из-за смерти Бэнкоффа запланированная совместная работа была прервана, пока Додж не сообщил о некоторых новых открытиях [3]. В 1999 году Додж сказал, что ему потребуется от пяти до десяти лет, чтобы отсортировать весь материал, которым он располагает, разложив всё это дело по стопкам. В настоящее время эта работа все ещё продолжается. Не удивительно, что в четвертом томе _The Art of Computer Programming_, сказано о том, что важная работа требует большого количества времени. **Рис. 1.** _Велосипед пенни-фартинг, куклы Панч и Джуди, физический арбелос._ Арбелос (“нож сапожника” в греческом языке) назван так из-за своего сходства с лезвием ножа, использующегося сапожниками (Рис. 1). Арбелос — плоская область, ограниченная тремя полуокружностями и общей базовой линией (рис. 2). Архимед, вероятно, был первым, кто начал изучать математические свойства арбелоса. Эти свойства описаны в теоремах с 4-ой по 8-ую его книги _Liber assumptorum_ (или _Книги лемм_). Возможно, эту работу написал не Архимед. Сомнения появились после перевода с арабского _Книги лемм_, в которой Архимед упоминается неоднократно, но ничего не сказано о его авторстве (однако, существует мнение, что эта книга — подделка [4]). _Книга Лемм_ так же содержит знаменитую архимедову _Problema Bovinum_ [5]. Эта статья направлена на систематическое изложение некоторых свойств арбелоса и не носит исчерпывающий характер. Наша цель состоит в том, чтобы выработать единую вычислительную методологию для того, чтобы преподнести данные свойства в формате обучающей статьи. Все свойства выстроены в рамках определённой последовательности и представлены с доказательствами. Эти доказательства были реализованы посредством тестирования эквивалентных вычисляемых утверждений. В ходе выполнения данной работы автором было совершено несколько открытий и сделано несколько обобщений. [Читать дальше →][7]

[1]: http://www.mathematica-journal.com/data/uploads/2014/05/Rangel-Mondragon_Arbelos.nb
[2]: http://www.mathematica-journal.com/data/uploads/2014/05/Rangel-Mondragon_Arbelos.cdf
[3]: http://www.mathematica-journal.com/data/uploads/2014/05/Rangel-Mondragon_Arbelos.pdf
[4]: http://vk.com/ld742
[5]: https://ru.wikipedia.org/wiki/%D0%90%D1%80%D0%B1%D0%B5%D0%BB%D0%BE%D1%81
[6]: http://www.wolfram.com/mathematica/
[7]: http://habrahabr.ru/post/257319/#habracut

[>] Итоги конкурса по программированию на JS: Почтовые фильтры
habra.15
habrabot(difrex,1) — All
2016-01-08 19:30:03


Спасибо всем участникам нашего последнего [конкурса по программированию][1]! Мы получили 408 решений от 237 различных участников (в конкурсе участвует только одно, последнее из решений от каждого участника, и мы публикуем именно последние варианты). Кроме того, 7 решений было отправлено нам либо после окончания срока приёма работ, либо сотрудниками Hola, и мы рассмотрели их вне конкурса. [Читать дальше →][2]

[1]: http://habrahabr.ru/company/hola/blog/270847/
[2]: http://habrahabr.ru/post/274697/#habracut

[>] Введение в дискретно-ориентированные многогранники для задачи определения столкновений
habra.14
habrabot(difrex,1) — All
2015-05-05 21:00:02


![][1] Обнаружение столкновений (collision detection) виртуальных объектов является довольно значимой частью для задач визуализации. [Читать дальше →][2]

[1]: //habrastorage.org/files/cb2/031/aaa/cb2031aaa5db4c23af8790cf3468c92f.png
[2]: http://habrahabr.ru/post/257339/#habracut

[>] Security Week 01: Вымогатель на Javascript, $100k за баг в Adobe Flash, зашифрованное светлое будущее
habra.15
habrabot(difrex,1) — All
2016-01-09 13:00:03


![][1]Важным событием конца декабря стала конференция Chaos Communication Congress. Материалы с нее можно найти по ключевому слову 32c3, где 32 — порядковый номер мероприятия, начиная с 1984 года. Интересных исследований на мероприятии в Гамбурге было немало. Например, эксперты Феликс Домке и Даниель Ланге подробно [рассказали][2] о технической стороне «дизельгейта», включая особенности работы современных управляющих систем автомобилей. А [здесь][3] можно посмотреть монументальную 110-страничную презентацию об уязвимости железнодорожных систем, и прийти к выводу, что IT в поездах применяется широко, много, везде по-разному, и часто с применением стандартного ПО (Windows XP) или типовых протоколов беспроводной связи (GSM), недостатки которых с точки зрения безопасности широко известны и активно эксплуатируются (к счастью, пока в других местах). А вот [новость][4] (презентация и ссылка на исследовательскую работу внутри) о том, что уникальные особенности стиля программирования просачиваются даже в скомпилированный код. Хотя данная тема и является достаточно узкоспециализированной, я вижу в ней нечто большее: возможно в ближайшем будущем картинка справа окончательно потеряет актуальность. Не потому, что все за всеми будут следить, а благодаря поведенческому анализу — пользователя можно будет идентифицировать по тому, как он взамодействует с сайтом, приложением или чем-то еще так же, как программиста — по тому, как тот пишет код. Вот кстати Apple буквально вчера [приобрела][5] стартап, специализирующийся на анализе человеческих эмоций. В общем, 2016-й год начинается интересно. А мы продолжаем наблюдение. Предыдущие серии доступны [здесь][6]. [Читать дальше →][7]

[1]: https://habrastorage.org/files/a9f/c99/ed1/a9fc99ed11d44c40aa0127c3763cab17.jpg
[2]: https://blog.kaspersky.ru/dieselgate-explained/10406/
[3]: https://blog.kaspersky.ru/train-hack/10377/
[4]: http://www.theregister.co.uk/2015/12/31/automated_stylometry_can_deanonymise_programmers_binaries/?mt=1452258549219
[5]: http://www.wired.co.uk/news/archive/2016-01/08/apple-emotient-ai-emotions
[6]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[7]: http://habrahabr.ru/post/274703/#habracut

[>] Microsoft откажется от Patch Tuesday для Windows 10
habra.14
habrabot(difrex,1) — All
2015-05-05 23:00:02


Microsoft [заявила][1] об отказе от известной модели Patch Tuesday доставки security-обновлений для Windows 10 и работающих в ней компонентов. Теперь для домашних пользователей Windows 10 security-обновления будут приходить сразу после их выпуска компанией не дожидаясь обновлений прочих продуктов в фиксированный день. Microsoft выпускала security-обновления каждый второй вторник месяца, исключение составляли лишь некоторые обновления для опасных _exploited-ITW_ уязвимостей, которые требовали немедленного закрытия из-за высокого уровня их опасности. ![][2] [Читать дальше →][3]

[1]: http://www.theregister.co.uk/2015/05/04/microsoft_windows_10_updates/
[2]: //habrastorage.org/files/b1f/aac/478/b1faac4782e04a22bf7ae60ac0841a67.jpeg
[3]: http://habrahabr.ru/post/257343/#habracut

Pages: 1 ... 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 ... 210