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

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

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

Высшее и дополнительное образование в ИТ: результаты исследования «Моего круга»

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


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

Наблюдая за такими тенденциями, мы на «Моем круге» добавили возможность указывать в своем профиле пройденные курсы. И провели исследование: организовали опрос и собрали ответы 3700 пользователей «Моего круга» и «Хабра» про их опыт образования:

  • В первой части исследования мы разбираемся, как наличие высшего и доп.образования влияет на трудоустройство и карьеру, исходя из каких соображений ИТ специалисты получают доп.образование и в каких сферах, что в итоге получают от него на практике, по каким критериям выбирают курсы.
  • Во второй части исследования, которая выйдет чуть позже, мы разберёмся с существующими сегодня на рынке образовательными учреждениями доп.образования, узнаем, какие из них самые известные, а какие самые востребованные, и в итоге построим их рейтинг.
Читать дальше →
Всего голосов 47: ↑47 и ↓0+47
Комментарии8

Пишем простого бота-администратора для Telegram на Python. Тестируем на жене

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров48K

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

После анализа нескольких библиотек для создания телеграм-ботов, я выбрал библиотеку Telebot, которая предоставляет богатый набор инструментов для разработки функционально-насыщенных ботов.

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

Тестировать бота мы будем с помощью моей жены.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии7

Программист с фигой в кармане: в чем причины?

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров72K

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

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

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

Читать далее
Всего голосов 117: ↑99 и ↓18+81
Комментарии295

Bleeding-edge обход блокировок с полной маскировкой: настраиваем сервер и клиент XRay с XTLS-Reality быстро и просто

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров334K

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

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

Кроме того, что этот протокол еще более устойчив к выявлению, приятным фактом будет и то, что настройка сервера XTLS-Reality гораздо проще, чем описанные ранее варианты - после предыдущих статей я получил довольно много комментариев типа "А что так сложно, нужен домен, нужны сертификаты, и куча всего" - теперь все будет гораздо проще.

Читать далее
Всего голосов 37: ↑37 и ↓0+37
Комментарии304

Программы-клиенты для протоколов недетектируемого обхода блокировок сайтов: V2Ray/XRay, Clash, Sing-Box, и другие

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров175K

В предыдущей статье “Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria и все-все-все” я рассказывал про прокси-протоколы. Теперь настало время рассказать про клиенты: консольные, GUI для десктопа и для мобильных платформ. 

Надеюсь, что эта статья вам окажется полезной, потому что, как выяснилось, найти хороший клиент даже для тех же V2Ray/XRay в наше время не так-то просто. Потому что большая часть того, что находится при поиске в интернете “в лоб” и даже в списках типа Awesome V2Ray - или уже неподдерживаемое, или довольно кривое, или не умеющее в актуальные версии и фичи (например, XTLS и uTLS), а самые жемчужины прячутся где-нибудь в глубинах Github’а и сторов.

Читать далее
Всего голосов 58: ↑57 и ↓1+56
Комментарии52

Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria, Cloak и все-все-все

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

Три месяца назад здесь на Хабре была опубликована статья “Интернет-цензура и обход блокировок: не время расслабляться”, в которой простыми примерами показывалось, что практически все популярные у нас для обхода блокировок VPN- и прокси-протоколы, такие как Wireguard, L2TP/IPSec, и даже SoftEther VPN, SSTP и туннель-через-SSH, могут быть довольно легко детектированы цензорами и заблокированы при должном желании. На фоне слухов о том, что Роскомнадзор активно обменивается опытом блокировок с коллегами из Китая и блокировках популярных VPN-сервисов, у многих людей стали возникать вопросы, что же делать и какие технологии использовать для получения надежного нефильтрованного доступа в глобальный интернет.

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

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

Читать далее
Всего голосов 157: ↑155 и ↓2+153
Комментарии136

Linux в режиме реального времени

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


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

