> И ускорить современный веб на порядок.
Скорость веба не упирается в скорость JS. Движки JS очень быстрые. Поэтому WebAssembly здесь ничего не изменит.
Задарму очень люблю, но АТС разочаровала. Гибкости очень нехватает. Нельзя даже сделать двуязычный IVR. Конь, конечно, дарёный, но не хочется завязываться на виртуальную АТС, а потом при малейших изменениях задачи снова возвращаться к Asterisk.
Filippok, извините за мой тон. Не нужно было пускаться в оскорбления. В последнее время перечитал наездов на JavaScript, Electron и прочее.) Мне кажется эта критика очень недальновидной. Да, сегодня кажется, что веб не предназначен для создания приложений. Но в будущем всё поменяется.
Насколько я знаю, когда появился Си, многие также сопротивлялись его внедрению и продолжали писать на Ассемблере более эффективный код. Но по мере развития компиляторов производительность сишного кода стала обгонять ассемблерный за счёт сложных для человека оптимизаций.
Как же надоело это зашоренное нытьё.
Веб-приложения решают три проблемы: переносимость, изоляция (sandboxing) и деплой.
1. Да, переносимости можно было бы добиться с любым языком программирования.
2. Для изоляции найдутся какие-то решения. В мобильных ОС она есть, например.
3. Доставка и автоматические обновления — киллер фича веба. Опять же, в мобильных ОС эта задача решена чуть лучше, но этого всё равно недостаточно. С точки зрения простых пользователей процедура установки — бессмысленное действие. Где грань между программами, которые могут встраиваться в «html документы» и которые требуют установки? Для кредитного калькулятора банка, например, нужно делать установку или нет? А зачем тогда нужно делать какие-то специальные манипуляции, прежде чем поиграть в игру или отретушировать фотографию? Зачем эта сложность простым пользователям? Веб образует единое пространство для работы с компьютером. Потому что разница между страничкой из трёх html-тегов и AutoCAD — условна как для пользователя, так и для разработчика.
Неужели не очевидно, что все эти проблемы разбухающего и тормозящего веба вызваны переходным периодом? Как раз WebAssembly на это прямо указывает. Он сокращает разницу между вебом и нативными приложениями. А когда веб вытеснит всё, что мешает превратить веб в нейтив? Заточить процессоры под WebAssembly, а операционные системы переделать в браузер. И слава богу, что во всём сегодняшнем зоопарке технологий появляется абсолютно доминирующая высокоуровневая платформа для приложений. Потому что, если такой платформы не будет, то нужно сохранять совместимость на уровне ниже — придётся тащить x86 до бесконечности.
Как запрет на вставку из буфера обмена помешает другому приложению его украсть? Уточняю: я уже скопировал пароль, потому что не думал, что кто-то за меня будет решать, как мне хранить мои пароли.
По этой же причине решил просмотреть статью. Logitech уже десяток лет делает мыши, работающие не больше полугода. Судя по комментам, ситуация не меняется. А больше на рынке выбора почти нет: либо вырвиглазные игровые, как в этой статье, либо без двух кнопок под большой палец, либо маленькие. Как жить?)
Я думал, это и имеется ввиду? И это очень хорошо. Я не знаю ни одного пользователя, который бы вообще обращал внимания на эти надписи, и уж тем более, понимал зачем они нужны. EV — это хоть какая-то защита от фишинга, которой можно обучать людей. Но для этого нужно убрать бессмысленную надпись «Защищено» для обычных сертификатов.
Скорость веба не упирается в скорость JS. Движки JS очень быстрые. Поэтому WebAssembly здесь ничего не изменит.
Как можно бороться со сложностью, если не с помощью слоёв абстракций?
Насколько я знаю, когда появился Си, многие также сопротивлялись его внедрению и продолжали писать на Ассемблере более эффективный код. Но по мере развития компиляторов производительность сишного кода стала обгонять ассемблерный за счёт сложных для человека оптимизаций.
Веб-приложения решают три проблемы: переносимость, изоляция (sandboxing) и деплой.
1. Да, переносимости можно было бы добиться с любым языком программирования.
2. Для изоляции найдутся какие-то решения. В мобильных ОС она есть, например.
3. Доставка и автоматические обновления — киллер фича веба. Опять же, в мобильных ОС эта задача решена чуть лучше, но этого всё равно недостаточно. С точки зрения простых пользователей процедура установки — бессмысленное действие. Где грань между программами, которые могут встраиваться в «html документы» и которые требуют установки? Для кредитного калькулятора банка, например, нужно делать установку или нет? А зачем тогда нужно делать какие-то специальные манипуляции, прежде чем поиграть в игру или отретушировать фотографию? Зачем эта сложность простым пользователям? Веб образует единое пространство для работы с компьютером. Потому что разница между страничкой из трёх html-тегов и AutoCAD — условна как для пользователя, так и для разработчика.
Неужели не очевидно, что все эти проблемы разбухающего и тормозящего веба вызваны переходным периодом? Как раз WebAssembly на это прямо указывает. Он сокращает разницу между вебом и нативными приложениями. А когда веб вытеснит всё, что мешает превратить веб в нейтив? Заточить процессоры под WebAssembly, а операционные системы переделать в браузер. И слава богу, что во всём сегодняшнем зоопарке технологий появляется абсолютно доминирующая высокоуровневая платформа для приложений. Потому что, если такой платформы не будет, то нужно сохранять совместимость на уровне ниже — придётся тащить x86 до бесконечности.
2) Хэшировать пин вместе с токеном. Или, как ниже написал ARechitsky, хэшировать можно только токен.
Это полностью бесполезное вредительство.
2) Это можно решить хэшированием.
Как запрет на вставку из буфера обмена помешает другому приложению его украсть? Уточняю: я уже скопировал пароль, потому что не думал, что кто-то за меня будет решать, как мне хранить мои пароли.
Вы не могли бы пояснить, чем этот вариант хуже? Если кто-то может перехватить ПИН, то он перехватит и расшифрованный RefreshToken в вашем решении.
Так было всегда. В старом интерфейсе при создании ящика спрашивают только логин. А при первом входе — личные данные.
Это не квест, а сущее издевательство. Это при том, что за один месяц я натолкнулся на 4 серьёзных бага, а писать о них было некуда.
Не подскажете, если приложение написано не хипстерами и настраивается через конфиг, как решается эта проблема при создании контейнера?