This document describes a project to build a new public-facing website on Azure using Sitecore 9.3. It discusses the existing on-premise Sitecore sites, setting up DevOps pipelines, creating API wrappers and UI components in the initial sprints. It then covers establishing a design system using Atomic Design principles and the technologies used, including HTML5, CSS3, JavaScript, and frameworks like React. The document provides overviews of key JavaScript concepts like classes, arrow functions and ES6 updates as well as setting up the design system.
Privacy by Design and by Default + General Data Protection Regulation with Si...Peter Procházka
My presentation for SUG Hungary presented on 26.06.2018 with topic Privacy by Design and by Default and General Data Protection Regulation with Sitecore
Sitecore Experience Commerce 9 Update 2 New FeaturesPeter Procházka
Presentation from my session "Sitecore Experience Commerce 9 Update 2 New Features" presented during SUGTourEU on first meetup of SUG Czechia & Slovakia in Prague on 30th October 2018
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.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
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.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Privacy by Design and by Default + General Data Protection Regulation with Si...Peter Procházka
My presentation for SUG Hungary presented on 26.06.2018 with topic Privacy by Design and by Default and General Data Protection Regulation with Sitecore
Sitecore Experience Commerce 9 Update 2 New FeaturesPeter Procházka
Presentation from my session "Sitecore Experience Commerce 9 Update 2 New Features" presented during SUGTourEU on first meetup of SUG Czechia & Slovakia in Prague on 30th October 2018
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.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
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.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
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
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
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/
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
From hero to zero and back to hero - SUG Chennai - 29.04.2021
1. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Peter Prochazka
tothecore.sk / @chorpo
From Hero to Zero
and back to Hero
2. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
https://tothecore.sk/
https://twitter.com/chorpo
http://goodreads.com/chorpo
https://linkedin.com/in/chorpo
Peter Procházka
Quick Intro
3. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
The Project
(Initial description)
4. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
The Project
• Brown field project
• Existing Sitecore sites – on Prem:
1. Public facing website
• Sitecore 8.0 with MVC
• Built 5 years ago
• Little bit of Angular
2. Microsite – Only for members – Platform 1.0
• Sitecore 8.0 with MVC
• Vue.js
• Build last year
• Our project – Platform 1.1 -> Azure
• Build a new public facing website on top of Platform 1.0 on top of Sitecore
9.3
5. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 0
6. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
7. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
8. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
9. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Clash of the Titans
10. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore 10 Sitecore 9.3
Sitecore version
11. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
12. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
• Setting DevOps pipelines
• Creating one click deployments
• Following “Build once, deploy anywhere”
• Creating API
• to wrap third-party APIs
• hide implementation details
• increasing security
• Creating components, layouts, …
13. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
14. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
15. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
16. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
17. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprints 1 & 2
18. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 3
19. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 3
20. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 3
21. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 3
22. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sprint 4
23. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
The Design System
24. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Atomic Design
Atomic Design
25. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Atomic Design
26. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Atomic Design
• Book
27. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
HTML5 and CSS3
28. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
HTML5
29. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
HTML5
30. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
CSS3
• Frameworks
• Vanilla CSS
• CSS Frameworks / UI Kits:
• Bootstrap
• Foundation
• Bulma
• Utility-first
• Tailwind
• Windi
31. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
CSS3
32. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
33. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
34. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
35. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
36. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
37. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
38. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
39. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
40. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
41. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
42. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
43. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
44. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
45. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
46. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
47. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
48. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript - Date
49. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript - hoisting
50. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript - hoisting
51. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript - npm
52. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript
53. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JavaScript – Basic knowledge
• Data types, variables, loops, functions
• Global/local scope
• Array methods like forEach(), map() and reduce(); pop(), push(), slice()
• Promises & async programming
• Fetch API and how to make HTTP requests
54. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ECMAScript
55. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ECMAScript
• JavaScript -> ECMAScript
• ECMAScript:
• JavaScript
• ActionScript
• JScript
56. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ECMAScript
• ES1 – June 1997
• ES5 – December 2009
• ES5.1 – June 2011
• ES6 = ES2015 – June 2015
• ES2016
• ES2017
• ES2018
57. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 – Let and const
• var
58. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 - Let and const
• var
• var ->
• let
• const
59. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 - Arrow functions
• const myFunction = function() { //.. }}
• const myFunction = () => { //..}
• const myFunction = () => doSomething()
• const myFunction = (param1, param2) => doSomething(param1,
param2)
• const myFunction = param => doSomething(param)
60. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 - Arrow functions – Implicit return
• const myFunction = () => ‘Hello World’
• const myFunction = () => ({ value: ‘Hello World’ })
61. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 - Classes
• JavaScript => Prototypical inheritance
• ES6 Classes
class Rectangle {
constructor(height, width) {
this.height = height;
this.width = width;
}
}
62. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
ES6 - Classes
• ES6 Class inheritance
63. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
64. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• Key principles:
• Declarative
• Component-based
• Learn Once, Write Anywhere
65. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
66. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• Virtual DOM
• DOM vs. Virtual DOM
67. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• JSX
68. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• React Official Documentation:
• https://reactjs.org/docs/hello-world.html
69. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• Books
70. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
• Trainings
https://www.udacity.com/course/react-nanodegree--nd019
71. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
72. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
React
73. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS
74. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS
• Sitecore JavaScript SDK (JSS) is a set of npm packages that enable
implementing Sitecore apps using modern JavaScript frameworks:
• Core packages that abstract away the "Sitecore stuff" like talking to
different Sitecore APIs,
• Framework-specific packages with components that render data managed
by the core packages, and
• Simple starter apps for every supported framework.
75. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Browser requests
URL
CMS founds
content, renders it
and serves HTML
Browser / client
displays rendered
HTML
Sitecore JSS – BE vs. FE - BE
SXA
Sitecore
ASP.NET
76. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
SXA
Sitecore JSS
React
Vanilla
JavaScript
Browser requests
content from CMS
API (Headless
Layout Service)
CMS finds content
and serves JSON
through API
Browser / client
creates markup
Layout
Services
Sitecore
ASP.NET
Sitecore JSS – BE vs. FE - FE
77. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JSS - Programming Styles
Code-First Sitecore-First
78. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
JSS - Modes
Integrated Connected
Disconnected
79. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – BE vs. FE - Tooling
• Visual Studio vs. Visual Studio Code
• VS Code is not mandatory ☺
• You can use anything – Notepad, Notepad++, Atom, … ;-)
• ESLint
• Prettier
80. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Creating project
• Four commands you need to use when creating new project:
• npm install -g @sitecore-jss/sitecore-jss-cli
• jss create my-first-jss-app react
• cd my-first-jss-app
• jss start
• When working with not the latest Sitecore/JSS, you need to use
this command instead:
• jss create my-first-jss-app react -b release/13.0.0
• More details on my blog:
• https://tothecore.sk/2021/03/24/creating-version-specific-sitecore-jss-
projects/
81. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Development
• Two commands you need to use during development:
• jss deploy app --includeContent --includeDictionary
• jss deploy items --language=de-DE --includeContent --includeDictionary
82. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – No environment specific configuration
• No OOTB support
• Sitecore Rule Based Configuration
• https://doc.sitecore.com/developers/93/platform-administration-and-
architecture/en/rule-based-configuration.html
• API – GetSettings
• More details:
• https://tothecore.sk/2021/04/26/how-to-have-environment-specific-configuration-
with-sitecore-jss/
83. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
• RTFM
• https://tothecore.sk/2020/08/28/sitecore-jss-learning-resources-getting-
started-with-jss
• Practice, Practice, Practice, …
Sitecore JSS – Learning resources
84. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Yaml
85. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Yaml
86. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Yaml
87. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Sitecore JSS – Yaml
88. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
The Project
(final description)
89. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
The Project
• Green field project instead of Brown field
• Our project – Platform 1.1
• Using Sitecore JSS
• With React
• On Sitecore 9.3
• Following Atomic Design
• Possible next steps:
• Upgrade to Sitecore 10.1
• Using Next.js
• Using Storybook
90. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
91. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
92. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
“The more languages you know, the more of a person you are”.
My grandfather
“The more languages you know, the more of a developer you are”.
Me
93. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
SITECORE JSS LEARNING RESOURCES / GETTING STARTED WITH JSS
https://tothecore.sk/2020/08/28/sitecore-jss-learning-resources-
getting-started-with-jss
https://doc.sitecore.net/
https://sitecorechat.slack.com/
https://sitecore.stackexchange.com/
94. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Questions?
https://tothecore.sk/
https://twitter.com/chorpo
http://goodreads.com/chorpo
https://linkedin.com/in/chorpo
Peter Procházka
95. From Hero to Zero and back to Hero by Peter Prochazka (tothecore.sk / @chorpo) Log out | Peter Prochazka
Thank you
and
may the force
be with you