Как стать автором
Обновить
8
0

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

Отправить сообщение

Тяжелая терапия: лекарство от палева для MacOS

Время на прочтение4 мин
Количество просмотров8.4K
Вы скажете, что тут и из коробки все отлично и вроде все гениально, вплоть до автогенерации такого пароля для web-сайтов, который даже зрительно не воспринимается с пятой попытки, однако, представим себе, что для нас важно защититься не только от повседневных хакеров, но и от самих разработчиков системы.
Читать дальше →
Всего голосов 41: ↑30 и ↓11+19
Комментарии7

Продвинутое использование Гита или как выйти на пенсию на полгода раньше?

Время на прочтение11 мин
Количество просмотров27K


Не знаю, на каком языке программирования вы пишете, но уверен, что используете Гит при разработке. Инструментов для сопровождения разработки становится всё больше, но даже самый маленький тестовый проект, я неизменно начинаю с команды git init. А в течение рабочего дня набираю в среднем ещё 80 команд, обращаясь к этой системе контроля версий.


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


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


Кому будет полезна эта статья?


Вы уже освоили джентльменский набор Гита и готовы двигаться дальше? Существует 2 пути:


  1. Освоить сокращённые команды – алиасы. Они почти всегда составлены мнемонически и легко запоминаются. Забыть оригиналы команд проблематично, я легко их набираю, когда это требуется. Плюс не сбиваюсь с мысли, проверяя что-то в Гите в процессе написания кода.
  2. Узнать о дополнительных флагах к командам, а также их объединении между собой. Я понимаю, что кто-то ненавидит сокращения. Для вас тоже есть интересный материал в статье – как повысить полезность и удобство вывода команд, а также как решать не самые тривиальные, но часто встречающиеся на практике задачи.

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


Добро пожаловать под кат!

Читать дальше →
Всего голосов 37: ↑30 и ↓7+23
Комментарии44

Создание игр на Python 3 и Pygame: Часть 1

Время на прочтение8 мин
Количество просмотров358K
Многие разработчики приходят в разработку ПО, потому что хотят создавать игры. Не все могут стать профессиональными разработчиками игр, но любой может создавать собственные игры из интереса (а может быть, и с выгодой). В этом туториале, состоящем из пяти частей, я расскажу вам, как создавать двухмерные однопользовательские игры с помощью Python 3 и замечательного фреймворка PyGame.

(Остальные части туториала: вторая, третья, четвёртая, пятая.)

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

Мы реализуем следующие функции и возможности:

  • простые стандартные GameObject и TextObject
  • простой стандартный Game object
  • простая стандартная кнопка
  • файл конфигурации
  • обработка событий клавиатуры и мыши
  • кирпичи, ракетка и мяч
  • управление движением ракетки
  • обработка коллизий мяча с объектами игры
  • фоновое изображение
  • звуковые эффекты
  • расширяемая система спецэффектов

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


Готовый исходный код выложен здесь.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии4

Git happens! 6 типичных ошибок Git и как их исправить

Время на прочтение5 мин
Количество просмотров238K


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

Все мы делаем ошибки, особенно при работе с такими сложными системами, как Git. Но помните: Git happens!
Читать дальше →
Всего голосов 63: ↑62 и ↓1+61
Комментарии62

Курс MIT «Безопасность компьютерных систем». Лекция 6: «Возможности», часть 1

Время на прочтение15 мин
Количество просмотров6.5K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Всего голосов 22: ↑22 и ↓0+22
Комментарии0

Некоторые особенности PowerShell при работе с учетными записями пользователей

Время на прочтение6 мин
Количество просмотров23K
Я считал, что неплохо разбираюсь в powershell, но мне никогда не приходилось работать с учетными данными пользователей. Однако сейчас я в поиске работы и на одном из собеседований мне поставили тестовое задание написать скрипт, который должен был:

  1. Проверить наличие и статус (включена/отключена) учетной записи пользователя.
  2. Проверить включена ли учетная запись в группу «Администраторы»
  3. Если учетная запись отсутствует, то создать учетную запись и добавить ее в группу администраторы, проставить флаги «Запретить смену пароля пользователем» и «Срок действия пароля не ограничен»
  4. Если учетная запись существует, но отключена либо не входит в группу «Администраторы», то включить учетную запись и добавить ее в группу «Администраторы», проставить флаги «Запретить смену пароля пользователем» и «Срок действия пароля не ограничен»
  5. Скрипт не должен зависеть от языка операционной системы.

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

