Отфильтрованный инет – Telegram
Отфильтрованный инет
2.64K subscribers
311 photos
72 videos
6 files
221 links
Айтишечка и около

Личка: @mikhailsdv
Проекты: articles.mishasaidov.com/projects
Download Telegram
Затестил Deno [Deploy] и Deta.sh

После серии постов в @Loskirs о serverless захотелось тоже попробовать некоторые любопытные модные молодежные сервисы. У меня в разработке был бот, который работает с изображениям (о нем в посте ниже) и мне показалось хорошей идеей развернуть его в одном из этих сервисов.

Начал с Deno (Dn). Если не вдаваться в подробности, это почти браузерный js, который к тому же берет на себя некоторую возню с зависимостями. Больше всего меня удивила простота деплоя. Буквально достаточно подвязать github-репозиторий и Dn будет деплоить при каждом пуше. Это не что-то новое, но обычно подобная настройка требует всяких танцев с CI-бубном.

Но... запустить своего бота на Dn мне так и не удалось 😢 Во-первых, ни один из известных мне графических движков так и не заработал в проде. Во-вторых, я бы не уложился по времени рендера. Боту нужно ≈700мс, чтобы сгенерировать пикчу и это без учета прочих запросов. Вряд ли Dn ждал бы меня своими лимитами на ответ.

Однако, у меня есть несколько PHP-ботов (прости господи). Вот их я обязательно перепишу под Dn.

Пробуем запуститься на Deta (Dt). По опыту использования это что-то типа смеси nodejs и github. Вы деплоите напрямую в Dt, а там уже полноценная (нет) нода запускает ваш код. Довольно простой сервис с базой данных на борту, но малость забагованный и еще не production-ready. Возможно буду юзать для проектов, которые не укладываются в ограничения Dn.

Бота запустить на нем тоже не удалось. Причины +- те же. Поэтому бот временно крутится на моем старом ноуте 😁 Теперь о нем.
👍3🔥2🤔1
UPD 2025: проект закрыт, бот удален


🔥 Встречайте — @EmojiLettersBot.

Бот конвертирует буквы в эмодзи-стилизованные стикеры. Вообще, он может проделать это с любым символом, попробуйте.

Самое главное — работает в инлайн-режиме. Просто введите в любом чате @EmojiLettersBot + любую букву после пробела и бот на ходу сгенерирует вам стикер.

Код открыт. Есть версия под skia- и node-canvas. Лежат в разных ветках.

Загляни в комменты 😏
🔥4😁1
Переписал @BiographerBot с PHP на JS и захостил на Deta Micros.

Бот предназначен для трансформации текста. Умеет менять шрифт, добавлять невидимые переносы для Инсты, переворачивать текст и прочую дичь. Бот не требователен к ресурсам и работает в пределах одной таблицы. Идеальный кандидат для развертывания на Deta.

Несмотря на всё еще большую популярность php, писать на нем лично мне как-то очень больно. Годовой прогресс — мой последний php-проект. У Дэты есть подходящий для него cron инструмент. Если с Дэтой ближайшее время все будет стабильно, то перенесу его тоже. Хочется, если я вдруг случайно умру, чтобы Годовой прогресс продолжал стабильно работать еще много лет, кек 🤭

База тоже переехала с MySQL на Deta Base. Это built-in база, идеальная для микросервисов. Умеет insert, update, delete, умеет в фильтры, есть GUI. Спокойно покроет потребности 90% проектов. Тут лайк.

Код открыт. Бесполезная хуйня, но вдруг кому пригодится @BiographerBot.
👍5
✉️ Mailto-ссылки: sounds good, doesn't work

Любой разработчик создавая сайт обязательно обернет все имейлы в mailto-ссылки. Нажав на такую ссылку по задумке вы сможете сразу перейти к написанию письма на данный адрес, но если вы хоть раз нажимали на такую ссылку, то наверняка затем произошло совем не то, что вы хотели (а вообще, надеюсь, что вам в жизни не приходится писать ебанные письма).

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

🤔 А что можно сделать с mailto-ссылками?

