2021-11-04

Неизвестная картина Босха

— Ты всего лишь машина. Только имитация жизни. Робот сочинит симфонию? Робот превратит кусок холста в шедевр искусства?
— А Вы?
А. Азимов "Я, Робот"

Настает время, когда компьютер начинает заменять человека в таких областях, которые до сих пор оставались прерогативой человека. 

Группа разработчиков натренировала нейронную сеть генерировать картинки из словесного описания. Выглядит крипово. На сайте Russian DALL-E можно испытать работу их нейронной сети на собственных фразах. Лучше всего, ожидаемо получаются котики и пейзажи.

Чем страннее фраза, тем страннее получается изображение. Вот, например, оказывается, как выглядит "Боевая Микроша":

UPD: Неизвестная картина Николая Копейкина, тоже прекрасна.

 

Оставить комментарий

 
  2021-10-30

Починка TWS Вluetooth наушников

TWS Bluetooth наушники-затычки ребёнка стали плохо примагничиваться к зарядной станции, из-за чего стали плохо заряжаться. Взамен были куплены новые наушники, но стало интересно, что случилось со старыми?

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

Тут пришла в голову мысль проверить расположение магнитных полюсов - вдруг один из магнитов был вклеен обратной стороной, и вместо того чтобы притягивать - отталкивал наушник? Нашел маленький магнитик от других сломанных наушников и стал примагничивать его к кейсу и к затычкам. У кейса все оказалось на месте - оба слота прекрасно примагничивали тестовый магнитик, причем одной и той-же стороной. А вот у затычек обнаружилась аномалия - будучи примагниченным к одному из наушников, магнитик отказывался останавливаться в одном месте - вместо этого он норовил съехать в сторону.

Разобрать сами наушники оказалось проще простого - нужно поддеть ногтем шов по периметру - они сразу расщелкнулись и разделились на две чести. Разбор наушника сразу выявил, что магнитик отклеился от своего законного места, куда должен быть приклеен и примагнитился к магниту наушника.

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

Приклеил магнит на место цианокрилатом и собрал наушник обратно - теперь он отлично примагничивается и заряжается.

Теперь ребёнок просит наушники назад - новые оказались хуже старых!

 

 

Оставить комментарий

 
  2021-10-23

Syncthing - вам не нужны облака!

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

Раньше я пользовался Dropbox, но Dropbox на бесплатном тарифе, в настоящее время синхронизирует всего два гигабайта данных, если хотите залить больше файлов - пожалуйста заплатите. При этом еще неизвестно кто к ним имеет доступ, так как сервис проприетарный и все данные дублируются на сервере.

Пользоваться Syncthing можно совершенно бесплатно, к тому же это полностью opensource, что конечно, не гарантирует полной приватности, но, скажем так, несколько ее улучшает. Синхронизировать можно неограниченные объемы между неограниченным количеством устройств. Ограничения накладываются лишь пропускной способностью вашего канала Интернет и объемом памяти на на устройстве - компьютере, телефоне, планшете.

Синхронизация осуществляется по технологии peer-to-peer и не требует централизованного хранения данных. 

Syncthing имеет клиенты по Mac, Windows, Linux, Android, что позволяет обмениваться файлами между всем своими устройствами по сети, так же просто как если бы они были скопированы физически. 

Респект авторам программы за такой замечательный продукт!

 

Оставить комментарий

 
  2021-10-08

Что оставит ветер - аудиокнига

Андрей Кравец озвучил книгу Николая Беляева "Что оставит ветер". 

Мне книги в исполнении Андрея особенно нравятся - разложенные по голосам, мастерски озвученные, они приобретают что-то дополнительно к тому, что хотел в них вложить автор.

 

Оставить комментарий

 
  2021-10-04

Не время умирать

Сходили на последнюю Бондиану. Что я могу сказать - прекрасное кино в духе современного времени!

И вот вам мои любимые спойлеры:

Агента 007 - играет черная женщина-лесбиянка (и это не шутка). Бонд топит за семейные ценности (где Бонд, а где семейные ценности?). В качестве агента Кью, (это тот кто обеспечивает Бонда гаджетами) теперь Шурик из Операции Ы, за этот подарок - от всей души спасибо от всех российских зрителей!

Бонд спасает мир от злобных русских, которые хотят убить всех людей запустив в водопровод нанороботов настроенных на ДНК всех людей. А в конце фильма Бонда убивают. Хеппи энд!

Прекрасное кино!

 

Оставить комментарий

 
  2021-10-02

Gitlab Runner на Raspberry Pi Zero W

Gitlab Runner - это программа, которая будет после каждого коммита в репозиторий производить определенные действия - запускать тесты, компилировать релиз, деплоить приложение и т.д. Gitlab Runner написан на Go, поэтому может запускаться на самом простом железе, например, на Raspberry Pi Zero W.

Бесплатный аккаунт Gitlab уже дает возможность запускать предустановленные раннеры беcплатно, но их использование ограниечено по времени и если вам нужно больше CI минут можно использовать свой собственный Gitlab Runner. В этом случае, вы получаете неограниченные возможности использования CI/CD.

