RSS
Pages: 1 ... 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 ... 133
[>] Простенький скрипт поиска возможно осиротевших файлов проекта
habra.16
habrabot(difrex,1) — All
2017-09-05 06:30:06


Леность ли моя тому причиной или болезненная неприязнь к комбайнам, но у меня как-то не сложились отношения с большими толстыми довольными IDE. Довольствуюсь простым ламповым Geany и несколькими самописными скриптами, количество коих растёт по мере необходимости.

С одной стороны, минусы очевидны — все эти скрипты часто повторяют функционал больших сред разработки; велосипеды — в массы. Но с другой стороны, я получаю ровно то, что нужно и удобно мне. Да и, потом, юниксвейненько получается: понадобилось забить гвозь — берёшь молоток, а не нанимаешь строительный кран с бригадой рабочих и прорабом.
[![][1]][2]
О некоторых таких скриптах решил попробовать писать сюда. Может, кому пригодятся (да и заточить под себя какой-нибудь из них всегда можно). Если нет — ругайтесь в комментариях, учту. Итак.
[Читать дальше →][3]

[1]: https://habrastorage.org/web/b1e/e84/041/b1ee840410324fed8e64933b067eff8b.jpg
[2]: https://habrahabr.ru/post/337140/
[3]: https://habrahabr.ru/post/337140/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Celesta и Flute: Создание бизнес-логики в Java-экосистеме
habra.16
habrabot(difrex,1) — All
2017-09-05 07:30:25


Привет, Хабр! Проект, о котором мы расскажем, с самого начала создавался нами как open-source, но до недавних пор мы использовали его только лишь для своих нужд, не говорили о нём широко и не создавали коммьюнити. Cейчас, спустя несколько лет разработки, мы почувствовали уверенность в том, что настала пора рассказать про него, и надеемся, что он начнёт приносить пользу не только нам.

![Ян Андерсон и Джон Лорд][1]

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

[1]: https://habrastorage.org/web/931/202/2f7/9312022f7c9f44e588db2e501da7a270.png
[2]: https://habrahabr.ru/post/335966/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] BigDL: глубинное обучение — к услугам пользователей больших данных и исследователей данных
habra.16
habrabot(difrex,1) — All
2017-09-05 12:00:04


Большие данные и их анализ играют важнейшую роль в современном мире, где повсеместно используются сети и электронные устройства. Идет непрерывное объединение возможностей больших данных, аналитики и машинного/глубинного обучения. В декабре 2016 года мы создали [BigDL][1] — распределенную библиотеку глубинного обучения с открытым исходным кодом для [Apache Spark][2]. Цель создания этой библиотеки — объединение сообщества глубинного обучения и сообщества больших данных. Далее в этой статье приводится описание недавних усовершенствований в выпуске [BigDL 0.1.0][3] (а также в предстоящем выпуске 0.1.1).

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

[1]: https://github.com/intel-analytics/BigDL
[2]: http://spark.apache.org/
[3]: https://github.com/intel-analytics/BigDL/tree/v0.1.0
[4]: https://habrastorage.org/web/298/900/061/2989000610fe461e82cbb6aa72939080.png
[5]: https://habrahabr.ru/post/337056/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Экскурсия по Музею Истории Компьютеров в Калифорнии, с пользой для разработки. Часть 1. ENIAC, Stretch, CDC6600, IBM/360
habra.16
habrabot(difrex,1) — All
2017-09-05 12:30:05


Господа! Сегодня мы пройдемся с сибирской девушкой Ириной по Музею истории компьютеров в Маунтин-Вью, Калифорния. Причем пройдемся не как туристы, а для принесения пользы России. Я уже писал в [предыдущем посте][1], что один из эффективных способов для студента изучить проектирование процессоров — это взять какой-нибудь древний, но поучительный процессор, найди документацию по его архитектуре (и какую-нибудь информацию по его микроархитектуре), и спроектировать аналог этого процессора на языке описания аппаратуры SystemVerilog (или VHDL, если он вам больше нравится), после чего реализовать процессор на плате ПЛИС / FPGA (какой именно, не важно — Altera / Intel FPGA, Xilinx или Lattice). В качестве учебника для такого упражнения вы можете начать с [Харрис & Харрис][2], после чего продолжить с [книгами для более продвинутой стадии обучения, например Шень-Липасти][3].

Каким образом все это принесет пользу России? Под такие проекты мы собираемся раздавать FPGA платы на [конференции которая пройдет 18-22 сентября в Томске][4]. Туда приедут представители МГУ, МФТИ, МИЭТ, МЦСТ, Imagination Technologies, National Instruments итд. Они будет обсуждать, как обновить программу университетов, чтобы сегодняшние студенты через несколько лет проектировали росийские чипы на уровне передовых западных компаний. Там также будет школа-семинар, на которой будут обсуждать, как делать учебные процессоры — начиная от простейшего [schoolMIPS][5] от [Станислава Жельнио][6] [sparf][7].

Вот первая фотография из музея в Маунтин-Вью — на ней помимо Ирины и ракеты в центре виден небольшой ящичек. Это [ бортовой компьютер космической станции «МИР» ][8], который проектировали инженеры советского объединения «ЭЛАС», которое трансформировалось в современную [зеленоградскую компанию «ЭЛВИС»][9]:

![][10]

Итак, темы для учебных проектов — начиная из дремучих десятилетий середины XX века:
[Читать дальше →][11]

[1]: https://habrahabr.ru/post/336116/
[2]: http://dmkpress.com/catalog/electronics/circuit_design/978-5-97060-522-6/
[3]: https://habrahabr.ru/post/336116/
[4]: http://bit.ly/tomsk2017
[5]: https://github.com/MIPSfpga/schoolMIPS
[6]: https://habrahabr.ru/users/sparf/posts/
[7]: https://habrahabr.ru/users/sparf/
[8]: https://i1.wp.com/www.silicon-russia.com/wp-content/uploads/2015/12/computer_history_museum_mir.jpg
[9]: https://habrahabr.ru/post/329864/
[10]: https://habrastorage.org/getpro/habr/post_images/708/fff/56d/708fff56d3ec18504fb76b94bc5518d2.jpg
[11]: https://habrahabr.ru/post/337164/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Небезопасный cross-origin resource sharing
habra.16
habrabot(difrex,1) — All
2017-09-05 15:00:04