Если нам нужно открыть почтовый ящик на десктопе, то мы просто открываем браузер, пишем gmail.com, или где у вас там почта, и делаем все, что нам нужно через веб-интерфейс. Так вот, браузерам не хватает специального API, который бы позволил почтовым сайтам спрашивать пользователя «Сделать этот сайт почтовым клиентом по умолчанию?». И если ответ положительный, то в дальнейшем все mailto-ссылки должны открывать именно этот сайт, а дальше уже либо через get-параметр, либо посредством того же API сообщать сайту имейл, на который нужно отправить письмо.

🤷‍♂️ Что можно сделать сейчас?

Если на вашем сайте есть mailto-ссылка, то сделайте рядом с ней кнопку для копирования в буфер. Интернет станет чуточку лучшее.
👍8👎4🐳1
Forwarded from Deptyped
Такой апи уже лет 10 есть, его добавили вместе с HTML5. Только он не очень поддерживается. В chromium-based браузерах работает, в safari поддержки до сих пор нету
https://caniuse.com/registerprotocolhandler
👍5🤯1
Ценность длинных отпусков

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

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

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

Именно поэтому длинные отпуски это збс (кто бы возражал). После того как дела первой и второй необходимости сделаны наступает мой любимый этап — «диджитал ОКР», назовем так. Та самая точка безделья, когда я начинаю наводить тотальный порядок, который поможет мне не потеряться в собственном мусоре следующие месяцы работы. Я начинаю разгребать временные файлы на рабочем столе и в папке «Загрузки», удаляю ненужные заметки и письма в телефоне, проставляю забытые галочки в туду-листе, читаю статьи из папки «прочитать позже», удаляю старые контакты, раскидываю песни по плейлистам, фикшу минорные баги в пэт-проектах. В общем, делаю все те мелочи, о которых даже задуматься вне отпуска не получается.

Этот порядок вокруг создает приятную иллюзию, что я навёл порядок в своей жизни, а сама монотонность процесса даже носит какой-то терапевтический эффект — в моменте можно уйти разбираться в себя и не вернуться. Не знаю, насколько это действительно эффективно, но мне кажется, даже порядок на рабочем столе ноута уже помогает работать эффективнее change my mind.

Не удивляйтесь если я однажды напишу пост о том, как я глажу постельные покрывала потому что так на них лучше спится)
👍182🔥1
Forwarded from Локалхост (Никита Куликов) (Nikita Kulikov)
У браузеров есть технология для P2P (peer to peer) соединения между двумя клиентами - WebRTC.
Это позволяет чатиться, обмениваться данными и прочим друг с другом без использования сервера.

Почти без использования сервера. Дело в том что для первоначальной установки соединения все-таки требуется сервер, так как требуется “пробить” NAT (грубо говоря, к вашему компьютеру нельзя достучаться из сети просто так).

Так вот - мой коллега, фронтэндер, сделал P2P терминал для Serial порта. Это значит что вы можете открыть свой браузер, подключить устройство к usb и перекинуть этот доступ другому человеку, просто кинув ссылку. И все это работает без своего сервера.

Магия тут заключается в том что в качестве сервера используются announcement сервера Torrent-трекеров. Это те же сервера, которые помогают вам скачивать через .torrent файлы.

Это просто фантастика! Вот сама библиотека - https://github.com/subins2000/p2pt
👍11🤯1
Лучшая мобильная игра на ваш взгляд? Можно несколько. За малоизвестные отдельная благодарность 👇
7🙏1
BadUX при подключении второго монитора на винде:

1. Если заблочить ноут (Win + L), то локскрин будет отображаться только на основном мониторе. Все остальные будут черными, но при этом на них все еще можно водить курсором.

2. На всех мониторах есть панель задач, но контрол центр, откуда происходит управление вайфаем, блютузом и прочим отображается только на основном монике.

3. Также в панели задач второго монитора отсутствует кнопка сворачивания всех окон. Хорошо хоть время и дату на всех панелях оставили.

4. Если запустить прогу со второго монитора, то она может запуститься на другом в зависимости от того, где ее юзали в последний раз. Гораздо логичнее открывать прогу там, где ее запустили, либо дать возможность настраивать этот момент.

5. Если я изменяю громкость или яркость, то плавающий индикатор появляется только на основном мониторе. Логичнее показать его там, где сейчас находится мышь, активное окно или сразу на всех мониторах.

Если вы знаете, как решаются эти проблемы, добро пожаловать в комменты.
👍8