Черная археология дата майнинга

Автор: admin от 19-06-2015, 22:31, посмотрело: 1 583

Есть темы, по которым очень мало статей по специальности data science, но которые представляют интерес для специалистов по безопасности. Это статистические исследования логинов и паролей пользователей – данные, добытые «черными археологами» дата майнинга.

Черная археология дата майнинга

Мне было интересно посмотреть некоторые закономерности и для этой цели я взял базу данных паролей, утёкших в 2014 году – от Яндекса, Гугла и Мейлру, объемом 6 миллионов записей.

Категория: Информационная безопасность

 

Go как язык для обучения программированию

Автор: admin от 19-06-2015, 18:42, посмотрело: 854

tl;dr: Go достаточно многословный и строгий язык программирования с очень предсказуемой и стремительной кривой обучения, что делает его крайне удачной технологией для обучения программированию новоприбывших!

Я только приехал из штатов, после Google Code-In 2012 Grand Prize Trip, отдохнувший и веселый. Какое-то время думал написать отчет о том, чем призеры там занимались, как нас приняли в Mountain View и обо всем этом, но в какой-то момент понял, что все это совершенно бесполезно. Совсем недавно я по воле случая должен был помочь своему товарищу с домашкой по информатике (там было что-то вроде selection sort). Реализация требовалась на паскале, а я паскаль знаю очень плохо, как впрочем и другие неактуальные, по большей мере, языки программирования, вроде Ada.

Go как язык для обучения программированиюВ меня ударила молния и укусил гофер, после чего мое тело мутировало в какую-то кунг фу Go хренотень. Иными словами, я задумался о возможном потенциале моего любимчика среди новых технологий, Go, в качестве языка для обучения программированию новоприбывших (читай: школьников). Мне кажется, у Go есть все, что в принципе может быть нужно подобной программе и даже чуточку больше (например, в школе могли бы затрагивать тему параллельного, ни в коем случае не concurrent, программирования, которую не затрагивают, просто потому что FPS вообще не умеет гонять два куска кода одновременно). Под катом, собственно, мои мысли на этот счет. Кстати, пользуясь случаем, хочу передать привет divan0! Большое спасибо за твою просветительскую деятельность в тематическом хабе: Go действительно нуждается в огласке, ведь много людей до сих пор считают, что это какая-то страшная поделка уровня Plan9 из 80-х и к тому же, без обобщенного программирования (в каждой шутке есть доля шутки), а ты рассказываешь людям очень правильные вещи на понятном для них языке! Никакого дисклаймера не будет, но я настоятельно не рекоммендую воспринимать содержимое статьи абсолютно серьезно, ведь я человек, у которого есть целых два гофера: синий и розовый!

Категория: Программирование

 

Организация «чистого» завершения приложений на Go

Автор: admin от 19-06-2015, 17:43, посмотрело: 506

Организация «чистого» завершения приложений на Go

Здравствуйте, в данной заметке будет затронута тема организации «чистого» завершения для приложений, написанных на языке Go.
Чистым выходом я называю наличие гарантий того, что в момент завершения процесса (по сигналу или по любым иным причинам кроме system failure), будут выполнены определённые процедуры и выход будет отложен до окончания их выполнения. Далее я приведу несколько типичных примеров, расскажу о стандартном подходе, а также продемонстрирую свой пакет для упрощённого применения этого подхода в ваших программах и сервисах.

TL;DR: github.com/xlab/closer [img]http://habrahabr.ru/https:/godoc.org/github.com/xlab/closer?status.svg[/img]

Категория: Программирование

 

Исправляем Alt-Tab в LabView

Автор: admin от 19-06-2015, 16:04, посмотрело: 697

Когда пишешь программу в среде LabView, в определенный момент её становится слишком много для того, чтобы уместиться в один экран. «Правила хорошего тона» LabView говорят о том, что в таких случаях надо разбивать один vi файл на несколько subvi файлов. Со временем таких subvi становится очень много. Однако об удобной навигации ребята из NI как-то не позаботились.

Мало того, что LabView сдвигает все свои окна в начало Alt-Tab списка (больше так не делает никто: en.wikipedia.org/wiki/Alt-Tab), так еще, несмотря на активно используемую возможность переопределять иконки для vi файлов, в списке Alt-Tab вместо них – стройные ряды из логотипов LabView:

Исправляем Alt-Tab в LabView

Некоторых такое поведение подталкивает к покупке второго монитора. Для них в значительной степени проблема этим и решается. Еще частично помогает интерфейс Windows Aero с его миниатюрами в меню Alt-Tab. Но вроде бы лежащее на поверхности решение – (а) сделать переключение такое же, как во всех остальных приложениях, и (б) выводить в списке иконки vi – стандартными средствами недостижимо.

Судя по тому, что началось это едва ли не с самой первой версии, а соответствующая «идея по улучшению» пылится на «форуме по обмену идеями» с 2010 года forums.ni.com/t5/LabVIEW-Idea-Exchange/Make-Alt-Tab-behaviour-consistent-with-other-applications/idi-p/1162219, просить об этом National Instruments бесполезно. Однако кое-что сделать всё-таки можно.

