RSS
Pages: 1 ... 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 ... 133
[>] Хардфорк биткоина остановлен. Что дальше?
habra.16
habrabot(difrex,1) — All
2017-11-10 14:00:05


Всё биткоин-сообщество с некоторым опасением ожидало проведения хардфорка в течение этого месяца. Цель хардфорка — использовать преимущества нового протокола [Segwit2x][1] в обновлённой инфраструктуре биткоина. Этот протокол позволяет избавиться от ряда существующих проблем, например, увеличить производительность сети. Сейчас она ограничена рядом правил работы блокчейна биткоина.

![][2]

Неожиданно авторы проекта хардфорка [отказались][3] от своих намерений, решив не проводить его для увеличения размера блока. Основная причина — далеко не все представители блокчейн сферы считают нужным проводить хардфорк именно так, как его запланировали разработчики Segwit2x. Это расхождение во взглядах повлияло на то, что даже те игроки рынка, которые поддерживали форк, приветствовали его отмену. В их числе Xapo, Bitmain, Bloq, Blockchain, Shapeshift и ряд других организаций.
[Читать дальше →][4]

[1]: https://segwit2x.github.io/segwit2x-announce.html
[2]: https://habrastorage.org/webt/z-/3e/vg/z-3evggbl0ysn_yjoec7klerqzw.jpeg
[3]: https://news.bitcoin.com/breaking-news-segwit2x-fork-cancelled/
[4]: https://habrahabr.ru/post/339736/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Технические особенности проведения ICO. Начало
habra.16
habrabot(difrex,1) — All
2017-11-10 15:30:05


![][1]



Привет, Хабр! Сегодня мой рассказ пойдёт о техническом опыте проведения ICO на платформе Ethereum перед и во время ICO. Я поучаствовал пока в небольшом количестве проектов, но уже успел собрать некоторый технический бэкграунд. Могу поспорить, технический roadmap по проведению ICO аудитории Хабра будет интересен. Прошу под кат всех заинтересованных.

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

[1]: https://habrastorage.org/webt/hh/a8/4i/hha84ifek4myfkazk2qjfw3dvbg.jpeg
[2]: https://habrahabr.ru/post/342102/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Каков должен быть размер у Thread Pool?
habra.16
habrabot(difrex,1) — All
2017-11-10 16:00:04


В нашей [статье Stream API & ForkJoinPool][1] мы уже рассказывали про возможности изменять размер пула потоков, который мы можем использовать в параллельных обработчиках, использующих Stream API или Fork Join. Надеюсь эта информация вам пригодилась, когда находясь на должности Senior Java Developer, вы смогли увеличить производительность разработанной вами системы, изменив размер пула по умолчанию. Так как наши [курсы][2], в целом, заточены на переход ступеньку выше от джуниора и миддла выше, то часть программы строится исходя из основных вопросов задаваемых на собеседованиях. Один из из которых звучит так: «У вас есть приложение. И есть задача использующая Stream API или Fork Join, которая поддается распараллеливанию. При каких условиях вы можете счесть разумным изменить размер пула потоков заданный по умолчанию? Какой размер вы предложите в этом случае?»

Можете попробовать ответить на этот вопрос сами, прежде чем читать дальше, чтобы проверить собственную готовность к подобному интервью на данный момент.

Чтобы теоретические рассуждения подкрепить настоящими цифрами предлагаем погонять небольшой бенчмарк для стандартного метода Arrays.parallelSort(), реализующего разновидность алгоритма merge sort, и исполняемого на ForkJoinPool.commonPool(). Запустим этот алгоритм на одном и том же большом массиве с различными размерами commonPool и проанализируем результаты.

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

[1]: https://habrahabr.ru/company/otus/blog/338770/
[2]: https://otus.pw/82dr/
[3]: https://habrastorage.org/webt/kn/ax/ri/knaxribo_ca7iynax6dyiazkdds.jpeg
[4]: https://habrahabr.ru/post/342040/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Программа ZeroNights 2017
habra.16
habrabot(difrex,1) — All
2017-11-10 17:00:05


![][1]

Настало время поделиться новостями программы конференции ZeroNights. Мы расскажем о каждом докладе, который можно будет послушать на ZN, предстоящих мастер-классах, [конкурсах][2], а также представим нововведение этого года — Web Village (наконец-то). [Читать дальше →][3]

[1]: https://habrastorage.org/webt/t7/m6/3b/t7m63boloh5anssesupnqaawl4e.jpeg
[2]: https://2017.zeronights.ru/konkursy/
[3]: https://habrahabr.ru/post/341952/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Тестирование глазами разработчика: инструменты, мифы, ситуации
habra.16
habrabot(difrex,1) — All
2017-11-10 18:00:05


![][1]

_Евгений Сафронов, Senior Developer, DataArt_

_«Тестирование можно использовать для того, чтобы доказать наличие ошибок в программе, и никогда — для того чтобы доказать их отсутствие!»
Эдсгер Дейкстра_

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

Тестирование — это проверка работоспособности программы, предмета или любой промышленной разработки. Как и в любом деле, здесь есть свои тонкости и своя философия. Она, наверное, ближе тестировщикам, которые на произведенные нами вещи смотрят деструктивно — они с самого начала думают о том, как сломать предложенный разработчиками продукт. Это не очень типично для пользователей, которые более предсказуемы и обычно находят ошибки, случайно пытаясь сделать с нашей программой что-то нетипичное. У разработчиков подход к программам в принципе другой, но мы должны помнить: тестировщики должны ломать то, что мы создали — это их хлеб. [Читать дальше →][2]

[1]: https://habrastorage.org/webt/na/2i/a0/na2ia0qrxjeejmctkg0qoeyx878.jpeg
[2]: https://habrahabr.ru/post/342098/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Java EE 8: краткий и весьма оптимистичный обзор новых возможностей
habra.16
habrabot(difrex,1) — All
2017-11-10 20:30:06


![][1]

Автор снимка — Сабине Хюрдлер / Fotolia.com

Привет, Хабр!

Когда-то давно, знойным летом 2013 года вы и именно вы убедили нас взяться за работу над замечательной книгой "[Изучаем Java EE 7][2]" Энтони Гонсалвеса, которая выдержала 6 тиражей и стала настоящим бестселлером. Теперь мы всерьез рассчитываем еще до конца года приступить к работе над книгой по Java EE 8 от грамотного и симпатичного специалиста [Себастьяна Дашнера][3].

![][4]

