RSS
Pages: 1 ... 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ... 133
[>] [Из песочницы] Оптимизация. Черный ящик
habra.16
habrabot(difrex,1) — All
2016-05-18 15:00:02


![][1] В этой статье мы постараемся понять, каким образом поиск оптимальных параметров объекта или модели может быть автоматизирован и сведен к оптимизации некоторой ресурсоемкой функции типа «черный ящик». Подробно рассмотрим математический метод (и его реализацию) для эффективного решения этой задачи. [Читать дальше →][2]

[1]: https://habrastorage.org/files/087/358/c36/087358c364944199ba6d82c8a356ac5d.jpg
[2]: https://habrahabr.ru/post/301050/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Городской хакатон 2ГИС в Москве
habra.16
habrabot(difrex,1) — All
2016-05-18 15:00:02


![][1] После крутого [хакатона в Новосибирске][2] мы решили устроить ещё один — в Москве. Тема та же — «Продукты для комфортной жизни в городе». Приглашаем бекенд-разработчиков, фронтендеров, мобильных разработчиков, дизайнеров и менеджеров в наш офис на «Арме». Хакатон пройдёт с 17 по 19 июня. [Регистрируйтесь][3] со своей идеей или присоединяйтесь к [заявленным проектам][4]. [Подробнее про хакатон][5]

[1]: https://habrastorage.org/files/417/034/374/417034374a9a4e2ea118ba422201d103.png
[2]: https://habrahabr.ru/company/2gis/blog/278431/
[3]: http://hackathon.2gis.ru/
[4]: http://hackathon.2gis.ru/projects/
[5]: https://habrahabr.ru/post/301078/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Подробнее о разработке софта рентгеновского томографа
habra.16
habrabot(difrex,1) — All
2016-05-18 16:00:02


![][1] Ученые из Томского государственного университета создали микротомограф. Томограф позволяет с точностью до микрона узнать о внутренней структуре различных материалов, например, алмазов. Но ведь интереснее в него запихнуть муху.




Перед [EDISON Software Developement][2] поставили задачу написать софт для микротомографа. О том, как они успешно справились с задачей, была статья на Хабре ([Как за 5233 человеко-часа создать софт для микротомографа][3]) с описанием алгоритмов, математических методов, реализации и отладки. Ненасытные читатели засыпали нас вопросами, на которые мы, наконец-то, сформулировали ответы… [Читать дальше →][4]

[1]: https://habrastorage.org/files/96f/5ef/9ab/96f5ef9ab16a49449217844fa566f41f.png
[2]: https://www.edsd.com/projects/portfolio
[3]: https://habrahabr.ru/company/edison/blog/273295/
[4]: https://habrahabr.ru/post/282848/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Трансляции мастер-классов от Mail.Ru Group на канале Технострим
habra.16
habrabot(difrex,1) — All
2016-05-18 16:30:02


![][1] Привет, Хабр! Сегодня мы хотим рассказать вам о еще одной нашей активности — мастер-классах онлайн на канале [Технострим][2]. В них мы приглашаем экспертов из компании, которые читают лекцию либо обсуждают какую-то тему из IT — от карьерного пути до узких профессиональных вопросов. Мастер-класс проходит в формате прямой трансляции, то есть вы можете не только посмотреть и послушать выступающих, но и задать им вопросы в чате трансляции YouTube и практически сразу получить ответ от спикеров. В апреле мы уже провели несколько мастер-классов, например [Обработка текстов на естественном языке][3]. Дмитрий Бугайченко, инженер-аналитик Mail.Ru Group, рассказывал про обработку естественных языков. Объять необъятное в рамках одной лекции, конечно, невозможно, поэтому мы сконцентрировались на вопросе рекомендации контента и рассмотрели необходимый для этого стек задач: токенизацию, векторизацию, семантический и эмоциональный анализ. Больше записей мастер-классов — [здесь][4]. На май у нас также готова программа мастер-классов, о которой хотим рассказать заранее, чтобы у вас была возможность выбрать интересное вам мероприятие и освободить для него время. [Читать дальше →][5]

[1]: https://habrastorage.org/files/f16/03d/ec1/f1603dec1b784812ab49ffbf4b3eb0dc.png
[2]: https://www.youtube.com/user/TPMGTU
[3]: https://www.youtube.com/watch?v=hULD4jS5DEc
[4]: https://www.youtube.com/playlist?list=PLrCZzMib1e9rs7Ye2Nz5MoznQmgI9r-vf
[5]: https://habrahabr.ru/post/301110/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] 4 пути юного регионального разработчика, которые я прошел в студенческие годы
habra.16
habrabot(difrex,1) — All
2016-05-18 16:30:02


Я рос в депрессивном поселке городского типа, где большинство парней, повзрослев, выбирало путь уверенной деградации. Лет с 11 меня преследовал страх, что я буду таким же, как это большинство. ![][1] Но в 13 лет родители купили мне компьютер, и жизнь начала меняться: я быстро стал местным эникейщиком, у которого взрослые дяди и тети спрашивали, как установить “виндоус на процессор”. В 15 я задался вопросом, как написать свою игру. Спросил двоюродного брата, который уже стал “уважаемым человеком” и делал сайты в Москве. Брат привез учебник Лафоре по C++ и сказал: “Осваивай программирование”. **Программирование стало для меня тем самым светом в конце туннеля:** я четко знал, что вот закончится школа, — и я уеду в большой город, чтобы работать в хорошей компании. Но путь наверх оказался более извилистым, чем я ожидал. [Ведь в 11-м классе мне провели интернет...][2]

[1]: https://habrastorage.org/files/e64/730/d5d/e64730d5d9ab475bbac7da4392337b76.jpg
[2]: https://habrahabr.ru/post/301056/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Фундамент масштабируемости javascript приложения
habra.16
habrabot(difrex,1) — All
2016-05-18 17:00:02




_"Если хочешь идти быстро — иди один. Если хочешь идти далеко — идите вместе."_ (с)



С этой лирической строки в данной статье я буду рассуждать о том, как правильно организовать код в вашем приложении, чтобы оно могло расти в высоту и в ширь. Если вы хотите, чтобы продукт вашей мозговой активности был мощнее, чем у ваших конкурентов, то вам неизбежно придется приглашать новых программистов в вашу команду. А если не положить вектор масштабируемости, то порывы энтузиазма через год превратятся в лапшу-код и командная работа превратит каждого сотрудника от злости в маленького сатану.



Так вот… Для того, чтобы ваши бойцы чувствовали себя комфортно вместе в одном проекте, надо чтобы они не мешали друг другу и писали свои буквы в разных не пересекающихся участках кода. Для этого им нужно будет писать "Самостоятельные" компоненты.

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

[1]: https://habrahabr.ru/post/301020/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Защита цифровых активов — задача стратегическая
habra.16
habrabot(difrex,1) — All
2016-05-18 18:30:04


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



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

[1]: https://habrahabr.ru/company/hpe/blog/301116/
[2]: https://habrahabr.ru/post/301116/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] НЕтехнологические проблемы защиты от утечек. Практика полевого инженера
habra.16
habrabot(difrex,1) — All
2016-05-18 18:30:04


_Мне недавно задали вопрос: «DLP-система – все еще модная игрушка или реальный инструмент?». И я растерялся. Вот молоток – это инструмент, оружие или модный аксессуар? Если он резиновый, розовый и размером с ключи от машины – скорее всего, это модный аксессуар. Если он в крови и к нему прилип клок волос – наверное, он побывал оружием. Но в большинстве остальных случаев это все-таки инструмент. _ [Читать дальше →][1]

