RSS
Pages: 1 ... 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
[>] [Перевод] Системы Линденмайера
habra.16
habrabot(difrex,1) — All
2018-01-11 12:45:04


![][1]



## Естественные паттерны


Системы Линденмайера придумал венгерский биолог Аристидом Линденмайером, изучая рост водорослей. Он разработал _L-системы_ как способ описания процесса роста водорослей и простых растений. Результатом стал своего рода язык, на котором можно было выразить свойства рекурсивности и самоподобия роста организма. И в самом деле, L-системы можно использовать для генерирования естественных паттернов; кроме того, хорошо известные математические паттерны тоже можно записать в виде L-системы. В этой статье я расскажу о различных типах L-систем и продемонстрирую их с помощью отрисовки «черепашьей графикой» _двухмерных_ и _трёхмерных систем Линденмейера_.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/a6/vz/ui/a6vzuifmv8qtxn7_yjwte_gc_wy.png
[2]: https://habrahabr.ru/post/346388/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346388#habracut

[>] Внезапно: новая версия ONLYOFFICE с макросами
habra.16
habrabot(difrex,1) — All
2018-01-11 13:00:17


У нас важные новости: вышла новая версия десктопов с макросами. Вы можете [скачать её][1] на официальном сайте и попробовать всё сами.

В этой статье мы расскажем, что у нас за макросы, чем они отличаются от макросов Microsoft и как с ними работать.

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

[1]: http://www.onlyoffice.com/ru/download-desktop.aspx?utm_source=habr&utm_medium=medium&utm_campaign=macros
[2]: https://habrastorage.org/webt/sv/k0/el/svk0el4vhoohdmu3s9bi6gl8a6c.png
[3]: https://habrahabr.ru/post/346382/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346382#habracut

[>] Драйвера nVidia и телеметрия
habra.16
habrabot(difrex,1) — All
2018-01-11 13:45:05


![][1]

Всем привет.

Возможно ни для кого не секрет, что последние пакеты драйверов от nVidia содержат комплекс телеметрии.

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

На картинке выше приводится способ отключения телеметрии «из коробки», надо отдать должное — производитель засунул эту опцию в довольно неожиданное место, и надо ещё больше отдать должное — работает она не до конца.

Ниже будет рассмотрено, как полностью отключить телеметрию в драйверах nVidia последних версий.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/xf/y0/up/xfy0uplyw9fj4f_v7s1zf3i41u4.jpeg
[2]: https://habrahabr.ru/post/346434/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346434#habracut

[>] [Перевод] Рассказ о том, как я ворую номера кредиток и пароли у посетителей ваших сайтов
habra.16
habrabot(difrex,1) — All
2018-01-11 15:15:04


Представляем вам перевод статьи человека, который несколько лет воровал имена пользователей, пароли и номера кредитных карт с различных сайтов.

[![][1]][2]
То, о чём я хочу рассказать, было на самом деле. Или, может быть, моя история лишь основана на реальных событиях. А возможно всё это — выдумка.

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

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

[1]: https://habrastorage.org/webt/wn/i8/9j/wni89jjkm9xtzxdr4ssuutfcvso.jpeg
[2]: https://habrahabr.ru/company/ruvds/blog/346442/
[3]: https://habrahabr.ru/post/346442/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346442#habracut

[>] Как внедрить Secure Development Lifecycle и не поседеть. Рассказ Яндекса на ZeroNights 2017
habra.16
habrabot(difrex,1) — All
2018-01-11 16:15:04


С 16 по 17 ноября в Москве проходила международная конференция по информационной безопасности ZeroNights 2017. В этом году Яндекс, как обычно, выступил её соорганизатором и представил ряд докладов в ходе Defensive Track'а – секции, посвященной защите сервисов и инфраструктуры. В частности, мы поделились нашим опытом внедрения Secure Development Lifecycle (SDL) для такого крупного и комплексного проекта, как Яндекс.Браузер.



![image][1]



Если кратко, то SDL – это набор различных контролей безопасности на всех этапах жизненного цикла продукта. Сама по себе данная методология существует уже довольно давно, изначально её анонсировала компания Microsoft, и про канонический подход вы можете почитать на их [сайте][2], на [Хабре][3], а также [на просторах интернета][4]. SDL позволяет снизить вероятность возникновения уязвимостей, максимально усложнить их эксплуатацию и ускорить исправление. Всё это позволяет сделать продукт более безопасным.



Однако в настоящее время в индустрии до сих пор существует весьма распространенное мнение, что для проектов, которые разрабатываются в рамках процессов на базе Agile’a, внедрение SDL – очень сложная и почти нерешаемая задача, т.к. множество проверок создают бутылочное горлышко и мешают разработчикам укладываться в сроки. С первым тезисом мы спорить точно не будем, а второму готовы бросить вызов и поделиться историей о том, какие контроли мы встроили в процесс разработки Браузера и какие трудности встретились на этом пути. Если вы пропустили наш доклад или хотите узнать дополнительные подробности – просим заглянуть под кат.

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

[1]: https://habrastorage.org/webt/r5/iv/fq/r5ivfqg9qxvdotk3b3vbbptnt7g.png
[2]: https://www.microsoft.com/en-us/sdl
[3]: https://habrahabr.ru/company/microsoft/blog/134464/
[4]: https://yandex.ru/search/?text=secure%20development%20lifecycle
[5]: https://habrahabr.ru/post/346426/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346426#habracut

[>] Советуют разработчики: подборка популярных книг о программировании, языках, алгоритмах
habra.16
habrabot(difrex,1) — All
2018-01-11 16:15:04


В сегодняшнем материале мы собрали одни из наиболее популярных книг, отобранных самими разработчиками — резидентами Reddit, Quora, Stack Exchange, Stack Overflow и Hacker News.

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

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

[1]: https://habrastorage.org/webt/05/ar/uz/05aruzfrbejt3xsoetyd93unmji.jpeg
[2]: https://habrahabr.ru/company/it-grad/blog/346362/
[3]: https://habrahabr.ru/post/346362/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346362#habracut