7 ноября господин Дашнер опубликовал статью с собственными размышлениями о перспективах и плюшках Java EE 8. Под катом вашему вниманию предлагается перевод этой статьи с немецкого языка
[Читать дальше →][5]

[1]: https://habrastorage.org/webt/vt/f8/xx/vtf8xxerdln1t2n8b7qgswb0hig.jpeg
[2]: https://www.piter.com/product/izuchaem-java-ee-7
[3]: https://www.informatik-aktuell.de/autoren-cv/sebastian-daschner.html
[4]: https://habrastorage.org/webt/tn/xb/ws/tnxbwsclywbcca7wnbeodacw5vi.jpeg
[5]: https://habrahabr.ru/post/342124/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Универсальный cмарт-контракт мультиподписи в Ethereum
habra.16
habrabot(difrex,1) — All
2017-11-10 23:00:05


Несколько дней назад мы в компании [BitClave][1] прочли о недавнем [инциденте с мультиподписными кошельками][2] компании _Parity Technologies_, решили пригляделся к коду их смарт-контракта. [Свежий пост][3] в блоге компании _Zeppelin Solutions_ детально описывает произошедший инцидент с технической стороны, поэтому мы хотели бы в нашей статье больше сфокусироваться на принципах проектирования смарт-контрактов.

![Ethereum wallet][4]
[Читать дальше →][5]

[1]: https://bitclave.com
[2]: https://medium.com/@ParityTech/security-alert-1fe9d015f1ba
[3]: https://blog.zeppelinos.org/parity-wallet-hack-reloaded/
[4]: https://habrastorage.org/webt/jb/me/yx/jbmeyx7aep8zmlgatsmyiy_oqs8.jpeg
[5]: https://habrahabr.ru/post/342100/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Запуск/отладка Python скриптов в контейнерах LXC/LXD из под VS Code
habra.16
habrabot(difrex,1) — All
2017-11-11 00:30:04


Привет, Хабр!

В этой статье хочется поделится с вами настройкой девелоперского окружения под разработку скриптов на Python и запуск их в изолированном окружении, практически за пару кликов в редакторе [VS Code][1].

В качестве изолированного окружения будет рассмотрена первичная настройка и создание контейнера на базе [LXC][2] под управлением ОС Ubuntu 17.10. Почему не Docker? Сложно ответить, выдать какие-то аргументы. От части концепция виртуализации ОС субъективно ближе по духу, чем виртуализация процессов, но принцип который здесь будет изложен, с некоторыми поправками, подойдет к запуску кода в Docker-контейнерах.

![][3]


### Что вы получите?


* Научитесь запускать в один клик python-скрипты в контейнере, а также удаленный debug из VS Code
* Узнаете как установить LXD, настроить сеть и запустить первый контейнер
* Ознакомитесь с установкой и настройкой редактора исходного кода VS Code, набором расширений которые позволят комфортно писать и отлаживать код.

### Чего здесь не будет?


* Не будет полного обзора LXC/LXD, вам придется самостоятельно найти дополнительную информацию о Linux-контейнерах.
* Не будет рассмотрен python модуль [virtualenv][4] для создания виртуального окружения на хосте разработчика как альтернатива контейнерам.
* Не будет сравнения в духе Docker vs LXD, выводы вы сделаете самостоятельно на основании вашего опыта.[Читать дальше →][5]

[1]: https://ru.wikipedia.org/wiki/Visual_Studio_Code
[2]: https://ru.wikipedia.org/wiki/LXC
[3]: https://habrastorage.org/webt/nq/jl/5x/nqjl5xk37gigjbn8qfqh9yacos8.png
[4]: https://virtualenv.pypa.io/en/stable/
[5]: https://habrahabr.ru/post/342080/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Симулятор машинок Брайтенберга
habra.16
habrabot(difrex,1) — All
2017-11-11 06:00:05


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

[][1]

Итак, что же это такое?

(Осторожно, в статье чрезвычайно много картинок и анимаций!)

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

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

[>] Как быстро настроить email-аутентификацию в Django
habra.16
habrabot(difrex,1) — All
2017-11-11 10:30:04


Всем привет!



Аутентификация пользователей уже давно является типовой задачей. В Django, как и в любом современном вэб-фреймворке, есть отличный механизм аутентификации пользователей.
Однако, этот механизм по умолчанию использует логин в качестве идентификатора, в то время как все мы уже привыкли использовать для входа email.



Когда мне понадобилось реализовать этот функционал, оказалось что существует не так много туториалов, особенно на русском, в которых бы описывалось как сделать регистрацию по email, отправку верифицирующего письма, сброс пароля и другие, в общем то вполне обычные вещи.
Я решил исправить эту несправедливость.



![Django][1]

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

[1]: https://habrastorage.org/webt/un/bp/t7/unbpt7cxokqgbdtwc6vr_5cimqq.jpeg
[2]: https://habrahabr.ru/post/341704/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Security Week 45: Эфир замерз в кошельках, миллион фальшивых WhatsApp, бесполезная защита интеллектуальной собственности
habra.16
habrabot(difrex,1) — All
2017-11-11 10:30:04


В мире фанатов технологии блокчейн все очень просто и безопасно. Еще бы, ведь блокчейн так надежен сам по себе, что для обеспечения любых финансовых операций не требует ни регулятора в лице государства, ни банков, ни других надстроек. Мы не будем спорить с тем, что технология лишена многих недостатков и уязвимостей старого мира. Но это вовсе не означает отсутствия у нее собственных слабых мест, которые раньше и вообразить-то было невозможно. В общем, такое дело: из-за уязвимости, обнаруженной в популярном Ethereum-кошельке Parity, замороженными оказались средства в криптовалюте, которые, по разным оценкам, эквивалентны 150-300 миллионам долларов США. [Читать дальше →][1]

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

[>] [Перевод] Как программисты-самоучки в реальности получают работу
habra.16
habrabot(difrex,1) — All
2017-11-11 11:30:05


### Вопрос [с Quora][1]:


_Как программисты-самоучки в реальности получают работу?

Мне 17 лет и я занимаюсь программированием с 14-ти. Основной упор на Java, я получил 5 баллов по предмету AP Computer Science. Я довольно хорошо разбираюсь в Java (синтаксис, основные классы, GUI/JFrame и т.д.) и неплохо знаком с HTML5 и CSS3. Кажется, мне не хватает многих знаний, чтобы реально претендовать на работу в индустрии (например, как работают СУБД и какую из них следует использовать), и мне интересно, как другие программисты изучают такие вещи. Я планирую пойти в колледж по специальности «Разработка программного обеспечения», но меня начинает расстраивать мысль, что колледж — необходимое условие, чтобы получить работу. Есть ли какие-то курсы, которые я пропустил, хотя должен был изучить их, или что-то другое, чего я не сделал?_


