dev optozorax
4.19K subscribers
345 photos
53 videos
10 files
275 links
По деловым предложениям: optozorax.work@gmail.com.

Связь с админом через личку канала (кнопка в канале слева снизу).

Ютуб: https://www.youtube.com/@optozorax

Сайт: optozorax.github.io
Download Telegram
В моей статье, в секции про Кладенец, было упоминание концепта клавиатуры, которую я однажды придумал. И называется она - Нумкорд.

Данная клавиатура состоит из 5 клавиш, и на ней всё нажимается через аккорды. Пользоваться ей можно используя всего три пальца. Данная клавиатура реализует расширенный нумпад, то есть с помощью неё можно писать цифры, стрелки, арифметические знаки, скобочки, и ещё на ней поместились клавиши для передвижения по ячейкам экселя через Tab, Shift+Tab, Enter, Shift+Enter. И это всё на 5 клавишах!

Конечно, пользоваться такой клавиатурой сложнее, чем обычным нумпадом, не так быстро, но зато как красиво! Как красиво на неё всё помещается, и как симметрично на схеме там размещаются клавиши передвижения.

А ещё в реальности она была бы очень маленькой. Выглядит как игрушка, но при этом полноценный нумпад.
ДР Канала! Вчера, 24 января, данному каналу исполнился год. И как раз аккурат к этому событию количество подписчиков перевалило за 4 сотни. За этот год сюда было написано почти 300 сообщений.

Я не в настроении рефлексировать, рассказывать историю или говорить планы на будущее, так что просто скажу спасибо всем кто читает и делится с друзьями!
Forwarded from Кладенец, обучение (илья шепрут)
Я тут вдохновился статьёй про однорукую раскладку OPRI, и решил придумать что-то аккордовое, чтобы можно было одной рукой нажимать любой хоткей.

И получилось такая клавиатура - Hotkeypad. Тут вся основная инфа написана на картинке. Главное отличие от Кладенца - это то, что любой хоткей нажимается одним аккордом, когда как на Кладенце хоткеи одной рукой нажимаются при помощи залипающих модификаторов.
dev optozorax
4. Аксиомы и доказательства. Следующее что я придумал - это что должны быть формулы которые записываются как аксиомы, и формулы, которые выводятся из других, и это можно доказать. Для такой системы все формулы должны быть записаны в каком-то файле, с именами…
А я вспомнил, что существует #fopply! Я немного посидел над ним и приделал нормальные сообщения об ошибках. Для этого пришлось немного подредачить парсер и написать тонну кода обработки ошибок. В будущем для этого планирую заюзать библиотеку codespan.

У меня выводится сразу несколько сообщений об ошибках, которые можно получить на текущем этапе проверки. Некоторые самописные ЯП'ы таким похвастаться не могут!

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

struct Spanned<T> {
span: Range<usize>,
inner: T,
}


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

Так же через новую версию, благодаря сообщениям об ошибках, которые указывают на проблему, я смог доказать (a+b)*(a-b) = a*a-b*b.

Следующим этапом планирую написать интерактивное приложение, в котором можно интерактивно применять формулы, находить все возжможные формулы, которые подходят к текущему выражению. Далее я собираюсь через него начать заносить как можно больше известных мне формул, чтобы найти проблемные места и лучше понять как их разрешить в будущем.
Как известно, я решил задачу "что будет если поместить портал в портал". Я написал программу, которая проводит вычисление этого, и срендерил результат.

По этому поводу я опубликовал маленькое видео на ютубе, а затем запостил это видео на реддите, и оно там не взлетело, набрав 29 лайков.

Сейчас, спустя год, я решил предпринять попытку №2, и залил видео, чтобы оно было просматриваемо через встроенный в реддит плеер, и сразу переместил указатель начала видео к сути, параллельно ускорив его. Надеюсь это увеличит эффект.

Вот ссылка на новый пост в реддите. Прошу оценить.
dev optozorax
Как известно, я решил задачу "что будет если поместить портал в портал". Я написал программу, которая проводит вычисление этого, и срендерил результат. По этому поводу я опубликовал маленькое видео на ютубе, а затем запостил это видео на реддите, и оно там…
Спасибо всем за поддержку, пост набрал 2.8к апвоутов и остановился в подъёме. А теперь немного размышлений по поводу реддита.