[>] Выпуск#6: ITренировка — актуальные вопросы и задачи от ведущих компаний
habra.16
habrabot(difrex,1) — All
2018-01-11 17:00:05


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

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

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

Надеемся, что мы достигли этой цели.
[Читать дальше →][1]

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

[>] [Перевод] Дэниэль Лерх: «Стеганография – это инструмент, представляющий огромный интерес для кибер-преступников»
habra.16
habrabot(difrex,1) — All
2018-01-11 17:00:05


![][1]

Эллиот Алдерсон прятал секретную информацию в аудио-CD файлах. Однако, техника, использованная вымышленным хакером из сериала «Мистер Робот», далека от простой прихоти телевизионщиков. Это всего лишь один из многих методов стеганографии, используемых хакерами и кибер-преступниками для обхода систем безопасности.

Произошедшее от греческих слов steganos (скрытый) и graphos (письмо), слово «стеганография» означает метод сокрытия данных. Чтобы понять, как лучше всего справиться с этой тайной угрозой, мы поговорили с [Дэниэлем Лерхом][2], который имеет степень кандидата компьютерных наук в Университете Universitat Oberta de Catalunya (Каталония, Испания) и является одним из лучших экспертов по стеганографии в Испании. [Читать дальше →][3]

[1]: https://habrastorage.org/webt/2d/ua/dc/2duadchqxobkjtbomj_vmwckkue.jpeg
[2]: http://daniellerch.me/
[3]: https://habrahabr.ru/post/346422/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346422#habracut

[>] [Перевод] Патчи против уязвимостей Meltdown & Spectre вызывают проблемы с загрузкой Ubuntu 16.04
habra.16
habrabot(difrex,1) — All
2018-01-11 17:00:05


![][1]

Пользователи Ubuntu Xenial 16.04 кто недавно установили обновления против уязвимостей Meltdown и Spectre сообщают, что не смогли после этого загрузить свои системы и вынуждены откатиться на более ранние образы ядер Linux.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/fu/-2/gq/fu-2gq2bulc7kk_mzohp493iauy.png
[2]: https://habrahabr.ru/post/346444/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346444#habracut

[>] Конструктор GUI Visual Tcl с поддержкой тематических виджетов
habra.16
habrabot(difrex,1) — All
2018-01-11 17:00:05


![image][1]Последняя версия конструктора GUI [Visual Tcl ][2]опирается на использование пакета Tcl/Tk версии 8.6. Этот пакет включает в себя как классические Tk-виджеты, так и [тематические виджеты][3] (Themed Widgets) TTK. Тем удивительнее, что конструктор vTcl поддерживает только классические tk-виджеты. Отчасти это можно объяснить поддержкой в vTcl виджетов BWidget, которые исторически включают в себя виджеты для создания «записных книжек» (Notebook), combobox-ов и т.д.:

![image][4]

Имея в своем распоряжении виджеты BWidget, теоретически можно обойтись и без тематических виджетов notebook, combobox и т.п.
[Читать дальше →][5]

[1]: https://habrastorage.org/webt/to/ze/0z/toze0zkcbg3s6kzh3ioj-lsoqky.png
[2]: http://vtcl.sourceforge.net/?x=news
[3]: https://habrahabr.ru/post/343930/
[4]: https://habrastorage.org/webt/nt/gs/sm/ntgssmf-vuyz5w6x8_hvxu3b9m4.png
[5]: https://habrahabr.ru/post/346410/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346410#habracut

[>] [Перевод] Wi-Fi Alliance анонсировал протокол WPA3 с новыми функциями безопасности и разработку стандарта Wi-Fi 802.11ax
habra.16
habrabot(difrex,1) — All
2018-01-11 17:00:05


[![][1]][2]

Wi-Fi Alliance анонсировал долгожданное третье поколение протокола беспроводной безопасности — Wi-Fi Protected Access (WPA3).

WPA3 заменит существующий WPA2 — протокол сетевой безопасности, который существует не менее 15 лет и используется миллиардами беспроводных устройств каждый день.

Небезопасность WPA2 уже долгое время обсуждалась специалистами. Переломным моментом стал октябрь 2017 года, когда исследователь Мэти Ванхов (Mathy Vanhoef) обнаружил уязвимость в протоколе WPA2, ставящую под угрозу практически все существующие на данный момент сети Wi-Fi. С ее помощью злоумышленник может осуществить атаку реинсталяции ключей ([Key Reinstallation Attack][3], KRACK) и получить доступ к конфиденциальным данным. Уязвимость вызвала серьезное беспокойство экспертов по безопасности, поскольку содержалась в самом протоколе WPA2.

Новый стандарт безопасности Wi-Fi, который будет доступен как для персональных, так и для корпоративных беспроводных устройств, должен обеспечить повышенную конфиденциальность с помощью четырех новых возможностей. [Читать дальше →][4]

[1]: https://habrastorage.org/webt/wu/u0/ou/wuu0out79bidbau_zijrte1dyr4.jpeg
[2]: https://habrahabr.ru/company/cloud4y/blog/346420/
[3]: https://habrahabr.ru/post/340180/
[4]: https://habrahabr.ru/post/346420/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346420#habracut

[>] [recovery mode] Поможет ли блокчейн оптимизировать IAM-решения?
habra.16
habrabot(difrex,1) — All
2018-01-11 17:45:04


Технология блокчейн, все еще находящаяся на ранних этапах своего развития, представляет собой децентрализованную базу данных, в которой каждая участвующая система (или так называемая нода – “node”) хранит точную копию всех имеющихся данных. Подобно звеньям одной цепи, каждый блок информации неразрывно связан с предыдущим, образуя постоянно растущую цепочку блоков информации. Эти блоки информации всегда остаются неизменными, благодаря чему технология блокчейн идеально подходит для архивирования и хранения информации, выполняя роль распределенного реестра.


