Pull to refresh
117
0
Джулай Ігор @IGHOR

C++ Qt Developer, Reverse Engineer

Send message

git-ssb — децентрализованный хостинг git-репозиториев

Reading time 6 min
Views 12K

SSB (Secure Scuttlebutt) - это децентрализованная социальная сеть и протокол, на основе которого она работает. git-ssb заворачивает обычные git-репозитории в этот протокол. SSB хочет заменить собой Facebook, а git-ssb - GitHub. Под катом - краткое руководство по git-ssb. Актуально для тех, кому дискомфортна сама идея использования централизованных сервисов в качестве посредника. Своеобразная красная таблетка с полагающимися в этом случае неожиданными последствиями.

Wake up, Neo …
Total votes 32: ↑31 and ↓1 +30
Comments 9

Пишем тетрис в bat-файле

Reading time 5 min
Views 23K

В комментарии к моей предыдущей статье, «Какие задачи не решаются bat-файлами?», предположили, что на bat-файлах не получится написать Doom. Насчет Дума я пока не уверен, а вот тетрис у меня получился.

Играть в тетрис бесплатно
Total votes 94: ↑94 and ↓0 +94
Comments 41

Как я болел и восстанавливался, COVID-19

Reading time 14 min
Views 60K

Я senior software developer. Разрабатываю на java уже лет 9. Никогда не писал и не рассказывал массам людей ничего. Вот пришло время, так как мой опыт колоссальный и уникальный, я не знаю подобных ситуаций, когда в таких условиях люди выживали. Конечно, уверен, есть случаи и хуже, когда человеческий запал и желание жить брал верх, но я таких не знаю, поэтому решил рассказать о себе. Ниже я рассказываю свою историю.

Читать далее
Total votes 260: ↑202 and ↓58 +144
Comments 440

Лучший язык программирования

Reading time 6 min
Views 108K

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

Можно ли на него ответить?

Читать далее
Total votes 260: ↑252 and ↓8 +244
Comments 207

Я нашел 18K+ игр в NVIDIA GeForce NOW

Reading time 4 min
Views 91K

Я, как и многие пользователи NVIDIA GeForce NOW, жду пока там добавят те игры, в которые действительно хотелось бы поиграть. Но бывало и наоборот, игры которые уже были добавлены, позже внезапно удаляли из GFN сервиса. В моем случае я хотел там пройти игры Mafia, и потом их все убрали.

Спустя время, их так и не вернули. И я решил попытаться разблокировать запретные игры NVIDIA GeForce NOW сервиса. Но нашел там то, что никак не ожидал увидеть.

Читать далее
Total votes 202: ↑198 and ↓4 +194
Comments 72

Вооот такоооой красотыыы

Reading time 3 min
Views 74K
(под рифму из хоровода)

Привет, Хабр! Кто-то ещё может помнить меня по обзорам, которые я публиковал тут задолго до Вилсакомов. Перейдя в Хабр, я перестал этим заниматься, так как посчитал это не очень правильным — писать публикации про продукты в обычные хабы, в то время как компаниям для этого требуется заводить блог. Но мало кто знает, что желание писать про интересные девайсы у меня никуда не делось, просто я стал это делать реже (пару раз в год) и в другом месте (у себя в блоге).



И вот один девайс просто не могу не показать. Расскажу про него совсем вкратце, даже не называя имени и не приводя его какие-то скоростные характеристики — девайс меня буквально сразил наповал своим внутренним миром. На правах пятницы решил поделиться с вами.
Total votes 292: ↑286 and ↓6 +280
Comments 134

Серьёзному успеху в квантовых вычислениях помешал подросток

Reading time 5 min
Views 70K

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




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

В наиболее практичном виде проблема рекомендаций связана с тем, как сервисы вроде Amazon и Netflix определяют, какие продукты могут вам понравиться. Специалисты по информатике считали её одним из наилучших примеров задач, решать которые на квантовых компьютерах будет экспоненциально быстрее – что подчёркивало потенциальные возможности этих футуристических машин. И вот теперь Тан опроверг это мнение.
Читать дальше →
Total votes 137: ↑122 and ↓15 +107
Comments 80

