• Как подключить Яндекс Кассу и преуспеть в конверсии

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


    Читать дальше →
  • Ключевое слово «volatile» C/C++

    Volatile — ключевое слово языков C/C++, которое информирует компилятор о том, что значение переменной может меняться из вне и что компилятор не будет оптимизировать эту переменную. Примерно такое описание volatile я встречал во многих книгах и туториалах, и каждый раз мне не удавалось понять что же хотел сказать автор. На понимание этого я потратил n-ое количество времени, и вот специально для этого, чтобы упростить жизнь новичкам в понимании этого аспекта, решил написать как раз таки эту статью.
    Читать дальше →
  • Полноценный USB выход на D-link dir-320 A1 на Tomato

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

    В этой статье хочу помочь владельцам достаточно популярного, но уже морально устаревшего D-link dir-320 ревизии A1 разобраться как заставить нормально работать USB в роли файлового сервера, т.к. в интернете я не нашел внятной информации как это сделать, и пришлось собирать пазл по кусочкам.

    И так, роутер имеет на себе usb выход, НО… производитель решил, что использовать его нужно только для принт-сервера и не более того. В web интерфейсе родной прошивки можно выбрать только «Настройки принтера». Обновление прошивки ничего не дает.

    Т.к. USB выход есть и он может делать, что либо еще кроме выдачи 5 В, то соответственно проблема только одна и это прошивка. Было решено менять.

    Начнем по порядку, имелся роутер ASUS RT-N12VP без USB выхода, а так же старенький D-link dir-320 A1, цель была следующая, объединить два роутера в одну сеть и иметь сетевой диск.

    Первый подводный камень «сменить прошивку на dd-wrt»

    Читать дальше →
  • Написание декоратора при использовании django-export-import

    Привет, Хабр! Меня зовут Павел Цвилюк, начинающий Python Developer. В ходе работы над одним из проектов я столкнулся с проблемой подключения поискового поля и выгрузки отчётов в exel в административной панели. Их необходимо было регистрировать вместе с моим классом User:

    models.py
    class User(models.Model):
        name=models.CharField(max_length=200)
        surname=models.CharField(max_length=200)
        email=models.EmailField()
        password=models.CharField(max_length=200)
        telephone=models.PositiveIntegerField(max_length=12,blank=True,null=True)

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

    admin.py
    from django.contrib import admin
    from .models import User
    from import_export import resources
    from import_export.admin import ImportExportModelAdmin
    
    class UsersAdmin(admin.ModelAdmin):
        search_fields = ('name', 'email', 'telephone')
    
    class UsersResource(resources.ModelResource):
        class Meta:
            model = User
            skip_unchanged = True
            fields = ('id', 'name', 'email', 'telephone')
    
    class UserAdmin(ImportExportModelAdmin):
            resource_class = UsersResource
    
    admin.site.register(User, UsersAdmin, UsersAdmin)

    Запустив вышеописанный код я получил следующее:
    admin.site.register(User, UsersAdmin, UserAdmin)
    TypeError: register() takes from 2 to 3 positional arguments but 4 were given
    Читать дальше →
  • Что такое ExecutorService?

    Честно говоря, вопрос этот не слишком новый. Со времени выхода Java 5 и пакета java.util.concurrent.* прошло более 13 лет, но мне, за всю мою десятилетнюю практику, так ни разу и не пришлось столкнуться с этим зверем. Тем не менее, мне этот вопрос несколько раз задавали на собеседованиях и пришлось знакомиться.
    Читать дальше →
  • Выкачиваем фотографии из каждого диалога ВК средствами API

    Иногда бывает полезно выгрузить все фотографии из диалога ВКонтакте, руками это не сделать не просто, поэтому обратимся к API.

    В документации присутствует метод messages.getHistoryAttachments — он нам и нужен. Возвращать он может не только фотографии, но и другого рода документы: аудио, видео и т.д. Но в этом примере будем рассматривать только фотографии.
    Читать дальше →
  • bash редактируем приветствия сервера Linux

    Редактируем стандартное приветствия Linux/Bash


    2018_02_05_16_50_16

    1. Установим дополнительные пакеты «figlet»

    sudo apt-get install figlet -y  

    переходим в каталог суперпользователя…

    cd /root/ 

    Редактируем файл .bashrc
    (добавим дополнения в низ после #fi)

    nano .bashrc
    Читать дальше →
  • Динамический импорт в 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

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