[1]: https://habrahabr.ru/post/301120/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Уязвимость в электронном дневнике или как украсть персональные данные 2-х миллионов пользователей
habra.16
habrabot(difrex,1) — All
2016-05-18 21:30:02


В [предыдущей][1] статье я рассказал про особенность генерации логинов и паролей в [электронном дневнике][2], разработанном ДИТ'ом. Используя её, кто угодно мог получить доступ к любому чужому аккаунту и после просмотреть оценки ученика, изменить оценки учащихся от имени учителя, получить персональные данные владельца аккаунта или совершить любые другие действия от имени пользователей. Всем учителям сменили пароли, но остались ученики и родители со старыми паролями. В этой статье пойдет речь о багах/уязвимостях в том же проекте. [Читать дальше →][3]

[1]: https://habrahabr.ru/post/274337/
[2]: http://dnevnik.mos.ru/
[3]: https://habrahabr.ru/post/283464/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] LUWRAIN — дистрибутив и рабочая среда, в которых необязательно смотреть на экран
habra.16
habrabot(difrex,1) — All
2016-05-19 11:00:04


Сегодня очередной [День всеобщей осведомлённости о доступности][1] (GAAD), в который принято популяризировать вспомогательные технологии и доступность IT-продуктов для пользователей с ограниченными возможностями. Тем не менее, во время GAAD о доступности (или accessibility) в большинстве случаев говорят как о свойстве какого-либо программного обеспечения или web-сервиса, что безусловно важно и заслуживает всяческого внимания, но является не единственно возможным направлением приложения сил разработчиков. Помимо обеспечения доступности интерфейсов для вспомогательных технологий существует и такое направление, как разработка самих этих вспомогательных технологий: экранных увеличителей, программ чтения экрана, специализированных рабочих сред и других. Именно об одном подобном проекте, занимающемся разработкой специализированного рабочего окружения для незрячих и слабовидящих под названием LUWRAIN, и пойдёт речь в данной статье. Год назад, на GAAD-2015, уже публиковался подробный материал о LUWRAIN, в котором была изложена общая концепция этой рабочей среды, а также рассмотрена задача создания приложений на её базе, адаптированных для людей с нарушениями зрения, поэтому, все, кто боится потерять контекст, может предварительно ознакомиться с публикацией "[Luwrain — рабочее окружение для людей с нарушениями зрения][2]". В этот же раз речь пойдёт о тех технических задачах, которые решались в рамках LUWRAIN на протяжении прошедшего года, и о перспективах дальнейшего развития, а также читателей ждёт рассказ о том, как команда LUWRAIN угощала армянским коньяком и русской водкой своих коллег из Canonical. ![Михаил у офиса Canonical][3] [Читать дальше →][4]

[1]: http://www.globalaccessibilityawarenessday.org/
[2]: https://habrahabr.ru/post/258413/
[3]: https://habrastorage.org/getpro/habr/post_images/c54/f4e/63e/c54f4e63e4bd901083ef9e47f745d2af.jpg "Михаил у офиса Canonical"
[4]: https://habrahabr.ru/post/283584/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] ЭЦП стран СНГ на Python
habra.16
habrabot(difrex,1) — All
2016-05-19 12:30:02


Привет! Я уже [писал][1] на Хабре о своей реализации блочных шифров стран СНГ. Выдалась еще одна свободная неделька в результате чего к симметричным стандартам добавились алгоритмы электронной цифровой подписи: российский ГОСТ 34.10-2012, украинский ДСТУ 4145-2002 и белорусский СТБ 34.101.45-2013. Все три алгоритма основаны на [эллиптических кривых][2]. Но реализация каждого из стандартов имеет свои тонкости, о которых я хочу кратко рассказать в этой статье. [Читать дальше →][3]

[1]: https://habrahabr.ru/post/273895/
[2]: https://habrahabr.ru/post/188958/
[3]: https://habrahabr.ru/post/301048/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Преступники, заражавшие банкоматы вирусом, пойманы на горячем
habra.16
habrabot(difrex,1) — All
2016-05-19 15:00:02


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

[1]: https://habrastorage.org/files/540/e63/bd8/540e63bd8f94496091efdb116b160eb9.JPG
[2]: https://habrahabr.ru/post/301196/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Создаем новую OS. Действительно новую, реально операционную, и правда – систему
habra.16
habrabot(difrex,1) — All
2016-05-19 17:00:03






О создании новой операционной системы в последнее время говорят немало, особенно в России. В сумме размер всех публикаций по данной теме наверняка превышает размеры исходного кода любой операционной системы. Так что остается только одна проблема – от этих разговоров никаких новых OS не появляется. Всё, что предъявляется публике (и на что тратятся бюджетные деньги), на поверку оказывается кастомизированными сборками OS семейства Linux, а значит, не содержит ничего . Но, если о чем-то не говорят, это не значит, что его не существует. В этой статье – проект принципиально новой OS, созданный в нерабочее время одним из ведущих сотрудников (Principal Engineer) российского подразделения Intel. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/300884/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Создатели трояна-шифровальщика TeslaCrypt закрыли проект и опубликовали master-ключ для разблокировки
habra.16
habrabot(difrex,1) — All
2016-05-19 18:30:04


[![][1]][2] Издание Bleeping Computer [сообщает][3] о том, что создатели знаменитого трояна TeslaCrypt, который зашифровывал файлы на атакованных машинах, опубликовали мастер-ключ для разблокировки и закрыли проект. [Читать дальше →][4]

[1]: https://habrastorage.org/files/add/07a/1dd/add07a1ddd7346aaa061939095478e8b.png
[2]: https://habrahabr.ru/company/pt/blog/301226/
[3]: http://www.bleepingcomputer.com/news/security/teslacrypt-shuts-down-and-releases-master-decryption-key/
[4]: https://habrahabr.ru/post/301226/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] «Хакеры и Художники». Как мы 13 лет всем рунетом Пола Грэма переводили
habra.16
habrabot(difrex,1) — All
2016-05-19 19:30:02


_«Это началось как желание, стало приключением, а закончилось как уникальное дорожное путешествие.»_ — к/ф «Трасса 60» ![][1] Пол Грэм написал книгу [«Hackers and Painters»][2] ([оригинал в PDF на английском][3]) когда еще был больше программистом, чем инвестором. С тех пор некоторые моменты устарели (да и arc не взлетел), но большинство мыслей остались актуальными (роль и место «хакеров» в современном мире, свободомыслие, критическое мышление, способность бросать вызов большим системам и пр). Лично я планирую перечитать всю книгу еще пару раз. Спасибо Байраму Аннакову за [«наводку»][4] на Пола Грэма и [Николаю Кононову][5], который подтвердил, что я на правильном пути.

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