### Мой ответ:


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

У программиста-самоучки много общего с тем, кто самостоятельно научился игре на гитаре. Не знаю, играл ли ты когда-нибудь на гитаре, так что объясню, как происходит обучение.
[Читать дальше →][2]

[1]: https://www.quora.com/How-do-self-taught-developers-actually-get-jobs/answer/Brian-Knapp-1
[2]: https://habrahabr.ru/post/342156/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Автоматное программирование. Часть 3. Диаграмма состояний и переходов. Продолжение
habra.16
habrabot(difrex,1) — All
2017-11-11 19:00:05


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

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

[>] [Из песочницы] Централизованный бэкап Mikrotik устройств при помощи bash-скрипта
habra.16
habrabot(difrex,1) — All
2017-11-12 02:30:04


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

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

В целом и общем это полноценный бэкап, его восстановление занимает мало времени и восстанавливает всю конфигурацию. Экспорт конфигурации как способ бэкапа в свою очередь отчасти сглаживает эти недостатки, являясь скриптом для ребилда микротика. Суть тут в том, что выводятся все настройки, которые могут быть экспортированы. Преимуществом является то, что можно посмотреть и пощупать, что же там экспортируется, а к недостаткам можно опять же отнести то, что это тоже упирается в модель. но чуть меньше. Иногда дело в количестве интерфейсов, иногда ещё в чём-то. Так же не все настройки могут быть экспортированы в текст(пользователи, файлы на усройстве, ssh-ключи).
[Читать дальше →][1]

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

[>] Sir Markdown. Лекция Яндекса
habra.16
habrabot(difrex,1) — All
2017-11-12 16:00:05


При разработке документации мы руководствуемся не только стандартами, но и удобством её использования. Стандарты определяют состав и форму документации, а формат строится исходя из удобства. Разработчик Сергей Бочаров рассказывает о пути Markdown-документа и о проблемах, которые приходится решать в обмен на простоту использования этого формата.


> У меня иногда складывается впечатление, что не он служит для нас, а мы служим для этого формата. Поэтому — сэр Markdown.
[Читать дальше →][1]

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

[>] [Из песочницы] Как программно управлять WiFi маршрутизатором TP-Link с помощью Python requests
habra.16
habrabot(difrex,1) — All
2017-11-12 20:00:05


Однажды передо мной встала задача реализации программного управления одним из распространенных домашних Wi-Fi маршрутизаторов TP-Link TL-WR841N, у которого, к сожалению, нет интерфейса управления через командную строку (telnet, SSH). Я хотел, чтобы мой Telegram бот, реализованный на Python на базе SBC в локальной домашней сети, на основе моих команд выполнял следующие функции управления маршрутизатором:

* Перезагрузка маршрутизатора
* Открытие/закрытие NAT Port Forwarding к внутренним WEB-сервисам
* Открытие/закрытие удаленного доступа к маршрутизатору из WAN (интернет)
* Определение устройств, зарегистрированных в локальной WiFi сети маршрутизатора[Читать дальше →][1]

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

[>] Инстанцируем java.lang.Class
habra.16
habrabot(difrex,1) — All
2017-11-12 22:00:05


![][1]



Конструктор `java.lang.Class` является одной из самых охраняемых сущностей в языке Java. В спецификации чётко сказано, что объекты типа `Class` может создавать только сама JRE и что нам тут делать нечего, но так ли это на самом деле?



Предлагаю погрузиться в глубины Reflection API (и не только) и выяснить, как там всё устроено и насколько трудно будет обойти имеющиеся ограничения.

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

[1]: https://habrastorage.org/webt/qx/lo/c2/qxloc2zz5bwezenjtg1d4o-rfg0.jpeg
[2]: https://habrahabr.ru/post/341930/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] По следам CyberCrimeCon 2017: Тенденции и развитие высокотехнологичной преступности
habra.16
habrabot(difrex,1) — All
2017-11-12 22:30:04


Десятого октября в Москве прошла ежегодная конференция Group-IB [CyberCrimeCon 2017][1]. В этом году эксперты отрасли — специалисты по кибербезопасности из банковской сферы, Интерпола, полиции Европы — обсуждали новые цели хакеров, говорили об эволюции атак и изучали практические кейсы.

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

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

[1]: https://www.youtube.com/watch?v=iGUXNaXmjN0
[2]: https://www.group-ib.ru/2017-report.html
[3]: https://habrastorage.org/webt/6s/ov/8f/6sov8fox1uocemvrtdqt6guxcae.png
[4]: https://habrahabr.ru/company/group-ib/blog/341812/
[5]: https://habrahabr.ru/post/341812/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Обновляемые смарт-контракты Ethereum
habra.16
habrabot(difrex,1) — All
2017-11-12 23:00:05


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

Постараемся разобрать несколько подходов, которые все же позволяют менять смарт-контракты.
[Читать дальше →][1]

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

[>] Как создать криптовалюту на Exonum: краткое руководство
habra.16
habrabot(difrex,1) — All
2017-11-13 00:00:05


Exonum — это фреймворк с открытым исходным кодом для создания приложений на основе блокчейна. Он ориентирован на работу с закрытыми блокчейнами и применим в любых сферах: FinTech, GovTech и LegalTech.

Сегодня мы проведем небольшой обзор решения, а также расскажем, как построить простую криптовалюту с использованием Exonum. Весь код, приведенный ниже, вы [найдете в репозитории][1] на GitHub.

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

[1]: https://github.com/exonum/cryptocurrency-advanced
[2]: https://habrastorage.org/webt/i6/ou/km/i6oukmq7a8fborubepuivlpriv0.png
[3]: https://habrahabr.ru/company/bitfury/blog/342208/
[4]: https://habrahabr.ru/post/342208/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] «Лицо без шрама» или первые шаги в Multicad.NET API 7 (для Nanocad 8.1)
habra.16
habrabot(difrex,1) — All
2017-11-13 10:30:05


Волею судеб сложилось так, что для одного из моих хобби, мне понадобилось ковыряться в API к отечественной САПР [Nanocad][1], при этом, не имея каких-то практических навыков в разработке для САПР.