[Читать дальше: Плюсы и минусы блокчейн для IAM][1]

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

[>] Анонс WPA3: Wi-Fi Alliance представил обновление безопасности
habra.16
habrabot(difrex,1) — All
2018-01-11 17:45:04


Группа Wi-Fi Alliance, в которую входят Apple, Microsoft и Qualcomm, [представила][1] новый протокол безопасности для беспроводных сетей — WPA3. Подробности его реализации появятся позднее (в этом году), однако уже есть информация о нескольких функциях. Например, в WPA3 появится защита от атак полным перебором (brute-force) и возможность «персонализированного шифрования данных». Подробнее об этих и нескольких других особенностях мы расскажем под катом.

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

[1]: https://www.wi-fi.org/news-events/newsroom/wi-fi-alliance-introduces-security-enhancements
[2]: https://habrastorage.org/webt/ii/zv/vq/iizvvqr5vusvigimar3r_jict34.jpeg
[3]: https://habrahabr.ru/company/vasexperts/blog/344126/
[4]: https://habrahabr.ru/post/344126/?utm_source=habrahabr&utm_medium=rss&utm_campaign=344126#habracut

[>] Мега-Учебник Flask, Часть 6: Страница профиля и аватары
habra.16
habrabot(difrex,1) — All
2018-01-11 18:00:09


[blog.miguelgrinberg.com][1]



### _Miguel Grinberg_ {#miguel-grinberg}


----


[<<< предыдущая][2] [следующая >>>][3]



Эта статья является переводом шестой части нового издания учебника Мигеля Гринберга, выпуск которого автор планирует завершить в мае 2018.[Прежний перевод][4] давно утратил свою актуальность.



Я, со своей стороны, постараюсь не отставать с переводом.


----


Перевел и опубликовал: _Александр Драгункин_


----


Это шестой выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как создать страницу профиля пользователя.

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

[1]: http://blog.miguelgrinberg.com "blog.miguelgrinberg.com"
[2]: https://habrahabr.ru/post/346346/
[3]: https://habrahabr.ru/post/346348/
[4]: https://habrahabr.ru/post/193242/ "Прежний перевод"
[5]: https://habrahabr.ru/post/346348/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346348#habracut

[>] # Мега-Учебник Flask, Часть 5: Пользовательские логины (издание 2018)
habra.16
habrabot(difrex,1) — All
2018-01-11 18:15:04


[blog.miguelgrinberg.com][1]



### _Miguel Grinberg_ {#miguel-grinberg}


----


[<<< предыдущая][2] [следующая >>>][3]



Эта статья является переводом пятой части нового издания учебника Мигеля Гринберга, выпуск которого автор планирует завершить в мае 2018.[Прежний перевод][4] давно утратил свою актуальность.


----


Это пятый выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как создать подсистему входа пользователя.

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

[1]: http://blog.miguelgrinberg.com "blog.miguelgrinberg.com"
[2]: https://habrahabr.ru/post/346344/
[3]: https://habrahabr.ru/post/346348/
[4]: https://habrahabr.ru/post/193242/ "Прежний перевод"
[5]: https://habrahabr.ru/post/346346/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346346#habracut

[>] [Из песочницы] Тестирование с помощью JUnit 5 на Kotlin
habra.16
habrabot(difrex,1) — All
2018-01-11 19:30:17


В этой статье будут рассмотрены основные возможности платформы JUnit 5 и приведены примеры их использования на Kotlin. Материал ориентирован на новичков в Kotlin и/или JUnit, хотя, возможно, и более опытные разработчики найдут интересные вещи.
[Читать дальше →][1]

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

[>] Как защитить ИТ-инфраструктуру: 7 базовых советов
habra.16
habrabot(difrex,1) — All
2018-01-11 22:15:04


В новостях все чаще появляется [информация][1] об утечках данных, а крупные компании расходуют баснословные суммы на усиление безопасности. Как [отмечает][2] консалтинговая организация IDC, к 2020 году мировые траты на IT Security превысят 100 млрд долларов.

Однако для построения защищенной ИТ-инфраструктуры [не обязательно][3] тратить огромные деньги. Например, система Linux [обладает][4] встроенными механизмами защиты, которые при должной настройке позволяют отразить наиболее популярные типы атак на ОС и сети.

В этом материале мы рассмотрим несколько базовых советов, снижающих вероятность взлома ИТ-инфраструктуры и компрометации информации. Примеры в посте приведены для Linux-based систем, однако некоторые описываемые практики применимы и для других ОС.

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

[1]: https://habrahabr.ru/company/1cloud/blog/344972/
[2]: https://www.idc.com/getdoc.jsp?containerId=prUS41851116
[3]: http://www.computerweekly.com/tip/10-Linux-security-tools-for-system-administrators
[4]: https://www.tecmint.com/linux-server-hardening-security-tips/
[5]: https://habrastorage.org/webt/ww/7m/cq/ww7mcq-ihaggsnw6udbwi-4hheo.jpeg
[6]: https://habrahabr.ru/company/1cloud/blog/346466/
[7]: https://habrahabr.ru/post/346466/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346466#habracut

[>] [Перевод] Кроссплатформенный IoT: Операции с устройствами
habra.16
habrabot(difrex,1) — All
2018-01-11 22:15:04


Привет, Хабр! IoT Hub Explorer — это кроссплатформенный инструмент на базе node.js по управлению устройствами в использующемся IoT Hub, который может работать в среде Windows, Mac или Linux. Сегодня поговорим о нем в рамках диагностики и усовершенствования IoT Hub Azure. Заглядывайте под кат за подробностями!

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

[1]: https://habrastorage.org/webt/3x/5e/er/3x5eer0uia_cerbcqvqdxh67sco.jpeg
[2]: https://habrahabr.ru/post/343802/?utm_source=habrahabr&utm_medium=rss&utm_campaign=343802#habracut