Что может Ctrl в Visual Studio

Время на прочтение2 мин
Количество просмотров234K
Одна простая клавиша Ctrl может значительно упростить работу в Visual Studio. Помимо типичных комбинаций, которые нам очень хорошо знакомы, существует также и большое количество других, менее известных, но от этого и более ценных.

Далее список того, что можно делать с клавишей Ctrl.

Читать дальше →
Всего голосов 108: ↑84 и ↓24+60
Комментарии61

Python и стеганография

Время на прочтение3 мин
Количество просмотров29K
Не так давно в моём учебном заведении прошёл пилотный Хакатон для студентов. Тематика заданий была связана с информационной безопасностью, в том числе шифрованием данных.

Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии4

Telegram выпустил официальный MTProto Proxy Server

Время на прочтение3 мин
Количество просмотров139K
image

Наконец-то дождались, после пристального рассматривания и реверс инжениринга протокола MTProto Proxy, Telegram решил выпустить официальный вариант, с поддержкой монетизации promoted каналов, да еще и сразу в Docker образе.
Читать дальше →
Всего голосов 72: ↑66 и ↓6+60
Комментарии87

Docker под Windows для разработки, разбор подводных камней

Время на прочтение5 мин
Количество просмотров239K
imageДанная публикация является разбором особенностей контейнерной виртуализации Docker под системой Windows.

Она не претендует на роль исчерпывающей и по мере необходимости будет обновляться и дополняться.

За практическим руководством с нуля советую обратиться к этой публикации.

Содержание


Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии26

Инструмент для мониторинга околороскомнадзорных пертурбаций

Время на прочтение2 мин
Количество просмотров11K
В связи с всем известными обстоятельствами, сервис мониторинга сайтов ХостТрекер предлагает возможность бесплатного использования наших инструментов для целей информирования общественности, сбора статистики и других интересных вещей. Цель — спасти всех. Ну или хотя бы ползти в том направлении. Что и как можно cделать, а также наши рекомендации для тех, кого это явление уже затронуло или потенциально может затронуть — под катом.


Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии28

Телевидение через Acestream на Raspberry PI. Теперь в docker контейнерах

Время на прочтение4 мин
Количество просмотров77K

На хабре уже неоднократно упоминался AceStream: технология, предоставляющая пользователю доступ к видеопотокам по закрытому P2P протоколу AceStream, т.н. torrent телевидение. AceStream предоставляет доступ к распределенной сети доставки контента, т.е. просматривая телеканал пользователь передает данные другим пользователям, что позволяет кардинально снизить стоимость услуг.


А теперь хорошая новость для обладателей медиаплеера на основе raspberry (OSMC, LibreELEC): нашлась сборка acestream под arm, что позволило установить его прямо на raspberry pi. В этой статье предлагается инструкция по установке acestream, и всего необходимого для просмотра ТВ в докер-контейнерах под raspberry. На момент написания статьи, предлагаемое решение позволяет смотреть бесплатно большое количество телеканалов, впрочем без гарантий: acestream в любой момент может перестать быть бесплатным.


kodi live tv channels list screenshot

Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии31

IPv6 в каждый дом: Cвой собственный IPv6 сервер брокер (6in4)

Время на прочтение3 мин
Количество просмотров38K


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

Что важно — трафик мы будем пускать через свой собственный арендованный сервер, а не через непонятно какого брокера.
Читать дальше →
Всего голосов 25: ↑24 и ↓1+23
Комментарии47

Превращаем шлюз умного дома Xiaomi в колонку

Время на прочтение3 мин
Количество просмотров35K
Привет, хабра гиктаймс-читатель! Сегодня я научу тебя как из бесполезного функционала получить полезный. Получать будем на примере умного дома от небезызвестной компании Xiaomi и её продукта в виде ZigBee-шлюза.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии9

