Как стать автором
Обновить
117
0
Джулай Ігор @IGHOR

C++ Qt Developer, Reverse Engineer

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

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

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

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

Wake up, Neo …
Всего голосов 32: ↑31 и ↓1+30
Комментарии9

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

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

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

Играть в тетрис бесплатно
Всего голосов 94: ↑94 и ↓0+94
Комментарии41

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

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

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

Читать далее
Всего голосов 260: ↑202 и ↓58+144
Комментарии440

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

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

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

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

Читать далее
Всего голосов 260: ↑252 и ↓8+244
Комментарии207

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

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

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

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

Читать далее
Всего голосов 202: ↑198 и ↓4+194
Комментарии72

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

Время на прочтение3 мин
Количество просмотров74K
(под рифму из хоровода)

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



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

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

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

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




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

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

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

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


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

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

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

Raspberry Pi 3 model B


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

Читать дальше →
Всего голосов 51: ↑49 и ↓2+47
Комментарии78

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

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

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



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

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

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

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

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

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

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

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

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

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

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

image
Читать дальше →
Всего голосов 222: ↑218 и ↓4+214
Комментарии187

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

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

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

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

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



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

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

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

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


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

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

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

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

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

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


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

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

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

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

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


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

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

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

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

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

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


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

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

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

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

Время на прочтение42 мин
Количество просмотров90K
Приветствую, товарищи!

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

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

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


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

Информация

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

Специализация

Fullstack Developer, Software Architect
Lead