И если пару лет назад в аналогичной ситуации, когда я чисто ради любопытства решил посмотреть API для Revit, проблем вообще никаких не возникало, то с Нанокадом было всё не так просто.

В память и со всем уважением к Михаилу Николаевичу, можно сказать: «Наберите воздуха в грудь…» эти американцы разместили у себя на сайте в открытом доступе… [инструкцию по началу работы][2]! Какие же они там все ту… в общем вы поняли, это вам не «лук в колготках хранить».

Но мы с вами как порядочные люди не будем ругать людей, которые дали нам бесплатно вполне вменяемый продукт и доступ к средствам разработки, просто попробуем им немножко помочь, тем более что последняя публикация по MultiCad. NET API была [в блоге Nanosoft][3] на Хабре, почти два года назад и надо немного заполнить вакуум.

К сожалению, как полный новичок в этом вопросе я не смогу дать вам материал действительно достойного качества, но по крайней мере мы рассмотрим те вопросы, на которых у меня сразу случился «затык». Получится, как и в прошлом [цикле по Data Science][4] статья от новичка – новичкам.

План примерно такой: пару слов о Нанокад, немного в целом о программировании под Нанокад и в конце написание примитивной команды с помощью MultiCAD .NET API 7 (для Nanocad 8.X).

Итак, прячем чертежи в тубус, убираем кульманы, запихиваем лекала на антресоль и милости прошу под кат.

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

[1]: http://www.nanocad.ru/
[2]: https://knowledge.autodesk.com/ru/support/revit-products/learn-explore/caas/CloudHelp/cloudhelp/2014/RUS/Revit/files/GUID-8EB25D2A-3CAF-486A-BA8E-C2BEF3DB68F6-htm.html
[3]: https://habrahabr.ru/company/nanosoft/blog/269203/
[4]: https://habrahabr.ru/post/331118/#REF
[5]: https://habrastorage.org/webt/rb/74/xv/rb74xv1nactakkmjgzjsrqdjohi.png
[6]: https://habrahabr.ru/post/342186/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Варианты operator<< для логгера
habra.16
habrabot(difrex,1) — All
2017-11-13 10:30:05


Уважаемые хабровчане, у меня родилась публикация — вопрос. С удовольствием выслушаю вашу критику в комментариях.



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

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

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

[>] [Перевод] Kali Linux: настройка и сборка ISO-образов
habra.16
habrabot(difrex,1) — All
2017-11-13 15:00:08


Загрузка Kali Linux со съёмного носителя информации полезна во многих ситуациях. В самом простом виде такой носитель, в формате DVD-диска или флэшки, создают, используя стандартный ISO-образ системы. Однако, куда больше возможностей даёт сборка собственных образов и создание загрузочных носителей с постоянным хранилищем данных. Кроме того, иногда могут пригодиться образы системы, настроенные особым образом. Всему этому посвящены третий и четвёртый разделы девятой главы книги «[Kali Linux Revealed][1]», перевод которых мы публикуем в этом материале.

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

[1]: https://kali.training/introduction/kali-linux-revealed-book/
[2]: https://habrastorage.org/webt/m-/jk/s8/m-jks8sgbnzfvx3zx6pdl7jjlsa.jpeg
[3]: https://habrahabr.ru/company/ruvds/blog/341882/
[4]: https://habrahabr.ru/post/341882/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настройка двухфакторной аутентификации в VMware Horizon View 7 c использованием OTP и сервера JAS
habra.16
habrabot(difrex,1) — All
2017-11-13 17:30:05


В нашей прошлой [статье][1] мы рассказывали о настройке двухфакторной аутентификации в VMware Horizon View на основе PKI-инфраструктуры и x509-сертификатов. Сегодня рассмотрим другой вариант 2FA-аутентификации — одноразовые пароли (OTP). Использование PKI-технологии, возможно, более надежное, но в наш век всеобщей мобильности и тенденции BYOD, когда пользователям нужно получать доступ к информационным ресурсам с любых устройств, включая мобильные, использование технологии PKI не всегда удобно, а иногда совсем невозможно. Поэтому аутентификация по одноразовым паролям (OTP) набирает всё большую популярность.
[Читать дальше →][2]

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

[>] Pediatric Bone Age Challenge. Deep Learning и много, много костей
habra.16
habrabot(difrex,1) — All
2017-11-13 17:30:05


#### Cоревнование по определению костного возраста. Заметки участника


6-го октября на радары [Володи Игловикова][1] попал очень интересный [конкурс][2], организованный американскими рентгенологами из The Radiological Society of North America ([RSNA][3]) и Radiology Informatics Committee ([RIC][4]), и он бросил клич в сообществе [ODS.ai][5]

![][6]

Целью конкурса было создание автоматической системы для определения костного возраста по рентгеновским снимкам руки. Костный возраст используется в педиатрии для комплексной оценки физического развития детей, и его отклонение от хронологического помогает выявить нарушения в работе различных систем организма. Когда дело касается медицинских проектов, меня уговаривать не надо, но это соревнование стартовало в августе и вступать в него за 8 дней до окончания выглядело авантюрой. Чтобы хотя бы начать препроцессинг снимков, требовались маски рук, и Володя сделал их за несколько дней, отличного качества, и поделился с остальными. Как он так быстро справился с этой тяжёлой задачей, включавшей ручную разметку – загадка, и об этом он, возможно, напишет сам. С масками затея уже не выглядела безнадёжной, я решился участвовать и в конечном счёте успел реализовать почти все планы.


### Задача


[][7][Костный возраст][8] (bone age) — это условный возраст, которому соответствует уровень развития костей детей и подростков. Формирование скелета происходит в несколько стадий. Это используется в педиатрии для сравнения костного возраста с хронологическим, что позволяет вовремя заметить нарушения в работе эндокринной системы и системы обмена веществ.

Для определения костного возраста в основном используются две методики — GP Грейлиха и Пайла (Greulich and Pyle) и TW2 Таннера, Уайтхауза и Хили (Tanner, Whitehouse, Healy), разработанные во второй половине XX века. Обе методики основаны на рентгенограмме кисти и лучезапястного сустава. Благодаря большому количеству участков растущей ткани в костях и ядер окостенения, [Читать дальше →][9]