При этом разные события имеют различные временные требования. Например, требование к задержке для антиблокировочной тормозной системы может составлять от 3-5 миллисекунд. То есть с момента, когда колесо впервые обнаруживает, что оно скользит, у системы, управляющей антиблокировочными тормозами, есть от 3-5 миллисекунд, чтобы отреагировать и исправить ситуацию.

Возможности ядра в реальном времени существует уже более десяти лет в экосистеме программ с открытым исходным кодом. Столько же времени доступна поддержка Red Hat Enterprise Linux (RHEL) для ядра реального времени. Тем не менее многие системные администраторы неверно истолковывают его основные концепции и фактическое рабочее поведение. В этой статье я опишу некоторые из его основных функций, отличия от стандартного ядра и шаги по установке.
Читать дальше →
Всего голосов 51: ↑51 и ↓0+51
Комментарии81

PEP 3107 (Аннотации в функциях)

Время на прочтение5 мин
Количество просмотров11K
Всем привет. Я решил полностью разобраться в пайтоновских аннотациях и заодно перевести цикл PEP-ов, документирующих эту тему. Мы начнём со стандартов версии 3.X и закончим нововведениями в python 3.8. Сразу говорю, что этот PEP — один из самых базовых и его прочтение пригодится лишь новичкам. Ну что же, поехали:
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии1

telebot быстро и понятно. Телеграмм-бот

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

telebot (pyTelegramBotAPI) хорошая и лёгкая библиотека для создания бота на python для телеграмма.

Читать далее
Всего голосов 6: ↑4 и ↓2+2
Комментарии17

Telegram Bot — ваш новый помощник

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров15K

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

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

На сегодняшний день Telegram ботов насчитывается бесчисленное количество. Создать своего не является проблемой. Разработка может быть, как через специальные сервисы, которые по заданным параметрам создадут вам необходимое технологическое решение для работы, так и с помощью самописного кода, но правда для этого вам нужно знать основы языков программирования таких как Python, Java или C++.

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

Итак, от долгой лирики к делу! Для того чтобы создать своего бота вам необходим аккаунт в Telegram. Далее, в поисковой строке вам нужно найти главного бота @BotFather. Это ваш личный менеджер и главный генерал ваших ботов. В его функционал входят регистрация ботов, их удаление, создание аватарки и название бота. Напишите этому боту команду /start, после этого вы активируете Бота “Отца”.

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

Telegram Django Bot за пару строк

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

На Хабре много статей про разработку Телеграм ботов на Python, в том числе при помощи Django. Однако, большинство из них направлено на первичное ознакомление с API Телеграм.

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

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Комментарии5

Абсолютно бесплатный VPN с бесплатного VPS

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

Думаю про VPN слышали все, и многим приходилось им пользоваться. При этом использование готового VPN, которым руководит какой - то неизвестный человек, не является хорошей идей. Тем более в России на данный момент пытаются блокировать, как сами VPN провайдеры (Windscribe, Proton и другие известные сервисы), так и сами протоколы.

Читать далее
Всего голосов 96: ↑92 и ↓4+88
Комментарии112

Telegram безлимитен, но старые сообщения пропадают. Почему?

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров89K

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

Обо всем этом и не только мы написали в нашей первой статье.

Читать далее
Всего голосов 129: ↑121 и ↓8+113
Комментарии168

Еще раз про IP-адреса, маски подсетей и вообще

Время на прочтение7 мин
Количество просмотров1.5M
Чуточку ликбеза. Навеяно предшествующими копипастами разной чепухи на данную тему. Уж простите, носинг персонал.

IP-адрес (v4) состоит из 32-бит. Любой уважающий себя админ, да и вообще айтишник (про сетевых инженеров молчу) должен уметь, будучи разбуженным среди ночи или находясь в состоянии сильного алкогольного опьянения, правильно отвечать на вопрос «из скольки бит состоит IP-адрес». Желательно вообще-то и про IPv6 тоже: 128 бит.