Я опубликовал данный пост в r/Portal, где находится 98к подписчиков, и где за всё время самый успешный пост набрал 5к апвоутов. Это означает, что насколько бы хорош мой пост ни был, он вряд ли наберёт больше 5к, потому что на это влияет не только качество поста, но ещё и много других критериев, которые должны сойтись вместе одновременно. А я видел, что обычно всякие крутые вещи на реддите набирают >40к апвоутов, и рассчитывал примерно на это. Я думал, что у реддита есть аналог трендов, и что любой пост может взлететь до небес, если он хорош. А оказывается, нет, и если хочется взлететь до небес, нужно публиковаться в изначально популярном сабреддите.

Ещё пост набрал 2.8к апвоутов, и 70 комментариев, в то время, как тот же самый пост на пикабу набрал 2.4к апвоутов, но 469 комментариев. Плюс на пикабу я опубликовал это с предысторией и приложил видео на ютубе, в котором до момента входа ждать наверное секунд 30. Но, тем не менее, его оценило много людей, и посмотрело много людей. Отсюда можно сделать вывод что пикабу является хорошей площадкой с лояльной и активной аудиторией.

Ещё один вариант как можно увеличить охват на реддите - это кросс-посты. Как я выяснил, нельзя кросс-постить в самые релевантные для моего поста сабреддиты: r/gifs, r/gaming, r/interestingasfuck, r/nextfuckinglevel. Туда можно постить только "оригинальный" контент.

Но можно кросс-постить в менее поулярные сабреддиты, и я постнул в r/DrosteEffect, и какой-то чувак кросс-постнул в r/Recursion.

Теперь я обнаруживаю, что мою гифку перезалили, и опубликовали в r/interestingasfuck, и там пост набрал 4.3к апвоутов.

Я принял правильное решение, что разместил ватермарку посередине картинки, потому что учитывая масштабы копипасты постов, это единственный способ как можно найти оригинал. В будущем думаю сразу размещать ссылку на этот телеграм-канал, написав: t.me/optozorax_dev. Раньше у меня ватермарка была слабо видно, и она была в левом углу картинки, благодаря этому какое-то сообщество в вк, обрезало мою анимацию квадратом, и моей ватермарки как и не бывало.

Так же я принял правильное решение, что в гифке сразу перешёл к делу и показываю процесс входа через 1 секунду от старта, а весь нужный контекст предоставляю в заголовке. Так часто делают, и это работает. В этом плане мою ютубовское видео просто ужасно, потому что оно повторяет заголовок, вводит много ненужной информации в начале, и вообще там всё медленно происходит. Весь процесс можно ускорить в 1.5 раза, и ничего плохого не случится. Так же, если бы я сделал видео максимально коротким, то на ютубе шансов завируситься было бы намного больше, потому что люди на ютубе всегда пишут: "If this video less than a minute, and YouTube recommends it to me, I definitely watch it.".

Будущие посты-гифки по этой теме я планирую публиковать в r/gaming, или r/nextfuckinglevel, и уже потом кросс-постить это в r/Portal (туда кросс-пост разрешён).

Надеюсь эта информация вам пригодится, если вы захотите что-то постить на реддит и получить максимальный охват.
В статье про мою раскладку были написаны идеи как её можно улучшить. Так вот, я реализовал их все! Теперь в моей раскладке:
• Цифры расположены в форме нумпада.
• Аналогично и F-клавиши.
• Заюзал аккорды на цифроряде.
• Утащил мышь на левую руку.
• На слое мыши сделан свой собственный. автоповтор, который позволяет передвигать мышь на 1 пиксель быстро при зажатии.
• Сделал отдельный слой для символов набираемых через .XCompose.

По поводу аккордов на цифроряде — мне очень нравится. Так же, благодаря этому, я утащил Once Shift на мизинец без аккорда, и мне кажется он нажимается в миллион раз приятней, чем на аккорде.

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

Ну и остального по мелочам.