[1]: https://www.linkedin.com/in/iglovikov/
[2]: http://rsnachallenges.cloudapp.net/competitions/4#learn_the_details
[3]: https://www.rsna.org/
[4]: https://www.rsna.org/Radiology_Informatics_Committee.aspx
[5]: http://ods.ai/
[6]: https://habrastorage.org/webt/tt/eh/mq/ttehmqxcmewoamug1jnbuc-90r4.jpeg
[7]: https://habrastorage.org/webt/sg/qj/ye/sgqjye-xfs4axhj1skgn6ouqnoq.png
[8]: http://www.apreka.ru/?i=opredelenie_kostnogo_vozrasta
[9]: https://habrahabr.ru/post/341408/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Обнаружение птиц с помощью Azure ML Workbench
habra.16
habrabot(difrex,1) — All
2017-11-13 20:00:05


Задумывались ли вы, что перед биологами, помимо всего прочего стоит ряд важных задач? Им необходимо анализировать огромные объёмы информации для отслеживания динамики популяции, выявления редких видов и оценки воздействия. Под катом мы хотим рассказать вам о проекте по идентификации красноногих моевок на фотографиях, сделанных с помощью камер слежения. Вы узнаете подробности о разметке данных, обучении модели на платформе Azure Machine Learning Workbench с использованием Microsoft Cognitive Toolkit (CNTK) и Tensorflow, а также развертывание веб-службы прогнозирования.

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

[1]: https://habrastorage.org/webt/py/m7/f5/pym7f52dnmq38wmu7c9hyybf4xc.jpeg
[2]: https://habrahabr.ru/post/342056/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Андрей Карпов считает, что код проекта Manticore качественнее, чем код проекта Sphinx
habra.16
habrabot(difrex,1) — All
2017-11-13 22:00:05


![Sphinx vs Manticore][1]Мои читатели попросили сравнить проекты Manticore и Sphinx с точки зрения качества кода. Я могу сделать это только одним освоенным мною способом — проверить проекты с помощью статического анализатора PVS-Studio и посчитать плотность ошибок в коде. Итак, я проверил C и C++ код в этих проектах и, на мой взгляд, качество кода Manticore выше, чем качество кода Sphinx. Естественно, это очень узкий взгляд, и я не претендую на достоверность своего исследования. Однако меня попросили, и я сделал сравнение так, как умею.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/5b6/959/340/5b6959340a03d3c576e7d97ad0677b82.png
[2]: https://habrahabr.ru/post/342298/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Избранные главы теории управления на пальцах: линейные наблюдатели динамических систем
habra.16
habrabot(difrex,1) — All
2017-11-14 07:00:04


Продолжаю писать о теории управления «на пальцах». Для понимания текущего текста необходимо прочитать две предыдущие статьи:

1. [Методы наименьших квадратов][1]
2. [Линейно-квадратичный регулятор, вводная][2]
3. **Линейно-квадратичный регулятор и линейные наблюдатели**
Я совсем не являюсь специалистом в теории управления, лишь читаю учебники. Моя задача — понять теорию и применить на практике. В этой статье только теория (ну, немножко сопутствующего кода), в следующей будем разговаривать о практике, маленький кусочек которой можно посмотреть тут:


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

[1]: https://habrahabr.ru/post/277275/
[2]: https://habrahabr.ru/post/277671/
[3]: https://habrahabr.ru/post/341870/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как сделать Public API, которым будут пользоваться
habra.16
habrabot(difrex,1) — All
2017-11-14 09:30:10


Во фронтенде практически безраздельно правит OpenSource, а с недавних пор набирает популярность компонентный подход. Вроде бы всё чудесно. Небольшим компаниям компонентный подход помогает переиспользовать код, а крупным компаниям выравнивать UX во всей линейке продуктов, сервисов и прочего. И вот мы все такие замечательные крутые разработчики пилим свои фреймворки, библиотеки и виджеты, радостно полагая, что если они решают наши задачи, то решают и проблемы окружающего мира. Мы выкладываем их в паблик, ожидая благодарных пользователей, звезд на GitHub, скачиваний на NPM-е. Но почему-то одни библиотеки взлетают, а другие остаются незамеченными и позабытыми.

![][1]
[Почему же так происходит?][2]

[1]: https://habrastorage.org/webt/59/e8/af/59e8affe1f0c2414235007.jpeg
[2]: https://habrahabr.ru/post/340524/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настройка Jail в FreeBSD 11.1
habra.16
habrabot(difrex,1) — All
2017-11-14 10:30:04


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


На написание данной публикации меня подтолкнул тот факт, что в сети интернет крайне мало информации по администрированию Jail в FreBSD. Можно конечно найти отличные публикации на эту тему, но они, в основном, по большей части были написаны много лет назад, и не затрагивают новые возможности Jail и самой операционной системы FreeBSD.
Публикацию разделю на две части. В первой части пойдёт речь о подготовки и настройки FreeBSD, а во второй части пойдёт речь непосредственно о создании Jail.
[Читать дальше →][1]

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

[>] Как следить за трендами на GitHub
habra.16
habrabot(difrex,1) — All
2017-11-14 11:30:04


![Logo][1]



В разделе [trending][2] на GitHub отображается список проектов, активно набирающих звезды в течение дня, недели или месяца. Все самое интересное, что появляется в open source для каждого языка программирования, всегда оказывается в этом списке. Сегодня хочу поделиться способом, как с помощью GitHub уведомлений подписаться на появление новых «звездных» проектов и не пропустить что-нибудь полезное для себя.
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/s2/su/w1/s2suw1yclfdvayxnppzo_ymomga.png
[2]: https://github.com/trending
[3]: https://habrahabr.ru/post/342174/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Играем с Nextgen-антивирусом от Palo Alto Networks: он инжектирует свои dll в исполняемые процессы типа *.exe
habra.16
habrabot(difrex,1) — All
2017-11-14 11:30:04


![][1]

Естественно, мы взялись его тестировать, потому что такого зверя ещё не видели.

Жила-была компания «Пало Альто», которая делала довольно неплохие межсетевые экраны уровня enterprise. Далее, в соответствии с технологическим трендом, в состав линейки решений вендора вошла песочница, как облачная, так и частная. До определённого момента и потоковые файерволы, и песочницы на входе закрывали задачу обеспечения ИБ. Но со временем и этого стало мало — появилась концепция «непрерывной защиты», которая требовала для полного счастья ещё и защиты конечных машин, так называемые end-point-решения. «Пало Альто» купила компанию Cyvera и её продукт допилила под себя. Вот так появился Трапс, «антивирус нового поколения».

Трапс инжектирует в исполняемые процессы (например, \*.exe) свой код, позволяющий запускать всё в режиме своего рода маленького гипервизора, и смотрит за использованием памяти. Сигнатуры он не проверяет, только ловит странное поведение подконтрольного ПО.

**Нет ничего смешнее, чем антивирус, который ведёт себя как вирус и работает даже под WinXP.** Эта штука и есть Traps.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/ql/ew/kc/qlewkc5wvrcfmera9jrqgx9mndu.jpeg
[2]: https://habrahabr.ru/post/342314/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новый выпуск Oh, My Code — Облако, Perl и хорошие программисты
habra.16
habrabot(difrex,1) — All
2017-11-14 15:30:05


Несколько месяцев назад мы запустили серию интервью Oh, My Code на канале Технострим. Пришло время нового выпуска. На этот раз мы расскажем о том, как сделано Облако Mail.Ru, почему Perl не умер и что такое хороший программист.




Ведущий программы — технический директор медиапроектов Павел Щербинин, гость — архитектор Облака Mail.Ru Владимир Перепелица. Ниже перечислены ключевые вопросы, ответы на которые вы найдете в очередном выпуске Oh, My Code:


* Умер ли Perl?
* Как написать крутое резюме?
* Каких программистов берут в Облако?
* Как пройти собеседование, чтобы получать 200 000 рублей?
* Зачем становиться техническим директором и снова уходить в разработку? [Читать дальше →][1]

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

[>] Hackquest 2017. Results & Writeups
habra.16
habrabot(difrex,1) — All
2017-11-14 17:30:05


[![image][1]
][2]



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

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

[1]: https://habrastorage.org/webt/rm/yv/a-/rmyva-5jaqdlglbdencvpjafjli.jpeg
[2]: https://habrahabr.ru/company/dsec/blog/342224/
[3]: https://habrahabr.ru/post/342224/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Мегафон-Райффайзенбанк — первая в России сделка по ценным бумагам на блокчейне
habra.16
habrabot(difrex,1) — All
2017-11-15 10:00:07


В конце сентября 2017 года мне и [gelbplaneten][1] удалось поучаствовать в подготовке и проведении первой в России [сделки по ценным бумагам с использованием блокчейн-технологии][2].

Проект проводился НРД под руководством Александра Яковлева, программная реализация была разработана компанией [Altoros][3], архитектор — [Олег Абдрашитов][4].

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

[1]: https://habrahabr.ru/users/gelbplaneten/
[2]: https://www.vedomosti.ru/technolo%20gy/articles/2017/10/01/736030-megafon-obligatsii
[3]: http://altoros.com
[4]: https://www.altoros.com/training-team/oleg-abdrashitov.html
[5]: https://habrahabr.ru/post/341850/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Пишем x86-64 комплятор JIT с нуля в стоковом Python
habra.16
habrabot(difrex,1) — All
2017-11-15 10:30:05


В этой статье я покажу, как написать рудиментарный, нативный x86-64 [just-in-time компилятор (JIT)][1] на CPython, используя только встроенные модули.

Код предназначен для UNIX-систем, таких как macOS и Linux, но его должно быть легко транслировать на другие системы, типа Windows. Весь код опубликован на [github.com/cslarsen/minijit][2].

Цель — сгенерировать в рантайме новые версии нижеприведённого ассемблерного кода и выполнить их.

48 b8 ed ef be ad de movabs $0xdeadbeefed, %rax
00 00 00
48 0f af c7 imul %rdi,%rax
c3 retq
В основном, мы будем иметь дело с левой частью кода — байтовой последовательностью `48 b8 ed ...` и так далее. Эти 15 байтов в [машинном коде][3] составляют функцию x86-64, которая умножает свой аргумент на константу [`0xdeadbeefed`][4]. На этапе JIT будут созданы функции с разными такими константами. Такая надуманная форма [специализации][5] должна продемонстрировать базовую механику JIT-компиляции.
[Читать дальше →][6]

[1]: https://en.wikipedia.org/wiki/Just-in-time_compilation
[2]: https://github.com/cslarsen/minijit
[3]: https://en.wikipedia.org/wiki/Machine_code
[4]: https://en.wikipedia.org/wiki/Magic_number_(programming)
[5]: https://en.wikipedia.org/wiki/Run-time_algorithm_specialisation
[6]: https://habrahabr.ru/post/342410/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Раскрашиваем чёрно-белую фотографию с помощью нейросети из 100 строк кода
habra.16
habrabot(difrex,1) — All
2017-11-15 12:00:04



_Перевод статьи [Colorizing B&W Photos with Neural Networks][1]._

Не так давно Амир Авни с помощью нейросетей [затроллил на Reddit ветку /r/Colorization][2], где собираются люди, увлекающиеся раскрашиванием вручную в Photoshop исторических чёрно-белых изображений. Все были изумлены качеством работы нейросети. То, на что уходит до месяца работы вручную, можно сделать за несколько секунд.

Давайте воспроизведем и задокументируем процесс обработки изображений Амира. Для начала посмотрите на некоторые достижения и неудачи (в самом низу — последняя версия).
[Читать дальше →][3]

[1]: https://blog.floydhub.com/colorizing-b&w-photos-with-neural-networks/
[2]: https://www.reddit.com/r/Colorization/
[3]: https://habrahabr.ru/post/342388/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Введение в нейросети
habra.16
habrabot(difrex,1) — All
2017-11-15 12:00:04


![image][1]

Искусственные нейронные сети сейчас находятся на пике популярности. Можно задаться вопросом, сыграло ли громкое название свою роль в маркетинге и применении этой модели. Я знаю некоторых бизнес-менеджеров, радостно упоминающих об использовании в их продуктах «искусственных нейронных сетей» и «глубокого обучения». Так ли рады были бы они, если бы их продукты использовали «модели с соединёнными кругами» или «машины „совершишь ошибку — будешь наказан“»? Но, вне всяких сомнений, искусственные нейросети — стоящая вещь, и это очевидно благодаря их успеху во множестве областей применения: распознавание изображений, обработка естественных языков, автоматизированный трейдинг и автономные автомобили. Я специалист по обработке и анализу данных, но раньше не понимал их, поэтому чувствовал себя мастером, не освоившим свой инструмент. Но наконец я выполнил своё «домашнее задание» и написал эту статью, чтобы помочь другим преодолеть те же самые препятствия, которые встретились мне в процессе моего (всё ещё продолжающегося) обучения.

