Find out more about OutSystems at http://www.outsystems.com
Developing mobile apps is hard, making an application faster is even harder and knowing how to troubleshoot them... well, that sometimes feels like an impossible mission.
A webpage in mobile is loaded in milliseconds and with so much going on, it can be tricky to understand how to improve this process.
At OutSystems, we’re always looking at how to make our apps run faster, so in this webinar we share some of the lessons we learned so you can save time and get better results.
This webinar covers:
- Understand how mobile networks affect the performance of applications;
- Learn how to simulate mobile networks and analyze the performance of mobile applications;
- Troubleshoot the most common errors in mobile applications.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Sync or swim: the challenge of complex offline appsOutSystems
Video: https://www.outsystems.com/learn/courses/56/webinar-the-challenge-of-complex-offline-apps/
The requirement is usually stated in very simple terms: deliver an app that is available in all connectivity conditions. However, the solution can be anything but simple.
When data management rears its ugly head, things get really tricky fast..How are you going to synchronize that data?
Conflicts will most definitely occur and the strategy to approach them depends on how clever your implementation is.
There is no silver bullet! But we can help you think it through. If you were on hand when we showed you how to discover some of the most common sync patterns and techniques, you got a preview.
Make no mistake, though: we're going beyond the common and we're delving deep. So, if you weren’t around for Create Your Offline App, no worries - we’ll get you fully up to speed. We're not going to feed you for a day, we're here to teach you how to fish!
In this webinar you will:
- Review some of the common sync patterns OutSystems handles.
- Understand how the synchronization process happens in the background.
- Learn how to translate offline-first thinking into development best practices.
- Learn how to implement a more advanced sync scenario.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Effective Platform Server MonitoringOutSystems
In this webinar we look at how to effectively implement good monitoring practices or your servers and applications.
Recorded webinar: https://www.outsystems.com/learn/courses/29/webinar-effective-platform-server-monitoring/
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Top front-end techniques for OutSystemsOutSystems
How do front-developers that have started testing or working with OutSystems generally view the Platform, before they get to fully harness its power? They usually say it's more restrictive than they're used to and that it doesn't allow them to do what they need to do.
Fear no more! We're here to debunk that myth and show you that behind all its nuances, OutSystems has a truly powerful Platform that can enable you to build pretty much anything.
In this webinar, you will:
- Slay a dragon named "You can't do that with OutSystems!"
- Understand (some of) the inner workings of the Platform.
- Get some tips on how to organize your front-end code in a better way.
- Learn how you can become much more productive doing front-end work with OutSystems.
- Become an awesome front-end developer.
It's all up to you, but we're giving you all the tools!
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Best practices for the month end close on Sage Intacct (Floqast)RKLeSolutions
Sage Intacct's cloud accounting solution has helped businesses streamline operations and increase efficiency. Add in Floqast and your month-end close can also be streamlined.
Sync or swim: the challenge of complex offline appsOutSystems
Video: https://www.outsystems.com/learn/courses/56/webinar-the-challenge-of-complex-offline-apps/
The requirement is usually stated in very simple terms: deliver an app that is available in all connectivity conditions. However, the solution can be anything but simple.
When data management rears its ugly head, things get really tricky fast..How are you going to synchronize that data?
Conflicts will most definitely occur and the strategy to approach them depends on how clever your implementation is.
There is no silver bullet! But we can help you think it through. If you were on hand when we showed you how to discover some of the most common sync patterns and techniques, you got a preview.
Make no mistake, though: we're going beyond the common and we're delving deep. So, if you weren’t around for Create Your Offline App, no worries - we’ll get you fully up to speed. We're not going to feed you for a day, we're here to teach you how to fish!
In this webinar you will:
- Review some of the common sync patterns OutSystems handles.
- Understand how the synchronization process happens in the background.
- Learn how to translate offline-first thinking into development best practices.
- Learn how to implement a more advanced sync scenario.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Effective Platform Server MonitoringOutSystems
In this webinar we look at how to effectively implement good monitoring practices or your servers and applications.
Recorded webinar: https://www.outsystems.com/learn/courses/29/webinar-effective-platform-server-monitoring/
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Top front-end techniques for OutSystemsOutSystems
How do front-developers that have started testing or working with OutSystems generally view the Platform, before they get to fully harness its power? They usually say it's more restrictive than they're used to and that it doesn't allow them to do what they need to do.
Fear no more! We're here to debunk that myth and show you that behind all its nuances, OutSystems has a truly powerful Platform that can enable you to build pretty much anything.
In this webinar, you will:
- Slay a dragon named "You can't do that with OutSystems!"
- Understand (some of) the inner workings of the Platform.
- Get some tips on how to organize your front-end code in a better way.
- Learn how you can become much more productive doing front-end work with OutSystems.
- Become an awesome front-end developer.
It's all up to you, but we're giving you all the tools!
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Best practices for the month end close on Sage Intacct (Floqast)RKLeSolutions
Sage Intacct's cloud accounting solution has helped businesses streamline operations and increase efficiency. Add in Floqast and your month-end close can also be streamlined.
Startup Engineering Cookbook for Mobile AppsManish Jain
Do you have a great app idea?
Are you a non-technical founder confused about the technology to deploy for your new website? The presentation covers the various options available for building a website and beyond...
Training Webinar: Enterprise application performance with distributed cachingOutSystems
2nd Session - Distributed Caching:
- What is Distributed Caching
- Performance hurdles solved by Distributed Caching
- When to use Distributed Caching
- Patterns to Populate a Distributed Cache
- How to use Distributed Caching in OutSystems
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinars - Secret hacks for OutSystems 10OutSystems
OutSystems Wizard Stacey Levine will unveil the "Secret Hacks for OutSystems 10" that will make you love the platform. This webinar will focus on the features and accelerators that make hardcore development a breeze.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Fitting OutSystems applications into Enterprise ArchitectureOutSystems
Want to become an expert architect in 60 minutes?
We're having a quick hands-on session to show how to design evergreen applications that will grow with your company strategy - from initial design to keeping the blueprint of your applications healthy as you need to adapt to new business demands
In this session you will learn:
- The 4 Layer Canvas concepts - the OutSystems architecture framework
- How to use the the Canvas to design a new solution
- How to use Discovery (tool available in the Forge) to keep track of your architecture and extract useful recommendations to fix architecture issues
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
With the exploding popularity of mobile devices, mobile application performance has become increasingly critical to the modern Enterprise.
This session will discuss some of the performance pitfalls common to tablets, iPhones and Android devices, and outline the tools available to allow you to effectively test your company’s mobile-based applications.
This presentation was originally given at SoftEd Fusion 2012 (Sydney) on September 13th.
Training Webinar: Cover your bases - a security webinarOutSystems
Every IT manager, sysAdmin, or developer is facing an increasing demand to put in place security measures that improve infrastructure and applications, while complying with projects requirements.
You've probably heard all this before, but with very few solid ways to tackle the real security issues.
We're here to cut through the jargon overdose and show you practical, live examples of a few common - and surprisingly simple - vulnerabilities being exploited in real time. We’ll also show you how quickly we can solve them in OutSystems.
Learn about:
- Layered Security in OutSystems
- Open Communication Channels, Cookies, and Session Fixation Attacks
- Code Injection
- Open Redirection Attacks
- * Sensitive User Forms Protection in OutSystems
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Detect Performance Bottlenecks of ApplicationsOutSystems
In this webinar we look at how to detect and troubleshoot server-side performance bottlenecks.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Enterprise application performance with server push technol...OutSystems
1st Session - WebSockets, a Server Push Technology:
- Differences between Pull and Push technologies
- What are WebSockets
- A bit of History behind WebSockets
- When to use WebSockets
- How to integrate WebSockets with OutSystems
- Considerations when using WebSockets
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Love it or hate it, bimodal IT has become a hot topic that every IT leader has to grapple with. Learn about these topics with this (delicious) slidedeck.
Parallel programing in web applications - public.pptxGuy Bary
This presentation is about the intricacies of web performance, obstacles that impact rendering and loading time, and explores solutions that can help to reduce execution bottlenecks and rendering latency.
This presentation covers the basics of the web application execution model, including the modern event loop, v8 and chromium. In addition, we will discuss and highlight APIs that could be used to optimize and monitor web performance.
You Can Work on the Web Patform! (GOSIM 2023)Igalia
Have you ever wanted to work on a web browser? Servo is an experimental web
engine written in Rust. Its small code base and friendly community mean that it
is an ideal project for those looking to dip their toes into the world of web
browser engineering.
In this, Martin Robinson covers the basics of building and running
Servo on your own computer. In addition, we'll take a tour of Servo's main
subsystems and see what kind of work goes into building them. Additionally,
we'll cover a variety of types of contributions to Servo, adapted to different
kinds of experience and specialization. By the end you should have the tools
you need to explore contributing yourself.
(c) GOSIM Workshop 2023
Sept 23-24
Grand Hyatt, Pudong, Shanghai
https://workshop2023.gosim.org/
https://www.bilibili.com/video/BV1Hw411r7Q6/
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)Ontico
What does it take to achieve sub two seconds video playback latency on the 3rd largest website in the world?
We will peek under the hood of the Watch page and explore what common problems are being solved by
YouTube's Desktop team and what interesting solutions had to be implemented to achieve this goal.
We will discuss how page loads are classified and what specific treatment is required for every type, what tools and technologies are used in the stack, how being one of the largest image serving websites affects our approach to thumbnails and how we maintain and monitor our latency goals.
Developing high performance and responsive web apps using web workerSuresh Patidar
A brief talk on web application performance and responsiveness. Why it is important and how web worker can help achieve it. It also covers a simple example implementing web workers.
Need for Speed: Website Edition – Website Optimization Tools and Techniques P...Devin Walker
It requires 50% more concentration when using badly performing website. Make it easier for your users, not harder…
A faster website can help your website in many ways. The faster the website, the lower the bounce rate and the higher the conversions. This mean higher sales, ad revenue and ultimately money.
Here are 10 ways you can speed up your website:
Hosting Provider – Who is hosting your website and how are they hosting it?
Utilize Caching – Page Cache, Database Cache, Object Cache, Browser Cache, Reverse Proxy
Combine CSS and JS files – Load JS in the footer whenever possible
Use a CDN -A Content Delivery Network (CDN) will ‘put a rocket behind your static content’
Reduce and Optimize Images – Use CSS3 whenever and wherever possible, save images for web
Use Compression – Save bandwidth and speed up your website
Use Sprites – Load JS in the footer whenever possible
Monitor Your Website – CPU usage, Physical Memory, Average Load, Disk I/O utilization, Network I/O
Optimize your Database Regularly – Optimizing database tables regularly will help improve website performance
Mobile and Tablet Optimization – Use CSS3 Media Queries, JS and service-side technology to speed up devices
On May 14th, 2014 David Marshall, Senior Web and Application Developer at the Harvard School of Public Health, gave a talk entitled "Responsive Design: Building for a Modern Web."
David is a senior web and application developer at the Harvard School of Public Health, where he is responsible for maintaining the main website and other web applications. He recently rebuilt the HSPH website to make its design responsive and to reduce page size and load times. His current work focuses on PHP development for the WordPress CMS as well as on CSS3 and HTML5. Prior to joining the web team at HSPH, David’s work as an independent contractor included founding Club Site Solutions, a company that developed specialized websites and online registration systems for private clubs.
The technology landscape is changing with every passing year. The technology landscape is changing with every passing year. More people than ever before are now online. It also means that the ways that people are accessing the web all over the world are changing, too.
In this talk, I talk about the different techniques coupled with few case studies on how to improve front-end performance.
On 31 March 2021 I held a talk about the new ranking factory by Google called Core Web Vitals. In this talk I gave a short explanation about Cumulative Layout Shift (CLS), First Input Delay (FID) and Largest Contentful Point (LCP).
Tools and libraries for common problems (Early Draft)rc2209
This is an early draft, actual slides: https://www.slideshare.net/rc2209/tools-and-libraries-for-common-android-problems
In this talk I cover a wide variety of tools to solve all types of well solved Android Problems. I discuss best practices, gotchas, problems and great solutions.
Startup Engineering Cookbook for Mobile AppsManish Jain
Do you have a great app idea?
Are you a non-technical founder confused about the technology to deploy for your new website? The presentation covers the various options available for building a website and beyond...
Training Webinar: Enterprise application performance with distributed cachingOutSystems
2nd Session - Distributed Caching:
- What is Distributed Caching
- Performance hurdles solved by Distributed Caching
- When to use Distributed Caching
- Patterns to Populate a Distributed Cache
- How to use Distributed Caching in OutSystems
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinars - Secret hacks for OutSystems 10OutSystems
OutSystems Wizard Stacey Levine will unveil the "Secret Hacks for OutSystems 10" that will make you love the platform. This webinar will focus on the features and accelerators that make hardcore development a breeze.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Fitting OutSystems applications into Enterprise ArchitectureOutSystems
Want to become an expert architect in 60 minutes?
We're having a quick hands-on session to show how to design evergreen applications that will grow with your company strategy - from initial design to keeping the blueprint of your applications healthy as you need to adapt to new business demands
In this session you will learn:
- The 4 Layer Canvas concepts - the OutSystems architecture framework
- How to use the the Canvas to design a new solution
- How to use Discovery (tool available in the Forge) to keep track of your architecture and extract useful recommendations to fix architecture issues
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
With the exploding popularity of mobile devices, mobile application performance has become increasingly critical to the modern Enterprise.
This session will discuss some of the performance pitfalls common to tablets, iPhones and Android devices, and outline the tools available to allow you to effectively test your company’s mobile-based applications.
This presentation was originally given at SoftEd Fusion 2012 (Sydney) on September 13th.
Training Webinar: Cover your bases - a security webinarOutSystems
Every IT manager, sysAdmin, or developer is facing an increasing demand to put in place security measures that improve infrastructure and applications, while complying with projects requirements.
You've probably heard all this before, but with very few solid ways to tackle the real security issues.
We're here to cut through the jargon overdose and show you practical, live examples of a few common - and surprisingly simple - vulnerabilities being exploited in real time. We’ll also show you how quickly we can solve them in OutSystems.
Learn about:
- Layered Security in OutSystems
- Open Communication Channels, Cookies, and Session Fixation Attacks
- Code Injection
- Open Redirection Attacks
- * Sensitive User Forms Protection in OutSystems
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Detect Performance Bottlenecks of ApplicationsOutSystems
In this webinar we look at how to detect and troubleshoot server-side performance bottlenecks.
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Training Webinar: Enterprise application performance with server push technol...OutSystems
1st Session - WebSockets, a Server Push Technology:
- Differences between Pull and Push technologies
- What are WebSockets
- A bit of History behind WebSockets
- When to use WebSockets
- How to integrate WebSockets with OutSystems
- Considerations when using WebSockets
Free Online training: https://www.outsystems.com/learn/courses/
Follow us on Twitter http://www.twitter.com/OutSystemsDev
Like us on Facebook http://www.Facebook.com/OutSystemsDev
Love it or hate it, bimodal IT has become a hot topic that every IT leader has to grapple with. Learn about these topics with this (delicious) slidedeck.
Parallel programing in web applications - public.pptxGuy Bary
This presentation is about the intricacies of web performance, obstacles that impact rendering and loading time, and explores solutions that can help to reduce execution bottlenecks and rendering latency.
This presentation covers the basics of the web application execution model, including the modern event loop, v8 and chromium. In addition, we will discuss and highlight APIs that could be used to optimize and monitor web performance.
You Can Work on the Web Patform! (GOSIM 2023)Igalia
Have you ever wanted to work on a web browser? Servo is an experimental web
engine written in Rust. Its small code base and friendly community mean that it
is an ideal project for those looking to dip their toes into the world of web
browser engineering.
In this, Martin Robinson covers the basics of building and running
Servo on your own computer. In addition, we'll take a tour of Servo's main
subsystems and see what kind of work goes into building them. Additionally,
we'll cover a variety of types of contributions to Servo, adapted to different
kinds of experience and specialization. By the end you should have the tools
you need to explore contributing yourself.
(c) GOSIM Workshop 2023
Sept 23-24
Grand Hyatt, Pudong, Shanghai
https://workshop2023.gosim.org/
https://www.bilibili.com/video/BV1Hw411r7Q6/
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)Ontico
What does it take to achieve sub two seconds video playback latency on the 3rd largest website in the world?
We will peek under the hood of the Watch page and explore what common problems are being solved by
YouTube's Desktop team and what interesting solutions had to be implemented to achieve this goal.
We will discuss how page loads are classified and what specific treatment is required for every type, what tools and technologies are used in the stack, how being one of the largest image serving websites affects our approach to thumbnails and how we maintain and monitor our latency goals.
Developing high performance and responsive web apps using web workerSuresh Patidar
A brief talk on web application performance and responsiveness. Why it is important and how web worker can help achieve it. It also covers a simple example implementing web workers.
Need for Speed: Website Edition – Website Optimization Tools and Techniques P...Devin Walker
It requires 50% more concentration when using badly performing website. Make it easier for your users, not harder…
A faster website can help your website in many ways. The faster the website, the lower the bounce rate and the higher the conversions. This mean higher sales, ad revenue and ultimately money.
Here are 10 ways you can speed up your website:
Hosting Provider – Who is hosting your website and how are they hosting it?
Utilize Caching – Page Cache, Database Cache, Object Cache, Browser Cache, Reverse Proxy
Combine CSS and JS files – Load JS in the footer whenever possible
Use a CDN -A Content Delivery Network (CDN) will ‘put a rocket behind your static content’
Reduce and Optimize Images – Use CSS3 whenever and wherever possible, save images for web
Use Compression – Save bandwidth and speed up your website
Use Sprites – Load JS in the footer whenever possible
Monitor Your Website – CPU usage, Physical Memory, Average Load, Disk I/O utilization, Network I/O
Optimize your Database Regularly – Optimizing database tables regularly will help improve website performance
Mobile and Tablet Optimization – Use CSS3 Media Queries, JS and service-side technology to speed up devices
On May 14th, 2014 David Marshall, Senior Web and Application Developer at the Harvard School of Public Health, gave a talk entitled "Responsive Design: Building for a Modern Web."
David is a senior web and application developer at the Harvard School of Public Health, where he is responsible for maintaining the main website and other web applications. He recently rebuilt the HSPH website to make its design responsive and to reduce page size and load times. His current work focuses on PHP development for the WordPress CMS as well as on CSS3 and HTML5. Prior to joining the web team at HSPH, David’s work as an independent contractor included founding Club Site Solutions, a company that developed specialized websites and online registration systems for private clubs.
The technology landscape is changing with every passing year. The technology landscape is changing with every passing year. More people than ever before are now online. It also means that the ways that people are accessing the web all over the world are changing, too.
In this talk, I talk about the different techniques coupled with few case studies on how to improve front-end performance.
On 31 March 2021 I held a talk about the new ranking factory by Google called Core Web Vitals. In this talk I gave a short explanation about Cumulative Layout Shift (CLS), First Input Delay (FID) and Largest Contentful Point (LCP).
Tools and libraries for common problems (Early Draft)rc2209
This is an early draft, actual slides: https://www.slideshare.net/rc2209/tools-and-libraries-for-common-android-problems
In this talk I cover a wide variety of tools to solve all types of well solved Android Problems. I discuss best practices, gotchas, problems and great solutions.
Large websites with large customer bases should have fast page loads no matter where your customers are coming from. In this day and age speed is expected. Getting there requires engineers to both have data and the ability to analyze and find problems.
This talk will address page load speed in two parts. A "cold" load where a user first comes to your site and a "warm" load which deals with intra-site page load speed. We will dive into the details of each page load and what is really going on. From network optimization to browser render performance, all things matter when it comes to optimizing the load of your web page. Furthermore, we will look into some tools that can be used to analyze and help developers discover and address problems.
Lets look at an example of what a performant website can look like. This discuss what concepts should we be considering when looking at website performance. Next we will go over two areas pertaining to website performance: 1) website performance tweaks that you as a web developer can directly make 2) website performance tweaks that you may have to work with your hosting provider or IT department to achieve
Website & Internet + Performance testingRoman Ananev
The presentation about how the site works on the Internet and what happens when you open it in your browser. What happens under the hood of the server and browser.
How to measure the performance of the CS-Cart project simply and without technical knowledge :) And of course, why all the online-performance-testing services lie, or dont provides a clear view ;)
https://www.simtechdev.com/cloud-hosting
---
Cloud hosting for CS-Cart, Multi-Vendor, WordPress, and Magento
by Simtech Development - AWS and CS-Cart certified hosting provider
free installation & migration | free 24/7 server monitoring | free daily backups | free SSL | and more...
How To Increase Your Website's Visibility - SEO Best Practices - LA2M Presena...Tarun Gehani
This introductory-level SEO presentation will cover best practices in optimizing your website for greater organic visibility in the search engines. Learn about site structure, content optimization, on-page SEO and page speed improvements to increase your keyword rankings and bring in more qualified traffic.
Short overview on current state of performance monitoring at Spreadshirt. Gives a quick introduction in Grafana/Graphite, Rigor, SOASTA mPulse, SOASTA DSWB.
Web Performance Matters: Challenges, Solutions, Best PracticesCloudflare
At Cloudflare, we not only protect 12 million domains against DDoS attacks with our global network but also accelerate their performance. Our 150+ data centers all over the world puts us in a key position to serve content from the edge to the end users, blazingly fast.
Join this webinar to learn about:
• How performance affects your revenue
• What is the right metric to measure and how
• Challenges in achieving an optimal performance on your web assets
• How to improve your website’s performance and user-experience
• Learn from industry experts on best practices for improving web performance
Innovating at the Speed of Business in the High-Bandwidth World of Digital MediaOutSystems
At NOS, the term “IT Driven” refers to IT activities as adding value to the business. That drove the use of low-code to speed up the delivery of critical projects their business needed. Hear how this leading telecommunications company grew through its relationship with OutSystems and evolved its processes into a bimodal IT approach to implement continuous delivery and provide app delivery roadmaps that benefits its customers and users.
Beyond “Location”: Informing Real-Estate Decisions Through Innovative TechnologyOutSystems
Beyond “Location”: Informing Real-Estate Decisions Through Innovative Technology
Colliers International is on a mission to empower its customers with innovative technology to help them make informed decisions. In this session, see how the company addressed modernization challenges, rewrote a mission-critical application, replaced much of its legacy technology, and produced more applications in the last two years than it had in the last decade.
Beyond Digital Transformation: A Mandate for Disruptive Innovation in the Age...OutSystems
Before a customer ever sees your product, there are hundreds of processes, tools, decisions, and people that impact its delivery. Learn more about how the CVS Health business, swift, implemented the transformative power of low-code to create a wave of disruptive innovation that has impacted every aspect of its business and has the potential to redefine its industry.
From Core Systems to Mobile Apps: Digital Transformation from the Inside-OutOutSystems
When Chilean telecom leader, Entel, launched its digital transformation project, it followed the guidance of experts: Start with your core and work outwards. With its core modernized, the company released a new mobile app in less than a year. Hear how the company’s focus on core systems first, allowed it to layer on innovative new services helping it become not just a leader in Chile, but a challenger in the Peruvian market as well.
Orchestrating the Art of the Impossible Using Low-Code to Automate Manual Wor...OutSystems
Task and process automation is often praised as the holy grail of cutting costs and maximizing profitability. But what about less tangible activities such as compliance and auditing? Join Standard Insurance Company and hear how OutSystems helped them automate and minimize manual work steps resulting in across-the-board efficiencies that saved time and money.
Fast and Furious: Modernizing Clinical ApplicationOutSystems
Twice, Mednax has attempted to modernize its legacy clinical app. After the most recent 6-year project was canceled prior to deployment, Mednax turned to OutSystems. In just five months, the company rolled out an MVP and in eight months the new Clinical Application went live. Hear this amazing success story that is helping to reduce the burden on providers and deliver better patient care where it matters most.
Enrich Visually Google Map Information With LayersOutSystems
In this lightning session, we will explain that maps should not be boring! With our KML for Google Maps component, we have enriched them visually and with real-time business information to provide maps for users to love.
Using Processes and Timers for Long-Running Asynchronous TasksOutSystems
What do you do when a task can take more than five minutes and then times out? How do you run it asynchronously and present the status to the user? Come and see how processes and timers can be used together.
"With OutSystems, we can publish our application with the click of a single button. How awesome would it be if we could create an entire OutSystems infrastructure with just one click?
This is possible! In this session, we will tell you all the secrets about unattended installation and/or upgrading the OutSystems platform."
Many OutSystems projects begin simply. The requirements are not complex and therefore, neither is the architecture. But, as implementations grow, so grows the complexity and functionality needs of the enterprise. In this session, we will explore the 4-Layer Architecture and show you what we encountered, and learned, moving from a simple architecture to a 4-Layer one.
Speed up Development by Turning Web Blocks Into First-Class CitizensOutSystems
"What if:
- You could have a 2-way sync between a (structure) variable and a we block (e.g. input widgets)
- There was a valid runtime property for web blocks (e.g. built-in widgets)
- Web block behaved LIKE built-in widgets?
In this talk, we will present an approach, and a couple of tools, that help promote web blocks to first class citizens. It has helped us speed up development and improve maintainability. Maybe it will also be helpful to you."
Sometimes we want our UI to respond to external events. With the power of Google's Firebase, we can interact with those events in OutSystems to build extremely powerful and interactive applications
Excited about the new reactive web features? Come to this session to learn some of the best practices to make sure that you get started on the right foot.
After five years, "Company X's" HR application was not performing very well due to legacy issues. Simply loading the Dashboard could take up to 10 minutes. We will share some tricks we used to make sure the Dashboard could be properly used again.
When setting up a new project we have some tips and tricks to help you do this in the best way possible, incl. infrastructure, database, standard attributes, logging, code alignment, and service center.
No API? No Problem! Let the Robot Do Your Work! Web Scraping and Automation W...OutSystems
Considering how popular APIs are these days, it’s frustrating to run into a service or site without one. But, it’s actually quite common. If you need to collect data or perform an action on the web without access to an API, there are a couple ways you can hack it using OutSystems.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
2. Replace This image
in master
Presentation
Daniel Reis
Front-End Expert @ OutSystems
Hello World!!
Linkdin https://goo.gl/RtT7qU
Troubleshooting Mobile Apps Performance 2
3. This Webinar is about
● Troubleshooting
● Performance
● It is not about solving performance issues
● How to detect those performance issues
Agenda 3
4. Agenda
● Know how it works
● Know available tools
● Typical issues in Mobile Apps
● Putting into practice
Agenda 4
7. 7Introduction
Introduction
● 51% of Population has a phone
● 83% of the Facebook’s users
accessed by smartphone
We Are Social Digital Report 2016 http://goo.gl/9Fl9Gc
8. 8Introduction
Introduction
● 51% of Population has a phone
● 83% of the Facebook’s users
accessed by smartphone
● +21% share of traffic via mobile
phones
We Are Social Digital Report 2016 http://goo.gl/9Fl9Gc
9. What people expect about mobile apps?
● 47% expect a page to load less than 2 secs
● 77% expect a website load faster in mobile than desktop
● 40% abandon a website after waiting more than 3 secs
● 52% state that quick page loading is important to their site loyalty
Introduction 9
11. Agenda
● Know how it works
○ How the web works?
○ How the browser works?
○ How mobile apps works?
● Know available tools
● Typical issues in Mobile Apps
● Putting into in practice
Agenda 11
12. How the web works?
12
Know how it works
Know how it works - How the web works?
13. Page life cycle
13
● Domain Name Service Lookup
DNS Lookup
Know how it works - How the web works?
○ Provides a distributed name resolution service by
performing a lookup
○ The DNS can translate an Internet domain name such
as www.yoursite.com, into an IP address where the
website is located
14. Page life cycle
14
● Transmission Control Protocol Connection
DNS Lookup
TCP Connection
○ Establish a connection with the server
○ 3-way handshake
■ SYN - Synchronize
■ SYN-ACK - Synchronize-Acknowledgement
■ ACK - Acknowledgement
Know how it works - How the web works?
15. Page life cycle
15
● HyperText Transfer Protocol
○ Transfer web pages from a server to a client browser
● HyperText Transfer Protocol Request
○ Inform the web server what the client is looking for
● HyperText Transfer Protocol Response
○ Sends back a numeric response code
DNS Lookup
TCP Connection
HTTP Request and
Response
Know how it works - How the web works?
16. Page life cycle
16
● Server Response
DNS Lookup
TCP Connection
HTTP Request and
Response
Server Response
○ Allows the client to display the response result
or to inform the user why a request failed
■ 200 OK
■ 304 Not Modified
■ 404 Not Found
■ 500 Internal Server Error
Know how it works - How the web works?
17. Page life cycle
17
DNS Lookup
TCP Connection
HTTP Request and
Response
Server Response
Client-Side
Rendering
● Client-Side Rendering
○ Render the page in the browser
Know how it works - How the web works?
18. Bandwith
18
● Capacity of a communications
channel that determines the rate of
data transfer
● With bigger bandwidth more data
can be transferred at a quicker speed
Know how it works - How the web works?
19. Bandwith
19
4G - 4th Generation Wireless Network
● Designed primarily for data
● IP-based protocols (Long Term Evolution)
● True mobile broadband
4G is (not) everywhere
● 64% of world connected in 2G
● 30% through 3G
● 6% through 4G
Know how it works - How the web works?Webinar Become a mobile developer from scratch https://goo.gl/OfR0AS
20. Latency
20
● Time Required to PING
● Time Required for a packet to
reach the destination and
bounce back
For a connection between London and
New York, across the Internet the
latency will be something like 71ms
Know how it works - How the web works?Network Latency Grid https://goo.gl/9Zw7YK
21. TCP Slow Start
21
● Mechanism to estimate and adapt speeds
to the network’s changing conditions
● Multiple Round-trips to reach full capacity
● Latency will be charged on each trip
Know how it works - How the web works?Slow-Start http://goo.gl/tO9TDk
22. TCP Slow Start
22
● Exponential Growth
cwnd - Congestion Window var
RTT - Round-Trip Time
Know how it works - How the web works?Slow-Start http://goo.gl/tO9TDk
● Packet Loss Fallback
23. Parallel requests
23
● Avoid overloading web servers
● Reduce internet congestion
Know how it works - How the web works?
24. How the browser works
24
Know how it works
Know how it works - How the browser works?
25. How the browser works
● Critical Rendering Path
● Re-Paint
● Reflow
● Composite
25Know how it works - How the browser works?
26. Critical Render Path
26
HTML
DOM
● DOM - Document Object Model
○ The parsing of the HTML document received
by the server
○ Defines the properties, methods and events
for all HTML elements
Know how it works - How the browser works?
27. Critical Render Path
27
HTML CSS
DOM CSSOM
● CSSOM - Cascading Style Sheets Object Model
○ It is much like the DOM, but for the CSS
rather than the HTML
○ It is a map from the specified stylesheet
rules and resources
○ It maps out the rules in your stylesheet to
the things on the page which need styling
Know how it works - How the browser works?
28. Critical Render Path
28
HTML CSS
DOM CSSOM
Render Tree
● Render Tree
○ Contains only the nodes required to render
the page
○ Reflects the DOM structure without the
invisible elements
Know how it works - How the browser works?
30. Critical Render Path
30
HTML CSS
DOM CSSOM
Render Tree
Layout
● Layout
○ Exact position and size of each element from
the Render Tree
○ Maps the exact coordinates of where each
element must appear on the screen, starting
at the top left position: 0,0
Know how it works - How the browser works?
31. Critical Render Path
31
HTML CSS
DOM CSSOM
Render Tree
Layout
Paint
● Paint
○ Displayed page in the browser window
Know how it works - How the browser works?
32. Critical Render Path
32
HTML CSS
DOM CSSOM
Render Tree
Layout
Paint
● Reflow
Render Tree
Layout
Paint
○ Computes the layout of the page
○ Computes the dimensions and position of
the element
○ Triggers further reflows on that element’s
children, ancestors and elements that
appear after it in the DOM
○ Calls a final Repaint
Know how it works - How the browser works?
33. Reflow can be triggered easily, such as
33
● Insert, remove or update an element in the DOM
● Move or a animate a DOM element
● Take measurements of an element like offsetWidth or offsetHeight
● Change a CSS style rule
● Manipulating the class attribute
● Add or remove a stylesheet
● Scroll or resize the window
● Setting a property of the style attribute
Know how it works - How the browser works?
34. Critical Render Path
34
HTML CSS
DOM CSSOM
Render Tree
Layout
Paint
● Repaint
Render Tree
Paint
○ Goes through all the elements and determines
their visual style properties, then it updates
the relevant parts of the screen
○ When changing element styles which don't
affect the element's position on a page, the
browser just repaints the element again with
the new styles applied
Know how it works - How the browser works?
35. Out of the Critical Render Path
35
HTML CSS
DOM CSSOM
Render Tree
Layout
Paint
● Composite
Composite
Out of the CRP
○ Manage Graphics Layer Trees
○ Draw the Compositing Layers of the page
○ Use of GPU (Graphics Processing Unit)
CPU
GPU
Know how it works - How the browser works?
36. Promote element to a Layer
36
● Use of GPU (Graphics Processing Unit)
● Avoid non-trivial Paint
● Faster and Smoother Render
● Trigger a Compositing Layer
Know how it works - How the browser works?
37. How to promote element to a Layer?
37
● will-change property
○ Method for optimizing animations
○ Informs the browser which elements will
change and what properties will change
● Manipulation of the Z axis
○ transform: translate3d(0,0,0);
○ transform: translateZ(0);
Know how it works - How the browser works?Optimising for 60fps everywhere https://goo.gl/FgKJrs
38. Out of the Critical Render Path
38
HTML CSS
DOM CSSOM
Render Tree
Layout
Paint
● Promoting an element to a Layer
Out of the CRP
Composite
CPU
GPU
Composite
○ Will use Composite
○ Out of the CRP
Know how it works - How the browser works?
39. Out of the Critical Render Path
39
…
17º
27º
30º
66º
72º
Know how it works - How the browser works?CSS properties usage by style https://goo.gl/hhoyc0
40. How mobile apps works
40
Know how it works
Know how it works - How mobile apps works?
41. iOS Pseudo-Browsers
● There is only one browser in iOS
● For experience purposes
● All browsers use Safari Render Engine
Chrome for iOS is different from Chrome for Android
41Know how it works - How mobile apps works?
42. WebView for Android / Chromium
● Since Android 4.4 the WebView component is based on the Chromium open
source project
● In Android 5.0 the WebView can be updated in Google Play separately to the
Android platform
42Know how it works - How mobile apps works?
43. WebView for Android / Chromium
43
● Chromium based WebView is faster
● Performance increased
○ Overall results
○ Up to 354% for HTML5 Canvas
○ Up to 358% for Javascript
Know how it works - How mobile apps works?Old WebView vs. Chromium backed WebView Benchmark https://goo.gl/Uy2wNs
44. Mobile delay while click on a link
44
● The browser wait approximately 300ms
from the time you tap the button until
fire the click event
● In order to identify if it was a single
click event or a double tap event
● Nowadays only happens in iOS
Know how it works - How the web works?
45. Recap
● Webpages are slower in Mobile Devices than Desktop
● Many things happen before we see the page in the browser
● While on network, most of the time we use 2G or 3G
● Avoid the use of Repaint and Reflow, instead, use Composite
45Know how it works
47. Agenda
● Know how it works
● Know available tools
○ Deep dive in Chrome DevTools
○ Remote Debug Inspectors
○ Connecting your device
● Typical issues in Mobile Apps
● Putting into in practice
Agenda 47
48. Deep dive in Chrome DevTools
48Know available tools - Deep dive in Chrome DevTools
51. Network
● Queuing
○ Time waiting to tag this request into an open TCP connection
● Stalled
○ Time spent negotiating with a proxy server connection
● Request sent
● Waiting
○ Time to first byte
● Content Download
51Know available tools - Deep dive in Chrome DevTools
52. Timeline
● Paint
○ Similar to Canvas
○ List of Draws grouped together
as a data structure
● Rasterize Paint
○ Render the Draws into pixels
52Know available tools - Deep dive in Chrome DevTools
53. Timeline
● Reflow
○ To avoid constant Reflow, the browser
will setup a queue of the changes
○ This way several changes will be
combined and only one reflow will be
computed
○ Browsers flush the queue once a
certain amount of time passes or a
certain number of changes is reached
53Know available tools - Deep dive in Chrome DevTools
54. Timeline
● Reflow
○ Sometimes the script force a reflow,
flushing the queue
○ This happens when you request style
information, such as
■ offsetWidth
■ offsetHeight
■ scrollTop
54Know available tools - Deep dive in Chrome DevTools
60. Remote Debug installation
60
Android on Windows - http://goo.gl/QYjKEX
1. Chrome Remote Debugging Requirements
○ https://goo.gl/g6AO63
2. Samsung Android USB Driver for Windows
○ http://goo.gl/vnk108
3. Android SDK
○ http://goo.gl/II9nyw
○ http://goo.gl/AcnPhT
4. adb devices (need to be started every time you debug)
○ https://goo.gl/Bw8h1b
Know available tools - Connecting your device
61. Connecting your device
61
1. Start adb
○ https://goo.gl/Bw8h1b
2. Open chrome://inspect/#devices
Know available tools - Connecting your device
62. Connecting your device
Remote Debug installation on Mac
● Just plug-in the cable!!
62Know available tools - Connecting your device
63. Recap
● Understanding Network requests
● Detect Reflow and Repaint
● Know how to debug remotely
63Know available tools - Deep dive in Chrome DevTools
65. Agenda
● Know how it works
● Know available tools
● Typical issues in Mobile Apps
● Putting into in practice
Agenda 65
66. Typical issues in Mobile Apps
No Image Optimization
66Typical issues in Mobile Apps
67. Typical issues in Mobile Apps
No Image Optimization
● Original Image
○ PNG
○ 1,72 MB
67Typical issues in Mobile Apps
68. Typical issues in Mobile Apps
No Image Optimization
● optimizilla.com
○ JPG
○ 14,2 KB
68Typical issues in Mobile Apps
69. Typical issues in Mobile Apps
No Image Optimization
69Typical issues in Mobile Apps
70. Typical issues in Mobile Apps
No Image Optimization
● 1px with
○ JPG
○ 1,09 KB
○ repeat-x
70Typical issues in Mobile Apps
71. Typical issues in Mobile Apps
No Image Optimization
71Typical issues in Mobile Apps
72. Typical issues in Mobile Apps
No Image Optimization
● CSS background-color
○ instant render
72Typical issues in Mobile Apps
73. Typical issues in Mobile Apps
No Image Optimization
73Typical issues in Mobile Apps
74. Typical issues in Mobile Apps
Image Download
74
.Phone
Typical issues in Mobile Apps
75. Typical issues in Mobile Apps
Image Download
● display: none or visibility: hidden
○ Still download the image
75
.Phone
Typical issues in Mobile Apps
76. Typical issues in Mobile Apps
Image Download
● SilkUI Device Class
76
.Phone.Phone
Typical issues in Mobile Apps
77. Typical issues in Mobile Apps
Image Download
● SilkUI DisplayOnDevice
77
.Phone
Typical issues in Mobile AppsWebinar SILKUI from basics to advanced https://goo.gl/1bgXQC
78. Typical issues in Mobile Apps
Improve usage of Fonts
● Web Fonts Concerns
○ Larger font files or too many fonts,
slow down loading of the page,
especially on mobile devices.
○ Load after 1st Paint (glitch visible in
Mobile)
○ Unicode fonts can contain
thousands of glyphs
○ No single Universal Format
78
● Web Font Formats
○ woff / woff2
○ ttf (below Android 4.4)
○ eot (below IE9)
○ svg (it's being deprecated)
Typical issues in Mobile Apps
79. Typical issues in Mobile Apps
Improve usage of Fonts
79Typical issues in Mobile Apps
80. Typical issues in Mobile Apps
Improve usage of Fonts
80
.Phone
.Desktop
Typical issues in Mobile Apps
81. Typical issues in Mobile Apps
Uncompressed Resources
● Content-Encoding: gzip
81Typical issues in Mobile Apps
82. Typical issues in Mobile Apps
Uncompressed Resources
● Gzipping
○ Process of finding all repetitive strings and replaces them
with pointers to the first instance of that string
■ Reduce until 70% to 80% page size
■ All modern browsers support GZIP and will request
it by default
■ Most of the sites are using Gzip compression across
the web
82Typical issues in Mobile Apps
83. Typical issues in Mobile Apps
External Resources
● Domain Path
83Typical issues in Mobile Apps
84. Typical issues in Mobile Apps
Excessive Resources
84Typical issues in Mobile Apps
85. Typical issues in Mobile Apps
Uncached Resources
● Cache avoid unnecessary HTTP requests on subsequent page views
85Typical issues in Mobile Apps
86. Typical issues in Mobile Apps
Parser-Blocking JavaScript
● Usage of external widgets
● Large Javascript files
● Synchronous JavaScript resources
● Long running JavaScript
● Repaint and Reflow the DOM
86Typical issues in Mobile Apps
87. Recap
● Optimize your images
● Do not use images for any sort of layout styling
● Use font icons instead of sprites
● Improve the usage of Fonts
● Compress and Cache your Resources
● Attention to Excessive and External Resources
● Take a look to Parser-Blocking JavaScript
87Typical issues in Mobile Apps
89. Agenda
● Know how it works
● Know available tools
● Typical issues in Mobile Apps
● Putting into in practice
Agenda 89
90. My app is slow… where to start?
1. By default, troubleshoot first in the
desktop browser console
2. In DevTools Network
a. Search for the Typical Issues
3. In DevTools Timeline
a. Look deeper into Painting and Scripting
b. Try to find some Forced Reflow bottlenecks
4. If all this fail… then go to mobile remote debugging
Putting into practice 90
91. Troubleshooting in OutSystems Now
What is OutSystems Now?
● Transforms apps build in OutSystems Platform in Hybrid apps
○ iOS, Android and Windows apps
● Enabling access to device capabilities
○ Camera, location, local storage or other device APIs
● Apps can then be released to public stores
91How to TroubleshootOutSystems Now Website https://goo.gl/ihIhaI
92. How to Troubleshoot in OutSystems Now
OutSystems Now iOS concerns
● Slow apps on Safari and iOS 9+
○ http://goo.gl/qAPxQJ
● Slow in page transitions
○ Transition made with images
92Putting into practice
93. Recap
● Review the Bases
● Deep dive in DevTools
● Typical issues in mobile
● Putting into practice
93Putting into practice
○ Look for the signals
○ Know where/how to change
○ How to debug remotely
95. Final Recap
● Know how it works
○ Webpages are slower in Mobile Devices than Desktop
○ Many things happen before we see the page in the browser
○ While on network, most of the time we use 2G or 3G
○ Avoid the use of Repaint and Reflow, instead, use Composite
Final Recap 95
96. Final Recap
● Know how it works
● Know available tools
○ Understanding Network requests
○ Detect Reflow and Repaint
○ Know how to debug remotely
96Final Recap
97. Final Recap
● Review the Bases
● Deep dive in DevTools
● Typical issues in mobile
○ No Image Optimization
○ Improve usage of Fonts
○ Uncompressed Resources
○ External Resources
○ Excessive Resources
○ Uncached Resources
○ Parser-Blocking JavaScript
97Final Recap
98. Final Recap
● Review the Bases
● Deep dive in DevTools
● Typical issues in mobile
● Putting into practice
○ Look for the signals
○ Know where/how to change
○ How to debug remotely
98Final Recap
99. Replace This image
in master
Daniel Reis
Front-End Expert @ OutSystems
Thank You!!
How Troubleshoot Mobile App Performance 99
100. Further Reading
● Mobile Web Performance Auditing by Paul Lewis
○ https://goo.gl/COcxFh
● Optimising for 60fps everywhere by JT
○ https://goo.gl/FgKJrs
● Pixels are expensive by Paul Lewis
○ https://goo.gl/H4fzJf
● Why Moving Elements With Translate() Is Better Than Pos:abs Top/left by Paul Irish
○ http://goo.gl/6q21D
● Top CSS techniques for optimal performance by Dinis Carvalho
○ https://goo.gl/E7cXTA
● Measuring web app runtime performance by Sara Gonçalves
○ https://goo.gl/M2eyb2
● Evaluating network performance
○ https://goo.gl/GKL5c8
● Performance profiling with the Timeline
○ https://goo.gl/UBVd9Y
100How Troubleshoot Mobile App Performance
101. OutSystems Webinars
Previous Webinars
● SILKUI from basics to advanced by Samuel Jesus
○ Watch the video here https://goo.gl/1bgXQC
● Become a mobile developer from scratch by Ruben Gonçalves
○ Watch the video here https://goo.gl/OfR0AS
Next Webinars
● Infrastructure Monitoring - the tool and practice by Paulo Cunha, March 24th
● Detect performance bottlenecks (Performance CSI) by Paulo Garrudo, April 7th
● Building a Live Style Guide by Ruben Gonçalves, April 21th
101Final Recap