Сервисы поиска людей по лицам

Одним из первых сервисов по поиску людей в ВКонтакте по их фотографии был FindFace (от NtechLab), но вскоре был закрыт для публичного использования и перешел полностью в коммерческую плоскость.

Что касается других рабочих альтернатив, то можно выделить следующие:

  • https://findclone.ru/ (ранее сервис был известен под названием SearchFace)
  • https://search4faces.com/
  • https://pimeyes.com/

Просмотр экспортированных твитов

Для тех, кто из Твиттера удалился, предварительно сохранив архив данных (как когда-то я), но перечитать историю постов время от времени хочется, то можно использовать Twitter archive browser — кладем данный index.html в папку, где лежат экспортированные данные, открываем, и видим удобную визуализацию.

Проверка SSL-сертификата у домена

Для проверки домена по эмитенту и сроку SSL-сертификата можно использовать следующую конструкцию:

echo | openssl s_client -connect ya.ru:443 -servername ya.ru 2>/dev/null | openssl x509 -noout -subject -issuer -dates

Выдаст:

subject= /C=RU/ST=Moscow/L=Moscow/O=Yandex LLC/CN=*.xn--d1acpjx3f.xn--p1ai
issuer= /C=BE/O=GlobalSign nv-sa/CN=GlobalSign ECC OV SSL CA 2018
notBefore=Aug 19 10:19:21 2022 GMT
notAfter=Feb 16 20:59:59 2023 GMT

Активация JetBrains WebStorm

Компания Jetbrains больше не осуществляет продажу продуктов на территории РФ. Ранее оплаченные, но с истекшим сроком действия лицензии, продолжают работать для тех версий продуктов, которые были актуальны на момент активации лицензии (как это работает, можно прочитать тут).

Например, в прошлом году была куплена лицензия на WebStorm, когда актуальной была версия 2021.2. Соответственно, работать можно будет только с этой версией, все новые будут требовать продления лицензии.

Если все же хочется работать с актуальной версией, то идем сюда (для macOS сделать xattr -cr /Applications/WebStorm.app), либо сюда.

Как в Chrome 107 включить экономию памяти (Memory Saver)

В недавнем релизе браузера Google Chrome 107 были добавлены два новых режима оптимизации работы — экономия памяти (Memory Saver) и экономия энергии (Energy Saver).

Данные режимы пока доступны только на платформах ChromeOS, Windows и macOS и включаются через флаги (chrome://flags) по названию «efficiency mode»:

После выбора Enabled и перезапуска браузера уже непосредственно в настройках браузера (chrome://settings/) появится раздел Performance, в котором можно включить «Memory Saver».

Теперь, если открыть какую-либо вкладку и оставить ее неиспользуемой в течение некоторого времени, функция экономии памяти активируется автоматически (об этом будет сигнализировать иконка в адресной строке). Иконка указывает на то, что режим «Memory Saver» работает и что теперь неактивные вкладки будут продолжать переводиться в спящий режим.

При взаимодействии с неактивной вкладкой иконка изменится на индикатор «Tab active again».

Аналог команд whereis / which в Windows

В Windows 10/11 в качестве аналога команд whereis/which из *unix (выводят полный путь до местоположения исполняемого файла/команды/сценария) можно использовать следующую команду:

gcm <command>

Пример:

> gcm node
Command Type Name Version Source
----------- ---- ------- ------
Application node.exe 18.12.1.0 C:\webos_cli\bin\node.exe

[Docker] Команды по контейнерам

Список всех контейнеров:

sudo docker container ls --size

Размер контейнеров и volums:

sudo docker system df --verbose

Информация об образе:

sudo docker inspect <image name>
sudo docker image history <image name>

Возвращает таблицу со списком идентификаторов, репозиториев и тегов для каждого образа контейнера:

sudo docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

Перезапуск контейнера:

sudo docker restart <container id>

[Android] React Native приложения перестали собираться посе 4 ноября

Вчера начал собирать под Android наше мобильное приложение, написанное на React Native, и пошли ошибки — мол в одном из файлов используемой нами библиотеки react-native-reanimated проблема с импортом класса. Потратил несколько часов, откатывая изменения, очищая локальные кеши и пр. — безрезультатно.

Потом удалил папку /.gradle (занимала почти 16 ГБ) и теперь при сборке уже другая ошибка:

* What went wrong:
Execution failed for task ':app:mergeReleaseNativeLibs'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.MergeNativeLibsTask$MergeNativeLibsTaskWorkAction
> 2 files found with path 'lib/arm64-v8a/libfbjni.so' from inputs:
- [redacted]/.gradle/caches/transforms-3/2952ab139faaa4b08a71276c5fc46221/transformed/jetified-react-native-0.71.0-rc.0-release/jni/arm64-v8a/libfbjni.so
- [redacted]/.gradle/caches/transforms-3/d1c59095249a1169bea435013b70e0a9/transformed/jetified-fbjni-0.3.0/jni/arm64-v8a/libfbjni.so
If you are using jniLibs and CMake IMPORTED targets, see
https://developer.android.com/r/tools/jniLibs-vs-imported-targets

Тут бросается в газа упоминание на еще не вышедшую версию React Native «0.71.0-rc.0». Значит, проблема в том, что при сборке тянется не та версия, которая нужна, что уже влечет за собой лавину других проблем. Идем на https://github.com/facebook/react-native/issues/ и сразу видим ветку обсуждения: https://github.com/facebook/react-native/issues/35204

А тут https://github.com/facebook/react-native/issues/35210 можно найти решение и подробное разъяснение, как такая проблема произошла.

[Linux] Очистка лог-файлов

Логи по умолчанию хранятся в /var/logs. Узнать размер занимаемых данных:

/var/log# du -sh */ | sort -hr

800.1M journal/
6.2M atop/
1.7M nginx/
1.5M exim4/
344K apt/
124K mysql/
96K proftpd/
72K apache2/
8.0K installer/
4.0K unattended-upgrades/
4.0K ntpstats/
4.0K dbconfig-common/

К примеру, у меня директория journal занимает непозволительно много места. Сначала чиним:

urnalctl --vacuum-size=100M
journalctl --vacuum-time=7d

Затем очищаем:

rm -r /var/log/journal/