_Код на R для примеров, представленных в этой статье, можно найти [здесь][2] в [Библии задач машинного обучения][3]. Кроме того, после прочтения этой статьи стоит изучить часть 2, [Neural Networks – A Worked Example][4], в которой приведены подробности создания и программирования нейросети с нуля._
[Читать дальше →][5]

[1]: https://gormanalysis.com/wp-content/uploads/2017/11/intro-to-nnets_sketch3-4.png
[2]: https://github.com/ben519/MLPB/blob/master/Problems/Classify%20Images%20of%20Stairs/intro_to_nnets_article_materials.R
[3]: https://github.com/ben519/MLPB
[4]: https://gormanalysis.com/neural-networks-a-worked-example
[5]: https://habrahabr.ru/post/342334/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Стажеры
habra.16
habrabot(difrex,1) — All
2017-11-15 13:30:11


В последнее время на Хабре наметился мощный тренд, начало которому дал пост «необразованная молодежь» — обсуждаем молодых специалистов, как с позиции работодателя, то есть бизнеса, так и с позиции самих спецов, вчерашних или настоящих студентов. Посмотреть можно [здесь][1] и [здесь][2].

Мы бы хотели поделиться аналитикой по подбору персонала на стажерские позиции, проекты по разработке продуктов и сервисов ИБ. Мы постарались подойти к описанию процесса максимально безоценочно, не вдаваясь в сложные моральные дилеммы формата «отцы и дети». Все мы когда-то были стажерами, молодыми/неопытными и все рано или поздно сталкиваемся с тем, что как в балете говорят, «приходит опыт — уходит прыжок».

В начале сентября было открыто 2 вакансии: стажер-исследователь и стажер-разработчик.

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

[1]: https://habrahabr.ru/company/regionsoft/blog/339284/
[2]: https://habrahabr.ru/post/339022/
[3]: https://habrastorage.org/webt/vy/eg/vw/vyegvwds7-cxqhjuwu--dnoc-rk.png
[4]: https://habrahabr.ru/post/342430/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Расстояние Левенштейна в MySQL и алгоритмы нечёткого поиска средствами PHP
habra.16
habrabot(difrex,1) — All
2017-11-15 14:00:09


Знаменитый советский и российский математик Владимир Иосифович Левенштейн (кстати, ушедший из жизни два с небольшим месяца назад) в начале второй половины прошлого века ввёл понятие _дистанции редактирования_, которым мы пользуемся по сей день в различных сферах — от поисковых систем до биоинформатики. В этой статье мы применим его принцип для **нечёткого поиска** в MySQL (поскольку MySQL на данный момент пока не предлагает встроенного решения), вычислив самый эффективный (т.е. быстрый) способ из нескольких найденных в интернете, построим алгоритм такого поиска и реализуем его на PHP.

![гугл понимает нас][1][Читать дальше →][2]

[1]: https://habrastorage.org/webt/za/9o/ei/za9oeiwzj2gye0ir0l7ukircjly.jpeg
[2]: https://habrahabr.ru/post/342434/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Собери свой Security Operation Center из 5 элементов
habra.16
habrabot(difrex,1) — All
2017-11-15 14:00:09


Привет, Хабр!
Мы тут часто пишем о том, что работа центра мониторинга и противодействия кибератакам невозможна без определенных процессов (мониторинг, реагирование, расследование инцидентов и т.д.) и, конечно, без систем защиты (AV, WAF, IPS и т.д.).
То же самое мы объясняем заказчикам, но они, быстро пересчитывая деньги в кармане, иногда в ответ спрашивают: "А можно нам SOC в базовой комплектации?"
Предлагаем вам представить себя на месте такого заказчика. Под катом 26 аббревиатур и терминов. Проверьте, насколько вы понимаете принципы мониторинга и противодействия кибератакам и выберите всего 5 буквосочетаний, которые смогут надежно защитить компанию.
Внимание! Среди вариантов возможны honeypots :)


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

[1]: https://habrastorage.org/getpro/habr/post_images/d4d/661/191/d4d6611916d4a79158b914daaa82d4eb.gif
[2]: https://habrahabr.ru/post/342386/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Russian AI Cup 2017 — отчет о бета-тесте, старт чемпионата. Хотели StarCraft, получили странный Total War
habra.16
habrabot(difrex,1) — All
2017-11-15 16:00:09


![][1]



Седьмого ноября официально стартовала неделя бета-теста [Russian Ai Cup 2017][2]. Чемпионат ежегодный, и в этом году мы решили предложить участникам проект под названием CodeWars — конкурс по программированию ботов для игры, которую сами участники сходу окрестили «симулятором игрока в RTS». Бета-тест подошел к концу, чемпионат официально стартовал, и под катом мы хотели бы отчитаться, поделиться новостями о том, что же мы теперь можем предложить. Ну и еще раз зазвать всех поучаствовать, не без этого конечно.

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

[1]: https://habrastorage.org/webt/qy/ic/ii/qyiciirwb7n0sutsnksrtabigpe.jpeg
[2]: http://russianaicup.ru/
[3]: https://habrahabr.ru/post/342408/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Эксплуатация криптоуязвимости ROCA может быть проще, чем предполагалось
habra.16
habrabot(difrex,1) — All
2017-11-15 20:00:04


[![][1]][2]

В нашем блоге на Хабре мы уже писали о том, что международная группа ИБ-исследователей [обнаружила критическую уязвимость ROCA][3] (Return of Coppersmith’s Attack) в популярной библиотеке шифрования RSA Library v1.02.013 от Infineon. Ошибка CVE-2017-15361 в алгоритме для генерации простых чисел RSA, делает сгенерированные с помощью библиотеки Infineon ключи шифрования подверженными факторизации — это позволяет злоумышленникам раскрывать секретную часть ключа.

И если вскоре после анонса уязвимости исследователи утверждали, что ее использование для массовых атак будет невыгодно злоумышленникам с экономической точки зрения, то теперь другие независимые эксперты Дэниэл Бернштейн (Daniel J. Bernstein) и Таня Лэнж (Tanja Lange) [опубликовали детальное исследование][4], согласно которому, эксплуатация ROCA на практике может оказаться дешевле и проще, чем предполагалось изначально. [Читать дальше →][5]

