Рубрика «Песочница» - 203

Какое-то время назад мой рабочий ноутбук отказался включаться. Просто не реагировал ни на какие попытки, включая отключение батареи. У технической поддержки ушло несколько месяцев на то, чтобы замененить практически все компоненты от матрицы до материнской платы и выяснить, что проблема была в перетертом шлейфе матрицы. Шлейф заменили, машина ожила и вернулась ко мне. Но в первый же день выяснилась интересная особенность — видимо, в пылу борьбы со шлейфом ремонтеры поломали или отключили датчик закрытия крышки. Теперь ноутбук не засыпает при закрытии крышки. Какое-то время я пытался найти способ устранить это самостоятельно, но в этот раз действенных советов Гугл и форумы комании Lenovo, к сожалению, не дали. Второй раз отдавать машину в ремонт просто страшно.

Ок, я не могу решить проблему механически, но может быть можно придумать, какой-то простой workaround. Например, я привык, уходя блокировать компьютер нажатием Win+L, почему бы не сделать shortcut для перевод машины в спящий режим? Выяснилось, что отправить машину в sleep несложно, но вот привязать это к нажатию на Ctrl+Q, например, уже не так тривиально. Можно найти софт, который будет управлять для вас этими функциями. Ну или написать свой. И так вышло, что как раз сегодня есть пара часов времени и стойкое желание попрактиковаться в программировании.

Так как программист я посредственный, то писать решил на C# в Visual Studio Community Edition. Чтобы не усложнять создал пустой проект в формате Windows Form Application с одной формой, в которую добавил контрол notifyIcon. Форму сделал невидимой сразу после старта, а в обработчк MouseDoubleClick добавил код включения и выключения видимости, чтобы форму можно было штатным образом закрыть. Эта мысль пришла не сразу, а после того, как стало понятно, что приложение должно уметь отменить регистрацию глобальных shortcut-ов после своей терминации.Читать полностью »

Эта статья предназначена для тех, кто уже шарит разбирается и имеет базовое представление о том, что же такое DNS, как он работает и понимает значение слов «резолвит», запрос, ответ и т.д. Итак, начнем!

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

Речь в статье пойдет о составных операторах begin-end, форматировании кода и синтаксисе языка Pascal. А начнем мы с цитаты из книги Стива Макконнелла «Совершенный код».

«Большинство споров по поводу форматирования возникает из-за несовершенства большинства популярных языков программирования. Хорошо спроектированный
язык имеет явную структуру блоков, которая приводит к естественному стилю отступов.»

Читать полностью »

Вступление

Уважаемые Хабрахабровцы, хочу поделиться с Вами своей разработкой для OS Android.
Данная статья ориентирована, во-первых, на новичков в андроид-разработке, во-вторых, на людей, которым интересна идея о безопасности общения по сети, в-третьих, просто на тех кому интересно.

Суть

Моя цель написать мессенджер, который позволил бы, в коей мере, уйти от всемирной слежки. Уйти? — спросите Вы. Да именно так я представляю себе, мое творение. Потому как общение клиента с сервером реализуется на сокетах, с применением ГОСТ-товского шифрования «МАГМА» (блочный симметричный).

Программный комплекс (назовем его комплексом, ибо он состоит из двух модулей, написанных собственными руками) имеет в своем составе следующие компоненты: клиентская часть, написанная в AndroidStudio и серверная часть, написанная в IntelliJ IDEA. Клиентов мы распространяем доступными нам способами: передачей APK по BlueTooth, WatsApp, PlayMarket, да и вообще как душа пожелает и как удобно Вашей аудитории. Сервер запускаем на своем ПК, можно конечно и арендовать какой-нибудь сторонний сервер, все равно данные там хранить мы не будем. Клиенты регистрируются, авторизуются и готовы для массовых переписок. (в перспективе реализую и индивидуальное общение ТЕТ-А-ТЕТ, а также шифрование).

Недоработки

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

Хватит лирики, перейдем к кодингу

Комментарии в коде писал для себя, поэтому думаю все будет понятно и по ним.

Начнем с сервера:

1. класс описания самого «ядра» сервера
Читать полностью »

Добрый день,

Написанием данной статьи меня побудила банальная задача: отключить графическую оболочку при старте системы. Казалось бы, поменять одну цифру в /etc/inittab. Но как выяснилось, все намного сложнее. Итак, разберем по полочкам, что такое inittab и systemd, для чего они нужны и как управлять автозагрузкой приложений в linux. Как человек, который самостоятельно пытается найти ответы, пришлось прочитать не одну статью, информации на эту тему много, но понимание приходит не сразу. На русскоязычных форумах как правило развернутого ответа нет. Скажу сразу, я не системный администратор и статья больше рассчитана на людей, кто относительно недавно познакомился с linux. Кому интересна данная тема, добро пожаловать.

Это моя первая статья, если есть замечания прошу в комментарии.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js