An introduction to Google's PRPL pattern that can be used to implement Progressive Web Applications. Delivered at MWLUG 2017 in Alexandria, VA by Keith Strickland.
Optimizing web app delivery speed with PRPL pattern. Interactive demo with Webpack and React sample code. Project available with an incremental 7-step process for free on GitHub. Presentation from Split.JS Meetup.
GitHub project: https://github.com/ModusCreateOrg/react-dynamic-route-loading-es6/tree/steps/6-no-helmet-scripttags
This document provides an introduction to web components and discusses their benefits. It explains that web components bring a native component model to HTML, allowing for reusable UI functionality both within and across applications. The document demonstrates several types of web components, including custom elements, HTML templates, HTML imports, and shadow DOM. It also discusses browser support for web components and strategies for improving support, such as using polyfills.
Measure and Increase Developer Productivity with Help of Serverless at Server...Vadym Kazulkin
The goal of Serverless is to focus on writing the code that delivers business value and offload everything else to your trusted partners (like Cloud providers or SaaS vendors). You want to iterate quickly and today’s code quickly becomes tomorrow’s technical debt. In this talk we will show why Serverless adoption increases the developer productivity and how to measure it. We will also go through AWS Serverless architectures where you only glue together different Serverless managed services relying solely on configuration, minimizing the amount of the code written.
TechSEO Boost 2018: Implementing Hreflang on Legacy Tech Stacks Using Service...Catalyst
One of the challenges faced at enterprise SEO level is often the legacy platforms and tech stacks that you inherit. Finding a cost-effective way of implementing international SEO best practice is often a barrier to internationalisation. Edge technology is creating new opportunities to optimise websites independently of the inherited technological barriers. In this session, SALT.agency’s Dan Taylor will explore their findings from implementing Hreflang using cutting edge technology to remove these barriers.
STP 2014 - Lets Learn from the Top Performance Mistakes in 2013Andreas Grabner
1) Performance issues often stem from architectural decisions, disconnected teams, flawed implementations, pushing changes without proper planning, blindly reusing components, and lack of agile deployment practices.
2) Common metrics that help identify performance problems include number of requests/user, log messages, exceptions, objects allocated/in cache and cache hit ratio, images, SQL statements, SQLs per request, HTTP status codes, and page size.
3) Tracking key performance indicators and metrics across automated unit and performance tests can help identify regressions and keep performance/architecture in check.
This document discusses Javascript performance metrics and optimization. It covers:
1. Measuring performance is important and should be done often.
2. There are many frontend frameworks and Javascript is the most popular language, leading to performance being critical.
3. Several studies show that even small improvements to page speed can significantly increase user engagement and conversions.
4. The document provides various tools and techniques for measuring and improving performance, including RAIL principles, Lighthouse, WebPageTest, and analyzing network requests, rendering, and computation.
TechSEO Boost 2018: Programming Basics for SEOsCatalyst
Learn to code! You’ve heard it before, but starting seems like a monumental undertaking. It’s not. And, even a basic understanding of programming can pay off immensely. You’d be surprised by how much more efficiently and effectively you can work with your developer counterparts once you have a few easy concepts down. In this session, Catalyst’s Paul Shapiro will help get you started. Paul will discuss the fundamental components that make up a computer program and how you can easily leverage them to improve your work as an SEO. You’ll learn about basic concepts like loops, variables, if-else statements, functions, and arrays (they sound scarier than they are!), how to identify specific marketing tasks you do today that can benefit from basic programming skills and knowledge, how to pick your first programming language, and more.
Rendering strategies: Measuring the devil's details in core web vitals - Jam...Jamie Indigo
Core Web Vital are the results of how we render a page. For all this buzz, the battlefield fits in your pocket.
The battle field for CWV is the initial viewport AKA above the fold
CWV are diagnostic output, the result of how quick we complete the critical rendering path.
How we render affects how quickly we achieve the critical rendering path.
Measuring Front-End Performance - What, When and How?Gareth Hughes
This document discusses front-end performance measurement. It recommends measuring performance at every stage of a project's lifecycle using both synthetic and real user monitoring tools. Key metrics to measure include time to first byte, speed index, user timings. Both types of tools provide valuable but different insights and should be used together. Performance data should be reported visually through dashboards to make it relevant and actionable. The goal is to establish a "culture of performance" and catch problems early.
WordPress on the Jamstack by rtCamper Muhammad Muhsin @ WordPress Colombo MeetuprtCamp
Jamstack sites have received huge popularity lately. Muhammad Muhsin has explored WordPress as a viable back-end API for Jamstack, which turned out to be a great solution. He has built multiple Jamstack sites using WordPress for data via REST API or GraphQL.
In this session, Muhammad introduces WordPress as an API for Jamstack sites.
Web Performance Madness - brightonSEO 2018Bastian Grimm
My talk from brightonSEO 2018 covering various web performance strategies, this time mainly focussing on critical rendering path, various image optimisation strategies as well as how to handle custom web fonts.
Better and Faster: A Journey Toward Clean Code and EnjoymentChris Holland
Video: http://bit.ly/tdd-talk-2
This slideshow has links, download the PDF to click them.
While this presentation touches on PHP a fair bit, it does make parallels to other ecosystems such as Java and C#/.Net, building toward an approach for building Web Applications in a Test-Driven way.
Have you ever jumped into a legacy software project and gotten to a point where it takes a near-infinite amount of time to deliver any new feature, for fear of breaking legacy functionality you’ve barely begun to understand? Software Engineering can be extremely difficult and maddening. But it doesn’t have to be. We will explore leveraging TDD and OOP principles to make Software Engineering fun again.
Coding exercises supporting this presentation are available here:
http://bit.ly/tdd-vids
Super speed around the globe - SearchLeeds 2018Bastian Grimm
My talk covering some of the very latest in web performance optimisation (paint timings, critical rendering path, custom web fonts, etc.) for technical marketers & SEOs from SearchLeeds 2018.
EuroPython 2011 - How to build complex web applications having fun?Andrew Mleczko
Web development is a complexity challenge nowadays. Growing number of functionalities results in customer expectations increase which makes project design more difficult. Using proper tools that suite your customer needs is essential.
This talk is about successful story using closely together Pyramid and Plone. Basing on these examples you will see the main reasons for using Plone as a CMS only and letting Pyramid do the rest (vertical application).
Measure and increase developer productivity with help of Severless by Kazulki...Vadym Kazulkin
The goal of Serverless is to focus on writing the code that delivers business value and offload everything else to your trusted partners (like Cloud providers or SaaS vendors). You want to iterate quickly and today’s code quickly becomes tomorrow’s technical debt. In this talk we will show why Serverless adoption increases the developer productivity and how to measure it. We will also go through AWS Serverless architectures where you only glue together different Serverless managed services relying solely on configuration, minimizing the amount of the code written.
Cloud Spin is a demo that a team of Googlers developed to showcase the Google Cloud Platform. The demo consists of 19 Android mobile phones placed in a half-circle to create a frozen-in-time 180 degree animated GIF. See examples at @googlecloudspin on Twitter! Googler Bret McGowen walks through how the team (himself, Francesc Campoy, Kathy Kam, Ray Tsang) built the demo using a wide range of technologies: cloud, Android, Firebase, JavaScript, and more!
17 Web Performance Metrics You Should Care AboutEvgeny Tsarkov
This document discusses 17 key web performance metrics across four categories: front-end user experience metrics, backend performance metrics, content complexity metrics, and advanced monitoring tips. It provides descriptions and average metrics for each, including time to title, time to start render, DNS time, connection time, asset weights, counts, and number of domains. The document emphasizes that measuring these metrics through continuous monitoring provides knowledge to optimize performance and improve the user experience. Advanced monitoring tips include setting service level agreements, defining performance issues, and automating alerts.
Say you have an existing app that uses Firebase. But now you want to add payment processing, image processing, send push notifications, or other functionality that really can't be done in the app itself. How can you do these things without spinning up your own servers? Firebase has you covered. In this codelab you learn how to write JavaScript functions that run in response to events that happen in Firebase. You then deploy these functions to Cloud Functions for Firebase, where they run auto-scaled on Google's infrastructure. To get the most value out of attending, be sure to have Node.js and npm installed on your machine along with your favorite text editor.
This document discusses ways to improve web performance for mobile users. It outlines goals like achieving a speed index between 1,100-2,500 and first meaningful paint within 1-3 seconds. Various techniques are presented for hacking first load times, data transfer, resource loading, images and user experience. These include avoiding redirects, using HTTP/2 and service workers, modern cache controls, responsive images, preloading resources, and ensuring consistent frame rates. The overall message is that mobile performance needs more attention given average load times and high bounce rates on slow mobile sites.
What do the terms serverless, containers, and virtual machines mean? Which should I use to build my app? The answer (as always) is "it depends." In this session learn the tradeoffs between these different approaches, whether you're building your app from scratch or want to move an existing web or mobile application to the cloud. We'll discuss open source tools such as Kubernetes, Istio, and Knative, and we'll discuss Google Cloud Platform tools like Compute Engine, Google Kubernetes Engine (GKE), App Engine, and Cloud Functions.
Why every startup built with Ruby on Rails has an upper hand over their compe...DreamToIPO
Why every startup built with Ruby on Rails has an upper hand over their competitors - Built with ruby on rails, Ruby on Rails development specialist, startup ruby on rails development company.
Grblas is a Python package that provides a high-level API for GraphBLAS. It decomposes monolithic C GraphBLAS calls into compositions of Python expressions to avoid unnecessary computations. Grblas aims to make GraphBLAS more accessible by removing the need to specify descriptors explicitly and allowing GraphBLAS operations to be expressed naturally in Python notation. The API is thoroughly tested and aims to be stable going forward.
This document provides an overview and agenda for an introductory course on web development. It introduces the basic hardware and protocols that power the internet, including switches, routers, IP addresses, DNS, and HTTP. It outlines the course goals of introducing web development teams and processes. The course structure is described, including weekly lectures, exercises, and group projects. The instructor's background is provided. Homework involving a video, system profiling, and setting up accounts is assigned to prepare for the next class.
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Katie Sylor-Miller
Raiders of the Fast Start: Frontend Performance Archeology
There are a lot of books, articles, and online tutorials out there with fantastic advice on how to make your websites performant. It all seems easy in theory, but applying best practices to real-world code is anything but straightforward. Diagnosing and fixing frontend performance issues on a large legacy codebase is like being an archaeologist excavating the remains of a lost civilization. You don’t know what you will find until you start digging!
Pick up your trowels and come along with Etsy’s Frontend Systems team as we become archaeologists digging into frontend performance on our large, legacy mobile codebase. I’ll share real-life lessons you can use to guide your own excavations into legacy code:
What tools and metrics we used to diagnose issues and track progress.
How we went beyond server-driven best practices to focus on the client.
Which fixes successfully increased conversion, and which didn’t.
Our work, like all good archaeology, went beyond artifacts and unearthed new insights into our culture. We at Etsy pride ourselves on our culture of performance, but, like all cultures, it needs to adapt and reinvent itself to account for changes to the landscape. Based on what we’ve learned, we are making the case for a new, organization-wide, frontend-focused performance culture that will solve the problems we face today.
Behavior Driven Web UI Automation with Selenium and Cucumber/SpecFlow (BDDx L...Gáspár Nagy
BDD is a method that focuses on defining the requirements based on the expected behavior; DDD is a method that uses a ubiquitous language all across the solution; UX helps design user interactions based on user behavior… and Selenium WebDriver (or similar) is a tool that is mostly used to ignore all these and automate the app using clicks on HTML elements…
In this session you will explore options how to improve testing efficiency by looking at UI automation from a different angle by analyzing and understanding the UI concepts used in the application, matching them to domain model elements and build an automation solution that focuses on these.
Progressive Web Apps (PWAs) provide an app-like user experience on the web by making use of modern web capabilities. PWAs use a web app manifest and service workers to work offline, receive push notifications, and load quickly. The web app manifest allows developers to define how the app should appear to users, while service workers cache assets to provide an app-shell experience regardless of network availability. Tools like sw-precache and sw-toolbox help generate service worker code and implement common caching strategies. By following best practices for manifests, service workers, and other features, web apps can achieve many of the benefits of native mobile apps without needing to be installed from an app store.
Supercharge Application Delivery to Satisfy UsersNGINX, Inc.
Users expect websites and applications to be quick and reliable. A slow user experience can have a significant impact on your business. Join us for this webinar where we will show you a number of ways you can use NGINX and other tools and techniques to supercharge your application delivery, including:
- Client Caching
- Content Delivery Networks (CDN)
- OCSP stapling
- Dynamic Content Caching
View full webinar on demand at http://bit.ly/nginxsupercharge
Rendering strategies: Measuring the devil's details in core web vitals - Jam...Jamie Indigo
Core Web Vital are the results of how we render a page. For all this buzz, the battlefield fits in your pocket.
The battle field for CWV is the initial viewport AKA above the fold
CWV are diagnostic output, the result of how quick we complete the critical rendering path.
How we render affects how quickly we achieve the critical rendering path.
Measuring Front-End Performance - What, When and How?Gareth Hughes
This document discusses front-end performance measurement. It recommends measuring performance at every stage of a project's lifecycle using both synthetic and real user monitoring tools. Key metrics to measure include time to first byte, speed index, user timings. Both types of tools provide valuable but different insights and should be used together. Performance data should be reported visually through dashboards to make it relevant and actionable. The goal is to establish a "culture of performance" and catch problems early.
WordPress on the Jamstack by rtCamper Muhammad Muhsin @ WordPress Colombo MeetuprtCamp
Jamstack sites have received huge popularity lately. Muhammad Muhsin has explored WordPress as a viable back-end API for Jamstack, which turned out to be a great solution. He has built multiple Jamstack sites using WordPress for data via REST API or GraphQL.
In this session, Muhammad introduces WordPress as an API for Jamstack sites.
Web Performance Madness - brightonSEO 2018Bastian Grimm
My talk from brightonSEO 2018 covering various web performance strategies, this time mainly focussing on critical rendering path, various image optimisation strategies as well as how to handle custom web fonts.
Better and Faster: A Journey Toward Clean Code and EnjoymentChris Holland
Video: http://bit.ly/tdd-talk-2
This slideshow has links, download the PDF to click them.
While this presentation touches on PHP a fair bit, it does make parallels to other ecosystems such as Java and C#/.Net, building toward an approach for building Web Applications in a Test-Driven way.
Have you ever jumped into a legacy software project and gotten to a point where it takes a near-infinite amount of time to deliver any new feature, for fear of breaking legacy functionality you’ve barely begun to understand? Software Engineering can be extremely difficult and maddening. But it doesn’t have to be. We will explore leveraging TDD and OOP principles to make Software Engineering fun again.
Coding exercises supporting this presentation are available here:
http://bit.ly/tdd-vids
Super speed around the globe - SearchLeeds 2018Bastian Grimm
My talk covering some of the very latest in web performance optimisation (paint timings, critical rendering path, custom web fonts, etc.) for technical marketers & SEOs from SearchLeeds 2018.
EuroPython 2011 - How to build complex web applications having fun?Andrew Mleczko
Web development is a complexity challenge nowadays. Growing number of functionalities results in customer expectations increase which makes project design more difficult. Using proper tools that suite your customer needs is essential.
This talk is about successful story using closely together Pyramid and Plone. Basing on these examples you will see the main reasons for using Plone as a CMS only and letting Pyramid do the rest (vertical application).
Measure and increase developer productivity with help of Severless by Kazulki...Vadym Kazulkin
The goal of Serverless is to focus on writing the code that delivers business value and offload everything else to your trusted partners (like Cloud providers or SaaS vendors). You want to iterate quickly and today’s code quickly becomes tomorrow’s technical debt. In this talk we will show why Serverless adoption increases the developer productivity and how to measure it. We will also go through AWS Serverless architectures where you only glue together different Serverless managed services relying solely on configuration, minimizing the amount of the code written.
Cloud Spin is a demo that a team of Googlers developed to showcase the Google Cloud Platform. The demo consists of 19 Android mobile phones placed in a half-circle to create a frozen-in-time 180 degree animated GIF. See examples at @googlecloudspin on Twitter! Googler Bret McGowen walks through how the team (himself, Francesc Campoy, Kathy Kam, Ray Tsang) built the demo using a wide range of technologies: cloud, Android, Firebase, JavaScript, and more!
17 Web Performance Metrics You Should Care AboutEvgeny Tsarkov
This document discusses 17 key web performance metrics across four categories: front-end user experience metrics, backend performance metrics, content complexity metrics, and advanced monitoring tips. It provides descriptions and average metrics for each, including time to title, time to start render, DNS time, connection time, asset weights, counts, and number of domains. The document emphasizes that measuring these metrics through continuous monitoring provides knowledge to optimize performance and improve the user experience. Advanced monitoring tips include setting service level agreements, defining performance issues, and automating alerts.
Say you have an existing app that uses Firebase. But now you want to add payment processing, image processing, send push notifications, or other functionality that really can't be done in the app itself. How can you do these things without spinning up your own servers? Firebase has you covered. In this codelab you learn how to write JavaScript functions that run in response to events that happen in Firebase. You then deploy these functions to Cloud Functions for Firebase, where they run auto-scaled on Google's infrastructure. To get the most value out of attending, be sure to have Node.js and npm installed on your machine along with your favorite text editor.
This document discusses ways to improve web performance for mobile users. It outlines goals like achieving a speed index between 1,100-2,500 and first meaningful paint within 1-3 seconds. Various techniques are presented for hacking first load times, data transfer, resource loading, images and user experience. These include avoiding redirects, using HTTP/2 and service workers, modern cache controls, responsive images, preloading resources, and ensuring consistent frame rates. The overall message is that mobile performance needs more attention given average load times and high bounce rates on slow mobile sites.
What do the terms serverless, containers, and virtual machines mean? Which should I use to build my app? The answer (as always) is "it depends." In this session learn the tradeoffs between these different approaches, whether you're building your app from scratch or want to move an existing web or mobile application to the cloud. We'll discuss open source tools such as Kubernetes, Istio, and Knative, and we'll discuss Google Cloud Platform tools like Compute Engine, Google Kubernetes Engine (GKE), App Engine, and Cloud Functions.
Why every startup built with Ruby on Rails has an upper hand over their compe...DreamToIPO
Why every startup built with Ruby on Rails has an upper hand over their competitors - Built with ruby on rails, Ruby on Rails development specialist, startup ruby on rails development company.
Grblas is a Python package that provides a high-level API for GraphBLAS. It decomposes monolithic C GraphBLAS calls into compositions of Python expressions to avoid unnecessary computations. Grblas aims to make GraphBLAS more accessible by removing the need to specify descriptors explicitly and allowing GraphBLAS operations to be expressed naturally in Python notation. The API is thoroughly tested and aims to be stable going forward.
This document provides an overview and agenda for an introductory course on web development. It introduces the basic hardware and protocols that power the internet, including switches, routers, IP addresses, DNS, and HTTP. It outlines the course goals of introducing web development teams and processes. The course structure is described, including weekly lectures, exercises, and group projects. The instructor's background is provided. Homework involving a video, system profiling, and setting up accounts is assigned to prepare for the next class.
Raiders of the Fast Start: Frontend Performance Archaeology - Performance.now...Katie Sylor-Miller
Raiders of the Fast Start: Frontend Performance Archeology
There are a lot of books, articles, and online tutorials out there with fantastic advice on how to make your websites performant. It all seems easy in theory, but applying best practices to real-world code is anything but straightforward. Diagnosing and fixing frontend performance issues on a large legacy codebase is like being an archaeologist excavating the remains of a lost civilization. You don’t know what you will find until you start digging!
Pick up your trowels and come along with Etsy’s Frontend Systems team as we become archaeologists digging into frontend performance on our large, legacy mobile codebase. I’ll share real-life lessons you can use to guide your own excavations into legacy code:
What tools and metrics we used to diagnose issues and track progress.
How we went beyond server-driven best practices to focus on the client.
Which fixes successfully increased conversion, and which didn’t.
Our work, like all good archaeology, went beyond artifacts and unearthed new insights into our culture. We at Etsy pride ourselves on our culture of performance, but, like all cultures, it needs to adapt and reinvent itself to account for changes to the landscape. Based on what we’ve learned, we are making the case for a new, organization-wide, frontend-focused performance culture that will solve the problems we face today.
Behavior Driven Web UI Automation with Selenium and Cucumber/SpecFlow (BDDx L...Gáspár Nagy
BDD is a method that focuses on defining the requirements based on the expected behavior; DDD is a method that uses a ubiquitous language all across the solution; UX helps design user interactions based on user behavior… and Selenium WebDriver (or similar) is a tool that is mostly used to ignore all these and automate the app using clicks on HTML elements…
In this session you will explore options how to improve testing efficiency by looking at UI automation from a different angle by analyzing and understanding the UI concepts used in the application, matching them to domain model elements and build an automation solution that focuses on these.
Progressive Web Apps (PWAs) provide an app-like user experience on the web by making use of modern web capabilities. PWAs use a web app manifest and service workers to work offline, receive push notifications, and load quickly. The web app manifest allows developers to define how the app should appear to users, while service workers cache assets to provide an app-shell experience regardless of network availability. Tools like sw-precache and sw-toolbox help generate service worker code and implement common caching strategies. By following best practices for manifests, service workers, and other features, web apps can achieve many of the benefits of native mobile apps without needing to be installed from an app store.
Supercharge Application Delivery to Satisfy UsersNGINX, Inc.
Users expect websites and applications to be quick and reliable. A slow user experience can have a significant impact on your business. Join us for this webinar where we will show you a number of ways you can use NGINX and other tools and techniques to supercharge your application delivery, including:
- Client Caching
- Content Delivery Networks (CDN)
- OCSP stapling
- Dynamic Content Caching
View full webinar on demand at http://bit.ly/nginxsupercharge
“Progressive Web Apps (PWAs) are web applications that load like regular web pages or websites but can offer the user functionality such as working offline, push notifications, and device hardware access traditionally available only to native mobile applications. PWAs are an emerging technology that combine the open standards of the web offered by modern browsers to provide benefits of a rich mobile experience”
Todays web front-end applications architecture. All resources shared at the end of presentation.
Full sources on:
https://lnkd.in/gyQuFKK
https://lnkd.in/gZK8Sp3
Cloud Services Powered by IBM SoftLayer and NetflixOSSaspyker
This presentation covers our work starting with Acme Air web scale and transitioning to operational lessons learned in HA, automatic recovery, continuous delivery, and operational visibility. It shows the port of the Netflix OSS cloud platform to IBM's cloud - SoftLayer and use of RightScale.
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishKoombea
Can't decide if your organization should build a mobile app or responsive website? Do you interact with consumer-facing products or large scale developments?
This guide gives you an idea of what Responsive is, why you should use it, and then DIGS deep into the technical aspect and how to optimize for performance.
By: David Bohorquez & Rick Nelson
Basic Understanding of Progressive Web AppsAnjaliTanpure1
The document provides an overview of progressive web apps (PWAs). It discusses the history and idea behind PWAs, defining them as websites that are built using common web technologies but adopt features that make them feel like native mobile applications. The key pillars that transform websites into PWAs are listed as being reliable, fast, engaging, and integrated. Core building blocks like service workers and web app manifests are explained. Example case studies are given that demonstrate performance improvements from adopting PWAs. Limitations are also outlined.
This document provides an agenda and overview for an introductory course on web development. The course will cover the hardware and protocols that power the internet, including how typing a URL leads to loading a webpage. It will introduce concepts like IP addresses, DNS, routers, servers, and HTTP. The instructor's background and course structure are outlined, which involves weekly lectures, exercises, and group projects building websites and backend services. Previews of upcoming modules show topics will include JavaScript, databases, APIs, and pitching projects.
Learn how to build your own PWA enabled page in under 5 minutes ⚡️, what SPAs' have to do with PWA and how Shopware implements their headless commerce solution!
The document discusses scaling a web application called Wanelo that is built on PostgreSQL. It describes 12 steps for incrementally scaling the application as traffic increases. The first steps involve adding more caching, optimizing SQL queries, and upgrading hardware. Further steps include replicating reads to additional PostgreSQL servers, using alternative data stores like Redis where appropriate, moving write-heavy tables out of PostgreSQL, and tuning PostgreSQL and the underlying filesystem. The goal is to scale the application while maintaining PostgreSQL as the primary database.
Drupal 8 Lessons From the Field: Part 3 - The Drupal BackendAcquia
This document provides best practices for enhancing backend Drupal development and performance. It discusses the importance of website speed and performance for a good user experience. Common causes of slow performance are outlined, such as Drupal architecture, site planning, custom code, lack of caching, and server configuration. Best practices are then presented for each stage of development including requirements, architecture, implementation, testing, and production deployment. The goal is to understand user needs, select optimal modules, implement caching and other optimizations, conduct thorough testing, and optimize server configuration for high performance.
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Vadym Kazulkin
The goal of Serverless is to focus on writing the code that delivers business value and offload everything else to your trusted partners (like Cloud providers or SaaS vendors). You want to iterate quickly and today’s code quickly becomes tomorrow’s technical debt. In this talk we will show why Serverless adoption increases the developer productivity and how to measure it. We will also go through AWS Serverless architectures where you only glue together different Serverless managed services relying solely on configuration, minimizing the amount of the code written.
The document discusses the goals and development of an online dictionary application being built by three developers called the Giraffes. It aims to provide dictionary functionality through the cloud to replace installed software and reduce disk space usage. The application displays dictionary results for selected text within the browser using JavaScript. Future plans include browser extensions, additional dictionaries, language support, and APIs for other developers and users to integrate new dictionaries.
Progressive Web Apps aim to provide an app-like user experience through features like push notifications, offline support, and installation prompts while maintaining the key web-based advantages of universality, security, and lack of dependence on app stores. They work across browsers using progressive enhancement and rely on modern web APIs like service workers and the web app manifest to provide app-like functionality, falling back to support core content on all platforms through techniques like polyfilling and graceful degradation. While browser support for some features like service workers is still evolving, Progressive Web Apps aim to make high-quality web apps available to all.
Demonstration to show a conversation between ProIV and Alexa (Amazon Echo)
PROIV is the low-code platform that gets you from idea to reality faster than you ever imagined.
Progressive web applications (PWAs) are web-based applications that are built using modern web capabilities and provide app-like experiences to users. PWAs use service workers, manifest files, and the app shell model to deliver fast, reliable and engaging experiences to users regardless of network conditions. Major companies like Flipkart and BookMyShow have seen success adopting PWAs, with Flipkart's PWA increasing user engagement and conversion rates while reducing data usage compared to their previous mobile website. As browser and platform support for PWAs grows, more organizations are expected to adopt the technology to build applications.
Building for, perceiving and measuring performance for mobile webRobin Glen
This document discusses strategies for improving the performance of single-page applications (SPAs). It notes that SPAs can provide a more native-like user experience compared to traditional multi-page applications. The document outlines several ways to enhance SPA performance, including optimizing APIs, reducing payload size, enabling HTTP/2 and offline functionality. It also discusses techniques for measuring and monitoring performance using tools like the Chrome DevTools and performance metrics. The key message is that performance must be measured to be improved.
REST - What's It All About? (SAP TechEd 2012, CD110)Sascha Wenninger
This document provides an overview of REST (Representational State Transfer) and its applications in SAP systems. It discusses key REST concepts like resources, representations, and hypermedia as the engine of application state. It also summarizes the capabilities and limitations of SAP NetWeaver Gateway for exposing SAP data and functionality via RESTful APIs. Additionally, it covers approaches for custom REST API development using ABAP code.
The document discusses building simple web services with PHP. It begins by describing problems with monolithic architectures, such as being tightly coupled and not flexible. It then defines what a web service is and characteristics like being loosely coupled. The remainder of the document discusses REST APIs as a common approach to building web services, including using HTTP methods on endpoints to perform CRUD operations and common status codes. Requirements for building a sample books API using these concepts are also provided.
As a developer do you find yourself struggling to keep up with the endless stream of technology options available? If so, please join us as we take you through the A to Z of application modernization technologies that you need to be aware of in order to extend the life of your Notes databases. We will step our way through the Modernization Alphabet starting at APIs before working our way through to Web Components, XPages, YAML, and Zapier. Our goal in this session will be to give you a better understanding of at least one technology you might not have previously considered that you should be using when you return from this conference.
Presented at Engage 2018
nterested in modernizing your Notes applications but fresh out of silver bullets and magic buttons? If so, join us for an action-packed fun-filled workshop in which we will explore together some of the key ideas and processes needed for a successful modernization project at your company. We will be making use of Design Thinking throughout the workshop, starting with a conversation about the importance of establishing a modernization strategy. We will then look at how tools such as Application insights and TeamWorkr Analytics can be used to build a distinct strategy for each application. Next we look at options for reducing the cost of the modernization using tools such as aveedo, Darwino, Red Pill DIG, Sapho, SWING Seascape, TeamWorkr, and Webinizer. The workshop will conclude with an important discussion about the things every company should already be doing to prepare for a modernization project before we give away a number of great prizes to attendees.
Conducted at Engage 2018
This document discusses JavaScript and how it has evolved as a programming language. It notes how JavaScript is now used everywhere from servers to mobile applications to browsers. It outlines how tools like Node.js and NPM have improved JavaScript development by providing reusable packages and modules. The document also introduces starter kits and frameworks that aim to simplify setting up JavaScript projects by handling common configuration decisions up front. Finally, it promotes a new open source tool called Red Pill Zion that appears to provide reusable web components and help standardize project setup in a similar vein to popular starter kits.
This document discusses the Internet of Things (IoT) and an Internet of Notes application. It describes common IoT concepts like smart hubs, gateways, triggers, actions, properties, and recipes. It also discusses implementing an Alexa skill to approve travel requests using voice commands. The document provides information on developing Alexa skills, including using the Alexa Developer Console, Lambda functions, AWS services, and ask-sdk library. It emphasizes reusability and continuous improvement of code.
The document provides a list of recommendations for preparing for Domino 2025, including having a strategy, identifying key applications and owners, eliminating unused code and views, implementing templates and inheritance, learning new technologies like Docker, JavaScript frameworks and APIs, and avoiding outdated practices like using hidden design elements or focusing on XPages development. It emphasizes simplifying applications and preparing existing web elements and templates for the future while retiring unused applications.
Red Pill Now - Taking the Guesswork Out of Selecting a Solution for Modernizi...Red Pill Now
Join Red Pill Now as we present "Take 5," our newest offering designed to take the guesswork out of selecting a solution for modernizing your Domino data.
Take 5 provides a one stop test drive for the leading industry solutions for modernizing your Notes applications and critical Domino data. After discussing your business objectives and analyzing your Notes domain, we’ll provide you with a hands-on, side-by-side demonstration of up to five solutions, each developed by leading IBM Business Partners.
Can modernizing your Domino applications save you time and money? Join our next webinar and we will help you answer that question – once and for all.
"On the Value of Design Thinking: Design for the Visually Impaired" presented by Red Pill Now Creative and UX Director, Bob Kadrie and guest, Roy Rumaner
First presented as part of Red Pill Now's webinar series, this presentation looks at the traditional decision of migration versus modernization and looks at some newer approaches that can drive better outcomes for Notes/Domino applications.
From our Speedsponsoring session at MWLUG 2017 in Alexandria, VA. We outline five good reasons you should not work with Red Pill Now and contrast those with five compelling reasons why you may want to work with us.
Influencing Behavior Through Color and Page DesignRed Pill Now
Many of us don’t have the luxury of working with a designer while developing our apps. Just because we don’t have a designer at our disposal, doesn’t mean we can’t learn from the fundamentals of color theory and best practices of page design to influence the behavior of those using our apps. Bob Kadrie, Red Pill Now’s Creative and UX Director will provide a crash course in the use of color – designed specifically for programmers and project managers with little or no design experience. He will share the basics in a language we can all understand, and will explore fantastical color tools and where to find them.Then, we’ll take a closer look at the page design, breaking down its layout, to better understand how color, navigation and content design can make, or break the experience others have using the application.By the time we’re through, you will leave with a greater understanding of the importance of color and page design, and how both make a transformative affect on the satisfaction and adoption of the applications you build.
This document discusses using graph databases with IBM Domino and the OpenNTF API. It provides an overview of graph databases, how they differ from relational databases, examples of how data can be modeled in a graph, and examples of graph databases and technologies that can be used with Domino. It also recommends several resources for learning more about using graph databases with Domino applications.
A discussion about The Internet of Things and the opportunity for Notes to be a first class participant in this new approach to connecting applications and devices (things).
If you are an organization with one or more of the estimated ten million Notes database still being used today then this session is for you. Join us for an action-packed and fun-filled journey as we explore a mix of case-studies and a wealth of ideas for how you take those gems of data held inside Notes databases and unlock the full potential that lies buried within. We will start our expedition with a look at some examples of how Notes data can be surfaced in modern web applications using REST APIs and Web Components. You’ll really dig the real life Graph databases built from Notes databases that can make your data shine, including domain searching. We will then pan for ways to add a social experience to your Notes data and add your Notes data to your social experience. Finally we will do some prospecting to find the potential for connecting Notes databases to The Internet Of Things. The future for your Notes data is NOW.
IBM Connect 2017:
What do IBM Watson, Bluemix, LinkedIn, Facebook, Twitter, Wal-Mart, Match.com, eBay, eHarmony, and Amazon all have in common? They all have billions of records; and they all use Graph technology to manage those records. Graph excels at quickly processing huge numbers of records. Even if don't fully understand how Graph databases work, you will want to attend this session to learn how their amazing capabilities that are already built into the OpenNTF Domino API (ODA) can EASILY deliver unique solutions for your own Notes/Domino environment. This session will introduce the fundamentals of Graph, explain how Graph can be applied to NSF data using the ODA, and demonstrate some techniques to implement Graph on your next project.
The Lotus Position : 3 Degrees Of FreedomRed Pill Now
Case study of the work done by Red Pill Now to modernize a typical portfolio of tired old Notes applications using three distinct strategies that now exclude XPages from any practical consideration. (1) LotusScript Framework, (2) JavaScript Framework and (3) Graph Framework
Rethinking Notes Session presented at MWLUG 2016 by Peter Presnell and Nathan Freeman. An update on our latest thinking on new and exciting ways to present and make use of existing Notes data.
Workshop conducted at MWLUG teach Notes developers how to build applications that can surface existing Notes data and/or extend Notes data with the unique power of Graph databases
Presentation: Engage.ug March 2015 by Peter Presnell
Many organizations are now investing in the development of web interfaces for their existing (and new) Notes/Domino applications. Now is the perfect time to start paying down on the technical debt we have accumulated to ensure that we don’t pass on an unsustainable software development deficit to those that will follow. With this presentation we will challenge the notion that trickle down development based on XPages is the next logical step in that evolution. While XPages still has a place in the world of modern Domino development we will explore new approaches and alternative technologies that have the potential to deliver a brighter prosperous.
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, presentation slides, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
Artificial Intelligence is providing benefits in many areas of work within the heritage sector, from image analysis, to ideas generation, and new research tools. However, it is more critical than ever for people, with analogue intelligence, to ensure the integrity and ethical use of AI. Including real people can improve the use of AI by identifying potential biases, cross-checking results, refining workflows, and providing contextual relevance to AI-driven results.
News about the impact of AI often paints a rosy picture. In practice, there are many potential pitfalls. This presentation discusses these issues and looks at the role of analogue intelligence and analogue interfaces in providing the best results to our audiences. How do we deal with factually incorrect results? How do we get content generated that better reflects the diversity of our communities? What roles are there for physical, in-person experiences in the digital world?
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
AI and Data Privacy in 2025: Global TrendsInData Labs
In this infographic, we explore how businesses can implement effective governance frameworks to address AI data privacy. Understanding it is crucial for developing effective strategies that ensure compliance, safeguard customer trust, and leverage AI responsibly. Equip yourself with insights that can drive informed decision-making and position your organization for success in the future of data privacy.
This infographic contains:
-AI and data privacy: Key findings
-Statistics on AI data privacy in the today’s world
-Tips on how to overcome data privacy challenges
-Benefits of AI data security investments.
Keep up-to-date on how AI is reshaping privacy standards and what this entails for both individuals and organizations.
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
Mobile App Development Company in Saudi ArabiaSteve Jonas
EmizenTech is a globally recognized software development company, proudly serving businesses since 2013. With over 11+ years of industry experience and a team of 200+ skilled professionals, we have successfully delivered 1200+ projects across various sectors. As a leading Mobile App Development Company In Saudi Arabia we offer end-to-end solutions for iOS, Android, and cross-platform applications. Our apps are known for their user-friendly interfaces, scalability, high performance, and strong security features. We tailor each mobile application to meet the unique needs of different industries, ensuring a seamless user experience. EmizenTech is committed to turning your vision into a powerful digital product that drives growth, innovation, and long-term success in the competitive mobile landscape of Saudi Arabia.
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Aqusag Technologies
In late April 2025, a significant portion of Europe, particularly Spain, Portugal, and parts of southern France, experienced widespread, rolling power outages that continue to affect millions of residents, businesses, and infrastructure systems.
Generative Artificial Intelligence (GenAI) in BusinessDr. Tathagat Varma
My talk for the Indian School of Business (ISB) Emerging Leaders Program Cohort 9. In this talk, I discussed key issues around adoption of GenAI in business - benefits, opportunities and limitations. I also discussed how my research on Theory of Cognitive Chasms helps address some of these issues
Technology Trends in 2025: AI and Big Data AnalyticsInData Labs
At InData Labs, we have been keeping an ear to the ground, looking out for AI-enabled digital transformation trends coming our way in 2025. Our report will provide a look into the technology landscape of the future, including:
-Artificial Intelligence Market Overview
-Strategies for AI Adoption in 2025
-Anticipated drivers of AI adoption and transformative technologies
-Benefits of AI and Big data for your business
-Tips on how to prepare your business for innovation
-AI and data privacy: Strategies for securing data privacy in AI models, etc.
Download your free copy nowand implement the key findings to improve your business.
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...SOFTTECHHUB
I started my online journey with several hosting services before stumbling upon Ai EngineHost. At first, the idea of paying one fee and getting lifetime access seemed too good to pass up. The platform is built on reliable US-based servers, ensuring your projects run at high speeds and remain safe. Let me take you step by step through its benefits and features as I explain why this hosting solution is a perfect fit for digital entrepreneurs.
How Can I use the AI Hype in my Business Context?Daniel Lehner
𝙄𝙨 𝘼𝙄 𝙟𝙪𝙨𝙩 𝙝𝙮𝙥𝙚? 𝙊𝙧 𝙞𝙨 𝙞𝙩 𝙩𝙝𝙚 𝙜𝙖𝙢𝙚 𝙘𝙝𝙖𝙣𝙜𝙚𝙧 𝙮𝙤𝙪𝙧 𝙗𝙪𝙨𝙞𝙣𝙚𝙨𝙨 𝙣𝙚𝙚𝙙𝙨?
Everyone’s talking about AI but is anyone really using it to create real value?
Most companies want to leverage AI. Few know 𝗵𝗼𝘄.
✅ What exactly should you ask to find real AI opportunities?
✅ Which AI techniques actually fit your business?
✅ Is your data even ready for AI?
If you’re not sure, you’re not alone. This is a condensed version of the slides I presented at a Linkedin webinar for Tecnovy on 28.04.2025.
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfAbi john
Analyze the growth of meme coins from mere online jokes to potential assets in the digital economy. Explore the community, culture, and utility as they elevate themselves to a new era in cryptocurrency.
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfSoftware Company
Explore the benefits and features of advanced logistics management software for businesses in Riyadh. This guide delves into the latest technologies, from real-time tracking and route optimization to warehouse management and inventory control, helping businesses streamline their logistics operations and reduce costs. Learn how implementing the right software solution can enhance efficiency, improve customer satisfaction, and provide a competitive edge in the growing logistics sector of Riyadh.
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxshyamraj55
We’re bringing the TDX energy to our community with 2 power-packed sessions:
🛠️ Workshop: MuleSoft for Agentforce
Explore the new version of our hands-on workshop featuring the latest Topic Center and API Catalog updates.
📄 Talk: Power Up Document Processing
Dive into smart automation with MuleSoft IDP, NLP, and Einstein AI for intelligent document workflows.
What is Model Context Protocol(MCP) - The new technology for communication bw...Vishnu Singh Chundawat
The MCP (Model Context Protocol) is a framework designed to manage context and interaction within complex systems. This SlideShare presentation will provide a detailed overview of the MCP Model, its applications, and how it plays a crucial role in improving communication and decision-making in distributed systems. We will explore the key concepts behind the protocol, including the importance of context, data management, and how this model enhances system adaptability and responsiveness. Ideal for software developers, system architects, and IT professionals, this presentation will offer valuable insights into how the MCP Model can streamline workflows, improve efficiency, and create more intuitive systems for a wide range of use cases.
Quantum Computing Quick Research Guide by Arthur MorganArthur Morgan
This is a Quick Research Guide (QRG).
QRGs include the following:
- A brief, high-level overview of the QRG topic.
- A milestone timeline for the QRG topic.
- Links to various free online resource materials to provide a deeper dive into the QRG topic.
- Conclusion and a recommendation for at least two books available in the SJPL system on the QRG topic.
QRGs planned for the series:
- Artificial Intelligence QRG
- Quantum Computing QRG
- Big Data Analytics QRG
- Spacecraft Guidance, Navigation & Control QRG (coming 2026)
- UK Home Computing & The Birth of ARM QRG (coming 2027)
Any questions or comments?
- Please contact Arthur Morgan at [email protected].
100% human made.
44. PWA: Other Considerations
Accessibility – There should
be some accessibility aspects
to your application. This is a
whole subject unto itself
(Attend Roy’s Session Tomorrow at 9:00 “Web
Accessibility and the Law”)
45. PWA: Other Considerations
• Best Practices
– Avoid WebSQL Databases
– Use HTTP2
– Avoid using deprecated APIs
– Avoid Render Blocking CSS
46. Why you should care?
Because you want to delight
your users!!
• Fast, I mean really fast
• Works offline
• Looks and behaves the same
no matter the device
47. Why you should care?
• Because you want to learn
and work with the latest
technologies
57. What Offline Isn’t
POST, PUT, PATCH, DELETE
There is no means of storing
these requests and then
sending to the server once
the network is available
58. Fast
• Small web bundles
• If possible pre-fetch the data then
render
60. Secure
All web apps should be
delivered via HTTPS. This
ensures a secure experience
for the user
61. How does this apply to Domino?
While people really don’t like
the notes client, the
application data is still useful
and stored in an awesome
document database
62. How does this apply to Domino?
Put old apps on the web,
available from any device at
any time (even offline)
63. How does this apply to Domino?
• Can surface data without any
backend/java experience using
DDS
– While this is functional to a point
not recommended
64. How does this apply to Domino?
The PRPL Pattern still
applies, it’s just a
recommended pattern
69. Troubleshooting Tools
• Application Panel
– See service worker information
– See what’s in the cache, local and
session storage
– See the manifest.json settings
70. Troubleshooting Tools
• Lighthouse Extension or
Chrome Canary
– Test your app for PRPL Pattern
and PWA adherence
– Performance Test
– Accessibility Test
– Best Practices Test
71. Where we’re heading
• The lines between native apps and web apps are
blurring
• I think the future of mobile applications are with web
apps
– Most phone hardware functionality is available to
browser APIs and that list is growing
• JavaScript is quickly becoming a juggernaut and will
be one of the prime players in delivering applications
to any device.
• Where we’re currently seeing JavaScript being
used:
– Backend architecture that previously was the domain
of Java, Python, Ruby on Rails, etc.
– Complex AI hardware like Alexa, Google Home, etc.
– APIs also make Arduino hardware reachable via
JavaScript
– ES6 brings more OOP style programming to
JavaScript along with a lot of syntactical sugar
#20: Domino does not support HTTP2 Push. Proxy requests handled by:
NGINX
Apache
Apache Tomcat
node-http2
#22: When a route is visited, the server will push dependencies to the browser
Requires an application server
NodeJs
Apache Tomcat
Liberty
etc
#23: The app shell is just the layout (i.e. Header, Footer, Sidebar, Content Area, etc)
Unfortunately since most of your site is defined here, dependency management is critical
#25: For example for a typical domino app. Each view will be a page and each document type will be a page
#27: Each bundle should only include the minimum dependencies so that the element can be placed in the DOM as quickly as possible.
All other dependences should be requested on demand once the element is registered with the browser and stamped into the DOM
#29: The service worker will then pre-cache these files for quick retrieval if they aren’t already cached or the file’s UNID has changed
#31: When the page is registered with the browser and stamped into the DOM it should request it’s dependencies or those dependencies should be pushed to the browser via HTTP2 Push.
#35: (1 for each route essentially and any external dependencies)
#40: GPS Access for location services
Camera Access
Gyroscope Access (Version 60 of Chrome)
Bluetooth
#41: This is where our next dragon lives, offline access can be easy to implement, however picking the correct paradigm is sometimes tricky and isn’t realized until real world use or with extensive testing
#45: However, if web components are used, this can be built into your components
#48: Modern JS frameworks and libraries, Web Components
Service Workers
Different from Notes/Domino (But that doesn’t mean you can’t surface Domino Data from an NSF)
#50: Web components / Polymer
AngularJS, Ember, React, Backbone/Marionette
Any modern frontend framework
#51: Frontend framework of some kind
Gulp or some other build system
Web Bundles
Service Worker Generation
Automated Testing
Service Worker
Offline
REST Service of some sort (doesn’t really matter here, any REST service capable of servicing your app’s needs will work)
Data layer
#53: GPS
Camera
Gyroscope
Bluetooth
etc
The Web Animation API is also a great API for delivering modern performant animations. However CSS Transform is also a good tool but a bit more tedious
#55: Uses the Cache API
Is unaware of the Frontend UI
Think of it as a proxy server
Intercepts all requests being made from the browser to the network. If the request url is stored in the cache, deliver that. If it’s not in the cache, get from the network, update the cache and deliver the network response.
#56: Fastest – Make 2 requests: 1 to the cache and 1 to the network. Whichever comes back first wins and the cache is updated from the network request. (Recommended strategy, however does have some dragons to slay. The most complex strategy due to testing effort)
#58: Idea: Since a Service Worker continues to run even after the app is closed (to service push notifications), it may be possible to cache the requests and monitor for the network to return and then submit the requests. However, consideration must be taken to ensure workflows, notifications, etc. would still continue to work.
Would require you to custom roll your own service worker which is not entirely that complicated
#59: we no longer deliver HUGE payloads that contain the entire application in a single file. We now have smaller payloads made up of only the things we need for each route/page. Everything else is fetched when needed.
Deliver from the cache
Pre-Cache the routes and App Shell
Lazy Load any other dependencies when they’re needed
#60: Modern web applications should adapt to what device they’re being displayed on and shouldn’t require a different version for each type of device (i.e. Android, iOS, Browser, etc)
We should be able to add our application to the home screen of our phone or tablet
This gets rid of the address bar and produces a cleaner more engaging experience
It should be well designed and easy to use.
Icons placed too close together makes things harder to touch and be confident you are touching the right thing, so be aware of your touch targets
Depending on your design criteria, colors should be bold and images should be high-def. But should be optimized for the web.
Functionality should be grouped in an easy to understand, intuitive manner, not scattered all over the screen (Web Components address this very nicely)
Animations should be a confirmation of what the user did and should be smooth with no jank
#61: A requirement for http2 push, service worker and offline access
#64: No User API
No way to tie in backend workflow, sending of emails/notifications
Learn about and use the OpenNTF Domino API (ODA)
#65: No User API
No way to tie in backend workflow, sending of emails/notifications
Learn about and use the OpenNTF Domino API (ODA)
#74: Most phone hardware functionality is available to browser APIs and that list is growing