When dispatcher caching was no longer sufficient to address performance issues for a pharmaceutical company's iPad app and content authoring, a content delivery network (CDN) was implemented. The CDN improved performance by serving cached content closer to users globally, reducing latency significantly. Content was categorized and caching rules were defined to maximize cache hits while ensuring privacy. Authorization was handled at the edge to cache authorized user content. These changes resulted in a major performance improvement and reduced load on the origin servers.
This presentation teach how to design a real-world and pragmatic web API. It draws from the experience Mario Cardinal have gained over the years being involved architecting many Web API. This presentation begins by differencing between a Web and a REST API, and then continue with the design process. We conclude with the core learnings of the session which is a review of the best practices when designing a web API. Armed with skills acquired, you can expect to see significant improvements in your ability to design a pragmatic web API.
In the past, developers have chosen to develop their own content-centric apps from scratch or by leveraging low level libraries. A content repository like Alfresco can save time and cost. Even if you don't choose Alfresco, you should still consider leveraging a standard API like CMIS as much as possible.
The document discusses using Microsoft SharePoint 2013 to implement a digital asset management solution. It outlines requirements like centralized storage and tagging/searching capabilities. The solution would leverage out-of-the-box SharePoint features and custom components. An effective DAM solution specifies metadata, storage, access controls, and policies for digital assets throughout their lifecycle. SharePoint is a suitable platform as it provides document management, metadata, permissions, and search capabilities.
Ramin Orujov presents best practices for designing RESTful web services, covering fundamentals of REST, resource naming conventions, representations, HTTP methods, error handling, versioning, paging, searching and filtering, security, caching and scalability. The presentation provides guidelines for each of these areas and references additional resources for further information.
Learn about technologies involved in creation an offline web app. Offline storages: web storage, IndexedDB, WebSQL, File API. Application cache: app cache and service workers.
From setting up your development environment to shipping a great new app for your IBM Connections Cloud instance, this session shows you how to achieve all that and more. We define and review a baseline project with basic scaffold code, including a structured layout, events, modules, package conventions, functional skeletons for streams, embedded experiences, apps interactions, native UI/UX dialogs, buttons, and more. We review best practice tips and "gotcha" areas, and provide detailed examples. Full code samples available at: https://github.com/dvdsmpsn/ibm-connect-2016-examples/
More information: http://bit.ly/2gtFMNW WordPress has grown from blogging tool, to flexible CMS to an application platform. As the web development world embraces micro-services, how does WordPress, which is normally implemented as a monolithic solution fit in and evolve? In this talk, I will look at what makes WordPress a good choice for application development, as well as where it is lacking. To put these questions in context, this talk will be framed around a case-study of a hybrid web app, built using WordPress and other tools including VueJS, Laravel and Amazon Web Services.
Covering: - What is a Content Repository and how does it work - Comparison to relational database - Why stable APIs are important and what to do if they are not - Benefits of the open and transparent development - Oh boy.. can I see it already! - Why Sling is called Sling - Various ways to deploy and develop code - Deployment options and clustering
A presentation I gave at Oracle Open World 2010 on how to create and maintain a website in multiple languages, regions, and locales.
This document discusses web fundamentals including HTTP, DNS, HTML, client/server architecture, and server-side and client-side coding. It covers topics like how DNS translates domain names to IP addresses, how servers provide services to clients, and the differences between server-side languages like PHP, ASP, and client-side languages like JavaScript, CSS, HTML. It also provides overviews of servlets, JSP, design patterns, and demo code examples.
emediaIT held joint breakfasts with Dell in East London and Port Elizabeth. The focus of the breakfasts and presentations was to highlight the joint value proposition that we provide, how the relationship works from a customer point of view and how that relationship can help our customers improve efficiency and provide greater return on investment.
The document discusses three developer tricks for CQ5/WEM: 1) front-end optimization techniques like concatenating, minifying, and gzipping client-side libraries, 2) mobile detection using the Wireless Universal Resource File to determine device capabilities and serve tailored content, and 3) mobile content synchronization to keep mobile versions of content in sync with their desktop counterparts.
This document summarizes new features in Adobe CQ 5.4 for developers. It introduces mobile device capability APIs, client libraries for websites, HTML5 video components, workflow-based reverse replication for user generated content, and integration with Adobe SiteCatalyst for analytics and targeting. The presentation provides demonstrations of mobile rendering, client library optimization, and user generated content workflows.
This document provides an overview of a tutorial on REST and web services. The tutorial will cover web basics, URI templates, HTTP, CRUD, semantics, hypermedia formats, and Atom/AtomPub. It is intended to explain how to design distributed systems using the web as a platform and leverage REST architectural principles. The tutorial will use Richardson's maturity model to discuss different service styles on a spectrum from non-RESTful to fully RESTful.
Overview of the new frontend architecture used for the New Profile at LinkedIn. Blog version of this slidedeck: https://engineering.linkedin.com/profile/engineering-new-linkedin-profile
SharePoint 2013 Video enhancements and What's New. In this session we dig into the new HTML5 player and embedding youtube videos, and embedding videos from SharePoint in other websites.
The document discusses improvements to APIs in SharePoint 2013, including the Client-Side Object Model (CSOM), JavaScript Object Model (JSOM), and REST/OData endpoints. It provides an overview of new capabilities and features, such as support for more client-side development, an improved REST model, and the integration of OData and OAuth standards. Examples of how to use the new CSOM and REST interfaces are demonstrated.
This document discusses using a microservices architecture for Adobe Experience Manager (AEM). Some key benefits of this approach include improved scalability by allowing specific parts of the system to scale independently, faster development by using different technologies for each service, and better performance. Challenges include a more complicated infrastructure and needing more discipline during design and maintenance. Success requires automation of infrastructure deployment and care in deciding what functionality to separate into individual services.
PhoneGap Enterprise allows marketers and developers to preview mobile apps on devices without needing to compile or reinstall. It removes the hassle of code signing and compiling. Users can view all of an organization's apps under development and staged, see app details and screenshots, and test interactions with device APIs not available in browsers. However, it is not meant as a replacement for final on-device testing of compiled apps or for receiving push notifications. Setting it up involves enabling an Apache Sling Referrer Filter configuration and connecting to an AEM instance.
Adobe Managed Services provides complicated cloud deployments and backup/restore services for AEM. They discuss two complex customer cases: 1) A website with rapid traffic spikes that was optimized using a CDN and autoscaling. 2) A global DAM solution for a media company with challenges around scalability, responsiveness and a global architecture. They describe their backup methodology using AWS snapshot technology and recovery process.
This document discusses using Sling Models with Sightly and JSP templates in AEM. It provides an overview of Sling Models, including their purpose, design goals, and key annotations. It also describes the standard injectors available in Sling Models and how to create custom injectors. The document outlines how to add Sling Model dependencies and use Sling Models within JSP and Sightly templates, including code examples. It concludes with a demonstration of Sling Models in action and information for appendix materials and questions.
This document discusses various aspects of working with AEM component dialogs, including: - How component configuration is stored in the JSON format before AEM 6.0 and rendered via JSP files. - Types of data sources that can be used to populate select boxes in dialogs, either statically defined or dynamically from a servlet. - Techniques for including external content in dialogs like using a servlet to dispatch requests. - Differences between classic and Touch UI approaches to dialogs in areas like data formats, rendering, styling and interactivity.
This document reviews four scenarios for integrating AEM with external systems: letting AEM take the hit, third-party assembly, browser assembly, and edge assembly. Each approach has pros and cons related to performance, caching, content lifecycle management, and application of use cases like ecommerce sites. The key is choosing the approach best suited to each use case based on considerations like where bottlenecks may occur, how content is updated, and avoiding duplicating responsibilities across systems.
The document discusses making Adobe Experience Manager (AEM) projects compliant with accessibility guidelines. It describes INM's approach to building an AEM foundation and templates that are accessible by design. It also discusses integrating an accessibility checker directly into the AEM authoring environment to help authors validate compliance before publishing pages. The document outlines some of the challenges in making AEM fully compliant including issues with tables, form fields, and default text styling.
Mobile is continuing to change the way we interact with services. More and more we expect our experiences to be relevant, fast and frictionless. This presentation examines some work on Hotels.com's apps that tackles designing for immediacy.
dsp look at 10 important principles of agile methodology, including high active user involvement, Pareto's Law, increased collaboration, and much more!
This document discusses how Hotels.com optimizes content on their mobile apps. It outlines 4 key ways: 1) For user goals and behaviors like spontaneous bookings. 2) For point of sale with localization in 90 locales and 57 currencies. 3) For the operating system by integrating with other apps. 4) For user context with over 3,000 device models and screen resolutions using responsive, modular, and motion design.
This document discusses integrating the Apache Wookie widget container with Adobe Experience Manager (AEM). It introduces Apache Wookie and how it works, then covers installing and using the AEM-Wookie Connector Tool to connect an AEM instance to a Wookie server to reuse Wookie's widget pool in AEM. The document demonstrates the connector tool in action.
This document outlines a presentation about using front-end technologies like Handlebars, LESS, and Coffeescript to build single page applications in Adobe Experience Manager (AEM). It discusses design considerations for where to do templating, what to make authorable, and how to store and manage data. It also provides examples of using these front-end tools and approaches for packaging them in AEM, including via the Node.js build packager or a web resource framework. The presentation aims to demonstrate how these technologies can help AEM sites achieve better performance, responsiveness and support for real-time data while leveraging AEM's capabilities.
This document discusses how to manage responsive design behaviors using Adobe Experience Manager. It describes the challenge of displaying content across different devices which may have varying screen sizes and resolutions. The solution presented allows content authors to determine which content is displayed at specific breakpoints and manage the grid layout. It involves building components that use listeners and logic to dynamically handle the display of regions and columns based on the targeted device or screen size. The demonstration shows how authors can control responsive behavior through the new components.
The document discusses Adobe cloud solutions for government agencies. It describes Adobe Experience Manager, LiveCycle, and Connect managed services that provide capabilities like web content management, digital forms and documents, and online collaboration. It also outlines Adobe's FedRAMP authorization and compliance with standards like SOC2 and ISO27001. Production architectures with high availability across availability zones are presented.
Your website changes every day. As it continues to evolve, it can be difficult to pinpoint exactly what’s causing difficulties for your customers and preventing them from purchasing. Frustrated users may leave and never return, so being able to locate and fix issues quickly is crucial for retaining and converting customers in today’s “I want it now” environment. With new technology, marketers have the ability to manage and optimise the quality of experience delivered to their customers - in real-time. Join our webcast to learn how Pete Lloyd, Site Optimisation Manager at Deliveroo, uses customer experience analytics to locate and iron out bumps in the digital journey, increase conversions and keep customers coming back time and time again.
Kristin Graham, Expedia’s VP of Communications and Recruiting, shares insights and lessons learned from using social media to build community for their portfolio of global travel brands, which includes Hotels.com, TripAdvisor and Hotwire. See accompanying video at http://www.ustream.tv/channel/smbseattle. Be social. Follow us @SMBSeattle, fan us on Facebook , or join our LinkedIn group. This event co-hosted with IABCSeattle.
Slides from my Summit 2015 talk on 'Mobile App Development and Content Management with Adobe Experience Manager.' Blog post: http://blogs.adobe.com/experiencedelivers/experience-management/mobile-app-dev-content-management-aem/ Description: Building and maintaining effective mobile apps presents several challenges, from supporting multiple operating systems to managing frequently updated content. Learn about using Adobe Experience Manager and Adobe PhoneGap, and see how these solutions come together to help you manage apps using systems and interfaces that you’re already familiar with, like HTML5 and web-based content management applications.
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
Progressive web apps have been around for some years now, but adoption rate appears to be slow. In this talk Nichola will review the baseline and enhanced PWA criteria to explore why this might be. In addition we’ll also cover what’s new, benefits experienced by early adopters, tracking tips, how to get into the Play Store; as well as some of the current downsides and security considerations.
View CDN performance data, learn how you can collect data on CDN performance and get tips on improving CDN performance.
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
Join us for this 40-minute webinar where we will do a recap of the announcements made during Cloudflare’s inaugural Speed Week. Cloudflare released several new products that are designed to improve the web experience for our customers. We’ll explore each of the announcements that include: - How Cloudflare Argo is getting smarter and faster - How HTTP/2 requests can be handled and prioritised more effectively - Simplify image management, and reduce the number of image variants needed for mobile and other display types - Improving the load times of progressive images with HTTP/2 prioritisation - Optimising the delivery of live video stream content with reduced lag - Supporting a lightweight, faster JavaScript framework We have also specially invited Harshad Rotithor, Chief Architect of Carousell, to share on how the smartphone and web-based marketplace for buying and selling new and used goods, has successfully leveraged on Cloudflare's products and services to improve its APAC business performance. If web performance matters to you, and you ever needed a reason to try Cloudflare, this webinar is especially for you. Learn how we’re different, and how we’re challenging the status quo, believing that fast is never fast enough.
Presentation given in WP Meetup in October 2019. Includes fresh new tips from summer/fall 2019! A Must read for all WordPress site owners and developers.
We all know that site speed matters not only for users but also for search rankings. As marketers, how can we measure and improve the impact of site speed? Mat will cover a range of topics and tools, from the basic quick wins to some of the more surprising and cutting-edge techniques used by the largest websites in the world.
My slide deck from my session, AD113: Speed Up Your Applications with Nginx + PageSpeed, at MWLUG 2015 in Atlanta, GA at the Ritz-Carlton. For more, see: - https://edm00se.io/self-promotion/mwlug-ad113-success - https://github.com/edm00se/AD113-Speed-Up-Your-Apps-with-Nginx-and-PageSpeed
This document discusses web performance optimization and provides tips to improve performance. It emphasizes that performance is important for user experience, search engine optimization, conversion rates, and costs. It outlines common causes of performance issues like round-trip times, payload sizes, browser rendering delays, and inefficient JavaScript. Specific recommendations are given to optimize images, stylesheets, scripts, and browser rendering through techniques like compression, caching, deferred loading, and efficient coding practices. A variety of tools for measuring and improving performance are also listed.
The document discusses the architecture of an online survey platform. It covers goals of performance, availability, and scalability. It describes using services like Amazon Web Services for storage, computing, and content delivery. It also discusses optimizing application design, database separation, coding best practices, and automated testing to achieve goals. Video hosting and online analytical reporting features are explained.
This Presentation Explains How to Identify Web Site Loading Time issues and Solve those issue by using various methods
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.
JavaScript news and tips: browsers, front-end, Node.js, useful libs. Enjoy our latest JS digest! Don't forget to subscribe not to miss next month JS digest. Check our blog for more: https://www.eliftech.com/blog
This document summarizes a presentation on optimizing Joomla performance. It describes two parts to the presentation: Part 1 covers basic application-level optimizations for Joomla like keeping Joomla updated, choosing extensions wisely, simplifying templates, and using plugins and .htaccess rules to enable caching and compression. Part 2 discusses server-level optimizations like using a CDN, opcode caching with APC and Memcached, and reverse proxy servers like Nginx and Varnish. It provides configuration examples and presents results of benchmark tests showing improvements from optimizations.
Performance is the most important attribute for success of any commercial and Enterprise Software. In a client server environment, developers focus a lot on optimizing the Data and Logical Tiers. Optimization of Presentation Tier which is responsible for more than 30 % of performance is usually ignored. The document is developed with the intension to teach the technical staff on Optimizing the Presentation Tier which significantly improves the performance of the Client Server applications.
Clement Ho discusses GitLab's use of Vue for its frontend components. While many assume GitLab uses a single-page Vue application, its frontend is actually made up of multiple Vue applications. This structure was adopted to allow for iterative development as individual features are added as Vue apps. Over time, more components were rewritten in Vue due to its advantages around performance, maintainability and reuse. GitLab then created its own component library called gitlab-ui to further improve development velocity and organize reusable components. The challenges now include managing updates across GitLab products and decoupling the components from GitLab's CSS.
The document outlines various case studies and techniques for debugging web applications, including using tools like Performance Monitor, Process Explorer, and Message Analyzer to troubleshoot issues with high memory usage, unexplained exceptions, and failures in SSL/TLS communication. It provides examples of debugging slow or hanging services, tracking down errors only seen under heavy loads, and identifying memory leaks in .NET applications.
What does it mean when someone says “My Site is slow now”? What is page speed? How do you measure it? How can you make it faster? We’ll try to answer these questions, provide you with a set of tools to use and explain how this relates to your server load. We will cover: - What is page load speed? – Tools used to measure performance of your pages and site – Six Key Improvements to make Drupal “run fast” ++ Performance Module settings and how they work ++ Caching – biggest gainer and how to implement Boost ++ Other quick hits: off loading search, tweaking settings & why running crons is important ++ Ask your host about APC and how to make sure its set up correctly ++ Dare we look at the database? Easy changes that will help a lot! - Monitoring Best practices – what to set up to make sure you know what is going on with your server – What if you get slashdoted? Recommendation on how to quickly take cover from a rhino.
The document discusses using content tagging and purging to improve caching strategies for dynamic content at the edge network. It describes how caching everything can lead to serving stale content. Instead, tagging content with surrogate keys allows caching both dynamic and static content, while purging specific resources by tag when they change. This provides better performance than low expiry caching while maintaining freshness. Purging is fast through the Fastly API. Tag-based purging allows invalidating multiple related resources at once from the edge cache.
The document provides tips for optimizing various aspects of a website including the front end, application and database, web server, and miscellaneous topics. It recommends techniques such as minimizing HTTP requests, leveraging caching, optimizing databases and queries, offloading processing, and load balancing between web servers to improve page loading speeds and site performance. The overall goal is to analyze bottlenecks and apply solutions such as file compression, caching, and leveraging CDNs or reverse proxies to make websites faster and more scalable.
The Sling Rewriter is a module included in AEM that performs transformations on rendered content like HTML. It uses a pipeline-oriented approach based on SAX events to pass content through generators, transformers, and serializers without knowledge of the underlying components. Key aspects include defining rewriter configurations and pipelines, and implementing transformers by processing SAX events to modify content.
This document discusses how to build flexible platforms that focus on business needs. It recommends defining an organization's "tiers of change" to understand what types of changes different teams may need to make and how quickly. The tiers could include content, user experience, and platform changes. Understanding these tiers helps ensure the platform focuses on required business agility and forms the basis for platform requirements. It also advocates separating production and platform for optimal speed and scalability while controlling costs and risks.