Не то, чтобы мне часто приходилось что-то там дизассемблировать. Но время от времени возникает желание посмотреть, в какой ассемблерный код превратился твой код на C. Для решения этой задачи зачастую хватает objdump, но только если ты заранее знаешь, где и что именно ищешь. Для более сложных случаев возникает потребность в чем-то вроде IDA Pro. Вот только цены за IDA Pro начинаются от 589$. К счастью, есть не менее функциональная альтернатива за 99$ в лице дизассемблера Hopper.
В уже довольно не новом посте, посвященном Raspberry Pi, это устройство рассматривалось исключительно, как маленький и очень дешевый компьютер. Бесспорно, Raspberry Pi им и является. Но, помимо этого, у Raspberry Pi есть еще и 26 пинов GPIO (General Purpose Input Output), что очень кстати в свете моего недавнего увлечения электроникой. Почему? Давайте разберемся.
Сегодня я расскажу, как настраивал десктоп-окружение в Arch Linux на своем ноутбуке Fujitsu Lifebook E733. Вышло очень похоже на окружение, описанное в рамках более ранней заметки Использование FreeBSD на десктопе, версия 2.0. Поэтому на сей раз я постараюсь сосредоточится именно на специфике Arch Linux, опуская прочие, предположительно уже знакомые читателям, детали. Отмечу, что десктоп-окружение с Arch Linux можно получить и намного проще, установив Manjaro Linux.
Напомню, что у меня нет особого опыта веб-разработки на Python. Но поскольку рабочая теория на данный момент заключается в том, что это самый правильный скриптовый язык, мне бывает очень интересно сесть и поиграться с каким-нибудь Flask. Или, вот как в этот раз — с Jinja. В результате я написал небольшую шпаргалку по основам использования Jinja, чисто для себя. Уверен, вы уже давно владеете этим шаблонизатором в совершенстве, так что вам будет совершенно не интересно :)
В прошлом посте я делился своими скромными успехами в электронике, которые на тот момент ограничивались сборкой электронных схем на макетной плате без какой-либо пайки. Теперь же я буду хвастаться тем, как осилил делать что-то паяльником. Как, пожалуй, и в любом деле, при наличии правильной методички, коей, напомню, в моем случае является книга Чарльза Платта «Электроника для начинающих», дело это оказалось не таким уж и сложным.
Иногда бывает нужно синтегрироваться со Slack, Gitter, или подобного рода веб-чатом. Например, посылать в него сообщение при происшествии определенного события. К сожалению, подобные сервисы имеют сильно разные и иногда не слишком удобные для этих целей API. Зато многие, включая тот же Slack и Gitter, позволяют ходить в них по IRC. Более того, с помощью программы bitlbee по IRC можно ходить еще и в Skype, Jabber, Twitter и многое другое. Грех этим не воспользоваться.
Изучаю электронику по книжке Чарльза Платта Электроника для начинающих (в оригинале «Make: Electronics»). Это потрясающая книга, объясняющая, как делать свои электрические цепи из резисторов, диодов, конденсаторов и вот этого всего по принципу от простого к сложному. Что намного важнее, на Амперке, линк на который я привел выше, продаются готовые наборы к книге со всем необходимым. На момент написания этих строк я провел за книгой менее двух дней, и вот чего мне уже удалось собрать.
Данная статья представляет собой краткое руководство по использованию GnuPG (он же GPG). В ней вы найдете основные команды, примеры использования, а также инструкции по прикручиванию GPG к почтовым клиентам. Далее предполагается, что вы знакомы с принципом работы GPG и объяснять, например, что такое ассиметричная криптография, открытый и закрытый ключ, цифровая подпись и так далее, не требуется. За несколько десятилетий существования GPG никто особо не преуспел в его взломе, что как бы намекает нам, что это довольно надежное решение как для обмена зашифрованными сообщениями, так и просто шифрования файлов.
При разработке нового проекта в качестве основной СУБД нередко выбираются реляционные базы данных, такие, как PostgreSQL или MySQL. В этом действительно есть смысл. Первое время у проекта мало пользователей, и потому все данные помещаются в один сервер. При этом проект активно развивается. Нельзя заранее сказать, какой функционал в нем станет основным, а какой будет выкинут. Есть много историй о том, как мобильный дейтинг в итоге превращался в криптомессанджер, и подобного рода. РСУБД удобны на ранних этапах, потому что они универсальны. Так, PostgreSQL из коробки имеет встроенный полнотекстовый поиск, умеет эффективно работать с геоданными, а также подходит для хранения очередей и рассылки уведомлений. По мере развития проекта и роста нагрузки часть данных может быть перенесена в специализированные NoSQL решения. Также нагрузку можно распределить, поделив базу на несколько совершенно не связанных между собой баз, а также при помощи потоковой репликации. Но что делать в случае, если все это не помогло? В этом посте я постараюсь ответить на данный вопрос.
Многие ошибочно полагают, что сеть Tor — это такой набор бесплатных (и очень медленных) прокси-серверов в обычный интернет. Такой вариант использования Tor, конечно же, возможен, но куда большая ценность «даркнета», на мой взгляд, заключается в его внутренних .onion ресурсах. Из этой статьи вы узнаете не только об обоих вариантах использования Tor, но и о том, как поднять собственный .onion ресурс, или как установить TCP-соединение через Tor, даже если клиент и сервер находятся за NAT.