Пишем бота в гугл скриптах на JavaScript. Этот пост - проба пера и статья для начинающих свой путь в гугл скриптах или телеграм ботах. Есть много идей для будущих постов и интересных примеров использования инструментов гугла, в том числе реальных кейсов от заказчиков. Цель поста: получить обратную связь для понимания интересно ли читателю погрузиться в тему глубже.
Преподаватель
Plan 9-кластер на Raspberry Pi
Кролик Гленда, символ Plan 9
В первой части этого материала мы поговорим об ОС Plan 9, рассмотрим её заметные особенности. Вторая его часть посвящена рассказу о создании самодостаточного Raspberry Pi-кластера, состоящего из 4 узлов. Он представляет собой компактную платформу для экспериментов с Plan 9.
Гугл-программисты. Как идиот набрал на работу идиотов
Оглядываясь назад, понимаю – отбор действительно работал шикарно. Все, кого я тогда отобрал, стали уважаемыми в нашей деревне специалистами. Больше половины из них давно открыли собственный it-бизнес, в самых разных сферах – от 1С до разработки CRM-систем.
Вот этот опыт и замутил моё сознание. Настолько, что я решил поменять методику – подумал, что дело не в ней, а во мне. Я есть великий специалист по техническим собеседованиям.
Сколько нужно рома, чтобы получить новую кольцевую подпись?
Цифровая подпись является “виртуальной скрепой” практически любого блокчейн-проекта. В подавляющем большинстве проектов используется подпись, практически не отличающаяся от подписи, используемой в сети Bitcoin(а именно ECDSA на кривой secp256k1). Однако, создание цифровой подписи для проектов, в которых “приватность” пользователей играет существенную роль, часто превращается в сложный акробатический номер, базирующийся на передовых достижениях в области дискретной математики и криптографии.
Минимальный «hello world» telegram-бот
Простые и быстрые приближения к статистическим функциям
Задача. Есть калькулятор, но нет под рукой статистических таблиц. Например, нужны таблицы критических точек распределения Стьюдента для вычисления доверительного интервала. Взять компьютер с Excel? Не спортивно.
Большая точность не нужна, можно воспользоваться приближенными формулами. Идея приведённых ниже формул состоит в том, что преобразованием аргумента все распределения можно так или иначе свести к нормальному. Аппроксимации должны обеспечивать как вычисление кумулятивной функции распределения, так и расчет обратной к ней функции.
Бот «Умный планировщик»: понимает с полуслова
Хотите проверить функционал? Напишите в лс боту по этой ссылке и он ответит вам.
А тем, кому интересно как он работает и как 16-летний школьник смог написать его, я с удовольствием расскажу всё в подробностях в этой статье.
Социопатам! [именно так: Социопатам, а не Авторам, принадлежит Хабр]
Мне нравятся модели Венката и Чепмена: the Gervais Principle и MOPs. Ниже вольный перевод модели Чепмена об эволюции субкультур с моими комментариями.
I.
Гиковские сообщества умерли в конце 2000-х. Не так давно сдался последний из могикан, Скотт Александр. С ним ушел целый праксис гиков. Один редактор из NYT играючи свалил мощное генеалогическое древо информационных гигантов, корни которого уходят в гимназию Фашори в Будапеште. Венгерские марсиане дали нам фон Ноймана и [вставить любого крупного математика и физика 20 века], Интернет, Фидо, Хабр.
Мне повезло, я еще застала агонию lesswrong сообщества, где каждый юзер чекал свои Байесовы прайоры перед тем, как начать пост или комментарий. Скотт был одним из самых заметных писателей на lesswrong после Элиэзера Юдковски. Его блог slatestarcodex был последним убежищем рационалистов и эффективных альтруистов в сети. Все рационалисты знают его настоящую фамилию, но упоминать ее в приличном обществе не принято. Скотт понял, что после статьи в NYT его мирок будет доступен казуалам и сознательно ушел в подполье.
Протоколы прикладного уровня: Jabber/XMPP часть1
--Соединяться с Jabber сервером
--Логиниться
--Менять статусы
--Отправлять сообщения
--Отключаться
И все это на чистом XML
В принципе, можно статью назвать «Введение в XMPP» или типа того… Но суть не изменится
Приступим-же!
Telegram. Безлимитный сетевой диск. Бесплатный
Наверняка многие об этом задумывались, возможно у кого то эта идея лежит в TODO. У меня она пролежала примерно год, но таки удалось ее реализовать в виде работающего прототипа.
TgCloud:
- Виртуальная файловая система с открытым исходным г****кодом.
- На локальном диске — только метаданные: имена, размер, структура папок и т.д.
- Данные хранятся в Telegram и загружаются только при работе с файлом
- Размер и тип файлов не ограничен, можно использовать с любой ОС
Подробности реализации и ссылка на репозиторий под катом.
Telegram как NAS/FTP
Привет, Хабр!
По наблюдениям, Телеграм нравится очень многим в первую очередь как удобный транспорт файлов с девайса на девайс. Это, пожалуй, первое приложение, которое обеспечило такой удобный канал без каких-либо существенных ограничений и оговорок. Все ведь согласятся, что "максимальный размер одного файла 1.5Gb" — это нельзя считать существенным ограничением.
И всё прекрасно, но с течением времени файлы накапливаются, их становится много, они "уплывают" в истории куда-то в глубь веков и найти их становится сложно. Решение первого шага — теги! Они спасают, но тоже не могут справиться с проблемой количества — когда накапливается несколько десятков сообщений с тегом "#прочитать" — это не сильно отличается от ситуации без тегов вообще.
Следующим очевидным ходом становится создание чатов, групп и каналов, с самим собой или с "мёртвыми" контактами, просто для хранения полезного. Но, так как это тоже одноранговая архитектура, то и она приходит к тому же состоянию, что и предыдущие попытки каталогизации.
Немного оживил картину очередной апдейт телеграма с папками. Но ожидания, увы, не оправдались — нам дали возможность заводить корневые папки для сортировки чатов, но не более того.
Мысль напрашивалась сама собой — нужна иерархия, как в любой файловой системе. Директории, поддиректории и в них тоже поддиректории и так далее. И файлы, "лежащие" в этих директориях. Мысль напросилась и была воплощена в виде бота (за Bot API отдельная благодарность авторам мессенджера), которого мы и рассмотрим в этой публикации.
Встречайте: TeleFS Bot. Для друзей TFS.
Онлайн или офлайн: как учить программированию в вузе после пандемии
Телега для датасайентиста
How to deploy Python Telegram bot using Webhooks on Google Cloud Platform
Вместо предисловия
— Напиши телеграм-бота. Сейчас даже школьники пишут, — сказала она.
— А почему бы и нет, — подумал я тогда ( — Ну, ну, — сказал бы я сейчас).
Мы сидели в Бине и за чашкой кофе обсуждали возможности тестирования идей с моделями искусственного интеллекта на близком и не очень круге друзей. Лена, моя бывшая коллега, и во всех отношениях не блондинка, только что закончившая магистратуру, рассуждала так. Создав бота, можно сэкономить силы и время на интерфейсе, сосредоточившись на ядре с машинным обучением. Согласитесь, что устоять против такой логики “спортсменки, комсомолки и просто красавицы” в то прекрасное воскресное утро было невозможно. Решено. Телеграм-бот, значит телеграм-бот.
Первым делом я залез в гугл и нашел большое число ссылок “как сделать бот за 30 минут”. Это меня настолько воодушевило, что дальше названий я не пошел и занялся созданием ядра. В самом первом приближении мне предстояло написать систему обработки поисковых запросов с использованием NLP (natural language processing). Написание ядра заняло некоторое, вполне разумное, время (все же опыт кока-колой не пропить). И через несколько дней я был готов к тому, чтобы за пару часов обернуть первую тестовую версию ядра в пару другую команд send-receive, запустив все это в Телеграме на благо моим друзьям. Но не тут-то было.
Неожиданно возник целый клубок проблем. Потратив пару дней на поиски в интернете и общение с коллегами по цеху, я понял, что очевидное не очевидно, и еще одна “инструкция” точно не повредит. Так и появилась эта статья.
Telegram в качестве хранилища данных для IT проектов
Весь проект выложен на github, ссылка будет в конце статьи.
Основная проблема
Изначально я хотел для себя написать простенького телеграмм бота счетчика калорий, который получает число от пользователя и возвращает сколько калорий осталось до нормы на день. То есть нужно хранить грубо говоря пару переменных для каждого пользователя.
Генерация предсказуемых случайных последовательностей: другой подход к пермутациям
Однажды я работал над проектом, задачей которого было создание утилиты для экзаменации. Один пользователь создает вопросы, объединяет их в тест, устанавливает какие-то правила типа времени на исполнение, как подсчитывать баллы. А другой пользователь просто открывает и отвечает на вопросы. Кроме прочего, стояла задача реализовать возможность перемешать последовательность вопросов, но так, чтобы для определенного пользователя она была такой же, как при первом открытии.
Задача довольно простая и решили её у нас быстро. А решение было следующим: У нас есть n вопросов. Из комбинаторики мы знаем, что если у нас есть n > 1 элементов, мы, переставляя элементы местами, можем получить разные последовательности этих элементов, где максимальное число отличающихся последовательностей равно . Вот и было решено, пишем значит функцию, посчитаем там факториал, сгенерируем n-ную последовательность, а само число n сгенерируем рандомно и запишем в БД. Хренак-хренак и в продакшен отправляем тестерам. И вроде бы все нормально, но ведь не случись что-то непредвиденное, этой статьи бы не было.
Разворачиваем школьный учебный портал на Moodle и BigBlueButton
Просто скидывать материал для самостоятельного изучения нельзя, должна быть обратная связь, надо убедиться, что ученик правильно понял материал.
Изучение федеральных порталов дало понимание, что имеющиеся уроки имеют слишком примитивное изложение тем, а те, что позволяют загружать свой материал скорее всего не переживут возросшую нагрузку. Поэтому были сформулированы требования к учебному порталу:
Пишем хром плагин оповещения в телеграм
Беда, товарищи!
Дети (~10 лет) перешли на удаленное обучение, расселись по комнатам с компьютерами и не могут сосредоточиться на уроках!
Они добавлены в google families, microsoft family, время за компьютером ограничено, а взрослые сайты убраны через opendns. Но чуть что — и даже прямо во время zoom-конференции урока ребенок начинает смотреть youtube. А потом училка дает домашнее задание — посмотреть видео и написать сочинение. И видео — тоже на youtube. Без ручной модерации не обойтись.
Под катом пишем волшебный пендаль, а именно chrome plugin, который отправляет каждый открываемый сайт в telegram злому родителю, работающему в соседней комнате.
Jitsi Meet: опенсорсная альтернатива «шпионскому» видеоприложению Zoom
Но тип шифрования невозможно проверить, потому что код закрыт, а с точки зрения приватности приложение Zoom вызывает вопросы у некоторых экспертов. Например, хост может активировать странную функцию «трекинг внимания» (attention tracking). Она отслеживает, что участник не отвлекается от совещания больше, чем на 30 секунд (окно приложения должно быть открыто и активно).
Установка и правильная настройка Docker на Windows Subsystem Linux (WSL)
Предварительные требования
Прежде чем начать, убедитесь, что ваша система имеет примерно следующую конфигурацию:
- Windows 10 Version 1803 Build 1734 и выше
- Ubuntu for WSL 16.0.4 LTS или что-то в этом роде (ваша версия может немного отличаться)
Важно, чтобы версия и сборка Windows были не ниже того, что здесь указано. Дело в том, что, начиная с этих цифр, в ядро Windows WSL были внесены принципиальные изменения, которые позволяют использовать cgroups (control groups — в 2008 году добавлены в ядро Linux). А они необходимы Docker’у для управления ресурсами вашей системы в контейнерах.
Об одном решении проблемы воров и проституток в системах оказания образовательных услуг онлайн
Информация
- В рейтинге
- Не участвует
- Откуда
- Ханты-Мансийск, Тюменская обл. и Ханты-Мансийский АО, Россия
- Дата рождения
- Зарегистрирован
- Активность