![image][1]


Cross-origin resource sharing — технология современных браузеров, которая позволяет предоставить веб-странице доступ к ресурсам другого домена. В этой статье я расскажу об этой технологии, призванной обеспечить безопасность, или наоборот, поставить веб-приложение под удар.

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

[1]: https://habrastorage.org/getpro/habr/post_images/351/ea9/0c2/351ea90c298977dbffb785426dbf3c8f.jpg
[2]: https://habrahabr.ru/post/337146/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Пишем и парсим на ассемблере MCS-51, как на Бейсике
habra.16
habrabot(difrex,1) — All
2017-09-05 16:30:05


Доброго времени суток, уважаемые.

В свободное от работы время увлекаюсь программирование микроконтроллеров, на ассемблере. Пока вожусь в основном со всякими PIC(12,16) и AVR, но и MCS-51 не брезгую, тем более что именно с них я собственно и начал. Уровень мой — «вечно начинающий». Это типа светодиодиком уже умею мигать, даже по таймеру.
[Читать дальше →][1]

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

[>] Передаю привет разработчикам компании Yandex
habra.16
habrabot(difrex,1) — All
2017-09-05 16:30:05


![ClickHouse and PVS-Studio][1]


Приблизительно раз в полгода нам пишет кто-то из сотрудников компании Yandex, интересуется лицензированием PVS-Studio, качает триал и пропадает. Это нормально, мы привыкли к медленным процессам продажи нашего анализатора в крупные компании. Однако, раз представился повод, будет не лишним передать разработчикам Yandex привет и напомнить об инструменте PVS-Studio.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/1c9/68d/599/1c968d599829385d45645421b9b4493c.png
[2]: https://habrahabr.ru/post/337182/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Новости онлайн-курсов Mail.Ru Group: «Программирование на Python»
habra.16
habrabot(difrex,1) — All
2017-09-05 19:30:05


![][1]



Вчера мы запустили на Coursera новый онлайн-курс «[Программирование на Python][2]», чтобы научить всех желающих программировать на этом языке. Курс подойдет для всех, кто уже имеет какой-то опыт программирования и хочет изучить Python. Курс читают разработчики, применяющие Python в проектах, которыми ежедневно пользуются миллионы людей. Ключевая особенность курса — он покрывает все необходимые для ежедневной работы темы.

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

[1]: https://habrastorage.org/web/caa/869/afe/caa869afe63d48139c183747233fa108.jpg
[2]: https://www.coursera.org/learn/programming-in-python
[3]: https://habrahabr.ru/post/336880/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Идеальная ОС: переосмысление операционных систем для десктопа
habra.16
habrabot(difrex,1) — All
2017-09-05 23:00:06


**TL;DR**: К концу этого эссе я надеюсь убедить вас в следующих фактах. Во-первых, что современные десктопные операционные системы никуда не годятся. Они _**раздутые, тормознутые и напичканы легаси-хламом**_, а кое-как работают только благодаря закону Мура. Во-вторых, что _**инновации в десктопных ОС прекратились около 15 лет назад**_, а основные игроки вряд ли собираются много вкладывать в них снова. И наконец, я надеюсь убедить вас, что мы можем и _**должны начать с нуля**_, усвоив уроки прошлого.


### «Современные» десктопные ОС раздуты


Возьмём Raspberry Pi. За 35 долларов я могу купить отличный компьютер с четырьмя процессорными ядрами, каждое на частоте более _гигагерца_. У него также есть 3D-ускоритель, гагабайт оперативки, встроенные WiFi с Bluetooth и Ethernet. За 35 баксов! И всё-таки для многих задач, которые я хочу на нём запустить, Raspberry Pi ничем не лучше компьютера на 66 _мегагерц_, который был у меня в колледже.

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

[1]: https://habrastorage.org/getpro/habr/post_images/53a/cbd/63b/53acbd63b3d0fa409b6375fe8f3e4d7b.jpg
[2]: https://habrahabr.ru/post/337202/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Переходим на сторону сервера с bem-express
habra.16
habrabot(difrex,1) — All
2017-09-06 00:00:05


_— Сначала вы его отрицаете, потом вы его ненавидите, а потом вы не можете без него жить._
из доклада Артема Курбатова «БЭМ: мастер-класс»



Методология БЭМ существует достаточно долго и принята на вооружение в Google, EPAM Systems, BBC, Альфа-Банке. При этом она все еще вызывает беспокойство у типичного разработчика и менеджера проектов среднего звена.



![][1]



У некоторых смельчаков изучение БЭМ не ушло дальше ограничения возможностей CSS для получения более предсказуемых результатов. И хотя БЭМ давно вышел за пределы верстки, до сих пор на вопрос «Знаете ли вы БЭМ?» можно услышать: «Конечно, это про подчеркивания в классах».



Если ваше представление о БЭМ близко к этому, я отвечу вам словами работодателя при приеме на работу новоиспеченного выпускника: «Забудьте о том, что вы слышали о БЭМ ранее». Методология БЭМ настолько интересна, насколько большинству о ней ничего не известно. Чтобы понять всю прелесть БЭМ, необходимо иметь представление обо всех технологиях, библиотеках, фреймворках и инструментах, которые БЭМ предоставляет. Изучите их, оставайтесь инопланетянином, ребенком, который удивляется тому, с чем взрослые смирились.


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

