• Подключение Multipath LUN СХД к Windows Server 2008 и Windows Server 2012

      В предыдущей статье мы рассматривали «Подключение Multipath LUN СХД к VMware ESXi и Debian GNU/Linux». В данной статье продолжаем. Напомню, что используется конфигурация с двумя SAN-свитчами, к каждому из которых, СХД подключена двумя линками.

      Подключение Multipath LUN СХД к Windows Server 2012

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

      Вот так система видит LUN'ы без поддержки MPIO:



      Если MPIO по какой-либо причине отключен, требуется включить. Для этого в «панели мониторинга» выбираем меню «управление» и пункт «добавить роли и компоненты».



      В «мастере добавления ролей и компонентов» переходим к пункту «компоненты» и выбираем в списке «Multipath I/O», после чего нажимаем виртуальную кнопку «установить».
      Читать дальше →
      • +18
      • 6,1k
      • 7
    • GDPR. Практические советы

      Все слышали о General Data Protection Regulation (GDPR) (Regulation (EU) 2016/679), который вступает в силу 25 мая 2018 года. Штрафы большие и придётся соответствовать. Как и любой официальный документ, он написан сухо и может трактоваться по-разному. За последние полгода провел анализ десятка различных веб-систем на соответствие GDPR, и везде встречались одни и те же проблемы. В связи с этим цель этой статьи не разъяснить, что такое GDPR (об этом уже много написано), а дать практические советы техническим людям, что необходимо сделать в вашей системе, чтобы она соответствовала GDPR.

      Пару интересных моментов по регламенту:

      • Если есть хоть один клиент из Европы, чьи персональные данные вы храните, вы автоматически попадаете под GDPR
      • Регламент базируется на трёх основных идеях: защита персональных данных, защита прав и свобод людей в защите их данных, ограничение перемещения персональных данных в рамках Евросоюза (Art. 1 GDPR)
      • UK всё ещё в EU, поэтому подпадает под действие GDPR, после Brexit-а GDPR будет заменён на Data Protection Bill, который по своей сути очень схож с GDPR (https://ico.org.uk/for-organisations/data-protection-bill/)
      • Серьезно ограничивается трансфер данных в третьи страны. Европейская комиссия определяет, в какие “третьи” страны или в какие сектора или организации в этих странах разрешён трансфер персональных данных Art. 45 GDPR. Вот список разрешённых стран.
      Читать дальше →
    • Поработать в Швеции

        Несколько лет назад я внезапно получил звонок от рекрутера с предложением поработать в Швеции в “хорошо финансируемом стартапе” (забавно, что моё резюме он нашёл на Odesk, где у меня давно был профиль, но ни одного завершённого проекта). Надо вам сказать, что в этой стране мне уже приходилось работать ранее, правда, находясь в затяжной командировке, как работник российской компании, потому неплохое представление о жизни в Швеции у меня уже было. С тех пор я обзавёлся детьми, и потому многие реалии шведской жизни мне предстояло открывать для себя впервые.

        Читать дальше →
      • Хакатон по анализу открытых данных пользователей социальной сети ВКонтакте. Для школьников и первокурсников

          " — Они очень молоды, у них все впереди, а у нас впереди — только они."
          «Гадкие лебеди» А. и Б. Стругацкие

          image

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

          Уже более двух лет я знаком с замечательной командой, которая делает классные штуки для школьников.
          Все началось с Яндекс-лагеря («Свой образовательный лагерь с покером, 3d-принтером, роботами и посадкой на Марс») где мы играли с ребятами в покер (сугубо в образовательных целях). Там я запилил «инженерную олимпиаду», где из скотча и туалетной бумаги нужно было делать функциональные объекты, притащил 3д-принтер (на котором мы пробовали печатать отмычки) и научил пару ребят, как лазить в окно ночью и мазать зубной пастой. Ах, да, еще мы написали несколько статей на Хабр, сначала под строгим присмотром, а потом самостоятельно.



          На следующий год я взял в лагерь наручники и нейроинтерфейс NeuroSky.
          Был конкурс на скоростное программирование в наручниках, а так же выявляли, кто дольше всех сможет протянуть в лагере, не снимая браслеты. Еще мы спаяли пояс для развития нейропластичности. «Детский лагерь: биссектрально-пифагоровы треугольники, перепрограммирование мозга, радар-детектор и взлом наручников».
          А так же стартанули «пиратский» флешмоб по переводу книги от главреда WIRED (бывшего blackhat хакера) про подпольный миллиардный рынок кардеров: «Шкворень: школьники переводят книгу про хакеров».

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

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

          Читать дальше →
          • +7
          • 16,8k
          • 5
        • Взлом банковских карт, автомобилей и мессенджеров и др. особенности обучения на лучшей магистратуре Нидерландов

            Всем привет! Меня зовут Марат Нигматуллин. Я — студент Университета Иннополис, который готовит специалистов по информационным технологиям. Вуз активно сотрудничает в вузами-партнерами из числа лучших университетов мира с целью адаптации лучших практик. Сейчас я нахожусь как раз в одном из таких — в Университете Амстердама и обучаюсь по программе System and Network Engineering, с будущего учебного года эта программа будет предлагаться уже самим Университетом Иннополис. История, которую я хочу рассказать, достаточно простая, но от этого не менее интересная. Нюансы обучения за рубежом, сходство нидерландского и русского языков, интересные практические задания, университетская комиссия по этике и ещё много других подробностей под катом.


            Читать дальше →
          • Научиться программировать сложнее, чем кажется

            • Перевод

            Просто «El clasico»

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

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

            Средства массовой информации не перестают освещать тему нехватки квалифицированных программистов («программистов», «кодировщиков», «разработчиков ПО», поскольку все термины означают одно и тоже, я буду использовать из как взаимозаменяемые). Постоянно ведутся споры по поводу низкого уровня квалификации программистов. По сути мы просто не в состоянии подготовить кадры, соответствующие «солидным запросам завтрашнего дня». Вот что пишет The Telegraph:

            «Согласно данным Научного Совета, к 2030 году количество специалистов в сфере информационно-коммуникационных технологий вырастет на 39%, а в отчете О2 за 2013 год отмечалось, что для удовлетворения спроса на такого рода специалистов в период до 2017 года потребуется порядка 745 000 новых сотрудников.

            Кроме того, по результатам исследований, проведенных в прошлом году City & Guilds, три четверти работодателей из сферы IT, компьютерных и информационных услуг отметили явную нехватку квалифицированных кадров, в то время как 47% опрошенных заявили о неспособности действующей системы образования подготовить хороших специалистов».
            Читать дальше →
          • Шаблоны проектирования в адвенчурах: часть первая

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

            «То, что мы называем хаосом — это всего лишь закономерности, которые мы не сумели распознать. То, что мы называем случайностями — это всего лишь закономерности, которые мы не в состоянии расшифровать.»
            — Чак Паланик

            Как насчет абстрактного подхода к разработке адвенчу? Или, хотя бы, для загадок в адвенчурах — это может оказаться полезным!

            Читать дальше →
          • Автоматизированное создание диаграмм в xkcd-стиле: из серьёзного в забавное

            • Перевод

            Перевод поста Виталия Каурова "Automating xkcd Diagrams: Transforming Serious to Funny".
            Скачать файл, содержащий текст статьи, интерактивные модели и весь код, приведенный в статье, можно здесь.
            Выражаю огромную благодарность Кириллу Гузенко за помощь в переводе.

            Утром в понедельник я наткнулся на интересный вопрос, опубликованный в Mathematica Stack Exchange, с нехитрым заголовком — "создание графиков в xkcd-стиле". Из-за популярности веб-комиксов xkcd Рэндалла Манро (Randall Munroe), я ожидал, что люди добавят себе несколько закладок этой страницы и с десяток up-vote. Тогда я ещё не знал, как всё обернётся. Сложно предсказать вирусность какого-то мема, однако если удалось создать такой, то весьма здорово наблюдать, как растёт его популярность и как он распространяется в интернете. Через два дня этот пост имел уже более 100 тысяч просмотров, двести up-vote и 150 закладок; стали возникать ответы и схожие посты в других разделах Stack Exchange, в Twitter разразился небольшой ураган по этому поводу, появлялись обсуждения в Hacker News и reddit. Тут я приведу оригинал поста Amatya с примером изображения в xkcd-стиле:

            «Я получил электронное письмо, на которое я захотел ответить с графиком в xkcd-стиле, но я не мог справиться с этим. Всё, что я рисовал, выглядело как надо, однако я не мог придумать такой команды для Plot Legends, чтобы сделать фрагменты текста плавающими. Может, есть какие-то идеи, как можно было бы создать графики в xkcd-стиле? Когда всё выглядит рисованным от руки и неточным. Думаю, рисование таких странных кривых в Mathematica должно быть трудным в реализации.»

            Walking back to my front door at night

            Читать дальше →
          • Вы неправильно пишете животных

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


              Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

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

              Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен.
              Читать дальше →
            • Deconvolutional Neural Network

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

              Свёрточная нейронная сеть (англ. convolutional neural network, CNN) — специальная архитектура искусственных нейронных сетей, предложенная Яном Лекуном и нацеленная на эффективное распознавание изображений, входит в состав технологий глубокого обучения (англ. deep leaning). Эта технология построена по аналогии с принципами работы зрительной коры головного мозга, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определённого набора простых клеток. Таким образом, идея сверточных нейронных сетей заключается в чередовании сверточных слоев (англ. convolution layers) и субдискретизирующих слоев (англ. subsampling layers, слоёв подвыборки).[6]

              image
              Рис 1. Архитектура сверточной нейронной сети

              Ключевым моментом в понимании сверточных нейронных сетей является понятие так называемых «разделяемых» весов, т.е. часть нейронов некоторого рассматриваемого слоя нейронной сети может использовать одни и те же весовые коэффициенты. Нейроны, использующие одни и те же веса, объединяются в карты признаков (feature maps), а каждый нейрон карты признаков связан с частью нейронов предыдущего слоя. При вычислении сети получается, что каждый нейрон выполняет свертку (операцию конволюции) некоторой области предыдущего слоя (определяемой множеством нейронов, связанных с данным нейроном). Слои нейронной сети, построенные описанным образом, называются сверточными слоями. Помимо, сверточных слоев в сверточной нейронной сети могут быть слои субдискретизации (выполняющие функции уменьшения размерности пространства карт признаков) и полносвязные слои (выходной слой, как правило, всегда полносвязный). Все три вида слоев могут чередоваться в произвольном порядке, что позволяет составлять карты признаков из карт признаков, а это на практике означает способность распознавания сложных иерархий признаков [3].

              Что же именно влияет на качество распознавания образов при обучении сверточных нейронных сетей? Озадачившись данным вопросом, наткнулись на статью Мэттью Зайлера (Matthew Zeiler).
              Читать дальше →
            • Если вы решили перейти с PHP на Python, то к чему следует подготовиться

                Думали ли вы когда-нибудь о том, что однажды слишком быстро втянулись в веб-программирование на PHP? И вот уже прошло много лет, у вас хороший опыт, и вы не думаете ни о каких других способах „делать“ веб, кроме как на PHP. Может быть, у вас возникают сомнения в правильности выбора, однако непонятно, как найти способ быстро его проверить. А хочется примеров, хочется знать, как изменятся конкретные аспекты деятельности.

                Сегодня я попробую ответить на вопрос: «А что если вместо PHP писать на Python?».

                Сам я долгое время задавался этим вопросом. Я писал на PHP 11 лет и даже являюсь сертифицированным специалистом. Я научился его «готовить» так, чтобы он работал в точности, как мне надо. И когда я в очередной раз читал на Хабре перевод статьи о том, как всё в PHP плохо, я просто недоумевал. Однако подвернулся случай пересесть на Ruby, а потом и на Python. На последнем я и остановился, и теперь попробую рассказать вам PHP-шникам, как нам питонистам живётся.


                Python с точки зрения PHP-программиста...
              • Уязвимость «большого пальца»: я твой палец по фотографии взломаю



                  Биометрия набирает обороты

                  В России обсуждают вопросы о создании Национального биометрического Центра с объемом базы данных 100 – 150 млн. записей. В Госдуму уже внесен проект закона об обязательной биометрической регистрации. На Хабре пишут про результаты тестирования алгоритмов биометрических компаний и пытаются выяснить, кто круче: пароль или биометрия. Даже Mastercard выпускает платёжную карту со сканером отпечатков пальцев и VISA тоже.

                  Хакеры ехидно потирают ручки

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

                  Про то, как «хакнули по фотографии» первую женщину на посту министра обороны Германии, читайте под катом.
                  Читать дальше →
                • [Перевод] Тойота хотела взять с меня $4400 за замену батареи. Я починил сам за $10

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

                  image
                  Читать дальше →
                • Пространства имен в PHP

                  На хабре можно найти немало статей о пространствах имен в PHP, но мне помогла именно эта, и именно ей я хочу поделится. Наверняка найдутся те, кому этот перевод поможет.

                  Путь к поддержке пространств имен в PHP был тернистым. Но к счастью она была добавлена к языку в версии PHP 5.3, и структура PHP кода значительно улучшилась с тех пор. Но как именно нам их использовать?

                  Что такое пространства имен?


                  «Не забывайте обратный слеш, когда Вы храните имя пространства имен в виде строки!»

                  Представьте себе пространство имен, как ящик, в который Вы можете положить все что угодно: карандаш, линейку, кусок бумаги и так далее. Это Ваши вещи. Прямо под вашим ящиком, располагается еще чей-то ящик, и его хозяин хранит те же вещи в нем. Чтобы избежать использования предметов друг друга, Вы решили маркировать ящики так чтобы стало ясно, что кому принадлежит.
                  Читать дальше →
                  • +22
                  • 37,3k
                  • 9
                • Статический анализ PHP кода на примере Symfony2

                  Аннотация


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

                  С PHP дело обстоит сложнее: уже писали про статический анализ PHP кода, но в целом инструментарий тут гораздо беднее, и динамическая природа языка делает процесс разработки-тестирования сложнее. Для сравнения, в той же Java компиляция проекта сама по себе помогает найти ошибки, а в PHP типизация слабая, поэтому даже тесты могут пропустить ошибки.
                  Читать дальше →
                • Вести с форума 31C3: новые происки АНБ, компьютерное управление мозгом и Интернет туалетов

                    image

                    27 декабря в Гамбурге открылась одна из крупнейших в мире хакерских конференций — Chaos Communications Congress (31C3). Ежегодный конгресс собирает огромное число инженеров, мейкеров, политических активистов, людей искусства и хакеров в широком смысле этого слова. На 31-й съезд приехали более 12 000 участников, которые стали свидетелями весьма интересных событий.
                    Читать дальше →
                  • Ошибки новичка в сфере разработки игр


                      Оригинал изображения

                      Полгода назад я рассказывал про свой опыт работы фрилансером на oDesk. После этого я решил оставить разработку Android приложений на заказ и заняться своей давней мечтой — созданием игр. Мы с друзьями объединились, и работа закипела…

                      Для начала хочу рассказать о текущем состоянии проекта:
                      Время от разработки до публикации: 2 месяца
                      Время нахождения в магазинах приложений: 3 месяца
                      Загрузки iOS: > 15000 (93 % русскоязычные пользователи)
                      Загрузки Android: > 35000 (63 % русскоязычные пользователи)

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

                        Признак плохого дизайна №1:
                        Наличие объекта-«бога» с именем, содержащим «Manager», «Processor» или «API»


                        Ведущий iOS-разработчик Redmadrobot Егор BepTep Тафланиди — о том, как добиться стройного архитектурного дизайна мобильного приложения, используя классические шаблоны проектирования и логическое разделение исходного кода на модули.

                        Читать дальше →
                      • Грандиозное тестирование батареек

                          Каждый раз при покупке батареек у меня возникало много вопросов:

                          Насколько дорогие батарейки лучше дешёвых?
                          Насколько ёмкость литиевых батареек больше обычных?
                          Насколько ёмкость солевых батареек меньше, чем у щелочных?
                          Отличаются ли батарейки для цифровых устройств от обычных?
                          Какие из батареек, стоящих одинаково, лучше покупать?

                          Чтобы получить ответы на эти вопросы я решил протестировать все батарейки АА и ААА, которые удастся найти в Москве. Я собрал 58 видов батареек АА и 35 видов ААА. Всего было протестировано 255 батареек — 170 АА и 85 ААА.


                          Читать дальше →