Получи случайную криптовалюту за регистрацию!

Жабаскрипт (веде Віктор Турський)

Логотип телеграм канала @jabascript — Жабаскрипт (веде Віктор Турський) Ж
Логотип телеграм канала @jabascript — Жабаскрипт (веде Віктор Турський)
Адрес канала: @jabascript
Категории: Технологии
Язык: Русский
Количество подписчиков: 2.96K
Описание канала:

Авторський контент для JavaScript розробників, але не завжди про JS:). Пишу про архітектуру, best practices, продуктивність, безпеку, інструментарій.
Viktor Turskyi (@koorchik), Cofounder at Webbylab, SWE at Google
Рекламу не розміщую!

Рейтинги и Отзывы

1.50

2 отзыва

Оценить канал jabascript и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

0

3 звезд

0

2 звезд

1

1 звезд

1


Последние сообщения 6

2021-11-25 11:01:42 Как я переключился с прекрасного Perl-а на ужасный JS 25 ноября в рамках "FWDays: JS is back" буду делать онлайн доклад на тему "Как я переключился с прекрасного Perl-а на ужасный JS" Я использую JavaScript с 2006 года. Тогда я делал одностраничные приложения…
1.0K views08:01
Открыть/Комментировать
2021-11-21 19:21:02 Онлайн конференция "Fwdays: JS is back" начанается в среду, 2 бесплатных промокода для подписчков.

Про свой доклад, где расскажу как я переходил с Perl на JS, я уже делал пост. Хочу сделать доклад фаново, придумал много примеров, но это будет работать, только если будет интерактив - подключайся 25 ноября утром (четверг)

Трансляция в Zoom будет бесплатной, но предварительно регистрируйся

Также, я себе сделал личный топ из 5-ти докладов, которые обязательно хочу посмотреть:
Wix Serverless from inside [ukr]. Я разработчик serverless платформы в Google Cloud и опыт Wix мне очень интересен.

How to Use Bazel to Manage Monorepos: The Grammarly Front-End Team’s Experience [rus]. Bazel это опен-сорс версия гугловой системы сборки. Я все еще пытаюсь понять ее преимущества и недостатки. И опыт ребят и Grammarly очень интересен.

Discussion on System Design [UA][RU]. Эту тему я просто люблю

How does Node.js optimize JavaScript code? Eugene Obrezkov. Тут 2 причины. Первая - Женя крутой спец и может сделать хороший deep-dive. Вторая - я когда-то делал движок Excel на JavaScript и тогда мне пришлось разбираться во внутренностях v8, чтобы выжать максимальную производительность. Интересно, как дела сейчас с этим.

Node.js Development in 2022: trends and techniques. Nikita Galkin. Никита всегда следит за трендами и этот доклад хорошая возможность быть в теме.

Бонус для подписчиков:
Мне очень нравится модель участия от Fwdays :
Free Online (регистрация бесплатно и только трансляции)
Full Online (запись всех эфиров)
Online Full Swag (для ценителей мерча)

И у меня есть 2 промокода на 100% скидки на "Full Online".
Розыграем их во вторник рано утром.

Для участия в розыгрыше нужно:
1. Оставить любой комментарий к этому посту.
2. Заволофить любого спикера на https://my-talks.net/
924 views16:21
Открыть/Комментировать
2021-11-16 12:19:42 Подписывайся и на мой твиттер Много всего, что не попало сюда в канал, в моем Твиттере. Если интересно, подписывайся и на https://twitter.com/ViktorTurskyi
1.2K viewsedited  09:19
Открыть/Комментировать
2021-11-15 10:13:06 Подписывайся и на мой твиттер

Много всего, что не попало сюда в канал, в моем Твиттере.

Если интересно, подписывайся и на https://twitter.com/ViktorTurskyi
1.4K views07:13
Открыть/Комментировать
2021-11-12 14:06:30 WebbyLab developers baseline Только что закончили беседу про команды на fwdays. Получилось у нас не сильно структурировано, но душевно . Просто в формате стрима. И в связи с этим хотел поделиться документом, который вспоминал во время обсуждения. Этот документ…
2.0K viewsedited  11:06
Открыть/Комментировать
2021-11-10 15:59:25 Как я переключился с прекрасного Perl-а на ужасный JS

25 ноября в рамках "FWDays: JS is back" буду делать онлайн доклад на тему "Как я переключился с прекрасного Perl-а на ужасный JS"

Я использую JavaScript с 2006 года. Тогда я делал одностраничные приложения для IE6 на JS (это был ES3) и бэкэнд на Perl. JS был болью. Лучше ли он теперь?

В докладе покажу принципиальное отличие современного JS от Perl. Как одни и те же проблемы можно решить разными способами. Надеюсь дать вам более широкое представление о том, что могут предоставить языки программирования.

Будьте готовы к интерактиву, чтобы помочь мне с простыми задачами на JavaScript

Также фоловить мои доклады можете и подписаться на уведомления про то, что появилось видео к этому докладу можете на my-talks.net (но видео будет только в следующем году, да и без интерактива)

Регистрируйтесь!

