Pull to refresh
0
0
Send message

Хакаем CAN шину авто. Мобильное приложение вместо панели приборов

Reading time7 min
Views115K

Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.

По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.

Как телефон взаимодействует с автомобилем
Total votes 109: ↑109 and ↓0+109
Comments123

Умный дом, опыт построения, бег по граблям (MajorDomo, Tasmota и Алиса)

Reading time8 min
Views84K

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

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

Подробности тут
Total votes 19: ↑19 and ↓0+19
Comments73

«Анализ данных на Python» в двух частях

Reading time5 min
Views58K
Курсы по анализу данных в CS центре читает Вадим Леонардович Аббакумов — кандидат физ.-мат. наук, он работает главным экспертом-аналитиком в компании Газпромнефть-Альтернативное топливо.

Лекции предназначены для двух категорий слушателей. Первая — начинающие аналитики, которым сложно начинать с изучения, например, книги The Elements of Statistical Learning. Курс подготовит их к дальнейшей работе. Вторая — опытные аналитики, не получившие систематического образования в области анализа данных. Они могут заполнить пробелы в знаниях. С прошлого года на занятиях используется язык программирования Python.

Чтобы понимать материал, достаточно когда-то прослушанных курсов математического анализа, линейной алгебры и теории вероятностей и базовых знаний языка Python.

Приятного просмотра!
Total votes 22: ↑20 and ↓2+18
Comments0

Allure-Framework. Работа с кодом

Reading time11 min
Views116K
Продолжая серию публикаций о возможностях Allure-framework, сегодня мы поговорим о работе с кодом. Под катом разбираем, что такое шаг теста, как выводить информацию в отчет при выполнении шагов и какие бывают категории дефектов. Кроме того, расскажем об аннотациях Allure. Дальше еще интереснее!
Читать дальше →
Total votes 5: ↑4 and ↓1+3
Comments5

Изменение коммитов в Git

Reading time2 min
Views291K
Это пост для тех, кто начинает работу с Git. Все, что здесь написано по частям можно найти в многочисленных простынях о Git на Хабре. Но я подумал, что неплохо было бы иметь отдельный предельно понятный топик, который бы гуглился по запросу «git изменение коммитов».
Читать дальше →
Total votes 94: ↑80 and ↓14+66
Comments21

Песочница и шпаргалка по изучению Python

Reading time3 min
Views53K

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


В итоге все свои эксперименты я вылил на GitHub.


Читать дальше →
Total votes 49: ↑48 and ↓1+47
Comments20

Легальный вывод денег из oDesk в РФ

Reading time40 min
Views55K
Здравствуйте!

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

Читать дальше →
Total votes 77: ↑75 and ↓2+73
Comments55

Интеграция MS Excel и Python

Reading time6 min
Views372K
Добрый день, уважаемые читатели.

В сегодняшней статье я хотел бы, как можно подробнее, рассмотреть интеграцию приложений Python и MS Excel. Данные вопрос может возникнуть, например, при создании какой-либо системы онлайн отчетности, которая должна выгружать результаты в общепринятый формат ну или какие-либо другие задачи. Также в статье я покажу и обратную интеграцию, т.е. как использовать функцию написанную на python в Excel, что также может быть полезно для автоматизации отчетов.
Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments8

Защита подъезда методом организации разумного видеонаблюдения без консьержа

Reading time13 min
Views259K
Так получилось, что какой бы ни был аккуратный микрорайон, он всегда с чем-нибудь соседствует, плюс всегда есть праздношатающиеся, непраздношатающиеся и «этождети». Это если забыть про наркоманов, целенаправленных воров и разбойников. Твой дом — твоя крепость. Подъезд твоего дома — тоже твой дом. (Да, этот пункт многие не понимают, но учиться никогда не поздно). Классические методы защиты подъезда — установка укреплённых дверей; установка домофона; инсталляция консьержки; организация видеонаблюдения над входами.

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

Однако, если включить мозги и подумать, на самом деле можно весьма небольшими вложениями получить очень эффективный результат.
Читать дальше →
Total votes 298: ↑294 and ↓4+290
Comments314

Как в Яндексе используют PyTest и другие фреймворки для функционального тестирования

Reading time19 min
Views125K
Всем привет! Меня зовут Сергей, и в Яндексе я работаю в команде автоматизации тестирования сервисов монетизации. Перед каждой командой, которая занимается задачами автоматизации тестирования, встает вопрос: «Какой [фреймворк|инструмент] выбрать для написания своих тестов?» В этом посте я хочу помочь вам на него ответить. Если быть конкретнее, речь пойдет об инструментах тестирования на языке Python, но многие из идей и выводов можно распространить на другие языки программирования, поскольку подходы часто не зависят от конкретной технологии.



В Python существует множество инструментов для написания тестов и выбор между ними неочевиден. Я опишу интересные варианты использования PyTest и расскажу о его [плюсах|минусах|неявных возможностях]. В статье вы найдёте развёрнутый пример использования Allure, который служит для создания простых и понятных отчётов автотестов. Также в примерах будет применяться фреймворк для написания матчеров — Hamcrest для Python. Надеюсь, что в итоге, те, кто сейчас в поиске инструментов для тестирования, смогут на основе изложенных примеров быстро внедрить функциональное тестирование в своем окружении. Те же, кто уже использует какой-то инструмент, смогут узнать новые подходы, варианты использования и концепции.
Читать дальше →
Total votes 62: ↑60 and ↓2+58
Comments10

