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 presentation, 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!
This was an OutSystems webinar presented.
Video @https://youtu.be/B_puSsNDgbg
CSS workshop created for internal delivery @ OutSystems.
“For most people CSS is like a mystical art that nobody truly understands... Sometimes it works and sometimes it doesn’t (unexplainably) “.
Not solely introductory, but also covering more advanced topics, embark in this fantastic adventure that is CSS.
There you have it, all you must know about CSS in a NutShell.
See the videos of the workshop @ http://goo.gl/NJ3n6J
Workshop created by Marco Costa, Miguel Ventura and Rúben Gonçalves
Reports, reports, reports! People always want more reports. This session will show you how you can create amazing reports in OutSystems from Simple Report (free) to External Tools (integrating with paid tools).Covering since HTML2PDF&ReportSystems, SimpleReports and StimulSoftJS.
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
Using webblocks for popups in Outsystems MobileFrank Boldingh
This document discusses how to create and use a modal popup webblock for confirmation prompts on mobile screens in OutSystems.
It describes defining a "wbConfirm" webblock with Yes and No buttons, text fields, and styling. The webblock is added twice to a sample mobile screen - once each for delete and insert buttons.
Event handlers are created to hide the webblock when the user clicks Yes or No by setting boolean variables. Clicking the delete or insert buttons sets the corresponding variable to true to display the confirmation prompt.
This document summarizes a presentation about using Stitches, a React styling library, and Storybook for component design.
The presentation introduces Stitches as the styling library used for its support of React, easy usage, and themes. Key features of Stitches discussed include creating styled components, variants, and comparisons to other libraries.
Storybook is presented as a way to improve communication between designers and developers by allowing visualization of components alongside their stories. Clean communication through a shared Storybook is emphasized.
Reflections on initially creating a design system note the benefits of consistency and speed but also identify areas for improvement like documentation, process alignment, and understanding each other's roles. Establishing trust and understanding between
This document discusses accessibility with OutSystems. It begins by defining accessibility and its importance for developers and organizations. It discusses how to make applications accessible by following guidelines like WCAG and using semantic HTML, ARIA roles, and accessible UI patterns in OutSystems. Images, animations, outlines, containers, and screen templates can all be made accessible with the right techniques. Accessibility benefits everyone by enabling full participation on the web.
CSS workshop created for internal delivery @ OutSystems.
“For most people CSS is like a mystical art that nobody truly understands... Sometimes it works and sometimes it doesn’t (unexplainably) “.
Not solely introductory, but also covering more advanced topics, embark in this fantastic adventure that is CSS.
There you have it, all you must know about CSS in a NutShell.
See the videos of the workshop @ http://goo.gl/NJ3n6J
Workshop created by Marco Costa, Miguel Ventura and Rúben Gonçalves
Reports, reports, reports! People always want more reports. This session will show you how you can create amazing reports in OutSystems from Simple Report (free) to External Tools (integrating with paid tools).Covering since HTML2PDF&ReportSystems, SimpleReports and StimulSoftJS.
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
Using webblocks for popups in Outsystems MobileFrank Boldingh
This document discusses how to create and use a modal popup webblock for confirmation prompts on mobile screens in OutSystems.
It describes defining a "wbConfirm" webblock with Yes and No buttons, text fields, and styling. The webblock is added twice to a sample mobile screen - once each for delete and insert buttons.
Event handlers are created to hide the webblock when the user clicks Yes or No by setting boolean variables. Clicking the delete or insert buttons sets the corresponding variable to true to display the confirmation prompt.
This document summarizes a presentation about using Stitches, a React styling library, and Storybook for component design.
The presentation introduces Stitches as the styling library used for its support of React, easy usage, and themes. Key features of Stitches discussed include creating styled components, variants, and comparisons to other libraries.
Storybook is presented as a way to improve communication between designers and developers by allowing visualization of components alongside their stories. Clean communication through a shared Storybook is emphasized.
Reflections on initially creating a design system note the benefits of consistency and speed but also identify areas for improvement like documentation, process alignment, and understanding each other's roles. Establishing trust and understanding between
This document discusses accessibility with OutSystems. It begins by defining accessibility and its importance for developers and organizations. It discusses how to make applications accessible by following guidelines like WCAG and using semantic HTML, ARIA roles, and accessible UI patterns in OutSystems. Images, animations, outlines, containers, and screen templates can all be made accessible with the right techniques. Accessibility benefits everyone by enabling full participation on the web.
Go is a compiled, concurrent, garbage-collected, statically typed language developed at Google in 2007 to address issues with large software systems. It was created to facilitate easy memory management, enable rapid compilation, and handle concurrency through built-in goroutines and channels. Many large companies now use Go for its improved developer productivity compared to other languages.
OutSystems Front End Specialization - Study Help DeckFábio Godinho
OutSystems Front End Specialization - Study Help Deck
Material gathered from OutSystems Guided Path videos, OutSystems Community Forum and public sites that will help obtain the OutSystems Front-end Developer Specialist certification.
http://natbat.net/2008/Sep/28/css-systems/ - A CSS System is a reusable set of content-oriented markup patterns and associated CSS created to express a site's individual design. It is the end result of a process that emphasizes up-front planning, loose coupling between CSS and markup, pre-empting browser bugs and overall robustness. It also incorporates a shared vocabulary for developers to communicate the intent of the code. This talk elaborates on this concept, and also describes a number of tricks I use to pre-empt maintainability issues.
Originally presented at BarCamp London 5 in Richmond on the 28th of September 2008.
This document provides an outline for a course on learning Git version control. The course covers getting Git setup, the basic concepts and workflow of Git, branching and merging, resolving conflicts, working with remote repositories, and various Git commands. The document lists several modules that will be covered, including getting started, everyday Git usage, branching, merging and rebasing, additional tools and concepts, and advice on applying the skills learned. The goal is to teach participants how to install and use Git for version control on individual, local, and distributed projects.
The presentation explain why migration to modern AEM features should be done and introduces the AEM Modernisation Toolkit that can easily help you achieve those migrations e.g.
Static Templates -> Editable Templates
Foundation Components -> Core Components
ExtJS Dialogs -> Touch UI Dialogs
Design Dialogs -> Editable Template Policies
Demo Workbook published here:
https://expleague.azureedge.net/labs/aem-intro/index.html
Exploring Graph Use Cases with JanusGraphJason Plurad
Graph databases are relative newcomers in the NoSQL database landscape. What are some graph model and design considerations when choosing a graph database in your architecture? Let's take a tour of a couple graph use cases that we've collaborated on recently with our clients to help you better understand how and why a graph database can be integrated to help solve problems found with connected data. Presented at DataWorks Summit San Jose - IBM Meetup on June 18, 2018.
https://www.meetup.com/BigDataDevelopers/events/251307524/
This document provides an introduction to creating custom themes in AtoM by overriding relevant theming files, registering a plugin, customizing the home page and other elements. It outlines how to create a basic theme structure and configuration class, edit CSS and template files, override modules like static pages and information objects, add a footer, and modify elements like the two-column layout, user menu and more. The goal is to give developers a starting point for creating their own themes in AtoM.
From framework coupled code to #microservices through #DDD /by @codelytvCodelyTV
From framework coupled code to microservices through DDD modules. The presentation discussed the evolution from monolithic frameworks to microservices architecture through various stages:
1) Old days of framework coupled code with low autonomy, maintainability and learning curve.
2) Use of MVC frameworks improved isolation but code was still highly coupled.
3) Focus on testing drove adoption of SOLID principles at a micro scale.
4) Domain-Driven Design introduced modules per domain concept improving decoupling, semantics and testability.
5) Further decomposition into bounded contexts and microservices provided more autonomy for teams but introduced new accidental complexities around infrastructure and coordination.
The Go programming language - Intro by MyLittleAdventuremylittleadventure
The document discusses the Go programming language, providing information on its history, creators at Google, design goals, key characteristics like being statically typed and concurrent, benchmarking results, major companies using Go, and examples of using Go for web scraping and servers. It outlines pros and cons of Go and resources for learning more.
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
I actually described in this slide how to use Gitlab with git. I explained what is git, push, pull, clone, commit etc. so, you can use this slide to learn or tech someone.
The document discusses Git internals and debugging. It provides an agenda that will cover Git areas like the working directory, staging area and repository. It will also discuss Git objects like blobs, trees and commits that make up Git's object graph and data structure. Finally, it will demonstrate debugging tools like blame, grep and bisect.
Software design as a cooperative game with EventStormingAlberto Brandolini
You got the stickies and the paper roll, and possibly already run a large Big Picture workshop to highlight where the problem is. Now you're in a room with business, software and UX experts hungry for a solution.
How do you make the magic happen?
In this talk, we'll explore some strategies about how to deliver with collaborative modeling, and how to narrow the gap between stickies and working code.
A mother told her daughter's magic cooking pot to cook porridge while the girl was away, but forgot how to tell it to stop. The pot kept cooking until porridge filled the house and street. When only one house was left, the returning girl said "stop" and the pot ended, but the town could only be entered by eating through the porridge.
Go is a compiled, concurrent, garbage-collected, statically typed language developed at Google in 2007 to address issues with large software systems. It was created to facilitate easy memory management, enable rapid compilation, and handle concurrency through built-in goroutines and channels. Many large companies now use Go for its improved developer productivity compared to other languages.
OutSystems Front End Specialization - Study Help DeckFábio Godinho
OutSystems Front End Specialization - Study Help Deck
Material gathered from OutSystems Guided Path videos, OutSystems Community Forum and public sites that will help obtain the OutSystems Front-end Developer Specialist certification.
http://natbat.net/2008/Sep/28/css-systems/ - A CSS System is a reusable set of content-oriented markup patterns and associated CSS created to express a site's individual design. It is the end result of a process that emphasizes up-front planning, loose coupling between CSS and markup, pre-empting browser bugs and overall robustness. It also incorporates a shared vocabulary for developers to communicate the intent of the code. This talk elaborates on this concept, and also describes a number of tricks I use to pre-empt maintainability issues.
Originally presented at BarCamp London 5 in Richmond on the 28th of September 2008.
This document provides an outline for a course on learning Git version control. The course covers getting Git setup, the basic concepts and workflow of Git, branching and merging, resolving conflicts, working with remote repositories, and various Git commands. The document lists several modules that will be covered, including getting started, everyday Git usage, branching, merging and rebasing, additional tools and concepts, and advice on applying the skills learned. The goal is to teach participants how to install and use Git for version control on individual, local, and distributed projects.
The presentation explain why migration to modern AEM features should be done and introduces the AEM Modernisation Toolkit that can easily help you achieve those migrations e.g.
Static Templates -> Editable Templates
Foundation Components -> Core Components
ExtJS Dialogs -> Touch UI Dialogs
Design Dialogs -> Editable Template Policies
Demo Workbook published here:
https://expleague.azureedge.net/labs/aem-intro/index.html
Exploring Graph Use Cases with JanusGraphJason Plurad
Graph databases are relative newcomers in the NoSQL database landscape. What are some graph model and design considerations when choosing a graph database in your architecture? Let's take a tour of a couple graph use cases that we've collaborated on recently with our clients to help you better understand how and why a graph database can be integrated to help solve problems found with connected data. Presented at DataWorks Summit San Jose - IBM Meetup on June 18, 2018.
https://www.meetup.com/BigDataDevelopers/events/251307524/
This document provides an introduction to creating custom themes in AtoM by overriding relevant theming files, registering a plugin, customizing the home page and other elements. It outlines how to create a basic theme structure and configuration class, edit CSS and template files, override modules like static pages and information objects, add a footer, and modify elements like the two-column layout, user menu and more. The goal is to give developers a starting point for creating their own themes in AtoM.
From framework coupled code to #microservices through #DDD /by @codelytvCodelyTV
From framework coupled code to microservices through DDD modules. The presentation discussed the evolution from monolithic frameworks to microservices architecture through various stages:
1) Old days of framework coupled code with low autonomy, maintainability and learning curve.
2) Use of MVC frameworks improved isolation but code was still highly coupled.
3) Focus on testing drove adoption of SOLID principles at a micro scale.
4) Domain-Driven Design introduced modules per domain concept improving decoupling, semantics and testability.
5) Further decomposition into bounded contexts and microservices provided more autonomy for teams but introduced new accidental complexities around infrastructure and coordination.
The Go programming language - Intro by MyLittleAdventuremylittleadventure
The document discusses the Go programming language, providing information on its history, creators at Google, design goals, key characteristics like being statically typed and concurrent, benchmarking results, major companies using Go, and examples of using Go for web scraping and servers. It outlines pros and cons of Go and resources for learning more.
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
I actually described in this slide how to use Gitlab with git. I explained what is git, push, pull, clone, commit etc. so, you can use this slide to learn or tech someone.
The document discusses Git internals and debugging. It provides an agenda that will cover Git areas like the working directory, staging area and repository. It will also discuss Git objects like blobs, trees and commits that make up Git's object graph and data structure. Finally, it will demonstrate debugging tools like blame, grep and bisect.
Software design as a cooperative game with EventStormingAlberto Brandolini
You got the stickies and the paper roll, and possibly already run a large Big Picture workshop to highlight where the problem is. Now you're in a room with business, software and UX experts hungry for a solution.
How do you make the magic happen?
In this talk, we'll explore some strategies about how to deliver with collaborative modeling, and how to narrow the gap between stickies and working code.
A mother told her daughter's magic cooking pot to cook porridge while the girl was away, but forgot how to tell it to stop. The pot kept cooking until porridge filled the house and street. When only one house was left, the returning girl said "stop" and the pot ended, but the town could only be entered by eating through the porridge.
El documento describe diferentes métodos para descomponer expresiones racionales en fracciones parciales. Estos incluyen: 1) descomposición con denominadores lineales, 2) con un factor lineal repetido, 3) con un factor cuadrático irreducible, y 4) con un factor cuadrático repetido. Se proveen ejemplos y pasos para cada método.
Joanne Snodgrass has over 12 years of experience in customer care and relations roles. She has a proven track record of resolving issues, enhancing revenue, and ensuring high customer satisfaction across roles in telecommunications and medical claims processing. She is analytical, a strong learner, takes responsibility, and brings consistency. She has an Associate's Degree from DeVry University with a 3.7 GPA and experience in fields like health insurance, coding, and computer applications. In her free time, she volunteers with organizations helping veterans and her community.
This document provides information about Edgerton, a heating, air conditioning, and plumbing company located in Monroe, Connecticut that has been in business for 60 years. It highlights Edgerton's core values of client-first focus and 24/7 availability. The document also shares Edgerton's mission to provide total comfort solutions through exceptional service and technical excellence. Contact information and a request to visit their website is provided.
This document discusses how to create custom themes and modules in Drupal. It explains the file structure for themes and modules, how to use template files and preprocess functions to customize output, and references the Drupal documentation on creating themes and modules.
Loria Ambrose has over 20 years of experience in purchasing, materials management, inventory management, and sales support roles. She has a proven track record of implementing efficiency-enhancing processes that reduce costs and increase inventory turns. Her skills include negotiations, team leadership, systems implementation, and data analysis. Currently she works as an Inventory Manager where she took on additional responsibilities that helped increase inventory turns essential for market competition.
La sinaptogénesis es el proceso de formación de sinapsis entre neuronas. Ocurre principalmente durante las etapas prenatal y postnatal temprana, alcanzando su punto máximo entre los 8 y 9 meses. Es fundamental para el aprendizaje y desarrollo del cerebro, ya que permite la comunicación neuronal a través de la creación, fortalecimiento y eliminación de conexiones. La estimulación ambiental influye en la sinaptogénesis postnatal.
Disney movie rewards - Gamification in customer engagement - Manu Melwin Joymanumelwin
Disney created an online gamified loyalty rewards program called Disney Movie Rewards. Users earn points for every Disney Blu-Ray, DVD, CD, and theater ticket they purchase.
Presentation on growing population of indiaBharateche15
Every nook & corner of India is clear display of growing population.Weather you are in a airport,railway station,metro station,shopping moll ,temple,church or even some social or cultural places you will the place is overcrowded at any time of day .this is clear representation of overpopulation.
India is second largest populated country after china.
its population at the rate of 1.9 crore per year which is almost equal to the population of Australia and little more than population of japan.
it has the population almost 20 crore greater than population of whole Africa continent.
it can grow population equal to Pakistan in 10 years......
This document provides an overview of an English literature course covering works from Old English to the Victorian era. It outlines the main periods of English literature, key authors and works, and course activities. The document examines Old English works like Beowulf, Middle English works of Chaucer, Renaissance sonnets of Shakespeare, Gothic novels of the Romantic period, and concludes with exercises analyzing selected literary works.
El capítulo 2 trata sobre los principales eventos que ocurren. Se describe cómo los personajes principales interactúan entre sí y los desafíos a los que se enfrentan. Además, se establecen las bases para los conflictos y giros de la trama que se desarrollarán en los capítulos posteriores.
This summary provides an overview of post-harvest institutions around the world from the given document:
The document discusses several prominent post-harvest research and education institutions from India, the United States, and Israel. These include the ADM Institute for the Prevention of Postharvest Loss in Illinois, USA which focuses on reducing losses in staple crops. It also mentions the Central Food Technological Research Institute in Mysore, India and the Central Institute of Post Harvest Engineering and Technology in Ludhiana, India as leading Indian institutions. Finally, it briefly discusses the Postharvest Technology Center at UC Davis and the Volcani Institute Post-Harvest Innovations in Israel.
Five fantastic tips for fabulous phone photosSmallAperture
The best camera is the one that you have with you. So how do you get the best out of your smartphone when it comes to photography? By following these five pointers! Brought to you by the editor of Photocritic and the author of Social Photography, Daniela Bowker.
Plugin smilk : données liées et traitement de la langue pour améliorer la nav...SemWebPro
Pour nourrir leur stratégie marketing et leur veille concurrentielle, les entreprises doivent surveiller le Web et donner un sens à cette grande quantité d'informations. Cette information est éparpillée et nécessite beaucoup de temps pour analyser les différentes sources et compiler les connaissances recueillies de manière intelligente. SMILK est un laboratoire commun entre l'Institut de recherche Inria et la société VISEO pour étudier le couplage fort d'algorithmes et de modèles linguistiques au niveau sémantique, l'extraction et le liage de connaissances issues des ressources du Web et la combinaison de différentes techniques de raisonnement (inférences logiques, des approximations et similitude, etc.). Dans ce contexte, nous allons présenter un prototype permettant d'enrichir les connaissances des utilisateurs naviguant sur le Web à l'aide de résultats issus du Traitement Automatique du Langage Naturel, du Web de Données et des réseaux sociaux. Notre présentation se concentrera sur la démonstration d'un plugin de navigateur facile à installer et à utiliser, qui permet d’enrichir l’expérience utilisateur avec quatre fonctions : - la démo commence par montrer comment il est possible d'identifier dans une page les entités pertinentes selon les intérêts de l'utilisateur et comment structurer les données connexes à l'aide d'une analyse linguistique dédiée ; - la deuxième partie de la démo montre comment nous lions les entités reconnues dans le texte ; - la troisième étape de la démo traite du liage d’entités pour connecter les données figurant dans le texte avec les données obtenues à partir de bases de connaissances du Web ; - enfin, dans une dernière étape la démo montre l’intégration de connaissances issues des médias sociaux pour fournir aux utilisateurs des opinions et les idées clés liées au sujet exploré. Le prototype que nous présenterons intègre entièrement les quatre fonctions précédemment définies et, dans le cadre de cette démonstration, est appliqué au domaine des cosmétiques.
Auteurs : Elena Cabrio, Jordan Calvi, Fabien Gandon, Cédric Lopez, Farhad Nooralahzadeh, Thibault Parmentier, Frédérique Segond Laboratoire Commun SMILK, Inria, VISEO
Remerciements : ces travaux de R&D et transfert sont soutenus par l’ANR au travers du laboratoire commun SMILK ANR-13-LAB2-0001-01
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.
The document discusses using CSS frameworks to speed up web development by avoiding having to repeatedly write CSS resets and layout code. It describes the Blueprint CSS framework, including how it provides a grid system, typography styles, and other components out of the box. The author explains how using a framework like Blueprint CSS can save significant time over building sites from scratch each time.
How to Shot Web - Jason Haddix at DEFCON 23 - See it Live: Details in Descrip...bugcrowd
1. The document provides tips for effective hacking and bug hunting in 2015, focusing on web applications.
2. It discusses philosophy shifts towards crowdsourced testing, and techniques for discovery such as finding less tested application parts and acquisitions.
3. The document also covers mapping methodology, parameters to attack, and bypassing filters for XSS, SQLi, file inclusion, and CSRF vulnerabilities.
How to make attractive brochures and booklets using open source tools.
Creating brochures to promote your business, user group, and events can be an agonizing adventure in self-doubt. With a few simple graphic design rules, and a few open source tools you can easily make a variety of promotional materials and handouts.
In this session you'll learn how to find and use:
* Creative Commons licensed images.
* OpenOffice.org templates for tri-fold and bi-fold brochures.
* Open source fonts (yes, they exist!).
* Advanced open source applications for sophisticated layouts and custom paper sizes.
Whether you're a graphic designer exploring open source, or an open source expert looking for a little help in making appealing print materials, this session is going to have the information you need to create engaging print materials the open source way.
DOES15 - Mirco Hering - Adopting DevOps Practices for Systems of Record – An ...Gene Kim
1) The document discusses DevOps for systems of record (SOR), also known as packaged software, non-custom code, or older custom code.
2) It provides 3 simple steps to start a DevOps journey for SORs: find the code, create an "IKEA manual", and understand the path to production.
3) Significant benefits are possible from adopting DevOps practices for SORs, such as reducing merge times from 2 weeks to 3 days, but challenges remain around issues like unit testing and configuration management.
Mirco hering devops for systems of record finalMirco Hering
1) The document discusses DevOps for systems of record (SOR), also known as packaged software, non-custom code, or older custom code.
2) It provides 3 simple steps to start a DevOps journey for SORs: find the code, create an "IKEA manual", and understand the path to production.
3) Significant benefits are possible from adopting DevOps practices for SORs, such as reducing merge times from 2 weeks to 3 days, but challenges remain around issues like unit testing and configuration management.
Modern UI Architecture_ Trends and Technologies in Web DevelopmentSuresh Patidar
The document discusses modern web development trends and technologies. It begins with an introduction of the author and an overview of the topics to be covered, including the shift from classical to modern web development, latest frontend technologies and frameworks, challenges and solutions, and best practices for JavaScript and CSS. Specific technologies covered include responsive design, Ajax, HTML5, CSS3, single page applications, and popular frameworks. Architecture approaches like modular design and common patterns like MVC, MVP and MVVM are explained. The document concludes with reminders about defensive coding practices.
XPages Blast - Ideas, Tips and More.
This session will take you on a roller-coaster ride through the "best of the best" ideas and time-saving techniques for creating world-class XPages applications.
Thirty all new top tips - this is going to be fast-paced and packed with loads of information you will refer to time and time again! Everything from introductory tips on getting started with XPages, to complex tips - such as making use of Java. Also, the support app showing all of the tips and tricks.
The document summarizes a presentation about clean low-code practices in OutSystems. It covered defining clean code principles, applying clean architecture, using proper naming conventions, implementing best practices for controls like actions and screens, and tips for drawing flow diagrams. The presentation provided examples and recommendations for structuring code, naming elements, handling security, and designing screens to follow these clean coding standards in OutSystems. It ended with information on an upcoming presentation about a digital solution for connecting those who need help with people wanting to help.
#4 - CSS Selectors, CSS3 and Web typographyiloveigloo
The document discusses various techniques for digital animation and web typography. It covers CSS selectors and properties, CSS3 modules like borders, shadows and transformations. It also discusses techniques for incorporating web fonts, including using @font-face, different font formats, browser support, and services like Google Web Fonts. The document provides examples and code snippets to demonstrate the different concepts.
Good CSS troubleshooting skills are important to decrease your workload and help you work better with others. Tips for clean code and targetting, as well as solutions to modern browser bugs are covered.
How to establish ways of working that allows shifting-left of the automation ...Max Barrass
Why Automate?
Your application will grow, you will not have enough hands
You are blocked by development
Hidden factory costs of bug-fix cycle
Why Shift-Left?
More people to negate massive inspections
Define measurable success early, work on good parts.
Reduce occurrence of defects
What is this got to do with Ways of working?
Unlock capacity
Make people smile
Is not
a Department
extra cost
a final oversight or a massive inspection
someone else’s job
Is
Everyone’s responsibility
Build into the ways of working
Everyone’s job
Do you have a healthy CI/CD pipeline? Do releases simply flow through? CI, CD, PRs, Pipelines, Releases, Deployments and all that jazz.
Whether you're new to Continuous Delivery or a hardened traveller down that road, this session has something for you. We’ll start with an exploration of branching strategy (releaseflow.org) before walking through a healthy continuous delivery configuration.
We’ll watch a code change make it's way through a pipeline to production and discuss how we can apply such practices to our everyday work.
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/
DEFCON 23 - Jason Haddix - how do i shot webFelipe Prado
1. The document discusses hacking techniques for web applications, including methodology, discovery techniques, mapping, and tactical fuzzing approaches for XSS, SQLi, file inclusion, and uploads.
2. It provides tips on finding less tested application scopes, port scanning, directory bruteforcing, crawling, and using tools like SQLmap and intrigue for reconnaissance.
3. The document outlines tactics for auth bypass, session hijacking, parameter tampering, and common vulnerabilities like XSS, SQLi, file inclusion, and CSRF with examples of payloads and techniques.
The document summarizes 7 tools for a devops stack:
1) Automation tools like Puppet, Chef, and Jenkins are used to automate deployments and configurations.
2) The Marionette Collective allows orchestrating tasks across servers like checking statuses and restarting services.
3) FPM helps create software packages to address issues with packaging dependencies and versions.
4) Logstash is used for centralized logging and shipping logs anywhere while filtering and indexing them.
5) Graphite and Kibana provide visualization and graphing of metrics at scale for monitoring.
W prezentacji znajdziesz omówienie:
-organizację kodu i pracy w trochę większych projektach
-wykorzystanie narzędzi takich jak npm, gulp, sass, bower do automatyzacji zadań
-efektywną pracę w zespole z wykorzystaniem gita
-zasady tworzenia zwartego, łatwego w utrzymaniu kodu w oparciu o podejście SMACSS i BEM
-wzorce i podejście do tworzenia modularnego javascriptu
-przydatne narzędzia i biblioteki wraz z ich praktycznym zastosowaniem
-testowanie stron i aplikacji
-przyjrzymy się też nowej wersji Javascript: ES6/ES2015
This talk is about why I believe having the ability to write tools and/or scripts can help elevate a Pen Testers game to the next level.
The talk is case study driven by the different scenarios I've encountered on assessments and the scripts or tools that have been developed as a result.
The document discusses recommended practices for AngularJS file organization and structure. It presents 6 approaches to file organization and evaluates the pros and cons of each. It recommends Approach 4 (organizing files by feature) and Approach 6 (organizing by feature then sub-feature) for more complex applications. The document also discusses recommended practices for cross-component communication, scopes, named functions, and keeping controllers focused.
Best Practices in Component Development for MODXJan Tezner
This document provides best practices for developing MODX components. It discusses setting up the development environment, including folders, MODX system settings, and using a package. It offers tips for development, such as using static elements, avoiding nested chunks, and not hardcoding strings. It also covers building the package, testing, releasing, maintaining, and links to additional resources. The overall goal is to share lessons learned from developing over 100 MODX projects to help others create high quality components.
Similar to Top front-end techniques for OutSystems (20)
What is art? When proposed, this age-old question usually pertains to one’s interpretation of a painting or a sculpture, but what is art as it pertains to the IT world? Or better yet, what is art in our day-to-day work? In this session, we’ll explore the meaning of art in programming. Not only in its form and shape, but also in what it conveys.
Building frameworks: from concept to completionRuben Goncalves
What are considerations when building a framework/library? How does that apply to OutSystems components? In this session, we’ll do a deep dive into the importance of addressing certain concepts like code granularity, and architecture, in order to create useful, future-proof and coherent frameworks that deliver the best possible developer experience.
Workshop that explains how the different location technologies work in mobile, and how they can be leverage in this best possible way. Beacons, Geofence, Magnetic field mapping, antennas all of it explained.
It also explains how to leverage these technologies in OutSystems 10.
Experience either makes or breaks your app. In this session, we'll show how OutSystems 10 empowers you to create amazing applications. We're going without a safety net, so you will get to see us doing it live, in real time.
Talk performed in OutSystems NextStep Benelux 2016
The document discusses best practices for developing mobile applications and mobile-optimized websites. It notes that smartphone usage and shipments are increasing significantly. There are three main approaches to developing for mobile: native, hybrid, and responsive web. The document provides tips for each approach and emphasizes designing specifically for mobile by minimizing inputs, avoiding clutter, and choosing optimal use cases. It recommends responsive web design only when it makes sense and otherwise using optimized mobile applications.
The real impact of mobility on your business appsRuben Goncalves
The impact of new mobile technologies is underestimated in most cases. Mobility is not just about making apps available on portable devices. It’s an entirely new game and has expanding impact on business applications and their functionality. During this session, see real-world examples of successful mobile strategies.
This presentation was made in NextStep Benelux 2015 and NextStep Americas 2015.
Recording can be seen in OutSystems NextStep site: https://www.outsystems.com/nextstep/americas/2015/impact-mobility/
When creating mobile apps, solid performance is now mandatory. We'll expose the patterns and anti-patterns that will impact this critical trait of your apps, while building a performant mobile app live.
This presentation was made in NextStep Global 2015. See the recording https://www.outsystems.com/nextstep/2015/mobile-apps-that-perform/
Mobile device integration is hard. But not anymore. In this session you'll be able to see how you can easily use device capabilities and integrate with Beacons and Geofence. This presentation consisted in a live demo, which will be shared later on, and on a small video, to be shared as well later.
Presentation made at OutSystems NextStep Lisbon 2016.
Mobile development isn't as simple as one may think... and the biggest problem isn't the technology... In this webinar we cover some of the big and important subjects of mobile development:
> Framing the mobile challenge
>> Mobile Glossary
>> What is a mobile device?
>> Just a small computer?
>> Mobile device characteristics
>> UX considerations
>> Choose the right architecture
> How OutSystems Platform helps?
> Leveraging Silk UI Framework
> Going further with OutSystems Now
This was an internal OutSystems training converted to a webinar format.
Usability session @ SEI Universidade do MinhoRuben Goncalves
Usability: n. The degree to which an object, device, software application, etc. is easy to use with no specific training.
In this session we'll start by understanding what is usability and what are the risks (and costs) of creating non-usable apps. Then we'll focus into understand a bit of the science behind usability and how we can use it efficiently.
This session was created for the SEI 2016 of Minho University.
In this presentation we get to know what is a Highly Usable app, and how visual hierarchy and grids contribute to achieve that goal.
Presented @ myNextStep Benelux 2013
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.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
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.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
5. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
○ Best practices
○ Rediscovering the personal area
○ Changing the <head>
○ Browser support and testing
○ Cutting corners or how to avoid 1-click publish
● Fighting the dragon
5
17. Top front-end techniques for OutSystems
OutSystems Page - head
17
platform JS
webblock JS
page JS
injected JS
18. Top front-end techniques for OutSystems
Adding JavaScript
18
In specific page In every page using
the web block
In every page
of the eSpace
_OSGlobalJS.js HomePage.js Line.js
20. Top front-end techniques for OutSystems
OutSystems body
20
Viewstate
EPA taskbox
(BPT)
Platform JS
Developer code
21. Top front-end techniques for OutSystems
Recap
● JavaScript and CSS files are automatically added in the head
● Platform organizes resources in a specific order:
1. Meta tags – responsive, favicon, mobile web apps, SEO…
2. CSS files – web blocks, theme, page
3. JavaScript files – eSpace, web blocks, page
● All code is placed inside a <form>
21
23. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
23
○ Best practices
24. Top front-end techniques for OutSystems
Best practices
1. CSS
2. JavaScript
3. Assorted (like candies!)
24
25. Top front-end techniques for OutSystems
Best practices - CSS
25
● Have code conventions
○ Create & enforce your code conventions
○ See example: https://goo.gl/uEkvvl, http://goo.gl/djF26t, http://goo.gl/We1yvt
○ Silk UI example:
■ one rule per line;
■ space between property and value, and semicolon at
the end of line;
■ ordered alphabetically;
■ whenever possible, make the animation in CSS
■ keep z-index values as low as possible
■ …
Tip
We’ll be creating a KB article
with the guidelines followed,
when creating Silk UI
26. Top front-end techniques for OutSystems
Best practices - CSS
26
● Have code conventions
● Avoid unnecessary vendor prefixes
Autoprefixer: https://autoprefixer.github.io/ Can I Use: https://caniuse.com/ http://shouldiprefix.com/
27. Top front-end techniques for OutSystems
Best practices - CSS
27
● Have code conventions
● Avoid unnecessary vendor prefixes
○ transform: -webkit-transform, -ms-transform
○ animation: -webkit-animation
○ display flex: names change with vendor
○ background with gradient: -webkit-gradient
○ calc: no prefix, but Android 4.4 can’t divide or multiply
○ box-shadow: no prefix
○ box-sizing: no prefix
○ transition: no prefix
Tip
Use Autoprefixer
and Can I Use for
correct prefixes.
Autoprefixer: https://autoprefixer.github.io/ Can I Use: https://caniuse.com/
28. Top front-end techniques for OutSystems
Best practices - CSS
28
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
29. Top front-end techniques for OutSystems
Best practices - CSS
29
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
○ Automatically generated
○ Depend on hierarchy of blocks
○ Use Classes instead
30. Top front-end techniques for OutSystems
Best practices - CSS
30
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
1. ID, e.g. #header
2. Class, e.g. .promo
3. Type, e.g. div
4. Adjacent sibling, e.g. h2 + p
5. Child, e.g. li > ul
6. Descendant, e.g. ul a
7. Universal, i.e. *
8. Attribute, e.g. [type="text"]
9. Pseudo-classes/-elements, e.g. a:hover
Less performant
Read more: http://goo.gl/KkdKLK
31. Top front-end techniques for OutSystems 31
See webinar: http://goo.gl/aiUlvb
Learn to measure performance
32. Top front-end techniques for OutSystems
Best practices - CSS
32
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
○ Leads to styles duplication
○ Hard to maintain and evolve applications
○ Impact in performance – number of files
17 CSS
25 JS
21 img
4 fonts
33. Top front-end techniques for OutSystems
Learn performance techniques
33
See session: https://goo.gl/arvD3Q
34. Top front-end techniques for OutSystems
Best practices - CSS
34
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
○ Create an Index
35. Top front-end techniques for OutSystems
Best practices - CSS
35
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
○ Create an Index
○ Separate CSS into sections
36. Top front-end techniques for OutSystems
Best practices - CSS
36
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
○ Create an Index
○ Separate CSS into sections
○ Add all media queries to end of file
37. Top front-end techniques for OutSystems
Best practices - CSS
37
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
○ Create an Index
○ Separate CSS into sections
○ Add all media queries to end of file
○ Using Silk UI, leave patterns CSS together
Responsive
Pattern
38. Top front-end techniques for OutSystems
Best practices - CSS
38
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
● Be aware of theme dependencies – will lead to @imports
39. Top front-end techniques for OutSystems
Best practices - CSS
39
● Have code conventions
● Avoid unnecessary vendor prefixes
● Avoid using ID selectors
● Be aware of selectors performance
● Avoid defining CSS in web blocks or Pages
● Organize your theme CSS
● Be aware of theme dependencies – will lead to @imports
Tip
CSS is render blocking,
so avoid @imports, since
will delay page render
Sequential download
40. Top front-end techniques for OutSystems 40
See webinar: http://goo.gl/Qr4i50
Learn to architecture your CSS
42. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables - Messi code
○ Non-locality
○ No Access Control
○ Memory allocation
But if you really must… then be explicit:
42
Read more: http://goo.gl/g1Z4Vn P.s. – I don’t care about football at all…
43. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
43
Read more: http://goo.gl/rSBT5S
44. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
44
Read more: http://goo.gl/yhav2M
45. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
45
Read more: http://goo.gl/UpH68x
The only way to 60 fps
46. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
● Use platform jQuery ($)
46
47. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
● Use platform jQuery ($)
● Use type and value comparison === vs ==
47
Avoid
Safer
48. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
● Use platform jQuery ($)
● Use type and value comparison === vs ==
● Use Object Module approach
○ To avoid global functions
○ To avoid global variables
48
Read more: http://goo.gl/NFYIWT
49. Top front-end techniques for OutSystems
Best practices - JavaScript
● Avoid global variables
● Avoid console.log pollution
● Avoid doing animations with JavaScript
● Use platform jQuery ($)
● Use type and value comparison === vs ==
● Use Object Module approach
● Follow common JavaScript practices
○ w3schools - http://goo.gl/mIrWDF
○ Idiomatic - http://goo.gl/Hs6h47
49
50. Top front-end techniques for OutSystems
Best practices - Assorted
● EPA taskbox
50
EPA taskbox
(BPT)
51. Top front-end techniques for OutSystems
Best practices - Assorted
● Remove EPA taskbox if not in use
○ Remove programmatically
51
52. Top front-end techniques for OutSystems
Best practices - Assorted
● Remove EPA taskbox if not in use
○ Remove programmatically
○ Add exception to a specific eSpace – https://yourenvironment/EPA_Taskbox/
52
See help: https://goo.gl/u9nqPr
53. Top front-end techniques for OutSystems
Best practices - Assorted
● Remove EPA taskbox if not in use
● Checkout talk Delivering Mobile Apps that Perform
53
See session: https://goo.gl/arvD3Q
54. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
54
○ Best practices
○ Rediscovering the personal area
55. Top front-end techniques for OutSystems
“the developer can then test his changes privately without affecting any other developer”
CSS and JavaScript are local
Personal Area
55
56. Top front-end techniques for OutSystems
Personal Area
“the developer can then test his changes privately without affecting any other developer”
56
57. Top front-end techniques for OutSystems
Personal Area - limitations
57
Changes to the following elements require
See platform help: http://goo.gl/VGD7aA
58. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
○ Best practices
○ Rediscovering the personal area
○ Changing the <head>
58
59. Top front-end techniques for OutSystems
Changing the <head>
● HTTPRequestHandler
○ AddJavaScriptTag
○ AddStyleSheetTag
○ Add PostProcessingFilter
59
60. Top front-end techniques for OutSystems
Changing the <head> like a boss
● HTTPRequestHandler
● IncludeJavascript_API
60
61. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
○ Best practices
○ Rediscovering the personal area
○ Changing the <head> like a boss
○ Browser support and testing
61
62. Top front-end techniques for OutSystems
Browser support and testing
1. Ever increasing number of devices
62
Read more: http://goo.gl/YmLOn3
63. Top front-end techniques for OutSystems
Browser support and testing
1. Ever increasing number of devices
2. Identify target devices for market
63
Read more: http://goo.gl/apBVGF
64. Top front-end techniques for OutSystems
Browser support and testing
1. Ever increasing number of devices
2. Identify target devices for market
3. Test in target browsers / devices
64
BrowserStack: http://goo.gl/jwIuJM CrossBrowserTesting: http://goo.gl/cOkpE1
65. Top front-end techniques for OutSystems
Agenda
● What’s under the hood?
● Top front-end techniques
○ Best practices
○ Rediscovering the personal area
○ Changing the <head> like a boss
○ Browser support and testing
○ Cutting corners or how to avoid 1-click publish
65
67. Top front-end techniques for OutSystems
How to avoid 1-click publish
● Tools of the trade
○ Sublime Text 3
○ Google Chrome
○ Xampp
○ Node JS
○ CSS Inject (chrome extension)
○ LiveReload (desktop + chrome extension)
67
Tip
Worry not, we’ll be creating
a post to explain step by
step how to do this.
76. Top front-end techniques for OutSystems
Takeaways
76
● Front-end is no different in OutSystems
● Same techniques and approaches apply
● Leverage platform mechanisms, jQuery, HTTPRequestHandler, …
● Everything is possible, but with necessary care