Платёжная система в 50 строк кода, реально?

Время на прочтение10 мин
Количество просмотров20K
В последнее время технологические решения на блокчейне всё больше проникают в нашу повседневную жизнь. Технология новая, поэтому не все понимают, как и где её применять. Я попробовал создать платежную систему на базе смарт-контракта Ethereum и результат меня удивил. Смарт-контракт выполняющий функции полноценной платёжной системы получился всего в 50 строк кода. Всех заинтересовавшихся как он работает прошу под кат.

image
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии9

29% вебсайтов уязвимы для DOS-атаки даже одной машиной (CVE-2018-6389)

Время на прочтение4 мин
Количество просмотров23K


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

В платформе WordPress CMS была обнаружена простая, но очень серьезная уязвимость, связанная с атаками типа «отказ в обслуживании» (DoS) на уровне приложений, которая позволяет любому пользователю приводить в нерабочее состояние большинство веб-сайтов WordPress даже с помощью одной машины. Происходит это без необходимости задействовать огромное количество компьютеров для переполнения полосы пропускания, как это требуют DDoS-атаки, но с достижением того же результата.

Поскольку WordPress Foundation отказали в исправлении проблемы, уязвимость (CVE-2018-6389) остается без патча и затрагивает почти все версии WordPress, выпущенные за последние девять лет, включая последнюю стабильную (WordPress версия 4.9.2).
Всего голосов 29: ↑26 и ↓3+23
Комментарии42

Добываем Wi-Fi соседа стандартными средствами MacOS

Время на прочтение5 мин
Количество просмотров363K
Я всегда был фанатом багов и уязвимостей «на поверхности», всегда завидовал чувакам, которые пишут эксплойты для самых защищённых ОС, а сам умел только скрипткиддить (термин из нулевых). Однако мой пост про уязвимости в системах контроля версий набрал более 1000 лайков на Хабре и остаётся топ1 постом за всю историю Хабра, несмотря на то, что был написан 9(!) лет назад.

И сегодня я хотел бы на пальцах показать и рассказать про такую штуку, как вардрайвинг. А точнее, как стандартными средствами MacOS можно добыть пароли от Wi-Fi соседей. Нелёгкая забросила меня на очередную квартиру. Как-то исторически сложилось, что я ленивый. Пару лет назад я уже писал, что моя лень, новая квартира и провод Beeline (бывшая Corbina) помогли мне найти багу у Билайна и иметь бесплатно интернет в их сети. «Сегодня» происходит «подобное», я на новой квартире, нет даже провода, но есть много сетей у соседей.


Заколебавшись расходовать мобильный трафик, я решил, что «соседям надо помогать», и под «соседями» я имел введу себя…
Читать дальше →
Всего голосов 163: ↑151 и ↓12+139
Комментарии249

Регулярные выражения для самых маленьких

Время на прочтение11 мин
Количество просмотров226K
Привет, Хабр.

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

Некоторые из них для наглядности будут показаны на примере языков программирования PHP или JavaScript, но в целом они работают независимо от ЯП.

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

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

Поехали!


Читать дальше →
Всего голосов 67: ↑64 и ↓3+61
Комментарии55

Как создать блокчейн-проект на Exonum: краткое руководство

Время на прочтение14 мин
Количество просмотров22K
Exonum — это фреймворк с открытым исходным кодом для создания приложений на основе блокчейна. Он ориентирован на работу с закрытыми блокчейнами и применим в любых сферах: FinTech, GovTech и LegalTech.

Сегодня мы проведем небольшой обзор решения, а также в рамках образовательного формата разберемся с тем, как построить простой блокчейн-based проект на Exonum. Весь код, приведенный ниже, вы найдете в репозитории на GitHub.

Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии15

Альманах пакетных менеджеров Linux

Время на прочтение4 мин
Количество просмотров51K

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


Управление пакетами

Далее следует джентльменский набор необходимых для повседневной рутины команд основных Linux дистрибутивов: установить, обновить и удалить пакет, накатить обновления, проверить зависимости, установить принадлежность файла пакету и пр.

Читать дальше →
Всего голосов 24: ↑18 и ↓6+12
Комментарии44

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность