RSS
Pages: 1 ... 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 ... 210
[>] Победитель Password Hashing Competition Argon2 или еще раз о медленном хэшировании
habra.16
habrabot(difrex,1) — All
2016-04-14 15:00:02


Привет, %username%! ![][1] Ранее мы уже [затрагивали][2] тему замедления хэширования. Это было еще до введения моды на быстрые хэшедробилки aka майнеры. Как оказалось, тема намного серьезней, чем «прокрутить хэш 100500 раз и подмешивать к нему всякий мусор», потому что GPU и спец девайсы драматически ускоряют перебор, с которым сложно бороться даже с помощью таких вещей как bcrypt. И вот, люди [запилили соревнование][3], результатом которого должен был стать алгоритм, который сложно ускорить на спец чипах и GPU, при этом он должен быть настраиваемым в зависимости от пожеланий разработчика. Таким алгоритмом стал [Argon2][4]. [Читать дальше →][5]

[1]: https://habrastorage.org/files/701/a1d/460/701a1d460396480e91004b7b704e63bc
[2]: https://habrahabr.ru/post/100138/
[3]: https://password-hashing.net/
[4]: https://github.com/P-H-C/phc-winner-argon2
[5]: https://habrahabr.ru/post/281569/#habracut

[>] [Из песочницы] Разработка для коптеров
habra.16
habrabot(difrex,1) — All
2016-04-14 16:00:03


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




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

[1]: https://habrahabr.ru/post/281591/#habracut

[>] [Перевод] Введение в программирование шейдеров: часть 2
habra.16
habrabot(difrex,1) — All
2016-04-14 16:30:02


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

[1]: https://habrastorage.org/files/fb6/77e/691/fb677e69164540a098cfeea507d29795.jpg
[2]: https://habrahabr.ru/post/281599/#habracut

[>] [Перевод] v3.14.1592-beta2: все, что вы хотели знать о семантическом версионировании
habra.16
habrabot(difrex,1) — All
2016-04-14 16:30:02


![][1]Усилия и деньги, вкладываемые в продвижение языка Go, часто приносят пользу и другим разработчикам. В конце прошлого года на сайте [gopheracademy][2] была опубликована очень удачная статья о семантическом версионировании. Том самом, которое используется в npm, начинается с домика **^** и все ломает. Под катом спрятан перевод, который поможет вам быстро осмотреть сад граблей версионирования и как сейчас принято им пользоваться. И немного примеров на Go. Передаем слово автору! [go? какой go? зачем go?!][3]

[1]: https://habrastorage.org/files/dc9/4b6/0ec/dc94b60ec0fa46b3b358c32492bbb8f6.jpeg
[2]: https://www.gopheracademy.com/
[3]: https://habrahabr.ru/post/281593/#habracut

[>] Хакеры продали ФБР секрет взлома iPhone
habra.16
habrabot(difrex,1) — All
2016-04-14 17:00:02


Журналистка Ellen Nakashima издания Washington Post [опубликовала][1] первую публичную информацию относительно ситуации со взломом iPhone 5C, работающим под iOS 9. Именно этот смартфон использовался террористом из Сан-Бернардино и послужил настоящим [камнем преткновения][2] между ФБР и Apple в вопросе раскрытия личных данных пользователей и правовой оценке такого действия. Ранее СМИ уже публиковали различную информацию на данную тему, так как вопрос был закрыт ФБР без привлечения Apple. При этом некоторые ошибочно назвали израильскую компанию Cellebrite источником информации для ФБР. ![][3] Источник из спецслужб рассказал, что смартфон был взломан профессиональными хакерами и использовал, по крайней мере, одну неизвестную уязвимость в ПО iOS 9. Уязвимости помогли ФБР успешно использовать специальное устройство для подбора 4-х значного кода разблокировки iOS. Работа хакеров была хорошо оплачена, хотя сама сумма не называется. На подбор кода разблокировки специалистам понадобилось 26 минут, а сам способ работает только на iPhone 5C с iOS 9. Таким образом, как ранее [указывал][4] эксперт Rob Graham, для этой операции не использовался способ NAND Mirroring. [Читать дальше →][5]

[1]: https://www.washingtonpost.com/world/national-security/fbi-paid-professional-hackers-one-time-fee-to-crack-san-bernardino-iphone/2016/04/12/5397814a-00de-11e6-9d36-33d198ea26c5_story.html
[2]: https://habrahabr.ru/company/eset/blog/279971/
[3]: https://habrastorage.org/files/76f/a44/3a0/76fa443a0e8842f680a6deded3e43b9a.png
[4]: http://blog.erratasec.com/2016/03/im-skeptical-of-nand-mirroring.html#.Vw9PAlWLSUk
[5]: https://habrahabr.ru/post/281573/#habracut

[>] Динамическая онтология. Как инженеры Palantir объясняют это ЦРУ, АНБ и военным
habra.16
habrabot(difrex,1) — All
2016-04-14 20:00:03


Компания Palantir является четвертой по крутости частной компанией Кремниевой долины (после Uber, Xiaomi и Airbnb). Пока Palantir собирает информацию про все на свете, мы собираем информацию про него. Вместе с компанией [Edison][1] продолжаем расследование возможностей платформы Palantir. ![][2] ИТишники додумались как эффективно «монетизировать математику и алгоритмы» (Сегалович, Бакунов), PayPal Mafia додумалась как монетизировать философию (капитализация Palantir — 20 миллиардов долларов). В десятиминутной лекции сотрудник компании Palantir расскажет про центральную концепцию их системы — динамическую онтологию. ![][3] 0:00 Привет, я Ашер Синенски, инженер по развертыванию технологий Palantir. Я поговорю о динамической онтологии. 0:08 Очевидно, сейчас, эти два слова выглядят для вас довольно туманно, надеюсь, что к концу разговора вы поймете, какой смысл мы в них вкладываем. 0:17 Перед тем как переходить к делу, поясню: у многих людей проблемы со словом онтология. Что мы подразумеваем под этим словом? 0:24 Если вы посмотрите на корни этого слова, то оно образовано от греческих «онтос» (бытие) и «логия» (изучение чего-либо). По сути, онтология – это категоризация мира. 0:34 Есть много терминов, которые люди используют для описания этого: таксономия, схематизатор модели данных. Но мы используем это, в более широком смысле, как идею, что мы действительно категоризируем мир каким-то образом. 0:43 Идея о построении онтологии для изучения мира не нова. Первым, кто утвердил эту идею, был мужик по имени Платон. Идея Платоновского реализма, в основном, о том, что есть реальные вещи, а есть наше представление о вещах. [Читать дальше →][4]

[1]: http://www.edsd.com/services/requirements-elaboration
[2]: https://habrastorage.org/files/48d/a30/46e/48da3046e88c40c691f587d3ae1ed7c2.jpg
[3]: https://habrastorage.org/files/f2d/4a2/523/f2d4a2523da445a2a74b6bb4bd284d94.jpg
[4]: https://habrahabr.ru/post/281118/#habracut

