• Динамический импорт в JavaScript

    В начале прошлого года было предложено ввести в JavaScript возможность динамического импорта. Если кто не знает, то сейчас в JavaScript нативно поддерживается только статическая импортизация и для этого есть причины, но это тема отдельного разговора. Предложение было реализовано и включено в список ближайшего обновления ECMAScript. Google Chrome с 63 версии уже поддерживает эту возможность. Я немного расскажу что это такое и где это может пригодиться.

    Читать дальше →
  • Размышления на тему карьеры в IT и советы начинающим

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

    1. Первое что вам нужно знать: многие программисты воспринимают себя как латентные миллионеры, это в корне неправильный подход. Не идите сюда за огромными суммами денег, век стартапов прошел, а отдельно взятый программист мало чего стоит. 95% разработчиков это ресурс, который ничего не решает, он приносит прибыль путем перепродажи его человеко-часов, сливки вашего труда снимать будете не вы, как и во многих профессиях.
    2. Зарплата it-шника всегда имеет потолок, выше которой 99% не прыгнут, они не станут евангелистами, звёздами и прочими техническими директорами.

    Читать дальше →
  • Для чего я создавал программу Компьютерщик

    Каждый кто хоть раз работал мастером по настройки и ремонту компьютер наверняка хотел вести учёт о проделанной работе. В этом поможет программа "Компьютерщик". Здесь всё сделано для удобной работы.

    image
    Читать дальше →
  • Методы, используемые полицией, чтобы поймать торговцев наркотиками в DarkNet’е

    Новое исследование на рынках теневых интернет-сайтов для незаконных товарооборотов наркотиков, выявило некоторые способы использования правоохранительными органами ловушек для онлайн-торговцев наркотиками.
    Читать дальше →
  • Методы анализа трафика как основа проектирования IDS

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

    Идентификация и распознавание воздействия на сети связи на основании анализа циркулирующего в них трафика происходит на основе использования ряда методов выявления аномалий:

    • Трендовый анализ
    • Корреляционный анализ
    • Методы на основе вейвлет-анализа
    • Методы классификаторов с использованием теории нечетких множеств
    • Анализ трафика на основе нейронных сетей
    • Методы фрактального анализа
    • Методы конечных автоматов на основе генетических алгоритмов
    • Методы на основе бионических подходов
    • Гибридные подходы

    Упомянутые методы обнаружения и классификации аномалий и их комбинации используются при проектировании программно-аппаратных комплексов/систем обнаружения вторжений. Различают несколько типов IDs в зависимости от типа используемого сенсора, его расположения и методов подсистемы анализа.
    Читать дальше →
  • Мониторинг истечения срока SSL-сертификатов сайтов

    Мониторинг истечения срока SSL-сертификатов сайтов


    image

    Скрипт будет работать на системе Ubuntu 16.04 + Apache 2.4.18. И будет мониторинг окончания действия годности сертификатов двух сайтов SSL. К примеру, мониторинг сайта
    habrahabr.ru и www.google.ru.

    Очень удобное и быстрое решения за 1 минуту.

    Действия №1


    Для начала создам скрипт на тестовом сервере в корне пользователя

    Скопируем и сохраним скрипт внизу будет описания…
    nano /home/aa/ssl.sh

    echo "<hr>" &&
    echo "<center><strong><H1>"Монитор истечения срока SSL-сертификата "</H1></center></strong>" 
    echo "<hr>" &&
    echo "<p><font size="5" color="red" face="Arial">habrahabr.ru</font></p>"&&
    echo habrahabr.ru  &&  echo  | openssl s_client -connect habrahabr.ru:443 2>/dev/null | openssl x509 -enddate -noout | cu\t -d '=' -f2 | xargs -I{} date -d "{}" '+%F %T' 
    echo "<p>"&& 
    echo "<hr>"
    echo "<p><font size="5" color="red" face="Arial">www.google.ru</font></p>"&&
    echo www.google.ru && echo "<strong>"  | openssl s_client -connect www.google.ru:443 2>/dev/null | openssl x509 -enddate -noout | cu\t -d '=' -f2 | xargs -I{} date -d "{}" '+%F %T'  
    echo "<title>SSL</title>" 
    echo "<hr>" 
    echo "<meta http-equiv="Refresh" content="10" />"
    date 

    Читать дальше →
  • Возможные неопределенности в карьере программиста

    Здравствуй, Хабр!

    Давно собирался написать данную статью, но, как и, возможно, у многих, не хватало времени это сделать. Речь пойдет об одном «программисте», не скажу, что прям обо мне который пытается развиваться как профессионал, и строить свою карьеру в IT-сфере. Пусть, условно, его будем звать Ваней. Но, обо всем по порядку.
    Читать дальше →
  • Dynamic text или как создать полезную утилиту в 60 строк кода

    Доброго времени суток!


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


    Итак, утилита принимает текст, заменяет ключевые слова (bash) и выводит новый текст. все очень просто.


    Примеры использования:


    cat yourfile.dxt | dxt

    echo "currend date: $(date)" | dxt

    image

    Читать дальше →
  • Как я Evrial ломал

    Недавно на руки мне попал новый образец, ставшего в последнее время популярным, Evrial.

    О трояне
    Evrial Project — MaaS (Malware as a service) троян с функционалом клиппера (подмена буфера обмена) и стиллера паролей/файлов

    Сам файл файл является .NET-приложением, которое, к слову, ничем не накрыто в отличие от предыдущих версий.


    Прогнав его декомпилятором, без труда получаю исходный код и узнаю что это модификация нашумевшего Ovidiy
    Читать дальше →
  • Реверс инжиниринг 2048

    Вступление


    Это моя первая статья и я старался её сделать как можно интереснее.
    Поэтому речь пойдёт о реверс инженеринге игры «2048» (заточенной под андроид)

    Внимание
    В этой статье я не буду говорить о свойствах apk, о декомпиляции dex в оп код smali и о прочих тонкостях.

    Цель работы


    А вот и она.

    image

    Инструкция


    Для начала я закинул весь apk в онлайн декомпилер

    ссылки на декомпилеры

    Небольшое отступление


    Дело в том, что в игре 2048 после начала генерируютя фишки с числом 2, которые надо складывать между собой чтобы получить числа в два раза больше предыдущих. И нашей целью является заменить фишки с числом 2 на более крупные (например с числом 16384).
    Читать дальше →
  • Проверяем существование заказа в интернет магазине при входящем звонке

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

    Имеем: freepbx, сайт на битриксе на соседней виртуалке. Поехали!
    Читать дальше →
  • «Честное» распределение интернет-канала между пользователями — QoS

    Долгими посленовогодними вечерами довелось активно поюзать домашний интернет, в результате чего обратил внимание на некомфортную работу в интернет при одновременной работе нескольких приложений — например, торретны, ютуб и браузер. Или выгрузка файла и работа по ssh. Полез гуглить и увидел, что есть такая вещь, как QoS. У меня в маршрутизаторе установлена прошивка Gargoyle, которая очень неплохо умеет работать с QoS.

    Кстати, OpenWRT, на базе которого и сделана Gargoyle, тоже работает с QoS, но там настройка несколько иная, хотя описанные ниже принципы работы QoS помогут настроить QoS и в OpenWRT.

    В Горгульевской wiki нашлась статья про QoS, которая мне весьма понравилась и благодаря ей я настроил QoS на своем маршрутизаторе. Работой маршрутизатора с настроенным QoS был приятно удивлен — ни приложения, ни пользователи не мешали друг другу работать в интернет, посему я решил сделать доброе дело и перевести эту статью на русский — может быть кому-нибудь пригодится.

    Вольный перевод статьи о QoS из Gargoyle wiki
    Скриншоты и названия пунктов меню приведены на примере прошивки 1.10.0

    Читать дальше →
  • Лямбды в массы

    Лямбды в массы (о нововведениях в java 8)


    Лямбды — одно из самых значимых нововведение в java 8.

    Для начала разберемся с итераторами.

    При использовании внешних итераторов программист учитывает общее количество записей и проходит по ним. У вас есть итератор и шаг итерации.

    Внутренние итераторы управляют итерациями в фоновом режиме. Когда вы передаете объект функции методу, выполняемому над списком, это внутренний итератор.

    Возьмем для примера список

    List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

    1. Пробежимся по списку и выведем его на экран используя цикл for

    System.out.println("Using foreach loop (external iterator)")
    for (int i = 0; i < numbers.size(); i++) {
        System.out.println(numbers.get(i));
    }

    2. используя for each

    System.out.println("Using lambdas <i><b>for each</b></i> (external iterator)");
    for(int e:numbers){
        System.out.println(e);
    }
    

    3. Для той же задачи используем интерфейс Consumer

    numbers.forEach(new Consumer<Integer>() {
        @Override
        public void accept(Integer value) {
            System.out.println(value);
        }
    });

    4. Используя лямбды

    numbers.forEach(n -> System.out.println(n));

    5. И попробуем распараллелить наш вывод

    System.out.println("Using lambdas for each (external iterator) + parallel");
    people.parallelStream().forEach(p -> System.out.println(p));
    Читать дальше →
  • Border-radius: 50% против 100%

    В последнее время я пытался переосмыслить правила CSS, которые я принял в своей практике. Я написал огромное количество кода без реального понимания того, почему он работает именно так.

    Я просто решал задачи определенным способом, основываясь на общепринятой практике. Но с недавних пор я задумался, могу ли я узнать хотя бы приблизительно причину, почему все работает так, а не иначе?

    Некоторые детали реализации браузера нечеткие, наверное потому что я в действительности не читал спецификацию. Теперь все чаще я пытаюсь себя спрашивать — почему все работает именно так? И все это привело меня к моментам озарения, которыми я надеюсь поделиться с вами.
    Читать дальше →
  • Начало работы с J-Link API для Creo Parametric

    Здравствуйте! Предлагаю Вашему вниманию мой перевод статьи за авторством Бартоша Добржелецкого.


    J-Link — это программный интерфейс (API) для CAD-системы PTC Creo Parametric. Он предоставляет лишь часть функциональности, доступной в более сложном Creo/TOOLKIT, основанном на C. Тем не менее, доступных вызовов достаточно для автоматизации многих задач, возникающих при работе в CAD-системах.
    Читать дальше →
  • НЛО на зеленых лампочках* или как мы тестировали точку доступа HPE Aruba OC20 (JZ074A)

    *Данное исследование — частное мнение сотрудников одного из российских дистрибуторов HPE. *
    Компания Aruba (сейчас в составе HPE) известна как ведущий поставщик гибких беспроводных решений, уровня Enterprise. Мы отвлечемся от битвы Йокодзун в квадранте Гартнера и посмотрим на коробочное решение, которое HPE сделали для самых маленьких. Для Small Business. В качестве исходной задачи у нас точка доступа HPE Aruba OC20 (он же JZ074A), глазами владельца небольшого офиса, без радиообследования и тестов производительности.

    Чтобы подготовиться к работе над обзором, мы попросили у представительства HPE документацию по OC20 (она же JZ074A), но полученные материалы были в стиле «если горит зеленая лампочка, значит, всё Ок». Зеленую лампочку мы включили и если вам интересно, что еще мы узнали про OC20, добро пожаловать под кат.
    Читать дальше →
  • Этика Цифрового Неравенства

    Человечество вступило в новую эпоху, которая началась сравнительно недавно. Интернет, электронная почта, мобильные телефоны появились достаточно давно (еще в 90х).
    В течении нескольких лет, с развитием технологий и удешевлением гаджетов, цифровое общение (digital connectivity) стало повседневной практикой/привычкой, которую начали называть как online world.

    Online world – это также и новые возможности в человеческом общении и в человеческом обществе. Новости/Идеи/Ценности распространяются практически мгновенно и можно легко найти людей/последователей, которые их разделяют.

    До прихода online world – создание «сетей взаимодействия» (бизнес, государство, общественные и финансовые институты) занимало десятки лет/поколения и требовало существенных человеческих и финансовых ресурсов.

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

    (Термины: системы доверия/system of mutual trust и сети взаимодействия/human cooperation systems взяты из книги «Sapiens: Краткая история человечества» )
    Читать дальше →
  • Реклама будущего

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

    1. Дроны


    Дроны используются предприятиями для съёмки рекламных роликов, но некоторые умудряются использовать их исключительно продвигая компании виртуальной реальности. Известна история, когда такая сингапурская фирма, как Near в 2015 году стала участником судебного разбирательства по причине того, что её дроны без известия людей собирали о них личную информацию через Wi-Fi. Они делали это для дальнейшего использования так называемой «сверхперсонализированной» рекламы. Подобные ситуации могут случаться и в дальнейшем.


    Читать дальше →
  • Доказательство Гипотезы Римана

    Гипотеза Римана это математическая гипотеза, выведенная в 1859 году Бернхардом Риманом. И которая до сих пор не была решена.

    Гипотеза Римана звучит так:
    Все нетривиальные нули дзета-функции имеют действительную часть равную 1/2.
    Мне удалось доказать это утверждение. Мои выводы основываются на резултате фон Коха 1901 года.

    Если Гипотеза Римана верна, то

    π(x) = Li(x) + Ο(√x∙ln x)

    Гипотеза Римана имеет большое значение в квантовой механике, а также в криптографии.

    Формула π(x) и Li(x)


    В данном разделе я представлю две формулы с помощью которых я доказал Гипотезу Римана. Это новая формула функции π(x) и новый метод интегрирования функции 1/ln(x).

    Функция π(x) показывает сколько в данном числе x простых чисел. Простые числа — это числа, которые делятся только на себя и на единицу. Например: 2 3 5 7…
    Читать дальше →
  • Тренды электронной коммерции на 2018 год

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

    Для начала поговорим о самом очевидном, это мобильные телефоны. Они станут большими игроками на рынке онлайн-шопинга в 2018 году. Статистика показывает, что 50% дохода электронной коммерции будет приходиться на мобильные устройства.

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

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