Работа с массивами в bat

Reading time6 min
Views56K
Прочитав пост Свой сапер на своих батниках и пробежавшись по коду, наткнулся на комментарий, что в батниках нет массивов (кстати, в последней версии Сапера, о котором идёт речь в том посте, нет этого комментария). Так вот, если в батнике необходимо использовать некоторый набор значений, то логично объявить такое кол-во переменных, которое требуется и работать с ними. Собственно данный сценарий эту задачу помогает решить проще. Вот несколько примеров:

echo Создание массива А:
call :array new A "'one','two','three','foo','bar'"
echo Получение третьего элемента в result:
call :array get A 3 result
echo %result%
echo Изменение нулевого элемента
call :array set A 0 "первый элемент"

подробнее
Total votes 47: ↑39 and ↓8+31
Comments32

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

Reading time3 min
Views19K
image

В данной статье я расскажу об инструментарии для тестирования безопасности веб-приложений. Основные этапы и чек-лист работ представлены в предыдущей статье.
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments3

Sparta — комплекс для проведения тестирования на проникновение

Reading time5 min
Views18K

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

Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments0

Защита веб-приложения: практические кейсы

Reading time7 min
Views29K
image


Безопасность веб-приложений находится в первой десятке трендов и угроз информационной безопасности уже свыше 10 лет. Действительно, современные бизнес-процессы и повседневная жизнь — все больше и больше зависит от использования веб-приложений, в разнообразнейших аспектах: от сложных инфраструктурных систем до IoT устройств. Тем не менее специализированных средств защиты веб-приложений довольно мало, по большей части эту задачу возлагают (или надеются что она будет решена) на разработчиков. Это и использование различных фреймворков, средств санации, очистки данных, нормализации и многого другого. Тем не менее, даже с использованием этих средств безопаснее веб не стал, более того, в все уязвимости "классического веба" практически в неизменном виде мигрировали в мобильную разработку. В этой статье будет рассказано не как не допустить уязвимость, а как защитить веб-приложение от ее эксплуатации с использованием Web Application Firewall.

Читать дальше →
Total votes 33: ↑26 and ↓7+19
Comments15

Атаки на сетевое оборудование с Kali Linux

Reading time4 min
Views68K
image

 
В данной статье мы рассмотрим актуальные атаки на сетевое оборудование и инструменты, доступные в популярном дистрибутиве Kali Linux для их проведения.

Читать дальше →
Total votes 38: ↑38 and ↓0+38
Comments10

Burp Suite: швейцарский армейский нож для тестирования веб-приложений

Reading time6 min
Views109K

 
Burp Suite – это мультитул для проведения аудита безопасности веб-приложений. Содержит инструменты для составления карты веб-приложения, поиска файлов и папок, модификации запросов, фаззинга, подбора паролей и многое другое. Также существует магазин дополнений BApp store, содержащий дополнительные расширения, увеличивающие функционал приложения. Стоит отметить и появление в последнем релизе мобильного помощника для исследования безопасности мобильных приложений — MobileAssistant для платформы iOS.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments2

Книги для системного администратора. Моя книжная полка

Reading time6 min
Views483K
Книги.
Я считаю, что важнейшим инструментом получения скилов системного администрирования являются именно они — книги.
Нет специальных факультетов, обучающих «админству» — каждый постигает это самостоятельно. Путем проб, ошибок и боли, потере важных данных различных злоключений.
В начале пути сложно определиться, что же нужно прочесть — ведь массив информации столь огромен!
В данном посте я хочу собрать наиболее важные и значимые труды для системных администраторов.
Уклон будет на *nix админство, но, надеюсь тема окажется небезынтересной и для Windows коллег и в комметариях они заполнят мои пробелы.
Пост субьективен и отражает лишь мой собственный опыт — я раскажу о книгах, которые помогли моему становлению.

Читать дальше →
Total votes 51: ↑46 and ↓5+41
Comments45

UI тесты: Cucumber + Selenide

Reading time8 min
Views29K

Часть 2


Продолжение статьи о написании UI тестов на Cucumber с помощью Selenide. В первой части был разобран простейший пример smoke-теста для riskmarket.ru. В этой части апгрейдим тест до полноценного проекта с отчетами, поговорим о скриншотах, кастомных Condition, проаннотируем элементы, введем PageObject.


Получившийся проект вполне можно использовать как фундамент для ваших UI тестов.


Проект на гитхабе


Видео исполнения теста на youtube



Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments2

Управленческие инструменты: интеллект-карта “Формула работы с людьми”

Reading time2 min
Views56K
На одном из моих первых тренингов один из присутствующих менеджеров задал вопрос:

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


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

В общем, меня понесло…

Что было дальше
Total votes 21: ↑21 and ↓0+21
Comments7
1

Information

Rating
Does not participate
Registered
Activity