[>] Urho3D: Игры всерьез
habra.16
habrabot(difrex,1) — All
2016-04-14 21:00:02


В прошлых статьях ([Основы][1], [Редактор: Часть 1][2] и [Редактор: Часть 2][3]) мы создавали небольшие приложения на языке AngelScript. На этот раз я хочу показать, что благодаря продуманной структуре движка писать игры на таком страшном языке, как C++, так же легко, как и на скриптовом языке. И чтобы вам не было слишком скучно читать, я подготовил небольшую игру (клон Flappy Bird), которую можно скачать здесь: [github.com/1vanK/FlappyUrho][4]. Кстати, исходный код игры можно читать как самостоятельную статью, потому что он очень подробно прокомментирован. ![image][5] [Читать дальше →][6]

[1]: https://habrahabr.ru/post/265611/
[2]: https://habrahabr.ru/post/265749/
[3]: https://habrahabr.ru/post/265837/
[4]: https://github.com/1vanK/FlappyUrho
[5]: https://habrastorage.org/getpro/habr/post_images/89d/78c/4ce/89d78c4ce7a8e4133a69811ac201d78e.png
[6]: https://habrahabr.ru/post/280752/#habracut

[>] [Из песочницы] Пишем бота Slack для получения комментариев из VK на Python
habra.16
habrabot(difrex,1) — All
2016-04-14 21:30:02


Расширяя базовые возможности Slack, столкнулся с проблемой интеграции некоторых соц.сетей в чаты. Чтобы подружить Slack и Вконтакте, было решено использовать Python и API. Ниже базовый рецепт того, как научить Slack-бота получать информацию о последних комментариях из постов на стене групп или сообществ Вконтакте. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/281597/#habracut

[>] Перспективы языка го для программиста
habra.16
habrabot(difrex,1) — All
2016-04-14 21:30:02


![][1] Статья написана по мотивам одного не очень приятного разговора на последнем IT global митапе в Питере. [Читать дальше →][2]

[1]: https://habrastorage.org/files/b32/114/474/b32114474686496f962410f73fa8fb53.jpeg
[2]: https://habrahabr.ru/post/281320/#habracut

[>] SparrowHub — репозиторий готовых утилит для системного администрирования
habra.16
habrabot(difrex,1) — All
2016-04-14 21:30:02




[SparrowHub][1] — проект, целью которого является распространение различных готовых решений для задач системного администрирования и не только.



Несмотря на то, что существует масса решений по автоматизации задач системного администрирования, определенная ниша в этой области все же остается незанятой. Что мы делаем, когда хотим решить какую-то специфическую задачу? Например, проверить логи нашего ssh сервиса на наличие неудачных попыток логинов с целью позаботиться о секьюрности наших серверов? — Берем и пишем однострочник, состоящий из bash команд вида grep, sed, awk и так далее, ну, или можем написать скрипт на [Perl][2]. Отлично, все работает. Eсть решение, которое устраивает нас. И мы пользуемся им. Вопрос в том, _как_ мы хотим сохранить результаты наших трудов, что бы поделиться ими с другими или же когда пройдет время снова воспользоваться придуманным решением. Вот тут и возникает проблема.

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

[1]: https://sparrowhub.org/
[2]: https://www.perl.org/
[3]: https://habrahabr.ru/post/281583/#habracut

[>] Я не знаю как это сделать! Честно-честно
habra.16
habrabot(difrex,1) — All
2016-04-15 06:00:02


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

[1]: https://habrahabr.ru/post/281641/#habracut

[>] Шпаргалка Java программиста 7.1 Типовые задачи: Оптимальный путь преобразования InputStream в строку
habra.16
habrabot(difrex,1) — All
2016-04-15 07:30:06


![][1]

У меня есть хобби: я собираю различные решения типовых задач в Java, которые нахожу в инете, и пытаюсь выбрать наиболее оптимальное по размеру/производительности/элегантности. В первую очередь по производительности. Давайте рассмотрим такую типовую задач, которые часто встречаются в программировании на Java как "преобразование InputStream в строку" и разные варианты её решения.



Посмотрим какие ограничения есть у каждого (требования подключения определенной библиотеки/определенной версии, корректная работа с unicode и т.д.). Английскую версию этой статьи можно найти в [моем ответе на stackoverflow][2]. Тесты в моем проекте на [github][3].










Если вы ещё не видели, советую посмотреть статью [Список полезных ссылок для Java программиста][4], на мой взгляд наиболее полезная из всех моих статей на данный момент.

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

[1]: https://habrastorage.org/files/5ac/b9a/7fb/5acb9a7fb1954a63990ee23a70dc124b.png
[2]: http://stackoverflow.com/a/35446009/4318868
[3]: https://github.com/Vedenin/java_in_examples/blob/master/perfomance_test/src/main/java/com/github/vedenin/perfomace_test/ConvertInputStreamToStringBenchmark.java
[4]: https://habrahabr.ru/company/luxoft/blog/280784/
[5]: https://habrahabr.ru/post/278233/#habracut

[>] Исследование скорости вызова метода различными способами
habra.16
habrabot(difrex,1) — All
2016-04-15 08:00:04




#### Результат и выводы для тех кто не любит длинный текст















Min: 10 ms
Max: 11 ms
Mean: 10,15 ms
Median: 10 ms
Abs: 1



min: 5 ms
Max: 5 ms
Mean: 5 ms
Median: 5 ms
Abs: 1



Min: 107 ms
Max: 110 ms
Mean: 107,8 ms
Median: 107,5 ms
Abs: 1



Min: 55 ms
Max: 57 ms
Mean: 55,3 ms
Median: 55 ms
Abs: 1






Min: 336 ms
Max: 455 ms
Mean: 359,45 ms
Median: 342,5 ms
Rel: 34



Min: 327 ms
Max: 358 ms
Mean: 336,1 ms
Median: 335 ms
Rel: 67



Min: 3362 ms
Max: 3419 ms
Mean: 3387,2 ms
Median: 3385 ms
Rel: 31



Min: 3334 ms
Max: 3427 ms
Mean: 3370,2 ms
Median: 3363 ms
Rel: 61






Min: 657 ms
Max: 1376 ms
Mean: 728,4 ms
Median: 684,5 ms
Rel: 68



Min: 660 ms
Max: 726 ms
Mean: 686,05 ms
Median: 685,5 ms
Rel: 137



Min: 6586 ms
Max: 13735 ms
Mean: 7340,6 ms
Median: 6632,5 ms
Rel: 62



Min: 6501 ms
Max: 6919 ms
Mean: 6798 ms
Median: 6828 ms
Rel: 124






Min: 67 ms
Max: 86 ms
Mean: 69,2 ms
Median: 67,5 ms
Rel: 6.7