[1]: https://habrastorage.org/webt/a7/rs/bw/a7rsbwb1bdtnivogyhvk5_dqckw.png
[2]: https://habrahabr.ru/company/pt/blog/342444/
[3]: https://habrahabr.ru/company/pt/blog/340230/
[4]: https://blog.cr.yp.to/20171105-infineon.html
[5]: https://habrahabr.ru/post/342444/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Пишем x86-64 JIT-комплятор с нуля в стоковом Python
habra.16
habrabot(difrex,1) — All
2017-11-15 21:30:04


В этой статье я покажу, как написать рудиментарный, нативный x86-64 [just-in-time компилятор (JIT)][1] на CPython, используя только встроенные модули.

Код предназначен для UNIX-систем, таких как macOS и Linux, но его должно быть легко транслировать на другие системы, типа Windows. Весь код опубликован на [github.com/cslarsen/minijit][2].

Цель — сгенерировать в рантайме новые версии нижеприведённого ассемблерного кода и выполнить их.

48 b8 ed ef be ad de movabs $0xdeadbeefed, %rax
00 00 00
48 0f af c7 imul %rdi,%rax
c3 retq
В основном, мы будем иметь дело с левой частью кода — байтовой последовательностью `48 b8 ed ...` и так далее. Эти 15 байтов в [машинном коде][3] составляют функцию x86-64, которая умножает свой аргумент на константу [`0xdeadbeefed`][4]. На этапе JIT будут созданы функции с разными такими константами. Такая надуманная форма [специализации][5] должна продемонстрировать базовую механику JIT-компиляции.
[Читать дальше →][6]

[1]: https://en.wikipedia.org/wiki/Just-in-time_compilation
[2]: https://github.com/cslarsen/minijit
[3]: https://en.wikipedia.org/wiki/Machine_code
[4]: https://en.wikipedia.org/wiki/Magic_number_(programming)
[5]: https://en.wikipedia.org/wiki/Run-time_algorithm_specialisation
[6]: https://habrahabr.ru/post/342410/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] LVM + lilo > GPT + EFI (или почему GRUB такой неуклюжий)
habra.16
habrabot(difrex,1) — All
2017-11-16 01:30:04


**TL;DR**: _автор сокрушается о том, что GRUB не может жить полноценно с LVM и с удивлением открывает, что это отлично умеет заброшенный в 2015 году загрузчик lilo._


## MBR?


Мало кто знает и понимает, что MBR по сути своей есть величайшая ошибка человечества. Ну послушайте, ну серьезно, кому в голову пришло смешивать в одном блоке данные, необходимые для загрузки системы и сведения о разделах?

Я еще раз повторю, не надо сейчас мне говорить «так сложилось», а включите логику. MBR ужасна.
[Читать дальше →][1]

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

[>] FPConf 2017. Интервью с Денисом Шевченко
habra.16
habrabot(difrex,1) — All
2017-11-16 09:00:04


Привет!

Начинаем публиковать разговоры со спикерами [FPConf 2017][1]. [Павел Аргентов][2] расспросил самого зажигательного евангелиста ФП и Haskell [Дениса Шевченко][3].

![][4]

**В начале разговора — расскажи немного о себе.**

Меня зовут Денис Шевченко. Я основатель сообщества ruHaskell. В данный момент тружусь Haskell-разработчиком в компании IOHK. Бывший С++-разработчик, ныне Хаскелист, начинающий ФП-евангелист и автор незаконченной книги “Haskell по-человечески”.
[Читать дальше →][5]

[1]: http://fpconf.ru/
[2]: https://medium.com/@argent_smith
[3]: https://dshevchenko.biz/
[4]: https://habrastorage.org/webt/eu/ml/2j/euml2jn7ydha7yviumitj0lzc_4.jpeg
[5]: https://habrahabr.ru/post/342470/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Эксплуатация Heap Overflow с использованием JavaScript
habra.16
habrabot(difrex,1) — All
2017-11-16 09:30:03


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


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


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


В этой статье представлен новый метод эксплуатации переполнения кучи (heap
overflows) в интерпретаторах JavaScript. Вкратце, для получения heap
overflow можно использовать команды JavaScript для обеспечения надежного отображения указателя функции сразу после переполнения буфера. В данном учебном исследовании используется техника для Safari, которую авторы использовали для победы в конкурсе CanSecWest 2008 Pwn2Own.
[Читать дальше →][1]

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

[>] [Перевод] Мой первый компилятор на LLVM
habra.16
habrabot(difrex,1) — All
2017-11-16 10:30:06


Это руководство посвящено написанию простейшего компилятора на LLVM. Никакой предварительной подготовки не требуется.

![][1]

Входным языком нашего компилятора будет BF. Это классический «игрушечный» язык для компиляторов, и даже есть компилятор BF в [примерах к LLVM][2]! В этом посте я приведу процесс написания компилятора с пояснениями.
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/st/yp/8e/styp8exrydaiyr7ahvriskqaow4.jpeg
[2]: http://llvm.org/viewvc/llvm-project/llvm/trunk/examples/
[3]: https://habrahabr.ru/post/342456/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новые возможности мониторинга Java приложений в Zabbix 3.4
habra.16
habrabot(difrex,1) — All
2017-11-16 15:00:06


## Что случилось? {#chto-sluchilos}



Вышел долгожданный релиз Zabbix 3.4, который принёс много полезных улучшений, среди которых оказались настраиваемые JMX endpoints и гибкое обнаружение MBean’ов.



## Это так круто, да? {#eto-tak-kruto-da}



Если вы используете Zabbix и вам требуется мониторить Java приложения, то да — это может сильно облегчить вам жизнь, потому что раньше приходилось прибегать к различным ухищрениям, а теперь всё работает, как говорится, “из коробки”.



![][1]

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

[1]: https://habrastorage.org/webt/qv/w2/wa/qvw2wa0xxdhcuikbzaz5paw2ef0.png
[2]: https://habrahabr.ru/post/342226/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Dive into ICO
habra.16
habrabot(difrex,1) — All
2017-11-16 15:30:05


![][1]



В статье мы рассмотрим технические аспекты подготовки и проведения ICO. Это продолжение статьи моего коллеги «[Технические особенности проведения ICO. Начало][2]», и здесь мы поговорим подробнее о некоторых технических вопросах, связанных со смарт-контрактами сети Ethereum.

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

[1]: https://habrastorage.org/webt/7p/bf/x2/7pbfx2wcvu87uqisc2lsskjdjtq.jpeg
[2]: https://habrahabr.ru/post/342102/
[3]: https://habrahabr.ru/post/342534/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

Pages: 1 ... 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 ... 133