Категория: Программирование / Веб-разработка

 

Интересное для iOS-разработчиков за неделю

Автор: admin от 19-06-2015, 16:00, посмотрело: 485

Чтобы преуспевать в своем деле, разработчикам важно быть в курсе последних нововведений. За неделю накапливается несколько десятков полезных статей, видео-лекций и записей в блогах гуру iOS-разработки — только и успевай отслеживать! Чтобы в цейтноте вы не пропустили ничего важного, мы создали MBLTdev Digest, который работает уже 21 неделю.

Подписывайтесь на email рассылку, push notifications для Safari или RSS. Под катом — выпуск этой недели.

Интересное для iOS-разработчиков за неделю


Читать выпуск

Категория: Веб-разработка / Game Development / iOS

 

Уровень сигнала трансивера через SNMP в Cisco

Автор: admin от 19-06-2015, 15:59, посмотрело: 648

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

#show interfaces Te1/49 transceiver
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                 Optical   Optical
           Temperature  Voltage  Tx Power  Rx Power
Port       (Celsius)    (Volts)  (dBm)     (dBm)
---------  -----------  -------  --------  --------
Te1/49       53.3       3.25      -4.3      -2.8

Кому-то (у кого нет соответствующего доступа) приходится ждать этой минуты целую вечность. Например, когда канал упал в пиковые часы и на резервном линке какие-то потери, которые обнаружились только при загрузке линка трафиком. Или когда новый канал нужно было сдать вчера, а ничего не работает, потому что поставщик неправильно подписал оптику на CWDM-мультиплексоре, и требуется методом тыка отыскать «правильную волну». И все это происходит в условиях дефицита верховных сетевых инженеров и времени.

В статье рассматривается вариант того, как проверить сигнал, имея лишь read-only доступ по SNMP.

Категория: Системное администрирование / Сетевые технологии

 

Как используя Canvas собрать кликабельную карту мира на Unity3d

Автор: admin от 19-06-2015, 15:42, посмотрело: 1 030

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

Было принято решение собрать карту при помощью Canvas. Удобная штука, экономит массу времени. Но не в этот раз.

Категория: Веб-разработка / Game Development

 

Куда пойти учиться на программиста

Автор: admin от 19-06-2015, 15:41, посмотрело: 1 876

Куда пойти учиться на программиста

Школьники уже, кажется, сдали ЕГЭ и вот-вот отправятся подавать документы в ВУЗы. Программирование и IT-технологии пользуются стабильным спросом, примерно как юридические и экономические специальности 10 лет назад.

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

Категория: Программирование / Веб-разработка

 

Самые актуальные новости с E3 2015: Bethesda, Microsoft, Electronic Arts, Ubisoft и Sony

Автор: admin от 19-06-2015, 15:30, посмотрело: 343

Вчера завершилась Electronic Entertainment Expo 2015. Более известная как Е3, эта выставка по-настоящему значимое событие для всей индустрии компьютерных игр. Именно на ней компании презентуют свои самые новые и самые крутые проекты. Doom, Fallout 4, Halo 5: Guardians, Mass Effect Andromeda, Star Wars: Battlefront, Assassin’s Creed Syndicate, The Last Guardian, Final Fantasy VII, Shenmue 3, технологии VR и многое другое.

Самые актуальные новости с E3 2015: Bethesda, Microsoft, Electronic Arts, Ubisoft и Sony
Детальнее

Категория: Программирование / Game Development

 

Пулы потоков: ускоряем NGINX в 9 и более раз

Автор: admin от 19-06-2015, 14:32, посмотрело: 711

Как известно, для обработки соединений NGINX использует асинхронный событийный подход. Вместо того, чтобы выделять на каждый запрос отдельный поток или процесс (как это делают серверы с традиционной архитектурой), NGINX мультиплексирует обработку множества соединений и запросов в одном рабочем процессе. Для этого применяются сокеты в неблокирующем режиме и такие эффективные методы работы с событиями, как epoll и kqueue.

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

Пулы потоков: ускоряем NGINX в 9 и более раз
Каждый процесс расходует память и каждое переключение между ними требует дополнительных циклов процессора, а также приводит к вымыванию L-кэшей

У медали есть и обратная сторона. Главной проблемой асинхронного подхода, а лучше даже сказать «врагом» — являются блокирующие операции. И, к сожалению, многие авторы сторонних модулей, не понимая принципов функционирования NGINX, пытаются выполнять блокирующие операции в своих модулях. Такие операции способны полностью убить производительность NGINX и их следует избегать любой ценой.

Но даже в текущей реализации NGINX не всегда возможно избежать блокировок. И для решения данной проблемы в NGINX версии 1.7.11 был представлен новый механизм «пулов потоков». Что это такое и как его применять разберем далее, а для начала познакомимся с нашим врагом в лицо.

Категория: Системное администрирование / Веб-разработка

 
Назад Вперед