[>] Просто о графах. Попытка популяризации
habra.16
habrabot(difrex,1) — All
2018-01-12 01:45:04


> «Всякие звания (дворянина, купца, мещанина, крестьянина и пр., титулы — княжеские, графские и пр.) и наименование гражданских чинов (тайные, статские и проч. советники) уничтожаются...»

_Об уничтожении сословий и гражданских чинов
Декрет ВЦИК и СОВНАРКОМа от 10.11.1917 года, ст. 2_
----

![image][1]


### Как-то же я обходился без этого раньше...


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

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

[1]: https://habrastorage.org/webt/iw/xv/ik/iwxvikkulerguojc14it2_ffuwy.png
[2]: https://habrahabr.ru/post/346440/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346440#habracut

[>] Мега-Учебник Flask, Часть 5: Пользовательские логины (издание 2018)
habra.16
habrabot(difrex,1) — All
2018-01-12 12:30:05


[blog.miguelgrinberg.com][1]



### _Miguel Grinberg_ {#miguel-grinberg}


----


[<<< предыдущая][2] [следующая >>>][3]



Эта статья является переводом пятой части нового издания учебника Мигеля Гринберга, выпуск которого автор планирует завершить в мае 2018.[Прежний перевод][4] давно утратил свою актуальность.


----


Это пятый выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как создать подсистему входа пользователя.

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

[1]: http://blog.miguelgrinberg.com "blog.miguelgrinberg.com"
[2]: https://habrahabr.ru/post/346344/
[3]: https://habrahabr.ru/post/346348/
[4]: https://habrahabr.ru/post/193242/ "Прежний перевод"
[5]: https://habrahabr.ru/post/346346/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346346#habracut

[>] [Перевод] Рассказ о том, как я майню эфир через meltdown на ваших телефонах при помощи npm
habra.16
habrabot(difrex,1) — All
2018-01-12 12:45:09


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



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

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

[>] Об особенностях сканирования исполняемых файлов антивирусами и доверии результатам VirusTotal
habra.16
habrabot(difrex,1) — All
2018-01-12 14:45:04


![][1]

Всем привет.

Ниже будет много глупого текста, ностальгических воспоминаний и школотного кода. Кроме того будет рассмотрена эффективность сервиса VirusTotal, а также антивирусных движков в отношении исполняемых файлов.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/3y/xn/4j/3yxn4jipriehwlz7rceg967cdke.jpeg
[2]: https://habrahabr.ru/post/346480/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346480#habracut

[>] Обнаружена новая «парольная» уязвимость Mac OS High Sierra
habra.16
habrabot(difrex,1) — All
2018-01-12 14:45:04


![][1]
 
В актуальной версии операционной системы macOS High Sierra (10.13.2) обнаружена новая уязвимость, позволяющая кому угодно изменять настройки App Store с абсолютно любым паролем. Эта уязвимость уже вторая масштабная проблема за последние три месяца.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/z1/zo/9g/z1zo9gxbzjz-_a5xb9foeyljd58.jpeg
[2]: https://habrahabr.ru/post/346496/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346496#habracut

[>] Тесты на знание Python, PHP, Golang и DevOps: разбор викторины AvitoQuiz на Highload
habra.16
habrabot(difrex,1) — All
2018-01-12 16:30:04


Конференция Highload++ 2017 отгремела, и это было круто — как всегда. Мы пересматриваем доклады, вовсю пользуемся опытом, которым с нами поделились коллеги, и с удовольствием вспоминаем разные активности, которые проводились вне зоны докладов.



На нашем стенде, например, можно было пройти тест на знание одного из языков программирования (Python, Go, PHP) или тест для DevOps и получить красочную тематическую футболку. Сегодня хотим предложить вам ещё раз окунуться в атмосферу конференции и разобрать ответы на самые Highload-задачи из нашего теста. А может, вы сможете решить их, не заглядывая под спойлер?



Enjoy!



![][1]

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

[1]: https://habrastorage.org/webt/97/-9/-r/97-9-ra3fawbtgu0-lkoeq_k_tq.jpeg
[2]: https://habrahabr.ru/post/346520/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346520#habracut

[>] [Перевод] 21 совет по эффективному использованию Composer
habra.16
habrabot(difrex,1) — All
2018-01-12 17:00:03


![][1]


Хотя большинство PHP-разработчиков умеют пользоваться Composer, не все делают это эффективно или лучшим возможным образом. Поэтому я решил собрать советы, которые важны для моей повседневной работы. Большинство из них опираются на принцип «От греха подальше»: если что-то можно сделать несколькими способами, то я выбираю наименее рискованный.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/kv/zn/c2/kvznc2jdu60td83vihabltnl3ey.jpeg
[2]: https://habrahabr.ru/post/346488/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346488#habracut

[>] Meltdown и Spectre для облака: наша оценка рисков и как мы патчились
habra.16
habrabot(difrex,1) — All
2018-01-12 17:30:18


![][1]

Новый год начался очень оригинально. Вместо семейных посиделок служба эксплуатации тщательно следила за развитием ситуации с уязвимостями процессоров Meltdown и Spectre. В теории они означали угрозу для данных и ключей клиентов. Если очень коротко, то реализация уязвимостей выглядит так:

— А у вас АКСУ в продаже есть?
— Нету.
— А КПВТ?
— Нету.
— А гранаты?
— Ээх, вот чего нет, того нет.

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

Мы очень беспокоились за СУБД, потому что именно на них ожидался пик syscall’ов, и потребление ресурсов облака могло вырасти больше чем на 10%.

Забегая чуть вперёд — с патчами MS SQL в некоторых тестах работает почему-то быстрее.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/ed/_s/d1/ed_sd1vrcgo-omgmug8mhuytlak.png
[2]: https://habrahabr.ru/post/346524/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346524#habracut

[>] Линукс и вёрстка газеты (не для профессионалов)
habra.16
habrabot(difrex,1) — All
2018-01-12 19:45:04