Ультрафиолет: эффективная дезинфекция и безопасность

Reading time 17 min
Views 101K
Свойства ультрафиолета зависят от длины волны, а ультрафиолет разных источников отличается спектром. Обсудим, какие источники ультрафиолета и как применять, чтобы максимизировать бактерицидное действие, минимизировав риски нежелательных биологических эффектов.


Рис. 1. На фотографии не дезинфекция излучением UVC, как можно подумать, а тренировка использования защитного костюма с выявлением в лучах UVA люминесцирующих пятен учебных телесных жидкостей. UVA – мягкий ультрафиолет и не оказывает бактерицидного действия. Закрытые глаза – оправданная мера безопасности, так как широкий спектр используемой люминесцентной лампы UVA пересекается с UVB, который опасен для зрения (источник Simon Davis/DFID).
Разбираемся в подробностях и нюансах...
Total votes 35: ↑35 and ↓0 +35
Comments 54

О том, как я переизобретал медиацентр

Reading time 11 min
Views 133K

Raspberry Pi 3 model B


С приобретением нового телевизора возник вопрос, какую приставку для него брать. Возможностей Chromecast уже не хватало и хотелось полноценный медиацентр на Kodi. Телевизор со SmartTV покупать не вариант — Kodi можно установить только на Android (из SmartTV платформ), а к нему я отношусь без особой любви, к тому же он уже внутри телевизора, а не в отдельной коробке, которую можно безбоязненно перепрошивать. Ну а зачем мне полноразмерный Android, со всеми его сервисами и программами в виртуальной машине, без полноценного GNU/Linux окружения и, скорее всего, без обновлений? По той же причине также были отметены многочисленные готовые медиацентры на Android, хотя та же приставка от Xiaomi довольно хороша. Можно было бы подумать насчёт SmartTV на TizenOS, но для него нет Kodi.

Читать дальше →
Total votes 51: ↑49 and ↓2 +47
Comments 78

Как «Матрица» создала пуленепробиваемое наследие

Reading time 23 min
Views 58K

До выхода этого фильма зрители не видели ничего, подобного этому научно-фантастическому творению Вачовски, и не знали, насколько сильное потрясение их ждёт



Фильму «Матрица» в этом году исполнилось 20 лет

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

Всего за несколько лет до этого Мэттис, которому тогда было немногим менее 30, бросил многообещающую юридическую карьеру, и основал компанию по поиску талантов Circle of Confusion, чтобы раскрывать новых авторов и представлять их интересы. Он открыл офис в Нью-Йорке, несмотря на то, что ему постоянно твердили, что больше всего шансов отыскать таланты было в Лос-Анджелесе. И до того, как у него появился этот странный сценарий, Мэттис уже начал сомневаться, не следовало ли ему прислушаться к тем советам. «Я к тому времени продал немножко опционов по $500 каждый, — говорит Мэттис. – Я уже начал задумываться о том, чтобы вернуться в юриспруденцию. А потом я получил письмо от двух этих ребят, с подписью ’Не могли бы вы, пожалуйста, прочесть наше письмо?’»
Читать дальше →
Total votes 117: ↑110 and ↓7 +103
Comments 132

Уроки украинского

Reading time 7 min
Views 114K
Не бросайте чтение, будет не про политику. Язык, как он есть. Краткие заметки для быстрого начала понимания украинского, ну и в конце немного программирования, чтобы уж не совсем оффтоп.

Несколько замечательных особенностей украинского языка.

1. Звательный падеж.

Эта милая сердцу категория была в общем прародителе всех славянских языков, но сейчас осталась рудиментарно. Хотя она и понятна носителю современного русского, возьмите обращение «Друже!». Звательный падеж знаком нам из Библии («Отче наш!», «Врачу, исцелися сам!»), что неудивительно, так как церковнославянский — солунский диалект староболгарского.
Примеры:
Читать дальше →
Total votes 326: ↑285 and ↓41 +244
Comments 1851

Морти, мы в UltraHD! Как посмотреть любой фильм в 4K, дорисовав его через малоизвестную нейросеть

