Сегодня наконец окончательно ушел с reg.ru Уж очень сильно стали борщить с ценой за продление доменов. Еще год назад хотел, уже код переноса заказал, да остановили скидкой на продление в 50%. А в этом году не остановили. Ну не остановили, так и ушел. Зачем каждый год её вымаливать, если у других регистраторов она сразу на 50% дешевле?
P.S. Пришел я на reg.ru не добровольно, а с 2domains.ru, там цены были адекватные. Но увы, он закрылся и принудительно передал все домены в reg.ru
Маска Конструктора. Захар Зарипов. Краткий сюжет: выживание горстки людей закинутых для колонизации Марса. Оценка 3/5. Начало хорошее, а дальше скучно. Не дочитал.
Цикл Низший. Михайлов Р.А. Краткий сюжет и идея: после экологической катастрофы люди переселились в искусственно созданные убежища под управлением «Системы». Большая часть людей там находится в «замороженном» виде и со стертой памятью. Во время «естественной» убыли населения, «замороженные» размораживаются, и подселяются к текущему населению. Так было последние лет 300, пока не разморозили ОДИ. Оценка 5/5. P.S. Перечитываю этот цикл уже раз третий наверное..
Цикл Инфер. Михайлов Р.А. Продолжение цикла «Низший». ОДИ удалось сбежать. Теперь он «наверху». Оценка 3/5. Дочитал, но уже с трудом. Или приелось или автор таки поисписался на эту тему..
Голова на колесиках. Шенгельц Игорь Александрович. Сюжет: богатенький буратино после того как попал в аварию, в надежде на то что в будущем его смогут вылечить, замораживает себя. Однако после разморозки «всё пошло не так». Будущее..выглядит совсем по другому. Голову приделывают на платформу с колесиками, дают в манипуляторы швабру и веник и вперед — ты теперь уборщик помещений, выживай. Оценка 5/5
Цикл «Идеальный мир социопата». Очередное пришествие системы и зомби. Путешествие между мирами. В целом интересно. Оценка 4/5
Цикл «Звезды,пламя и сталь». Сюжет: в далеком будущем в мире осталось всё так-же: войны, и дети в детдомах. Один из воспитанников этого детдома смог заполучить себе нейросеть Джоре. В обем мир из «вселенной EVE». В целом читабельно 4/5
Детское:
Увы, детского читаю всё меньше и меньше. Старшему уже ничего не нужно на ночь читать давно. Младшая тоже уже без энтузизазма воспринимает чтение. Жаль, очень жаль..
Всё о медвежонке Паддингтоне: оценка 3/5, как по мне скучновато. Не дочитали
Заячьи Лапки. К. Паустовский. Оценка 3/5. Слог уже подустарел, ребенку не очень многое понятно. Приходится объяснять
Фома — белый медвежонок. Вера Чаплина. Оценка 3/5.
Задача: научится принимать пакеты по протоколу Zigbee на устройстве Raspberry PI 3. Сама по себе, без внешних дополнительных устройств, Raspberry этого не умеет. Нужен модем, который может принимать сигналы на этой частоте. Для этого было куплено на Aliexpress устройство Zigbee CC2531. Покупателю оно приходит пустое, без прошивки, поэтому перед работой с ним, его необходимо прошить. Есть несколько вариантов, самый простой сделать это при помощи самой же RaspberryPI. Одно Но! (и даже их несколько):
нужно делать самому подключение проводками
на модеме ножки очень тонкие, и стандартные проводки от Arduino например не подойдут. Кто-то городил огород при помощи малярного скотча, а кто-то отгибал ножки и припаивался к ним на прямую.
Общая схема подключения для прошивки следующая:
После того как наколхозите этот переходник, можно начинать прошивку. Но сначала убедимся, что модем вообще виден в системе, выполнив команду lsusb. Должно выйти что-то вроде:
Если всё ок, двигаемся к следующему шагу: скачиваем утилиту для прошивки:
git clone https://github.com/jmichault/flash_cc2531.git
cd flash_cc2531
./cc_chipid
И скорее всего получим фигу вида:
root@raspberrypi:/home/donpadlo/flash_cc2531# ./cc_chipid
bash: ./cc_chipid: cannot execute: required file not found
Я подозреваю, что этой утилите не хватает библиотеки wiringPi. Установить её можно так:
git clone https://github.com/WiringPi/WiringPi.git
cd WiringPi
./build
И далее снова попробовать выполнить :
./cc_chipid
И я снова получил туже самую ошибку. Ну чтож..попробуем собрать банарник из исходных годов сами:
cd flash_cc2531
make
После чего, команда уже выполнится корректно:
./cc_read
ID = b534
Т.е. устройство прошивальщик теперь видит. Скачаем последнюю версию прошивки (можно прям по этой ссылке, т.к. версии более не разрабатываются для этого модема):
По мотивам статьи. Постить фоточку нельзя, могут привлечь. Потому только словами 🙂 Отвратительна ситуация, что в общем то не бедная госпожа Долина, просто так вот отжала обратно проданную квартиру (пусть и проданную под воздействием мошенников), и не хочет возвращать обратно деньги добросовестной покупательнице. Редко пишу в бложике на темы отличные от ИТ, но тут пригорело..
По мотивам время от времени попадающихся мануалов «как писать чистый код». Ну не об этом все авторы думают в большинстве своём. Не поддерживали они легаси 20-ти летней давности, не разбирали код который написал условный Вася, который уже 15 лет как покинул эту компанию. Код в первую очередь должен быть понятным. А читаемым? Да пофиг. Любой код должен разобрать понять и исправить любой выпускник ПТУ. Вот к чему нужно стремиться. А как этого достичь? Да достаточно просто:
Каждая процедура-функция должна быть прокомментирована «зачем она и что делает». Что принимает на вход, и то выдает на выходе. Длинных функций следует избегать.
Переменные, имена функций и процедур должны говорить сами за себя
Не используйте «сахар» в коде (легализованные языком сокращения кода). Пусть будет больше конструкций, зато человек не погруженный в язык, и не знающий его особенности быстро его поймёт.
Если нет борьбы за производительность, то лучше написать медленный но понятный код, используя простые алгоритмы а не сложные.
Используйте систему хранения версий на подобии GIT. Так можно будет потом отследить кто чего менял, а если будут прокомментированные коммиты, то и зачем.
Если используете фремворки — то используйте их без фанатизма, чтобы однажды не оказалось что какой то его компонент (а то и сам фремворк) вдруг не стал тыквой. Это для долгосрочных проектов.