Min: 79 ms
Max: 88 ms
Mean: 80,95 ms
Median: 80 ms
Rel: 16



Min: 683 ms
Max: 7373 ms
Mean: 1360,7 ms
Median: 691 ms
Rel: 6.5



Min: 775 ms
Max: 814 ms
Mean: 789,8 ms
Median: 783,5 ms
Rel: 12






Min: 47 ms
Max: 50 ms
Mean: 48 ms
Median: 48 ms
Rel: 5



Min: 39 ms
Max: 43 ms
Mean: 41,25 ms
Median: 41 ms
Rel: 8



Min: 479 ms
Max: 518 ms
Mean: 492 ms
Median: 487 ms
Rel: 4.5



Min: 379 ms
Max: 420 ms
Mean: 392,1 ms
Median: 387,5 ms
Rel: 7





При использованиии .NET Framework 3.5 лучше всего использовать вызов методов через делегат с оптимизацией вызова. Для .NET Framework 4.0+ отличным выбором будет использование dynamic. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/279367/#habracut

[>] [Перевод] Анонс Rust 1.8
habra.16
habrabot(difrex,1) — All
2016-04-15 09:00:02




Мы рады представить новую версию Rust — 1.8. Rust — это системный язык программирования, нацеленный на безопасную работу с памятью, скорость и параллельное выполнение кода. Как обычно, вы можете [установить Rust 1.8][1] с соответствующей страницы официального сайта, а также ознакомиться с [подробным списком изменений][2] в этой версии на GitHub. В этот релиз вошло порядка 1400 патчей.

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

[1]: https://www.rust-lang.org/downloads.html
[2]: https://github.com/rust-lang/rust/blob/stable/RELEASES.md#version-180-2016-04-14
[3]: https://habrahabr.ru/post/281152/#habracut

[>] Приглашаем на семинар RISSPA 20 апреля
habra.16
habrabot(difrex,1) — All
2016-04-15 12:00:02


![][1] 20 апреля в офисе Mail.Ru Group соберутся эксперты в области информационной безопасности на семинаре [ассоциации RISSPA][2] «Безопасная разработка и защита приложений». [Читать дальше →][3]

[1]: https://habrastorage.org/files/c04/74c/aa6/c0474caa6d4c45e6b3747fe78ab30ef7.jpg
[2]: http://www.risspa.ru/
[3]: https://habrahabr.ru/post/281627/#habracut

[>] Так ли нужно избавляться от ветвлений? — На примере sign, abs, min и max
habra.16
habrabot(difrex,1) — All
2016-04-15 13:00:03


Я бы хотел предложить сообществу поучаствовать в пробном эксперименте. Суть его состоит в том, чтобы прогнать на своём компьютере программу, написанную на C++, и поделиться результатом измерения времени, которое она выдаёт, сравнивая скорость работы функций sign(x), abs(x), min(a,b) и max(a,b) в исполнении с ветвлением и без него. В статье я объясню свою мотивацию, покажу сами функции, а в конце предложу условия участия в эксперименте и его (увы) ограничения. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/281629/#habracut

[>] Интернет вещей (IoT) – вызовы новой реальности
habra.16
habrabot(difrex,1) — All
2016-04-15 15:00:03


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

[1]: https://habrastorage.org/files/8fa/97d/e7b/8fa97de7ba2649749a258f9af6447a2e.png
[2]: https://habrahabr.ru/post/281619/#habracut

[>] VolgaCTF: подведение итогов первого тура
habra.16
habrabot(difrex,1) — All
2016-04-15 15:00:03


25-27 марта прошел заочный тур командных соревнований по информационной безопасности VolgaCTF 2016. И сегодня мы публикуем итоги. ![image][1] В этом году чемпионат проходил под знаменем борьбы за свободное ПО: участникам предлагалось найти информацию об искусственном интеллекте GAI, разработанном учеными-энтузиастами. Алчная корпорация, создавшая его коммерческую альтернативу BAI, постаралась скрыть все следы свободного конкурента, на не тут-то было! Следы можно было найти, решая задания, которые в этом году выкладывались в случайном порядке, а не по возрастанию количества баллов, как прежде. [Читать дальше →][2]

[1]: https://habrastorage.org/files/9ba/88d/4c7/9ba88d4c765541a1bfe6dab368fec4da.jpg
[2]: https://habrahabr.ru/post/281661/#habracut

[>] Сравнение языков программирования относительно работы на фриланс-бирже upwork.com + опрос
habra.16
habrabot(difrex,1) — All
2016-04-15 15:00:03




Недавно (в конце марта 2016 года) делал исследование перспективности языков программирования на upwork.com для одного из своих проектов и подумал, что это может быть интересно кому-нибудь ещё.



В первую очередь меня интересовало соотношение спрос/предложение по наиболее популярным ЯП, а так же уровень оплаты труда по каждому из них. Так же мне было любопытно какой уровень квалификации ожидают работодатели (и соответственно сколько они предполагают платить)



![image][1] _Процентное соотношение офферов по популярным языкам программирования_

[Узнать ответ на главный вопрос жизни, вселенной и всего такого][2]

[1]: https://habrastorage.org/files/7f2/609/684/7f260968467e4d928cfc8b5c67ae8c99.png
[2]: https://habrahabr.ru/post/280041/#habracut

[>] [Из песочницы] Разделение отсканированных вместе фотографий (Python 3 + OpenCV)
habra.16
habrabot(difrex,1) — All
2016-04-15 15:00:03


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

[1]: https://habrahabr.ru/post/281669/#habracut

[>] Stack Overflow на русском языке вышел из статуса беты
habra.16
habrabot(difrex,1) — All
2016-04-15 15:00:03


![][1][Stack Overflow на русском][2] вышел из статуса беты, [новость][3] об этом появилась в блоге компании. В данный момент на сайте:

* 115\.7 вопросов задают в день
* 82% вопросов отвечены
* 1,499 постоянных пользователей и 33,678 пользователей всего
* 1\.7 ответа на вопрос в среднем
* 42,464 визита в день

Помимо этого:

* Больше 2,000 участников в месяц присоединяется к сообществу.
* Сайт наиболее популярен (по убыванию) в: Москве, Киеве, Санкт-Петербурге, Минске и Харькове.
* Более 3,000 участников в месяц получают правильные ответы.
* Чтобы получить столько внимания, как на Stack Overflow на русском, вам пришлось бы нанять 23,000 разработчиков на полный рабочий день.