Reading time 3 min
Views 114K
Наверное, вы слышали про технологию Яндекса DeepHD, с помощью которой они как-то раз улучшили качество советских мультфильмов. Увы, в публичном доступе ее еще нет, а у нас, рядовых программистов, вряд ли найдутся силы написать свое решение. Но лично мне, как обладателю Retina-дисплея (2880х1800), недавно очень захотелось посмотреть «Рика и Морти». Какого же было мое разочарование, когда я увидел, как мыльно на этом экране выглядит 1080р, в котором существуют оригиналы этого мультсериала! (это прекрасное качество и обычно его вполне достаточно, но поверьте, ретина так устроена, что анимация с ее четкими линиями в 1080р выглядит мыльновато, словно 480р на FHD-мониторе)

Я твердо решил, что хочу увидеть этот мультсериал в 4К, хотя и совершенно не умею писать нейросети. Однако решение было найдено! Любопытно, что нам даже не придется писать код, понадобится лишь ~100 ГБ места на диске и немного терпения. А результат — четкое изображение в 4К, которые выглядит достойнее, чем любая интерполяция.

image
Читать дальше →
Total votes 222: ↑218 and ↓4 +214
Comments 187

Неопределённое поведение и правда не определено

Reading time 12 min
Views 20K
Термином «неопределённое поведение» в языке C и C++ обозначают ситуацию, в которой буквально «чего только не бывает». Исторически, к неопределённому поведению относили случаи, когда прежние компиляторы для C (и архитектуры на нём) вели себя несовместимым образом, и комитет по разработке стандарта, в своей безграничной мудрости, решил ничего не решать по этому поводу (т.е. не отдавать предпочтение какой-то одной из конкурирующих реализаций). Неопределённым поведением также называли возможные ситуации, в которых стандарт, обычно столь исчерпывающий, не предписывал никакого конкретного поведения. У этого термина есть и третье значение, которое в наше время становится всё более актуальным: неопределённое поведение — это возможности для оптимизации. А разработчики на C и C++ обожают оптимизации; они настойчиво требуют, чтобы компиляторы прикладывали все усилия для ускорения работы кода.

Данная статья была впервые опубликована на сайте Cryptography Services. Перевод публикуется с разрешения автора Томаса Порнина (Thomas Pornin).
Читать дальше →
Total votes 90: ↑87 and ↓3 +84
Comments 60

DEFCON 21. Одних паролей недостаточно, или почему «ломается» шифрование диска и как это можно исправить. Часть 1

Reading time 14 min
Views 18K
Спасибо всем, что пришли, сегодня мы поговорим о полном шифровании жёсткого диска (FDE), которое не так безопасно, как вы думаете. Поднимите руки, кто шифрует таким образом HDD своего компьютера. Поразительно! Ну что же, добро пожаловать на DefCon!



Похоже на то, что 90% из вас используют для шифрования диска программы с открытым исходным кодом, чтобы иметь возможность провести их аудит. Теперь пусть поднимут руки те, кто полностью выключает компьютер, если оставляет его без присмотра. Я думаю, примерно 20% присутствующих. Скажите, а кто вообще оставляет свой компьютер без присмотра на несколько часов, всё равно, включён он или выключен? Считайте, что я задаю эти вопросы, просто убедиться, что вы не зомби и не спите. Я думаю, что практически всем приходилось оставлять свой компьютер хотя бы на несколько минут.

Итак, почему мы шифруем наши компьютеры? Трудно найти того, кто задавался бы этим вопросом, поэтому я думаю, что действительно важно сформулировать мотивацию конкретных поступков в области обеспечения безопасности. Если мы не сделаем этого, то не сможем понять, как же нужно организовать эту работу.
Total votes 20: ↑18 and ↓2 +16
Comments 21

Пульсация экранов телевизоров

Reading time 3 min
Views 132K
У подавляющего большинства современных телевизоров экраны мерцают, причём уровень пульсации составляет 100% (экран полностью гаснет и загорается). Это может приводить к усталости глаз, головным болям и обострению нервных заболеваний.


Читать дальше →
Total votes 144: ↑144 and ↓0 +144
Comments 302

Как айтишнику найти работу в США и ЕС: 9 лучших ресурсов