[1]: https://rawgit.com/godfreyd/bem-in-dynamic/master/static/images/chart.svg
[2]: https://habrahabr.ru/post/337166/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему анализ защищенности Java Script нельзя по настоящему автоматизировать?
habra.16
habrabot(difrex,1) — All
2017-09-06 01:30:05


Почему в случае JavaScript приходится обходиться простыми подходами статического анализа, когда есть более [интересные подходы][1] к автоматическому анализу кода?

В ответ на этот вопрос, мой коллега Алексей Гончаров [kukumumu][2] ответил лаконично: «Java Script это панковский язык» и кинул ссылку на статью Jasper Cashmore [«A Javascript journey with only six characters»][3], которая действительно погружает нас в путешествие в эзотерический мир JSFuck и сразу все ставит на свои места.

Мне настолько понравилось, что я решил перевести статью на русский язык.
[Читать дальше →][4]

[1]: https://habrahabr.ru/company/pt/blog/224547/
[2]: https://habrahabr.ru/users/kukumumu/
[3]: http://www.jazcash.com/a-javascript-journey-with-only-six-characters/
[4]: https://habrahabr.ru/post/337212/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Планировщик ввода / вывода BFQ лучше
habra.16
habrabot(difrex,1) — All
2017-09-06 02:30:05


Планировщик подсистемы ввода и вывода _BFQ_ (Budget Fair Queue) отпочковался от CFQ (Completely Fair Queue) и [дебютировал][1] в списках рассылки разработчиков ядра Linux аж 9 лет назад, но только в версии 4.12 попал в основную ветку. CFQ является дефолтным I/O планировщиком на данный момент.


![][2]





Прежде чем поговорить о принципах работы планировщика ознакомьтесь с [демо-роликом][3] разработчика Paolo Valente, это добавит вам мотивации продолжить. На снимке экрана показан замер старта проигрывателя с 10 фоновыми задачами читать файл с диска для двух планировщиков: CFQ и _BFQ_. Угадайте, который из них так и не стартовал при такой нагрузке?

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

[1]: http://kerneltrap.org/Linux/Budget_Fair_Queuing_IO_Scheduler
[2]: https://habrastorage.org/web/76f/711/e6d/76f711e6de2c4acb8bd3ccf11b117e02.png
[3]: https://www.youtube.com/watch?v=ZeNbS0rzpoY
[4]: https://habrahabr.ru/post/337102/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Ориентация мобильного робота, выбор способа регистрации особых точек изображений
habra.16
habrabot(difrex,1) — All
2017-09-06 08:30:05


[Это предыстория и продолжение статьи:][1]

Дело было вечером...,все статьи на хабре были прочитаны, затеял «небольшой» проект по автономной ориентации робота на RaspberryPi 3. С железом проблем нет, собирается недорого из г-на и палок купленных на ебау деталек, камера с хорошей стеклянной оптикой(это важно для стабильности калибраций), привод камеры вверх, вниз и компас, гироскоп и тд прикрепленные к камере:

![][2]

Существующие системы SLAM не устраивают, или по цене, или по качеству/скорости. Поскольку наработок деталей для Visual SLAM у меня много, решил шаг за шагом писать и выкладывать алгоритмы и код в открытый доступ, с обоснованием причин выбора тех или иных алгоритмов.
[У Вас есть план?][3]

[1]: http://habrahabr.ru/post/336494
[2]: https://habrastorage.org/web/ec5/12e/047/ec512e0475114798a51cec4137e13ca4.jpg
[3]: https://habrahabr.ru/post/337214/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Asterisk, автоматическое определение сотового оператора по номеру телефона даже перенесенных номеров
habra.16
habrabot(difrex,1) — All
2017-09-06 08:30:05


У Asterisk есть свой механизм для работы с базами данных, я Вам расскажу про альтернативный метод работы с базами данных из диалплана Asterisk! Его можно применить не только для работы с базами, но и с любым другим софтом на сервере. Статья про функцию «SHELL». [Читать дальше →][1]

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

[>] [Перевод] Создание языка программирования с использованием LLVM. Часть 9: Добавляем отладочную информацию
habra.16
habrabot(difrex,1) — All
2017-09-06 09:30:12


Оглавление:
[Часть 1: Введение и лексический анализ][1]
[Часть 2: Реализация парсера и AST][2]
[Часть 3: Генерация кода LLVM IR][3]
[Часть 4: Добавление JIT и поддержки оптимизатора][4]
[Часть 5: Расширение языка: Поток управления][5]
[Часть 6: Расширение языка: Операторы, определяемые пользователем][6]
[Часть 7: Расширение языка: Изменяемые переменные][7]
[Часть 8: Компиляция в объектный код][8]
**Часть 9: Добавляем отладочную информацию**
Часть 10: Заключение и другие вкусности LLVM

![][9]


### 9\.1. Введение



Добро пожаловать в главу 9 руководства “Создание языка программирования с использованием LLVM”. В главах с 1 по 8, мы построили маленький язык программирования с функциями и переменными. Что случится, если что-то пойдёт не так, как тогда отлаживать программу?
[Читать дальше →][10]

[1]: https://habrahabr.ru/post/119850/
[2]: https://habrahabr.ru/post/120005/
[3]: https://habrahabr.ru/post/120424/
[4]: https://habrahabr.ru/post/120516/
[5]: https://habrahabr.ru/post/120881/
[6]: https://habrahabr.ru/post/336080/
[7]: https://habrahabr.ru/post/336468/
[8]: https://habrahabr.ru/post/336876/
[9]: https://habrastorage.org/web/6e5/879/803/6e58798030874db09d00f2c502b3b104.png
[10]: https://habrahabr.ru/post/336980/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] 7 правил хорошего тона при написании Unit-тестов
habra.16
habrabot(difrex,1) — All
2017-09-06 14:30:05


![][1]

_“Хорошими манерами обладает тот,
кто наименьшее количество людей
ставит в неловкое положение.”
Дж. Свифт_



Привет, коллеги! Сегодня я бы хотел поговорить о Unit-тестировании и некоторых “правилах” при их написании. Конечно, они неформальные и не обязательны к выполнению, но при их соблюдении всем будет приятно и легко читать и поддерживать тесты, которые вы написали. Мы в Wrike видели достаточно Unit-тестов, чтобы понять основные проблемы, которые возникают при их написании и поддержке, и сформулировать несколько правил для их предотвращения.

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

[1]: https://habrastorage.org/web/c76/446/e5b/c76446e5bc5247b0bd09ea65db03360b.jpg
[2]: https://habrahabr.ru/post/337188/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Вышел GitLab 9.5: Верификация коммитов GPG и шаблоны проектов
habra.16
habrabot(difrex,1) — All
2017-09-06 15:30:22


![image][1]



В GitLab 9.5 мы представляем верификацию коммитов GPG, шаблоны проектов, автоповтор неудавшихся работ CI, навигацию по дифф-файлу мерж реквестов, существенные улучшения производительности и многое другое.


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

[1]: https://habrastorage.org/getpro/habr/post_images/981/226/9d5/9812269d51a8c3e4ea340ba070f9317c.jpg
[2]: https://habrahabr.ru/post/337246/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Доставка Powershell скриптов через DNS туннель и методы противодействия
habra.16
habrabot(difrex,1) — All
2017-09-06 15:30:22


![][1]

В данной статье мы поговорим о новом инструменте, позволяющем передавать Powershell скрипты на целевую машину внутри DNS пакетов с целью сокрытия трафика. Разберем, как работает PowerDNS и как защититься от подобных атак.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/015/878/384/01587838435e4967ad9d450016725cfc.jpg
[2]: https://habrahabr.ru/post/337244/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Почему анализ защищенности JavaScript нельзя по настоящему автоматизировать?
habra.16
habrabot(difrex,1) — All
2017-09-06 17:00:05


Почему в случае JavaScript приходится обходиться простыми подходами статического анализа, когда есть более [интересные подходы][1] к автоматическому анализу кода?

В ответ на этот вопрос, мой коллега Алексей Гончаров [kukumumu][2] ответил лаконично: «JavaScript это панковский язык» и кинул ссылку на статью Jasper Cashmore [«A Javascript journey with only six characters»][3], которая действительно погружает нас в путешествие в эзотерический мир JSFuck и сразу все ставит на свои места.
Мне настолько понравилось, что я решил перевести статью на русский язык.
[Читать дальше →][4]

[1]: https://habrahabr.ru/company/pt/blog/305000/
[2]: https://habrahabr.ru/users/kukumumu/
[3]: http://www.jazcash.com/a-javascript-journey-with-only-six-characters/
[4]: https://habrahabr.ru/post/337212/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Fedora Linux запрещен к распространению на территории Крыма (а заодно в Краснодаре)
habra.16
habrabot(difrex,1) — All
2017-09-06 17:30:05


![image][1]
Внезапно. Fedora Linux — достаточно популярный дистрибутив, разрабатываемый Fedora Project. Его часто называют unstable версией Red Hat Enterprise Linux. 5 сентября, было обновлено экспортного соглашение, в котором был добавлен пункт запрещающий экспорт **дистрибутива на территорию республики Крым**.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/42f/acc/97b/42facc97b55a46f0083a2370b3491fd7.jpg
[2]: https://habrahabr.ru/post/337290/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Наглядное объяснение чисел с плавающей запятой
habra.16
habrabot(difrex,1) — All
2017-09-06 19:00:05


![image][1]


В начале 90-х создание трёхмерного игрового движка означало, что вы заставите машину выполнять почти не свойственные ей задачи. Персональные компьютеры того времени предназначались для запуска текстовых процессоров и электронных таблиц, а не для 3D-вычислений со частотой 70 кадров в секунду. Серьёзным препятствием стало то, что, несмотря на свою мощь, ЦП не имел аппаратного устройства для вычислений с плавающей запятой. У программистов было только АЛУ, перемалывающее целые числа.

При написании книги [_Game Engine Black Book: Wolfenstein 3D_][2] я хотел наглядно показать, насколько был велики были проблемы при работе без плавающей запятой. Мои попытки разобраться в числах с плавающей запятой при помощи [каноничных][3] [статей][4] мозг воспринимал в штыки. Я начал искать другой способ. Что-нибудь, далёкое от ![$(-1)^S * 1.M * 2^{(E-127)}$][5] и их загадочных экспонент с мантиссами. Может быть, в виде рисунка, потому что их мой мозг воспринимает проще.

В результате я написал эту статью и решил добавить её в книгу. Не буду утверждать, что это моё изобретение, но пока мне не приходилось видеть такого объяснения чисел с плавающей запятой. Надеюсь, статья поможет тем, у кого, как и меня, аллергия на математические обозначения.
[Читать дальше →][6]

[1]: https://habrastorage.org/getpro/habr/post_images/277/c3b/3c5/277c3b3c59830784ca7216063cf60f52.jpg
[2]: https://play.google.com/store/books/details/Fabien_Sanglard_Game_Engine_Black_Book?id=Lq4yDwAAQBAJ
[3]: https://en.wikipedia.org/wiki/Floating-point_arithmetic
[4]: http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
[5]: https://habrastorage.org/getpro/habr/formulas/185/bba/e8c/185bbae8c3b7f000517f7294785b185d.svg
[6]: https://habrahabr.ru/post/337260/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Хакеры-вымогатели взломали более 26 000 серверов MongoDB
habra.16
habrabot(difrex,1) — All
2017-09-06 20:30:05


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

Исследователи информационной безопасности [сообщили][3] о новой волне атак хакеров-вымогателей на серверы с установленной MongoDB. Начиная с прошлой надели было взломано более 26 000 серверов, причем 22 000 из них были атакованы одной кибергруппой. [Читать дальше →][4]

[1]: https://habrastorage.org/files/a9e/9b8/447/a9e9b84470894bc7a44edf145462cff1.jpg
[2]: https://habrahabr.ru/company/pt/blog/337304/
[3]: https://www.bleepingcomputer.com/news/security/massive-wave-of-mongodb-ransom-attacks-makes-26-000-new-victims/
[4]: https://habrahabr.ru/post/337304/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Случайное удаление файлов рута
habra.16
habrabot(difrex,1) — All
2017-09-06 20:30:05


Вы спокойно блуждаете по директории `$HOME`, думая о своих делах.

`$ whoami
> user

$ pwd
> /home/user`

Но что-то вас беспокоит. Это как маленький камушек (little rock), попавший в ботинок. Вы снимаете обувь, чтобы посмотреть, в чём дело.

`$ ls -lah ./left-shoe
---------- 1 root root 4 May 30 13:20 little-rock`

Странно. Он здесь, но как будто не принадлежит вам. Его оставил `root`, Рок Теймер, и только он решает его судьбу.
[Читать дальше →][1]

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

[>] Fedora Linux запрещен к распространению на территории Крыма (и временно поломали DNS)
habra.16
habrabot(difrex,1) — All
2017-09-06 23:00:05


![image][1]

Внезапно. Fedora Linux — достаточно популярный дистрибутив, разрабатываемый Fedora Project. Его часто называют unstable версией Red Hat Enterprise Linux. 5 сентября, было обновлено экспортного соглашение, в котором был добавлен пункт запрещающий экспорт **дистрибутива на территорию республики Крым**.
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/42f/acc/97b/42facc97b55a46f0083a2370b3491fd7.jpg
[2]: https://habrahabr.ru/post/337290/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Выбираем бесплатный сервер в облаке для тестовых целей, домашних проектов и т.д
habra.16
habrabot(difrex,1) — All
2017-09-07 02:30:04


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

[1]: https://habrastorage.org/web/3f0/18b/06f/3f018b06f6f5451ab7d24f7fd940588b.jpg
[2]: https://habrahabr.ru/post/332130/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] О различении объектов по цвету
habra.16
habrabot(difrex,1) — All
2017-09-07 03:00:03


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

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

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

[>] [Из песочницы] Как определить мобильного оператора и домашний регион по номеру телефона
habra.16
habrabot(difrex,1) — All
2017-09-07 03:30:05


Когда мы пытаемся определить какому оператору принадлежит номер телефона, то обычно смотрим на его DEF код. Например, если номер начинается на 916, то это МТС, на 968 – Билайн, 926 – Мегафон (все зависит от вашего региона). Но этот метод очень условный и совершенно не подходит когда нужны точные данные. В реальности все сложнее: DEF коды часто делят между собой несколько операторов, и совсем необязательно, что искомый номер относится к операторам большой четверки. Ну и наконец, номер можно просто портировать.

В статье я расскажу о том, как по номеру телефона достоверно определить мобильного оператора который его обслуживает, а также получить дополнительную, «бесплатную» информацию – домашний регион абонента. Использовать эти данные можно как угодно, начиная от предзаполнения адреса в анкете пользователя и перенаправления на региональную версию вашего сервиса, до использования этих данных в процессинге и статистике. В конце статьи будет ссылка на github с исходниками.

Сразу оговорюсь, что домашний регион абонента, по большому счету, никак не связан с текущим месторасположением пользователя, т.е. определяемый регион отвечает на вопрос «Откуда номер?», а не «Где пользователь?».
[Читать дальше →][1]

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

[>] [Перевод] Какой язык программирования выбрать для работы с данными?
habra.16
habrabot(difrex,1) — All
2017-09-07 03:30:05


[![][1]][2]

У начинающего специалиста по данным (data scientist) есть возможность выбрать один из множества языков программирования, который поможет ему быстрее освоить данную науку.

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

[1]: https://habrastorage.org/web/f4a/80c/c32/f4a80cc32816473983c0a77337274331.jpeg
[2]: https://habrahabr.ru/post/337330
[3]: https://habrahabr.ru/post/337330/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Практика формирования требований в ИТ проектах от А до Я. Часть 4. Бизнес процессы, автоматизируемые системой
habra.16
habrabot(difrex,1) — All
2017-09-07 04:00:07


С частью 3 можно ознакомиться, перейдя по [ссылке][1]


## VII Детализируем процессы, включенные в рамки проекта


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

**Цель данной группы работ: на основании выявленных функций, определить сценарии использования, разрабатываемого целевого продукта.**
[Читать дальше →][3]

[1]: https://habrahabr.ru/post/336950/
[2]: https://habrastorage.org/web/640/e26/671/640e266716ba41feb0651f5bb501fa60.jpg
[3]: https://habrahabr.ru/post/337228/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Используйте Stream API проще (или не используйте вообще)
habra.16
habrabot(difrex,1) — All
2017-09-07 10:30:07


С появлением Java 8 Stream API позволило программистам писать существенно короче то, что раньше занимало много строк кода. Однако оказалось, что многие даже с использованием Stream API пишут длиннее, чем надо. Причём это не только делает код длиннее и усложняет его понимание, но иногда приводит к существенному провалу производительности. Не всегда понятно, почему люди так пишут. Возможно, они прочитали только небольшой кусок документации, а про другие возможности не слышали. Или вообще документацию не читали, просто видели где-то пример и решили сделать похоже. Иногда это напоминает анекдот про «задача сведена к предыдущей».



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

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

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

[>] [Перевод] Как победить расистский ИИ
habra.16
habrabot(difrex,1) — All
2017-09-07 12:30:05


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

![][2]
> Напомню: мы закончили на том, что наш классификатор считал идею пойти в итальянский ресторан в 5 раз лучше, чем в мексиканский.[Читать дальше →][3]