> Вот вы, например. Вы ведь думаете, что после смерти всё кончается, верно?
>
> — Верно… — откликнулось несколько голосов в зале. [...]
>
> — И ток не течет по воздуху. Верно?
>
> — Верно…
>
> — И без Windows или MacOS невозможно производить допечатную подготовку газеты?



Неверно. С помощью линукса можно, конечно, делать не всё, но гораздо больше, чем вы думаете.



Лет пятнадцать назад рекламное агентство, где я работал, начал поклёвывать жареный петух по поводу нелицензионного ПО. Шеф прикинул возможности и решил, что сможет выкроить из бюджета сумму на покупку пяти лицензий Windows+Office, одной 1С 7.7 и парочки Corel Draw. Работать при этом на 1С должны были 10 рекламных менеджеров, а Windows была совершенно необходима дизайнерам.



У нас был хороший админ; он тоже прикинул возможности, проконсультировался с коллегами и задумался: зачем конкретно менеджерам-продажниками нужна Windows?


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

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

[>] Обнаружение известного вредоносного кода в зашифрованном с помощью TLS трафике (без дешифровки)
habra.16
habrabot(difrex,1) — All
2018-01-12 22:00:04


В данной статье рассматривается работа группы исследователей компании Cisco, доказывающая применимость традиционных методов статистического и поведенческого анализа для обнаружения и атрибуции вредоносного ПО, использующего TLS в качестве метода шифрования каналов взаимодействия, без дешифровки или компрометации TLS-сессии, а также описание решения Encrypted Traffic Analytics, реализующая принципы, заложенные в данном исследовании.
[Читать дальше →][1]

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

[>] Обзор заготовки web-приложения на Zend Framework 3
habra.16
habrabot(difrex,1) — All
2018-01-12 22:15:04


> Статья является обзорной и не несет в себе никаких how-to-туториалов. Если вы случайно "напоролись" на неё в сети, то предупреждаю сразу, что она не научит вас использовать Zend Framework 3 (далее ZF3).

![Cover][1]



Привет, читатель! Решил я анонсировать свое детище на замечательном ресурсе Хабрахабр. Я не являюсь постоянным читателем, но понимаю, что основная часть людей ищущих что-то интересное натыкается непременно сюда. Пришел сюда спецом за трафиком, ибо нет сил наблюдать больше смерть своих творений.

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

[1]: https://habrastorage.org/webt/xf/9h/me/xf9hmewmz363lmpliyo_kemvq6e.png
[2]: https://habrahabr.ru/post/346486/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346486#habracut

[>] Терабит смерти. Министерство обороны США под угрозой кибератак
habra.16
habrabot(difrex,1) — All
2018-01-13 00:15:06


![][1]

11 января 2018 года руководитель Агентства защиты информационных систем Министерства обороны США заявил, что в настоящее время глобальные сети Департамента обороны находятся под постоянной угрозой, кроме того заметно возрастает изощренность кибератак и усовершенствуются технологии нападений.

Генерал-лейтенант армии США, Алан Р. Линн, который помимо этого является командующим Штаба объединенных сил Агентства защиты информационных систем Министерства обороны США, рассказал о некоторых интересных и неожиданных открытиях, которые он отметил во время своей работы, начиная с назначения на этот пост в 2015 году.
[Читать дальше →][2]

[1]: https://habrastorage.org/webt/sq/he/iq/sqheiqaat1xhresccvuzcbfzqlc.jpeg
[2]: https://habrahabr.ru/post/346512/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346512#habracut

[>] Насколько медленнее будет ваша система после патчей для Spectre-Meltdown?
habra.16
habrabot(difrex,1) — All
2018-01-13 00:15:04


[![][1]
][2]

В начале недели компания Intel [выпустила][3] обновление микрокода для большого числа актуальных и устаревших моделей процессоров. Обновление доступно в виде пакетов для Red Hat Enterprise Linux, SUSE Linux Enterprise Server, CentOS, Fedora, Ubuntu, Debian и Chrome OS, позволяющих обновить микрокод без обновления BIOS. Обновление микрокода не отменяет необходимости применения KPTI-патчей к ядру Linux (микрокод необходим для полноценного закрытия уязвимости Spectre);

Также Intel [опубликовала][4] данные об изменении производительности систем с процессорами 6, 7 и 8-го поколений после обновлений безопасности, связанных с закрытием уязвимостей “Spectre” и “Meltdown”, собранные как от пользователей, так и с помощью синтетических тестов.

Под катом несколько интересных выводов из данных, опубликованных Intel, а также о воздействии патчей на Linux-системы:


### Результаты исследования Intel для клиентских систем

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

[1]: https://habrastorage.org/webt/qn/nd/le/qnndleboll9bjbgtuzctua7u6ni.png
[2]: https://habrahabr.ru/company/cloud4y/blog/346518/
[3]: https://downloadcenter.intel.com/download/27431/Linux-Processor-Microcode-Data-File
[4]: https://newsroom.intel.com/editorials/intel-security-issue-update-initial-performance-data-results-client-systems/
[5]: https://habrahabr.ru/post/346518/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346518#habracut

[>] Почему я до сих пор не занимаюсь опенсорсом
habra.16
habrabot(difrex,1) — All
2018-01-13 10:15:05


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

Брендон Хейс (Brandon Hays) еще в 2011 году написал на эту тему [отличную статью][2] перевод которой я публикую ниже. Через опыт автора мне хотелось выйти на системное понимание проблем, делающих опенсорс “недружелюбным” для новичков. Буду очень рад, если читатели поделятся свои опытом: изменилось ли что-то за последние годы? как вы решали/решаете обозначенные проблемы? что нужно сделать, чтобы в опенсорс проектах было легче участвовать?
И да — несмотря на все сказанное, лично я считаю, что Open Source — это единственно возможное будущее для разработки ПО. Многие со мной не согласятся — прошу не кидаться камнями, я постараюсь подробнее развить эту мысль в наших следующих статьях.
[Читать дальше →][3]