Обстоятельство первое. Всего теоретически IPv4-адресов может быть:
232 = 210*210*210*22 = 1024*1024*1024*4 ≈ 1000*1000*1000*4 = 4 млрд.
Ниже мы увидим, что довольно много из них «съедается» под всякую фигню.


Записывают IPv4-адрес, думаю, все знают, как. Четыре октета (то же, что байта, но если вы хотите блеснуть, то говорите «октет» — сразу сойдете за своего) в десятичном представлении без начальных нулей, разделенные точками: «192.168.11.10».

В заголовке IP-пакета есть поля source IP и destination IP: адреса источника (кто посылает) и назначения (кому). Как на почтовом конверте. Внутри пакетов у IP-адресов нет никаких масок. Разделителей между октетами тоже нет. Просто 32-бита на адрес назначения и еще 32 на адрес источника.
Читать дальше →
Всего голосов 286: ↑261 и ↓25+236
Комментарии204

Обходим проверку сертификата SSL

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

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

Читать дальше →
Всего голосов 29: ↑20 и ↓9+11
Комментарии23

Памятка пользователям ssh

Время на прочтение13 мин
Количество просмотров1.5M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

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

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →
Всего голосов 360: ↑352 и ↓8+344
Комментарии148

Новый MTProto-прокси сервер от Telegram

Время на прочтение5 мин
Количество просмотров159K
Прокси-сервер является посредником между клиентом и сервером. Для обхода ограничений прокси-сервер должен быть установлен там, где нет ограничений доступа к требуемой информации, при этом не должно быть таковых ограничений и между клиентом и прокси-сервером.

image

Обновлённая поддержка прокси-серверов в клиентах Telegram


  • Новый MTProto-прокси. Работает с родным для Telegram протоколом MTProto
  • Открытый исходный код сервера на GitHub
  • Docker-образ на DockerHub
  • В мобильных клиентах появилась возможность добавлять несколько прокси-серверов каждого типа. Пользователь может выбрать наиболее подходящий
Читать дальше →
Всего голосов 106: ↑98 и ↓8+90
Комментарии261

Встречаем сервис от Cloudflare на адресах 1.1.1.1 и 1.0.0.1, или «полку публичных DNS прибыло!»

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

1.1.1.1


Компания Cloudflare представила публичные ДНС на адресах:


  • 1.1.1.1
  • 1.0.0.1
  • 2606:4700:4700::1111
  • 2606:4700:4700::1001

Утверждается, что используется политика "Privacy first", так что пользователи могут быть спокойны за содержание своих запросов.


Сервис интересен тем, что кроме обычного DNS предоставляет возможность использовать технологий DNS-over-TLS и DNS-over-HTTPS, что здорово помешает провайдерам по пути запросов подслушивать ваши запросы — и собирать статистику, следить, управлять рекламой. Cloudflare утверждает, что дата анонса (1 апреля 2018, или 04/01 в американской нотации) была выбрана не случайно: в какой еще день года представить "четыре единицы"?

подробнее
Всего голосов 39: ↑39 и ↓0+39
Комментарии130

Аппаратные кошельки для Bitcoin

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

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

Под кошельками в криптовалютах понимают одновременно:

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

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

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

Итак, аппаратные кошельки. Начнем с определения. Аппаратные кошельки — это физические устройства, созданные с целью безопасного хранения криптовалюты. Некоторые программные и online-кошельки поддерживают хранение средств на аппаратных кошельках.
Всего голосов 13: ↑12 и ↓1+11
Комментарии10

Текстовые сообщения SIP/SIMPLE в Asterisk

Время на прочтение1 мин
Количество просмотров53K
Во время очередной телефонизации очередного офиса я обратил внимание на то, что в выбранном нами софтфоне MicroSIP имеется некий встроенный «чат», который однако же не работает «из коробки».

image

Для пересылки сообщений эта программа использует метод SIP MESSAGE (RFC 3428), известный также как протокол SIMPLE.

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

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

Информация

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