[1]: https://habrahabr.ru/company/microsoft/blog/336358/
[2]: https://habrastorage.org/web/8e5/b33/578/8e5b3357875141c3b2ba81abfc581e01.jpg
[3]: https://habrahabr.ru/post/337272/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] RustGo: вызов Rust из Go с почти нулевым оверхедом
habra.16
habrabot(difrex,1) — All
2017-09-07 13:30:05


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



Но писать код на ассемблере, всё же, сложно, анализировать его ещё сложнее, а криптография [ошибок не прощает][1]. Разве не было бы замечательно иметь возможность писать эти функции на каком-нибудь более высокоуровневом языке?



Этот пост о слегка неадекватном эксперименте по вызову Rust кода из Go в попытке сделать это настолько быстро, чтобы могло сравнится с вызовом ассемблера. Вам не нужно знать Rust или про внутренности компилятора, достаточно понимать, что такое линкер.

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

[1]: https://groups.google.com/forum/#!topic/golang-announce/B5ww0iFt1_Q
[2]: https://habrahabr.ru/post/337348/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Google Titan — стали известны новые подробности о чипе
habra.16
habrabot(difrex,1) — All
2017-09-07 14:00:34


В марте этого года в Сан-Франциско прошла конференция Google Cloud Next. Компания [уделила ][1]много внимания безопасности облачной платформы Google.

«Мы внедряем инновации в области безопасности и хотим, чтобы это стало причиной миграции в облака», — [сказала][2] Дженнифер Лин (Jennifer Lin), директор по управлению продуктами для Google Cloud Platform (GCP).

Также Урс Хельцле (Urs Hölzle), старший вице-президент по технической инфраструктуре Google Cloud, презентовал новый чип Titan — он [достал][3] его из серьги, чтобы продемонстрировать, насколько тот мал. В инфраструктуре GCP чип отвечает за надежную аутентификацию пользователя на аппаратном уровне. Google часто [скрывает][4] информацию о своих разработках, но в конце августа компания [раскрыла][5] некоторые подробности о чипе.

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

[1]: https://www.blog.google/topics/google-cloud/bolstering-security-across-google-cloud/
[2]: http://www.zdnet.com/article/google-cloud-unveils-its-custom-security-chip-new-security-features/
[3]: http://www.businessinsider.com/google-cloud-urs-holzle-2017-3
[4]: http://www.silicon.co.uk/cloud/datacenter/google-custom-ai-chips-208833?inf_by=595f530d671db8be138b467c
[5]: http://www.datacenterdynamics.com/content-tracks/security-risk/google-reveals-details-about-titan-its-server-security-chip/98859.fullarticle
[6]: https://habrastorage.org/web/48f/c92/510/48fc925107454a4283615aaffe930a4b.jpg
[7]: https://habrahabr.ru/company/1cloud/blog/336730/
[8]: https://habrahabr.ru/post/336730/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] ИИ для покера: как научить алгоритмы блефовать
habra.16
habrabot(difrex,1) — All
2017-09-07 14:30:07


![image][1]



О том как совершенствуется искусственный интеллект, можно судить по обычным играм. За последние два десятилетия алгоритмы превзошли лучших мировых игроков: сначала пали нарды и шашки, затем шахматы, «Своя Игра» (Jeopardy!), в 2015 году — видеоигры Atari и в прошлом году — Го.



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



Но как обстоит дело с играми с неполной информацией?



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

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

[1]: https://habrastorage.org/web/c4b/8b5/d9f/c4b8b5d9f2574288bb3b0a1ae5f09f31.png
[2]: https://habrahabr.ru/post/337264/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] Как создать расистский ИИ, даже не пытаясь. Часть 2
habra.16
habrabot(difrex,1) — All
2017-09-07 15:00:06


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

![][2]
> Напомню: мы закончили на том, что наш классификатор считал идею пойти в итальянский ресторан в 5 раз лучше, чем в мексиканский.[Читать дальше →][3]

[1]: https://habrahabr.ru/company/microsoft/blog/336358/
[2]: https://habrastorage.org/web/8e5/b33/578/8e5b3357875141c3b2ba81abfc581e01.jpg
[3]: https://habrahabr.ru/post/337272/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Браузер браузеру рознь, или Будни отдела корпоративной инфраструктуры
habra.16
habrabot(difrex,1) — All
2017-09-07 16:30:05


Сегодня, во времена массового хайпа вокруг кастомизации всего на свете, начиная от рабочего стола и заканчивая корпоративным ЦОДом, мы решили не уходить в дебри очередного трендсеттерства, а поделиться своим опытом в области решений для организаций – корпоративным браузером. Путь к финальной версии браузера для организаций был неблизкий и в некоторой степени тернистый – про это мы тоже вам расскажем в надежде, что это избавит от лукавого и поспособствует улучшенному восприятию информации. А уже ближе к финалу поделимся инсайдерской информацией про техническую сторону решения: с методами аутентификации, синхронизацией профиля, настройками репозитария с блэк-джеком и групповыми политиками.

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

[1]: https://habrastorage.org/web/c6d/c02/8a3/c6dc028a386a40e79ea5a0f2d8a87c92.png
[2]: https://habrahabr.ru/post/337120/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] У Вас в организации много разных принтеров и необходимо со всех собрать количество отпечатков?
habra.16
habrabot(difrex,1) — All
2017-09-07 17:30:06


В нашей компании 4 офиса в каждом по 3-4 этажа, много кабинет и почти в каждом стоит 1-3 принтера и МФУ. Статья о том, как с помощью bash зная лишь ip-адреса принтеров автоматизировать собор с них количества отпечатков.

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

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

[1]: https://habrastorage.org/web/9bb/cb8/e7e/9bbcb8e7eadd4da58ca3fc61818dd34c.jpg
[2]: https://habrahabr.ru/post/337242/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] 36 материалов о нейросетях: книги, статьи и последние исследования
habra.16
habrabot(difrex,1) — All
2017-09-07 17:30:06


Что делать, если хочется побольше узнать про нейронные сети, методы распознавания образов, компьютерное зрение и глубокое обучение? Один из очевидных вариантов — подыскать для себя какие-либо курсы и начать активно изучать теорию и решать практические задачи. Однако на это придется выделить значительную часть личного времени. Есть другой способ — обратиться к «пассивному» источнику знаний: выбрать для себя литературу и погрузиться в тему, уделяя этому всего полчаса-час в день.

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

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

[1]: https://habrastorage.org/web/96a/bd4/b83/96abd4b83965408b9994c0239ee450fd.jpg
[2]: https://habrahabr.ru/company/neurodatalab/blog/336218/
[3]: https://habrahabr.ru/post/336218/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Новый алгоритм шифрования NASH
habra.16
habrabot(difrex,1) — All
2017-09-07 17:30:06


_ Предложен оригинальный новый алгоритм блочного шифрования, предназначенный для реализации на широко распространенных микроконтроллерах общего назначения. Алгоритм «NASH» основан на принципах современной «легковесной криптографии», но использует управляемые сдвиги, что позволяет при сохранении уровня стойкости ограничиваться меньшим числом раундов, повышая скорость обработки данных._ [Читать дальше →][1]

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

[>] [Перевод] Что за чёрт, Python
habra.16
habrabot(difrex,1) — All
2017-09-07 20:00:06


![][1]



Недавно мы [писали][2] о забавных, хитрых и странных примерах на JavaScript. Теперь пришла очередь Python. У Python, высокоуровневого и интерпретируемого языка, много удобных свойств. Но иногда результат работы некоторых кусков кода на первый взгляд выглядит неочевидным.



Ниже — забавный проект, в котором собраны примеры неожиданного поведения в Python с обсуждением того, что происходит под капотом. Часть примеров не относятся к категории настоящих WTF?!, но зато они демонстрируют интересные особенности языка, которых вы можете захотеть избегать. Я думаю, это хороший способ изучить внутреннюю работу Python, и надеюсь, вам будет интересно.



Если вы уже опытный программист на Python, то многие примеры могут быть вам знакомы и даже вызовут ностальгию по тем случаям, когда вы ломали над ними голову :)

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

[1]: https://habrastorage.org/web/7dc/886/309/7dc88630991741c1b98aeb769b994036.JPG
[2]: https://habrahabr.ru/company/mailru/blog/335292/
[3]: https://habrahabr.ru/post/337364/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Учим робота готовить пиццу. Часть 2: Состязание нейронных сетей
habra.16
habrabot(difrex,1) — All
2017-09-07 20:30:04


![][1]



### Содержание {#soderzhanie}


* [Часть 1: Получаем данные][2]

В прошлой части, удалось распарсить сайт Додо-пиццы и загрузить данные об ингредиентах, а самое главное — фотографии пицц. Всего в нашем распоряжении оказалось 20 пицц. Разумеется, формировать обучающие данные всего из 20 картинок не получится. Однако, можно воспользоваться осевой симметрией пиццы: выполнив вращение картинки с шагом в один градус и вертикальным отражением — позволяет превратить одну фотографию в набор из 720 изображений. Тоже мало, но всё же попытаемся.



Попробуем обучить Условный вариационный автоэнкордер (Conditional Variational Autoencoder), а потом перейдёт к тому, ради чего это всё и затевалось — генеративным cостязательным нейронным сетям (Generative Adversarial Networks).

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

[1]: https://habrastorage.org/web/bf8/697/a4c/bf8697a4c0e2493e9b6fc7009bb4b83d.png
[2]: https://habrahabr.ru/post/335444/
[3]: https://habrahabr.ru/post/337398/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Бомба Сатоши
habra.16
habrabot(difrex,1) — All
2017-09-08 00:00:05


**Почему экономическая целесообразность может привести к краху Биткойн**

_Автор статьи — Алексей Маланов, эксперт отдела развития антивирусных технологий «Лаборатории Касперского»_

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

![][1]

Мы предполагаем, что читатель имеет представление об основных механизмах функционирования Биткойн, таких как: [блокчейн][2], [майнинг][3], майнинговые пулы, награда за блок.

**Предупреждение.** В этой статье мы исследуем теоретическую возможность развития описываемого сценария с учетом заложенных в Биткойн алгоритмов. Мы не ставили себе цели детально проанализировать структуру затрат майнеров, цены на электричество в различных районах мира, банковские ставки и сроки окупаемости оборудования.
[Читать дальше →][4]

[1]: https://habrastorage.org/web/f55/35c/a6a/f5535ca6ab87490ab142c0c5d74730ad.jpg
[2]: https://habrahabr.ru/company/kaspersky/blog/336036/
[3]: https://www.kaspersky.ru/blog/mining-easy-explanation/18020/
[4]: https://habrahabr.ru/post/337410/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Настоящий Offline Perfect Forward Secrecy для ваших продуктов
habra.16
habrabot(difrex,1) — All
2017-09-08 00:30:06


Привет, %username%!

![][1]
_Что может быть проще, чем отправить зашифрованное сообщение собеседнику?_

Берём его публичный ключ, свой приватный, считаем Diffie-Hellman, загоняем после KDF результат в какой-нибудь AES, и готово. Но, если один из приватных ключей украдут, всё, весь перехваченный до этого трафик будет без проблем расшифрован.

Мы расскажем как с этим борются современные мессенджеры и транспортные протоколы, а так же дадим вам инструмент для внедрения PFS в свои продукты.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/9fe/88a/b35/9fe88ab35e334d53922c5ba0b24063b4.jpg
[2]: https://habrahabr.ru/post/337356/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Бот в муравейнике
habra.16
habrabot(difrex,1) — All
2017-09-08 10:00:28


