Как стать автором
Обновить
Александр Никишов @gryz9 read-only

Пользователь

  • Публикации
  • Комментарии

Тестирование или управление качеством? Часть 2. Типы тестирования

Блог компании OTUS Тестирование IT-систем *
Перевод

В предыдущей статье «Часть 1. Что такое тестирование?» я поделилась с читателями мыслями о том, в чем заключается суть тестирования. Во второй части моих рассуждений о тестировании и управлении качеством я подробно рассмотрю различные типы тестирования и проанализирую модели, которые помогают разработчикам визуализировать процесс тестирования, чтобы вовлечь в него всех участников команды.

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

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 3.4K
Комментарии 0

Что такое EVPN/VXLAN

Децентрализованные сети Системное администрирование *IT-инфраструктура *Сетевые технологии *
В этой статье я расскажу — что такое EVPN/VXLAN и почему особенности этой технологии кажутся мне привлекательными для применения в ЦОД. Я не буду глубоко погружать вас в технические детали, а остановлюсь на них лишь в той мере, в которой это необходимо для знакомства с технологией. Почти все чего я буду касаться в этой статье так или иначе связанно с передачей трафика второго уровня OSI между устройствами в одном широковещательном домене. Есть множество задач прикладного характера, которые можно комфортно решить, имея такую возможность, одним из наиболее знакомых примеров такой задачи является миграция виртуальных машин в рамках одного или нескольких ЦОД. И если некоторое время назад разговор об этом неминуемо поворачивал в плоскость обсуждения проблем и неудобств общего широковещательного домена, сейчас, напротив, мы можем размышлять о решении этой задачи с точки зрения новых возможностей, перспектив и удобства.
Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 37K
Комментарии 4

Визуализация сетевых топологий, или зачем еще сетевому инженеру Python #2

Python *Cisco *Сетевые технологии *
🔥 Технотекст 2020

Привет, Хабр! Эта статья написана по мотивам решения задания на недавно прошедшем онлайн-марафоне DevNet от Cisco. Участникам предлагалось автоматизировать анализ и визуализацию произвольной сетевой топологии и, опционально, происходящих в ней изменений.


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

Всем заинтересовавшимся добро пожаловать под кат!


Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Просмотры 17K
Комментарии 11

Быстрый роутинг и NAT в Linux

Настройка Linux *Сетевые технологии *
По мере исчерпания адресов IPv4, многие операторы связи столкнулись с необходимостью организовывать доступ своих клиентов в сеть с помощью трансляции адресов. В этой статье я расскажу, как можно получить производительность уровня Carrier Grade NAT на commodity серверах.
Читать дальше →
Всего голосов 47: ↑47 и ↓0 +47
Просмотры 25K
Комментарии 30

Строим маршрутизатор в SOCKS на ноутбуке с Debian 10

Настройка Linux *Системное администрирование *Сетевые технологии *Беспроводные технологии *Серверное администрирование *
Tutorial
Целый год (или два) я откладывал публикацию данной статьи по главной причине — мной уже были опубликованы две статьи, в которых я описал процесс создания маршрутизатора в SOCKS из самого обычного ноутбука с Debian.

Однако, с тех пор стабильная версия Debian обновилась до Buster, мне в личку обратилось достаточное количество людей с просьбой помочь в настройке, а значит, мои предыдущие статьи не являются исчерпывающими. Что ж, я и сам догадывался, что методы, изложеннные в них, не до конца раскрывают все тонкости настройки Linux для маршрутизации в SOСKS. К тому же они написаны для Debian Stretch, а после обновления до Buster, в системе инициализации systemd, я заметил небольшие изменения во взаимодействии служб. Да и в самих статьях я не использовал systemd-networkd, хотя она лучше всего подходит для сложных сетевых конфигураций.
Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 11K
Комментарии 24

SSH-туннели — пробрасываем порт

Настройка Linux *
Не всегда есть возможность, да и не всегда надо, строить полноценный туннель с интерфейсной парой адресов. Иногда нам нужно лишь «прокинуть» вполне определённые порты.

