На Hexlet вышла статья “Стоит ли учить JavaScript: перспективы, ситуация на рынке труда, мнения экспертов”, в которой есть мнения ведущих этого канала, а также GraphQL гуру Павла Черторогова, опытнейшего дизайнера и разработчика в одном лице — Андрея Оконечникова и архитектора из Tinkoff Александра Казаченко.
ru.hexlet.io
Что такое JavaScript: зачем он нужен, как выучить JS с нуля и найти работу
Рассказываем, что это за язык программирования — JavaScript, где его используют, насколько он популярен и с чего начать изучение JavaScript.
Предложение Frozen Realms (stage 1), которое не обновлялось с марта 2018, было переименовано в Secure ECMAScript (SES)
GitHub
GitHub - tc39/proposal-ses: Draft proposal for SES (Secure EcmaScript)
Draft proposal for SES (Secure EcmaScript). Contribute to tc39/proposal-ses development by creating an account on GitHub.
Вебня
1 августа мы делаем уже второй WebAssembly Moscow meetup, на котором выступят Илья Черторыльский из Райффайзен банк, Николай Вольф из Parity, а также Dan Gohman из Mozilla (доклад будет читаться на английском языке в режиме телеконференции). Dan является автором…
Регистрация на митап закроется завтра утром, поэтому если еще не зарегистрировались и хотите попасть, то сделайте это сегодня.
https://webassembly-moscow.timepad.ru/event/1025337/
https://webassembly-moscow.timepad.ru/event/1025337/
webassembly-moscow.timepad.ru
WebAssembly Moscow meetup #2 / События на TimePad.ru
Второй московский митап, полностью посвящённый технологии WebAssembly. Огромное спасибо Райффайзенбанк и компании Fluence Labs за помощь в проведении. Будет организована трансляция на youtube и выложены записи докладов.
Стандарт для арифметики с плавающей точкой IEEE 754-2008, используемый в JavaScript, C++ и многих других языках, истек. Ему на смену пришел IEEE 754-2019. Основные изменения можно найти здесь: https://754r.ucbtest.org/background/
JavaScript движок XS для интернета вещей недавно обновился до версии 9.0.0 и получил поддержку таких фич как:
- Class Fields
- Private Methods
- Static Class Features
- Numeric separators
- Dynamic Import
- Import Metadata
- globalThis
- String.prototype.matchAll
- Promise.allSettled
- Hashbang Grammar
Также в XS появилась экспериментальная поддержка SES (stage 1) для возможности дать ранний фидбек по пропозалу.
- Class Fields
- Private Methods
- Static Class Features
- Numeric separators
- Dynamic Import
- Import Metadata
- globalThis
- String.prototype.matchAll
- Promise.allSettled
- Hashbang Grammar
Также в XS появилась экспериментальная поддержка SES (stage 1) для возможности дать ранний фидбек по пропозалу.
Moddable Tech
XS: Secure, Private JavaScript for Embedded IoT
The latest release of our XS JavaScript engine puts in place fundamental new capabilities to advance Moddable's mission of safely opening IoT products to third party software. These new capabilities are implementations of proposals on track for standardization…
Рабочая группа CSS обновила Candidate Recommendations спецификаций CSS Writing Modes Level 3 и CSS Writing Modes Level 4. Эти документы описывают CSS поддержку для различных интернациональных режимов написания, включая LTR, RTL, вертикальное написание.
Вышел Chrome 76, в котором добавилось очень много всего, например, v8 7.6, в котором добавили:
- улучшения JSON.parse
- значительные улучшения frozen/sealed массивов
- улучшения обработки unicode строк
- Promise.allSettled, который попал в ES2020
- улучшенную поддержку BigInt, который вот-вот также попадеь в ES2020
- улучшения Intl.DateTimeFormat
- улучшения JSON.parse
- значительные улучшения frozen/sealed массивов
- улучшения обработки unicode строк
- Promise.allSettled, который попал в ES2020
- улучшенную поддержку BigInt, который вот-вот также попадеь в ES2020
- улучшения Intl.DateTimeFormat
GitHub
GitHub - tc39/proposal-promise-allSettled: ECMAScript Proposal, specs, and reference implementation for Promise.allSettled
ECMAScript Proposal, specs, and reference implementation for Promise.allSettled - tc39/proposal-promise-allSettled
Также вышел Electron 6.0.0, который содержит в себе Chrome 76.0.3809.88, Node.js 12.4.0. Подробнее в блоге Electron. Поддержка Electron 3.x.x с этого момента прекращается.
Из других улучшений Chrome 76:
- добавлен медиа запрос prefers-color-scheme
- прогрессивные веб приложения (PWA) теперь можно устанавливать прямо из адресной строки omnibox
- blob’ы теперь можно удобнее считывать новыми методами
- асинхронный буфер обмена теперь поддерживает изображения
Улучшения DevTools:
- автодополнение CSS по значениям свойств
- улучшения вкладки Networking
- импорт / экспорт HAR, а также он теперь содержит сообщения WebSockets
- текущие показатели использования памяти на вкладке Memory
- порт зарегистрированного ServiceWorker на вкладке Application
- поддержка Background Fetch и Background Sync на вкладке Application
- Puppeteer для Firefox
https://developers.google.com/web/updates/2019/07/nic76
https://developers.google.com/web/updates/2019/05/devtools
Список изменений на chromestatus: https://www.chromestatus.com/features#milestone%3D76
- добавлен медиа запрос prefers-color-scheme
- прогрессивные веб приложения (PWA) теперь можно устанавливать прямо из адресной строки omnibox
- blob’ы теперь можно удобнее считывать новыми методами
text(), arrayBuffer() и stream()- асинхронный буфер обмена теперь поддерживает изображения
Улучшения DevTools:
- автодополнение CSS по значениям свойств
- улучшения вкладки Networking
- импорт / экспорт HAR, а также он теперь содержит сообщения WebSockets
- текущие показатели использования памяти на вкладке Memory
- порт зарегистрированного ServiceWorker на вкладке Application
- поддержка Background Fetch и Background Sync на вкладке Application
- Puppeteer для Firefox
https://developers.google.com/web/updates/2019/07/nic76
https://developers.google.com/web/updates/2019/05/devtools
Список изменений на chromestatus: https://www.chromestatus.com/features#milestone%3D76
Chrome Developers
New in Chrome 76 - Chrome Developers
Chrome 76 is rolling out now! It adds support for the prefers-color-scheme media query, bringing dark mode to websites. An install button in the omnibox to make installation of Progressive Web Apps on desktop easier. A way to prevent the mini-infobar from…
Сегодня этому каналу исполнился ровно 1 год! Если Вам нравится то, о чем мы пишем, то рассказывайте о нас коллегам и друзьям — это будет лучшим подарком. Спасибо за то, что читаете нас!
Текст спецификации для предложения Promise.any (stage 2), над которым я работаю, практически готов. Осталось дописать недостающие часть спеки для
AggregateError, и можно готовиться к stage 3.GitHub
GitHub - tc39/proposal-promise-any: ECMAScript proposal: Promise.any
ECMAScript proposal: Promise.any. Contribute to tc39/proposal-promise-any development by creating an account on GitHub.
Доклад Luke Wagner о #WebAssembly пропозале WebIDL bindings (phase 1), который позволит оптимизировать вызовы из WebAssembly в существующие Web API, а также любые другие окружения, которые используют WebIDL.
Vimeo
WebAssembly: status, WebIDL Bindings, and roadmap
Luke Wager, from Mozilla, gives an overview of WebAssembly at the W3C Workshop on Web Games held on 27-28 June 2019 in Seattle, USA, and details the WebIDL Bindings…
Вебня
Текст спецификации для предложения Promise.any (stage 2), над которым я работаю, практически готов. Осталось дописать недостающие часть спеки для AggregateError, и можно готовиться к stage 3.
А тем временем Axel Rauschmayer написал продвинутое руководство по остальным промис комбинаторам: Promise.all, Promise.race и Promise.allSettled (который станет частью ES2020).
Nullish Coalescing operator уже доступен под флагом в JavaScriptCore
https://trac.webkit.org/changeset/247819/webkit
https://trac.webkit.org/changeset/247819/webkit
17 августа (суббота) вместе с Avito делаем SPA meetup, пятый, юбилейный. Программа огонь: доклады от Avito, Яндекс, Mail.ru, ВКонтакте и Тинькофф плюс панельная сессия!
Спеши, торопись — бесплатно, но нужна регистрация, количество мест ограничено. Детали и первая партия билетов:
https://moscow-spa.timepad.ru/event/1028283/?utm_refcode=89abd647a5ac8c21b563f3340ae956884c2209
Вторая партия билетов будет 12 августа в 12:00.
Спеши, торопись — бесплатно, но нужна регистрация, количество мест ограничено. Детали и первая партия билетов:
https://moscow-spa.timepad.ru/event/1028283/?utm_refcode=89abd647a5ac8c21b563f3340ae956884c2209
Вторая партия билетов будет 12 августа в 12:00.
moscow-spa.timepad.ru
SPA Meetup #5 / События на TimePad.ru
17 августа приглашаем на пятый SPA митап. Митап ориентирован на опытных фронтенд-разрабочиков. В программе доклады от Mail.ru, Яндекс, ВКонтакте, Тинькофф и Avito, а также панельная сессия. Ведущий — Рома Дворнов.
Хороший эпизод подкаста TalkScript о приватных свойствах в ECMAScript и о том, как это повлияет на TypeScript.
https://www.sitepen.com/blog/episode-38-private-vs-private-adding-es-private-to-typescript/
https://www.sitepen.com/blog/episode-38-private-vs-private-adding-es-private-to-typescript/
TalkScript.FM
Episode 38: #private vs private: Adding ES private to TypeScript | TalkScript.FM
This week we'll be talking about the ECMAScript #private field proposal and how its implementation affects TypeScript—which already has a type of private field that uses the private keyword.
GitHub добавляет поддержку CI/CD в GitHub Actions. Это позволит организовать сборку, тестирование, публикацию и т.д. на любое событие (даже собственные) в рамках GitHub без дополнительных сервисов.
Нововведение запущено в режиме бета-тестирование и станет общедоступным 13 ноября. Для open source проектов будет бесплатно, для приватных стоимость будет определяться исходя из затраченных на выполнение шагов минут.
https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/
Нововведение запущено в режиме бета-тестирование и станет общедоступным 13 ноября. Для open source проектов будет бесплатно, для приватных стоимость будет определяться исходя из затраченных на выполнение шагов минут.
https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/
The GitHub Blog
GitHub Actions now supports CI/CD, free for public repositories
GitHub Actions now includes built-in CI/CD. Easily automate how you build, test, and deploy your projects on any platform, including Linux, macOS, and Windows.
В репозитории V8 создана ветка версии 7.7, в которой:
- произведены некоторые улучшения производительности за счет ленивого выделения памяти для хранения информации о типах (нужны для последующих спекулятивных оптимизаций)
- фоновая компиляция WebAssembly теперь быстрее на многоядерных ЦПУ
- рефакторинг стек трейсов, позволивший на 30% ускорить их сериализацию
- поддержка Intl.NumberFormat Unified API (stage 3)
Подробнее в блоге V8: https://v8.dev/blog/v8-release-77
- произведены некоторые улучшения производительности за счет ленивого выделения памяти для хранения информации о типах (нужны для последующих спекулятивных оптимизаций)
- фоновая компиляция WebAssembly теперь быстрее на многоядерных ЦПУ
- рефакторинг стек трейсов, позволивший на 30% ускорить их сериализацию
- поддержка Intl.NumberFormat Unified API (stage 3)
Подробнее в блоге V8: https://v8.dev/blog/v8-release-77
GitHub
GitHub - tc39/proposal-unified-intl-numberformat: Adds localized formatting of measurement units, compact decimals, and more number…
Adds localized formatting of measurement units, compact decimals, and more number features - tc39/proposal-unified-intl-numberformat
Если вы (или ваши пользователи) сталкивались с ситуацией, когда из-за обновления/добавления контента клик приходился не по тому элементу (например, кнопке) из-за того, что всё сдвинулось (особо печальный случай в этом видео) – есть хорошая новость! В настоящий момент в Chrome в стадии Origin Trial (в том числе за флагом) находится Layout Instability API, который позволяет определить стабильность положения элемента: когда элемент смещается, для него высчитывается т.н. layout shift score, по которому можно судить насколько стоит доверять действию пользователя с этим элементом. Это, например, может использоваться для принятия решения, что пользователь кликнул по верному элементу. API входит в группу Performance API, поэтому для получения уведомлений используется PerformanceObserver.
Примеры и подробности: https://web.dev/layout-instability-api/
Примеры и подробности: https://web.dev/layout-instability-api/
Вышел релиз кандидат TypeScript 3.6, в котором улучшена поддержка генераторов, Array Spread, промисов, юникода, поддержка import.iss.oneta (stage 3) и другое.
TypeScript
Announcing TypeScript 3.6 RC
Today we’re happy to announce the availability of the release candidate of TypeScript 3.6. This release candidate is intended to be fairly close to the full release, and will stabilize for the next few weeks leading up to our official release.
Аксель Раушмайер о предложении Nullish Coalescing operator (stage 3). К написаному в статье стоит добавить, что новый оператор также правильно работает с устаревшим методом
https://2ality.com/2019/08/nullish-coalescing.html
document.all.https://2ality.com/2019/08/nullish-coalescing.html
GitHub
GitHub - tc39/proposal-nullish-coalescing: Nullish coalescing proposal x ?? y
Nullish coalescing proposal x ?? y. Contribute to tc39/proposal-nullish-coalescing development by creating an account on GitHub.