[1]: https://habrahabr.ru/post/346130/
[2]: http://brandonhays.com/blog/2011/05/03/why-i-still-dont-contribute-to-open-source/
[3]: https://habrahabr.ru/post/346558/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346558#habracut

[>] [Перевод] Как построить сообщество. Перевод книги «Социальная архитектура»: Глава 6. Живые Системы
habra.16
habrabot(difrex,1) — All
2018-01-13 22:00:04


![image][1]«Живой Системой» называется такая система, которая развивается в естественной среде, самостоятельно приспосабливаясь к новым условиям. Живые Системы могут существовать довольно долгое время, легко адаптируясь к любым изменениям, являясь, таким образом, чрезвычайно эффективными. В отличие от них, “Спланированные Системы” являются, как правило, неустойчивыми, плохо реагирующими на изменения и, как следствие, недолговечными. В этой статье я расскажу о Живой Системе на примере программного обеспечения и общества, а также расскажу о том, как создать подобную систему.


### Почему “Живые Системы”


[Согласно Википедии][2], «Живые Системы» — это сущности, состоящие из самоорганизующихся элементов, активно взаимодействующих с окружающей средой. Эти системы поддерживаются благодаря потокам информации, энергии и веществ.” Данный термин был предложен психологом Джеймсом Гриером Миллером для обозначения концепций жизни.

Я хочу воспользоваться этим термином для создания новой метафоры для систем программного обеспечения и занимающихся ими организаций — двух типов систем, которые представляют для меня наибольший интерес. Эти две системы не просто похожи. Программное обеспечение это продукт, созданный группой людей, и, как отметил Конвэй, **структура системы программного обеспечения отражает структуру организации, которая эту систему разрабатывает.** Хочу сказать, что “психология программного обеспечения — это психология людей”.
[Читать дальше →][3]

[1]: https://habrastorage.org/webt/dd/vy/lx/ddvylx8yyztptrfbglhgaltsmxq.jpeg
[2]: http://en.wikipedia.org/wiki/Living_systems
[3]: https://habrahabr.ru/post/342036/?utm_source=habrahabr&utm_medium=rss&utm_campaign=342036#habracut

[>] Как обучть мдль пнмть упртые скрщня
habra.16
habrabot(difrex,1) — All
2018-01-13 23:45:17


Недавно я натолкнулся на [вопрос][1] на Stackoverflow, как восстанавливать исходные слова из сокращений: например, из _wtrbtl_ получать _water bottle_, а из _bsktball_ — _basketball_. В вопросе было дополнительное усложнение: полного словаря всех возможных исходных слов нет, т.е. алгоритм должен быть в состоянии придумывать новые слова.



Вопрос меня заинтриговал, и я полез разбираться, какие алгоритмы и математика лежат в основе современных опечаточников (spell-checkers). Оказалось, что хороший опечаточник можно собрать из n-граммной языковой модели, модели вероятности искажений слов, и жадного алгоритма поиска по лучу (beam search). Вся конструкция вместе называется модель [зашумлённого канала][2] (noisy channel).



Вооружившись этими знаниями и Питоном, я за вечер создал с нуля модельку, способную, обучившись на тексте "Властелина колец" (!), распознавать сокращения вполне современных спортивных терминов.


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

[1]: https://stackoverflow.com/questions/43510778
[2]: http://web.stanford.edu/~jurafsky/slp3/5.pdf
[3]: https://habrastorage.org/webt/1a/fo/ar/1afoarhel5lgye2tszzns09ny9u.png
[4]: https://habrahabr.ru/post/346578/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346578#habracut

[>] О том, как я переизобретал медиацентр
habra.16
habrabot(difrex,1) — All
2018-01-14 15:00:04


![][1]



С приобретением нового телевизора возник вопрос, какую приставку для него брать. Возможностей Chromecast уже не хватало и хотелось полноценный медиацентр на Kodi. Телевизор со SmartTV покупать не вариант — Kodi можно установить только на Android (из SmartTV платформ), а к нему я отношусь без особой любви, к тому же он уже внутри телевизора, а не в отдельной коробке, которую можно безбоязненно перепрошивать. Ну а зачем мне полноразмерный Android, со всеми его сервисами и программами в виртуальной машине, без полноценного GNU/Linux окружения и, скорее всего, без обновлений? По той же причине также были отметены многочисленные готовые медиацентры на Android, хотя та же приставка от Xiaomi довольно хороша. Можно было бы подумать насчёт SmartTV на TizenOS, но для него нет Kodi.

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

[1]: https://habrastorage.org/webt/u5/u2/5u/u5u25uj8x94cbqwfcsbt6hfaasq.png
[2]: https://habrahabr.ru/post/346594/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346594#habracut

[>] [Из песочницы] Обучаемый Telegram чат-бот на Python в 30 строчек кода с ИИ
habra.16
habrabot(difrex,1) — All
2018-01-14 17:30:04


![image][1]

### Сегодня мне в голову стукнула мысль: «А почему бы не написать Telegram чат-бота с ИИ, которого потом можно будет обучать?»

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

[1]: https://habrastorage.org/getpro/habr/post_images/3aa/c1f/318/3aac1f3187f0ccca7f43ee34699dfc32.jpg
[2]: https://habrahabr.ru/post/346606/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346606#habracut

[>] [Из песочницы] Обучаемый Telegram чат-бот с ИИ в 30 строчек кода на Python
habra.16
habrabot(difrex,1) — All
2018-01-14 17:45:04


![image][1]

### Сегодня мне в голову стукнула мысль: «А почему бы не написать Telegram чат-бота с ИИ, которого потом можно будет обучать?»

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

[1]: https://habrastorage.org/getpro/habr/post_images/3aa/c1f/318/3aac1f3187f0ccca7f43ee34699dfc32.jpg
[2]: https://habrahabr.ru/post/346606/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346606#habracut