Как вам тема?
1.9K views12:59
Открыть/Комментировать
2021-11-07 15:32:07 Должен ли фронтендер думать про XSS?

Коротко: Да! Это задача фронтендера.

Я уже не один раз слышал от фронтендеров, что за безопасность должен думать бэкенд разработчик и пускай там делают защиту от XSS. Да, на бэкенде можно снизить риски (к примеру, настроить CSP было бы правильно), но корневая причина находится именно на фронте. И это ответственность фронтендера думать про защиту от XSS.

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

Почему фронтендер?
Причина : XSS - это проблема процесса рендеринга данных.
Одни и те же данные можно использовать по разному в разных ситуациях и разных клиентах (браузер, консоль, мобильное приложение). И мы должны рендерить данные безопасно. Сегодня они могут прийти с надежного бэкенда, а завтра с какого-то внешнего, к примеру. Нет причины, чтобы использовать небезопасный рендеринг на клиенте (возможно за редким исключением).

Если этой причины мало, то переходим к следующей .

Причина : бэкендер не следит за изменениями фронтенда.
Бэкенд-разработчик на заморачивается у вас там просто textarea на фронте или WYSIWYG-редактор.

Давайте проведем мысленный эксперимент. У нас есть REST API endpoint, который возвращает информацию про пользователя и там два поля: "name" и "bio". Эти два поля отображаются обычным текстом в интерфейсе. И тут приходит продакт-менеджер и говорит, давай дадим пользователям возможность форматировать текст в bio. Ты подключаешь какой-то редактор и в этот момент твое приложение становится уязвимым к XSS, если ты про это не подумаешь.

Почему так произойдет?
Есть ли гарантия того, что бэкендер знает, что нужно сделать изменения на бэке, если задача была чисто фронтовая?
Есть ли гарантия того, что ваш продакт-менеджер поставит бэкендеру задачу про XSS вместе с фронтовой задачей для тебя?
Если ты не знаешь про XSS, то как ты поставишь задачу бэкендеру?
Если ты не знаешь про XSS, то как ты добавишь защиту на фронте?

В итоге бэкендер не в курсе, продакт не занимается этими вопросами, а фронтендер считаешь, что это не его ответственность. То есть, даже с процессной стороны возникает проблема.

Если этих двух причин мало, то переходим к следующей .

Причина : бэкенд должен знать про верстку фронта, чтобы сделать правильную защиту.

Стандартный механизм защиты это использования санитайзера (внешния библиотека типа DOMPurify) Никогда не используйте регулярки для защиты от XSS .

Но это настолько стандартная для фронтенда задача, что сейчас утверждается браузерный API (https://wicg.github.io/sanitizer-api/). Только это уже говорит о том, что этим должны пользоваться фронтендеры.

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

Цитирую: "If the user data is available in string form and the developer wishes to sanitize it now, but apply the result to the DOM later, then the Sanitizer must be informed about the context that it will be used."

Примеры:
sanitizer.sanitizeFor("div", htmlMarkup);
sanitizer.sanitizeFor("table", htmlMarkup);


То есть бэкенд не просто должен знать, что вы будете использовать строку как html, но и должен знать как у вас сверстана страница.

Общий вывод: фронт не должен ожидать безопасных данных с сервера и должен думать про безопасный рендеринг всегда!

Надеюсь, мне удалось убедить фронтендеров задуматься про XSS
1.4K viewsedited  12:32
Открыть/Комментировать
2021-11-06 10:27:00
Доставили книгу. Детально описывает процессы и тулинг Гугла (написана гуглерами и некоторые используют для оебординга ее). Интересно будет сравнить с реальностью все
Книга есть в электронке даже
https://abseil.io/resources/swe_at_google.2.pdf

Напишу в канал небольшое ревью после прочтения.

Пишите в комментах, какие книги по разработке вам понравились. Что полезного можно прочитать разработчикам?
1.2K views07:27
Открыть/Комментировать
2021-10-29 18:13:36 VSCode в браузере 
Вы просто заходите на https://vscode.dev/ и сразу пользуетесь VSCode. Удобно, когда рабочее окружение не требует настройки и можно начать работать в привычных инструментах сразу. VSCode - это только часть экосистемы, нужно закрыть остальные аспекты всего процесса разработки. Github Codespaces как раз пробует решить эту проблему. Интересно будет понаблюдать за другими игроками рынка.

Но главное, чем я хочу поделиться, это докладом Эриха Гаммы (один из авторов gof-овских "Design Patterns") про то, как они в MS 10 лет разрабатывали VScode - история создания и интересные архитектурные решения.
Легкое получасовое видео для вечера пятницы

ССЫЛКА НА ДОКЛАД: 

1.5K viewsedited  15:13
Открыть/Комментировать
2021-10-22 13:50:51
Я работаю в Google Cloud в команде Cloud Run (serverless). my-talks.net крутится как раз на Cloud Run.

Хотите проведу онлайн воркшоп по проекту над которым работаю в Гугле и про опыт использования его для my-talks.net?
Anonymous Poll
61%
Очень интересно
32%
Интересно
6%
Не интересно
371 voters1.0K views10:50
Открыть/Комментировать