Тут важно понимать, что туннель можно организовать как изнутри сети, к ресурсам которой вы хотите получить доступ, на внешний ssh-сервер. Также можно организовать туннель с хоста в Интернете на пограничный ssh-сервер сети, чтобы получить доступ к внутренним ресурсам.
Читать дальше →
Всего голосов 93: ↑68 и ↓25 +43
Просмотры 397K
Комментарии 80

Как обезопасить исходники своего python-приложения

Python *
Из песочницы
Рано или поздно все python-разработчики стают перед выбором: отдать заказчику приложение в исходниках или скрыть их. И вот во втором случае у многих (особенно недавно знакомых с этим прелестным языком) начинаются проблемы: поиск по гуглу, как правило, ничего не дает, идей никаких (или все бредовые).

Читать дальше →
Всего голосов 89: ↑74 и ↓15 +59
Просмотры 40K
Комментарии 62

How-To: Подключение Pfsense с модемом Huawei E392 к провайдеру Yota

*nix *

Введение


Данный пост был написан потому, что информации на просторах интернета мало и она разрознена, пришлось собирать по строкам из различных источников. Постараюсь в этом руководстве свести все воедино. Предполагается, что базовые знания о сборке pfSence у вас уже есть и вы можете зайти в консоль.
Версия системы:
[2.0.3-RELEASE][admin@pfsense.office]/root(1): uname -a
FreeBSD pfsense.office 8.1-RELEASE-p13 FreeBSD 8.1-RELEASE-p13 #0: Fri Apr 12 10:47:01 EDT 2013     root@snapshots-8_1-i386.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.8  i386


Читать дальше →
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 28K
Комментарии 2

Systemd за пять минут

Блог компании Southbridge
Наша компания занимается администрированием веб-серверов на базе CentOS. Довольно часто наши клиенты используют веб-приложения на базе python, ruby или java. Для автозапуска подобных приложений есть готовые шаблоны для написания стартап-скриптов. Но прогресс не стоит на месте, вышел уже второй релиз CentOS 7 и, следуя старой традиции «не ставить dot-zero релизы на продакшен», мы начинаем предлагать клиентам сервера на базе CentOS 7.1 (1503).

В CentOS7, так же как и в его родителе RHEL7, используется systemd — менеджер системы и служб для Linux, совместимый со скриптами инициализации SysV и LSB. systemd обеспечивает возможности агрессивной параллелизации и много всего прочего.

image

Огромный монстр с множеством возможностей, гибкими настройками и мегабайтами документации…

Но что делать, если стоит задача быстро-быстро, вот прямо вчера, сделать автозапуск некоего сервиса?
Давайте выжмем из документации минимально необходимый набор информации для создания простых старт-стоп скриптов.
Знакомство с systemd
Всего голосов 70: ↑66 и ↓4 +62
Просмотры 438K
Комментарии 58

5 игр для развития логики и обучения детей программированию

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

На тему «Зачем это надо?» на Хабре была хорошая инфографика. А здесь я приведу краткий обзор приложений, которые счёл достойными внимания.

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

Итак, начнём.

Kodable




Платформа: iPad
Русский язык: нет

Для малышей от 5 лет. «Колобку» нужно проехать по лабиринту к выходу, собрав монеты.
При всей своей простоте, игра обучает ветвлениям, циклам, функциям и отладке.
Ещё больше игр
Всего голосов 44: ↑41 и ↓3 +38
Просмотры 49K
Комментарии 19

Как мы делаем автоматизацию большой legacy сети

Блог компании X5 Group Децентрализованные сети Cisco *Сетевые технологии *
Привет. У нас 15 260+ объектов и 38 000 сетевых устройств, которые нужно настраивать, обновлять и проверять их работоспособность. Обслуживать такой парк оборудования довольно сложно и требует много времени, сил и людей. Поэтому нам потребовалось автоматизировать работу с сетевым оборудованием и мы решили адаптировать концепцию Network as a Code для управления сетью в нашей компании. Под катом читайте нашу историю автоматизации, совершенные ошибки и дальнейший план построения систем.


