Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Ontico
Microsoft Edge -- новый браузер от Microsoft с новым движком и новым интерфейсом.
Какие цели преследует Microsoft, и что это нововведение означает для веб-разработчиков?
Что нового в движке браузера по сравнению с IE, и как он будет развиваться дальше?
Движок Edge внутри Windows 10: хостинг сайтов внутри приложений и доступ к нативной функциональности.
Дорожная карта: к чему и когда готовиться?
Microsoft Edge и платформа веб-приложений в Windows 10 / Константин Кичинский...Ontico
Microsoft Edge -- новый браузер от Microsoft с новым движком и новым интерфейсом.
Какие цели преследует Microsoft, и что это нововведение означает для веб-разработчиков?
Что нового в движке браузера по сравнению с IE, и как он будет развиваться дальше?
Движок Edge внутри Windows 10: хостинг сайтов внутри приложений и доступ к нативной функциональности.
Дорожная карта: к чему и когда готовиться?
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
https://seleniumcamp.com/talk/webdriverio-puppeteer-double-gun-double-fun/
In the automation world, W3C Webdriver HTTP protocol has been successfully used for a long time. With its help, many projects and libraries in various languages have been implemented (selenide, protractor, webdriverio and thousands of others). But more and more teams decide to use Chrome Debug Protocol, in particular the Puppeteer tool. It is based on WebSockets, and has its own special features – two-way communication, ability to subscribe to events in the browser, and much more. In this talk, we will look at the capabilities of both protocols, experiment and combine them together in one project to make the browser work at full power, and take the best from both communication channels.
Расскажу про мотивацию и трудности создания сервиса скриншотов веб-страниц на базе headless chrome и puppeteer. Наличие готовых инструментов еще не означает наличие готового сервиса.
Применение графических ускорителей в браузерахAlex Musayev
Доклад содержит результаты микроисследования на тему развития и возможного применения технологий аппаратного ускорения графики в распространенных веб браузерах, а так же анализ того, как новые технические возможности могут повлиять на развитие веб-приложений (в первую очередь, с клиентской стороны).
Тезисы: технологии и стандарты аппаратного ускорения, применимые в вебе (WebGL, Direct2D); поддержка ускорителей в браузерах, как общий тренд; реализованные и запланированные возможности: ранние сборки Firefox 3.7, IE 9, WebKit, Opera; практическое применение (улучшенная производительность при рендеринге страниц; 2D и 3D анимация средствами HTML5, CSS3 и JavaScript, без задействования внешних плагинов; сглаживание экранных шрифтов); развитие функциональности и сфер применения веб приложений.
В мире автоматизации давным-давно успешно используют W3C Webdriver HTTP протокол. С его помощью реализовано множество проектов и библиотек на различных языках (selenide, protractor, webdriverio и тысячи других). Но так же в последнее время все больше и больше команд решают использовать Chrome Debug Protocol, в частности инструмент Puppeteer. Он основан на WebSockets, и имеет свои особые возможности - двухсторонняя связь, возможность подписки на события в браузере, и многое другое. В этом докладе мы посмотрим возможности обоих протоколов, поэкспериментируем и совместим их вместе в одном проекте, чтобы заставить браузер работать на полную и взять лучшее от двух каналов связи.
Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Андрей Михайлов. Vagrant. Быстрое развертывание средыDrupalSib
DrupalCafe#9@Novosibirsk https://vk.com/drupalcafe9
Чтобы избежать больших затрат на развертывание сред разработки и тестирования, приближенных к среде эксплуатации (development stage vs production stage parity), всё большую популярность приобретает виртуализация сред.
Доклад о том, как создавать соответствующую репродуцируемую среду разработки с использованием Vagrant.
-----
Сайт сибирского сообщества друпаллеров ДрупалСиб drupalsib.ru
Группа сибирского сообщества друпаллеров Вконтакте vk.com/drupalsib
Партнер Группа компаний И20 i20.biz
State of the Standardized Web
В 2014 году принципы Extensible Web начали воплощаться в новых стандартах. Поговорим о Web Crypto, Web Animations, Service Worker и других вещах, которые должны принципиально изменить веб-платформу в ближайшем будущем.
Сергей Константинов, Яндекс
Руководитель группы разработки API Яндекс.Карт. Окончил Южно-Уральский государственный университет. Разработкой API Яндекс.Карт занимается с 2008 года. С 2013 — участник Технической архитектурной группы Консорциума W3C.
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
https://seleniumcamp.com/talk/webdriverio-puppeteer-double-gun-double-fun/
In the automation world, W3C Webdriver HTTP protocol has been successfully used for a long time. With its help, many projects and libraries in various languages have been implemented (selenide, protractor, webdriverio and thousands of others). But more and more teams decide to use Chrome Debug Protocol, in particular the Puppeteer tool. It is based on WebSockets, and has its own special features – two-way communication, ability to subscribe to events in the browser, and much more. In this talk, we will look at the capabilities of both protocols, experiment and combine them together in one project to make the browser work at full power, and take the best from both communication channels.
Расскажу про мотивацию и трудности создания сервиса скриншотов веб-страниц на базе headless chrome и puppeteer. Наличие готовых инструментов еще не означает наличие готового сервиса.
Применение графических ускорителей в браузерахAlex Musayev
Доклад содержит результаты микроисследования на тему развития и возможного применения технологий аппаратного ускорения графики в распространенных веб браузерах, а так же анализ того, как новые технические возможности могут повлиять на развитие веб-приложений (в первую очередь, с клиентской стороны).
Тезисы: технологии и стандарты аппаратного ускорения, применимые в вебе (WebGL, Direct2D); поддержка ускорителей в браузерах, как общий тренд; реализованные и запланированные возможности: ранние сборки Firefox 3.7, IE 9, WebKit, Opera; практическое применение (улучшенная производительность при рендеринге страниц; 2D и 3D анимация средствами HTML5, CSS3 и JavaScript, без задействования внешних плагинов; сглаживание экранных шрифтов); развитие функциональности и сфер применения веб приложений.
В мире автоматизации давным-давно успешно используют W3C Webdriver HTTP протокол. С его помощью реализовано множество проектов и библиотек на различных языках (selenide, protractor, webdriverio и тысячи других). Но так же в последнее время все больше и больше команд решают использовать Chrome Debug Protocol, в частности инструмент Puppeteer. Он основан на WebSockets, и имеет свои особые возможности - двухсторонняя связь, возможность подписки на события в браузере, и многое другое. В этом докладе мы посмотрим возможности обоих протоколов, поэкспериментируем и совместим их вместе в одном проекте, чтобы заставить браузер работать на полную и взять лучшее от двух каналов связи.
Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Андрей Михайлов. Vagrant. Быстрое развертывание средыDrupalSib
DrupalCafe#9@Novosibirsk https://vk.com/drupalcafe9
Чтобы избежать больших затрат на развертывание сред разработки и тестирования, приближенных к среде эксплуатации (development stage vs production stage parity), всё большую популярность приобретает виртуализация сред.
Доклад о том, как создавать соответствующую репродуцируемую среду разработки с использованием Vagrant.
-----
Сайт сибирского сообщества друпаллеров ДрупалСиб drupalsib.ru
Группа сибирского сообщества друпаллеров Вконтакте vk.com/drupalsib
Партнер Группа компаний И20 i20.biz
State of the Standardized Web
В 2014 году принципы Extensible Web начали воплощаться в новых стандартах. Поговорим о Web Crypto, Web Animations, Service Worker и других вещах, которые должны принципиально изменить веб-платформу в ближайшем будущем.
Сергей Константинов, Яндекс
Руководитель группы разработки API Яндекс.Карт. Окончил Южно-Уральский государственный университет. Разработкой API Яндекс.Карт занимается с 2008 года. С 2013 — участник Технической архитектурной группы Консорциума W3C.
The presentation is made before a group of young people who have some knowledge of climate change but do not think that they have any role to play in reducing its effect. They are of the view that it’s the government to deal with climate change issues. The presentation aims to show them that they too can contribute in their own way without having to spend as much while going about their daily routine.
Секционный доклад
Экскурс в мир WEB разработки
Дмитрий Лаабе
Генеральный директор и основатель рекрутинговой компании IT-Доминанта
Технический директор и программист
портала Айти-Событие
Россия. Санкт-Петербург
http://it-sobytie.ru/events/3120
Denis Bosak (Magecom): Front-end in Magento, and more. Prospects, technologies, and tools.
Денис Босак (Magecom): Front-end в Magento и не только. Перспективы, технологии, инструменты.
Open Source Testing Framework: real project example and best practicesAliaksandr Ikhelis
Summary: Presentation on open source testing frameworks (improved version, more focus on real project example) at Software Engineering Forum 2009 (SEF-1) conference by Aliaksandr Ikhelis. Sponte framework developer and owner is Stanislaw Wozniak, Expedia Limited, UK. Sponte project homepage: http://rubyforge.org/projects/sponte/; http://github.com/swozniak/sponte/tree/master
Looking to make your document processing operations more effective and cost-efficient with AI/ML? Learn from the experts of Provectus and Amazon Web Services (AWS) how to choose the right solution for your company! We will look into the management and engineering perspectives of AI document processing, from industry use cases and the solution map to our unique methodology for assessing available document processing solutions to Provectus IDP. Whether you are looking for a ready-made solution or you plan to build a custom solution of your own, this webinar will help you find the best option for your business.
Agenda
- Introductions
- Industry use cases
- Intelligent Document Processing (IDP) overview
- IDP Solutions map
- AWS IDP Solution
- Provectus IDP Platform
- Q&A
Intended Audience
Technology executives and decision makers, including such roles as CIO, CCO, COO, and CDO; digital transformation managers; data and ML engineers.
Presenters
Almir Davletov, IDP Subject Matter Expert, Provectus
Yaroslav Tarasyuk, Business Development, Provectus
Sonali Sahu, Sr. Solutions Architect, AWS
Interested? Learn more about Provectus Intelligent Document Processing Solution: https://provectus.com/document-processing-solution/
Intelligent Document Processing in Healthcare. Choosing the Right Solutions.Provectus
Healthcare organizations generate piles of documents and forms in different formats, making it difficult to achieve operational excellence and streamline business processes. Manual entry and OCR are no longer viable, and healthcare entities are looking for new solutions to handle documents.
In this presentation you can learn about:
- Healthcare document types and use cases
- IDP framework: building blocks for document processing solutions
- The document processing market landscape
- Methodology for solution evaluation: comparing apples to apples
Whether you are looking for a ready-made solution or plan to build a custom solution of your own, this webinar will help you find the best fit for your healthcare use cases.
Choosing the Right Document Processing Solution for Healthcare OrganizationsProvectus
Looking to automate document processing in your healthcare organization? Learn from Provectus & AWS experts how to make data capture, conversion, and analytics more efficient. Process and manage documents faster and on a larger scale with AI & Machine Learning.
In this presentation, we offer management and engineering perspectives on document processing with AI, to help you explore available options. Whether you are looking for a ready-made solution or plan to build a custom solution of your own, this webinar will help you find the best fit for your healthcare use cases.
MLOps and Data Quality: Deploying Reliable ML Models in ProductionProvectus
Looking to build a robust machine learning infrastructure to streamline MLOps? Learn from Provectus experts how to ensure the success of your MLOps initiative by implementing Data QA components in your ML infrastructure.
For most organizations, the development of multiple machine learning models, their deployment and maintenance in production are relatively new tasks. Join Provectus as we explain how to build an end-to-end infrastructure for machine learning, with a focus on data quality and metadata management, to standardize and streamline machine learning life cycle management (MLOps).
Agenda
- Data Quality and why it matters
- Challenges and solutions of Data Testing
- Challenges and solutions of Model Testing
- MLOps pipelines and why they matter
- How to expand validation pipelines for Data Quality
AI Stack on AWS: Amazon SageMaker and BeyondProvectus
Looking to learn more about AWS AI stack? Join experts from Provectus & AWS to find out how to use Amazon SageMaker (with combination with other tools and services) to enable enterprise-wide AI.
Companies are looking to scale and become more productive when it comes to AI and data initiatives. They seek to launch AI projects more rapidly, which, among many other factors, requires a robust machine learning infrastructure. In this webinar, you will learn how to create a canonical SageMaker workflow, expand the SageMaker workflow to a holistic implementation, enhance and expand the implementation using best practices for feature store, data versioning, ML pipeline orchestration, and model monitoring.
Agenda
- Introductions
- Amazon SageMaker Overview
- Real-World Use Case
- Data Lake for Machine Learning
- Amazon SageMaker Experiments
- Orchestration Beyond SageMaker Experiments
- Amazon SageMaker Debugger
- Amazon SageMaker Model Monitor
- Webinar Takeaways
Intended audience
Technology executives & decision makers, manager-level tech roles, data engineers & data scientists, ML practitioners & ML engineers, and developers
Presenters
- Stepan Pushkarev, Chief Technology Officer, Provectus
- Pritpal Sahota, Technical Account Manager, Provectus
- Christopher A. Burns, Sr. AI/ML Solution Architect, AWS
Feel free to share this presentation with your colleagues and don't hesitate to reach out to us at info@provectus.com if you have any questions!
REQUEST WEBINAR: https://provectus.com/ai-stack-on-aws-sagemaker-and-beyond-mar-2020/
Feature Store as a Data Foundation for Machine LearningProvectus
Looking to design and build a centralized, scalable Feature Store for your Data Science & Machine Learning teams to take advantage of? Come and learn from experts of Provectus and Amazon Web Services (AWS) how to!
Feature Store is a key component of the ML stack and data infrastructure, which enables feature engineering and management. By having a Feature Store, organizations can save massive amounts of resources, innovate faster, and drive ML processes at scale. In this webinar, you will learn how to build a Feature Store with a data mesh pattern and see how to achieve consistency between real-time and training features, to improve reproducibility with time-traveling for data.
Agenda
- Modern Data Lakes & Modern ML Infrastructure
- Existing and Emerging Architectural Shifts
- Feature Store: Overview and Reference Architecture
- AWS Perspective on Feature Store
Intended Audience
Technology executives & decision makers, manager-level tech roles, data architects & analysts, data engineers & data scientists, ML practitioners & ML engineers, and developers
Presenters
- Stepan Pushkarev, Chief Technology Officer, Provectus
- Gandhi Raketla, Senior Solutions Architect, AWS
- German Osin, Senior Solutions Architect, Provectus
Feel free to share this presentation with your colleagues and don't hesitate to reach out to us at info@provectus.com if you have any questions!
REQUEST WEBINAR: https://provectus.com/webinar-feature-store-as-data-foundation-for-ml-nov-2020/
MLOps and Reproducible ML on AWS with Kubeflow and SageMakerProvectus
Looking to implement MLOps using AWS services and Kubeflow? Come and learn about machine learning from the experts of Provectus and Amazon Web Services (AWS)!
Businesses recognize that machine learning projects are important but go beyond just building and deploying models, which is mostly done by organizations. Successful ML projects entail a complete lifecycle involving ML, DevOps, and data engineering and are built on top of ML infrastructure.
AWS and Amazon SageMaker provide a foundation for building infrastructure for machine learning while Kubeflow is a great open source project, which is not given enough credit in the AWS community. In this webinar, we show how to design and build an end-to-end ML infrastructure on AWS.
Agenda
- Introductions
- Case Study: GoCheck Kids
- Overview of AWS Infrastructure for Machine Learning
- Provectus ML Infrastructure on AWS
- Experimentation
- MLOps
- Feature Store
Intended Audience
Technology executives & decision makers, manager-level tech roles, data engineers & data scientists, ML practitioners & ML engineers, and developers
Presenters
- Stepan Pushkarev, Chief Technology Officer, Provectus
- Qingwei Li, ML Specialist Solutions Architect, AWS
Feel free to share this presentation with your colleagues and don't hesitate to reach out to us at info@provectus.com if you have any questions!
REQUEST WEBINAR: https://provectus.com/webinar-mlops-and-reproducible-ml-on-aws-with-kubeflow-and-sagemaker-aug-2020/
Cost Optimization for Apache Hadoop/Spark Workloads with Amazon EMRProvectus
Considering new ways and options for reducing operational costs and scaling flexibility of your Apache Hadoop/Spark? Try migrating to Amazon EMR!
On-premises Apache Hadoop/Spark clusters are among the top sources of financial pressure for businesses. IT organizations want to reduce spend while still meeting demand, to keep their legacy data applications up and running. Come and learn from experts at Provectus & AWS how you can use Amazon EMR to start driving cost efficiencies in your organization!
Agenda
- Hadoop market and cost optimizations using Amazon EMR
- Cost related and other challenges of on-prem Hadoop clusters
- Cost optimizations by using Amazon EMR and migration best practices
Intended audience
Technology executives & decision makers, manager-level tech roles, data engineers & data scientists, and developers
Presenters
- Stepan Pushkarev, Chief Technology Officer, Provectus
- Pritpal Sahota, Technical Account Manager, Provectus
- Nirav Shah, Senior Solutions Architect, AWS
- Perry Peterson, Business Development Manager, AWS
Feel free to share this presentation with your colleagues and don't hesitate to reach out to us at info@provectus.com if you have any questions!
REQUEST WEBINAR: https://provectus.com/cost-optimization-for-apache-hadoop-spark-workloads-with-amazon-emr-june-2020/
ODSC webinar "Kubeflow, MLFlow and Beyond — augmenting ML delivery" Stepan Pu...Provectus
What's a machine learning workflow? What open source tools can you use to automate ML workflow?
Reproducible ML pipelines in research and production with monitoring insights from live inference clusters could enable and accelerate the delivery of AI solutions for enterprises. There is a growing ecosystem of tools that augment researchers and machine learning engineers in their day to day operations.
Still, there are big gaps in the machine learning workflow when it comes to training dataset versioning, training performance and metadata tracking, integration testing, inferencing quality monitoring, bias detection, concept drift detection and other aspects that prevent the adoption of AI in organizations of all sizes.
"Building a Modern Data platform in the Cloud", Alex Casalboni, AWS Dev Day K...Provectus
AWS Dev Day Kyiv 2019
Track: Analytics & Machine Learning
Session: "Building a Modern Data platform in the Cloud"
Speaker: Alex Casalboni, AWS Technical Evangelist
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/HIDnAG9AxZo
"How to build a global serverless service", Alex Casalboni, AWS Dev Day Kyiv ...Provectus
AWS Dev Day Kyiv 2019
Track: Modern Application Development
Session: "How to build a global serverless service"
Speaker: Alex Casalboni, AWS Technical Evangelist
Level: 400
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/Q19B-NTkMfk
"Automating AWS Infrastructure with PowerShell", Martin Beeby, AWS Dev Day Ky...Provectus
AWS Dev Day Kyiv 2019
Track: Backend & Architecture
Session: "Automating AWS Infrastructure with PowerShell"
Speaker: Martin Beeby, AWS Principle Evangelist
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/rgIjjK2J4dQ
"Analyzing your web and application logs", Javier Ramirez, AWS Dev Day Kyiv 2...Provectus
AWS Dev Day Kyiv 2019
Track: Analytics & Machine Learning
Session: "Analyzing your web and application logs"
Speaker: Javier Ramirez, AWS Technical Evangelist
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/IpEhEs1sXeg
"Resiliency and Availability Design Patterns for the Cloud", Sebastien Storma...Provectus
AWS Dev Day Kyiv 2019
Track: Backend & Architecture
Session: "Resiliency and Availability Design Patterns for the Cloud"
Speaker: Sebastien Stormacq, AWS Technical Evangelist
Level: 400
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/O8gonQCJawU
"Architecting SaaS solutions on AWS", Oleksandr Mykhalchuk, AWS Dev Day Kyiv ...Provectus
AWS Dev Day Kyiv 2019
Track: Backend & Architecture
Session: ""Architecting SaaS solutions on AWS""
Speaker: Oleksandr Mykhalchuk, Director of DevOps & Cloud Services at Softserve
Level: 300
Video: https://youtu.be/3lKoe-ts8Qs
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
"Developing with .NET Core on AWS", Martin Beeby, AWS Dev Day Kyiv 2019Provectus
AWS Dev Day Kyiv 2019
Track: Modern Application Development
Session: "Developing with .NET Core on AWS"
Speaker: Martin Beeby, AWS Principle Evangelist
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/OzM8L7H1LmA
"How to build real-time backends", Martin Beeby, AWS Dev Day Kyiv 2019Provectus
AWS Dev Day Kyiv 2019
Track: Backend & Architecture
Session: "How to build real-time backends"
Speaker: Martin Beeby, AWS Principle Evangelist
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://youtu.be/bsZYA6V3bDA
"Integrate your front end apps with serverless backend in the cloud", Sebasti...Provectus
AWS Dev Day Kyiv 2019
Track: Modern Application Development
Session: "Integrate your front end apps with serverless backend in the cloud"
Speaker: Sebastien Stormacq, AWS Technical Evangelist
Level: 200
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://www.youtube.com/watch?v=6z43H11qoU8&t=1s
"Scaling ML from 0 to millions of users", Julien Simon, AWS Dev Day Kyiv 2019Provectus
AWS Dev Day Kyiv 2019
Track: Analytics & Machine Learning
Session: ""Scaling ML from 0 to millions of users""
Speaker: Julien Simon, Global AI & Machine Learning Evangelist at AWS
Level: 300
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
Video: https://www.youtube.com/watch?v=N73u1mx9DqY
How to implement authorization in your backend with AWS IAMProvectus
AWS Dev Day Kyiv 2019
Track: Backend & Architecture
Session: ""How to implement authorization in your backend with AWS IAM""
Speaker: Stas Ivaschenko, AWS solutions architect at Provectus
Level: 400
Video: https://www.youtube.com/watch?v=4Jje_WJ4V7Q
AWS Dev Day is a free, full-day technical event where new developers will learn about some of the hottest topics in cloud computing, and experienced developers can dive deep on newer AWS services.
Provectus has organized AWS Dev Day Kyiv in close collaboration with Amazon Web Services: 800+ participants, 18 sessions, 3 tracks, a really AWSome Day!
Now, together with Zeo Alliance, we're building and nurturing AWS User Group Ukraine — join us on Facebook to stay updated about cloud technologies and AWS services: https://www.facebook.com/groups/AWSUserGroupUkraine
"
2. Provectus
PHP Java .NET Java
Script
Cloud Services
iOS Android Ruby J2EE QA
Provectus – международная R&D компания, предоставляющая полный комплекс услуг по разработке
программного обеспечения для корпоративного сегмента, мобильных платформ и WEB по всему
миру.
4. Тема доклада
Разработка Desktop приложений на Node.js и HTML5
• “Чoooo за дичь?”. Аргументы почему это имеет право на жизнь
• Короткая история сабжа
• Доступные технологии на сегодня. Как сделать правильный выбор?
• API
• Фатальные недостатки
• Подводим итоги
www.provectus.com
5. Реакция “тру” разработчиков на технологию
www.provectus.com
А как насчет серьезных и популярных GUI Frameworks?
QT5, GTK+, WPF, Windows Forms и т.п.
6. Десктопные приложения на JavaScript
Почему это имеет право на жизнь?
www.provectus.com
• Низкий порог вхождения. Ниже только дно
• Скорость разработки
• Кроссплатформенность (Windows, Mac, Linux и … Android,
iOS?)
• Дизайн приложения ограничен вашей фантазией.
• Хорошая производительность
• Возможность использовать нативные модули (nodegyp)
• Примеры успешных приложений
7. Десктопные приложения на JavaScript
www.provectus.com
Slack Popcorn Time Visual Studio Code Atom Editor
Web TorrentSimplenote KitematicNylas N1
Wire
Avocode
8. Вечер “интересных” историй
Круговорот JavaScript в природе
www.provectus.com
• 1995 г. - Брендан Эйх из Netscape написал клиентский язык
LiveScript который для хайпа назвали JavaScript
• 1996 г. - К сотрудникам Netscape приходит гениальная идея -
попробовать вынести JavaScript на сервер (Server-side JavaScript
— SSJS), но не взлетело.
• 2002 - 2004 - Netscape умер! Да здравствует Netscape Mozilla
Firefox
• 2008 - Google создает….
• 1999 - Microsoft создает Internet Explorer 5 c возможностью
сохранять и открывать страницы в формате веб-архива MHTML
и …………
9. Вечер “интересных” историй
Встречайте! HTA
www.provectus.com
HTML Application (HTA) - приложение Microsoft Windows, написанное на HTML или
Dynamic HTML. Бизнес логика на JavaScript и VBScript (VisualBasic Script)
Главная особенность - запуск безопасного (на 1999 год хм хм) приложения с
повышенными привилегиями, как CRUD файлов в файловой системе и доступ к
системному реестру.
11. Вечер “интересных” историй
www.provectus.com
• 1999 г. - HTA
• 2008 г. - Google разработал JavaScript движок под
названием V8 и включил его в свежеиспеченный браузер
chromium.
• 2009 г. - Ничто не ново под солнцем. В этом году Райан
Дал таки запустил JavaScript (V8) на сервере и закончил
дело начатое когда-то Netscape. Добавил API и обозвал
свое поделие Node.js.
• 1 ноября 2011 г. …
Круговорот JavaScript в природе
12. Вечер “интересных” историй
1 ноября 2011 - родился Node Webkit
www.provectus.com
Roger Wang
Жил был себе веселый китаец по
имени Роджер и по фамилии Ванг.
Работал себе Роджер тихонько в
Интеловоском Центре Опен Сурсных
Технологий и никого не трогал.
Но однажды ему пришла идея ….
А что если Node.js засунуть
обратно
в chromium …и завертелось
13. Вечер “интересных” историй
…тем временем в Иране 1 апреля 2012 года
www.provectus.com
Morteza Milani
из Тегерана
Ali Farhadi
из Mashhad
Начали писать AppJS
14. Вечер “интересных” историй
Aпрель 2013
в гонку вступает GitHub
и создает AtomShell …
….а спустя 2 года
в апреле 2015
переименовывает проект в
Electron
www.provectus.com
P.S. Проект догнал NW.js за счет того, что первым
поддержал IO.js
15. Вечер “интересных” историй
Кто остался в живых к 2016?
www.provectus.com
NW.js (Node-Webkit) by Intel Electron.js by GitHub
Умерли или в состоянии “при смерти” - appJS и Tint2
18. Сравнение Electron.js vs NW.js (1)
www.provectus.com
NW.js 0.17.3 Electron 1.4.0
Browser Runtime Chromium libchromiumcontent
Node.js Version Node 6.5.0 6.5.0
Chromium Version 53.0.2785.116 53.0.2785.113
V8 5.3.332.45 5.3.332.45
Entry Point HTML or JavaScript (Chrome Apps) JavaScript
Base Distribution Size 158MB (59MB zipped) 120MB (44MB zipped)
Architecture Support
32bit (Win), 64bit (Win/Mac, Linux) & arm (limited)
Windows XP Support - In LTS
version (0.14.x)
Windows 7+ (x86 and x64)
Mac OS X.6 - In LTS version (0.14.x) Mac OS X.9 +
Support of chrome.* APIs Yes No
Plugin Support NaCL, Pepper (PPAPI) Pepper (PPAPI)
Chrome Apps Support Yes No
http://tangiblejs.com/posts/nw-js-and-electron-compared-2016-edition
19. Сравнение Electron.js vs NW.js (1)
www.provectus.com
NW.js 0.17.2 Electron 1.3.5
App signing Yes Yes
Source Code Protection V8 Snapshot
ASAR Archive Support
(V8 snapshot coming soon)
Auto-update custom plugins? Mac/Win Yes
Crash Reporting No Yes
PDF Viewer Yes Using pdf.js
SSL Client Certificate Yes Partial
Print Preview Yes No
DevTools Extension
Support
Yes
Debugging DevTools + extensions Dedicated Devtron Module
Building tools Yes Yes
Open Codecs/Containers Vorbis, Theora, Opus, VP8, VP9, PCM, Ogg, WebM, WAV
Licensed Codecs MP3, MP4, H.264, AAC
Issue Resolution Time 7 days 1 day
22. Сравнение Electron.js vs NW.js
Но не спешите с
выводами!
www.provectus.com
ЗНАТОКИ! ВНИМАНИЕ
ВОПРОС:
В чем кроется
причина такого
различия?
23. Сравнение Electron.js vs NW.js
ОТВЕТ
www.provectus.com
NW.js -> Chromium
Electron.js -> libchromiumcontent
libchromiumcontent - shared library.
Chromium Content module и все зависимости (как например Blink, V8, …)
24. Сравнение Electron.js vs NW.js
www.provectus.com
• Точка входа - NW.js ближе к браузерному подходу, точка входа html
файл. Electron.js ближе к nodejs - точка входа js файл. Загрузка html
через API.
• Сборка проекта - собрать весь chromium достаточно непросто. NW.js
полностью склонировал chromium. Electron.js использует специальную
библиотеку, позволяющую использовать только необходимые
зависимости и подключать функционал в виде модулей. Быстрая
сборка даже на средней машине.
• NodeJS интеграция - NW.js вынужден постоянно патчить chromium.
Electron нашел способ этого избежать по-своему подключив libuv loop.
• Multi-context - NW.js имеет 2 типа JS контекста Browser Context и
Node Context из за своей архитектуры (+web workers(browser) context).
Electron - использует “нодовксий” multi-context
Список ключевых отличий
25. NW.js
www.provectus.com
Немного о контексте
NW.js запускается в режиме Chrome App c протоколом chrome-extension://
Browser Context - по сути API которое предоставляет браузер как если бы вы
делали обычное web приложение в chrome. К этому контексту имеют доступ все
скрипты которые подключаются в index.html (точка входа).
Node Context - по сути API Node.js. Пример:
> global === window
> false
NW.js при старте по умолчанию автоматически загружает невидимую бекграунд
страницу и каждый модуль который вы подключаете через require() будет иметь
Node Context.
Некоторые обьекты из Node Context были скопированы в Browser Context. Но
само Web Api не доступно из Node Context.
Несмотря на все можно включить Mixed Context Mode.
29. API
некоторые примеры для Electron
www.provectus.com
• Frameless Window - можно задавать размер окна(мин, макс), включать и
выключать рамки. Изменять стиль titleBar под мак. Прозрачность
(артефакты под мак и линукс)
• Dialog - нативные диалоговые окна как открыть и сохранить файл, alert…
• Tray - возможность поместить иконку приложения в трей с возможностью
отображения меню по клику
• Menu и MenuItem - Возможность создать главное и контекстное меню с
вложенным меню
• globalShortcut - можно управлять глобальными хоткеями. (осторожно)
• clipboard - доступ к буферу обмена
• shell - модуль для глубокой desktop интеграции. Можно например показать
файл в папке, открыть ссылку, удалить файл в коризну или проиграть бип
звук
• crashReporter - отпрака отчетов о падениях приложения
• autoUpdater - модуль для обновления вашего приложения (quitAndInstall)
31. API
некоторые примеры для Electron
www.provectus.com
• Frameless Window - можно задавать размер окна(мин, макс), включать и
выключать рамки. Изменять стиль titleBar под мак. Прозрачность
(артефакты под мак и линукс)
• Dialog - нативные диалоговые окна как открыть и сохранить файл, alert…
• Tray - возможность поместить иконку приложения в трей с возможностью
отображения меню по клику
• Menu и MenuItem - Возможность создать главное и контекстное меню с
вложенным меню
• globalShortcut - можно управлять глобальными хоткеями. (осторожно)
• clipboard - доступ к буферу обмена
• shell - модуль для глубокой desktop интеграции. Можно например показать
файл в папке, открыть ссылку, удалить файл в коризну или проиграть бип
звук
• crashReporter - отпрака отчетов о падениях приложения
• autoUpdater - модуль для обновления вашего приложения (quitAndInstall)
33. Electron
Быстрый старт ч.1
www.provectus.com
# simple project structure
your-app/
── package.json
── main.js
└── index.html
# package.json
{
"name" : "your-app",
"version" : "0.1.0",
"main" : "main.js"
}
# Clone this repository
$ git clone https://github.com/electron/electron-quick-start
# Go into the repository
$ cd electron-quick-start
# Install dependencies and run the app
$ npm install && npm start
или
34. Electron
Быстрый старт ч.2
www.provectus.com
const {app, BrowserWindow} = require('electron')
// Keep a global reference of the window object, if you don't, the window will
// be closed automatically when the JavaScript object is garbage collected.
let win
function createWindow () {
win = new BrowserWindow({width: 800, height: 600})
// and load the index.html of the app.
win.loadURL(`file://${__dirname}/index.html`)
// Emitted when the window is closed.
win.on('closed', () => {
win = null
})
}
app.on('ready', createWindow)
35. Electron
Быстрый старт ч.3
www.provectus.com
// Quit when all windows are closed.
app.on('window-all-closed', () => {
// On macOS it is common for applications and their menu bar
// to stay active until the user quits explicitly with Cmd + Q
if (process.platform !== 'darwin') {
app.quit()
}
})
app.on('activate', () => {
// On macOS it's common to re-create a window in the app when the
// dock icon is clicked and there are no other windows open.
if (win === null) {
createWindow()
}
})
36. Electron
Быстрый старт ч.4
www.provectus.com
$ electron .
Запуск и сборка (к примеру electron-builder)
"build": {
"appId": "your.id",
"category": "your.app.category.type",
"win": {
"iconUrl": "(windows-only) https link to icon"
}
}
"scripts": {
"pack": "build --dir",
"dist": "build"
}
37. Фатальные и не очень недостатки
www.provectus.com
• Размер имеет значение
• Скорость запуска и выполнения
• Темы оформления (windows live color themes, linux
themes)
• Баги на разных дистрибутивах linux
• Не поддерживает MacOs Vibrance effect (blur)
• Некоторые элементы дизайна не возможно правильно
реализовать
• Безопасность исходного кода
• JavaScript (Node.js)
38. Фатальные и не очень недостатки
www.provectus.com
Пример1
39. Фатальные и не очень недостатки
Пример 2
www.provectus.com
40. Итог
Мое ИМХО
www.provectus.com
• Оба проэкта имеют право на жизнь
• Выбирать в зависимости от нужной функциональности
• Недостатки есть, но их не так много.
• Преимущества превышают недостатки
• Я бы выбрал electron.