Reading time 5 min
Views 163K
Мировой рынок IT стремительно развивается. С каждым годом профессия разработчика софта становится все более востребованной — уже в 2017 году в мире насчитывался примерно 21 миллион программистов различных направлений.

К сожалению, русскоговорящий рынок IT находится еще на начальной стадии развития — уже есть крупные и успешные проекты, но рынок еще долго не сможет сравняться с европейским и американским, которые производят до 85% всех IT-продуктов мира.
Читать дальше →
Total votes 53: ↑52 and ↓1 +51
Comments 25

Злоумышленники могут получить полный удаленный доступ к Android-устройству через порт публичной USB-зарядки

Reading time 3 min
Views 33K


С приходом в нашу жизнь USB-устройств и USB-портов одним из главных требований к безопасности стало внимательное отношение к точкам подключения, которые способны проводить передачу данных между девайсами. Собственно, по этой причине в ОС Android с самых ранних версий (с 2.0 так точно) существует опция ручного включения порта устройства в режим передачи информации с объектом подключения, т.е. с портом USB. Без активации этой функции устройство лишь заряжается от USB, игнорируя всякие (очевидные) запросы на обмен информацией от второй стороны.

Но Кевин Батлер и его исследовательская группа в области информационной безопасности Университета Флориды недавно обнаружили крайне элегантный и при этом довольно опасный способ атаки на пользовательские устройства через USB-порт. При этом сам порт выступает для наблюдателя лишь как источник питания и может размещаться в любом публичном или не очень месте, например, на зараженном ПК, в кафе или точке зарядки USB-устройств в аэропорте. Для атаки должно выполняться одно условие кроме доступа к обмену данными с портом зарядки со стороны злоумышленника: выход экрана смартфона из поля зрения хозяина (чтобы он не заметил, что устройство стало «жить своей жизнью»).

При этом пароль блокировки экрана обходится одной короткой командой, что дает атакующему доступ к главному экрану смартфона.
Total votes 51: ↑51 and ↓0 +51
Comments 103

Как отбрасывать 10 миллионов пакетов в секунду

Reading time 9 min
Views 32K
В компании нашу команду по противостоянию DDoS-атакам называют «отбрасыватели пакетов» (the packet droppers — прим. пер). Пока все остальные команды делают клёвые штуки с проходящим через нашу сеть трафиком, мы развлекаемся поиском новых способом избавиться от него.


Фотография: Brian Evans, CC BY-SA 2.0

Умение быстро отбрасывать пакеты очень важно в противостоянии DDoS-атакам.

Отбрасывание пакетов, достигающих наших серверов, может быть выполнено на нескольких уровнях. Каждый способ имеет свои плюсы и минусы. Под катом мы рассмотрим всё, что мы опробовали.
Читать дальше →
Total votes 53: ↑52 and ↓1 +51
Comments 29

Особенности вызова функций в С++

Reading time 33 min
Views 59K

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


  • Регистры и их назначение при вызове функций.
  • Передача и возврат простых типов и структур.
  • Как передача по ссылке и по значению влияют на оптимизации тела функции компилятором.
  • Как используется место при многочисленных вызовах функций.
  • Механизм виртуальных вызовов.
  • Оптимизация хвостовых вызовов и рекурсии.
  • Инициализация структур, массивов и векторов.

Осторожно! Статья содержит большое количество кода на C++ и ассемблере (Intel ASM с комментариями), а также множество таблиц с оценками производительности. Всё написанное актуально для x86-64 System V ABI, который используется во всех современных Unix операционных системах, к примеру, в Linux и macOS.

Читать дальше →
Total votes 51: ↑51 and ↓0 +51
Comments 29

Путеводитель по Швейцарии

Reading time 42 min
Views 90K
Приветствую, товарищи!

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

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

Я решил не делить его на отдельные куски — так информацию искать будет проще. Надеюсь что не сильно нарушу тематику ресурса, пусть НЛО нас рассудит.


Flumserberg. Здесь и далее — обычно мои фотографии, которые мне показались более или менее приличными :)
Читать дальше →
Total votes 170: ↑167 and ↓3 +164
Comments 327

Information

Rating
Does not participate
Location
Ивано-Франковск, Ивано-Франковская обл., Украина
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Software Architect
Lead