Глава 1 [Why Nerds Are Unpopular][6] — [За что не любят ботанов][7]. Глава 2 [Hackers and Painters][8] — [Хакеры и художники][9]. Глава 3 [What You Can't Say][10] — [О чем вы не можете сказать][11]. Глава 4 [Good Bad Attitude][12] — [Слово «хакер»][13]. Глава 5 [The Other Road Ahead][14] — [Другая дорога в будущее][15], [Другая дорога в будущее, продолжение][16]. Глава 6 [How to Make Wealth][17] — [Как стать богатым][18]. Глава 7 [Mind the Gap][19] — [Осторожно, разрыв][20]. Глава 8 [A Plan for Spam][21] — [План для спама][22]. Глава 9 [Taste for Makers][23] — [Вкус — созидателям][24]. Глава 10 Programming Languages Explained — [Языки программирования «в разрезе»][25]. Глава 11 [The Hundred-Year Language][26] — [Языки программирования через сто лет][27]. Глава 12 [Beating the Averages][28] — [Lisp: побеждая посредственность][29]. Глава 13 [Revenge of the Nerds][30] — Месть ботанов [1][31],[ 2][32], [3][33]. Глава 14 [The Dream Language][34] — [Быть Популярным][35], [часть 2][36]. Глава 15 [Design and Research][37] — [Проектирование и исследование.][38] Под катом хронология переводов и благодарности. [Читать дальше →][39]

[1]: https://habrastorage.org/files/d8e/384/c71/d8e384c7121343de889ed4f2de50aba3.jpg
[2]: http://www.amazon.com/gp/product/0596006624
[3]: https://vk.com/doc56227295_139594246
[4]: http://firrma.ru/data/s_opinion/1108/
[5]: http://tceh.com/edu/storytelling2/
[6]: http://paulgraham.com/nerds.html
[7]: http://fritzmorgen.livejournal.com/38494.html
[8]: http://www.paulgraham.com/hp.html
[9]: http://old.russ.ru/netcult/gateway/20030523_pg-pr.html
[10]: http://www.paulgraham.com/say.html
[11]: https://geektimes.ru/company/neuronspace/blog/263222/
[12]: http://www.paulgraham.com/gba.html
[13]: https://habrahabr.ru/company/edison/blog/273511/
[14]: http://paulgraham.com/road.html
[15]: https://habrahabr.ru/company/edison/blog/282574/
[16]: https://habrahabr.ru/company/edison/blog/283262/
[17]: http://www.paulgraham.com/wealth.html
[18]: https://web.archive.org/web/20140328052338/http://the-notebook.org/26/01/2006/kak-stat-bogatyim/
[19]: http://www.paulgraham.com/gap.html
[20]: http://alexakarpov.livejournal.com/778314.html
[21]: http://www.paulgraham.com/spam.html
[22]: http://minas-a.livejournal.com/2015/05/04/
[23]: http://www.paulgraham.com/taste.html
[24]: http://pujib.livejournal.com/492.html
[25]: https://habrahabr.ru/company/edison/blog/281561/
[26]: http://www.paulgraham.com/hundred.html
[27]: http://web.archive.org/web/20060721013904/http://www.computerra.ru/hitech/35042/
[28]: http://www.paulgraham.com/avg.html
[29]: http://www.nestor.minsk.by/sr/2003/07/30710.html
[30]: http://www.paulgraham.com/icad.html
[31]: https://habrahabr.ru/post/267865/
[32]: https://habrahabr.ru/company/edison/blog/268293/
[33]: https://habrahabr.ru/company/edison/blog/271103/
[34]: http://www.paulgraham.com/popular.html
[35]: http://bukvodel.livejournal.com/5954.html
[36]: http://bukvodel.livejournal.com/6197.html
[37]: http://www.paulgraham.com/desres.html
[38]: https://habrahabr.ru/post/268281/
[39]: https://habrahabr.ru/post/301104/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] RS232 устройство 3-в-1 для домашнего Linux сервера: Часть 2 (Серверная)
habra.16
habrabot(difrex,1) — All
2016-05-19 22:00:03




# RS232 устройство 3-в-1 для домашнего Linux сервера: Часть 2 (Серверная)



* [Часть 1 (Аппаратная)][1]
* **Часть 2 (Серверная)**
* [Драйвер][2]
* [Демон][3]
* [Утилита управления][4]



Для устранения некоторых недостатков сервера, собранного из бытовых комплектующих, разработал недавно устройство, которым хочу поделиться. Его подробное описание, со схемой и исходными кодами, доступно на Geektimes в [первой части][5].



![WRN устройство][6]



Устройство получило наименование WRN от составляющих его подсистем:



* Аппаратный сторожевой таймер, работающий с watchdog демоном;
* Генератор истинно случайных чисел;
* Радиомодуль nRF24L01+ для сбора данных с автономных датчиков.



В этой части статьи будет рассмотрено как взаимодействовать с последовательным портом из пространства ядра (kernel space) и как организовать работу с несколькими подсистемами устройства через RS232 в Linux.

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

[1]: https://geektimes.ru/post/275912/
[2]: https://habrahabr.ru/post/300968/#wrn_driver
[3]: https://habrahabr.ru/post/300968/#wrn_daemon
[4]: https://habrahabr.ru/post/300968/#wrn_control
[5]: https://geektimes.ru/post/275912/
[6]: https://habrastorage.org/files/0b9/b16/ccb/0b9b16ccb9454f58b3d592fb9c255bf6.png
[7]: https://habrahabr.ru/post/300968/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Уязвимость в электронном дневнике или как украсть персональные данные 2 миллионов пользователей
habra.16
habrabot(difrex,1) — All
2016-05-19 23:00:04


В [предыдущей][1] статье я рассказал про особенность генерации логинов и паролей в [электронном дневнике][2], разработанном ДИТ'ом. Используя её, кто угодно мог получить доступ к любому чужому аккаунту и после просмотреть оценки ученика, изменить оценки учащихся от имени учителя, получить персональные данные владельца аккаунта или совершить любые другие действия от имени пользователей. Всем учителям сменили пароли, но остались ученики и родители со старыми паролями. В этой статье пойдет речь о багах/уязвимостях в том же проекте. [Читать дальше →][3]

[1]: https://habrahabr.ru/post/274337/
[2]: http://dnevnik.mos.ru/
[3]: https://habrahabr.ru/post/283464/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Питерцы чемпионы мира! Не хоккеем, так программированием
habra.16
habrabot(difrex,1) — All
2016-05-20 00:00:03


![image][1] Первое место — СПбГУ. Второе место — Шанхайский университет транспорта. Третье место — Гарвардский университет. Четвертое место — МФТИ. Седьмое место — ИТМО. Восьмое место — УрФУ. Десятое место — ННГУ. Поздравляем соотечественников с победой! [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/57b/a2a/237/57ba2a23703afd3adf9605a745672d2f.jpg
[2]: https://habrahabr.ru/post/301244/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Сосчитать незримое: достоверно определяем словарный запаc
habra.16
habrabot(difrex,1) — All
2016-05-20 03:00:02


![][1]

В школе Skyeng мы редко обучаем английскому с нуля. Обычно к нам приходят люди, уже обладающие каким-то набором знаний, причем этот набор бывает самым разным. Для того, чтобы обучение было полезным, нам нужно как-то определить границу этих знаний. Если в случае грамматики это относительно просто (выясняется на первых занятиях с методистом), то уточнение границ словарного запаса – задача не самая тривиальная. Для ее решения мы разработали и запустили инструмент WordMash.

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

[1]: https://habrastorage.org/files/9b6/9df/8d0/9b69df8d0b48448ca8869a6c5e0e7ccf.jpg
[2]: https://habrahabr.ru/post/301214/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] У вас не найдется минутки чтобы поговорить о C++?
habra.16
habrabot(difrex,1) — All
2016-05-20 09:30:02


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

[1]: https://habrahabr.ru/post/301248/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Яндекс.Алгоритм. Разбор прошлогоднего квалификационного раунда и последний шанс поучаствовать в чемпионате
habra.16
habrabot(difrex,1) — All
2016-05-20 11:00:06


Как вам известно, вчера завершился очередной чемпионат ACM ICPC. Поздравляем студентов МФТИ, ИТМО, УрФУ и ННГУ с отличным выступлением, ребят из СПбГУ — с 1-м местом. Теперь мы приглашаем всех желающих [принять участие][1] в Яндекс.Алгоритме 2016. В этом году финал чемпионата пройдет в Минске. [![image][2]][3] В этом году впервые помимо традиционных призов победители получат возможность попасть на стажировку в Яндекс. 22 мая регистрация закроется и останется только следить за другими участниками в отборочных раундах. Квалификационный раунд продлится в этом году двое суток — с 21 по 22 мая. Раунды вновь будут оцениваться [по системе TCM/Time][4]. Для тех, кому интересно, какой сложности задачи их ждут, мы разобрали прошлогодней квалификации. Также у вас есть возможность [потренироваться][5] на нем. [Читать дальше →][6]

[1]: https://contest.yandex.ru/algorithm2016/
[2]: https://habrastorage.org/getpro/habr/post_images/515/9ae/540/5159ae5402577032f85d8ea6d3b1a02b.jpg
[3]: https://habrahabr.ru/company/yandex/blog/301268/
[4]: https://contest.yandex.ru/algorithm2015/rules/
[5]: https://contest.yandex.ru/algorithm2015/contest/1238/enter/
[6]: https://habrahabr.ru/post/301268/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Удаляйте свой мертвый код
habra.16
habrabot(difrex,1) — All
2016-05-20 11:30:03


![][1] Пост [«Удаление кода»][2] [Неда Бэтчелдера][3] (Ned Batchelder) недавно появился на [HN][4], хотя изначально он был написан в 2002 году. Здесь я хочу повторить несколько мыслей Неда, и занять более решительную, чем он, позицию: удаляйте код, как только вы замечаете, что он больше не нужен, без лишних вопросов. Я также предложу некоторые советы из окопов, как определять кандидатов в мертвый код.

## То что мертво умереть не может!

Это не просто «очень умная» и своевременная отсылка к поп-культуре. Мертвый код, то есть код, который никогда не выполняется в вашей программе — это реальная помеха для поддержки вашей кодовой базы. Сколько раз вы не могли добавить что-то, что казалось простой функцией или улучшением, только потому что были поставлены в тупик сложностью кода, который должен работать рядом с этой функцией? Насколько приятнее была бы ваша жизнь, если бы добавить новую функцию или исправить ошибку было бы так же просто, как вы предполагали, когда планировали свою работу? [Читать дальше →][5]

[1]: https://habrastorage.org/files/532/e15/510/532e15510ebe4bf098113f6083a381d0.jpg
[2]: http://nedbatchelder.com/text/deleting-code_ru.html
[3]: http://nedbatchelder.com/
[4]: https://news.ycombinator.com/item?id=11541474
[5]: https://habrahabr.ru/post/283560/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Двойной обман. Как ФБР использовало украинского хакера Максима Попова
habra.16
habrabot(difrex,1) — All
2016-05-20 14:00:03


![][1] Холодным днём 18 января 2001 года Максим Игоревич Попов, 20-летний украинский парень, нервно толкнул двери американского посольства в Лондоне. Его можно было принять за участника программы по студенческому обмену, который пришёл получать визу, но самом деле Максим был хакером, участником восточноевропейской хакерской группы, которая атаковала американские коммерческие компании, зарабатывая на вымогательстве и фроде. Прокатившаяся волна таких атак выглядела словно предвестник нового этапа Холодной войны между США и организованными хакерскими группировками в странах бывшего советского блока. Максим Попов с детским лицом, в очках и с короткой стрижкой, собирался стать первым перебежчиком в этой войне. [Читать дальше →][2]

[1]: https://habrastorage.org/files/7f4/175/00e/7f417500e91b492b96f05533188ac016.jpg
[2]: https://habrahabr.ru/post/301246/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Дайджест последних достижений в области криптографии. Выпуск нулевой
habra.16
habrabot(difrex,1) — All
2016-05-20 14:00:03


![][1] Привет! Хотелось бы в одной статье вкратце рассказать о достижениях математиков, которыми мы уже пользуемся или скоро будем. Начнем [с постквантовой криптографии][2]

[1]: https://habrastorage.org/files/6d1/83c/2ee/6d183c2ee93d4db596744d3a2cc842ba.jpg
[2]: https://habrahabr.ru/post/301180/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Законопроект № 4629 или Роскомнадзор по-украински
habra.16
habrabot(difrex,1) — All
2016-05-20 14:00:03


![image][1] Речь идёт о законопроекте № 4629 от 10.05.2016, а 17.05.2016 подан для ознакомления. [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/43c/394/f77/43c394f77c1ed15990a6bda6e61575ed.jpg
[2]: https://habrahabr.ru/post/301254/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Может ли машина научить английскому языку?
habra.16
habrabot(difrex,1) — All
2016-05-20 15:00:03


![][1] Биткоин-бот имени Дональда Трампа, победа AlphaGo над одним из сильнейших игроков в го Ли Седолем, изучение английского языка — что объединяет эти три ситуации? Везде в той или иной степени присутствует машинное обучение. Компьютер может не только генерировать сюжетную канву, как Scheherazade, или отвечать на письма вместо пользователей, как Google Smart Reply, но и создавать идеальные учебники английского языка. [Читать дальше →][2]

[1]: https://habrastorage.org/files/cb0/a24/42c/cb0a2442c03648e4989f31fb2fbb30d4.jpg
[2]: https://habrahabr.ru/post/301150/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Test lab v.9: impossible or nothing
habra.16
habrabot(difrex,1) — All
2016-05-20 15:00:03


![][1] Коллеги и друзья! Рады представить новую, 9 версию лабораторий тестирования на проникновение, которая представляет из себя виртуальную компанию «CyBear 32C», занимающуюся разработкой различных систем и приложений, в том числе систем обеспечения ИБ. Учитывая специфику деятельности, «CyBear 32C» хорошо защищена от хакерских атак, а ее компрометация потребует качественной подготовки в области практической ИБ. [Читать дальше →][2]

[1]: https://habrastorage.org/files/471/37b/461/47137b461ca64b0692208b67f0ceb8b4.png
[2]: https://habrahabr.ru/post/301046/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] FAQ по лицензированию papaya CMS
habra.16
habrabot(difrex,1) — All
2016-05-20 15:30:02


_Готов очередной перевод справочного материала по лицензированию еще одной CMS — на этот раз речь пойдет про немецкий проект [papaya CMS][1] (согласно [Wappalyzer][2], он лежит в основе таких Интернет-ресурсов, как например, [jpk.com][3] — сайт одного из ведущих производителей наноаналитического оборудования). Эта система распространяется на условиях двойной лицензии: как GPL, так и коммерческой. Хотя FAQ и небольшой по своему объему, но на мой взгляд, вполне информативный. См. его ниже по тексту._



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

[1]: https://www.papaya-cms.com/
[2]: https://wappalyzer.com/applications/papaya-cms
[3]: http://www.jpk.com/index.60.en.html
[4]: https://habrahabr.ru/post/301240/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Deep Dvorak или Дворак для всех, и при чём тут русский йод
habra.16
habrabot(difrex,1) — All
2016-05-20 15:30:02




Здравствуйте дорогие хабра читатели!



Сегодня я хочу поделиться с вами, своим опытом использования раскладки [Дворак для программистов][1].



![Оригинальная раскладка Дворак][2]



Уже не мало [рассказано][3] про эту раскладку, а кому-то эта раскладка даже [жизнь в боль превратила][4]! Так за чем же нужен еще один пост? Дело в том, что после прочтения множества постов о данной раскладке, я заметил что в основном описываются проблемы и неудобства, связанные с переходом. Здесь же я постараюсь рассказать и показать как можно их преодолеть, на примере платформы макось.

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

[1]: http://www.kaufmann.no/roland/dvorak/index.html
[2]: https://raw.githubusercontent.com/vbauerster/DeepDvorak/master/screenshots/Dvorak_keyboard_OM.JPG
[3]: https://habrahabr.ru/post/106201
[4]: https://habrahabr.ru/post/224753
[5]: https://habrahabr.ru/post/301160/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Разжёвываем линейно-квадратичный регулятор для управления перевёрнутым маятником
habra.16
habrabot(difrex,1) — All
2016-05-20 17:30:03




# Преамбула

Продолжаю подробное описание использования линейно-квадратичного регулятора на примере управления перевёрнутым маятником. К слову сказать, термин «ЛКР» очень неточно отражает суть происходящего, как мне уже подсказали в комментариях, в русской школе теории управления этот подход называется «аналитическим конструированием регуляторов», что существенно точнее. _Как обычно, я стараюсь разжевать математику по-максимуму, чтобы материал был доступен заинтересованному школьнику. Я глубоко убеждён, что использование математики по-хорошему должно бы быть платным: любая формула должна быть использована только тогда, когда она призвана облегчить понимание, а не для того, чтобы выпендриваться._ Итак, это уже четвёртая статья, для лучшего понимания происходящего неплохо бы прочитать предыдущие три:

* 1\. [**Методы наименьших квадратов**][1]
* 2\. [**Линейно-квадратичный регулятор, вводная**][2]
* 3\. [**Управление двигателем постоянного тока при помощи линейно-квадратичного регулятора**][3]

Вот фотография системы (кликабельно): [![][4]][5] [Читать дальше →][6]

[1]: https://habrahabr.ru/post/277275/
[2]: https://habrahabr.ru/post/277671/
[3]: https://habrahabr.ru/post/280486/
[4]: https://habrastorage.org/getpro/habr/post_images/d3f/c9f/b0e/d3fc9fb0eb13163ee9be6a54ec7bac47.jpg
[5]: https://raw.githubusercontent.com/ssloy/tutorials/master/tutorials/pendulum/doc/pendulum.jpg
[6]: https://habrahabr.ru/post/301276/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Тест производительности: удивительно и просто
habra.16
habrabot(difrex,1) — All
2016-05-20 17:30:03


Так сложилось, что последние полгода я активно занимался тестами производительности и мне кажется, что в этой области IT царит абсолютное непонимание происходящего. В наше время, когда рост вычислительных мощностей снизился (vertical scalability), а объем задач растет с прежней скоростью, проблема производительности становится всё острее. Но прежде, чем броситься на борьбу с производительностью, необходимо получить количественную характеристику. Краткое содержание статьи:

* [Простейший тест][1]: способы измерения теста, выбор статистики (квантили, медиана, среднее).
* [Параметризованный тест][2]: оценка сложности алгоритма, применения МНК к оценки линейности теста.
* [Тесты на многоядерных машинах][3]: сложность экстраполяции результатов тестов на многоядерные машины, закон Амдала и целесообразность измерений.
* [Поведенческий тест][4]: каким, при заданной модели поведения пользователей, будет время ожидание запроса и что может привести к коллапсу системы. Пропускная способность (throughput) и как его считать.
* [Удивительное статическое распределение][5] результатов performance теста.



### Предыстория

Однажды, путешествуя в поезде, я захотел посчитать, каково расстояние между столбами электропередач. Вооружившись обычными часами и оценивая среднюю скорость поезда 80-100км/ч (25 м/с), я засекал время между 2-мя столбами. Как ни странно, этот наивный метод давал очень удручающие результат, вплоть до 1.5-2 кратной разницы. Естественно метод несложно было исправить, что я и сделал, достаточно было засечь 1 минуту и посчитать количество столбов. И не важно, что мгновенная скорость на протяжении минуты может варьироваться и даже не важно посчитаем мы последний столб или минута истечет посередине, потому как измерений вполне достаточно для требуемого результата. Смысл теста в том, чтобы получить убедительные для себя и для других измерения.

##### Тесты «на коленке»

Эта история мне напоминает то, что происходит с тестированием производительности в Software Engineering. Достаточно частое явление — запуск 1-2 тестов, построение графиков и получение выводов о scalability система. Даже, если есть возможность применить МНК или узнать стандартную ошибку, это не делается за «ненадобностью.» Особенно интересная ситуация, когда после этих 2 измерений, люди обсуждают насколько быстрая система, как она масштабируется и сравнивают её с другими системами по личным ощущениям. Конечно, оценить, насколько быстро выполняется команда, не сложно. С другой стороны, быстрее не значит лучше. Системы ПО имеют свыше 10 различных параметров, от hardware на котором они работают до input, которые вводит пользователь в разные моменты времени. И зачастую 2 эквивалентных алгоритма могут давать совершенно разные параметры масштабируемости в разных условиях, что делает выбор совсем не очевидным.

##### Недоверие к тестам

С другой стороны результаты измерений всегда остаются источником спекуляций и недоверий. — Вчера мы меряли было X, а сегодня 1.1\*X. Кто-то что-то менял? — 10% — это нормально, у нас теперь больше записей в БД. — При проведении теста был отключен антивирус, скайп, анимация заставки? — Не-не, для нормальных тестов нам надо закупить кластер серверов, установить микросекундную синхронизацию времени между ними… удалить ОС, запускать в защищенном режиме… — Сколько пользователей мы поддерживаем? У нас 5000 зарегистрированных пользователей, вдруг 20% из них залогинится, надо запускать тесты с 1000 параллельными агентами. [Попытаемся примирить 2 враждующие стороны][6]

[1]: #SimpleTest
[2]: #ParameterTest
[3]: #CoreTest
[4]: #BehaviorTest
[5]: #TestDistribution
[6]: https://habrahabr.ru/post/171475/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Google-oriented programming
habra.16
habrabot(difrex,1) — All
2016-05-20 19:00:07


![][1] Google заменил начинающим программистам книги и справочники: в самом деле, почти любой вопрос кто-то уже решил до вас, остается только найти решение. Интересно другое: **пользуются ли опытные программисты только своим опытом или предпочитают гуглить наравне с начинающими?** [Читать дальше →][2]

[1]: https://habrastorage.org/files/219/9c7/24d/2199c724dd3f4ff5b60747eb1252a285.png
[2]: https://habrahabr.ru/post/301306/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 20: случайные числа, уязвимость в 7-Zip, Microsoft выключает WiFi Sense
habra.16
habrabot(difrex,1) — All
2016-05-20 21:30:02


![][1]Хотите поговорить об энтропии? Я не хочу, но надо, так как одна из самых важных новостей недели (и, что удивительно, самая популярная [новость][2] на [Threatpost][3]) как раз про нее. Точнее — про впечатляющий (если потом не опровергнут) прорыв в решении проблемы генерации случайных чисел. Научная [работа][4] исследователей Дэвида Цукермана и Эшана Чаттопадхья из Техасского университета доказывает возможность генерации случайных чисел высокого качества на основе двух источников более низкого качества. Если еще точнее, то такая возможность была и раньше — например, около 10 лет назад это показал бельгийский математик [Жан Бургейн][5]. Проблема в работе Бургейна заключалась в том, что к этим самым «не очень качественным» источникам на самом деле предъявлялись довольно высокие требования по части энтропии, соответственно его исследования имели чисто научную ценность. А вот в данном случае ценность может быть вполне практическая: если просто, то новая работа позволит получать случайные числа быстро и дешево, уменьшит шансы на, скажем, взлом зашифрованной переписки из-за уязвимости алгоритма генерации. Основное требование к двум источникам — это отсутствие корреляций между ними. В общем, хорошая (хотя и чрезвычайно сложная для понимания) новость с научного фронта, которая вполне может найти применение в криптографии, и не только в ней. Отзывы на научную работу в целом весьма [положительные][6], но, как правильно отмечается в этой [статье][7] BBC, исследование не предлагает ничего принципиально нового. Но качество и скорость существующих методов генерации случайных чисел могут быть улучшены. Предыдущие выпуски дайджеста доступны по [тегу][8]. [Читать дальше →][9]

[1]: https://habrastorage.org/files/3ec/1a1/663/3ec1a16636b344b7ad10c0e6a81c288c.jpg
[2]: https://threatpost.com/academics-make-theoretical-breakthrough-in-random-number-generation/118150/
[3]: https://threatpost.ru/
[4]: http://eccc.hpi-web.de/report/2015/119/
[5]: https://en.wikipedia.org/wiki/Jean_Bourgain
[6]: http://www.wisdom.weizmann.ac.il/mathusers/oded/MC/181.html
[7]: http://www.bbc.com/news/technology-36311668
[8]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[9]: https://habrahabr.ru/post/301250/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Симфония асинхронии: задачи JavaFX и сокеты Netty
habra.16
habrabot(difrex,1) — All
2016-05-20 21:30:02


Всем доброй пятницы! У нас наконец-то дошли руки до книги о Netty, которую нам рекомендовали в том числе благодарные читатели нашего хаброблога. ![][1] Признаться, у нас давно не выходило ничего узкотематического по Java. Но тема Netty вызывает на Хабре самый живой интерес, поэтому мы решили разместить обзорный материал по ней (автор почерпнул идею поста из [этой][2] книги) и устроить самый ориентировочный опрос. Заходите, высказывайтесь! [Читать дальше →][3]

[1]: https://habrastorage.org/files/f2b/ddf/398/f2bddf398ffb440495287edbf4d9f01c.jpg
[2]: http://www.amazon.com/Netty-Action-Norman-Maurer/dp/1617291471/
[3]: https://habrahabr.ru/post/301298/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Представляем новую камеру Intel RealSense SR300
habra.16
habrabot(difrex,1) — All
2016-05-20 21:30:02


Камера Intel RealSense [SR300][1] — последняя модель камеры переднего обзора в нашей линейке продуктов. В камерах SR300 реализован целый ряд новых и улучшенных возможностей по сравнению с камерами первого поколения Intel RealSense F200. В модели SR300 дальность действия камеры увеличена до 1,5 м и поддерживается запись динамичного движения, повышена точность данных глубины, снижен расход электроэнергии, повышено качество и стабильность программного обеспечения. В камерах SR300 улучшена поддержка Skype\*. Разрешение составляет 1080p FullHD при скорости 30 кадров в секунду или 720p при скорости 60 кадров в секунду. SR300 поддерживает приложения, разработанные для камеры Intel RealSense F200, и работу с цветным изображением. В [Intel RealSense SDK][2] добавлен новый трехмерный режим Cursor, улучшена сегментация фона и функция трехмерного сканирования объектов для камеры SR300. [][3]



[Узнать больше о камере][4]

[1]: https://software.intel.com/en-us/RealSense/SR300Camera
[2]: https://software.intel.com/en-us/intel-realsense-sdk
[3]: https://habrahabr.ru/company/intel/blog/283508/
[4]: https://habrahabr.ru/post/283508/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Конкурс по программированию на JS: Классификатор слов (дополнение)
habra.16
habrabot(difrex,1) — All
2016-05-20 21:30:02


Спасибо всем, кто уже поучаствовал или собирается участвовать в нашем [конкурсе по программированию][1]! Мы решили опубликовать ряд важных разъяснений к правилам, чтобы помочь участникам избежать типичных ошибок. Обидно было бы дисквалифицировать интересное решение из-за чисто технической ошибки. По многочисленным просьбам мы также публикуем официальный [скрипт для тестирования][2]. С помощью него Вы можете самостоятельно проверить, работает ли Ваша программа в условиях нашей тестовой системы. Запустите скрипт без аргументов, чтобы узнать, как им пользоваться. Для отправки работ осталась ещё неделя. Если этот пост помог Вам найти ошибку, ещё есть время её исправить.

#### Часто задаваемые вопросы

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

[1]: https://habrahabr.ru/company/hola/blog/282624/
[2]: https://github.com/hola/challenge_word_classifier/blob/master/tests/test.js
[3]: https://habrahabr.ru/post/301314/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Эффективное внедрение зависимостей при масштабировании Ruby-приложений
habra.16
habrabot(difrex,1) — All
2016-05-21 21:00:02


[![][1]][2] В нашем блоге на Хабре мы не только рассказываем о развитии своего продукта — [биллинга для операторов связи «Гидра»][3], но и публикуем материалы о работе с инфраструктурой и использовании технологий из опыта других компаний. Программист и один из руководителей австралийской студии разработки Icelab Тим Райли написал в корпоративном блоге [статью][4] о внедрении зависимостей Ruby — мы представляем вашему вниманию адаптированную версию этого материала. [Читать дальше →][5]

[1]: https://habrastorage.org/files/5a9/58b/875/5a958b8754c44b3fb834dd045d8636e2.png
[2]: https://habrahabr.ru/company/latera/blog/301338/
[3]: http://www.hydra-billing.ru/
[4]: http://icelab.com.au/articles/effective-ruby-dependency-injection-at-scale/
[5]: https://habrahabr.ru/post/301338/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Python: Мышление программиста
habra.16
habrabot(difrex,1) — All
2016-05-22 18:00:03




Небольшая статья о том, как можно решить одну и ту же задачу несколькими способами. Предназначена для новичков в Python и программировании.



В качестве примера взят простой случай — реализация диалога подтверждения какой-либо операции. Программа задает пользователю вопрос `Вы уверены? [Д/н (Y/n)]:`, на который требуется ответить, введя одно из восьми допустимых значений (`Д`, `д`, `Н`, `н`, `Y`, `y`, `N`, `n`).

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

[1]: https://habrahabr.ru/post/301344/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] IPSec VPN для OS X и iOS. Без боли
habra.16
habrabot(difrex,1) — All
2016-05-23 13:00:03




>
>
> **VPN**
>
> (англ. Virtual Private Network — виртуальная частная сеть) — обобщённое название технологий, позволяющих обеспечить одно или несколько сетевых соединений (логическую сеть) поверх другой сети (например, Интернет).
>
>
>
> ©
>
> [Wikipedia][1]

VPN используется для удаленного подключения к рабочему месту, для защиты данных, для обхода фильтров и блокировок, для выдачи себя за гражданина другой страны и вообще — штука незаменимая. Практически повсеместно в качестве простого средства для организации пользовательского VPN используется всем известный [OpenVPN][2], который использовал и я. Ровно до тех пор, пока у меня не появился Macbook и OS X в придачу. Из-за того, что подход Apple к конфигурации DNS сильно отличается от подхода других \*nix-систем, проброс DNS через VPN нормально не работал. После некоторых исследований у меня получилось два варианта: — Использование DNS «мимо» VPN, что сильно небезопасно, но решает проблему. — Использование нативных для OS X VPN-протоколов: PPTP и семейства IPSec. Разумеется, я выбрал второе и разумеется — IPSec, а не устаревший PPTP. [Читать дальше →][3]

[1]: https://ru.wikipedia.org/wiki/VPN
[2]: https://openvpn.net/
[3]: https://habrahabr.ru/post/301422/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему нужно посетить Новосибирский AngelHack?
habra.16
habrabot(difrex,1) — All
2016-05-23 13:30:03


![][1] Года четыре назад организаторы хакатона AngelHack зазвали меня к себе в эксперты. С тех пор я использую [все][2] легальные способы, чтобы анонсировать это мероприятие. Например, блог компании Voximplant. В этом посте вы найдете три причины, почему нужно посетить хакатон. Ближаший по датам (но, будем честны, не по расстоянию от Москвы) пройдет [28-29 мая в Новосибирске][3]. [Читать дальше →][4]

[1]: https://habrastorage.org/files/c28/415/69e/c2841569e0d3454cb9668078aa24b905.png
[2]: https://habrahabr.ru/company/Voximplant/blog/280308/
[3]: http://angelhack.io/
[4]: https://habrahabr.ru/post/301358/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Как мы парсили декларации о доходах при помощи открытых данных
habra.16
habrabot(difrex,1) — All
2016-05-23 13:30:03


Уже второй год я занимаюсь государственными открытыми данными РФ и работой с госорганами и пора бы начинать рассказывать интересные истории о том, как появляются данные. Однако сегодня речь пойдет о более привычной для разработчика области — парсинге данных для проекта «Декларатор» и о том, какую неожиданную пользу могут при этом принести открытые данные. ![][1] «Декларатор» — это постоянно пополняемая база деклараций о доходах и имуществе публичных должностных лиц: депутатов, чиновников, судей, представителей региональной и муниципальной власти, иных органов, госкорпораций и госкомпанией. Проект работает как информационно-справочная база для СМИ, активистов, занимающихся общественным контролем, и исследователей. В России сведения о доходах должны публиковать более миллиона человек. Интересный факт: существуют единые правила для госсайтов по размещению деклараций о доходах (в частности, они всегда находятся в разделе «Противодействие коррупции») и отвечает за всю эту тему Министерство труда и социальной защиты РФ. Массовое размещение деклараций происходит в мае. Далее у Минтруда есть всего месяц на то, чтобы провести мониторинг по всем без исключения сайтам, обязанным размещать информацию. Мониторинг проводится вручную. [Читать дальше →][2]

[1]: https://habrastorage.org/files/cc5/f38/be4/cc5f38be4630469da3f9179559a2222e.jpg
[2]: https://habrahabr.ru/post/301436/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Дайджест интересных событий из мира Java, и вокруг нее #2 (09.05.2016 — 22.05.2016)
habra.16
habrabot(difrex,1) — All
2016-05-23 13:30:03


![image][1]

## В этом выпуске

— Новики в Java: **иммутабельные коллекции** в JDK9, новые опции для обработки **out-of-memory **в JDK8 — Как **зареордерить** чтения на x86? — Опен-сорс наступает: гиганты IT индустрии выкладывают новые фреймворки — «Слухи о моей смерти сильно преувеличены»: **Twitter** на защите Scala — Терабайты RAM в облаке: новое предложение от **Amazon** — Как HR-ы **Google** приглашают на собеседование? … и многое другое [Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/8ab/fb5/421/8abfb54213acb72ff92a3fdd81588df0.jpg
[2]: https://habrahabr.ru/post/301402/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как мы рисовали road shields на карте
habra.16
habrabot(difrex,1) — All
2016-05-23 17:30:03


В начале 20-го века на главных дорогах общего пользования начали появляться таблички (далее shield) с номерами. Отображение их на карте не является обязательным атрибутом, но является важным с точки зрения удобства использования. Людям, которые видят таблички в реальности, проще сориентироваться на местности. Также это придает карте “местный колорит”. Стоит отметить, что одна и та же дорога может иметь несколько табличек одновременно. Это связано с тем, что дорожные маршруты могут накладываться друг на друга. ![][1] _В OsmAnd мы решили нарисовать максимально приближенные к реальности shield, используя данные OpenStreetMap. _ [Читать дальше →][2]

[1]: https://habrastorage.org/files/03c/d8a/416/03cd8a4163a64ade9693064e5d83cce7.png
[2]: https://habrahabr.ru/post/301320/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Как отслеживать новости в мире C++
habra.16
habrabot(difrex,1) — All
2016-05-23 17:30:03


Стараясь непрерывно пополнять свои знания о С++ я определил для себя несколько каналов получения информации, на которых можно сконцентрироваться. Они, возможно, могут быть применимы и к другим областям знаний, но я попробую сфокусироваться на С++. Давайте я расскажу о них чуть подробнее.

1. **Вдумчивое чтение** — чтение фундаментальных книг, структурированных и информативных. Это требует длительной концентрации, причём нельзя читать в состоянии усталости, поскольку вы попросту уснёте и ничего не запомните. Если у вас ещё нет электронной читалки — обязательно купите.
2. **Лёгкое чтение** — чтение менее серьёзной литературы вроде книг о мотивации, продуктивности, Soft Skills. Всё это зря недооценивается некоторыми программистами. Эти книги не требуют большой концентрации внимания. Да, это совершенно не о языке С++, но это о том, как вообще что-то делать и всё-таки сделать. Хорошо читается перед сном.
3. **Подкасты** — хорошо идут, когда нужно переключиться с чего-то одного на другое, или во время шоппинга. Помогают взглянуть на что-то неожиданное. Тренируют умение слушать и понимать услышанное, что может быть полезным умением (например, для участия в совещаниях). Если английский язык для вас не родной — вы можете услышать как произносятся термины и имена. Я рекомендую послушать [CppCast][1] или [Software Engineering Radio][2] — я был приятно удивлён широким охватом их тем. Первый эпизод вышел в 2006-ом году, подкаст наполовину состоит из истории программной инженерии и наполовину из теории (паттерны, проблемы, решения и т.д.)
4. **Видео и лекции** — [CppCon][3], [CppNow][4], [Meeting C++][5], [ACCU Conference][6] для начала. Там просто ошеломляющее количество интересных докладов. В отличии от подкастов это требует визуального внимания и концентрации, но и выучить в результате можно больше. Я думаю просмотр 2-5 видео в неделю вполне достижимо. **Совет**: увеличивайте скорость аудио/видео — мозг быстро привыкает к этой скорости и вы сможете услышать больше за меньшее время.
5. **Обсуждения, форумы, твиттер** — этот канал обмена информацией требует меньше всего концентрации. Вы можете быстренько просмотреть дискуссии, ленту твиттера в поисках чего-то интересного — просто убивая время. Если что-то нашлось — можно добавить это в список для чтения позже. Чем это всё полезно — огромным разнообразием людей, мнений, подходов, задач и решений. Хороший способ разогнать свой мозг весьма случайной информацией. Вот, например, мой список [Core C++][7] чтобы следить за значимыми в мире С++ разработчиками. А ещё есть несколько страниц и групп в Facebook и неплохие [обзоры от Jens Weller][8]. Для дискуссий о С++ есть [раздел на Реддите][9] (прим. переводчика: а ещё есть [хаб на Хабрахабре][10]). Ну и, конечно, [группы][11] комитета по стандартизации C++
6. **Блоги и статьи** — обычно занимает 5-10 минут чтобы прочитать среднюю статью. Если встречается более глубокая статья — можно пометить её для чтения «когда я буду сконцентрирован». По моим наблюдениям выходит 5-10 хороших статей в неделю и не так сложно прочесть их все.

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

[1]: http://cppcast.com/
[2]: http://www.se-radio.net/
[3]: https://www.youtube.com/user/CppCon
[4]: https://www.youtube.com/user/BoostCon
[5]: https://www.youtube.com/user/MeetingCPP
[6]: https://www.youtube.com/channel/UCJhay24LTpO1s4bIZxuIqKw
[7]: https://twitter.com/DVMirchev/lists/core-c/members
[8]: https://meetingcpp.com/index.php/blogroll.html
[9]: https://www.reddit.com/r/cpp/
[10]: https://habrahabr.ru/hub/cpp/
[11]: https://groups.google.com/a/isocpp.org/forum/#!forumsearch/SG
[12]: https://habrahabr.ru/post/301466/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Создание in-memory кэша первого уровня для .NET-клиентов StackExchange.Redis
habra.16
habrabot(difrex,1) — All
2016-05-23 19:00:02


Джонатан Карди написал .NET-библиотеку StackRedis.L1 с открытым исходным кодом, которая позволяет создавать кэш первого уровня для Redis. Иными словами, используя библиотеку StackExchange.Redis в .NET-приложении, вы можете подключить к ней StackRedis.L1 для ускорения работы за счет локального кэширования данных в оперативной памяти. Это позволяет избежать лишних обращений к Redis в тех случаях, когда данные не подвергались изменениям. Библиотека доступна на GitHub и NuGet. В этой статье рассказывается о том, как и почему она была создана. ![][1] [Читать дальше →][2]

[1]: https://habrastorage.org/files/67b/6b9/7ca/67b6b97cacd146f2805bcbeac8b54825.jpg
[2]: https://habrahabr.ru/post/301222/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Применение статистических критериев при решении задач обнаружения в радиотехнике
habra.16
habrabot(difrex,1) — All
2016-05-23 19:00:02




### Аннотация

В статье рассмотрены основы статистической обработки сигналов и методы их оптимальной обработки\* на фоне шума.

*Под оптимальной обработкой в радиолокации понимают такую операцию над входной реализацией**, приводящей к повышению вероятности правильно обнаружения полезного сигнала, как правило, известной формы, при условии наличия во входной реализации шума в виде случайного процесса с известным или неизвестным законом распределения.
**Процесс наблюдаемый на входе приёмника. Строго говоря, назвать его «Входной сигнал» нельзя, так как в теории связи «Шум» и «Сигнал» — антонимы.





### Введение

Основной задачей радиотехники является приём, передача и обработка информации с использованием в качестве переносчика – радиосигнала. Главное требование, предъявляемое к радиотехническим системам – получение своевременной и достоверной информации от источника к потребителю. Однако этому мешает физика принципов работы приёмопередающих устройств и среды распространения сигнала, суть которой заключается во флюктуации физических параметров системы и случайным значением принимаемого сигнала, имеющего шумовую составляющую, также относящуюся к стохастическим процессам. На текущий момент, самый эффективный способ различения полезных сигналов на фоне шумов и помех является оптимальная обработка, реализуемая, как правило, сравнением принимаемой входной реализации с априорно известной формой полезного сигнала. При этом шумы, которые по своей природе процесс слабокоррелированный, вносят меньший вклад в величину, показывающую степень этого сравнения и называющуюся коэффициентом корреляции. Таким образом, любая задача обнаружения сводится к проверке минимум двух гипотез. В общем случае задача обнаружения состоит из двух гипотез: H\_0 – сигнал отсутствует на входе приёмного устройства, H\_1 – сигнал присутствует на входе приёмного устройства. Различные алгоритмы обнаружения обеспечивают различную вероятность правильного обнаружения P\{d\_1/H\_1\} при различных прочих статистических параметрах. Для сравнения эффективности алгоритмов обнаружения существуют критерии, а так как обрабатываются вероятностные величины, то характер этих критериев статистический. Иными словами критерий можно определить как мерило сравнения. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/301476/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] API к zadarma.com на perl и python
habra.16
habrabot(difrex,1) — All
2016-05-23 19:30:02


![][1] У zadarma.com есть [API][2] к их сервисам на языке php, но на моих серверах этот язык отсутствует. Ставить php ради обращений к задармам желания не было. Поискал в интернете не нашел ничего для perl и python. Написал для себя, что получилось под катом. [Читать дальше →][3]

[1]: https://habrastorage.org/files/4cb/118/c16/4cb118c165274212a4d1344fae1783f4.png
[2]: https://habrahabr.ru/company/zadarma/blog/264279/
[3]: https://habrahabr.ru/post/301356/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Невизуальные методы защиты сайта от спама. Часть 3. Повторы
habra.16
habrabot(difrex,1) — All
2016-05-23 20:00:02


Продолжение статьи [Невизуальные методы защиты сайта от спама][1]

# Часть 3. Повторы подстрок

Как уже говорилось, невизуальные методы защиты сайта от спама используют анализ текста. Один из часто встречающихся сигналов спама — это наличие повторяющихся строк. Как всегда, приведённые примеры взяты из реальных данных компании [CleanTalk][2]. Поиск таких повторов должен быть минимально ресурсоёмким. Лучше, если он будет вызываться после тестов из 1 и 2 частей статьи, которые отсеют явный спам и приведут текст к виду, пригодному для анализа. Здесь я приведу некоторую статистику, а также пример кода. [Читать дальше →][3]

[1]: https://habrahabr.ru/company/cleantalk/blog/282586/
[2]: https://cleantalk.org
[3]: https://habrahabr.ru/post/301302/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] PHDays VI: хакеры не смогли взять город целиком
habra.16
habrabot(difrex,1) — All
2016-05-23 20:00:02


[![][1]][2] 4200 человек из разных стран мира стали свидетелями живого и несколько безумного праздника под названием Positive Hack Days VI. За два дня на площадке произошли сотни событий. На первый взгляд, хакеры чувствовали себя полными хозяевами положения. На деле — в условиях максимальной защиты никто не продвинулся дальше периметра DMZ. Возможно, через несколько недель или месяцев город все равно бы пал. Такую защиту не взламывают кавалерийским наскоком. Но зрители не могли наблюдать за растянутой во времени целенаправленной атакой. Они хотели видеть, как топят поселок и жгут провода ЛЭП. Для повышения зрелищности решено было немного снизить уровень безопасности, отключив часть систем. И вот тут все увидели, что такое недостаточное внимание к ИБ. Хакеры использовали любую оплошность: успешно атаковали GSM/SS7, отключали системы умного дома, удаляли резервные копии важных систем, выводили деньги из ДБО. Форум наглядно показал, что бывает с незащищенной критической инфраструктурой. Специалисты по информационной безопасности в силах обеспечить очень высокий уровень защиты без нарушения технологического процесса — но развернуться так, как на PHDays, им дают очень редко. После отключения средств защиты нападающие проникли в технологическую сеть АСУ через корпоративную, атаковали физическое оборудование системы, взломали ГЭС, провели сброс воды, отключили линии электропередачи. Так или иначе, захватить город CityF целиком — и выиграть соревнования — ни одной команде хакеров не удалось. Подробные райтапы и итоги конкурсов ожидаются совсем скоро, а сейчас мы расскажем о нескольких выступлениях второго дня (рассказ о лучших моментах первого дня читайте [здесь][3]). [Читать дальше →][4]

[1]: https://habrastorage.org/files/826/d38/26e/826d3826ed914dc5a02f5dbd63db69a0.png
[2]: https://habrahabr.ru/company/pt/blog/301510/
[3]: http://www.phdays.ru/press/news/62390/
[4]: https://habrahabr.ru/post/301510/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Nginx + OpenSSL 1.0.2h = APLN. Включаем поддержку APLN на Ubuntu 14.04
habra.16
habrabot(difrex,1) — All
2016-05-23 20:00:02


Итак, вкратце опишу суть проблемы: если вы используете HTTP/2 на базе Nginx и Ubuntu 14.x-, то с 31 мая HTTP/2 в Chrome работать перестанет. Но решить проблему достаточно просто. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/301452/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ... 133