Запуск бета-версии SO на русском [состоялся][4] в 2015 году, став результатом поглощения сайта ХэшКод. [Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/2b3/b52/969/2b3b52969ed7a564ccfc97a5c70ce2f3.png
[2]: http://ru.stackoverflow.com/
[3]: http://blog.stackoverflow.com/2016/04/community-of-professional-developers-now-in-russian/
[4]: http://blog.stackoverflow.com/2015/06/welcome-nicolas-chabanovsky-and-stack-overflow-in-russian/
[5]: https://habrahabr.ru/post/281671/#habracut

[>] Подробности завершения периода беты Stack Overflow на русском языке
habra.16
habrabot(difrex,1) — All
2016-04-15 16:00:03


![][1]Подробный рассказ о том, как [Stack Overflow на русском][2] вышел из статуса беты, [появился][3] на днях в блоге компании. К моменту завершения аттестации, статистика была следующей:

* 115\.7 вопросов задают в день
* 82% вопросов отвечены
* 1,499 постоянных пользователей и 33,678 пользователей всего
* 1\.7 ответа на вопрос в среднем
* 42,464 визита в день

Помимо этого:

* Больше 2,000 участников в месяц присоединяется к сообществу.
* Сайт наиболее популярен (по убыванию) в: Москве, Киеве, Санкт-Петербурге, Минске и Харькове.
* Более 3,000 участников в месяц получают правильные ответы.
* Чтобы получить столько внимания, как на Stack Overflow на русском, вам пришлось бы нанять 23,000 разработчиков на полный рабочий день.

Запуск бета-версии SO на русском [состоялся][4] в 2015 году, став результатом поглощения сайта ХэшКод. Таким образом, процесс становления равноправным участником сети Stack Exchange занял у сервиса менее восьми месяцев. [Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/2b3/b52/969/2b3b52969ed7a564ccfc97a5c70ce2f3.png
[2]: http://ru.stackoverflow.com/
[3]: http://blog.stackoverflow.com/2016/04/community-of-professional-developers-now-in-russian/
[4]: http://blog.stackoverflow.com/2015/06/welcome-nicolas-chabanovsky-and-stack-overflow-in-russian/
[5]: https://habrahabr.ru/post/281671/#habracut

[>] iOS-приложение на Go… и Катя. Финал
habra.16
habrabot(difrex,1) — All
2016-04-15 18:00:03


[![][1]][2] Заключительная часть серии статей про мой опыт перехода с PHP на Go. [Подробности][3]

[1]: https://habrastorage.org/getpro/habr/post_images/c18/995/6f4/c189956f4ea4e08c0e7ea18e2e50a398.jpg
[2]: https://habrahabr.ru/post/281709/
[3]: https://habrahabr.ru/post/281709/#habracut

[>] [Из песочницы] Разделение отсканированных вместе фотографий (Python 3 + OpenCV3)
habra.16
habrabot(difrex,1) — All
2016-04-15 20:00:03


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

[1]: https://habrahabr.ru/post/281669/#habracut

[>] Хакер рассказал о компрометации Hacking Team
habra.16
habrabot(difrex,1) — All
2016-04-16 12:30:02


Спустя почти год после [компрометации][1] кибергруппы Hacking Team, наконец стали известны детали этого инцидента, а именно, кто за этим стоял, а также мотивация такого действия. Издание Motherboard опубликовало детали компрометации HT, которые основаны на появившейся на ресурсе pastebin [информации][2] (на испанском) самого хакера. Человек под псевдонимом Phineas Fisher не только детально описал процесс получения архива с 400GB конфиденциальными данными, но также привел свои политические доводы и мотивацию. ![][3] По утверждению Phineas Fisher взлом был мотивирован тем фактом, что услуги Hacking Team использовались спецслужбами для нарушения прав человека. Напомним, что спецслужбы различных стран были основными клиентами HT. Во взломе участвовал один человек и это заняло у него сто часов работы. [Читать дальше →][4]

[1]: https://habrahabr.ru/company/eset/blog/261887/
[2]: http://pastebin.com/raw/GPSHF04A
[3]: https://habrastorage.org/files/6f2/dcb/3cc/6f2dcb3cc05545259f23e97c40dccb88.png
[4]: https://habrahabr.ru/post/281743/#habracut

[>] Могут ли все финансовые модели быть ошибочными: 7 источников риска возникновения убытков
habra.16
habrabot(difrex,1) — All
2016-04-16 18:30:03


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

[1]: https://habrastorage.org/files/2db/3aa/a2c/2db3aaa2c74a477d9686cdca34cb2a85.png
[2]: https://habrahabr.ru/company/itinvest/blog/281745/
[3]: http://www.itinvest.ru/analytics/
[4]: http://www.turingfinance.com/perils-optimization-in-investment-management/
[5]: https://habrahabr.ru/post/281745/#habracut

[>] Предсказание оттока игроков из World of Tanks от Yandex Data Factory. Лекция для Малого ШАДа
habra.16
habrabot(difrex,1) — All
2016-04-17 19:30:03


Важнейшая экспертиза Яндекса — машинное обучение. Она выросла из потребностей поиска, для ранжирования в котором нами была разработана известная сейчас многим технология [Матрикснет][1]. В 2014 году Яндекс стал использовать свои знания в области ML вне собственных сервисов — появилась [Yandex Data Factory][2]. Это международное направление, которое решает сложные математические задачи для других компаний. Один из его проектов — прогноз оттока игроков World of Tanks. Илья Трофимов рассказал слушателям Малого ШАДа не только о проекте с Wargaming, но и о том, что вообще такое машинное обучение и в каких задачах оно может помогать бизнесу. Слушатели — старшеклассники, интересующиеся математикой и компьютерными науками.




Сам Илья в 2007 году окончил физический факультет МГУ по специализации «теоретическая физика». В 2011 — Школу анализа данных по специальности «анализ данных». В Яндексе занимался применением машинного обучения для оптимизации показов рекламы, сейчас решает задачи по анализу больших объёмов данных в Yandex Data Factory. Читает лекции в ШАДе по теме «Машинное обучение на больших данных». [Подробная расшифровка и слайды][3]

[1]: https://yandex.ru/company/technologies/matrixnet/
[2]: https://yandexdatafactory.com
[3]: https://habrahabr.ru/post/281777/#habracut

[>] Объяснение эксперимента о ветвлениях, или философские изыскания на тему бенчмарков в вакууме и в… реальности
habra.16
habrabot(difrex,1) — All
2016-04-17 21:30:02


Надеюсь, кто хотел, ознакомился с моим пробным экспериментом на Хабре [в этой][1] статье. Теперь я считаю, что будет правильным огласить его результаты и даже дать более детальное объяснения причин, по которым вообще подобные эксперименты проводятся. Пост будет наполовину философским, поскольку сейчас в компьютерном мире всё настолько сложно, что без философского осмысления принять какие-то осмысленные решения просто невозможно. Я постараюсь вообще выразить своё мнение о сферических измерениях в вакууме, поэтому будет много букв. В статье есть опрос, проводимый до 1-го мая 2016. Под катом целиком ИМХО. [Читать дальше →][2]

[1]: https://habrahabr.ru/post/281629/
[2]: https://habrahabr.ru/post/281769/#habracut

[>] Новости мира IT. Апрель
habra.16
habrabot(difrex,1) — All
2016-04-17 22:30:02


Мы в GeekBrains стараемся не отставать от жизни и предлагаем вам нашу подборку новостей и новинок мира IT за апрель, которые обратили на себя наше внимание. ![][1]

#



##

Не новость, но факт интересный. Два года назад официально прекратилась поддержка Windows XP. Тем не менее, согласно свежей статистике, система по-прежнему функционирует на 181 миллионе машин, что составляет 11% от всех существующих компьютеров. Цифра оказывается ещё значительнее, если сказать, что вплоть до октября 2015 года версий Windows XP использовалось больше, чем OS X (а это подавляющее большинство MacBook-ов). Согласно [ирландскому статистическому агентству StatCounter][3] около 47 миллионов машин с XP на борту работает в Китае. И это тоже удивительный факт, если вспомнить. какие усилия прилагал Microsoft для продвижения 10-й версии именно в КНР (например, контракт с крупнейшим поисковиком в регионе [Baidu][4]). [Читать дальше →][5]

[1]: https://habrastorage.org/files/8a5/4be/491/8a54be49100b45dfb0569f027a0a259e.jpg
[2]: http://www.computerworld.com/article/3054528/microsoft-windows/zombie-os-windows-xp-still-powers-181m-pcs-two-years-after-support-ends.html
[3]: http://gs.statcounter.com/#os-ww-monthly-201503-201603
[4]: http://www.computerworld.com/article/2985808/windows-pcs/microsoft-strikes-deal-with-chinas-baidu-gets-a-chance-to-upgrade-more-than-half-a-billion-pcs-to-w.html
[5]: https://habrahabr.ru/post/281725/#habracut

[>] GECOn 2016: Первая Гомельская IT-конференция (24 апреля)
habra.16
habrabot(difrex,1) — All
2016-04-17 23:00:02




Признайтесь себе, когда вы в последний раз были на IT конференции? Такой, чтобы от профессионалов и для профессионалов? А такой, чтоб взять и никуда не ехать, а сходить на нее прямо в Гомеле? То то же. Значит, у меня есть, что вам предложить :) **Первая Гомельская IT-конференция**!

![][1]

#### Что это



Минимум воды, максимум технической начинки:



* 24 апреля – это уже совсем скоро;
* ОКЦ, ул. Ланге 17 – самый центр города;
* 13 докладов – на актуальные темы, затрагивающих все аспекты разработки программного обеспечения;
* 3 потока – докладов много, часов в сутках мало, а рассказать хочется обо всем;
* 17 экспертов – и я не вру, когда называю их экспертами – это было доказано и подтверждено годами опыта и количеством успешных проектов;
* 250 участников, среди которых вас до сих пор нет?!
* Цена – бесплатно, нужна только регистрация.

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

[1]: https://habrastorage.org/files/db0/8e3/f7f/db08e3f7f0204cbb92dd27acdb3bbccc.PNG
[2]: https://habrahabr.ru/post/281775/#habracut

[>] Свободу тестам
habra.16
habrabot(difrex,1) — All
2016-04-17 23:30:02


![][1]Современный мир ПО очень черно-бело разделён на два лагеря: либо ты opensource-приложение, либо закрытое проприетарное. Нет, есть, конечно, и разные лицензии в открытых проектах и какие-то подвижки закрытых продуктов выкладывать в опенсорс свои части (привет, Google, Facebook, Microsoft). Но всё это не меняет сути дела в принципе — если ты берёшь открытый продукт, то видишь всё, что у него внутри, можешь это оценить и решить, стоит связываться или нет. Если ты хочешь приобрести закрытое ПО, то всё, что остаётся — верить заливающимся соловьями продажникам фирмы-производителя, как у них там всё внутри классно, надёжно, быстро и современно. Ну, вы наверняка были на какой-нибудь такой конференции или презентации, где выходил человек в костюме и час втирал о том, как же всё стало лучше в версии 18.1.1 их продукта и почему его нужно покупать прямо сейчас. Ещё часто можно недельку погонять ограниченный trial-режим, что даст ответ ровно на 1 вопрос: «как работает ограниченный trial-режим в течение недели?». Покупатель всегда остаётся один-на-один с решением «взять и рискнуть» или «не связываться». Объективных данных для принятия решения мало. При этом их, казалось бы, больше и не станет — производитель закрытого продукта не выложит исходники, поскольку именно они составляют коммерческую ценность. Казалось бы — тупик? А давайте рассмотрим следующую мысль — что если мы предложим производителю выложить в открытый доступ тесты на его ПО? Все, что есть — юнит, интеграционные, производительности, другие. При этом производитель и потенциальный покупатель получают ряд преимуществ. [Читать дальше →][2]

[1]: https://habrastorage.org/files/16d/fe4/ac1/16dfe4ac132c49138d51f62d4f4877b9.jpg
[2]: https://habrahabr.ru/post/281785/#habracut

[>] Краткий обзор Kotlin и сравнение с C#
habra.16
habrabot(difrex,1) — All
2016-04-18 02:00:03




# От автора:

Эта статья представляет собой заметки на коленке и является скорее кратким обзором Kotlin, включая небольшое сравнение с языком С# с точки зрения синтаксиса. Это мое мнение и мои размышления по поводу этого сравнительно молодого языка в мире Java-платформы, который на мой взгляд имеет хорошие шансы добиться успеха. [Читать дальше][1]

[1]: https://habrahabr.ru/post/281759/#habracut

[>] Как внедряется система безопасной печати на ближайшее к пользователю устройство (follow-me printing)
habra.16
habrabot(difrex,1) — All
2016-04-18 12:30:02


![][1] **Предположим, вы банк, нефтяная компания или просто параноик. **Вам хочется, чтобы:

* Уборщицы, враги и рептилоиды не забирали документы из принтеров.
* Память принтера надёжно очищалась после печати.
* Нецелевая печать отсутствовала.
* Большие задания автоматически перенаправлялись на устройства с дешёвым отпечатком.
* При отправке на печать задания 50 раз (как часто делает паникующий пользователь) выползало только одно.
* Чтобы тексты фильтровались по стоп-словам, а картинки — распознавались и тоже не печатались, если содержат конфиденциальные данные (есть не у всех решений).
* В редких случаях — ну и ещё чтобы в документах на лету слово «направо» заменялось на «налево» для введения потенциального противника в заблуждение.

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

[1]: https://habrastorage.org/files/737/d69/f65/737d69f65e21485d994720ca88bcdcfa.png
[2]: https://habrahabr.ru/post/281793/#habracut

[>] [Из песочницы] Открытый Server-status в Электронном правительстве Казахстана или как получить базу данных граждан
habra.16
habrabot(difrex,1) — All
2016-04-18 15:00:02


Ранее мы сообщали об уязвимостях на портале «Электронного правительства» Казахстана, причинами которых являлись ошибки разработчиков. Сейчас же хотим рассказать об одной уязвимости, причиной которой стали не разработчики, а скорее администраторы. Одна «незначительная» деталь, которая может привести к колоссальным последствиям и повторению ситуации с турецкими гражданами, когда в сети была выложена вся база турецкого населения. Ошибка, описанная в данной статье, нами была передана разработчикам ЭП и исправлена, соответственно эксплуатация уязвимости уже невозможна. С учетом указанного, считаем данная публикация не повлечет утечку чьих-либо персональных данных. Но мы не можем гарантировать того, что документы наших граждан уже не были получены злоумышленниками и не сохранены для каких-либо действии. Итак, на портале электронного правительства, при запросе той или иной справки, пользователь получает прямую ссылку на документ в формате \*.PDF, которая выглядит примерно так: `http://egov.kz/shepDownloadPdf?favorId(номер документа)&iin=(номер ИИН)` [Читать дальше →][1]

[1]: https://habrahabr.ru/post/281849/#habracut

[>] [Перевод] Привычка Stack Overflow
habra.16
habrabot(difrex,1) — All
2016-04-18 16:00:02


![][1] Stackoverlow уже стал незаменимым инструментом для множества разработчиков. Продвигаемая авторами модель использования – это “база знаний”. Набираем вопрос в гугле → попадаем на stackoverlow → читаем ответ → profit! Так сайт работает для большинства – за счет гораздо меньшей группы разработчиков, которая отвечает на вопросы. Зачем они это делают? Большинство – для повышения собственной квалификации и социальной реализации. И для карьеры полезно, и комплексы стороной обходят, и кризис среднего возраста не придет. Под катом – перевод статьи одного такого разработчика, который делится своими практическими наработками о том, как ему удалось отвечать на вопросы начинающих разработчиков каждый день. [stackoverflow for fun and profit!][2]

[1]: https://habrastorage.org/files/5fa/8d8/3fe/5fa8d83fed9545ffaaa2dcdc98572cb4.png
[2]: https://habrahabr.ru/post/281845/#habracut

[>] Security Week 15: Badlock не впечатлил, больше криптолокеров, еще одна уязвимость в iMessage
habra.16
habrabot(difrex,1) — All
2016-04-18 17:00:03


![][1]Предположим, что апокалипсиса не будет. Неверный подход к безопасности новых устройств и софта не приведет к массовому выходу компьютерных систем из строя: Офис не упадет, светофоры не погаснут, машины с автопилотом без проблем довезут людей до дома. Это не значит, что можно кодить безответственно: никто ведь не умрет? Потрясающую историю на прошлой неделе [раскопала][2] редактор издания Fusion Кашмир Хилл. В 2002 году компания MaxMind разрабатывала новый сервис, позволяющий примерно определить координаты сетевого адресата по IP. В процессе разработки понадобилось ввести дефолтные координаты. Дело не в том, что это требовалось клиентам. В статье этот момент не раскрывается, но вполне можно представить, что так решил один из разработчиков, потому что _все так делают_ и _удобно_. Чтобы система не падала от пустой переменной и не происходило деление на ноль. В константу забили округленные (38.0000,-97.0000) координаты географического центра США и в общем-то быстро забыли про этот рутинный эпизод. А к жителям дома рядом с городком Потвин в штате Канзас через некоторое время начали приходить странные люди. Приезжали скорые. Приходили агенты ФБР в форме и в штатском. Налоговики. Коллекторы. Звонили разъяренные владельцы сайтов, которым приходил спам, и требовали прекратить сейчас же. Кто-то даже угрожал, а на аллее возле дома ночью поставили разбитый унитаз. Пожилой владелице дома и арендаторам не повезло оказаться в округленном до градусов центре страны. Все адреса, координаты которых компании MaxMind не удалось определить, указывали на дом в Канзасе, всего более шести миллионов IP. Кашмир Хилл связалась с MaxMind, и там были очень удивлены. Компания ведь всегда говорила, что координаты дает _примерные_, и они не должны использоваться для идентификации конкретных адресов и домов. Проблема в том, что абсолютно все, вплоть до медиков и ФБР, _именно так их используют_. Предположим, что апокалипсиса не будет. И очень хорошо, что так. Но технологии все больше влияют на нашу реальную жизнь, иногда самым непредсказуемым образом. Ошибки и уязвимости в софте и железе не всегда приводят к трагедиям (хотя иногда таки приводят). Безответственная разработка медленно и почти незаметно снижает качество нашей жизни. И чем дальше мы будем идти от точки «теперь питание компьютера можно отключить» к постоянному нахождению в сетевой среде, тем больше будет новых возможностей, но и проблем тоже. Для московских IP, кстати, та же база дает координаты Кремля. А в [географическом центре России][3] никто не живет. Перейдем к новостям недели. Предыдущие выпуски [тут][4]. [Читать дальше →][5]

[1]: https://habrastorage.org/files/ad7/9d3/f20/ad79d3f20f184526acc730e602a18503.jpg
[2]: http://fusion.net/story/287592/internet-mapping-glitch-kansas-farm/
[3]: https://www.google.com/maps/place/66%C2%B025'01.2%22N+94%C2%B015'00.0%22E/@66.417,94.25,3336m/data=!3m1!1e3!4m2!3m1!1s0x0:0x0?hl=ru
[4]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[5]: https://habrahabr.ru/post/281729/#habracut

[>] HoloLens, Xbox One Dev Mode и возможности для разработчиков с конференции //Build
habra.16
habrabot(difrex,1) — All
2016-04-18 17:00:03


Здравствуйте, дорогие читатели! В этом году на конференции Microsoft [//Build][1] представлено не только много технологических анонсов и нововведений, но и не мало интересных возможностей на самом мероприятии. ![][2] HoloLens и Holographic Academy, Xbox One Developer Mode и подробности интересных технологических проектов с финала Imagine Cup США — об этом я хочу рассказать вам в данной статье. [Читать дальше →][3]

[1]: http://build.microsoft.com
[2]: https://habrastorage.org/files/136/de3/d8a/136de3d8accb4cf8b311acf81e637cec.jpg
[3]: https://habrahabr.ru/post/281539/#habracut

[>] [Из песочницы] Как я мучился поднимая LTSP со сторонним TFTP-сервером
habra.16
habrabot(difrex,1) — All
2016-04-18 17:30:03


![image][1] Совсем не давно на Хабрахабре появилась развернутая [статья][2] про поднятие терминального сервера на Linux. Она очень привлекает своим содержимым и показывает простоту настройки такого решения. В нашей сети уже есть схожее решение основанное на Windows Server 2008 R2 с отдельным TFTP-сервером. И в этом то и была моя проблема. Ниже приведу кусок конфига от PXE. По этому прошу пот кат. [Читать дальше →][3]

[1]: https://habrastorage.org/getpro/habr/post_images/91f/ec4/76d/91fec476de2d7f6764aa8755a366e5f6.png
[2]: https://habrahabr.ru/post/277783/
[3]: https://habrahabr.ru/post/281847/#habracut

[>] От паспортного сканера к автономному распознающему устройству
habra.16
habrabot(difrex,1) — All
2016-04-18 17:30:03


Прошло около трех месяцев с момента создания нашего [первого рабочего образца паспортного сканера][1]. Получив хорошие результаты по качеству и скорости распознавания, мы, подняв на флаг практически Олимпийский девиз “Быстрее! Качественнее! Компактнее!”, приступили к созданию следующей модели ПАК. Если вам интересно, что у нас получилось в результате, добро пожаловать под кат. ![][2] [Читать дальше →][3]

[1]: https://habrahabr.ru/company/smartengines/blog/278257/
[2]: https://habrastorage.org/files/ceb/82a/fc3/ceb82afc3ef64f4ebf4e42ac76803742.png
[3]: https://habrahabr.ru/post/281857/#habracut

[>] [Из песочницы] Делаем UI плагина в IntelliJ Idea «как у maven'a»
habra.16
habrabot(difrex,1) — All
2016-04-18 17:30:03




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



Встала задача создать для разработчиков и QA удобный способ стартовать порядка 20 серверных приложений, живущих в общем репозитрии (Spring с XML конфигурацией и общим для все частей приложения бутстрап классом).



Как сделать нечто удобное человеку, который последний раз GUI рисовал в Borland Delphi 6.0? Взять что-то уже готовое и приспособить для своих нужд, ну и раз уж будущие пользователи работают в IntelliJ Idea, появилась мысль соорудить плагин, который будет выглядеть и вести себя так, как это делает Maven Integration Plugin.



![image][1]



Под катом классы и некоторые утилитарные методы, которые помогут это сделать.

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

[1]: https://habrastorage.org/files/cdd/409/397/cdd4093977bd44c78ac5dc25288583a9.PNG
[2]: https://habrahabr.ru/post/281851/#habracut

[>] Kite: контекстные подсказки и автодополнение во время написания кода
habra.16
habrabot(difrex,1) — All
2016-04-18 20:00:03







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

[1]: https://kite.com/
[2]: https://habrahabr.ru/post/281861/#habracut

[>] Kite: контекстные подсказки и автодополнение при написании кода
habra.16
habrabot(difrex,1) — All
2016-04-18 20:30:02







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

[1]: https://kite.com/
[2]: https://habrahabr.ru/post/281861/#habracut

[>] Решение давно существующих проблем безопасности BLE-маячков. Eddystone-EID. Eddystone GATT service и Beacon Tools
habra.16
habrabot(difrex,1) — All
2016-04-18 22:00:02


![][1]

В июле прошлого года был запущен проект [**Eddystone**][2], открытый и расширяемый стандарт от **Google**, определяющий формат сообщений для **Bluetooth Low Energy (BLE)** маячков и нативно поддерживаемый в Android, iOS, и браузером Chrome. Маячки могут отмечать важные и интересные места или объекты понятным для мобильных устройств образом. Чтобы сделать это, маячки, как правило, односторонне транслируют открытые сообщения — такие как **iBeacon**, **Eddystone-UID** или **Eddystone-URL**, что делает их уязвимыми к клонированию, компрометации и слежке. Эти проблемы существовали с 2013 года.



В четверг, 14 марта, компания **Google** в своём [**security blog**][3] анонсировала новый кадр [**Eddystone-EID**][4], с поддержкой эфемерного идентификатора (**Ephemeral ID**), для стандарта **Eddystone**. Так же были представлены зашифрованная версия кадра телеметрии **Eddystone-TLM** и новый стандартный интерфейс для конфигурирования маячков — [**Eddystone GATT service**][5].



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

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

[1]: https://habrastorage.org/files/d6a/e37/8dd/d6ae378dda7148b4973816e91f315b2d.jpg
[2]: https://github.com/google/eddystone
[3]: https://security.googleblog.com
[4]: https://developers.google.com/beacons/eddystone-eid
[5]: https://github.com/google/eddystone/tree/master/configuration-service
[6]: https://habrahabr.ru/post/281877/#habracut

[>] Шпаргалка Java программиста 7.2 Типовые задачи: Обход Map'ы, подсчет количества вхождений подстроки
habra.16
habrabot(difrex,1) — All
2016-04-19 00:30:02




![image][1]



У меня есть хобби: я собираю различные решения типовых задач в Java, которые нахожу в инете, и пытаюсь выбрать наиболее оптимальное по размеру/производительности/элегантности. В первую очередь по производительности. Давайте рассмотрим такую типовые задачи, которые часто встречаются в программировании на Java как "обход Map'ы" и подсчет количества вхождений строк, разные варианты их решений (включая "красивые" и не очень) и их производительность.



Английские версии можно найти на Stackoverflow: [по обходу map'ы][2] и [по подсчету вхождений подстрок][3]. Так же советую посмотреть мой opensource проект [useful-java-links][4] — возможно, наиболее полная коллекция полезных Java библиотек и фреймворков.








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

[1]: https://habrastorage.org/files/447/ad7/e70/447ad7e7084749cc99e04cac26210807.png
[2]: http://stackoverflow.com/questions/46898/how-to-efficiently-iterate-over-each-entry-in-a-map/35558955#35558955
[3]: http://stackoverflow.com/questions/275944/how-do-i-count-the-number-of-occurrences-of-a-char-in-a-string/35242882#35242882
[4]: https://github.com/Vedenin/useful-java-links/tree/master/link-rus
[5]: https://habrahabr.ru/post/278313/#habracut

[>] День рождения Ершова
habra.16
habrabot(difrex,1) — All
2016-04-19 10:00:02


_«Элитарность программистов представляется мне очевидной и в этом представлении является интереснейшим вызовом человечеству в целом.»_ — Андрей Петрович Ершов ![][1] _«Суть проблемы в том, чтобы признать, что программирование требует от человека несколько особого взгляда на мир, его потребности и эволюцию, особой моральной подготовленности к своему долгу. Программист — это солдат технической революции и как таковой должен обладать революционным мышлением.»_ — А. П. Ершов Дональд Кнут вспоминал: _«Это началось еще когда я был студентом последнего курса. Тогда только появилась книга Андрея «Программирование для БЭСМ», и мы, группа студентов, смогли убедить преподавателя русского языка включить её в курс в качестве одного из двух сборников текстов для изучения научной лексики»._ Ершов потом водил дружбу с Кнутом и Сеймуром Пейпертом, разработал [Русский алгоритмический язык][2], который народ за глаза называл «Ершол». В 1985 создал серию обучающих телепередач для обучения программированию школьников (советский MOOC), через год свозил группу школьников-программистов в Америку, а через год принял в Новосибе ответную делегацию американских школьников программистов. (Кстати, если вы знаете участников этих событий — отпишитесь в комментах или в личку.) Сегодня, вместе с компанией [Edison][3], предлагаем всем отметить **день рождения Андрея Петровича**. Заслуги и вклад Ершова в советское (и мировое) программирование описаны в [Википедии][4], мне же захотелось заглянуть чуть глубже и поискать первоисточники. Пару часов покопался в [архиве][5]. Нашел кое-что интересное. Под катом — много картинок и две фундаментальные научпоп статьи Ершова про важность программирования. А это Ершов и [МакКарти][6] если что: ![image][7] [Читать дальше →][8]

[1]: https://habrastorage.org/files/b2e/0e8/38e/b2e0e838e5b34f51939950b7ae1d06cf.jpg
[2]: https://ru.wikipedia.org/wiki/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA
[3]: http://www.edsd.com/services/software-development
[4]: https://ru.wikipedia.org/wiki/%D0%95%D1%80%D1%88%D0%BE%D0%B2,_%D0%90%D0%BD%D0%B4%D1%80%D0%B5%D0%B9_%D0%9F%D0%B5%D1%82%D1%80%D0%BE%D0%B2%D0%B8%D1%87
[5]: http://ershov.iis.nsk.su/
[6]: https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D0%BA%D0%BA%D0%B0%D1%80%D1%82%D0%B8,_%D0%94%D0%B6%D0%BE%D0%BD
[7]: http://cshistory.nsu.ru/?el=189&mmedia=IMAGE
[8]: https://habrahabr.ru/post/281905/#habracut

[>] [Перевод] Как отправить электронное письмо с помощью Python: руководство для «чайников»
habra.16
habrabot(difrex,1) — All
2016-04-19 13:30:02


[![][1]][2] В нашем блоге мы много пишем о создании [email-рассылок][3] и работе с электронной почтой. В современном мире люди получают множество писем, а у некоторых даже есть несколько почтовых ящиков. Все это усложняет процесс их администрирования, что вынуждает искать пути решения проблемы. Не так давно мы рассказывали о том, как инженер из США упорядочивал свои письма с помощью нейронной сети ([1][4], [2][5]), а сегодня речь пойдет об автоматизации отправки писем для разных почтовых ящиков. Редактор издания Motherboard Майкл Берн (Michael Byrne) написал [материал][6] о том, как отправлять электронные письма для различных почтовых ящиков с помощью Python. Мы представляем вашему вниманию адаптированный перевод этой заметки. [Читать дальше →][7]

[1]: https://habrastorage.org/files/8ce/62b/d08/8ce62bd0817d4be1b2619bfa05e5cb60.jpg
[2]: https://habrahabr.ru/company/pechkin/blog/281915/
[3]: https://pechkin-mail.ru/?utm_source=habr&utm_medium=referral&utm_campaign=python
[4]: https://habrahabr.ru/company/pechkin/blog/280198/
[5]: https://habrahabr.ru/company/pechkin/blog/280296/
[6]: http://motherboard.vice.com/read/how-to-send-an-email-from-a-python-script
[7]: https://habrahabr.ru/post/281915/#habracut

[>] Инфографика: мошенничество в Рунете
habra.16
habrabot(difrex,1) — All
2016-04-19 14:00:02


Интернет наполнен не только возможностями купить и продать что угодно в один клик, но и возможностями расстаться со своими деньгами в пользу мошенников. Далее в инфографике, подготовленной системой приема онлайн-платежей [PayOnline][1], расскажем, какие схемы наиболее популярны у кардеров, хакеров и обычных жуликов. ![image][2] [Читать дальше →][3]

[1]: http://payonline.ru/?utm_source=habrahabr&utm_medium=referral&utm_campaign=webpayments-main
[2]: https://habrastorage.org/files/9d7/dcf/74e/9d7dcf74edba4064a69257d94e8cba0c.PNG
[3]: https://habrahabr.ru/post/281581/#habracut

[>] Сервер очередей Gearman: опыт практического использования и веб-приложение Gearman Monitor && Control
habra.16
habrabot(difrex,1) — All
2016-04-19 14:00:02


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

* Gearman «на пальцах»
* примеры реальных задач с использованием Gearman
* веб-приложение и класс для мониторинга в реальном времени и управления процессами на сервере очередей Gearman

Интересно? Прошу под кат. [Читать дальше →][1]

[1]: https://habrahabr.ru/post/212761/#habracut

[>] История моего участия в Ubuntu Scope Showdown 2016
habra.16
habrabot(difrex,1) — All
2016-04-19 14:00:02


![][1] 15 января 2016 года [был аннонсирован][2] ежегодный конкурс Ubuntu Scope Showdown! Участникам предлагалось в течение шести недель разработать с нуля и опубликовать в магазине приложений свой скоуп для Unity 8 (официальный перевод слова scope как «линза» совсем не радует, поэтому пусть будет просто скоуп). За эти полтора месяца было разработано порядка 15 скоупов, еще полтора месяца шло голосование жюри (в три раза дольше заявленных двух недель). В результате победителями оказались Roman Shchekin, Ricardo Silva, Michael Weimann и Pieter Engelbrecht. О своем же опыте участия я бы хотел рассказать под хабракатом. [Читать дальше →][3]

[1]: https://habrastorage.org/files/8a2/278/de5/8a2278de5ff142aab8763c769ca75aae.png
[2]: https://developer.ubuntu.com/en/blog/2016/01/15/announcing-ubuntu-scopes-showdown-2016/
[3]: https://habrahabr.ru/post/281917/#habracut

[>] Развертывание стека Django на Ubuntu в облаке Microsoft Azure
habra.16
habrabot(difrex,1) — All
2016-04-19 14:30:02


Вы уже знаете, что мы запустили новый проект посвященный проектам с открытым исходным кодом — [linuxloves.ms][1]. Подробности про проект вы можете найти в [нашей публикации на Хабре][2], которая уже вызвала ожестаченный флейм :-). [][3]



Разработчики, которые создают решения в стеке Django могут легко размещать свои решения в облачной платформе Microsoft Azure. Проще всего это сделать с помощью виртуальных машин. Для упрощения работы с виртуальными машинами в облаке Azure предлагается площадка Azure Marketplace, в которой находятся сотни заранее настроенных виртуальных машин с разным окружением и установленными инструментами, включая операционные системы, базы данных, среды, фреймворки, CMS и так далее. Вы можете узнать гораздо больше о Azure Marketplace на [нашем русскоязычном портале][4]. Рассмотрим, как любой пользователь Azure может развернуть стек Django за несколько минут. [Читать дальше →][5]

[1]: http://linuxloves.ms/
[2]: https://habrahabr.ru/company/microsoft/blog/281064/
[3]: http://www.linuxloves.ru/
[4]: http://events.techdays.ru/Azure-Market-Place/
[5]: https://habrahabr.ru/post/281899/#habracut

Pages: 1 ... 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 ... 210