Читать дальше →
Всего голосов 12: ↑10 и ↓2 +8
Просмотры 9.4K
Комментарии 6

Написание framework на asyncio, aiohttp и мысли про Python3 часть первая

Разработка веб-сайтов *Python *Программирование *NoSQL *MongoDB *
Tutorial

Года полтора назад встал вопрос совместимости написанного кода с Python3. Поскольку уже стало более менее очевидно, что развивается только Python3 и, рано или поздно, все библиотеки будут портированы под него. И во всех дистрибутивах по умолчанию будет тройка. Но постепенно, по мере изучения, что нового появилось в последних версиях Python мне все больше стал нравится Asyncio и, скорее, даже не Acyncio а написанный для работы с ним aiohttp. И, спустя какое то время, появилась небольшая обертка вокруг aiohttp в стиле like django. Кому интересно что из этого получилось прошу под кат.


Вторая часть


Введение
Краткий обзор других фреймворков на базе aiohttp
1. Структура
2. aiohttp и jinja2
3. aiohttp и роуты
4. Статика и GET, POST параметры, редиректы
5. Websocket
6. asyncio и mongodb, aiohttp, session, middleware
7. aiohttp, supervisor, nginx, gunicorn
8. После установки, о примерах.
9.RoadMap

Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Просмотры 48K
Комментарии 12

Технострим: новая подборка обучающих видео к началу учебного года

Блог компании Mail.ru Group Программирование *Учебный процесс в IT

Сентябрь у многих уже ассоциируется с окончанием сезона отпусков, но у большинства — с учёбой. К началу нового учебного года предлагаем вам подборку видео наших образовательных проектов, выложенных на Youtube-канале Технострим. Подборка состоит из трёх частей: новые курсы на канале за 2018-2019 учебный год, самые просматриваемые курсы и самые просматриваемые видео.
Всего голосов 33: ↑33 и ↓0 +33
Просмотры 9.5K
Комментарии 0

Разработка ТамТам-бота на Python

Блог компании Mail.ru Group Мессенджеры *Python *
Tutorial


Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как часто говорил один из моих бывших начальников — "Серёга! Ты опять скатился в программирование!" Правда, не могу сказать, что этим был сильно не доволен он или кто-то другой когда-либо.


После появления Bot API у мессенджера ТамТам, я как истинный, а значит ленивый программист, создал 2 библиотеки Python для работы с ним:


  • open API клиента (далее — OAC) — изначально сгенерировал её при помощи OpenAPI Generator на основе схемы API, затем адаптировал с учётом особенностей генератора;
  • оболочку для этого клиента — TamTamBot (далее — TTB), упрощающую работу с OAC.

Так появился некий ТамТам Python SDK.


Сделал это я в первую очередь "для себя, для души", но также предложил и комьюнити ТамТам при желании им воспользоваться. Но, как известно, ни одно доброе дело не остаётся безнаказанным — народ попросил написать обучающую статью. И вот я здесь с этой статьёй. В ней я расскажу, как разработать простого бота при помощи этих библиотек.

Читать дальше →
Всего голосов 63: ↑46 и ↓17 +29
Просмотры 10K
Комментарии 52

Пишем API на Python (с Flask и RapidAPI)

Блог компании Skillbox Python *Программирование *API *Учебный процесс в IT
Перевод


Если вы читаете эту статью, вероятно, вы уже знакомы с возможностями, которые открываются при использовании API (Application Programming Interface).

Добавив в свое приложение один из многих открытых API, вы можете расширить функциональность этого приложения либо же дополнить его нужными данными. Но что, если вы разработали уникальную функцию, которой хотите поделиться с коммьюнити?
Читать дальше →
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 57K
Комментарии 7

Telegram-бот, webhook и 50 строк кода