![][1]
_Еще один игровой бот для [«Космических рейнджеров HD»][2] (издатель [1С][3]) наводит на интересные мысли о путях развития искусственного интеллекта (ИИ)._ [Читать дальше →][4]

[1]: https://habrastorage.org/web/94d/324/ac5/94d324ac5b964638bc5e386868293b6b.jpg
[2]: http://www.softclub.ru/games/pc/20671-kosmicheskie-rejndzhery-hd-revolyutsiya
[3]: https://1c.ru/
[4]: https://habrahabr.ru/post/337440/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] «Дела осадные»: Как компании построить надежную крепость для защиты облака
habra.16
habrabot(difrex,1) — All
2017-09-08 14:00:05


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

Cloud Security Alliance в начале 2016 года провели исследование и [установили][1] 12 главных угроз, с которыми сталкиваются компании, использующие облака. Среди них есть неэффективное управление доступом к информации, потеря данных, небезопасные интерфейсы и др. В сегодняшнем материале мы решили рассказать, на что компаниям обратить внимание, чтобы «заделать бреши» в стенах «облачной крепости».

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

[1]: https://downloads.cloudsecurityalliance.org/assets/research/top-threats/Treacherous-12_Cloud-Computing_Top-Threats.pdf
[2]: https://habrastorage.org/web/05a/42f/a52/05a42fa527ca49fab6f4efea052cdb71.jpg
[3]: https://habrahabr.ru/company/1cloud/blog/337428/
[4]: https://habrahabr.ru/post/337428/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Перевод] AsyncIO для практикующего python-разработчика
habra.16
habrabot(difrex,1) — All
2017-09-08 15:00:06


Я помню тот момент, когда подумал «Как же медленно всё работает, что если я распараллелю вызовы?», а спустя 3 дня, взглянув на код, ничего не мог понять в жуткой каше из потоков, синхронизаторов и функций обратного вызова.

Тогда я познакомился с [asyncio][1], и всё изменилось.
[Читать дальше →][2]

[1]: https://docs.python.org/dev/library/asyncio.html
[2]: https://habrahabr.ru/post/337420/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Ярлыки в Windows: куда они ведут и могут ли быть опасны?
habra.16
habrabot(difrex,1) — All
2017-09-08 15:30:06


![][1]


В данной статье мы поговорим о методах компрометации систем с использованием стандартного функционала ОС Windows, доступного при создании ярлыков и как с этим бороться.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/24e/5a9/5fd/24e5a95fdf054d7e9723f886e20f43c2.jpg
[2]: https://habrahabr.ru/post/337390/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Статистика по базовым операционным системам в образах на Docker Hub
habra.16
habrabot(difrex,1) — All
2017-09-08 16:00:04


![][1]

Американская компания Anchore, созданная основателем Ansible Inc., с помощью своего сервиса Anchore Navigator, предназначенного для исследования контейнерных образов, проанализировала Docker Hub и [ответила][2] на следующие вопросы:

1. Какие операционные системы используются больше всего?
2. Как выбор ОС менялся на протяжении времени?
3. Отличаются ли паттерны их использования для официальных и публичных образов?[Читать дальше →][3]

[1]: https://habrastorage.org/web/97f/fa0/89c/97ffa089ce9d4ddaa7c07b4321ee05c9.jpg
[2]: https://anchore.com/blog/breakdown-operating-systems-dockerhub/
[3]: https://habrahabr.ru/post/337448/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] Как Вы вирус назовете?
habra.16
habrabot(difrex,1) — All
2017-09-08 17:00:07


![][1]



Petya, Misha, WannaCry, Friday 13th, Anna Kournikova… Имена компьютерных вирусов, вызвавших настоящие эпидемии в сети, долго остаются на слуху. Их постоянно повторяют СМИ, как правило, не вдаваясь в технические подробности и путая модификации между собой.

А вы когда-нибудь интересовались, как и кто дает имена вирусам? Ведь компьютерных зловредов много, их миллионы, и все надо как-то называть. Под катом — краткий экскурс в нейминг вирусов, троянов и прочей компьютерной нечисти.
[Читать дальше →][2]

[1]: https://habrastorage.org/web/178/fb7/dc5/178fb7dc5b6a4b45a09af115e7986810.jpg
[2]: https://habrahabr.ru/post/337474/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut

[>] [Из песочницы] Наследование в Hibernate: выбор стратегии
habra.16
habrabot(difrex,1) — All
2017-09-08 21:30:07


Наследование является одним из основных принципов ООП. В то же время, значительное количество корпоративных приложений имеют в своей основе реляционные базы данных

Главное противоречие между объектно-ориентированной и реляционной моделями заключается в том, объектная модель поддерживает два вида отношений («is a» — “является”, и «has a» — “имеет”), а модели, основанные на SQL, поддерживают только отношения «has a».

Иными словами, **SQL не понимает наследование типов и не поддерживает его**.

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

Всего таких стратегий 4:

**1) **Использовать одну таблицу для каждого класса и полиморфное поведение по умолчанию.

**2)** Одна таблица для каждого конкретного класса, с полным исключением полиморфизма и отношений наследования из схемы SQL (для полиморфного поведения во время выполнения будут использоваться UNION-запросы)

**3)** Единая таблица для всей иерархии классов. Возможна только за счет денормализации схемы SQL. Определять суперкласс и подклассы будет возможно посредством различия строк.

**4)** Одна таблица для каждого подкласса, где отношение “is a” представлено в виде «has a», т.е. – связь по внешнему ключу с использованием JOIN.

Можно выделить 3 главных фактора, на которые повлияет выбранная вами стратегия:

**1)** Производительность (мы используем “hibernate\_show\_sql”, чтобы увидеть и оценить все выполняемые к БД запросы)

**2)** Нормализация схемы и гарантия целостности данных (не каждая стратегия гарантирует выполнение ограничения NOT NULL)

**3) **Возможность эволюции вашей схемы

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

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

Pages: 1 ... 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 ... 133