[>] Сказ о тотальном переборе, или Томительное ожидание декрипта
habra.16
habrabot(difrex,1) — All
2018-01-15 00:45:04


![image][1] Приветствую жителей Хабра!

Итак, новые «криптографические игрища» пришли по мою душу. Поэтому сегодня поговорим о занудном упражнении, ориентированном на полный перебор паролей, реализации тривиального многопоточного брутера силами C++ и OpenMP, а также кратко об использовании криптобиблиотеки CryptoPP и стороннего модуля fastpbkdf2 (для Си и Плюсов) в своих проектах.

Го под кат, печеньки out there!
[Читать дальше →][2]

[1]: https://habrastorage.org/getpro/habr/post_images/99a/f2b/0c1/99af2b0c1cab8cf0f9ebd241b1b98d16.png
[2]: https://habrahabr.ru/post/346572/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346572#habracut

[>] [Перевод] Rust: «Назад к корням»
habra.16
habrabot(difrex,1) — All
2018-01-15 11:00:04


Мне приходит в голову множество разных целей для Rust в текущем 2018 году, к слову, 2017 год прошел для меня очень быстро, так что я задался следующим вопросом: если бы я мог выбрать одну-единственную цель для Rust в 2018 году, то что бы я выбрал?



Я буду пристрастен, и вот мое мнение:

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

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

[>] [Перевод] Изучаем команду wget на 12 примерах
habra.16
habrabot(difrex,1) — All
2018-01-15 13:15:19


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

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

[1]: https://habrastorage.org/webt/o-/b2/qd/o-b2qdxm9elu2ef47_6y9fchzao.png
[2]: https://habrahabr.ru/company/ruvds/blog/346640/
[3]: https://habrahabr.ru/post/346640/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346640#habracut

[>] Первый пользователь с миллионом на Stack Overflow
habra.16
habrabot(difrex,1) — All
2018-01-25 15:30:14


Achievement unlocked: на Stack Overflow [появился][1] первый пользователь с 1 миллионом баллов репутации.

Stack Overflow [открыт][2] в сентябре 2008 года и с тех пор помогает разработчикам со всего мира находить необходимые ответы на технические вопросы. Например, сайт [показал][3] миллиону пользователей выход из Vim. На январь 2017 года на Stack Overflow 8 миллионов зарегистрированных пользователей, [15 миллионов вопросов ][4]и 24 миллиона ответов. Еще десять лет назад ничего этого не было.

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

[1]: https://meta.stackoverflow.com/questions/362019/thanks-a-million-jon-skeet?answertab=active#tab-top
[2]: https://blog.codinghorror.com/stack-overflow-none-of-us-is-as-dumb-as-all-of-us/
[3]: https://stackoverflow.com/questions/11828270/how-to-exit-the-vim-editor
[4]: https://stackexchange.com/sites#
[5]: https://habrastorage.org/webt/sd/40/he/sd40hedic8eru4gp8yj_vobkrio.png
[6]: https://habrahabr.ru/post/347494/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347494#habracut

[>] Layer 7 DoS: атаки на отказ от обслуживания веб-приложения
habra.16
habrabot(difrex,1) — All
2018-01-25 15:45:03


![][1]

Распределенные атаки на отказ в обслуживании, которым подвергаются популярные сайты обычно происходят с тысяч и тысяч взломанных устройств. Эти атаки в основном направлены на подавление целевой системы масштабным трафиком, забиванием канала связи. Эти атаки относятся к layer 3 (сетевой уровень модели ISO/OSI) DoS/DDoS и характеризуются большим количеством пакетов, которыми атакуется ресурс. Layer 7 (прикладной уровень модели ISO/OSI) DoS/DDoS обычно направлен на "слабые" места веб-приложения.

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

[1]: https://habrastorage.org/webt/0q/fv/jj/0qfvjjj3thmaky1-2ufoggylfxy.png
[2]: https://habrahabr.ru/post/347456/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347456#habracut

[>] [Перевод] Создание игр на Python 3 и Pygame: Часть 3
habra.16
habrabot(difrex,1) — All
2018-01-25 17:15:14


![image][1]
(Остальные части туториала: [первая][2], [вторая][3], [четвёртая][4], [пятая][5].)

Это третья из пяти частей туториала о создании игр с помощью Python 3 и Pygame. Во второй части мы рассмотрели класс `TextObject`, используемый для рендеринга текста на экран, создали основное окно и узнали, как отрисовывать объекты: кирпичи, мяч и ракетку.

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


## Обработка событий


В Breakout есть три типа событий: события нажатий клавиш, события мыши и события таймера. Основной цикл в классе Game обрабатывает нажатия клавиш и события мыши и передаёт их подписчикам (вызывая функцию-обработчик).

Хотя класс Game очень общий и не обладает знаниями о реализации Breakout, сама подписка и способы обработки событий очень специфичны.
[Читать дальше →][6]

[1]: https://habrastorage.org/getpro/habr/post_images/e38/895/a15/e38895a159ff5bbd8da2f1040b61d219.gif
[2]: https://habrahabr.ru/post/347138/
[3]: https://habrahabr.ru/post/347170/
[4]: https://habrahabr.ru/post/347266/
[5]: https://habrahabr.ru/post/347286/
[6]: https://habrahabr.ru/post/347256/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347256#habracut

[>] Chromium: о шестой проверке проекта
habra.16
habrabot(difrex,1) — All
2018-01-25 17:30:04


Этот текст начинает цикл статей, посвященных очередной проверке проекта Chromium с помощью статического анализатора кода PVS-Studio. В статьях будут рассмотрены различные паттерны ошибок и предложены рекомендации, позволяющие снизить вероятность их появления в коде. Однако, прежде чем начать, требуется написать своего рода введение, которое заранее ответит на ряд вопросов, а также предоставит разработчикам Chromium все замеченные ошибки, которые они могут начать исправлять, не дожидаясь окончания цикла статей.

![Андрей Карпов, PVS-Studio][1]

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


Меня зовут Андрей Карпов, и я являюсь евангелистом статического анализа в целом и инструмента статического анализа PVS-Studio в частности. Впрочем, термин «технический евангелист» уже устаревает и на его смену приходит «developer advocate».

Я уделяю много времени написанию материала, посвященного улучшению качества кода и повышению надежности программ. Сейчас у меня есть новый повод написать несколько статей на эту тему — проверка открытого проекта [Chromium][2] с помощью анализатора PVS-Studio. Это большой проект, а в любом большом проекте живут баги разнообразнейших видов. Такое разнообразие позволяет рассмотреть сразу несколько интересных тем, связанных с причинами возникновения этих багов и способами их предотвращения.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/978/1db/52e/9781db52e24de61cf6e1700014f75fcd.png
[2]: https://www.chromium.org/
[3]: https://habrahabr.ru/post/347536/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347536#habracut

[>] Chromium: шестая проверка проекта и 250 багов
habra.16
habrabot(difrex,1) — All
2018-01-25 17:45:13


Этот текст начинает цикл статей, посвященных очередной проверке проекта Chromium с помощью статического анализатора кода PVS-Studio. В статьях будут рассмотрены различные паттерны ошибок и предложены рекомендации, позволяющие снизить вероятность их появления в коде. Однако, прежде чем начать, требуется написать своего рода введение, которое заранее ответит на ряд вопросов, а также предоставит разработчикам Chromium все замеченные ошибки, которые они могут начать исправлять, не дожидаясь окончания цикла статей.

![Андрей Карпов, PVS-Studio][1]

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


Меня зовут Андрей Карпов, и я являюсь евангелистом статического анализа в целом и инструмента статического анализа PVS-Studio в частности. Впрочем, термин «технический евангелист» уже устаревает и на его смену приходит «developer advocate».

Я уделяю много времени написанию материала, посвященного улучшению качества кода и повышению надежности программ. Сейчас у меня есть новый повод написать несколько статей на эту тему — проверка открытого проекта [Chromium][2] с помощью анализатора PVS-Studio. Это большой проект, а в любом большом проекте живут баги разнообразнейших видов. Такое разнообразие позволяет рассмотреть сразу несколько интересных тем, связанных с причинами возникновения этих багов и способами их предотвращения.
[Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/978/1db/52e/9781db52e24de61cf6e1700014f75fcd.png
[2]: https://www.chromium.org/
[3]: https://habrahabr.ru/post/347536/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347536#habracut

[>] [Из песочницы] Перевод с человеческого на ботовский
habra.16
habrabot(difrex,1) — All
2018-01-25 18:00:13


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

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

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

[>] Реализация fork() без MMU
habra.16
habrabot(difrex,1) — All
2018-01-25 19:00:11


Здравствуй, читатель! Пару лет назад в [статье про vfork()][1] я обещал рассказать про реализацию fork() для систем без MMU, но руки до этого дошли только сейчас :)

В этой статье я расскажу, как мы реализовали такой странный `fork()`. Проверять работоспособность буду на сторонней программе — dash — интерпретаторе, который использует `fork()` для запуска приложений.

Кому интересно, прошу под кат.
[Читать дальше →][2]

[1]: https://habrahabr.ru/company/embox/blog/232605/
[2]: https://habrahabr.ru/post/347542/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347542#habracut

[>] [Из песочницы] Расширение NLog для мониторинга ошибок
habra.16
habrabot(difrex,1) — All
2018-01-25 23:30:14


Не было ли у вас мысли, что исправлять ошибки пользуясь лог-файлом не очень эффективно?

Хотите исправлять ошибки быстрее и проще?

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

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

[1]: https://habrastorage.org/webt/c0/ox/ra/c0oxrae8k8xx4afr0p52blwyovc.png
[2]: https://habrahabr.ru/post/347528/?utm_source=habrahabr&utm_medium=rss&utm_campaign=347528#habracut

[>] Azure ML Workbench: Начало работы
habra.16
habrabot(difrex,1) — All
2018-01-25 23:30:14


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

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

[1]: https://habrastorage.org/webt/5d/rv/gh/5drvghhzefogpewdopgzwzdrzkw.jpeg
[2]: https://habrahabr.ru/post/346888/?utm_source=habrahabr&utm_medium=rss&utm_campaign=346888#habracut

[>] [Из песочницы] Препарирование файлов .XLSX: введение, стили ячеек
habra.16
habrabot(difrex,1) — All
2018-01-25 23:30:14


Не так давно по долгу службы понадобилось редактировать файлы MS Office (в первую очередь MS Word и MS Excel) средствами PL/SQL, то есть языка, с .NET не связанного практически никак. В связи с этим возникла проблема, что в руководстве от Microsoft про редактирование этих файлов, что называется, «руками» не сказано практически ничего, а единственный вменяемый сайт-справочник по этому делу, видимо, не обновлялся года этак с 2010. Понимание необходимости свести воедино все, что я по крупицам собрал со Stackoverflow и собственных экспериментов, пришло почти сразу.

Сразу хочется сделать несколько замечаний.

_Первое_. В основном говорить буду про то, с чем сталкивался лично. Претензий на стопроцентное знание «изнанки» формата у меня нет.

_Второе_. Как многие, вероятно, знают, файлы MS Office 2007 и выше представляют собой архив, который можно открыть с помощью любого архиватора (WinRAR, 7zip и так далее).

_Третье_. «Под капотом» у этих файлов — в основном XML-разметка, гордо именуемая OOXML или просто OpenXML. Поэтому, в принципе, для понимания принципов редактирования файлов «руками» достаточно будет Блокнота (или, что удобнее, Notepad++).

Итак, начнем с формата MS Excel как наиболее употребимого для генерации всевозможных отчетов, выгрузок из БД и иже с ними.
[Читать дальше →][1]

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

Pages: 1 ... 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133