Ещё в статью стоит добавить про мосты в тот же Телеграм, а также вацап, скайп и другие сети, в результате чего можно общаться через Element сразу в одном клиенте во всех сетях, про сервис t2bot.io и про то что можно все это самому поставить себе. Ну и может упомянуть проект Nova.Chat который из коробки предлагает готовые мосты.
А большая ли у Вас команда, чтобы довести текущий проект до уровня Матрикса? Да и даже если есть большая команда — без постоянного финансирования энтузиазма надолго не хватит ведь… Судя по описанию, сейчас проект находится на самой начальной стадии, и работы там ещё очень много предстоит.
Матрикс вон уже много лет активно разрабатывается и довольно большой командой, с нехилым финансированием и поддержкой, но до сих пор ещё много всего доделывать и развивать нужно.
Мне кажется, Вам с текущими идеями было бы оптимальнее присоединиться к разработке протокола Матрикс и привнести туда свои идеи — там очень активное сообщество, которое с удовольствием поддержит ваши идеи, обсудит, проанализирует, и, возможно, даже активно подключится к разработке! И даже если Ваши идеи там вдруг не особо поддержат — Вы всегда можете сами поверх Матрикса запилить то, что там нехватает для Вас и Ваших клиентов, в своей реализации клиентов и серверов.
Я уже несколько компаний перевёл со всяких Слаков-Вайберов-Вацапов-Скайпов-Рокетчатов на Матрикс, и все счасливы!
Из того что Вы описали по недостаткам — всё это уже запланировано в Матриксе, но пока у них руки не дошли:
Также стоит учесть, что Матрикс разрабатывает в первую очередь не «ещё один мессенджер», а открытый универсальный протокол для мессенджеров, на базе которого уже сделано несколько разных реализаций серверов и клиентов, а также вполне рабочие мосты в другие сети.
ticount — очень полезная вещь для анализа, но у меня никак не получается её вывести. Создал html-файл по примеру как в вашей статье (но без реакта)
<script>
console.log('start');
performance.mark('my mark start');
let a = 2;
for(i=0;i<1000;i++) {
a = a * 2;
}
console.log(a);
performance.mark('my mark end');
performance.measure('my mark', 'my mark start', 'my mark end');
console.log('end');
</script>
Но в результате в trace.json почему-то не видать ticount, вот строки:
{"args":{"data":{"startTime":1905132262563}},"cat":"disabled-by-default-v8.cpu_profiler","id":"0x1","name":"Profile","ph":"P","pid":16750,"tid":16750,"ts":1905132262568,"tts":34098},
{"args":{"data":{"navigationId":"D37ADD1A4A0E2111BE0DE201216799E2"}},"cat":"blink.user_timing","name":"my mark start","ph":"R","pid":16750,"tid":16750,"ts":1905132268970,"tts":39904},
{"args":{"data":{"navigationId":"D37ADD1A4A0E2111BE0DE201216799E2"}},"cat":"blink.user_timing","name":"my mark end","ph":"R","pid":16750,"tid":16750,"ts":1905132269025,"tts":39959},
{"args":{"frame":"CA90D5995825FCF3F9B88D774E1C9A97"},"cat":"blink.user_timing,rail","name":"domInteractive","ph":"R","pid":16750,"tid":16750,"ts":1905132269197,"tts":40131},
Версия хрома — "product-version":"HeadlessChrome/83.0.4103.0", платформа — Ubuntu Linux 16.04.
Когда ты пишешь код и в голове есть 2-3 варианта реализации — на этот момент нет ни статистики ни процентилей, поэтому и нужен быстрый инструмент оценки и сравнения "скорости" выполнения кода не "на глаз". Ну а так-то да, а-б тестирование на реальных юзерах — тоже хороший инструмент.
А можно как-то измерять производительность JS в каких-либо «статических попугаях», чтобы попугаев было одинаковое количество на разных компьютерах, независимо от скорости процессора и активности других процессов? Например, количество выполненных эвентов, количество тактов процессора, и т.п.
А то текущие замеры по времени — сильно зависят от производительности процессора и текущей нагрузке на систему, например если на момент проверки в соседней вкладке майнятся бетховены, то статистика по User Timing API получится неправильной.
Перезапускаю killall xbindkeys; xbindkeys -p -v и при нажатии Alt+Shift — ничего не происходит. Та же самая беда и с Ctrl+Shift, просто нажатием-отпусканием Ctrl, и т.п. Если добавить какую-нибудь обычную кнопку к комбинации (например Alt+Shift+A) — всё работает.
Может кто-нибудь подсказать в чём проблема? Возможно запущенные xorg или KDE как-то мешают?
Благодарю за статью! А ведь в теории-то можно же создать portable-пакет с Adobe Photoshop CC для Linux через Wine, и обернуть это в какой-нибудь snap, appimage, flatpak, или хотя бы просто tar.gz архив? Ну или Docker на худой конец ;)
Ведь Wine всё своё добро кладёт в отдельную папочку, которую можно в любое место положить. Или при упаковывании могут проблемы какие-то возникнуть?
Ещё в статью стоит добавить про мосты в тот же Телеграм, а также вацап, скайп и другие сети, в результате чего можно общаться через Element сразу в одном клиенте во всех сетях, про сервис t2bot.io и про то что можно все это самому поставить себе. Ну и может упомянуть проект Nova.Chat который из коробки предлагает готовые мосты.
Матрикс вон уже много лет активно разрабатывается и довольно большой командой, с нехилым финансированием и поддержкой, но до сих пор ещё много всего доделывать и развивать нужно.
Мне кажется, Вам с текущими идеями было бы оптимальнее присоединиться к разработке протокола Матрикс и привнести туда свои идеи — там очень активное сообщество, которое с удовольствием поддержит ваши идеи, обсудит, проанализирует, и, возможно, даже активно подключится к разработке! И даже если Ваши идеи там вдруг не особо поддержат — Вы всегда можете сами поверх Матрикса запилить то, что там нехватает для Вас и Ваших клиентов, в своей реализации клиентов и серверов.
Я уже несколько компаний перевёл со всяких Слаков-Вайберов-Вацапов-Скайпов-Рокетчатов на Матрикс, и все счасливы!
Из того что Вы описали по недостаткам — всё это уже запланировано в Матриксе, но пока у них руки не дошли:
— Децентрализованные аккаунты
— Вебсокеты
— Синхронизация через другие сервера, если нет прямой связи с конкретным сервером.
И даже p2p-клиенты без сервера: matrix.org/blog/2020/06/02/introducing-p-2-p-matrix
Также стоит учесть, что Матрикс разрабатывает в первую очередь не «ещё один мессенджер», а открытый универсальный протокол для мессенджеров, на базе которого уже сделано несколько разных реализаций серверов и клиентов, а также вполне рабочие мосты в другие сети.
echo 1 | sudo tee /proc/sys/kernel/perf_event_paranoidПосле этого ticount магическим образом появляется!
Хм, супер! Тогда надо будет попробовать, на мой KDE только портировать эти настройки осталось как-то
Это чтобы переучиваться с alt+shift на shift+alt ломая столетнюю привычку?
и запускаю вот такой js-файл:
Но в результате в
trace.jsonпочему-то не видать ticount, вот строки:Версия хрома —
"product-version":"HeadlessChrome/83.0.4103.0", платформа — Ubuntu Linux 16.04.Подскажите, в чём может быть проблема?
Когда ты пишешь код и в голове есть 2-3 варианта реализации — на этот момент нет ни статистики ни процентилей, поэтому и нужен быстрый инструмент оценки и сравнения "скорости" выполнения кода не "на глаз". Ну а так-то да, а-б тестирование на реальных юзерах — тоже хороший инструмент.
Благодарю, это прям то что нужно!
Благодарю, это прям то что нужно!
А то текущие замеры по времени — сильно зависят от производительности процессора и текущей нагрузке на систему, например если на момент проверки в соседней вкладке майнятся бетховены, то статистика по User Timing API получится неправильной.
а в холодильнике вирус разве быстрее кирдычится?
А в стоячей воде, как мне кажется, наоборот вирусу будет комфортнее — сыро и тепло, каеф, можно тусить месяцами.
Alt+Shift, другие комбинации с обычными кнопками работают норм.Т.е. запускаю
xbindkeys -k, нажимаюAlt+Shift, он выводит:Вставляю в файл
.xbindkeysrcстроку:Перезапускаю
killall xbindkeys; xbindkeys -p -vи при нажатии Alt+Shift — ничего не происходит. Та же самая беда и с Ctrl+Shift, просто нажатием-отпусканием Ctrl, и т.п. Если добавить какую-нибудь обычную кнопку к комбинации (например Alt+Shift+A) — всё работает.Может кто-нибудь подсказать в чём проблема? Возможно запущенные xorg или KDE как-то мешают?
Так если вирус быстро убивается ультрафиолетом — можно ли смастерить противогаз с уф-фильтром воздуха на каких-нибудь аккумуляторах?
А можете описать, чего именно Вам нехватило в бесплатной версии?
Ведь Wine всё своё добро кладёт в отдельную папочку, которую можно в любое место положить. Или при упаковывании могут проблемы какие-то возникнуть?