В этой статье устновим Gitlab Runner на систему на Raspberry Pi Zero W, инсталлированную в предыдущем посте, настроим и зарегистрируем для использования с проектом на Gitlab.

Зарегистрируем gitlab репозиторий:


curl -L "https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh" | sudo bash

Устанавливаем сам runner:

sudo apt-get install gitlab-runner

Создаем тестовый проект на gitlab.com. Заходим в насторойки в секцию CI/CD и копируем токен:

Регистрируем runner для использования в проекте:

sudo gitlab-runner register --url https://gitlab.com/ --registration-token iztXysgDwDvH8z2AV4sZ

Самый простой тип раннера - shell - его и выберем на последнем шаге.

Убедимся, что раннер работает:

sudo gitlab-runner verify

GitLab Runner готов к использованию. Добавляем в проект файл .gitlab.yml со следующим содержимым:

build:
  script:
    - echo "Building"

Если все настроено правильно после коммита, наш pipeline будет исполнен и вы увидите следующее:

Таким нехитрым способом можно автоматизировать большинство рутинных операций переложив на компьютер операции по запуску тестов, деплою приложений и т.д. и т.п.

Конечно, вышеприведенный пример раннера пока не делает ничего полезного - только выводит слово "Building", но это легко исправить, добавив команды типа "npm test", "composer test".

Больше информации по установке и использованию руннеров можно узнать из официальной документации gitlab.

 

Оставить комментарий

 
  2021-10-02

Как установить Raspbian на Raspberry Pi Zero W

Время от времени бывает нужно по-быстрому залить Raspbian на Raspberry PI Zero W, так чтобы сразу можно было начать работать с системой.

Вот краткая инструкция как это сделать:

На локальном компьтере: (замените /dev/sdX, username, wlanname, wlanpassword, 192.168.0.155 на ваши)


# download image
wget https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2021-05-28/2021-05-07-raspios-buster-armhf-lite.zip

# extract
unzup 2021-05-07-raspios-buster-armhf-lite.zip

# copy to device
sudo dd if=2021-05-07-raspios-buster-armhf-lite.img of=/dev/sdX bs=2M conv=fsync

# activate ssh
touch /media/username/boot/ssh

# update the wifi access credentials
cat > /media/username/rootfs/etc/wpa_supplicant/wpa_supplicant.conf << EOF
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE
network={
        ssid="wlanname"
        psk="wlanpassword"
        key_mgmt=WPA-PSK
}
EOF

# setup static IP address
cat >> /media/username/rootfs/etc/dhcpcd.conf << EOF
interface wlan0
static ip_address=192.168.0.155/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8
EOF

# prevent warning locale not found
cat >> /media/username/rootfs/etc/environment << EOF
LC_ALL=C
LANG=en
LANGUAGE=en
EOF

Вставляем карточку в устройство, и подаем питание.

Если все прошло успешно то в сети появится новое устройство.

Заходим на устройстов по ssh: pi@192.168.0.155, пароль по умолчанию: "raspberry".

    
# expand filesystem on SD card
sudo raspi-config --expand-rootfs

# reboot
sudo reboot now

# after reboot login again and
# upgrade the system
sudo apt-get update
sudo apt-get upgrade -y        
    

После вышеперечисленных шагов у вас будет рабочая система с Linux с которой можно работать.

Важно использовать правильный кардридер и правильную SD карту. Я потратил немало времени прежде чем обнаружил, что встроенный в ноутбук кардридер, почему то, хорошо читает карточки но совершенно не умеет записывать - то ли не хватает напряжения, то ли проблема в драйверах. После перехода на внешний кардридер, все встало на свои места. 

Другой проблемой было то, что все SD карты, купленные в России, мне пришлось выбросить - они работают крайне ненадежно. Вроде пишутся штатно, но система на них не хочет работать - либо вообще не грузится, либо происходит ошибка в процессе обновления системы, по какой-то загадочной причине, некоторые файлы записанные в процессе обновления впоследствие оказываются повреждены и обновление завершается с ошибкой. Карты SamDisk, купленные на немецом Amazon работают вполне стабильно.

 

Оставить комментарий

 
  2021-09-30

Ты мое дыхание

Варвара и Юрий Визборы - очень милое исполнение. Может на детях гениев природа и отдыхает, но на внуках - уже работает с полной отдачей!

Upd. Оказывается, у нее куча треков на Дизере. Значит, и на более популярных площадках еще больше есть.

 

Оставить комментарий

 
  2021-09-28

День рожденья блога

Ровно четырнадцать лет назад я добавил сюда первую запись.

Однако, как быстро летит время. Нужно бы подарить сайту какой нибудь новый функционал на день рождения....

 

Оставить комментарий

 
  2021-09-21

Оккупационный режим фруктов против народа овощей

Речь Глуховского на вручении ему литературной премии, уверен, скоро разойдется на цитаты:

 

Оставить комментарий