Мне очень интересно, с такими темпами к чему я приду через несколько лет.
Папки «Спам» быть не должно. #мысли

При регистрации на каком-то сайте очень часто используется электронная почта в качестве способа активации. И практически на любом сайте после отправки письма пишут: «Проверьте папку "Спам", письмо может случайно попасть туда». В этом главная проблема. Данную папку нам навязывает любой почтовый сервис, письма складываются туда по каким-то магическим алгоритмам, главное свойство которых в том, что они ошибаются.

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

Я считаю что папка «Спам» должна отсутствовать по умолчанию. Всё должно делаться на основе фильтров, и для фильтров должны быть жирные кнопки и более удобный и доступный интерфейс.

За всё время пользования почтой я понял самую главную вещь: если какая-то почта начала спамить вам один раз, и от этого нельзя отписаться, значит она вам будет спамить всегда. И аналогично, если какая-то почта присылает важные письма, значит она никогда не пришёт спам, а если и пришлёт, то там будет кнопочка «Отписаться». Этим свойством и будем пользоваться далее.

Вот, например, пришло вам письмо во входящие, а вы видите что это спам. Как с ним бороться, если такой папки нет? Для этого придумана концепция фильтров. Можно вручную поставить фильтр на автоматическое удаление подобных писем. В обычных почтовых сервисах для этого надо заходить в настройки и разбираться в том как работают фильтры, и смотреть на кучу полей, поэтому так никто не делает, и всем лень. Поэтому нужно упрощать интерфейс, например вместо кнопки «Пометить как спам» можно поставить кнопку для самого частого кейса создания фильтра: «Удалять все письма от этой почты». Ну и конечно, после нажатия этой кнопки все письма от данной почты тоже должны автоматически удалиться, потому что никто не полезет в настройки чтобы сделать это вручную, и потому что вспоминаем свойство. Отлично, теперь 90% кейсов использования папки «Спам» уничтожено.

Другой кейс спама — это когда человеку каждый день пишут самые разные почтовые ящики, и он просто физически не сможет фильтровать их все самостоятельно. Мне кажется только в таком случае должна быть кнопка «А давайте вы мне дадите папку спам, и заюзаете ваши магические алгоритмы». Хотя даже для этого случая я бы не стал доверять алгоритмам, и сделал по-другому. В данном случае можно создать концепцию «Доверенных почт/доменов почт». При данной концепции должны быть две папки входящих: неизвестные и известные. Все письма от неизвестных почтовых ящиков должны складываться в соответствующую папку, аналогично известные. Должен быть список всех известных почт, который можно настроить и посмотреть в настройках. И снова, при встрече соответствующего письма, в настройки никто лезть не будет, поэтому чтобы сделать какую-то почту доверенной, в каждом письме просто должна быть кнопка «Сделать доверенной почту, отправившую это письмо», аналогично наоборот. И сразу после этого все письма от этой почты должны переместиться из папки неизвестных в папку известных, потому что свойство. Таким образом, человеку могут писать хоть тысячи разных спамовых почт ежедневно, но он никогда не пропустит важную почту, и никакие папки «Спам» не нужны.

Вот и всё, теперь мы не только избавились от идиотской концепции папки со спамом, но ещё и создали в сотню раз более мощный, удобный и полезный интерфейс, который усиливает своего пользователя, а не ослабляет.
This media is not supported in your browser
VIEW IN TELEGRAM
В процессе решения задачи о вхождении портала в портал я осознал, что порталы могут быть не только плоскими, но ещё и поверхностными.

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

Справа показано как треугольник обрезается при входе в данный портал.

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

А ещё, поверхностные порталы можно покрутить в моей программке.
Мне вот интересно. А что произойдёт со стандартной библиотекой Rust, когда в него добавят GAT или дай бог HKT? Будет ли стандартная библиотека полностью перепроектирована, и переосмыслена, или туда просто будут вставлять новые трейты, или может вообще ничего вставлять не будут, оставляя переосмысление std коммьюнити? Будет ли система ревизий использоваться для того, чтобы создать новую версию обратно несовместимой стандартной библиотеки?

Есть ли у кого-то понимание или официальные заявления от разработчиков языка?

#обсуждение