Python *Программирование *
Tutorial
Как, опять? Ещё один туториал, пережёвывающий официальную документацию от Telegram, подумали вы? Да, но нет! Это скорее рассуждения на тему того, как построить функциональный бот-сервис используя Python3.5+, asyncio и aiohttp. Тем интереснее, что заголовок на самом деле лукавит…
Читать дальше →
Всего голосов 31: ↑21 и ↓10 +11
Просмотры 129K
Комментарии 19

Простой Telegram-бот на Python за 30 минут

Мессенджеры *Python *Социальные сети и сообщества
Из песочницы
На Хабре, да и не только, про ботов рассказано уже так много, что даже слишком. Но заинтересовавшись пару недель назад данной темой, найти нормальный материал у меня так и не вышло: все статьи были либо для совсем чайников и ограничивались отправкой сообщения в ответ на сообщение пользователя, либо были неактуальны. Это и подтолкнуло меня на написание статьи, которая бы объяснила такому же новичку, как я, как написать и запустить более-менее осмысленного бота (с возможностью расширения функциональности).

Читать дальше →
Всего голосов 35: ↑29 и ↓6 +23
Просмотры 416K
Комментарии 21

Yandex «Почта для домена» как почтовый шлюз для ваших серверов

Блог компании Plesk
Tutorial

Каждый раз поднимая новый сервер в облаках, вы получаете случайный IP-адрес. Не все понимают, что IP-адрес может попасть к вам с "историей". Часто приходится тратить время на удаление IP из публичных черных списков. В моём случае в последний раз это была очень неторопливая переписка с mail.ru, которая ни к чему не привела. После этого, создав новый сервер, я задумался: как же сделать так, чтобы не огребать проблем с такими IP-адресами?

Читать дальше →
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 64K
Комментарии 21

Разработка надёжных Python-скриптов

Блог компании RUVDS.com Разработка веб-сайтов *Python *
Перевод
Python — это язык программирования, который отлично подходит для разработки самостоятельных скриптов. Для того чтобы добиться с помощью подобного скрипта желаемого результата, нужно написать несколько десятков или сотен строк кода. А после того, как дело сделано, можно просто забыть о написанном коде и перейти к решению следующей задачи.

Если, скажем, через полгода после того, как был написан некий «одноразовый» скрипт, кто-то спросит его автора о том, почему этот скрипт даёт сбои, об этом может не знать и автор скрипта. Происходит подобное из-за того, что к такому скрипту не была написана документация, из-за использования параметров, жёстко заданных в коде, из-за того, что скрипт ничего не логирует в ходе работы, и из-за отсутствия тестов, которые позволили бы быстро понять причину проблемы.



При этом надо отметить, что превратить скрипт, написанный на скорую руку, в нечто гораздо более качественное, не так уж и сложно. А именно, такой скрипт довольно легко превратить в надёжный и понятный код, которым удобно пользоваться, в код, который просто поддерживать как его автору, так и другим программистам.

Автор материала, перевод которого мы сегодня публикуем, собирается продемонстрировать подобное «превращение» на примере классической задачи «Fizz Buzz Test». Эта задача заключается в том, чтобы вывести список чисел от 1 до 100, заменив некоторые из них особыми строками. Так, если число кратно 3 — вместо него нужно вывести строку Fizz, если число кратно 5 — строку Buzz, а если соблюдаются оба этих условия — FizzBuzz.
Читать дальше →
Всего голосов 38: ↑37 и ↓1 +36
Просмотры 40K
Комментарии 27

Принцип работы протокола VRRP

Сетевые технологии *Сетевое оборудование
Из песочницы
FHRP (First Hop Redundancy Protocol) — семейство протоколов, предназначенных для создания избыточности шлюза по умолчанию. Общей идеей для данных протоколов является объединение нескольких маршрутизаторов в один виртуальный маршрутизатор с общим IP адресом. Этот IP адрес будет назначаться на хостах как адрес шлюза по умолчанию. Свободной реализацией данной идеи является протокол VRRP (Virtual Router Redundancy Protocol). В этой статье рассмотрим основы протокола VRRP.

Читать дальше →
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 42K
Комментарии 10

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность