diff --git a/content/roadmaps/101-backend/content-paths.json b/content/roadmaps/101-backend/content-paths.json
index 87b4acb9b..66fc12e4c 100644
--- a/content/roadmaps/101-backend/content-paths.json
+++ b/content/roadmaps/101-backend/content-paths.json
@@ -48,22 +48,25 @@
"nosql-databases:column-databases": "/roadmaps/101-backend/content/107-nosql-databases/101-column-databases.md",
"nosql-databases:timeseries-databases": "/roadmaps/101-backend/content/107-nosql-databases/102-timeseries-databases.md",
"nosql-databases:realtime-databases": "/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md",
+ "nosql-databases:key-value-databases": "/roadmaps/101-backend/content/107-nosql-databases/104-key-value-databases.md",
"more-about-databases": "/roadmaps/101-backend/content/108-more-about-databases/readme.md",
"more-about-databases:orms": "/roadmaps/101-backend/content/108-more-about-databases/100-orms.md",
"more-about-databases:acid": "/roadmaps/101-backend/content/108-more-about-databases/101-acid.md",
"more-about-databases:transactions": "/roadmaps/101-backend/content/108-more-about-databases/102-transactions.md",
"more-about-databases:n-plus-one-problem": "/roadmaps/101-backend/content/108-more-about-databases/103-n-plus-one-problem.md",
"more-about-databases:database-normalization": "/roadmaps/101-backend/content/108-more-about-databases/104-database-normalization.md",
- "more-about-databases:database-indexes": "/roadmaps/101-backend/content/108-more-about-databases/105-database-indexes.md",
- "more-about-databases:data-replication": "/roadmaps/101-backend/content/108-more-about-databases/106-data-replication.md",
- "more-about-databases:sharding-strategies": "/roadmaps/101-backend/content/108-more-about-databases/107-sharding-strategies.md",
- "more-about-databases:cap-theorem": "/roadmaps/101-backend/content/108-more-about-databases/108-cap-theorem.md",
+ "scaling-databases": "/roadmaps/101-backend/content/109-scaling-databases/readme.md",
+ "scaling-databases:database-indexes": "/roadmaps/101-backend/content/109-scaling-databases/100-database-indexes.md",
+ "scaling-databases:data-replication": "/roadmaps/101-backend/content/109-scaling-databases/101-data-replication.md",
+ "scaling-databases:sharding-strategies": "/roadmaps/101-backend/content/109-scaling-databases/102-sharding-strategies.md",
+ "scaling-databases:cap-theorem": "/roadmaps/101-backend/content/109-scaling-databases/103-cap-theorem.md",
"apis": "/roadmaps/101-backend/content/109-apis/readme.md",
"apis:rest": "/roadmaps/101-backend/content/109-apis/100-rest.md",
"apis:json-apis": "/roadmaps/101-backend/content/109-apis/101-json-apis.md",
"apis:soap": "/roadmaps/101-backend/content/109-apis/102-soap.md",
"apis:grpc": "/roadmaps/101-backend/content/109-apis/103-grpc.md",
"apis:hateoas": "/roadmaps/101-backend/content/109-apis/104-hateoas.md",
+ "apis:graphql": "/roadmaps/101-backend/content/109-apis/106-graphql.md",
"apis:open-api-spec": "/roadmaps/101-backend/content/109-apis/105-open-api-spec.md",
"apis:authentication": "/roadmaps/101-backend/content/109-apis/106-authentication/readme.md",
"apis:authentication:cookie-based": "/roadmaps/101-backend/content/109-apis/106-authentication/100-cookie-based.md",
@@ -98,12 +101,15 @@
"design-and-development-principles:gof-design-patterns": "/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md",
"design-and-development-principles:domain-driven-design": "/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md",
"design-and-development-principles:test-driven-development": "/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md",
+ "design-and-development-principles:cqrs": "/roadmaps/101-backend/content/114-design-and-development-principles/103-cqrs.md",
+ "design-and-development-principles:event-sourcing": "/roadmaps/101-backend/content/114-design-and-development-principles/104-event-sourcing.md",
"architectural-patterns": "/roadmaps/101-backend/content/115-architectural-patterns/readme.md",
"architectural-patterns:monolithic-apps": "/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md",
"architectural-patterns:microservices": "/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md",
"architectural-patterns:soa": "/roadmaps/101-backend/content/115-architectural-patterns/102-soa.md",
- "architectural-patterns:cqrs": "/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md",
"architectural-patterns:serverless": "/roadmaps/101-backend/content/115-architectural-patterns/104-serverless.md",
+ "architectural-patterns:service-mesh": "/roadmaps/101-backend/content/115-architectural-patterns/105-service-mesh.md",
+ "architectural-patterns:twelve-factor-apps": "/roadmaps/101-backend/content/115-architectural-patterns/106-twelve-factor-apps.md",
"search-engines": "/roadmaps/101-backend/content/116-search-engines/readme.md",
"search-engines:elasticsearch": "/roadmaps/101-backend/content/116-search-engines/100-elasticsearch.md",
"search-engines:solr": "/roadmaps/101-backend/content/116-search-engines/101-solr.md",
@@ -112,7 +118,7 @@
"message-brokers:kafka": "/roadmaps/101-backend/content/117-message-brokers/101-kafka.md",
"containerization": "/roadmaps/101-backend/content/118-containerization/readme.md",
"containerization:docker": "/roadmaps/101-backend/content/118-containerization/100-docker.md",
- "containerization:rkt": "/roadmaps/101-backend/content/118-containerization/101-rkt.md",
+ "containerization:kubernetes": "/roadmaps/101-backend/content/118-containerization/103-kubernetes.md",
"containerization:lxc": "/roadmaps/101-backend/content/118-containerization/102-lxc.md",
"graphql": "/roadmaps/101-backend/content/119-graphql/readme.md",
"graphql:apollo": "/roadmaps/101-backend/content/119-graphql/100-apollo.md",
@@ -120,6 +126,7 @@
"graph-databases": "/roadmaps/101-backend/content/120-graph-databases/readme.md",
"graph-databases:neo4j": "/roadmaps/101-backend/content/120-graph-databases/100-neo4j.md",
"web-sockets": "/roadmaps/101-backend/content/121-web-sockets.md",
+ "server-sent-events": "/roadmaps/101-backend/content/122-server-sent-events.md",
"web-servers": "/roadmaps/101-backend/content/122-web-servers/readme.md",
"web-servers:nginx": "/roadmaps/101-backend/content/122-web-servers/100-nginx.md",
"web-servers:apache": "/roadmaps/101-backend/content/122-web-servers/101-apache.md",
@@ -130,5 +137,6 @@
"scalability:instrumentation-monitoring-telemetry": "/roadmaps/101-backend/content/123-scalability/101-instrumentation-monitoring-telemetry.md",
"scalability:migration-strategies": "/roadmaps/101-backend/content/123-scalability/102-migration-strategies.md",
"scalability:horizontal-vertical-scaling": "/roadmaps/101-backend/content/123-scalability/103-horizontal-vertical-scaling.md",
- "scalability:observability": "/roadmaps/101-backend/content/123-scalability/104-observability.md"
+ "scalability:observability": "/roadmaps/101-backend/content/123-scalability/104-observability.md",
+ "bonus-content": "/roadmaps/101-backend/content/124-bonus-content.md"
}
diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md b/content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md
index 63c3f18e2..97ad8ea54 100644
--- a/content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md
+++ b/content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md
@@ -1,4 +1,4 @@
-# Csharp
+# C#
C# (pronounced "C sharp") is a general purpose programming language made by Microsoft. It is used to perform different tasks and can be used to create web apps, games, mobile apps, etc.
Free Content
diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md b/content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md
index 4e949d62b..6108ff8a3 100644
--- a/content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md
+++ b/content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md
@@ -6,8 +6,9 @@
# JavaScript
-JavaScript, often abbreviated JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. It lets us add interactivity to pages e.g. you might have seen sliders, alerts, click interactions, and popups etc on different websites -- all of that is built using JavaScript. Apart from being used in the browser, it is also used in other non-browser environments as well such as Node.js for writing server-side code in JavaScript, Electron for writing desktop applications, React Native for mobile applications and so on.
+Apart from being used in the browser, JavaScript is also used in backend e.g. using [Node.js](https://nodejs.org/) or [Deno](https://deno.land/) for writing server-side code in JavaScript.
+If you pick up JavaScript for the Backend, my personal recommendation would be to learn [JavaScript](/javascript) and then go with [Node.js](/nodejs) as it is the most popular and widely used option. Also, I would recommend learning TypeScript later on as you continue with your backend development Journey; it's a superset of JavaScript and is used in many projects.
Free Content
diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/readme.md b/content/roadmaps/101-backend/content/103-learn-a-language/readme.md
index 1cb5648a8..d305ca9a9 100644
--- a/content/roadmaps/101-backend/content/103-learn-a-language/readme.md
+++ b/content/roadmaps/101-backend/content/103-learn-a-language/readme.md
@@ -3,3 +3,5 @@
Even if you’re a beginner the least you would have known is that Web Development is majorly classified into two facets: Frontend Development and Backend Development. And obviously, they both have their respective set of tools and technologies. For instance, when we talk about Frontend Development, there always comes 3 names first and foremost – HTML, CSS, and JavaScript.
In the same way, when it comes to Backend Web Development – we primarily require a backend (or you can say server-side) programming language to make the website function along with various other tools & technologies such as databases, frameworks, web servers, etc.
+
+Pick a language from the given list and make sure to learn its quirks, core details about its runtime e.g. concurrency, memory model etc.
diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/104-key-value-databases.md b/content/roadmaps/101-backend/content/107-nosql-databases/104-key-value-databases.md
new file mode 100644
index 000000000..939995aa6
--- /dev/null
+++ b/content/roadmaps/101-backend/content/107-nosql-databases/104-key-value-databases.md
@@ -0,0 +1,10 @@
+# Key-Value Databases
+
+A key-value database (KV database) is a type of database that stores data as a collection of key-value pairs. In a KV database, each piece of data is identified by a unique key, and the value is the data associated with that key.
+
+KV databases are designed for fast and efficient storage and retrieval of data, and they are often used in applications that require high performance and low latency. They are particularly well-suited for storing large amounts of unstructured data, such as log data and user profiles.
+
+Some popular KV databases include Redis, Memcached, and LevelDB. These databases are often used in combination with other types of databases, such as relational databases or document databases, to provide a complete and scalable data storage solution.
+
+Free Content
+Key-Value Databases - Wikipedia
diff --git a/content/roadmaps/101-backend/content/109-apis/106-graphql.md b/content/roadmaps/101-backend/content/109-apis/106-graphql.md
new file mode 100644
index 000000000..b3630a5bd
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-apis/106-graphql.md
@@ -0,0 +1,12 @@
+# GraphQL
+
+GraphQL is a query language and runtime system for APIs (application programming interfaces). It is designed to provide a flexible and efficient way for clients to request data from servers, and it is often used as an alternative to REST (representational state transfer) APIs.
+
+One of the main features of GraphQL is its ability to specify exactly the data that is needed, rather than receiving a fixed set of data from an endpoint. This allows clients to request only the data that they need, and it reduces the amount of data that needs to be transferred over the network.
+
+GraphQL also provides a way to define the structure of the data that is returned from the server, allowing clients to request data in a predictable and flexible way. This makes it easier to build and maintain client applications that depend on data from the server.
+
+GraphQL is widely used in modern web and mobile applications, and it is supported by a large and active developer community.
+
+Free Content
+GraphQL Official Website
diff --git a/content/roadmaps/101-backend/content/109-scaling-databases/100-database-indexes.md b/content/roadmaps/101-backend/content/109-scaling-databases/100-database-indexes.md
new file mode 100644
index 000000000..8f4dc6c30
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-scaling-databases/100-database-indexes.md
@@ -0,0 +1,7 @@
+# Database Indexes
+
+An index is a data structure that you build and assign on top of an existing table that basically looks through your table and tries to analyze and summarize so that it can create shortcuts.
+
+Free Content
+An in-depth look at Database Indexing
+Database Indexing Explained
diff --git a/content/roadmaps/101-backend/content/109-scaling-databases/101-data-replication.md b/content/roadmaps/101-backend/content/109-scaling-databases/101-data-replication.md
new file mode 100644
index 000000000..255ef50e9
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-scaling-databases/101-data-replication.md
@@ -0,0 +1,7 @@
+# Data Replication
+
+Data replication is the process by which data residing on a physical/virtual server(s) or cloud instance (primary instance) is continuously replicated or copied to a secondary server(s) or cloud instance (standby instance). Organizations replicate data to support high availability, backup, and/or disaster recovery.
+
+Free Content
+
+What is Data Replication?
diff --git a/content/roadmaps/101-backend/content/109-scaling-databases/102-sharding-strategies.md b/content/roadmaps/101-backend/content/109-scaling-databases/102-sharding-strategies.md
new file mode 100644
index 000000000..fd03a5dc3
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-scaling-databases/102-sharding-strategies.md
@@ -0,0 +1,9 @@
+# Sharding strategies
+
+Sharding strategy is a technique to split a large dataset into smaller chunks (logical shard) in which we distribute these chunks in different machines/database nodes in order to distribute the traffic load. It’s a good mechanism to improve the scalability of an application. Many databases support sharding, but not all.
+
+Free Content
+
+Database Sharding – System Design Interview Concept
+Wikipedia - Sharding in Datbase Architectures
+How sharding a database can make it faster
diff --git a/content/roadmaps/101-backend/content/109-scaling-databases/103-cap-theorem.md b/content/roadmaps/101-backend/content/109-scaling-databases/103-cap-theorem.md
new file mode 100644
index 000000000..7f7a22712
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-scaling-databases/103-cap-theorem.md
@@ -0,0 +1,10 @@
+# CAP Theorem
+
+CAP is an acronym that stands for Consistency, Availability and Partition Tolerance. According to CAP theorem, any distributed system can only guarantee two of the three properties at any point of time. You can't guarantee all three properties at once.
+
+Free Content
+What is CAP Theorem?
+CAP Theorem - Wikipedia
+An Illustrated Proof of the CAP Theorem
+CAP Theorem and it's applications in NoSQL Databases
+What is CAP Theorem?
diff --git a/content/roadmaps/101-backend/content/109-scaling-databases/readme.md b/content/roadmaps/101-backend/content/109-scaling-databases/readme.md
new file mode 100644
index 000000000..cd001c442
--- /dev/null
+++ b/content/roadmaps/101-backend/content/109-scaling-databases/readme.md
@@ -0,0 +1,7 @@
+# Databases
+
+A database is a collection of useful data of one or more related organizations structured in a way to make data an asset to the organization. A database management system is a software designed to assist in maintaining and extracting large collections of data in a timely fashion.
+
+Free Content
+Oracle: What is a Database?
+Prisma.io: What are Databases?
diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/103-cqrs.md
similarity index 95%
rename from content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md
rename to content/roadmaps/101-backend/content/114-design-and-development-principles/103-cqrs.md
index a0ded4d0b..645eafe67 100644
--- a/content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md
+++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/103-cqrs.md
@@ -1,4 +1,4 @@
-# CQRS and Event Sourcing
+# CQRS
CQRS, or command query responsibility segregation, defines an architectural pattern where the main focus is to separate the approach of reading and writing operations for a data store. CQRS can also be used along with Event Sourcing pattern in order to persist application state as an ordered of sequence events, making it possible to restore data to any point in time.
diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/104-event-sourcing.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/104-event-sourcing.md
new file mode 100644
index 000000000..4953836b6
--- /dev/null
+++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/104-event-sourcing.md
@@ -0,0 +1,10 @@
+# Event Sourcing
+
+Event sourcing is a design pattern in which the state of a system is represented as a sequence of events that have occurred over time. In an event-sourced system, changes to the state of the system are recorded as events and stored in an event store. The current state of the system is derived by replaying the events from the event store.
+
+One of the main benefits of event sourcing is that it provides a clear and auditable history of all the changes that have occurred in the system. This can be useful for debugging and for tracking the evolution of the system over time.
+
+Event sourcing is often used in conjunction with other patterns, such as Command Query Responsibility Segregation (CQRS) and domain-driven design, to build scalable and responsive systems with complex business logic. It is also useful for building systems that need to support undo/redo functionality or that need to integrate with external systems.
+
+Free Content
+Event Sourcing - Martin Fowler
diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/105-service-mesh.md b/content/roadmaps/101-backend/content/115-architectural-patterns/105-service-mesh.md
new file mode 100644
index 000000000..e4f88d3a9
--- /dev/null
+++ b/content/roadmaps/101-backend/content/115-architectural-patterns/105-service-mesh.md
@@ -0,0 +1,13 @@
+# Service Mesh
+
+A service mesh is a network of microservices that are connected using a mesh of interconnected, intelligent proxies. It is used to manage and secure communication between microservices, and it provides features such as load balancing, service discovery, and observability.
+
+In a service mesh, each microservice is typically represented by an instance of a lightweight, transparent proxy called an "envoy." The envoys handle the communication between microservices and provide features such as load balancing, routing, and security.
+
+Service meshes are typically implemented using a sidecar pattern, in which the envoys are deployed alongside the microservices they are responsible for. This allows the service mesh to be decoupled from the microservices and makes it easier to manage and update.
+
+Service meshes are commonly used in cloud-native architectures and are often managed using a control plane, which is responsible for configuring and managing the envoys. Some popular service mesh implementations include Istio and Linkerd.
+
+Free Content
+What is a Service Mesh?
+Service Mesh Explained - Cloud Native Computing Foundation (CNCF)
diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/106-twelve-factor-apps.md b/content/roadmaps/101-backend/content/115-architectural-patterns/106-twelve-factor-apps.md
new file mode 100644
index 000000000..880149dfc
--- /dev/null
+++ b/content/roadmaps/101-backend/content/115-architectural-patterns/106-twelve-factor-apps.md
@@ -0,0 +1,23 @@
+# Twelve-Factor Apps
+
+The Twelve-Factor App is a methodology for building scalable and maintainable software-as-a-service (SaaS) applications. It is based on a set of best practices that were identified by the authors of the methodology as being essential for building modern, cloud-native applications.
+
+The Twelve-Factor App methodology consists of the following principles:
+
+* Codebase: There should be a single codebase for the application, with multiple deployments.
+* Dependencies: The application should explicitly declare and isolate its dependencies.
+* Config: The application should store configuration in the environment.
+* Backing services: The application should treat backing services as attached resources.
+* Build, release, run: The application should be built, released, and run as an isolated unit.
+* Processes: The application should be executed as one or more stateless processes.
+* Port binding: The application should expose its services through port binding.
+* Concurrency: The application should scale out by adding more processes, not by adding threads.
+* Disposability: The application should be designed to start and stop quickly.
+* Dev/prod parity: The development, staging, and production environments should be as similar as possible.
+* Logs: The application should treat logs as event streams.
+* Admin processes: The application should run admin/maintenance tasks as one-off processes.
+
+The Twelve-Factor App methodology is widely adopted by developers of SaaS applications, and it is seen as a best practice for building cloud-native applications that are scalable, maintainable, and easy to deploy.
+
+Free Content
+The Twelve-Factor App
diff --git a/content/roadmaps/101-backend/content/118-containerization/101-rkt.md b/content/roadmaps/101-backend/content/118-containerization/101-rkt.md
deleted file mode 100644
index 35739b328..000000000
--- a/content/roadmaps/101-backend/content/118-containerization/101-rkt.md
+++ /dev/null
@@ -1,13 +0,0 @@
-# RKT
-
-RKT(pronounced like a "rocket") is an application container engine developed for modern production cloud-native environments. It features a pod-native approach, a pluggable execution environment, and a well-defined surface area that makes it ideal for integration with other systems.
-
-
-RKT project was ended in 2018.
-
-Free Content
-RKT Documentation
-What is RKT?
-What is RKT?
-Introduction to RKT
-The RKT Container Runtime - Explanation & Demonstration
diff --git a/content/roadmaps/101-backend/content/118-containerization/103-kubernetes.md b/content/roadmaps/101-backend/content/118-containerization/103-kubernetes.md
new file mode 100644
index 000000000..e08de302d
--- /dev/null
+++ b/content/roadmaps/101-backend/content/118-containerization/103-kubernetes.md
@@ -0,0 +1,12 @@
+# Kubernetes
+
+Kubernetes is an [open source](https://github.com/kubernetes/kubernetes) container management platform, and the dominant product in this space. Using Kubernetes, teams can deploy images across multiple underlying hosts, defining their desired availability, deployment logic, and scaling logic in YAML. Kubernetes evolved from Borg, an internal Google platform used to provision and allocate compute resources. (similar to the Autopilot and Aquaman systems of Microsoft Azure)
+
+The popularity of Kubernetes has made it an increasingly important skill for the DevOps Engineer and has triggered the creation of Platform teams across the industry. These Platform engineering teams often exist with the sole purpose of making Kubernetes approachable and usable for their product development colleagues.
+
+Free Content
+Kubernetes Website
+Kubernetes Documentation
+Kubernetes Crash Course for Absolute Beginners
+Primer: How Kubernetes Came to Be, What It Is, and Why You Should Care
+Kubernetes: An Overview
diff --git a/content/roadmaps/101-backend/content/122-server-sent-events.md b/content/roadmaps/101-backend/content/122-server-sent-events.md
new file mode 100644
index 000000000..512625dfa
--- /dev/null
+++ b/content/roadmaps/101-backend/content/122-server-sent-events.md
@@ -0,0 +1,10 @@
+# Server Sent Events
+
+Server-Sent Events (SSE) is a technology that allows a web server to push data to a client in real-time. It uses an HTTP connection to send a stream of data from the server to the client, and the client can listen for these events and take action when they are received.
+
+SSE is useful for applications that require real-time updates, such as chat systems, stock tickers, and social media feeds. It is a simple and efficient way to establish a long-lived connection between a client and a server, and it is supported by most modern web browsers.
+
+To use SSE, the client must create an EventSource object and specify the URL of the server-side script that will send the events. The server can then send events by writing them to the response stream with the proper formatting.
+
+Free Content
+Server-Sent Events - MDN
diff --git a/content/roadmaps/101-backend/content/124-bonus-content.md b/content/roadmaps/101-backend/content/124-bonus-content.md
new file mode 100644
index 000000000..fbb5ae2c4
--- /dev/null
+++ b/content/roadmaps/101-backend/content/124-bonus-content.md
@@ -0,0 +1,5 @@
+# Bonus Content
+
+Following expands on the topics covered in the roadmap and has the items which were missed in the roadmap.
+
+* **Regular Expressions**: Regular expressions are a powerful tool for string manipulation. They are used in many programming languages and are a must know for any developer. [RegexOne](https://regexone.com/) is a good place to start learning regular expressions.
diff --git a/content/roadmaps/116-aspnet-core/content/114-microservices/102-kubernetes.md b/content/roadmaps/116-aspnet-core/content/114-microservices/102-kubernetes.md
index ddf04c9b3..e08de302d 100644
--- a/content/roadmaps/116-aspnet-core/content/114-microservices/102-kubernetes.md
+++ b/content/roadmaps/116-aspnet-core/content/114-microservices/102-kubernetes.md
@@ -1 +1,12 @@
-# Kubernetes
\ No newline at end of file
+# Kubernetes
+
+Kubernetes is an [open source](https://github.com/kubernetes/kubernetes) container management platform, and the dominant product in this space. Using Kubernetes, teams can deploy images across multiple underlying hosts, defining their desired availability, deployment logic, and scaling logic in YAML. Kubernetes evolved from Borg, an internal Google platform used to provision and allocate compute resources. (similar to the Autopilot and Aquaman systems of Microsoft Azure)
+
+The popularity of Kubernetes has made it an increasingly important skill for the DevOps Engineer and has triggered the creation of Platform teams across the industry. These Platform engineering teams often exist with the sole purpose of making Kubernetes approachable and usable for their product development colleagues.
+
+Free Content
+Kubernetes Website
+Kubernetes Documentation
+Kubernetes Crash Course for Absolute Beginners
+Primer: How Kubernetes Came to Be, What It Is, and Why You Should Care
+Kubernetes: An Overview
diff --git a/public/project/backend.json b/public/project/backend.json
index b3be9eb9d..4340768c5 100644
--- a/public/project/backend.json
+++ b/public/project/backend.json
@@ -2,139 +2,16 @@
"mockup": {
"controls": {
"control": [
- {
- "ID": "14051",
- "typeID": "Arrow",
- "zOrder": "1",
- "w": "62",
- "h": "114",
- "measuredW": "150",
- "measuredH": "100",
- "x": "957",
- "y": "1246",
- "properties": {
- "color": "2848996",
- "curvature": "1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 61,
- "y": 113
- },
- "p1": {
- "x": 0.4724095467073242,
- "y": 0.05641236146132645
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14052",
- "typeID": "Arrow",
- "zOrder": "2",
- "w": "52",
- "h": "68",
- "measuredW": "150",
- "measuredH": "100",
- "x": "966",
- "y": "1245",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 51,
- "y": 67
- },
- "p1": {
- "x": 0.5053615617266979,
- "y": -0.006323893318669233
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14053",
- "typeID": "Arrow",
- "zOrder": "3",
- "w": "65",
- "h": "39",
- "measuredW": "150",
- "measuredH": "100",
- "x": "956",
- "y": "1229",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 64,
- "y": 38
- },
- "p1": {
- "x": 0.5053615617266979,
- "y": -0.006323893318669233
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14054",
- "typeID": "Arrow",
- "zOrder": "4",
- "w": "88",
- "h": "20",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1025",
- "y": "1624",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 20
- },
- "p1": {
- "x": 0.48230378246905115,
- "y": 0.08955689294957749
- },
- "p2": {
- "x": 87.5,
- "y": 1
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
{
"ID": "14055",
"typeID": "Arrow",
- "zOrder": "5",
+ "zOrder": "69",
"w": "116",
"h": "68",
"measuredW": "150",
"measuredH": "100",
- "x": "870",
- "y": "2930",
+ "x": "1348",
+ "y": "3863",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -158,13 +35,13 @@
{
"ID": "14056",
"typeID": "Arrow",
- "zOrder": "6",
+ "zOrder": "70",
"w": "133",
"h": "34",
"measuredW": "150",
"measuredH": "100",
- "x": "860",
- "y": "2920",
+ "x": "1338",
+ "y": "3853",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -188,13 +65,13 @@
{
"ID": "14057",
"typeID": "Arrow",
- "zOrder": "7",
+ "zOrder": "71",
"w": "2",
"h": "89",
"measuredW": "150",
"measuredH": "100",
- "x": "747",
- "y": "3143",
+ "x": "1231",
+ "y": "4196",
"properties": {
"color": "2848996",
"curvature": "0",
@@ -218,25 +95,25 @@
{
"ID": "14058",
"typeID": "Arrow",
- "zOrder": "8",
- "w": "2",
- "h": "166",
+ "zOrder": "72",
+ "w": "3",
+ "h": "294",
"measuredW": "150",
"measuredH": "100",
- "x": "753",
- "y": "2964",
+ "x": "1231",
+ "y": "3897",
"properties": {
"color": "2848996",
"curvature": "0",
"leftArrow": "false",
"rightArrow": "false",
"p0": {
- "x": 1,
- "y": 166
+ "x": 2.3488651564201746,
+ "y": 293.9847889101875
},
"p1": {
- "x": 0.4072427393330943,
- "y": 0.009537468626747932
+ "x": 0.40724273933309424,
+ "y": 0.00953746862674793
},
"p2": {
"x": 2.3488651564201746,
@@ -247,13 +124,13 @@
{
"ID": "14059",
"typeID": "__group__",
- "zOrder": "9",
+ "zOrder": "73",
"measuredW": "207",
"measuredH": "50",
"w": "207",
"h": "50",
- "x": "652",
- "y": "3114",
+ "x": "1130",
+ "y": "4167",
"properties": {
"controlName": "ext_link:google.com"
},
@@ -294,13 +171,13 @@
{
"ID": "14060",
"typeID": "Arrow",
- "zOrder": "10",
+ "zOrder": "74",
"w": "131",
"h": "1",
"measuredW": "150",
"measuredH": "100",
- "x": "870",
- "y": "2910",
+ "x": "1348",
+ "y": "3843",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -324,13 +201,13 @@
{
"ID": "14061",
"typeID": "Arrow",
- "zOrder": "11",
+ "zOrder": "75",
"w": "71",
"h": "11",
"measuredW": "150",
"measuredH": "100",
- "x": "276",
- "y": "2930",
+ "x": "754",
+ "y": "3863",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -354,13 +231,13 @@
{
"ID": "14062",
"typeID": "Arrow",
- "zOrder": "12",
+ "zOrder": "76",
"w": "71",
"h": "31",
"measuredW": "150",
"measuredH": "100",
- "x": "275",
- "y": "2932",
+ "x": "753",
+ "y": "3865",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -384,13 +261,13 @@
{
"ID": "14063",
"typeID": "Arrow",
- "zOrder": "13",
+ "zOrder": "77",
"w": "64",
"h": "17",
"measuredW": "150",
"measuredH": "100",
- "x": "276",
- "y": "2914",
+ "x": "754",
+ "y": "3847",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -414,13 +291,13 @@
{
"ID": "14064",
"typeID": "Arrow",
- "zOrder": "14",
+ "zOrder": "78",
"w": "81",
"h": "52",
"measuredW": "150",
"measuredH": "100",
- "x": "258",
- "y": "2811",
+ "x": "736",
+ "y": "3744",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -444,13 +321,13 @@
{
"ID": "14065",
"typeID": "Arrow",
- "zOrder": "15",
+ "zOrder": "79",
"w": "87",
"h": "35",
"measuredW": "150",
"measuredH": "100",
- "x": "256",
- "y": "2752",
+ "x": "734",
+ "y": "3685",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -474,13 +351,13 @@
{
"ID": "14066",
"typeID": "Arrow",
- "zOrder": "16",
+ "zOrder": "80",
"w": "88",
"h": "39",
"measuredW": "150",
"measuredH": "100",
- "x": "258",
- "y": "2799",
+ "x": "736",
+ "y": "3732",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -504,13 +381,13 @@
{
"ID": "14067",
"typeID": "Arrow",
- "zOrder": "17",
+ "zOrder": "81",
"w": "92",
"h": "15",
"measuredW": "150",
"measuredH": "100",
- "x": "258",
- "y": "2795",
+ "x": "736",
+ "y": "3728",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -534,13 +411,13 @@
{
"ID": "14068",
"typeID": "Arrow",
- "zOrder": "18",
+ "zOrder": "82",
"w": "84",
"h": "11",
"measuredW": "150",
"measuredH": "100",
- "x": "257",
- "y": "2781",
+ "x": "735",
+ "y": "3714",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -564,13 +441,13 @@
{
"ID": "14069",
"typeID": "Arrow",
- "zOrder": "19",
+ "zOrder": "83",
"w": "131",
"h": "2",
"measuredW": "150",
"measuredH": "100",
- "x": "482",
- "y": "2934",
+ "x": "960",
+ "y": "3867",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -594,13 +471,13 @@
{
"ID": "14070",
"typeID": "Arrow",
- "zOrder": "20",
+ "zOrder": "84",
"w": "83",
"h": "112",
"measuredW": "150",
"measuredH": "100",
- "x": "521",
- "y": "2800",
+ "x": "999",
+ "y": "3733",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -624,13 +501,13 @@
{
"ID": "14071",
"typeID": "__group__",
- "zOrder": "21",
+ "zOrder": "85",
"measuredW": "342",
"measuredH": "127",
"w": "342",
"h": "127",
- "x": "958",
- "y": "2978",
+ "x": "1436",
+ "y": "3911",
"properties": {
"controlName": "104-scalability:observability"
},
@@ -745,13 +622,13 @@
{
"ID": "14072",
"typeID": "Arrow",
- "zOrder": "22",
+ "zOrder": "86",
"w": "35",
"h": "95",
"measuredW": "150",
"measuredH": "100",
- "x": "822",
- "y": "2774",
+ "x": "1300",
+ "y": "3707",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -774,13 +651,13 @@
{
"ID": "14073",
"typeID": "Arrow",
- "zOrder": "23",
+ "zOrder": "87",
"w": "162",
"h": "1",
"measuredW": "150",
"measuredH": "100",
- "x": "643",
- "y": "2762",
+ "x": "769",
+ "y": "3468",
"properties": {
"color": "2848996",
"direction": "bottom",
@@ -797,303 +674,67 @@
"x": 0,
"y": 0.5
},
- "rightArrow": "false"
- }
- },
- {
- "ID": "14074",
- "typeID": "Arrow",
- "zOrder": "24",
- "w": "2",
- "h": "80",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1098",
- "y": "2149",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.465256538516507,
- "y": 0.0007431756467057328
- },
- "p2": {
- "x": 2,
- "y": 80
- },
"rightArrow": "false",
"stroke": "dotted"
}
},
{
- "ID": "14075",
- "typeID": "Arrow",
- "zOrder": "25",
- "w": "88",
- "h": "1",
- "measuredW": "150",
- "measuredH": "100",
- "x": "831",
- "y": "2157",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 88,
- "y": -0.5
- },
- "p1": {
- "x": 0.50296668188042,
- "y": 0.0027384755819260557
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14078",
- "typeID": "Arrow",
- "zOrder": "26",
- "w": "108",
- "h": "80",
- "measuredW": "150",
- "measuredH": "100",
- "x": "669",
- "y": "2073",
+ "ID": "14086",
+ "typeID": "__group__",
+ "zOrder": "88",
+ "measuredW": "246",
+ "measuredH": "50",
+ "w": "246",
+ "h": "50",
+ "x": "1110",
+ "y": "2874",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 108,
- "y": 79.5
- },
- "p1": {
- "x": 0.5603029663253457,
- "y": -0.07492346669481689
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false"
+ "controlName": "115-architectural-patterns"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "246",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "166",
+ "measuredH": "25",
+ "x": "40",
+ "y": "13",
+ "properties": {
+ "text": "Architectural Patterns",
+ "size": "17"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14080",
- "typeID": "Arrow",
- "zOrder": "27",
- "w": "67",
- "h": "36",
- "measuredW": "150",
- "measuredH": "100",
- "x": "472",
- "y": "1807",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0.5
- },
- "p1": {
- "x": 0.3904422315954255,
- "y": 0.08001043614384486
- },
- "p2": {
- "x": 67,
- "y": 36
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14081",
- "typeID": "Arrow",
- "zOrder": "28",
- "w": "103",
- "h": "46",
- "measuredW": "150",
- "measuredH": "100",
- "x": "424",
- "y": "2152",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 103,
- "y": -0.5
- },
- "p1": {
- "x": 0.4965025071914738,
- "y": -0.0092742505933948
- },
- "p2": {
- "x": 0,
- "y": 45.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14082",
- "typeID": "Arrow",
- "zOrder": "29",
- "w": "121",
- "h": "4",
- "measuredW": "150",
- "measuredH": "100",
- "x": "407",
- "y": "2148",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 121,
- "y": -0.5
- },
- "p1": {
- "x": 0.5411972474270752,
- "y": 0.004810912855489929
- },
- "p2": {
- "x": 0,
- "y": 3
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14083",
- "typeID": "Arrow",
- "zOrder": "30",
- "w": "107",
- "h": "38",
- "measuredW": "150",
- "measuredH": "100",
- "x": "421",
- "y": "2106",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 107,
- "y": 37.5
- },
- "p1": {
- "x": 0.5259135372707648,
- "y": -0.007273293012582408
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14085",
- "typeID": "Arrow",
- "zOrder": "31",
- "w": "101",
- "h": "83",
- "measuredW": "150",
- "measuredH": "100",
- "x": "692",
- "y": "2224",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "rightArrow": "false",
- "p0": {
- "x": -0.4277687344018659,
- "y": 82.57328000144571
- },
- "p1": {
- "x": 0.4773388773388785,
- "y": -0.20519750519750382
- },
- "p2": {
- "x": 100.84292409061823,
- "y": -0.042285197912860895
- }
- }
- },
- {
- "ID": "14086",
- "typeID": "__group__",
- "zOrder": "32",
- "measuredW": "317",
- "measuredH": "50",
- "w": "317",
- "h": "50",
- "x": "907",
- "y": "2131",
- "properties": {
- "controlName": "115-architectural-patterns"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "317",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "166",
- "measuredH": "25",
- "x": "76",
- "y": "13",
- "properties": {
- "text": "Architectural Patterns",
- "size": "17"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14087",
- "typeID": "__group__",
- "zOrder": "33",
- "measuredW": "253",
- "measuredH": "48",
- "w": "253",
- "h": "48",
- "x": "978",
- "y": "2191",
+ "ID": "14087",
+ "typeID": "__group__",
+ "zOrder": "89",
+ "measuredW": "253",
+ "measuredH": "40",
+ "w": "253",
+ "h": "40",
+ "x": "1459",
+ "y": "2877",
"properties": {
"controlName": "100-architectural-patterns:monolithic-apps"
},
@@ -1109,7 +750,7 @@
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "8",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -1122,7 +763,7 @@
"measuredW": "123",
"measuredH": "25",
"x": "60",
- "y": "16",
+ "y": "7",
"properties": {
"size": "17",
"text": "Monolithic Apps"
@@ -1135,7 +776,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "229",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -1151,7 +792,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "229",
- "y": "0",
+ "y": "8",
"properties": {
"color": "10027263",
"icon": {
@@ -1167,13 +808,13 @@
{
"ID": "14088",
"typeID": "__group__",
- "zOrder": "34",
+ "zOrder": "90",
"measuredW": "253",
- "measuredH": "41",
+ "measuredH": "37",
"w": "253",
- "h": "41",
- "x": "978",
- "y": "2240",
+ "h": "37",
+ "x": "1459",
+ "y": "2923",
"properties": {
"controlName": "101-architectural-patterns:microservices"
},
@@ -1189,7 +830,7 @@
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -1202,7 +843,7 @@
"measuredW": "108",
"measuredH": "25",
"x": "66",
- "y": "11",
+ "y": "6",
"properties": {
"size": "17",
"text": "Microservices"
@@ -1215,7 +856,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "229",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -1231,7 +872,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "229",
- "y": "0",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -1245,17 +886,46 @@
}
},
{
- "ID": "14089",
+ "ID": "14091",
+ "typeID": "Arrow",
+ "zOrder": "91",
+ "w": "134",
+ "h": "125",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1032",
+ "y": "3131",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.33779436398822327,
+ "y": 124.85818558991332
+ },
+ "p1": {
+ "x": 0.5130035437946617,
+ "y": -0.1946619587780869
+ },
+ "p2": {
+ "x": 133.57223126559813,
+ "y": -0.10162883736757067
+ }
+ }
+ },
+ {
+ "ID": "14093",
"typeID": "__group__",
- "zOrder": "35",
- "measuredW": "256",
+ "zOrder": "271",
+ "measuredW": "167",
"measuredH": "40",
- "w": "256",
+ "w": "167",
"h": "40",
- "x": "977",
- "y": "2323",
+ "x": "1125",
+ "y": "2992",
"properties": {
- "controlName": "103-architectural-patterns:cqrs"
+ "controlName": "100-search-engines:elasticsearch"
},
"children": {
"controls": {
@@ -1264,12 +934,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "245",
- "h": "37",
+ "w": "160",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "3",
+ "x": "7",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -1278,14 +948,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "209",
- "measuredW": "202",
+ "w": "106",
+ "measuredW": "104",
"measuredH": "25",
- "x": "18",
- "y": "9",
+ "x": "39",
+ "y": "8",
"properties": {
"size": "17",
- "text": "CQRS and Event Sourcing"
+ "text": "Elasticsearch"
}
},
{
@@ -1294,8 +964,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "232",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -1310,10 +980,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "232",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -1325,125 +995,17 @@
}
},
{
- "ID": "14090",
- "typeID": "Arrow",
- "zOrder": "36",
- "w": "85",
- "h": "22",
- "measuredW": "150",
- "measuredH": "100",
- "x": "329",
- "y": "2287",
+ "ID": "14094",
+ "typeID": "__group__",
+ "zOrder": "272",
+ "measuredW": "167",
+ "measuredH": "40",
+ "w": "167",
+ "h": "40",
+ "x": "1125",
+ "y": "3038",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "rightArrow": "false",
- "stroke": "dotted",
- "p0": {
- "x": 85.33121026030528,
- "y": 20.916916049961856
- },
- "p1": {
- "x": 0.5244042630304266,
- "y": 0.09061322266059196
- },
- "p2": {
- "x": 0.05062682870931212,
- "y": -0.40322980793689567
- }
- }
- },
- {
- "ID": "14091",
- "typeID": "Arrow",
- "zOrder": "37",
- "w": "128",
- "h": "116",
- "measuredW": "150",
- "measuredH": "100",
- "x": "692",
- "y": "2320",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "rightArrow": "false",
- "p0": {
- "x": 128,
- "y": 116
- },
- "p1": {
- "x": 0.4711861368885512,
- "y": -0.2426939323072945
- },
- "p2": {
- "x": -0.4277687344018659,
- "y": -0.10162883736757067
- }
- }
- },
- {
- "ID": "14092",
- "typeID": "__group__",
- "zOrder": "38",
- "measuredW": "313",
- "measuredH": "50",
- "w": "313",
- "h": "50",
- "x": "404",
- "y": "2289",
- "properties": {
- "controlName": "116-search-engines"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "313",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "126",
- "measuredW": "122",
- "measuredH": "25",
- "x": "94",
- "y": "12",
- "properties": {
- "size": "17",
- "text": "Search Engines"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14093",
- "typeID": "__group__",
- "zOrder": "39",
- "measuredW": "167",
- "measuredH": "40",
- "w": "167",
- "h": "40",
- "x": "168",
- "y": "2272",
- "properties": {
- "controlName": "100-search-engines:elasticsearch"
+ "controlName": "101-search-engines:solr"
},
"children": {
"controls": {
@@ -1466,14 +1028,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "106",
- "measuredW": "104",
+ "w": "36",
+ "measuredW": "30",
"measuredH": "25",
- "x": "39",
+ "x": "69",
"y": "8",
"properties": {
"size": "17",
- "text": "Elasticsearch"
+ "text": "Solr"
}
},
{
@@ -1483,7 +1045,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "7",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -1499,9 +1061,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "7",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -1513,17 +1075,17 @@
}
},
{
- "ID": "14094",
+ "ID": "14095",
"typeID": "__group__",
- "zOrder": "40",
- "measuredW": "167",
- "measuredH": "40",
- "w": "167",
- "h": "40",
- "x": "168",
- "y": "2316",
+ "zOrder": "92",
+ "measuredW": "253",
+ "measuredH": "37",
+ "w": "253",
+ "h": "37",
+ "x": "1459",
+ "y": "2966",
"properties": {
- "controlName": "101-search-engines:solr"
+ "controlName": "102-architectural-patterns:soa"
},
"children": {
"controls": {
@@ -1532,11 +1094,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "160",
- "h": "40",
+ "w": "244",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
+ "x": "0",
"y": "0",
"properties": {
"color": "16770457"
@@ -1546,14 +1108,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "36",
- "measuredW": "30",
+ "w": "38",
+ "measuredW": "34",
"measuredH": "25",
- "x": "69",
- "y": "8",
+ "x": "103",
+ "y": "6",
"properties": {
"size": "17",
- "text": "Solr"
+ "text": "SOA"
}
},
{
@@ -1562,8 +1124,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "8",
+ "x": "229",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -1578,10 +1140,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "8",
+ "x": "229",
+ "y": "7",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -1593,17 +1155,17 @@
}
},
{
- "ID": "14095",
+ "ID": "14114",
"typeID": "__group__",
- "zOrder": "41",
- "measuredW": "253",
- "measuredH": "41",
- "w": "253",
- "h": "41",
- "x": "978",
- "y": "2281",
+ "zOrder": "93",
+ "measuredW": "221",
+ "measuredH": "50",
+ "w": "221",
+ "h": "50",
+ "x": "843",
+ "y": "3232",
"properties": {
- "controlName": "102-architectural-patterns:soa"
+ "controlName": "117-message-brokers"
},
"children": {
"controls": {
@@ -1612,60 +1174,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "244",
- "h": "37",
+ "w": "221",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "38",
- "measuredW": "34",
+ "w": "141",
+ "measuredW": "136",
"measuredH": "25",
- "x": "103",
- "y": "11",
+ "x": "40",
+ "y": "12",
"properties": {
"size": "17",
- "text": "SOA"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "229",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "229",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Message Brokers"
}
}
]
@@ -1673,77 +1203,17 @@
}
},
{
- "ID": "14096",
- "typeID": "Arrow",
- "zOrder": "42",
- "w": "4",
- "h": "109",
- "measuredW": "150",
- "measuredH": "100",
- "x": "618",
- "y": "2650",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 4,
- "y": -0.5
- },
- "p1": {
- "x": 0.5130929473772274,
- "y": -0.0344683343093784
- },
- "p2": {
- "x": 3,
- "y": 108.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14097",
- "typeID": "Arrow",
- "zOrder": "43",
- "w": "96",
- "h": "3",
- "measuredW": "150",
- "measuredH": "100",
- "x": "414",
- "y": "2642",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 96,
- "y": -0.5
- },
- "p1": {
- "x": 0.6163558106169299,
- "y": 0.017503586800573956
- },
- "p2": {
- "x": 0,
- "y": 2
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14098",
+ "ID": "14115",
"typeID": "__group__",
- "zOrder": "44",
- "measuredW": "150",
- "measuredH": "48",
- "w": "150",
- "h": "48",
- "x": "273",
- "y": "2615",
+ "zOrder": "94",
+ "measuredW": "305",
+ "measuredH": "50",
+ "w": "305",
+ "h": "50",
+ "x": "1160",
+ "y": "3241",
"properties": {
- "controlName": "100-graph-databases:neo4j"
+ "controlName": "118-containerization"
},
"children": {
"controls": {
@@ -1752,28 +1222,122 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "144",
- "h": "40",
+ "w": "305",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "8",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "51",
- "measuredW": "47",
+ "measuredW": "250",
"measuredH": "25",
- "x": "52",
- "y": "16",
+ "x": "28",
+ "y": "13",
"properties": {
- "size": "17",
- "text": "Neo4j"
+ "text": "Containerization vs Virtualization",
+ "size": "17"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14116",
+ "typeID": "__group__",
+ "zOrder": "95",
+ "measuredW": "197",
+ "measuredH": "50",
+ "w": "197",
+ "h": "50",
+ "x": "930",
+ "y": "3433",
+ "properties": {
+ "controlName": "122-web-servers"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "197",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "98",
+ "measuredH": "25",
+ "x": "50",
+ "y": "13",
+ "properties": {
+ "text": "Web Servers",
+ "size": "17"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14117",
+ "typeID": "__group__",
+ "zOrder": "96",
+ "measuredW": "153",
+ "measuredH": "40",
+ "w": "153",
+ "h": "40",
+ "x": "671",
+ "y": "3313",
+ "properties": {
+ "controlName": "100-web-servers:nginx"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "144",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "46",
+ "measuredW": "45",
+ "measuredH": "25",
+ "x": "58",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Nginx"
}
},
{
@@ -1783,7 +1347,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -1799,9 +1363,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -1813,441 +1377,169 @@
}
},
{
- "ID": "14099",
- "typeID": "Arrow",
- "zOrder": "45",
- "w": "120",
- "h": "29",
- "measuredW": "150",
- "measuredH": "100",
- "x": "871",
- "y": "2557",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 119.5,
- "y": 0
- },
- "p1": {
- "x": 0.6629629629629628,
- "y": -0.06296296296296298
- },
- "p2": {
- "x": 0,
- "y": 29
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14100",
- "typeID": "Arrow",
- "zOrder": "46",
- "w": "121",
- "h": "13",
- "measuredW": "150",
- "measuredH": "100",
- "x": "869",
- "y": "2590",
+ "ID": "14118",
+ "typeID": "__group__",
+ "zOrder": "97",
+ "measuredW": "153",
+ "measuredH": "40",
+ "w": "153",
+ "h": "40",
+ "x": "671",
+ "y": "3358",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 120.5,
- "y": 11
- },
- "p1": {
- "x": 0.567277856135402,
- "y": 0.05867418899858959
- },
- "p2": {
- "x": -0.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "101-web-servers:apache"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "144",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "60",
+ "measuredW": "59",
+ "measuredH": "25",
+ "x": "51",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Apache"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14101",
- "typeID": "Arrow",
- "zOrder": "47",
- "w": "188",
- "h": "66",
- "measuredW": "150",
- "measuredH": "100",
- "x": "639",
- "y": "2579",
+ "ID": "14119",
+ "typeID": "__group__",
+ "zOrder": "98",
+ "measuredW": "153",
+ "measuredH": "40",
+ "w": "153",
+ "h": "40",
+ "x": "671",
+ "y": "3404",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 62
- },
- "p1": {
- "x": 0.4529742373542121,
- "y": -0.12147103732822194
- },
- "p2": {
- "x": 187,
- "y": 0
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14102",
- "typeID": "Arrow",
- "zOrder": "48",
- "w": "75",
- "h": "25",
- "measuredW": "150",
- "measuredH": "100",
- "x": "331",
- "y": "2482",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 75,
- "y": 25
- },
- "p1": {
- "x": 0.6629629629629629,
- "y": -0.06296296296296301
- },
- "p2": {
- "x": 0,
- "y": 1
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14103",
- "typeID": "Arrow",
- "zOrder": "49",
- "w": "78",
- "h": "4",
- "measuredW": "150",
- "measuredH": "100",
- "x": "330",
- "y": "2518",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 78,
- "y": 0
- },
- "p1": {
- "x": 0.6163558106169298,
- "y": 0.017503586800573952
- },
- "p2": {
- "x": 0,
- "y": 3
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14104",
- "typeID": "Arrow",
- "zOrder": "50",
- "w": "199",
- "h": "84",
- "measuredW": "150",
- "measuredH": "100",
- "x": "905",
- "y": "2765",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 199,
- "y": 84
- },
- "p1": {
- "x": 0.4955621301775147,
- "y": 0.03934911242603547
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14105",
- "typeID": "Arrow",
- "zOrder": "51",
- "w": "199",
- "h": "42",
- "measuredW": "150",
- "measuredH": "100",
- "x": "907",
- "y": "2766",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 199,
- "y": 42
- },
- "p1": {
- "x": 0.4825515947467167,
- "y": 0.004502814258911812
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14106",
- "typeID": "Arrow",
- "zOrder": "52",
- "w": "196",
- "h": "5",
- "measuredW": "150",
- "measuredH": "100",
- "x": "914",
- "y": "2756",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 196,
- "y": 5
- },
- "p1": {
- "x": 0.4695991671004685,
- "y": -0.020718375845913583
- },
- "p2": {
- "x": 0,
- "y": 3
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14107",
- "typeID": "Arrow",
- "zOrder": "53",
- "w": "197",
- "h": "42",
- "measuredW": "150",
- "measuredH": "100",
- "x": "912",
- "y": "2716",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 197,
- "y": 2
- },
- "p1": {
- "x": 0.44620243269441234,
- "y": -0.0644132453644352
- },
- "p2": {
- "x": 0,
- "y": 42
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14108",
- "typeID": "Arrow",
- "zOrder": "54",
- "w": "199",
- "h": "54",
- "measuredW": "150",
- "measuredH": "100",
- "x": "560",
- "y": "2527",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 199,
- "y": 48
- },
- "p1": {
- "x": 0.6485783579517326,
- "y": 0.15106944331292413
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14109",
- "typeID": "Arrow",
- "zOrder": "55",
- "w": "192",
- "h": "55",
- "measuredW": "150",
- "measuredH": "100",
- "x": "546",
- "y": "2457",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 55.5
- },
- "p1": {
- "x": 0.432369591589163,
- "y": 0.09644156894460168
- },
- "p2": {
- "x": 192,
- "y": 0.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14110",
- "typeID": "Arrow",
- "zOrder": "56",
- "w": "149",
- "h": "15",
- "measuredW": "150",
- "measuredH": "100",
- "x": "896",
- "y": "2461",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "leftArrow": "false",
- "p0": {
- "x": 149,
- "y": 14
- },
- "p1": {
- "x": 0.47363590855998655,
- "y": -0.003754380110128476
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14111",
- "typeID": "Arrow",
- "zOrder": "57",
- "w": "106",
- "h": "9",
- "measuredW": "150",
- "measuredH": "100",
- "x": "930",
- "y": "2442",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 106,
- "y": 0
- },
- "p1": {
- "x": 0.42286675073560326,
- "y": 0.002311895754518704
- },
- "p2": {
- "x": 0,
- "y": 8.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14112",
- "typeID": "__group__",
- "zOrder": "58",
- "measuredW": "192",
- "measuredH": "42",
- "w": "192",
- "h": "42",
- "x": "1026",
- "y": "2413",
- "properties": {
- "controlName": "100-message-brokers:rabbitmq"
+ "controlName": "102-web-servers:caddy"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "183",
- "measuredW": "97",
- "measuredH": "32",
- "x": "0",
- "y": "10",
+ "w": "144",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "RabbitMQ"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
+ "w": "53",
+ "measuredW": "49",
+ "measuredH": "25",
+ "x": "54",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Caddy"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "168",
- "y": "1",
+ "x": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2256,18 +1548,82 @@
}
}
},
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14120",
+ "typeID": "__group__",
+ "zOrder": "99",
+ "measuredW": "152",
+ "measuredH": "40",
+ "w": "152",
+ "h": "40",
+ "x": "672",
+ "y": "3449",
+ "properties": {
+ "controlName": "103-web-servers:ms-iis"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "144",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "55",
+ "measuredW": "51",
+ "measuredH": "25",
+ "x": "57",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "MS IIS"
+ }
+ },
{
"ID": "2",
"typeID": "Icon",
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "168",
- "y": "1",
+ "x": "0",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "16777215",
"icon": {
- "ID": "check-circle",
+ "ID": "circle",
"size": "small"
}
}
@@ -2278,8 +1634,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "145",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2294,10 +1650,10 @@
"zOrder": "4",
"measuredW": "24",
"measuredH": "24",
- "x": "145",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2309,51 +1665,47 @@
}
},
{
- "ID": "14113",
+ "ID": "14121",
"typeID": "__group__",
- "zOrder": "59",
- "measuredW": "193",
- "measuredH": "37",
- "w": "193",
- "h": "37",
- "x": "1026",
- "y": "2454",
+ "zOrder": "100",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "1540",
+ "y": "3199",
"properties": {
- "controlName": "101-message-brokers:kafka"
+ "controlName": "100-containerization:docker"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "183",
- "measuredW": "60",
- "measuredH": "32",
+ "w": "144",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
- "y": "5",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "Kafka"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
- "measuredW": "24",
- "measuredH": "24",
- "x": "169",
- "y": "0",
+ "w": "58",
+ "measuredW": "56",
+ "measuredH": "25",
+ "x": "47",
+ "y": "8",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "size": "17",
+ "text": "Docker"
}
},
{
@@ -2362,8 +1714,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "169",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2378,10 +1730,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "169",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2393,17 +1745,17 @@
}
},
{
- "ID": "14114",
+ "ID": "14122",
"typeID": "__group__",
- "zOrder": "60",
- "measuredW": "230",
- "measuredH": "60",
- "w": "230",
- "h": "60",
- "x": "721",
- "y": "2423",
+ "zOrder": "101",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "1540",
+ "y": "3244",
"properties": {
- "controlName": "117-message-brokers"
+ "controlName": "102-containerization:lxc"
},
"children": {
"controls": {
@@ -2412,28 +1764,30 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "221",
- "h": "50",
+ "w": "144",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "10",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "textColor": "6710886",
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "141",
- "measuredW": "136",
+ "w": "37",
+ "measuredW": "32",
"measuredH": "25",
- "x": "40",
- "y": "22",
+ "x": "53",
+ "y": "8",
"properties": {
+ "color": "3355443",
"size": "17",
- "text": "Message Brokers"
+ "text": "LXC"
}
},
{
@@ -2442,8 +1796,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "206",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2458,14 +1812,14 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "206",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
- "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "40463"
}
}
]
@@ -2473,17 +1827,17 @@
}
},
{
- "ID": "14115",
+ "ID": "14123",
"typeID": "__group__",
- "zOrder": "61",
- "measuredW": "294",
+ "zOrder": "102",
+ "measuredW": "114",
"measuredH": "50",
- "w": "294",
+ "w": "114",
"h": "50",
- "x": "403",
- "y": "2490",
+ "x": "1353",
+ "y": "3327",
"properties": {
- "controlName": "118-containerization"
+ "controlName": "119-graphql"
},
"children": {
"controls": {
@@ -2492,7 +1846,7 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "294",
+ "w": "114",
"h": "50",
"measuredW": "200",
"measuredH": "140",
@@ -2506,12 +1860,12 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "250",
+ "measuredW": "71",
"measuredH": "25",
- "x": "22",
+ "x": "21",
"y": "13",
"properties": {
- "text": "Containerization vs Virtualization",
+ "text": "GraphQL",
"size": "17"
}
}
@@ -2520,17 +1874,17 @@
}
},
{
- "ID": "14116",
+ "ID": "14124",
"typeID": "__group__",
- "zOrder": "62",
- "measuredW": "170",
- "measuredH": "62",
- "w": "170",
- "h": "62",
- "x": "770",
- "y": "2724",
+ "zOrder": "103",
+ "measuredW": "155",
+ "measuredH": "40",
+ "w": "155",
+ "h": "40",
+ "x": "1541",
+ "y": "3327",
"properties": {
- "controlName": "122-web-servers"
+ "controlName": "100-graphql:apollo"
},
"children": {
"controls": {
@@ -2539,27 +1893,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "163",
- "h": "50",
+ "w": "144",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "12",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "98",
+ "w": "50",
+ "measuredW": "48",
"measuredH": "25",
- "x": "33",
- "y": "25",
+ "x": "47",
+ "y": "7",
"properties": {
- "text": "Web Servers",
- "size": "17"
+ "size": "17",
+ "text": "Apollo"
}
},
{
@@ -2568,8 +1923,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "146",
- "y": "0",
+ "x": "131",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2584,10 +1939,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "146",
- "y": "0",
+ "x": "131",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2599,17 +1954,17 @@
}
},
{
- "ID": "14117",
+ "ID": "14125",
"typeID": "__group__",
- "zOrder": "63",
- "measuredW": "152",
- "measuredH": "49",
- "w": "152",
- "h": "49",
- "x": "1073",
- "y": "2686",
+ "zOrder": "104",
+ "measuredW": "153",
+ "measuredH": "40",
+ "w": "153",
+ "h": "40",
+ "x": "1541",
+ "y": "3373",
"properties": {
- "controlName": "100-web-servers:nginx"
+ "controlName": "101-graphql:relay-modern"
},
"children": {
"controls": {
@@ -2623,7 +1978,7 @@
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -2632,14 +1987,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "46",
- "measuredW": "45",
+ "w": "108",
+ "measuredW": "107",
"measuredH": "25",
- "x": "49",
- "y": "17",
+ "x": "18",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Nginx"
+ "text": "Relay Modern"
}
},
{
@@ -2648,8 +2003,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "129",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2664,24 +2019,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "102",
- "y": "0",
+ "x": "129",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -2691,15 +2030,15 @@
}
},
{
- "ID": "5",
+ "ID": "4",
"typeID": "Icon",
- "zOrder": "5",
+ "zOrder": "4",
"measuredW": "24",
"measuredH": "24",
- "x": "102",
- "y": "0",
+ "x": "129",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2711,17 +2050,17 @@
}
},
{
- "ID": "14118",
+ "ID": "14127",
"typeID": "__group__",
- "zOrder": "64",
- "measuredW": "152",
- "measuredH": "44",
- "w": "152",
- "h": "44",
- "x": "1073",
- "y": "2737",
+ "zOrder": "105",
+ "measuredW": "167",
+ "measuredH": "50",
+ "w": "167",
+ "h": "50",
+ "x": "1152",
+ "y": "3333",
"properties": {
- "controlName": "101-web-servers:apache"
+ "controlName": "121-web-sockets"
},
"children": {
"controls": {
@@ -2730,28 +2069,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "144",
- "h": "40",
+ "w": "159",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "4",
+ "x": "8",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "60",
- "measuredW": "59",
+ "measuredW": "95",
"measuredH": "25",
- "x": "42",
+ "x": "40",
"y": "12",
"properties": {
- "size": "17",
- "text": "Apache"
+ "text": "WebSockets",
+ "size": "17"
}
},
{
@@ -2760,8 +2098,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "13",
"properties": {
"color": "16777215",
"icon": {
@@ -2776,30 +2114,14 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "13",
"properties": {
- "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -2807,73 +2129,145 @@
}
},
{
- "ID": "14119",
+ "ID": "14129",
+ "typeID": "Arrow",
+ "zOrder": "106",
+ "w": "1",
+ "h": "55",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1288",
+ "y": "2643",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 54.98738859570176
+ },
+ "p1": {
+ "x": 0.5702216182256715,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
+ }
+ }
+ },
+ {
+ "ID": "14134",
+ "typeID": "Arrow",
+ "zOrder": "27",
+ "w": "77",
+ "h": "2",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1389",
+ "y": "2489",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.21591400526199322,
+ "y": 1.098756097270325
+ },
+ "p1": {
+ "x": 0.5633394785356863,
+ "y": -0.0021069265209375837
+ },
+ "p2": {
+ "x": 76.92562063543369,
+ "y": -0.5
+ }
+ }
+ },
+ {
+ "ID": "14137",
+ "typeID": "Arrow",
+ "zOrder": "107",
+ "w": "1",
+ "h": "74",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "766",
+ "y": "2260",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0,
+ "y": 0
+ },
+ "p1": {
+ "x": 0.4699266503667479,
+ "y": -0.0004889975550122329
+ },
+ "p2": {
+ "x": 0,
+ "y": 73.87582822107333
+ }
+ }
+ },
+ {
+ "ID": "14138",
+ "typeID": "TextArea",
+ "zOrder": "108",
+ "w": "209",
+ "h": "280",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "665",
+ "y": "2305"
+ },
+ {
+ "ID": "14139",
"typeID": "__group__",
- "zOrder": "65",
- "measuredW": "152",
- "measuredH": "44",
- "w": "152",
- "h": "44",
- "x": "1073",
- "y": "2782",
+ "zOrder": "109",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2355",
"properties": {
- "controlName": "102-web-servers:caddy"
+ "controlName": "101-apis:authentication:oauth"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "144",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "4",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "53",
- "measuredW": "49",
- "measuredH": "25",
- "x": "45",
- "y": "12",
- "properties": {
- "size": "17",
- "text": "Caddy"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "128",
+ "w": "181",
+ "measuredW": "64",
+ "measuredH": "32",
+ "x": "7",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "align": "center",
+ "color": "16770457",
+ "text": "OAuth",
+ "size": "18"
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -2883,15 +2277,15 @@
}
},
{
- "ID": "4",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2903,73 +2297,45 @@
}
},
{
- "ID": "14120",
+ "ID": "14140",
"typeID": "__group__",
- "zOrder": "66",
- "measuredW": "152",
- "measuredH": "44",
- "w": "152",
- "h": "44",
- "x": "1073",
- "y": "2826",
+ "zOrder": "110",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2392",
"properties": {
- "controlName": "103-web-servers:ms-iis"
+ "controlName": "102-apis:authentication:basic-authentication"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "144",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "4",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "55",
- "measuredW": "51",
- "measuredH": "25",
- "x": "49",
- "y": "12",
- "properties": {
- "size": "17",
- "text": "MS IIS"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "128",
+ "w": "181",
+ "measuredW": "101",
+ "measuredH": "32",
+ "x": "7",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "align": "center",
+ "color": "16770457",
+ "size": "18",
+ "text": "Basic Auth"
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -2979,15 +2345,15 @@
}
},
{
- "ID": "4",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "128",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -2999,57 +2365,45 @@
}
},
{
- "ID": "14121",
+ "ID": "14141",
"typeID": "__group__",
- "zOrder": "67",
- "measuredW": "152",
- "measuredH": "46",
- "w": "152",
- "h": "46",
- "x": "182",
- "y": "2450",
+ "zOrder": "111",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2429",
"properties": {
- "controlName": "100-containerization:docker"
+ "controlName": "103-apis:authentication:token-authentication"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "144",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "6",
+ "w": "181",
+ "measuredW": "104",
+ "measuredH": "32",
+ "x": "7",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "align": "center",
+ "color": "16770457",
+ "size": "18",
+ "text": "Token Auth"
}
},
{
"ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "58",
- "measuredW": "56",
- "measuredH": "25",
- "x": "55",
- "y": "14",
- "properties": {
- "size": "17",
- "text": "Docker"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -3059,13 +2413,13 @@
}
},
{
- "ID": "3",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "4",
"properties": {
"color": "10027263",
"icon": {
@@ -3079,49 +2433,67 @@
}
},
{
- "ID": "14122",
+ "ID": "14142",
"typeID": "__group__",
- "zOrder": "68",
- "measuredW": "144",
- "measuredH": "40",
- "w": "144",
- "h": "40",
- "x": "190",
- "y": "2502",
+ "zOrder": "112",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2466",
"properties": {
- "controlName": "102-containerization:lxc"
+ "controlName": "104-apis:authentication:jwt"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "144",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
+ "w": "181",
+ "measuredW": "51",
+ "measuredH": "32",
+ "x": "7",
"y": "0",
"properties": {
- "textColor": "6710886",
- "color": "16770457"
+ "align": "center",
+ "color": "16770457",
+ "text": "JWT",
+ "size": "18"
}
},
{
"ID": "1",
- "typeID": "Label",
+ "typeID": "Icon",
"zOrder": "1",
- "w": "37",
- "measuredW": "32",
- "measuredH": "25",
- "x": "53",
- "y": "8",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "4",
"properties": {
- "color": "3355443",
- "size": "17",
- "text": "LXC"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "4",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -3129,56 +2501,45 @@
}
},
{
- "ID": "14123",
+ "ID": "14143",
"typeID": "__group__",
- "zOrder": "69",
- "measuredW": "173",
- "measuredH": "58",
- "w": "173",
- "h": "58",
- "x": "715",
- "y": "2547",
+ "zOrder": "113",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2503",
"properties": {
- "controlName": "119-graphql"
+ "controlName": "105-apis:authentication:openid"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "163",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "8",
+ "w": "181",
+ "measuredW": "78",
+ "measuredH": "32",
+ "x": "7",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "align": "center",
+ "color": "16770457",
+ "text": "OpenID",
+ "size": "18"
}
},
{
"ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "71",
- "measuredH": "25",
- "x": "46",
- "y": "21",
- "properties": {
- "text": "GraphQL",
- "size": "17"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "149",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -3188,13 +2549,13 @@
}
},
{
- "ID": "3",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "149",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "10066329",
"icon": {
@@ -3208,57 +2569,45 @@
}
},
{
- "ID": "14124",
+ "ID": "14144",
"typeID": "__group__",
- "zOrder": "70",
- "measuredW": "155",
- "measuredH": "48",
- "w": "155",
- "h": "48",
- "x": "977",
- "y": "2530",
+ "zOrder": "114",
+ "measuredW": "188",
+ "measuredH": "32",
+ "w": "188",
+ "h": "32",
+ "x": "673",
+ "y": "2540",
"properties": {
- "controlName": "100-graphql:apollo"
+ "controlName": "105-apis:authentication:saml"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "TextInput",
"zOrder": "0",
- "w": "144",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "8",
+ "w": "181",
+ "measuredW": "62",
+ "measuredH": "32",
+ "x": "7",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "align": "center",
+ "color": "16770457",
+ "text": "SAML",
+ "size": "18"
}
},
{
"ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "50",
- "measuredW": "48",
- "measuredH": "25",
- "x": "47",
- "y": "16",
- "properties": {
- "size": "17",
- "text": "Apollo"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "131",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -3268,51 +2617,66 @@
}
},
{
- "ID": "3",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "131",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
}
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14150",
+ "typeID": "__group__",
+ "zOrder": "115",
+ "measuredW": "159",
+ "measuredH": "50",
+ "w": "159",
+ "h": "50",
+ "x": "1180",
+ "y": "2336",
+ "properties": {
+ "controlName": "110-caching"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "105",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "159",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16776960"
}
},
{
- "ID": "5",
- "typeID": "Icon",
- "zOrder": "5",
- "measuredW": "24",
- "measuredH": "24",
- "x": "105",
- "y": "0",
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "64",
+ "measuredH": "25",
+ "x": "48",
+ "y": "13",
"properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Caching",
+ "size": "17"
}
}
]
@@ -3320,17 +2684,17 @@
}
},
{
- "ID": "14125",
+ "ID": "14151",
"typeID": "__group__",
- "zOrder": "71",
- "measuredW": "153",
- "measuredH": "44",
- "w": "153",
- "h": "44",
- "x": "977",
- "y": "2580",
+ "zOrder": "116",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "1572",
+ "y": "2316",
"properties": {
- "controlName": "101-graphql:relay-modern"
+ "controlName": "100-caching:server-side:redis"
},
"children": {
"controls": {
@@ -3344,7 +2708,7 @@
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -3353,14 +2717,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "108",
- "measuredW": "107",
+ "w": "46",
+ "measuredW": "45",
"measuredH": "25",
- "x": "18",
- "y": "12",
+ "x": "49",
+ "y": "8",
"properties": {
"size": "17",
- "text": "Relay Modern"
+ "text": "Redis"
}
},
{
@@ -3369,8 +2733,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "129",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -3385,26 +2749,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "129",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "129",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -3416,17 +2764,17 @@
}
},
{
- "ID": "14126",
+ "ID": "14152",
"typeID": "__group__",
- "zOrder": "72",
- "measuredW": "191",
- "measuredH": "62",
- "w": "191",
- "h": "62",
- "x": "467",
- "y": "2605",
+ "zOrder": "117",
+ "measuredW": "155",
+ "measuredH": "40",
+ "w": "155",
+ "h": "40",
+ "x": "1572",
+ "y": "2361",
"properties": {
- "controlName": "120-graph-databases"
+ "controlName": "101-caching:server-side:memcached"
},
"children": {
"controls": {
@@ -3435,27 +2783,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "184",
- "h": "50",
+ "w": "144",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "12",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "135",
+ "w": "96",
+ "measuredW": "96",
"measuredH": "25",
- "x": "31",
- "y": "25",
+ "x": "28",
+ "y": "8",
"properties": {
- "text": "Graph Databases",
- "size": "17"
+ "size": "17",
+ "text": "Memcached"
}
},
{
@@ -3464,8 +2813,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "131",
+ "y": "9",
"properties": {
"color": "16777215",
"icon": {
@@ -3480,10 +2829,26 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "131",
+ "y": "9",
"properties": {
- "color": "10066329",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "131",
+ "y": "9",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -3495,17 +2860,17 @@
}
},
{
- "ID": "14127",
+ "ID": "14153",
"typeID": "__group__",
- "zOrder": "73",
- "measuredW": "167",
- "measuredH": "58",
- "w": "167",
- "h": "58",
- "x": "561",
- "y": "2730",
+ "zOrder": "118",
+ "measuredW": "129",
+ "measuredH": "40",
+ "w": "129",
+ "h": "40",
+ "x": "1402",
+ "y": "2337",
"properties": {
- "controlName": "121-web-sockets"
+ "controlName": "101-caching:server-side"
},
"children": {
"controls": {
@@ -3514,37 +2879,86 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "159",
- "h": "50",
+ "w": "129",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "8",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "95",
+ "w": "95",
+ "measuredW": "90",
"measuredH": "25",
- "x": "40",
- "y": "21",
+ "x": "19",
+ "y": "8",
"properties": {
- "text": "WebSockets",
- "size": "17"
+ "size": "17",
+ "text": "Server Side"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14154",
+ "typeID": "__group__",
+ "zOrder": "119",
+ "measuredW": "140",
+ "measuredH": "40",
+ "w": "140",
+ "h": "40",
+ "x": "1402",
+ "y": "2292",
+ "properties": {
+ "controlName": "102-caching:client-side"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "130",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
"y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "88",
+ "measuredW": "84",
+ "measuredH": "25",
+ "x": "21",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Client Side"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "116",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -3559,10 +2973,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "116",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -3574,358 +2988,204 @@
}
},
{
- "ID": "14128",
- "typeID": "Arrow",
- "zOrder": "74",
- "w": "85",
- "h": "75",
- "measuredW": "150",
- "measuredH": "100",
- "x": "622",
- "y": "1157",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 85,
- "y": 0
- },
- "p1": {
- "x": 0.6098445595854923,
- "y": -0.2025906735751296
- },
- "p2": {
- "x": 0,
- "y": 74.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14129",
- "typeID": "Arrow",
- "zOrder": "75",
- "w": "14",
- "h": "62",
- "measuredW": "150",
- "measuredH": "100",
- "x": "610",
- "y": "2003",
+ "ID": "14155",
+ "typeID": "__group__",
+ "zOrder": "120",
+ "measuredW": "139",
+ "measuredH": "37",
+ "w": "139",
+ "h": "37",
+ "x": "1402",
+ "y": "2382",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 12,
- "y": 62
- },
- "p1": {
- "x": 0.5415800415800416,
- "y": 0.21101871101871103
- },
- "p2": {
- "x": 14,
- "y": 0
- },
- "rightArrow": "false"
+ "controlName": "100-caching:cdn"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "129",
+ "h": "37",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "40",
+ "measuredW": "38",
+ "measuredH": "25",
+ "x": "45",
+ "y": "6",
+ "properties": {
+ "size": "17",
+ "text": "CDN"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "115",
+ "y": "5",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "115",
+ "y": "5",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14130",
+ "ID": "14165",
"typeID": "Arrow",
- "zOrder": "76",
- "w": "78",
- "h": "48",
+ "zOrder": "121",
+ "w": "106",
+ "h": "396",
"measuredW": "150",
"measuredH": "100",
- "x": "484",
- "y": "1995",
+ "x": "1214",
+ "y": "1648",
"properties": {
"color": "2848996",
- "curvature": "-1",
+ "curvature": "0",
+ "direction": "top",
"leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 48
- },
- "p1": {
- "x": 0.469926650366748,
- "y": -0.0004889975550122233
- },
- "p2": {
- "x": 78,
- "y": 0
- },
"rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14131",
- "typeID": "Arrow",
- "zOrder": "77",
- "w": "81",
- "h": "4",
- "measuredW": "150",
- "measuredH": "100",
- "x": "475",
- "y": "1993",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
"p0": {
- "x": 0,
- "y": 4
+ "x": 104.38081254263102,
+ "y": 0.3660325341022599
},
"p1": {
- "x": 0.4699266503667479,
- "y": -0.0004889975550122077
+ "x": 0.6207499156881379,
+ "y": 0.1157065334028267
},
"p2": {
- "x": 81,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": 0.3736634222534576,
+ "y": 396.0186443608777
+ }
}
},
{
- "ID": "14132",
- "typeID": "Arrow",
- "zOrder": "78",
- "w": "86",
- "h": "33",
- "measuredW": "150",
- "measuredH": "100",
- "x": "477",
- "y": "1952",
+ "ID": "14178",
+ "typeID": "__group__",
+ "zOrder": "122",
+ "measuredW": "229",
+ "measuredH": "50",
+ "w": "229",
+ "h": "50",
+ "x": "948",
+ "y": "1428",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.469926650366748,
- "y": -0.0004889975550122311
- },
- "p2": {
- "x": 86,
- "y": 33
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "106-relational-databases"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "229",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "165",
+ "measuredH": "25",
+ "x": "32",
+ "y": "13",
+ "properties": {
+ "size": "17",
+ "text": "Relational Databases"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14133",
- "typeID": "Arrow",
- "zOrder": "79",
- "w": "107",
- "h": "129",
- "measuredW": "150",
- "measuredH": "100",
- "x": "703",
- "y": "1859",
+ "ID": "14179",
+ "typeID": "__group__",
+ "zOrder": "123",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "675",
+ "y": "1371",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 128
- },
- "p1": {
- "x": 0.47671351663836425,
- "y": -0.2605051125483238
- },
- "p2": {
- "x": 106,
- "y": -0.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14134",
- "typeID": "Arrow",
- "zOrder": "80",
- "w": "80",
- "h": "1",
- "measuredW": "150",
- "measuredH": "100",
- "x": "979",
- "y": "1853",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": -0.5
- },
- "p1": {
- "x": 0.5633394785356862,
- "y": -0.002106926520937582
- },
- "p2": {
- "x": 80,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14135",
- "typeID": "Arrow",
- "zOrder": "81",
- "w": "123",
- "h": "5",
- "measuredW": "150",
- "measuredH": "100",
- "x": "662",
- "y": "1859",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 123,
- "y": 0
- },
- "p1": {
- "x": 0.5029666818804199,
- "y": 0.002738475581926061
- },
- "p2": {
- "x": 0,
- "y": 4.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14136",
- "typeID": "Arrow",
- "zOrder": "82",
- "w": "94",
- "h": "52",
- "measuredW": "150",
- "measuredH": "100",
- "x": "713",
- "y": "1650",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 51.5
- },
- "p1": {
- "x": 0.44142114384748704,
- "y": -0.10589254766031196
- },
- "p2": {
- "x": 94,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14137",
- "typeID": "Arrow",
- "zOrder": "83",
- "w": "70",
- "h": "1",
- "measuredW": "150",
- "measuredH": "100",
- "x": "406",
- "y": "1702",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 1
- },
- "p1": {
- "x": 0.469926650366748,
- "y": -0.0004889975550122329
- },
- "p2": {
- "x": 70,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14138",
- "typeID": "TextArea",
- "zOrder": "84",
- "w": "248",
- "h": "282",
- "measuredW": "200",
- "measuredH": "140",
- "x": "185",
- "y": "1492"
- },
- {
- "ID": "14139",
- "typeID": "__group__",
- "zOrder": "85",
- "measuredW": "230",
- "measuredH": "36",
- "w": "230",
- "h": "36",
- "x": "190",
- "y": "1540",
- "properties": {
- "controlName": "101-apis:authentication:oauth"
+ "controlName": "100-relational-databases:postgresql"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "223",
- "measuredW": "64",
- "measuredH": "32",
- "x": "7",
- "y": "4",
+ "w": "191",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "OAuth"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "w": "96",
+ "measuredW": "93",
+ "measuredH": "25",
+ "x": "56",
+ "y": "7",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "size": "17",
+ "text": "PostgreSQL"
}
},
{
@@ -3935,59 +3195,23 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
- "color": "10027263",
+ "color": "16777215",
"icon": {
- "ID": "check-circle",
+ "ID": "circle",
"size": "small"
}
}
- }
- ]
- }
- }
- },
- {
- "ID": "14140",
- "typeID": "__group__",
- "zOrder": "86",
- "measuredW": "230",
- "measuredH": "36",
- "w": "230",
- "h": "36",
- "x": "190",
- "y": "1576",
- "properties": {
- "controlName": "102-apis:authentication:basic-authentication"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextInput",
- "zOrder": "0",
- "w": "223",
- "measuredW": "181",
- "measuredH": "32",
- "x": "7",
- "y": "4",
- "properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "Basic Authentication"
- }
},
{
- "ID": "1",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "1",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -3997,13 +3221,13 @@
}
},
{
- "ID": "2",
+ "ID": "4",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "4",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -4017,45 +3241,57 @@
}
},
{
- "ID": "14141",
+ "ID": "14180",
"typeID": "__group__",
- "zOrder": "87",
- "measuredW": "230",
- "measuredH": "35",
- "w": "230",
- "h": "35",
- "x": "190",
- "y": "1613",
+ "zOrder": "124",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "675",
+ "y": "1416",
"properties": {
- "controlName": "103-apis:authentication:token-authentication"
+ "controlName": "101-relational-databases:mysql"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "223",
- "measuredW": "185",
- "measuredH": "32",
- "x": "7",
- "y": "3",
+ "w": "191",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "Token Authentication"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
+ "w": "60",
+ "measuredW": "56",
+ "measuredH": "25",
+ "x": "74",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "MySQL"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -4065,15 +3301,31 @@
}
},
{
- "ID": "2",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
- "color": "10027263",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "7",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4085,45 +3337,56 @@
}
},
{
- "ID": "14142",
+ "ID": "14181",
"typeID": "__group__",
- "zOrder": "88",
- "measuredW": "230",
- "measuredH": "36",
- "w": "230",
- "h": "36",
- "x": "190",
- "y": "1649",
+ "zOrder": "125",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "675",
+ "y": "1461",
"properties": {
- "controlName": "104-apis:authentication:jwt"
+ "controlName": "102-relational-databases:mariadb"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "223",
- "measuredW": "51",
- "measuredH": "32",
- "x": "7",
- "y": "4",
+ "w": "191",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "JWT"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
+ "measuredW": "69",
+ "measuredH": "25",
+ "x": "69",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "MariaDB"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -4133,15 +3396,31 @@
}
},
{
- "ID": "2",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
- "color": "10027263",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "7",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4153,45 +3432,57 @@
}
},
{
- "ID": "14143",
+ "ID": "14182",
"typeID": "__group__",
- "zOrder": "89",
- "measuredW": "230",
- "measuredH": "37",
- "w": "230",
- "h": "37",
- "x": "191",
- "y": "1684",
+ "zOrder": "126",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "675",
+ "y": "1506",
"properties": {
- "controlName": "105-apis:authentication:openid"
+ "controlName": "103-relational-databases:mssql"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "223",
- "measuredW": "78",
- "measuredH": "32",
- "x": "7",
- "y": "5",
+ "w": "191",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "OpenID"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
+ "w": "67",
+ "measuredW": "63",
+ "measuredH": "25",
+ "x": "70",
+ "y": "8",
+ "properties": {
+ "size": "17",
+ "text": "MS SQL"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -4201,15 +3492,31 @@
}
},
{
- "ID": "2",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
- "color": "10066329",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "7",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4221,45 +3528,57 @@
}
},
{
- "ID": "14144",
+ "ID": "14183",
"typeID": "__group__",
- "zOrder": "90",
- "measuredW": "230",
- "measuredH": "36",
- "w": "230",
- "h": "36",
- "x": "191",
- "y": "1722",
+ "zOrder": "127",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "675",
+ "y": "1552",
"properties": {
- "controlName": "105-apis:authentication:saml"
+ "controlName": "104-relational-databases:oracle"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextInput",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "223",
- "measuredW": "62",
- "measuredH": "32",
- "x": "7",
- "y": "4",
+ "w": "191",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
"properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "SAML"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "1",
+ "w": "54",
+ "measuredW": "52",
+ "measuredH": "25",
+ "x": "77",
+ "y": "8",
+ "properties": {
+ "size": "17",
+ "text": "Oracle"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -4269,15 +3588,31 @@
}
},
{
- "ID": "2",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10066329",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4289,166 +3624,17 @@
}
},
{
- "ID": "14145",
- "typeID": "Arrow",
- "zOrder": "91",
- "w": "57",
- "h": "33",
- "measuredW": "150",
- "measuredH": "100",
- "x": "476",
- "y": "1863",
+ "ID": "14184",
+ "typeID": "__group__",
+ "zOrder": "128",
+ "measuredW": "226",
+ "measuredH": "50",
+ "w": "226",
+ "h": "50",
+ "x": "1129",
+ "y": "1631",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 33
- },
- "p1": {
- "x": 0.4920052363364346,
- "y": -0.09642807050352983
- },
- "p2": {
- "x": 57,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14146",
- "typeID": "Arrow",
- "zOrder": "92",
- "w": "95",
- "h": "3",
- "measuredW": "150",
- "measuredH": "100",
- "x": "447",
- "y": "1852",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 3
- },
- "p1": {
- "x": 0.4699266503667481,
- "y": -0.000488997555012226
- },
- "p2": {
- "x": 95,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14147",
- "typeID": "Arrow",
- "zOrder": "93",
- "w": "81",
- "h": "20",
- "measuredW": "150",
- "measuredH": "100",
- "x": "289",
- "y": "1856",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 19.5
- },
- "p1": {
- "x": 0.4816763425253991,
- "y": -0.05932510885341123
- },
- "p2": {
- "x": 80,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14148",
- "typeID": "Arrow",
- "zOrder": "94",
- "w": "87",
- "h": "23",
- "measuredW": "150",
- "measuredH": "100",
- "x": "282",
- "y": "1829",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 1
- },
- "p1": {
- "x": 0.5043513295729252,
- "y": 0.08807413376309427
- },
- "p2": {
- "x": 86,
- "y": 23
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14149",
- "typeID": "Arrow",
- "zOrder": "95",
- "w": "242",
- "h": "206",
- "measuredW": "150",
- "measuredH": "100",
- "x": "666",
- "y": "1642",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "rightArrow": "false",
- "p0": {
- "x": 242,
- "y": 0
- },
- "p1": {
- "x": 0.5151777033596199,
- "y": 0.14994058550286274
- },
- "p2": {
- "x": 0.21212121212113288,
- "y": 206.030303030303
- }
- }
- },
- {
- "ID": "14150",
- "typeID": "__group__",
- "zOrder": "96",
- "measuredW": "159",
- "measuredH": "50",
- "w": "159",
- "h": "50",
- "x": "522",
- "y": "1829",
- "properties": {
- "controlName": "110-caching"
+ "controlName": "107-nosql-databases"
},
"children": {
"controls": {
@@ -4457,7 +3643,7 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "159",
+ "w": "226",
"h": "50",
"measuredW": "200",
"measuredH": "140",
@@ -4471,12 +3657,12 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "64",
+ "measuredW": "143",
"measuredH": "25",
- "x": "48",
- "y": "13",
+ "x": "41",
+ "y": "12",
"properties": {
- "text": "Caching",
+ "text": "NoSQL Databases",
"size": "17"
}
}
@@ -4485,17 +3671,17 @@
}
},
{
- "ID": "14151",
+ "ID": "14187",
"typeID": "__group__",
- "zOrder": "97",
- "measuredW": "153",
- "measuredH": "48",
- "w": "153",
- "h": "48",
- "x": "156",
- "y": "1802",
+ "zOrder": "129",
+ "measuredW": "178",
+ "measuredH": "40",
+ "w": "178",
+ "h": "40",
+ "x": "1061",
+ "y": "1803",
"properties": {
- "controlName": "100-caching:server-side:redis"
+ "controlName": "101-more-about-databases:acid"
},
"children": {
"controls": {
@@ -4504,12 +3690,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "144",
+ "w": "171",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "9",
- "y": "8",
+ "x": "7",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -4518,14 +3704,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "46",
- "measuredW": "45",
+ "w": "43",
+ "measuredW": "40",
"measuredH": "25",
- "x": "58",
- "y": "16",
+ "x": "71",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Redis"
+ "text": "ACID"
}
},
{
@@ -4535,7 +3721,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -4551,7 +3737,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "10027263",
"icon": {
@@ -4565,17 +3751,17 @@
}
},
{
- "ID": "14152",
+ "ID": "14188",
"typeID": "__group__",
- "zOrder": "98",
- "measuredW": "151",
- "measuredH": "45",
- "w": "151",
- "h": "45",
- "x": "158",
- "y": "1851",
+ "zOrder": "130",
+ "measuredW": "226",
+ "measuredH": "50",
+ "w": "226",
+ "h": "50",
+ "x": "1068",
+ "y": "2020",
"properties": {
- "controlName": "101-caching:server-side:memcached"
+ "controlName": "108-more-about-databases"
},
"children": {
"controls": {
@@ -4584,12 +3770,59 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "144",
+ "w": "226",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "176",
+ "measuredH": "25",
+ "x": "29",
+ "y": "13",
+ "properties": {
+ "text": "More about Databases",
+ "size": "17"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14189",
+ "typeID": "__group__",
+ "zOrder": "131",
+ "measuredW": "178",
+ "measuredH": "40",
+ "w": "178",
+ "h": "40",
+ "x": "1061",
+ "y": "1848",
+ "properties": {
+ "controlName": "102-more-about-databases:transactions"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "171",
"h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "7",
- "y": "5",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -4598,14 +3831,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "96",
- "measuredW": "96",
+ "w": "105",
+ "measuredW": "99",
"measuredH": "25",
- "x": "35",
- "y": "13",
+ "x": "47",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Memcached"
+ "text": "Transactions"
}
},
{
@@ -4615,7 +3848,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -4631,25 +3864,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4661,17 +3878,17 @@
}
},
{
- "ID": "14153",
+ "ID": "14190",
"typeID": "__group__",
- "zOrder": "99",
- "measuredW": "129",
+ "zOrder": "132",
+ "measuredW": "178",
"measuredH": "40",
- "w": "129",
+ "w": "178",
"h": "40",
- "x": "361",
- "y": "1834",
+ "x": "1061",
+ "y": "1893",
"properties": {
- "controlName": "101-caching:server-side"
+ "controlName": "103-more-about-databases:n-plus-one-problem"
},
"children": {
"controls": {
@@ -4680,11 +3897,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "129",
+ "w": "171",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
+ "x": "7",
"y": "0",
"properties": {
"color": "16770457"
@@ -4694,14 +3911,45 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "95",
- "measuredW": "90",
+ "measuredW": "99",
"measuredH": "25",
- "x": "19",
- "y": "8",
+ "x": "46",
+ "y": "7",
"properties": {
- "size": "17",
- "text": "Server Side"
+ "text": "N+1 Problem",
+ "size": "17"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -4709,17 +3957,17 @@
}
},
{
- "ID": "14154",
+ "ID": "14191",
"typeID": "__group__",
- "zOrder": "100",
- "measuredW": "135",
- "measuredH": "44",
- "w": "135",
- "h": "44",
- "x": "354",
- "y": "1875",
+ "zOrder": "133",
+ "measuredW": "215",
+ "measuredH": "40",
+ "w": "215",
+ "h": "40",
+ "x": "1522",
+ "y": "2113",
"properties": {
- "controlName": "102-caching:client-side"
+ "controlName": "102-scaling-databases:sharding-strategies"
},
"children": {
"controls": {
@@ -4728,12 +3976,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "128",
+ "w": "206",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "4",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -4742,14 +3990,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "88",
- "measuredW": "84",
+ "w": "155",
+ "measuredW": "151",
"measuredH": "25",
- "x": "28",
- "y": "12",
+ "x": "27",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Client Side"
+ "text": "Sharding Strategies"
}
},
{
@@ -4758,8 +4006,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "191",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -4774,10 +4022,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "191",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -4789,17 +4037,17 @@
}
},
{
- "ID": "14155",
+ "ID": "14192",
"typeID": "__group__",
- "zOrder": "101",
- "measuredW": "138",
- "measuredH": "46",
- "w": "138",
- "h": "46",
- "x": "353",
- "y": "1783",
+ "zOrder": "134",
+ "measuredW": "182",
+ "measuredH": "40",
+ "w": "182",
+ "h": "40",
+ "x": "1059",
+ "y": "1939",
"properties": {
- "controlName": "100-caching:cdn"
+ "controlName": "104-more-about-databases:database-normalization"
},
"children": {
"controls": {
@@ -4808,12 +4056,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "129",
- "h": "37",
+ "w": "173",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "9",
- "y": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -4822,14 +4070,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "40",
- "measuredW": "38",
+ "measuredW": "107",
"measuredH": "25",
- "x": "54",
- "y": "16",
+ "x": "42",
+ "y": "7",
"properties": {
"size": "17",
- "text": "CDN"
+ "text": "Normalization"
}
},
{
@@ -4839,7 +4086,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -4855,7 +4102,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "10027263",
"icon": {
@@ -4869,1259 +4116,543 @@
}
},
{
- "ID": "14156",
- "typeID": "Arrow",
- "zOrder": "102",
- "w": "103",
- "h": "16",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1008",
- "y": "1466",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 15
- },
- "p1": {
- "x": 0.4615951248911806,
- "y": 0.017310654255675347
- },
- "p2": {
- "x": 102,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14157",
- "typeID": "Arrow",
- "zOrder": "103",
- "w": "103",
- "h": "23",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1009",
- "y": "1489",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.45604025566412953,
- "y": -0.030700026684625844
- },
- "p2": {
- "x": 103,
- "y": 22
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14158",
- "typeID": "Arrow",
- "zOrder": "104",
- "w": "100",
- "h": "15",
- "measuredW": "150",
- "measuredH": "100",
- "x": "708",
- "y": "1642",
+ "ID": "14193",
+ "typeID": "__group__",
+ "zOrder": "135",
+ "measuredW": "215",
+ "measuredH": "40",
+ "w": "215",
+ "h": "40",
+ "x": "1522",
+ "y": "2067",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 15
- },
- "p1": {
- "x": 0.4699266503667482,
- "y": -0.000488997555012225
- },
- "p2": {
- "x": 100,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "101-scaling-databases:data-replication"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "207",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "129",
+ "measuredW": "128",
+ "measuredH": "25",
+ "x": "42",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Data Replication"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "191",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "191",
+ "y": "8",
+ "properties": {
+ "color": "10066329",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14159",
- "typeID": "Arrow",
- "zOrder": "105",
- "w": "109",
- "h": "24",
- "measuredW": "150",
- "measuredH": "100",
- "x": "696",
- "y": "1612",
+ "ID": "14194",
+ "typeID": "__group__",
+ "zOrder": "136",
+ "measuredW": "215",
+ "measuredH": "40",
+ "w": "215",
+ "h": "40",
+ "x": "1522",
+ "y": "2022",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 1
- },
- "p1": {
- "x": 0.5043513295729251,
- "y": 0.08807413376309428
- },
- "p2": {
- "x": 108.5,
- "y": 24
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14160",
- "typeID": "Arrow",
- "zOrder": "106",
- "w": "104",
- "h": "75",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1015",
- "y": "1559",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 75
- },
- "p1": {
- "x": 0.5126056879323597,
- "y": 0.057109915449654144
- },
- "p2": {
- "x": 103.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "100-scaling-databases:database-indexes"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "204",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "140",
+ "measuredH": "25",
+ "x": "32",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Database Indexes"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "191",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "191",
+ "y": "8",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14161",
- "typeID": "Arrow",
- "zOrder": "107",
- "w": "96",
- "h": "37",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1021",
- "y": "1635",
+ "ID": "14195",
+ "typeID": "__group__",
+ "zOrder": "137",
+ "measuredW": "178",
+ "measuredH": "50",
+ "w": "178",
+ "h": "50",
+ "x": "928",
+ "y": "2145",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 0
- },
- "p1": {
- "x": 0.553292254417681,
- "y": -0.1507867800580538
- },
- "p2": {
- "x": 95.5,
- "y": 33
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "109-apis"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "178",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "133",
+ "measuredH": "25",
+ "x": "22",
+ "y": "13",
+ "properties": {
+ "text": "Learn about APIs",
+ "size": "17"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14162",
- "typeID": "Arrow",
- "zOrder": "108",
- "w": "93",
- "h": "66",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1024",
- "y": "1645",
+ "ID": "14196",
+ "typeID": "__group__",
+ "zOrder": "138",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "955",
+ "y": "2242",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 0
- },
- "p1": {
- "x": 0.5583937813065076,
- "y": -0.1856462910232163
- },
- "p2": {
- "x": 92.5,
- "y": 65
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "100-apis:rest"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "146",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "49",
+ "measuredW": "44",
+ "measuredH": "25",
+ "x": "48",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "REST"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "130",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "130",
+ "y": "8",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14163",
- "typeID": "Arrow",
- "zOrder": "109",
- "w": "21",
- "h": "147",
- "measuredW": "150",
- "measuredH": "100",
- "x": "912",
- "y": "1485",
+ "ID": "14197",
+ "typeID": "__group__",
+ "zOrder": "139",
+ "measuredW": "155",
+ "measuredH": "40",
+ "w": "155",
+ "h": "40",
+ "x": "955",
+ "y": "2287",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 3,
- "y": 0
- },
- "p1": {
- "x": 0.5150179959193967,
- "y": 0.1283510235895555
- },
- "p2": {
- "x": 0,
- "y": 147
- },
- "rightArrow": "false"
+ "controlName": "101-apis:json-apis"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "146",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "90",
+ "measuredW": "85",
+ "measuredH": "25",
+ "x": "28",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "JSON APIs"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "131",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "131",
+ "y": "8",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14164",
- "typeID": "Arrow",
- "zOrder": "110",
- "w": "105",
- "h": "58",
- "measuredW": "150",
- "measuredH": "100",
- "x": "1004",
- "y": "1419",
+ "ID": "14198",
+ "typeID": "__group__",
+ "zOrder": "140",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "956",
+ "y": "2332",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 57
- },
- "p1": {
- "x": 0.43648681345269785,
- "y": 0.055165739172513925
- },
- "p2": {
- "x": 104,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "102-apis:soap"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "145",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "49",
+ "measuredW": "44",
+ "measuredH": "25",
+ "x": "48",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "SOAP"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "130",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "130",
+ "y": "8",
+ "properties": {
+ "color": "10066329",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14165",
- "typeID": "Arrow",
- "zOrder": "111",
- "w": "7",
- "h": "227",
- "measuredW": "150",
- "measuredH": "100",
- "x": "864",
- "y": "1241",
+ "ID": "14199",
+ "typeID": "__group__",
+ "zOrder": "141",
+ "measuredW": "199",
+ "measuredH": "40",
+ "w": "199",
+ "h": "40",
+ "x": "667",
+ "y": "2149",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 1,
- "y": 0
- },
- "p1": {
- "x": 0.5023004996784247,
- "y": -0.007519912927323998
- },
- "p2": {
- "x": 6,
- "y": 226
- },
- "rightArrow": "false"
+ "controlName": "104-apis:hateoas"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "190",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "78",
+ "measuredW": "76",
+ "measuredH": "25",
+ "x": "65",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "HATEOAS"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "10066329",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14166",
- "typeID": "Arrow",
- "zOrder": "112",
- "w": "82",
- "h": "58",
- "measuredW": "150",
- "measuredH": "100",
- "x": "710",
- "y": "1491",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 81,
- "y": 0
- },
- "p1": {
- "x": 0.6458011220568096,
- "y": 0.05946017581835049
- },
- "p2": {
- "x": 0,
- "y": 58
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14167",
- "typeID": "Arrow",
- "zOrder": "113",
- "w": "81",
- "h": "8",
- "measuredW": "150",
- "measuredH": "100",
- "x": "709",
- "y": "1491",
- "properties": {
- "color": "2848996",
- "curvature": "1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 80,
- "y": 0
- },
- "p1": {
- "x": 0.5775782957636026,
- "y": -0.025361653846795687
- },
- "p2": {
- "x": 0,
- "y": 7
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14168",
- "typeID": "Arrow",
- "zOrder": "114",
- "w": "85",
- "h": "29",
- "measuredW": "150",
- "measuredH": "100",
- "x": "705",
- "y": "1456",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 84,
- "y": 28
- },
- "p1": {
- "x": 0.6101477809142017,
- "y": -0.07187418459567801
- },
- "p2": {
- "x": 0,
- "y": 1
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14169",
- "typeID": "Arrow",
- "zOrder": "115",
- "w": "97",
- "h": "69",
- "measuredW": "150",
- "measuredH": "100",
- "x": "695",
- "y": "1405",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 96,
- "y": 68
- },
- "p1": {
- "x": 0.6632615833637359,
- "y": -0.099598686610726
- },
- "p2": {
- "x": 0,
- "y": 1
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14170",
- "typeID": "Arrow",
- "zOrder": "116",
- "w": "74",
- "h": "94",
- "measuredW": "150",
- "measuredH": "100",
- "x": "713",
- "y": "1363",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 73,
- "y": 93
- },
- "p1": {
- "x": 0.6010928961748633,
- "y": -0.054644808743169335
- },
- "p2": {
- "x": 0,
- "y": 1
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14171",
- "typeID": "Arrow",
- "zOrder": "117",
- "w": "83",
- "h": "213",
- "measuredW": "150",
- "measuredH": "100",
- "x": "731",
- "y": "1246",
- "properties": {
- "color": "2848996",
- "curvature": "1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 1
- },
- "p1": {
- "x": 0.2883988681822617,
- "y": 0.12014830715191724
- },
- "p2": {
- "x": 82,
- "y": 212
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14172",
- "typeID": "Arrow",
- "zOrder": "118",
- "w": "82",
- "h": "5",
- "measuredW": "150",
- "measuredH": "100",
- "x": "946",
- "y": "1221",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "top",
- "leftArrow": "false",
- "p0": {
- "x": 81,
- "y": 4
- },
- "p1": {
- "x": 0.4444444444444445,
- "y": -0.04938271604938272
- },
- "p2": {
- "x": 0,
- "y": 4
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14173",
- "typeID": "Arrow",
- "zOrder": "119",
- "w": "67",
- "h": "111",
- "measuredW": "150",
- "measuredH": "100",
- "x": "448",
- "y": "1261",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 67,
- "y": 0
- },
- "p1": {
- "x": 0.5,
- "y": 0
- },
- "p2": {
- "x": 0,
- "y": 111
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14174",
- "typeID": "Arrow",
- "zOrder": "120",
- "w": "78",
- "h": "157",
- "measuredW": "150",
- "measuredH": "100",
- "x": "446",
- "y": "1262",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 78,
- "y": 0
- },
- "p1": {
- "x": 0.4932456861133936,
- "y": 0.07316351684470009
- },
- "p2": {
- "x": 0,
- "y": 157
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14175",
- "typeID": "Arrow",
- "zOrder": "121",
- "w": "73",
- "h": "79",
- "measuredW": "150",
- "measuredH": "100",
- "x": "441",
- "y": "1249",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 73,
- "y": 0
- },
- "p1": {
- "x": 0.5,
- "y": 0
- },
- "p2": {
- "x": 0,
- "y": 79
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14176",
- "typeID": "Arrow",
- "zOrder": "122",
- "w": "86",
- "h": "32",
- "measuredW": "150",
- "measuredH": "100",
- "x": "434",
- "y": "1242",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 86,
- "y": 0
- },
- "p1": {
- "x": 0.5,
- "y": 0
- },
- "p2": {
- "x": 0,
- "y": 32
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14177",
- "typeID": "Arrow",
- "zOrder": "123",
- "w": "125",
- "h": "14",
- "measuredW": "150",
- "measuredH": "100",
- "x": "425",
- "y": "1227",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 125,
- "y": 14
- },
- "p1": {
- "x": 0.5,
- "y": 0
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14178",
- "typeID": "__group__",
- "zOrder": "124",
- "measuredW": "229",
- "measuredH": "50",
- "w": "229",
- "h": "50",
- "x": "508",
- "y": "1221",
- "properties": {
- "controlName": "106-relational-databases"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "229",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "165",
- "measuredH": "25",
- "x": "32",
- "y": "13",
- "properties": {
- "size": "17",
- "text": "Relational Databases"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14179",
- "typeID": "__group__",
- "zOrder": "125",
- "measuredW": "199",
- "measuredH": "47",
- "w": "199",
- "h": "47",
- "x": "255",
- "y": "1205",
- "properties": {
- "controlName": "100-relational-databases:postgresql"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "7",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "96",
- "measuredW": "93",
- "measuredH": "25",
- "x": "56",
- "y": "15",
- "properties": {
- "size": "17",
- "text": "PostgreSQL"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14180",
- "typeID": "__group__",
- "zOrder": "126",
- "measuredW": "199",
- "measuredH": "43",
- "w": "199",
- "h": "43",
- "x": "255",
- "y": "1255",
- "properties": {
- "controlName": "101-relational-databases:mysql"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "3",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "60",
- "measuredW": "56",
- "measuredH": "25",
- "x": "74",
- "y": "11",
- "properties": {
- "size": "17",
- "text": "MySQL"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14181",
- "typeID": "__group__",
- "zOrder": "127",
- "measuredW": "199",
- "measuredH": "43",
- "w": "199",
- "h": "43",
- "x": "255",
- "y": "1300",
- "properties": {
- "controlName": "102-relational-databases:mariadb"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "3",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "69",
- "measuredH": "25",
- "x": "69",
- "y": "11",
- "properties": {
- "size": "17",
- "text": "MariaDB"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14182",
- "typeID": "__group__",
- "zOrder": "128",
- "measuredW": "199",
- "measuredH": "43",
- "w": "199",
- "h": "43",
- "x": "255",
- "y": "1346",
- "properties": {
- "controlName": "103-relational-databases:mssql"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "3",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "67",
- "measuredW": "63",
- "measuredH": "25",
- "x": "70",
- "y": "11",
- "properties": {
- "size": "17",
- "text": "MS SQL"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14183",
- "typeID": "__group__",
- "zOrder": "129",
- "measuredW": "199",
- "measuredH": "43",
- "w": "199",
- "h": "43",
- "x": "255",
- "y": "1392",
- "properties": {
- "controlName": "104-relational-databases:oracle"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "3",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "54",
- "measuredW": "52",
- "measuredH": "25",
- "x": "77",
- "y": "11",
- "properties": {
- "size": "17",
- "text": "Oracle"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14184",
- "typeID": "__group__",
- "zOrder": "130",
- "measuredW": "191",
- "measuredH": "50",
- "w": "191",
- "h": "50",
- "x": "776",
- "y": "1207",
- "properties": {
- "controlName": "107-nosql-databases"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "191",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "143",
- "measuredH": "25",
- "x": "24",
- "y": "12",
- "properties": {
- "text": "NoSQL Databases",
- "size": "17"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14185",
+ "ID": "14200",
"typeID": "__group__",
- "zOrder": "131",
- "measuredW": "326",
+ "zOrder": "142",
+ "measuredW": "200",
"measuredH": "40",
- "w": "326",
+ "w": "200",
"h": "40",
- "x": "1010",
- "y": "1202",
+ "x": "667",
+ "y": "2195",
"properties": {
- "controlName": "100-nosql-databases:document-databases"
+ "controlName": "105-apis:open-api-spec"
},
"children": {
"controls": {
@@ -6130,148 +4661,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "326",
+ "w": "190",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "80",
- "measuredH": "25",
- "x": "15",
- "y": "8",
- "properties": {
- "size": "17",
- "text": "Document"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "measuredW": "159",
- "measuredH": "25",
- "x": "105",
- "y": "8",
- "properties": {
- "size": "17",
- "text": "{color:blue}MongoDB{color}, CouchDB"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14186",
- "typeID": "__group__",
- "zOrder": "132",
- "measuredW": "328",
- "measuredH": "42",
- "w": "328",
- "h": "42",
- "x": "1009",
- "y": "1335",
- "properties": {
- "controlName": "103-nosql-databases:realtime-databases"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "Icon",
- "zOrder": "0",
- "measuredW": "24",
- "measuredH": "24",
- "x": "232",
+ "x": "10",
"y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "1",
- "typeID": "TextArea",
- "zOrder": "1",
- "w": "328",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "2",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "measuredW": "69",
- "measuredH": "25",
- "x": "16",
- "y": "10",
- "properties": {
- "size": "17",
- "text": "Realtime"
- }
- },
- {
- "ID": "3",
- "typeID": "Label",
- "zOrder": "3",
- "measuredW": "159",
- "measuredH": "25",
- "x": "99",
- "y": "10",
- "properties": {
- "size": "17",
- "text": "{color:blue}Firebase{color}, RethinkDB"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14187",
- "typeID": "__group__",
- "zOrder": "133",
- "measuredW": "178",
- "measuredH": "44",
- "w": "178",
- "h": "44",
- "x": "541",
- "y": "1342",
- "properties": {
- "controlName": "101-more-about-databases:acid"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "171",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "7",
- "y": "4",
"properties": {
"color": "16770457"
}
@@ -6280,14 +4675,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "43",
- "measuredW": "40",
+ "measuredW": "126",
"measuredH": "25",
- "x": "71",
- "y": "12",
+ "x": "42",
+ "y": "7",
"properties": {
"size": "17",
- "text": "ACID"
+ "text": "Open API Specs"
}
},
{
@@ -6297,7 +4691,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -6313,9 +4707,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -6327,17 +4721,17 @@
}
},
{
- "ID": "14188",
+ "ID": "14201",
"typeID": "__group__",
- "zOrder": "134",
- "measuredW": "238",
- "measuredH": "50",
- "w": "238",
- "h": "50",
- "x": "782",
- "y": "1452",
+ "zOrder": "143",
+ "measuredW": "214",
+ "measuredH": "40",
+ "w": "214",
+ "h": "40",
+ "x": "1523",
+ "y": "2159",
"properties": {
- "controlName": "108-more-about-databases"
+ "controlName": "103-scaling-databases:cap-theorem"
},
"children": {
"controls": {
@@ -6346,59 +4740,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "238",
- "h": "50",
+ "w": "206",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
"y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "176",
- "measuredH": "25",
- "x": "31",
- "y": "13",
- "properties": {
- "text": "More about Databases",
- "size": "17"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14189",
- "typeID": "__group__",
- "zOrder": "135",
- "measuredW": "178",
- "measuredH": "45",
- "w": "178",
- "h": "45",
- "x": "541",
- "y": "1385",
- "properties": {
- "controlName": "102-more-about-databases:transactions"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "171",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "7",
- "y": "5",
"properties": {
"color": "16770457"
}
@@ -6407,14 +4754,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "105",
- "measuredW": "99",
+ "w": "109",
+ "measuredW": "107",
"measuredH": "25",
- "x": "47",
- "y": "12",
+ "x": "48",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Transactions"
+ "text": "CAP Theorem"
}
},
{
@@ -6423,8 +4770,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "190",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -6439,10 +4786,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "190",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -6454,17 +4801,17 @@
}
},
{
- "ID": "14190",
+ "ID": "14202",
"typeID": "__group__",
- "zOrder": "136",
- "measuredW": "178",
- "measuredH": "43",
- "w": "178",
- "h": "43",
- "x": "541",
- "y": "1431",
+ "zOrder": "144",
+ "measuredW": "201",
+ "measuredH": "40",
+ "w": "201",
+ "h": "40",
+ "x": "666",
+ "y": "2240",
"properties": {
- "controlName": "103-more-about-databases:n-plus-one-problem"
+ "controlName": "106-apis:authentication"
},
"children": {
"controls": {
@@ -6473,12 +4820,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "171",
+ "w": "192",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "3",
+ "x": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -6487,13 +4834,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "99",
+ "w": "111",
+ "measuredW": "111",
"measuredH": "25",
- "x": "46",
- "y": "11",
+ "x": "49",
+ "y": "7",
"properties": {
- "text": "N+1 Problem",
- "size": "17"
+ "size": "17",
+ "text": "Authentication"
}
},
{
@@ -6503,7 +4851,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -6519,7 +4867,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "10027263",
"icon": {
@@ -6533,17 +4881,17 @@
}
},
{
- "ID": "14191",
+ "ID": "14204",
"typeID": "__group__",
- "zOrder": "137",
- "measuredW": "215",
- "measuredH": "44",
- "w": "215",
- "h": "44",
- "x": "1100",
- "y": "1441",
+ "zOrder": "145",
+ "measuredW": "240",
+ "measuredH": "54",
+ "w": "240",
+ "h": "54",
+ "x": "1173",
+ "y": "2462",
"properties": {
- "controlName": "107-more-about-databases:sharding-strategies"
+ "controlName": "111-web-security-knowledge"
},
"children": {
"controls": {
@@ -6552,60 +4900,85 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "206",
- "h": "40",
+ "w": "240",
+ "h": "54",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "155",
- "measuredW": "151",
+ "measuredW": "189",
"measuredH": "25",
- "x": "27",
- "y": "11",
+ "x": "25",
+ "y": "15",
"properties": {
"size": "17",
- "text": "Sharding Strategies"
+ "text": "Web Security Knowledge"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14205",
+ "typeID": "TextArea",
+ "zOrder": "258",
+ "w": "271",
+ "h": "171",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "1451",
+ "y": "2651"
+ },
+ {
+ "ID": "14206",
+ "typeID": "__group__",
+ "zOrder": "259",
+ "measuredW": "86",
+ "measuredH": "42",
+ "w": "86",
+ "h": "42",
+ "x": "1467",
+ "y": "2715",
+ "properties": {
+ "controlName": "106-web-security-knowledge:cors"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "191",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "86",
+ "h": "42",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16770457"
}
},
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "191",
- "y": "0",
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "48",
+ "measuredH": "25",
+ "x": "25",
+ "y": "9",
"properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "CORS",
+ "size": "17"
}
}
]
@@ -6613,17 +4986,17 @@
}
},
{
- "ID": "14192",
+ "ID": "14207",
"typeID": "__group__",
- "zOrder": "138",
- "measuredW": "272",
- "measuredH": "49",
- "w": "272",
- "h": "49",
- "x": "449",
- "y": "1471",
+ "zOrder": "260",
+ "measuredW": "90",
+ "measuredH": "43",
+ "w": "90",
+ "h": "43",
+ "x": "1465",
+ "y": "2665",
"properties": {
- "controlName": "104-more-about-databases:database-normalization"
+ "controlName": "105-web-security-knowledge:https"
},
"children": {
"controls": {
@@ -6632,12 +5005,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "266",
- "h": "40",
+ "w": "90",
+ "h": "43",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "9",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -6646,46 +5019,107 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "188",
- "measuredW": "185",
+ "measuredW": "54",
"measuredH": "25",
- "x": "53",
- "y": "17",
+ "x": "21",
+ "y": "10",
"properties": {
- "size": "17",
- "text": "Database Normalization"
+ "text": "HTTPS",
+ "size": "17"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14208",
+ "typeID": "__group__",
+ "zOrder": "261",
+ "measuredW": "241",
+ "measuredH": "44",
+ "w": "241",
+ "h": "44",
+ "x": "1468",
+ "y": "2765",
+ "properties": {
+ "controlName": "105-web-security-knowledge:content-security-policy"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "241",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16770457"
}
},
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "175",
+ "measuredH": "25",
+ "x": "38",
+ "y": "10",
+ "properties": {
+ "size": "17",
+ "text": "Content Security Policy"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14209",
+ "typeID": "__group__",
+ "zOrder": "262",
+ "measuredW": "147",
+ "measuredH": "43",
+ "w": "147",
+ "h": "43",
+ "x": "1560",
+ "y": "2665",
+ "properties": {
+ "controlName": "108-web-security-knowledge:owasp"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "147",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "104",
+ "measuredH": "25",
+ "x": "22",
+ "y": "10",
+ "properties": {
+ "size": "17",
+ "text": "OWASP Risks"
}
}
]
@@ -6693,17 +5127,28 @@
}
},
{
- "ID": "14193",
+ "ID": "14210",
+ "typeID": "TextArea",
+ "zOrder": "146",
+ "w": "270",
+ "h": "192",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "1451",
+ "y": "2464"
+ },
+ {
+ "ID": "14211",
"typeID": "__group__",
- "zOrder": "139",
- "measuredW": "215",
- "measuredH": "49",
- "w": "215",
- "h": "49",
- "x": "1100",
- "y": "1391",
+ "zOrder": "147",
+ "measuredW": "239",
+ "measuredH": "40",
+ "w": "239",
+ "h": "40",
+ "x": "1466",
+ "y": "2479",
"properties": {
- "controlName": "106-more-about-databases:data-replication"
+ "controlName": "100-web-security-knowledge:md5"
},
"children": {
"controls": {
@@ -6712,12 +5157,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "207",
+ "w": "239",
"h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -6726,46 +5171,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "129",
- "measuredW": "128",
+ "w": "203",
+ "measuredW": "197",
"measuredH": "25",
- "x": "42",
- "y": "16",
+ "x": "20",
+ "y": "8",
"properties": {
"size": "17",
- "text": "Data Replication"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "191",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "191",
- "y": "0",
- "properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "MD5 and why not to use it"
}
}
]
@@ -6773,17 +5186,17 @@
}
},
{
- "ID": "14194",
+ "ID": "14212",
"typeID": "__group__",
- "zOrder": "140",
- "measuredW": "268",
+ "zOrder": "148",
+ "measuredW": "237",
"measuredH": "40",
- "w": "268",
+ "w": "237",
"h": "40",
- "x": "454",
- "y": "1526",
+ "x": "1467",
+ "y": "2524",
"properties": {
- "controlName": "105-more-about-databases:database-indexes"
+ "controlName": "101-web-security-knowledge:sha-family"
},
"children": {
"controls": {
@@ -6792,7 +5205,7 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
+ "w": "237",
"h": "40",
"measuredW": "200",
"measuredH": "140",
@@ -6806,14 +5219,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "214",
- "measuredW": "205",
+ "w": "93",
+ "measuredW": "87",
"measuredH": "25",
- "x": "32",
- "y": "8",
+ "x": "72",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Indexes and how they work"
+ "text": "SHA Family"
}
}
]
@@ -6821,17 +5234,17 @@
}
},
{
- "ID": "14195",
+ "ID": "14213",
"typeID": "__group__",
- "zOrder": "141",
- "measuredW": "238",
- "measuredH": "50",
- "w": "238",
- "h": "50",
- "x": "796",
- "y": "1612",
+ "zOrder": "149",
+ "measuredW": "119",
+ "measuredH": "40",
+ "w": "119",
+ "h": "40",
+ "x": "1468",
+ "y": "2570",
"properties": {
- "controlName": "109-apis"
+ "controlName": "104-web-security-knowledge:scrypt"
},
"children": {
"controls": {
@@ -6840,27 +5253,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "238",
- "h": "50",
+ "w": "119",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "133",
+ "w": "62",
+ "measuredW": "47",
"measuredH": "25",
- "x": "52",
- "y": "13",
+ "x": "38",
+ "y": "7",
"properties": {
- "text": "Learn about APIs",
- "size": "17"
+ "size": "17",
+ "text": "scrypt"
}
}
]
@@ -6868,17 +5282,17 @@
}
},
{
- "ID": "14196",
+ "ID": "14214",
"typeID": "__group__",
- "zOrder": "142",
- "measuredW": "196",
- "measuredH": "71",
- "w": "196",
- "h": "71",
- "x": "1105",
- "y": "1531",
+ "zOrder": "150",
+ "measuredW": "111",
+ "measuredH": "40",
+ "w": "111",
+ "h": "40",
+ "x": "1594",
+ "y": "2570",
"properties": {
- "controlName": "100-apis:rest"
+ "controlName": "102-web-security-knowledge:bcrypt"
},
"children": {
"controls": {
@@ -6887,12 +5301,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "188",
+ "w": "111",
"h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -6901,38 +5315,74 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "49",
- "measuredW": "44",
+ "w": "53",
+ "measuredW": "48",
"measuredH": "25",
- "x": "70",
- "y": "17",
+ "x": "35",
+ "y": "7",
"properties": {
"size": "17",
- "text": "REST"
+ "text": "bcrypt"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14215",
+ "typeID": "Label",
+ "zOrder": "151",
+ "w": "155",
+ "measuredW": "149",
+ "measuredH": "25",
+ "x": "1508",
+ "y": "2618",
+ "properties": {
+ "size": "17",
+ "text": "Hashing Algorithms"
+ }
+ },
+ {
+ "ID": "14216",
+ "typeID": "__group__",
+ "zOrder": "152",
+ "measuredW": "187",
+ "measuredH": "32",
+ "w": "187",
+ "h": "32",
+ "x": "673",
+ "y": "2319",
+ "properties": {
+ "controlName": "100-apis:authentication:cookie-based"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "w": "179",
- "measuredW": "167",
- "measuredH": "22",
- "x": "7",
- "y": "49",
+ "ID": "0",
+ "typeID": "TextInput",
+ "zOrder": "0",
+ "w": "181",
+ "measuredW": "129",
+ "measuredH": "32",
+ "x": "6",
+ "y": "0",
"properties": {
- "size": "14",
- "text": "Read Roy Fielding’s Paper"
+ "align": "center",
+ "color": "16770457",
+ "text": "Cookie Based",
+ "size": "18"
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "172",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
"color": "16777215",
"icon": {
@@ -6942,15 +5392,15 @@
}
},
{
- "ID": "4",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "172",
- "y": "0",
+ "x": "0",
+ "y": "4",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -6962,17 +5412,17 @@
}
},
{
- "ID": "14197",
+ "ID": "14217",
"typeID": "__group__",
- "zOrder": "143",
- "measuredW": "197",
- "measuredH": "47",
- "w": "197",
- "h": "47",
- "x": "1105",
- "y": "1597",
+ "zOrder": "263",
+ "measuredW": "149",
+ "measuredH": "43",
+ "w": "149",
+ "h": "43",
+ "x": "1559",
+ "y": "2715",
"properties": {
- "controlName": "101-apis:json-apis"
+ "controlName": "107-web-security-knowledge:ssl-tls"
},
"children": {
"controls": {
@@ -6981,12 +5431,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "188",
- "h": "40",
+ "w": "149",
+ "h": "43",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "7",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -6995,46 +5445,60 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "90",
- "measuredW": "85",
+ "measuredW": "69",
"measuredH": "25",
- "x": "49",
- "y": "15",
+ "x": "40",
+ "y": "9",
"properties": {
- "size": "17",
- "text": "JSON APIs"
+ "text": "SSL/TLS",
+ "size": "17"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14218",
+ "typeID": "__group__",
+ "zOrder": "153",
+ "measuredW": "195",
+ "measuredH": "50",
+ "w": "195",
+ "h": "50",
+ "x": "1213",
+ "y": "2606",
+ "properties": {
+ "controlName": "112-testing"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "173",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "195",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16776960"
}
},
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "173",
- "y": "0",
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "56",
+ "measuredH": "25",
+ "x": "70",
+ "y": "13",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Testing",
+ "size": "17"
}
}
]
@@ -7042,17 +5506,17 @@
}
},
{
- "ID": "14198",
+ "ID": "14219",
"typeID": "__group__",
- "zOrder": "144",
- "measuredW": "197",
- "measuredH": "45",
- "w": "197",
- "h": "45",
- "x": "1105",
- "y": "1645",
+ "zOrder": "154",
+ "measuredW": "223",
+ "measuredH": "40",
+ "w": "223",
+ "h": "40",
+ "x": "908",
+ "y": "2535",
"properties": {
- "controlName": "102-apis:soap"
+ "controlName": "100-testing:integration-testing"
},
"children": {
"controls": {
@@ -7061,12 +5525,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "188",
+ "w": "212",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "5",
+ "x": "11",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -7075,14 +5539,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "49",
- "measuredW": "44",
+ "w": "150",
+ "measuredW": "144",
"measuredH": "25",
- "x": "69",
- "y": "13",
+ "x": "42",
+ "y": "7",
"properties": {
"size": "17",
- "text": "SOAP"
+ "text": "Integration Testing"
}
},
{
@@ -7091,8 +5555,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "173",
- "y": "0",
+ "x": "0",
+ "y": "6",
"properties": {
"color": "16777215",
"icon": {
@@ -7107,10 +5571,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "173",
- "y": "0",
+ "x": "0",
+ "y": "6",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -7122,17 +5586,17 @@
}
},
{
- "ID": "14199",
+ "ID": "14220",
"typeID": "__group__",
- "zOrder": "145",
- "measuredW": "274",
- "measuredH": "48",
- "w": "274",
- "h": "48",
- "x": "448",
- "y": "1582",
+ "zOrder": "155",
+ "measuredW": "225",
+ "measuredH": "37",
+ "w": "225",
+ "h": "37",
+ "x": "906",
+ "y": "2580",
"properties": {
- "controlName": "104-apis:hateoas"
+ "controlName": "101-testing:unit-testing"
},
"children": {
"controls": {
@@ -7141,12 +5605,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
- "h": "40",
+ "w": "214",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "8",
+ "x": "11",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -7155,14 +5619,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "78",
- "measuredW": "76",
+ "w": "99",
+ "measuredW": "91",
"measuredH": "25",
- "x": "101",
- "y": "16",
+ "x": "58",
+ "y": "6",
"properties": {
"size": "17",
- "text": "HATEOAS"
+ "text": "Unit Testing"
}
},
{
@@ -7172,7 +5636,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "5",
"properties": {
"color": "16777215",
"icon": {
@@ -7188,9 +5652,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "5",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -7202,17 +5666,17 @@
}
},
{
- "ID": "14200",
+ "ID": "14221",
"typeID": "__group__",
- "zOrder": "146",
- "measuredW": "274",
- "measuredH": "46",
- "w": "274",
- "h": "46",
- "x": "448",
- "y": "1630",
+ "zOrder": "156",
+ "measuredW": "224",
+ "measuredH": "37",
+ "w": "224",
+ "h": "37",
+ "x": "907",
+ "y": "2622",
"properties": {
- "controlName": "105-apis:open-api-spec"
+ "controlName": "102-testing:functional-testing"
},
"children": {
"controls": {
@@ -7221,12 +5685,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
- "h": "40",
+ "w": "214",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "6",
+ "x": "10",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -7235,14 +5699,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "230",
- "measuredW": "222",
+ "w": "151",
+ "measuredW": "140",
"measuredH": "25",
- "x": "28",
- "y": "13",
+ "x": "39",
+ "y": "6",
"properties": {
"size": "17",
- "text": "Open API Spec and Swagger"
+ "text": "Functional Testing"
}
},
{
@@ -7252,7 +5716,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "6",
"properties": {
"color": "16777215",
"icon": {
@@ -7268,9 +5732,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "6",
"properties": {
- "color": "10066329",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -7282,79 +5746,244 @@
}
},
{
- "ID": "14201",
+ "ID": "14222",
+ "typeID": "Arrow",
+ "zOrder": "157",
+ "w": "269",
+ "h": "194",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "983",
+ "y": "923",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 268.4360764425405,
+ "y": -0.2858165019254102
+ },
+ "p1": {
+ "x": 0.508287602643701,
+ "y": 0.1494412177047869
+ },
+ "p2": {
+ "x": -0.30546968388057394,
+ "y": 193.85134769137812
+ }
+ }
+ },
+ {
+ "ID": "14223",
+ "typeID": "Arrow",
+ "zOrder": "158",
+ "w": "16",
+ "h": "106",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1251",
+ "y": "811",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 5.0661253511545965,
+ "y": -0.06842586703601228
+ },
+ "p1": {
+ "x": 0.49476106194690206,
+ "y": 0.1305840707964593
+ },
+ "p2": {
+ "x": 0.436076442540525,
+ "y": 105.76126347271361
+ }
+ }
+ },
+ {
+ "ID": "14224",
+ "typeID": "Label",
+ "zOrder": "159",
+ "measuredW": "128",
+ "measuredH": "40",
+ "x": "1170",
+ "y": "759",
+ "properties": {
+ "size": "32",
+ "text": "Backend"
+ }
+ },
+ {
+ "ID": "14225",
+ "typeID": "Arrow",
+ "zOrder": "160",
+ "w": "30",
+ "h": "72",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1181",
+ "y": "675",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.1355873564000376,
+ "y": -0.12682637425450594
+ },
+ "p1": {
+ "x": 0.4191433998244705,
+ "y": -0.10084752016943233
+ },
+ "p2": {
+ "x": 30.08850738176079,
+ "y": 71.41806720423438
+ }
+ }
+ },
+ {
+ "ID": "14226",
+ "typeID": "Canvas",
+ "zOrder": "161",
+ "w": "350",
+ "h": "141",
+ "measuredW": "100",
+ "measuredH": "70",
+ "x": "1447",
+ "y": "642"
+ },
+ {
+ "ID": "14227",
+ "typeID": "Label",
+ "zOrder": "162",
+ "measuredW": "314",
+ "measuredH": "25",
+ "x": "1461",
+ "y": "659",
+ "properties": {
+ "size": "17",
+ "text": "Find the detailed version of this roadmap"
+ }
+ },
+ {
+ "ID": "14228",
+ "typeID": "Label",
+ "zOrder": "163",
+ "measuredW": "319",
+ "measuredH": "25",
+ "x": "1461",
+ "y": "687",
+ "properties": {
+ "size": "17",
+ "text": "along with resources and other roadmaps"
+ }
+ },
+ {
+ "ID": "14229",
"typeID": "__group__",
- "zOrder": "147",
- "measuredW": "214",
+ "zOrder": "164",
+ "measuredW": "320",
"measuredH": "45",
- "w": "214",
+ "w": "320",
"h": "45",
- "x": "1101",
- "y": "1486",
+ "x": "1462",
+ "y": "723",
"properties": {
- "controlName": "108-more-about-databases:cap-theorem"
+ "controlName": "ext_link:roadmap.sh"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "Canvas",
"zOrder": "0",
- "w": "206",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
+ "w": "320",
+ "h": "45",
+ "measuredW": "100",
+ "measuredH": "70",
"x": "0",
- "y": "5",
+ "y": "0",
+ "properties": {
+ "borderColor": "4273622",
+ "color": "4273622"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "105",
+ "measuredH": "28",
+ "x": "141",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "size": "20",
+ "text": "roadmap.sh"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "45",
+ "measuredH": "28",
+ "x": "66",
+ "y": "8",
"properties": {
- "color": "16770457"
+ "color": "16777215",
+ "size": "20",
+ "text": "https"
}
},
{
- "ID": "1",
+ "ID": "3",
"typeID": "Label",
- "zOrder": "1",
- "w": "109",
- "measuredW": "107",
- "measuredH": "25",
- "x": "48",
- "y": "12",
+ "zOrder": "3",
+ "measuredW": "5",
+ "measuredH": "28",
+ "x": "113",
+ "y": "8",
"properties": {
- "size": "17",
- "text": "CAP Theorem"
+ "bold": "true",
+ "color": "16777215",
+ "size": "20",
+ "text": ":"
}
},
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "190",
- "y": "0",
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "10",
+ "measuredH": "28",
+ "x": "120",
+ "y": "9",
"properties": {
"color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "size": "20",
+ "text": "/"
}
},
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "190",
- "y": "0",
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "10",
+ "measuredH": "28",
+ "x": "128",
+ "y": "9",
"properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "color": "16777215",
+ "size": "20",
+ "text": "/"
}
}
]
@@ -7362,17 +5991,238 @@
}
},
{
- "ID": "14202",
+ "ID": "14230",
+ "typeID": "Canvas",
+ "zOrder": "165",
+ "w": "408",
+ "h": "162",
+ "measuredW": "100",
+ "measuredH": "70",
+ "x": "635",
+ "y": "632"
+ },
+ {
+ "ID": "14231",
+ "typeID": "Icon",
+ "zOrder": "166",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "653",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14232",
+ "typeID": "Icon",
+ "zOrder": "167",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "653",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14233",
+ "typeID": "Label",
+ "zOrder": "168",
+ "measuredW": "269",
+ "measuredH": "24",
+ "x": "694",
+ "y": "653",
+ "properties": {
+ "size": "16",
+ "text": "Personal Recommendation / Opinion"
+ }
+ },
+ {
+ "ID": "14234",
+ "typeID": "Label",
+ "zOrder": "169",
+ "measuredW": "159",
+ "measuredH": "24",
+ "x": "694",
+ "y": "750",
+ "properties": {
+ "size": "16",
+ "text": "I wouldn't recommend"
+ }
+ },
+ {
+ "ID": "14235",
+ "typeID": "Icon",
+ "zOrder": "170",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "750",
+ "properties": {
+ "color": "10066329",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14236",
+ "typeID": "Label",
+ "zOrder": "171",
+ "w": "324",
+ "measuredW": "315",
+ "measuredH": "24",
+ "x": "695",
+ "y": "718",
+ "properties": {
+ "size": "16",
+ "text": "Order in roadmap not strict (Learn anytime)"
+ }
+ },
+ {
+ "ID": "14237",
+ "typeID": "Icon",
+ "zOrder": "172",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "718",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14238",
+ "typeID": "Icon",
+ "zOrder": "173",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "718",
+ "properties": {
+ "color": "10066329",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14239",
+ "typeID": "Label",
+ "zOrder": "174",
+ "measuredW": "272",
+ "measuredH": "24",
+ "x": "694",
+ "y": "686",
+ "properties": {
+ "size": "16",
+ "text": "Alternative Option - Pick this or purple"
+ }
+ },
+ {
+ "ID": "14240",
+ "typeID": "Icon",
+ "zOrder": "175",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "685",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14241",
+ "typeID": "Icon",
+ "zOrder": "176",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "685",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14242",
+ "typeID": "Icon",
+ "zOrder": "177",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "658",
+ "y": "685",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14243",
+ "typeID": "Arrow",
+ "zOrder": "65",
+ "w": "372",
+ "h": "9",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "969",
+ "y": "1126",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 9.5
+ },
+ "p1": {
+ "x": 0.4734542725983133,
+ "y": -0.0001116239247792778
+ },
+ "p2": {
+ "x": 371.72987682295434,
+ "y": 0.452028801972574
+ }
+ }
+ },
+ {
+ "ID": "14253",
"typeID": "__group__",
- "zOrder": "148",
- "measuredW": "273",
- "measuredH": "46",
- "w": "273",
- "h": "46",
- "x": "449",
- "y": "1677",
+ "zOrder": "178",
+ "measuredW": "147",
+ "measuredH": "40",
+ "w": "147",
+ "h": "40",
+ "x": "859",
+ "y": "1029",
"properties": {
- "controlName": "106-apis:authentication"
+ "controlName": "100-learn-a-language:go"
},
"children": {
"controls": {
@@ -7381,12 +6231,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
+ "w": "136",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "5",
- "y": "6",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -7395,14 +6245,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "111",
- "measuredW": "111",
+ "w": "26",
+ "measuredW": "23",
"measuredH": "25",
- "x": "83",
- "y": "14",
+ "x": "55",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Authentication"
+ "text": "Go"
}
},
{
@@ -7411,8 +6261,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "123",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -7427,91 +6277,30 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "123",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "16777215",
"icon": {
- "ID": "check-circle",
+ "ID": "circle",
"size": "small"
}
}
- }
- ]
- }
- }
- },
- {
- "ID": "14203",
- "typeID": "Arrow",
- "zOrder": "149",
- "w": "1",
- "h": "156",
- "measuredW": "150",
- "measuredH": "100",
- "x": "940",
- "y": "1852",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": -0.5
- },
- "p1": {
- "x": 0.4652565385165071,
- "y": 0.0007431756467057314
- },
- "p2": {
- "x": 0,
- "y": 155
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14204",
- "typeID": "__group__",
- "zOrder": "150",
- "measuredW": "240",
- "measuredH": "54",
- "w": "240",
- "h": "54",
- "x": "759",
- "y": "1828",
- "properties": {
- "controlName": "111-web-security-knowledge"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "240",
- "h": "54",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
},
{
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "189",
- "measuredH": "25",
- "x": "25",
- "y": "15",
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "123",
+ "y": "8",
"properties": {
- "text": "Web Security Knowledge",
- "size": "17"
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -7519,28 +6308,17 @@
}
},
{
- "ID": "14205",
- "typeID": "TextArea",
- "zOrder": "151",
- "w": "456",
- "h": "171",
- "measuredW": "200",
- "measuredH": "140",
- "x": "854",
- "y": "1935"
- },
- {
- "ID": "14206",
+ "ID": "14254",
"typeID": "__group__",
- "zOrder": "152",
- "measuredW": "163",
- "measuredH": "42",
- "w": "163",
- "h": "42",
- "x": "869",
- "y": "1999",
+ "zOrder": "179",
+ "measuredW": "144",
+ "measuredH": "40",
+ "w": "144",
+ "h": "40",
+ "x": "689",
+ "y": "1194",
"properties": {
- "controlName": "106-web-security-knowledge:cors"
+ "controlName": "102-learn-a-language:java"
},
"children": {
"controls": {
@@ -7549,11 +6327,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "163",
- "h": "42",
+ "w": "136",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
+ "x": "8",
"y": "0",
"properties": {
"color": "16770457"
@@ -7563,107 +6341,62 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "48",
+ "w": "38",
+ "measuredW": "36",
"measuredH": "25",
- "x": "58",
- "y": "9",
+ "x": "57",
+ "y": "7",
"properties": {
- "text": "CORS",
- "size": "17"
+ "size": "17",
+ "text": "Java"
}
- }
- ]
- }
- }
- },
- {
- "ID": "14207",
- "typeID": "__group__",
- "zOrder": "153",
- "measuredW": "166",
- "measuredH": "43",
- "w": "166",
- "h": "43",
- "x": "868",
- "y": "1949",
- "properties": {
- "controlName": "105-web-security-knowledge:https"
- },
- "children": {
- "controls": {
- "control": [
+ },
{
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "166",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "16770457"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "54",
- "measuredH": "25",
- "x": "56",
- "y": "10",
- "properties": {
- "text": "HTTPS",
- "size": "17"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14208",
- "typeID": "__group__",
- "zOrder": "154",
- "measuredW": "257",
- "measuredH": "44",
- "w": "257",
- "h": "44",
- "x": "1039",
- "y": "1949",
- "properties": {
- "controlName": "105-web-security-knowledge:content-security-policy"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "257",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "16770457"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "175",
- "measuredH": "25",
- "x": "41",
- "y": "10",
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
"properties": {
- "text": "Content Security Policy",
- "size": "17"
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -7671,17 +6404,17 @@
}
},
{
- "ID": "14209",
+ "ID": "14255",
"typeID": "__group__",
- "zOrder": "155",
- "measuredW": "427",
- "measuredH": "43",
- "w": "427",
- "h": "43",
- "x": "868",
- "y": "2047",
+ "zOrder": "180",
+ "measuredW": "144",
+ "measuredH": "40",
+ "w": "144",
+ "h": "40",
+ "x": "687",
+ "y": "1029",
"properties": {
- "controlName": "108-web-security-knowledge:owasp"
+ "controlName": "101-learn-a-language:rust"
},
"children": {
"controls": {
@@ -7690,11 +6423,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "427",
- "h": "43",
+ "w": "136",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
+ "x": "8",
"y": "0",
"properties": {
"color": "16770457"
@@ -7704,13 +6437,62 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "169",
+ "w": "39",
+ "measuredW": "36",
"measuredH": "25",
- "x": "129",
- "y": "10",
+ "x": "56",
+ "y": "7",
"properties": {
- "text": "OWASP Security Risks",
- "size": "17"
+ "size": "17",
+ "text": "Rust"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -7718,28 +6500,17 @@
}
},
{
- "ID": "14210",
- "typeID": "TextArea",
- "zOrder": "156",
- "w": "270",
- "h": "185",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1038",
- "y": "1739"
- },
- {
- "ID": "14211",
+ "ID": "14256",
"typeID": "__group__",
- "zOrder": "157",
- "measuredW": "239",
+ "zOrder": "181",
+ "measuredW": "144",
"measuredH": "40",
- "w": "239",
+ "w": "144",
"h": "40",
- "x": "1053",
- "y": "1747",
+ "x": "689",
+ "y": "1240",
"properties": {
- "controlName": "100-web-security-knowledge:md5"
+ "controlName": "103-learn-a-language:csharp"
},
"children": {
"controls": {
@@ -7748,11 +6519,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "239",
+ "w": "136",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
+ "x": "8",
"y": "0",
"properties": {
"color": "16770457"
@@ -7762,14 +6533,62 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "203",
- "measuredW": "197",
+ "w": "27",
+ "measuredW": "24",
"measuredH": "25",
- "x": "20",
- "y": "8",
+ "x": "62",
+ "y": "7",
"properties": {
"size": "17",
- "text": "MD5 and why not to use it"
+ "text": "C#"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -7777,17 +6596,17 @@
}
},
{
- "ID": "14212",
+ "ID": "14257",
"typeID": "__group__",
- "zOrder": "158",
- "measuredW": "237",
- "measuredH": "40",
- "w": "237",
- "h": "40",
- "x": "1054",
- "y": "1792",
+ "zOrder": "182",
+ "measuredW": "302",
+ "measuredH": "50",
+ "w": "302",
+ "h": "50",
+ "x": "696",
+ "y": "1103",
"properties": {
- "controlName": "101-web-security-knowledge:sha-family"
+ "controlName": "103-learn-a-language"
},
"children": {
"controls": {
@@ -7796,28 +6615,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "237",
- "h": "40",
+ "w": "302",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "93",
- "measuredW": "87",
+ "measuredW": "141",
"measuredH": "25",
- "x": "72",
- "y": "7",
+ "x": "80",
+ "y": "13",
"properties": {
- "size": "17",
- "text": "SHA Family"
+ "text": "Learn a Language",
+ "size": "17"
}
}
]
@@ -7825,17 +6643,17 @@
}
},
{
- "ID": "14213",
+ "ID": "14258",
"typeID": "__group__",
- "zOrder": "159",
- "measuredW": "119",
+ "zOrder": "183",
+ "measuredW": "144",
"measuredH": "40",
- "w": "119",
+ "w": "144",
"h": "40",
- "x": "1055",
- "y": "1838",
+ "x": "689",
+ "y": "1286",
"properties": {
- "controlName": "104-web-security-knowledge:scrypt"
+ "controlName": "103-learn-a-language:php"
},
"children": {
"controls": {
@@ -7844,11 +6662,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "119",
+ "w": "136",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
+ "x": "8",
"y": "0",
"properties": {
"color": "16770457"
@@ -7858,14 +6676,62 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "62",
- "measuredW": "47",
+ "w": "34",
+ "measuredW": "34",
"measuredH": "25",
- "x": "38",
+ "x": "59",
"y": "7",
"properties": {
"size": "17",
- "text": "scrypt"
+ "text": "PHP"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -7873,17 +6739,17 @@
}
},
{
- "ID": "14214",
+ "ID": "14259",
"typeID": "__group__",
- "zOrder": "160",
- "measuredW": "111",
+ "zOrder": "184",
+ "measuredW": "146",
"measuredH": "40",
- "w": "111",
+ "w": "146",
"h": "40",
- "x": "1181",
- "y": "1838",
+ "x": "863",
+ "y": "1194",
"properties": {
- "controlName": "102-web-security-knowledge:bcrypt"
+ "controlName": "105-learn-a-language:javascript"
},
"children": {
"controls": {
@@ -7892,7 +6758,7 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "111",
+ "w": "136",
"h": "40",
"measuredW": "200",
"measuredH": "140",
@@ -7906,74 +6772,24 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "53",
- "measuredW": "48",
+ "w": "85",
+ "measuredW": "81",
"measuredH": "25",
- "x": "35",
- "y": "7",
+ "x": "27",
+ "y": "8",
"properties": {
"size": "17",
- "text": "bcrypt"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14215",
- "typeID": "Label",
- "zOrder": "161",
- "w": "155",
- "measuredW": "149",
- "measuredH": "25",
- "x": "1095",
- "y": "1886",
- "properties": {
- "size": "17",
- "text": "Hashing Algorithms"
- }
- },
- {
- "ID": "14216",
- "typeID": "__group__",
- "zOrder": "162",
- "measuredW": "229",
- "measuredH": "38",
- "w": "229",
- "h": "38",
- "x": "191",
- "y": "1500",
- "properties": {
- "controlName": "100-apis:authentication:cookie-based"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextInput",
- "zOrder": "0",
- "w": "223",
- "measuredW": "129",
- "measuredH": "32",
- "x": "6",
- "y": "6",
- "properties": {
- "align": "center",
- "color": "16770457",
- "size": "18",
- "text": "Cookie Based"
+ "text": "JavaScript"
}
},
{
- "ID": "1",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "1",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "122",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -7983,15 +6799,15 @@
}
},
{
- "ID": "2",
+ "ID": "4",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "122",
+ "y": "7",
"properties": {
- "color": "10066329",
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -8003,17 +6819,17 @@
}
},
{
- "ID": "14217",
+ "ID": "14260",
"typeID": "__group__",
- "zOrder": "163",
- "measuredW": "258",
- "measuredH": "43",
- "w": "258",
- "h": "43",
- "x": "1038",
- "y": "1999",
+ "zOrder": "185",
+ "measuredW": "146",
+ "measuredH": "40",
+ "w": "146",
+ "h": "40",
+ "x": "863",
+ "y": "1240",
"properties": {
- "controlName": "107-web-security-knowledge:ssl-tls"
+ "controlName": "106-learn-a-language:python"
},
"children": {
"controls": {
@@ -8022,8 +6838,8 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "258",
- "h": "43",
+ "w": "136",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
@@ -8036,60 +6852,62 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "69",
+ "w": "56",
+ "measuredW": "53",
"measuredH": "25",
- "x": "94",
- "y": "9",
+ "x": "40",
+ "y": "8",
"properties": {
- "text": "SSL/TLS",
- "size": "17"
+ "size": "17",
+ "text": "Python"
}
- }
- ]
- }
- }
- },
- {
- "ID": "14218",
- "typeID": "__group__",
- "zOrder": "164",
- "measuredW": "159",
- "measuredH": "50",
- "w": "159",
- "h": "50",
- "x": "547",
- "y": "1965",
- "properties": {
- "controlName": "112-testing"
- },
- "children": {
- "controls": {
- "control": [
+ },
{
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "159",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "122",
+ "y": "8",
"properties": {
- "color": "16776960"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "56",
- "measuredH": "25",
- "x": "52",
- "y": "13",
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "122",
+ "y": "8",
"properties": {
- "text": "Testing",
- "size": "17"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "122",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -8097,17 +6915,17 @@
}
},
{
- "ID": "14219",
+ "ID": "14261",
"typeID": "__group__",
- "zOrder": "165",
- "measuredW": "199",
- "measuredH": "49",
- "w": "199",
- "h": "49",
- "x": "292",
- "y": "1925",
+ "zOrder": "186",
+ "measuredW": "146",
+ "measuredH": "40",
+ "w": "146",
+ "h": "40",
+ "x": "863",
+ "y": "1286",
"properties": {
- "controlName": "100-testing:integration-testing"
+ "controlName": "107-learn-a-language:ruby"
},
"children": {
"controls": {
@@ -8116,12 +6934,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "192",
+ "w": "136",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "9",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -8130,14 +6948,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "150",
- "measuredW": "144",
+ "w": "42",
+ "measuredW": "39",
"measuredH": "25",
- "x": "28",
- "y": "17",
+ "x": "47",
+ "y": "8",
"properties": {
"size": "17",
- "text": "Integration Testing"
+ "text": "Ruby"
}
},
{
@@ -8146,8 +6964,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "122",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -8162,10 +6980,26 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "122",
+ "y": "8",
"properties": {
- "color": "10027263",
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "122",
+ "y": "8",
+ "properties": {
+ "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -8177,17 +7011,78 @@
}
},
{
- "ID": "14220",
+ "ID": "14268",
+ "typeID": "Arrow",
+ "zOrder": "187",
+ "w": "137",
+ "h": "41",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "971",
+ "y": "930",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 136.9620797397572,
+ "y": 0.45530148349780575
+ },
+ "p1": {
+ "x": 0.4511254056978406,
+ "y": -0.06453327776431561
+ },
+ "p2": {
+ "x": 0,
+ "y": 41
+ }
+ }
+ },
+ {
+ "ID": "14269",
+ "typeID": "Arrow",
+ "zOrder": "188",
+ "w": "151",
+ "h": "6",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "967",
+ "y": "918",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 151.29875220380154,
+ "y": -0.4655390965576771
+ },
+ "p1": {
+ "x": 0.46527893422148225,
+ "y": -0.0013322231473772643
+ },
+ "p2": {
+ "x": 0.12491741715246008,
+ "y": 5.286965251475522
+ }
+ }
+ },
+ {
+ "ID": "14271",
"typeID": "__group__",
- "zOrder": "166",
- "measuredW": "199",
- "measuredH": "44",
- "w": "199",
- "h": "44",
- "x": "292",
- "y": "1974",
+ "zOrder": "189",
+ "measuredW": "272",
+ "measuredH": "50",
+ "w": "272",
+ "h": "50",
+ "x": "1090",
+ "y": "897",
"properties": {
- "controlName": "101-testing:unit-testing"
+ "controlName": "100-internet"
},
"children": {
"controls": {
@@ -8196,60 +7091,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "193",
- "h": "37",
+ "w": "272",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "7",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "99",
- "measuredW": "91",
+ "measuredW": "62",
"measuredH": "25",
- "x": "53",
- "y": "14",
- "properties": {
- "size": "17",
- "text": "Unit Testing"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "105",
+ "y": "13",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Internet",
+ "size": "17"
}
}
]
@@ -8257,17 +7119,17 @@
}
},
{
- "ID": "14221",
+ "ID": "14272",
"typeID": "__group__",
- "zOrder": "167",
- "measuredW": "199",
- "measuredH": "43",
- "w": "199",
- "h": "43",
- "x": "292",
- "y": "2016",
+ "zOrder": "190",
+ "measuredW": "306",
+ "measuredH": "44",
+ "w": "306",
+ "h": "44",
+ "x": "687",
+ "y": "856",
"properties": {
- "controlName": "102-testing:functional-testing"
+ "controlName": "100-internet:how-does-the-internet-work"
},
"children": {
"controls": {
@@ -8276,12 +7138,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "193",
- "h": "37",
+ "w": "299",
+ "h": "44",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "6",
+ "x": "7",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -8290,14 +7152,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "151",
- "measuredW": "140",
+ "w": "223",
+ "measuredW": "219",
"measuredH": "25",
- "x": "27",
- "y": "13",
+ "x": "45",
+ "y": "9",
"properties": {
"size": "17",
- "text": "Functional Testing"
+ "text": "How does the internet work?"
}
},
{
@@ -8307,7 +7169,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "9",
"properties": {
"color": "16777215",
"icon": {
@@ -8323,7 +7185,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "9",
"properties": {
"color": "10027263",
"icon": {
@@ -8337,755 +7199,782 @@
}
},
{
- "ID": "14222",
- "typeID": "Arrow",
- "zOrder": "168",
- "w": "42",
- "h": "152",
- "measuredW": "150",
- "measuredH": "100",
- "x": "764",
- "y": "533",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.4470340174304187,
- "y": 0.25307843688501525
- },
- "p2": {
- "x": 9,
- "y": 151.5
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14223",
- "typeID": "Arrow",
- "zOrder": "169",
- "w": "26",
- "h": "112",
- "measuredW": "150",
- "measuredH": "100",
- "x": "692",
- "y": "337",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 26,
- "y": 0
- },
- "p1": {
- "x": 0.540933899332929,
- "y": -0.1946634323832626
- },
- "p2": {
- "x": 18,
- "y": 112
- },
- "rightArrow": "false"
- }
- },
- {
- "ID": "14224",
- "typeID": "Label",
- "zOrder": "170",
- "measuredW": "128",
- "measuredH": "40",
- "x": "669",
- "y": "283",
- "properties": {
- "size": "32",
- "text": "Backend"
- }
- },
- {
- "ID": "14225",
- "typeID": "Arrow",
- "zOrder": "171",
- "w": "19",
- "h": "80",
- "measuredW": "150",
- "measuredH": "100",
- "x": "761",
- "y": "196",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 17,
- "y": 0
- },
- "p1": {
- "x": 0.4835868694955965,
- "y": 0.10168134507606086
- },
- "p2": {
- "x": 0,
- "y": 79
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14226",
- "typeID": "Canvas",
- "zOrder": "172",
- "w": "350",
- "h": "141",
- "measuredW": "100",
- "measuredH": "70",
- "x": "969",
- "y": "189"
- },
- {
- "ID": "14227",
- "typeID": "Label",
- "zOrder": "173",
- "measuredW": "314",
- "measuredH": "25",
- "x": "983",
- "y": "206",
- "properties": {
- "size": "17",
- "text": "Find the detailed version of this roadmap"
- }
- },
- {
- "ID": "14228",
- "typeID": "Label",
- "zOrder": "174",
- "measuredW": "319",
- "measuredH": "25",
- "x": "983",
- "y": "234",
- "properties": {
- "size": "17",
- "text": "along with resources and other roadmaps"
- }
- },
- {
- "ID": "14229",
+ "ID": "14273",
"typeID": "__group__",
- "zOrder": "175",
- "measuredW": "320",
- "measuredH": "45",
- "w": "320",
- "h": "45",
- "x": "984",
- "y": "270",
+ "zOrder": "191",
+ "measuredW": "307",
+ "measuredH": "40",
+ "w": "307",
+ "h": "40",
+ "x": "686",
+ "y": "905",
"properties": {
- "controlName": "ext_link:roadmap.sh"
+ "controlName": "101-internet:what-is-http"
},
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "Canvas",
+ "typeID": "TextArea",
"zOrder": "0",
- "w": "320",
- "h": "45",
- "measuredW": "100",
- "measuredH": "70",
- "x": "0",
+ "w": "299",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
"y": "0",
"properties": {
- "borderColor": "4273622",
- "color": "4273622"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "105",
- "measuredH": "28",
- "x": "141",
+ "w": "119",
+ "measuredW": "113",
+ "measuredH": "25",
+ "x": "98",
"y": "8",
"properties": {
- "color": "16777215",
- "size": "20",
- "text": "roadmap.sh"
+ "size": "17",
+ "text": "What is HTTP?"
}
},
{
"ID": "2",
- "typeID": "Label",
+ "typeID": "Icon",
"zOrder": "2",
- "measuredW": "35",
- "measuredH": "28",
- "x": "76",
- "y": "8",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "6",
"properties": {
"color": "16777215",
- "size": "20",
- "text": "http"
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
"ID": "3",
- "typeID": "Label",
+ "typeID": "Icon",
"zOrder": "3",
- "measuredW": "5",
- "measuredH": "28",
- "x": "113",
- "y": "8",
- "properties": {
- "bold": "true",
- "color": "16777215",
- "size": "20",
- "text": ":"
- }
- },
- {
- "ID": "4",
- "typeID": "Label",
- "zOrder": "4",
- "measuredW": "10",
- "measuredH": "28",
- "x": "120",
- "y": "9",
- "properties": {
- "color": "16777215",
- "size": "20",
- "text": "/"
- }
- },
- {
- "ID": "5",
- "typeID": "Label",
- "zOrder": "5",
- "measuredW": "10",
- "measuredH": "28",
- "x": "128",
- "y": "9",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "6",
"properties": {
- "color": "16777215",
- "size": "20",
- "text": "/"
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14230",
- "typeID": "Canvas",
- "zOrder": "176",
- "w": "408",
- "h": "162",
- "measuredW": "100",
- "measuredH": "70",
- "x": "157",
- "y": "179"
- },
- {
- "ID": "14231",
- "typeID": "Icon",
- "zOrder": "177",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "200",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14232",
- "typeID": "Icon",
- "zOrder": "178",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "200",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14233",
- "typeID": "Label",
- "zOrder": "179",
- "measuredW": "269",
- "measuredH": "24",
- "x": "216",
- "y": "200",
- "properties": {
- "size": "16",
- "text": "Personal Recommendation / Opinion"
- }
- },
- {
- "ID": "14234",
- "typeID": "Label",
- "zOrder": "180",
- "measuredW": "159",
- "measuredH": "24",
- "x": "216",
- "y": "297",
- "properties": {
- "size": "16",
- "text": "I wouldn't recommend"
- }
- },
- {
- "ID": "14235",
- "typeID": "Icon",
- "zOrder": "181",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "297",
- "properties": {
- "color": "10066329",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14236",
- "typeID": "Label",
- "zOrder": "182",
- "w": "324",
- "measuredW": "315",
- "measuredH": "24",
- "x": "217",
- "y": "265",
- "properties": {
- "size": "16",
- "text": "Order in roadmap not strict (Learn anytime)"
- }
- },
- {
- "ID": "14237",
- "typeID": "Icon",
- "zOrder": "183",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "265",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14238",
- "typeID": "Icon",
- "zOrder": "184",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "265",
- "properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14239",
- "typeID": "Label",
- "zOrder": "185",
- "measuredW": "272",
- "measuredH": "24",
- "x": "216",
- "y": "233",
- "properties": {
- "size": "16",
- "text": "Alternative Option - Pick this or purple"
- }
- },
- {
- "ID": "14240",
- "typeID": "Icon",
- "zOrder": "186",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "232",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14241",
- "typeID": "Icon",
- "zOrder": "187",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "232",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "14242",
- "typeID": "Icon",
- "zOrder": "188",
- "measuredW": "24",
- "measuredH": "24",
- "x": "180",
- "y": "232",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
}
}
},
{
- "ID": "14243",
- "typeID": "Arrow",
- "zOrder": "189",
- "w": "41",
- "h": "264",
- "measuredW": "150",
- "measuredH": "100",
- "x": "738",
- "y": "695",
+ "ID": "14274",
+ "typeID": "__group__",
+ "zOrder": "192",
+ "measuredW": "307",
+ "measuredH": "40",
+ "w": "307",
+ "h": "40",
+ "x": "686",
+ "y": "950",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 28,
- "y": -0.5
- },
- "p1": {
- "x": 0.4709081800615472,
- "y": -0.12924926644242468
- },
- "p2": {
- "x": 41,
- "y": 263.5
- },
- "rightArrow": "false"
+ "controlName": "102-internet:browsers-and-how-they-work"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "299",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "230",
+ "measuredW": "225",
+ "measuredH": "25",
+ "x": "42",
+ "y": "8",
+ "properties": {
+ "size": "17",
+ "text": "Browsers and how they work?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "6",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "6",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14244",
- "typeID": "Arrow",
- "zOrder": "190",
- "w": "87",
- "h": "151",
- "measuredW": "150",
- "measuredH": "100",
- "x": "707",
- "y": "971",
+ "ID": "14275",
+ "typeID": "__group__",
+ "zOrder": "193",
+ "measuredW": "290",
+ "measuredH": "49",
+ "w": "290",
+ "h": "49",
+ "x": "1483",
+ "y": "846",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 72,
- "y": 0
- },
- "p1": {
- "x": 0.4164731105949616,
- "y": 0.25156333750223336
- },
- "p2": {
- "x": 0,
- "y": 151
- },
- "rightArrow": "false"
+ "controlName": "103-internet:dns-and-how-it-works"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "280",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "9",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "179",
+ "measuredW": "175",
+ "measuredH": "25",
+ "x": "51",
+ "y": "17",
+ "properties": {
+ "size": "17",
+ "text": "DNS and how it works?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "266",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "266",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14245",
- "typeID": "Arrow",
- "zOrder": "191",
- "w": "43",
- "h": "82",
- "measuredW": "150",
- "measuredH": "100",
- "x": "850",
- "y": "876",
+ "ID": "14276",
+ "typeID": "__group__",
+ "zOrder": "194",
+ "measuredW": "290",
+ "measuredH": "45",
+ "w": "290",
+ "h": "45",
+ "x": "1482",
+ "y": "896",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": -0.5,
- "y": 82
- },
- "p1": {
- "x": 0.5274187832250412,
- "y": -0.12252805670406892
- },
- "p2": {
- "x": 42.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "104-internet:what-is-domain-name"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "280",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "5",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "179",
+ "measuredW": "180",
+ "measuredH": "25",
+ "x": "51",
+ "y": "13",
+ "properties": {
+ "size": "17",
+ "text": "What is Domain Name?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "266",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "266",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14246",
- "typeID": "Arrow",
- "zOrder": "192",
- "w": "48",
- "h": "73",
- "measuredW": "150",
- "measuredH": "100",
- "x": "632",
- "y": "886",
+ "ID": "14277",
+ "typeID": "__group__",
+ "zOrder": "195",
+ "measuredW": "289",
+ "measuredH": "46",
+ "w": "289",
+ "h": "46",
+ "x": "1483",
+ "y": "941",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "leftArrow": "false",
- "p0": {
- "x": 48,
- "y": 72.5
- },
- "p1": {
- "x": 0.5228612603170445,
- "y": 0.14935150006550507
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "105-internet:what-is-hosting"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "280",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "6",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "133",
+ "measuredW": "126",
+ "measuredH": "25",
+ "x": "74",
+ "y": "14",
+ "properties": {
+ "size": "17",
+ "text": "What is hosting?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "265",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "265",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14247",
- "typeID": "Arrow",
- "zOrder": "193",
- "w": "118",
- "h": "74",
- "measuredW": "150",
- "measuredH": "100",
- "x": "477",
- "y": "982",
+ "ID": "14287",
+ "typeID": "__group__",
+ "zOrder": "196",
+ "measuredW": "267",
+ "measuredH": "43",
+ "w": "267",
+ "h": "43",
+ "x": "1431",
+ "y": "1656",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 118,
- "y": -0.5
- },
- "p1": {
- "x": 0.5873541588257404,
- "y": 0.06127211140383051
- },
- "p2": {
- "x": 0,
- "y": 73.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "105-os-general-knowledge:memory-management"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "267",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "170",
+ "measuredW": "169",
+ "measuredH": "25",
+ "x": "50",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Memory Management"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14248",
- "typeID": "Arrow",
- "zOrder": "194",
- "w": "91",
- "h": "61",
- "measuredW": "150",
- "measuredH": "100",
- "x": "960",
- "y": "980",
+ "ID": "14288",
+ "typeID": "__group__",
+ "zOrder": "197",
+ "measuredW": "268",
+ "measuredH": "43",
+ "w": "268",
+ "h": "43",
+ "x": "1431",
+ "y": "1705",
"properties": {
- "color": "2848996",
- "leftArrow": "false",
- "p0": {
- "x": 91,
- "y": 60
- },
- "p1": {
- "x": 0.486318838754369,
- "y": 0.01448408325199147
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "106-os-general-knowledge:interprocess-communication"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "268",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "224",
+ "measuredW": "222",
+ "measuredH": "25",
+ "x": "23",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Interprocess Communication"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14249",
- "typeID": "Arrow",
- "zOrder": "195",
- "w": "93",
- "h": "24",
- "measuredW": "150",
- "measuredH": "100",
- "x": "956",
- "y": "969",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 93,
- "y": 23
- },
- "p1": {
- "x": 0.4798692360633174,
- "y": -0.0049896765313145654
- },
- "p2": {
- "x": 0,
- "y": -0.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "ID": "14289",
+ "typeID": "__group__",
+ "zOrder": "198",
+ "measuredW": "268",
+ "measuredH": "43",
+ "w": "268",
+ "h": "43",
+ "x": "1431",
+ "y": "1753",
+ "properties": {
+ "controlName": "107-os-general-knowledge:io-management"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "268",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "135",
+ "measuredW": "133",
+ "measuredH": "25",
+ "x": "66",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "I/O Management"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14250",
- "typeID": "Arrow",
- "zOrder": "196",
- "w": "115",
- "h": "18",
- "measuredW": "150",
- "measuredH": "100",
- "x": "951",
- "y": "942",
+ "ID": "14290",
+ "typeID": "__group__",
+ "zOrder": "199",
+ "measuredW": "318",
+ "measuredH": "71",
+ "w": "318",
+ "h": "71",
+ "x": "1415",
+ "y": "1309",
"properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 115,
- "y": 0
- },
- "p1": {
- "x": 0.4495149461236092,
- "y": -0.004886187015480865
- },
- "p2": {
- "x": 0,
- "y": 17.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "108-os-general-knowledge:posix-basics"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "306",
+ "h": "71",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "105",
+ "measuredH": "25",
+ "x": "100",
+ "y": "12",
+ "properties": {
+ "text": "POSIX Basics",
+ "size": "17"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "w": "180",
+ "measuredW": "172",
+ "measuredH": "23",
+ "x": "63",
+ "y": "36",
+ "properties": {
+ "size": "15",
+ "text": "stdin, stdout, stderr, pipes"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "294",
+ "y": "21",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "294",
+ "y": "21",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14251",
- "typeID": "Arrow",
- "zOrder": "197",
- "w": "131",
- "h": "45",
- "measuredW": "150",
- "measuredH": "100",
- "x": "467",
- "y": "966",
+ "ID": "14291",
+ "typeID": "__group__",
+ "zOrder": "200",
+ "measuredW": "268",
+ "measuredH": "43",
+ "w": "268",
+ "h": "43",
+ "x": "1431",
+ "y": "1802",
"properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 131,
- "y": -0.5
- },
- "p1": {
- "x": 0.5873541588257396,
- "y": 0.061272111403828454
- },
- "p2": {
- "x": 0,
- "y": 44.5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "109-os-general-knowledge:basic-networking-concepts"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "268",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "218",
+ "measuredW": "213",
+ "measuredH": "25",
+ "x": "25",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Basic Networking Concepts"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14252",
- "typeID": "Arrow",
- "zOrder": "198",
- "w": "141",
- "h": "5",
- "measuredW": "150",
- "measuredH": "100",
- "x": "478",
- "y": "957",
+ "ID": "14298",
+ "typeID": "__group__",
+ "zOrder": "201",
+ "measuredW": "315",
+ "measuredH": "43",
+ "w": "315",
+ "h": "43",
+ "x": "1416",
+ "y": "1260",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 141,
- "y": 0
- },
- "p1": {
- "x": 0.5,
- "y": 0
- },
- "p2": {
- "x": 0,
- "y": 5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "100-os-general-knowledge:terminal-usage"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "303",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "123",
+ "measuredW": "121",
+ "measuredH": "25",
+ "x": "90",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Terminal Usage"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "291",
+ "y": "7",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "291",
+ "y": "7",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14253",
+ "ID": "14299",
"typeID": "__group__",
- "zOrder": "199",
- "measuredW": "144",
- "measuredH": "48",
- "w": "144",
- "h": "48",
- "x": "812",
- "y": "839",
+ "zOrder": "202",
+ "measuredW": "317",
+ "measuredH": "101",
+ "w": "317",
+ "h": "101",
+ "x": "1414",
+ "y": "1483",
"properties": {
- "controlName": "100-learn-a-language:go"
+ "controlName": "104-os-general-knowledge:basic-terminal-commands"
},
"children": {
"controls": {
@@ -9094,12 +7983,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "305",
+ "h": "101",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "8",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -9108,24 +7997,49 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "26",
- "measuredW": "23",
+ "measuredW": "217",
+ "measuredH": "26",
+ "x": "44",
+ "y": "12",
+ "properties": {
+ "text": "Basic Terminal Commands",
+ "size": "18"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "223",
"measuredH": "25",
- "x": "63",
- "y": "15",
+ "x": "41",
+ "y": "38",
+ "properties": {
+ "text": "grep, awk, sed, lsof, curl, wget",
+ "size": "17"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Label",
+ "zOrder": "3",
+ "measuredW": "236",
+ "measuredH": "25",
+ "x": "35",
+ "y": "64",
"properties": {
"size": "17",
- "text": "Go"
+ "text": "tail, head, less, find, ssh, kill, dig"
}
},
{
- "ID": "2",
+ "ID": "4",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "4",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "293",
+ "y": "51",
"properties": {
"color": "16777215",
"icon": {
@@ -9135,13 +8049,29 @@
}
},
{
- "ID": "3",
+ "ID": "5",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "5",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "293",
+ "y": "51",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "Icon",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "292",
+ "y": "26",
"properties": {
"color": "16777215",
"icon": {
@@ -9151,15 +8081,15 @@
}
},
{
- "ID": "4",
+ "ID": "7",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "7",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "292",
+ "y": "26",
"properties": {
- "color": "3700253",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -9171,17 +8101,161 @@
}
},
{
- "ID": "14254",
+ "ID": "14300",
+ "typeID": "__group__",
+ "zOrder": "203",
+ "measuredW": "272",
+ "measuredH": "43",
+ "w": "272",
+ "h": "43",
+ "x": "1429",
+ "y": "1899",
+ "properties": {
+ "controlName": "102-os-general-knowledge:process-management"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "272",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "172",
+ "measuredW": "170",
+ "measuredH": "25",
+ "x": "53",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Process Management"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14301",
+ "typeID": "__group__",
+ "zOrder": "204",
+ "measuredW": "269",
+ "measuredH": "43",
+ "w": "269",
+ "h": "43",
+ "x": "1430",
+ "y": "1850",
+ "properties": {
+ "controlName": "103-os-general-knowledge:threads-and-concurrency"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "269",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "202",
+ "measuredW": "200",
+ "measuredH": "25",
+ "x": "34",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Threads and Concurrency"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14302",
+ "typeID": "__group__",
+ "zOrder": "205",
+ "measuredW": "268",
+ "measuredH": "43",
+ "w": "268",
+ "h": "43",
+ "x": "1431",
+ "y": "1608",
+ "properties": {
+ "controlName": "101-os-general-knowledge:how-oss-work-in-general"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "268",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "197",
+ "measuredW": "195",
+ "measuredH": "25",
+ "x": "35",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "How OSs work in General"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14306",
"typeID": "__group__",
- "zOrder": "200",
- "measuredW": "144",
- "measuredH": "47",
- "w": "144",
- "h": "47",
- "x": "341",
- "y": "934",
+ "zOrder": "206",
+ "measuredW": "108",
+ "measuredH": "50",
+ "w": "108",
+ "h": "50",
+ "x": "1374",
+ "y": "1026",
"properties": {
- "controlName": "102-learn-a-language:java"
+ "controlName": "100-version-control-systems:git"
},
"children": {
"controls": {
@@ -9190,28 +8264,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "97",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "7",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "38",
- "measuredW": "36",
+ "measuredW": "22",
"measuredH": "25",
- "x": "57",
- "y": "15",
+ "x": "36",
+ "y": "12",
"properties": {
"size": "17",
- "text": "Java"
+ "text": "Git"
}
},
{
@@ -9220,8 +8293,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "84",
+ "y": "13",
"properties": {
"color": "16777215",
"icon": {
@@ -9236,26 +8309,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "84",
+ "y": "13",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -9267,17 +8324,17 @@
}
},
{
- "ID": "14255",
+ "ID": "14307",
"typeID": "__group__",
- "zOrder": "201",
- "measuredW": "144",
- "measuredH": "49",
- "w": "144",
- "h": "49",
- "x": "554",
- "y": "842",
+ "zOrder": "207",
+ "measuredW": "138",
+ "measuredH": "57",
+ "w": "138",
+ "h": "57",
+ "x": "1583",
+ "y": "1046",
"properties": {
- "controlName": "101-learn-a-language:rust"
+ "controlName": "100-repo-hosting-services:github"
},
"children": {
"controls": {
@@ -9286,12 +8343,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "131",
+ "h": "49",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "9",
+ "x": "0",
+ "y": "8",
"properties": {
"color": "16770457"
}
@@ -9300,14 +8357,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "39",
- "measuredW": "36",
+ "measuredW": "54",
"measuredH": "25",
- "x": "56",
- "y": "17",
+ "x": "39",
+ "y": "21",
"properties": {
- "size": "17",
- "text": "Rust"
+ "text": "GitHub",
+ "size": "17"
}
},
{
@@ -9316,7 +8372,7 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
+ "x": "114",
"y": "0",
"properties": {
"color": "16777215",
@@ -9332,26 +8388,10 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
+ "x": "114",
"y": "0",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -9363,17 +8403,17 @@
}
},
{
- "ID": "14256",
+ "ID": "14308",
"typeID": "__group__",
- "zOrder": "202",
- "measuredW": "144",
- "measuredH": "46",
- "w": "144",
- "h": "46",
- "x": "341",
- "y": "984",
+ "zOrder": "208",
+ "measuredW": "286",
+ "measuredH": "50",
+ "w": "286",
+ "h": "50",
+ "x": "1185",
+ "y": "1158",
"properties": {
- "controlName": "103-learn-a-language:csharp"
+ "controlName": "105-repo-hosting-services"
},
"children": {
"controls": {
@@ -9382,76 +8422,74 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "286",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "6",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "27",
- "measuredW": "24",
+ "measuredW": "172",
"measuredH": "25",
- "x": "62",
- "y": "14",
- "properties": {
- "size": "17",
- "text": "C#"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "57",
+ "y": "12",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "text": "Repo hosting services",
+ "size": "17"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14309",
+ "typeID": "__group__",
+ "zOrder": "209",
+ "measuredW": "286",
+ "measuredH": "50",
+ "w": "286",
+ "h": "50",
+ "x": "1185",
+ "y": "1103",
+ "properties": {
+ "controlName": "104-version-control-systems"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "286",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16776960"
}
},
{
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "186",
+ "measuredH": "25",
+ "x": "50",
+ "y": "12",
"properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Version Control Systems",
+ "size": "17"
}
}
]
@@ -9459,17 +8497,17 @@
}
},
{
- "ID": "14257",
+ "ID": "14310",
"typeID": "__group__",
- "zOrder": "203",
- "measuredW": "380",
- "measuredH": "98",
- "w": "380",
- "h": "98",
- "x": "586",
- "y": "940",
+ "zOrder": "210",
+ "measuredW": "140",
+ "measuredH": "53",
+ "w": "140",
+ "h": "53",
+ "x": "1583",
+ "y": "1157",
"properties": {
- "controlName": "103-learn-a-language"
+ "controlName": "102-repo-hosting-services:bitbucket"
},
"children": {
"controls": {
@@ -9478,55 +8516,76 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "380",
- "h": "98",
+ "w": "131",
+ "h": "49",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "0",
+ "y": "4",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "141",
+ "measuredW": "73",
"measuredH": "25",
- "x": "119",
- "y": "13",
+ "x": "29",
+ "y": "16",
"properties": {
- "text": "Learn a Language",
+ "color": "3355443",
+ "text": "Bitbucket",
"size": "17"
}
},
{
- "ID": "2",
- "typeID": "Label",
+ "ID": "3",
+ "typeID": "Icon",
"zOrder": "2",
- "w": "347",
- "measuredW": "343",
- "measuredH": "23",
- "x": "16",
- "y": "41",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "116",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "116",
+ "y": "0",
"properties": {
- "size": "15",
- "text": "Make sure to learn its quirks. Core details about its"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
- "ID": "3",
- "typeID": "Label",
- "zOrder": "3",
- "w": "306",
- "measuredW": "300",
- "measuredH": "23",
- "x": "37",
- "y": "64",
+ "ID": "5",
+ "typeID": "Icon",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "116",
+ "y": "0",
"properties": {
- "size": "15",
- "text": "runtime e.g. concurrency, memory model etc."
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -9534,17 +8593,17 @@
}
},
{
- "ID": "14258",
+ "ID": "14311",
"typeID": "__group__",
- "zOrder": "204",
- "measuredW": "144",
- "measuredH": "44",
- "w": "144",
- "h": "44",
- "x": "341",
- "y": "1033",
+ "zOrder": "211",
+ "measuredW": "140",
+ "measuredH": "54",
+ "w": "140",
+ "h": "54",
+ "x": "1583",
+ "y": "1102",
"properties": {
- "controlName": "103-learn-a-language:php"
+ "controlName": "101-repo-hosting-services:gitlab"
},
"children": {
"controls": {
@@ -9553,12 +8612,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "131",
+ "h": "49",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "4",
+ "x": "0",
+ "y": "5",
"properties": {
"color": "16770457"
}
@@ -9567,23 +8626,24 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "34",
- "measuredW": "34",
+ "w": "52",
+ "measuredW": "51",
"measuredH": "25",
- "x": "59",
- "y": "12",
+ "x": "40",
+ "y": "17",
"properties": {
+ "color": "3355443",
"size": "17",
- "text": "PHP"
+ "text": "GitLab"
}
},
{
- "ID": "2",
+ "ID": "3",
"typeID": "Icon",
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
+ "x": "116",
"y": "0",
"properties": {
"color": "16777215",
@@ -9594,12 +8654,12 @@
}
},
{
- "ID": "3",
+ "ID": "4",
"typeID": "Icon",
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
+ "x": "116",
"y": "0",
"properties": {
"color": "16777215",
@@ -9610,12 +8670,12 @@
}
},
{
- "ID": "4",
+ "ID": "5",
"typeID": "Icon",
"zOrder": "4",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
+ "x": "116",
"y": "0",
"properties": {
"color": "3700253",
@@ -9630,17 +8690,17 @@
}
},
{
- "ID": "14259",
+ "ID": "14312",
"typeID": "__group__",
- "zOrder": "205",
- "measuredW": "146",
- "measuredH": "47",
- "w": "146",
- "h": "47",
- "x": "1039",
- "y": "919",
+ "zOrder": "212",
+ "measuredW": "178",
+ "measuredH": "40",
+ "w": "178",
+ "h": "40",
+ "x": "1061",
+ "y": "1758",
"properties": {
- "controlName": "105-learn-a-language:javascript"
+ "controlName": "100-more-about-databases:orms"
},
"children": {
"controls": {
@@ -9649,12 +8709,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
+ "w": "171",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "7",
+ "x": "7",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -9663,14 +8723,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "85",
- "measuredW": "81",
+ "w": "49",
+ "measuredW": "49",
"measuredH": "25",
- "x": "27",
- "y": "15",
+ "x": "71",
+ "y": "7",
"properties": {
"size": "17",
- "text": "JavaScript"
+ "text": "ORMs"
}
},
{
@@ -9679,8 +8739,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -9690,15 +8750,15 @@
}
},
{
- "ID": "4",
+ "ID": "3",
"typeID": "Icon",
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
- "color": "3700253",
+ "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -9710,17 +8770,17 @@
}
},
{
- "ID": "14260",
+ "ID": "14313",
"typeID": "__group__",
- "zOrder": "206",
- "measuredW": "146",
- "measuredH": "45",
- "w": "146",
- "h": "45",
- "x": "1039",
- "y": "967",
+ "zOrder": "213",
+ "measuredW": "204",
+ "measuredH": "50",
+ "w": "204",
+ "h": "50",
+ "x": "1214",
+ "y": "2674",
"properties": {
- "controlName": "106-learn-a-language:python"
+ "controlName": "113-ci-cd"
},
"children": {
"controls": {
@@ -9729,28 +8789,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
- "h": "40",
+ "w": "194",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "5",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "56",
- "measuredW": "53",
+ "w": "62",
+ "measuredW": "59",
"measuredH": "25",
- "x": "40",
- "y": "13",
+ "x": "66",
+ "y": "12",
"properties": {
"size": "17",
- "text": "Python"
+ "text": "CI / CD"
}
},
{
@@ -9759,8 +8819,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "180",
+ "y": "13",
"properties": {
"color": "16777215",
"icon": {
@@ -9775,30 +8835,61 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "180",
+ "y": "13",
"properties": {
- "color": "16777215",
+ "color": "10027263",
"icon": {
- "ID": "circle",
+ "ID": "check-circle",
"size": "small"
}
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14314",
+ "typeID": "__group__",
+ "zOrder": "214",
+ "measuredW": "324",
+ "measuredH": "50",
+ "w": "324",
+ "h": "50",
+ "x": "677",
+ "y": "2774",
+ "properties": {
+ "controlName": "114-design-and-development-principles"
+ },
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "122",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "324",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
"y": "0",
"properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "275",
+ "measuredH": "25",
+ "x": "24",
+ "y": "13",
+ "properties": {
+ "size": "17",
+ "text": "Design and Development Principles"
}
}
]
@@ -9806,17 +8897,17 @@
}
},
{
- "ID": "14261",
+ "ID": "14319",
"typeID": "__group__",
- "zOrder": "207",
- "measuredW": "146",
- "measuredH": "47",
- "w": "146",
- "h": "47",
- "x": "1039",
- "y": "1011",
+ "zOrder": "215",
+ "measuredW": "268",
+ "measuredH": "40",
+ "w": "268",
+ "h": "40",
+ "x": "667",
+ "y": "2852",
"properties": {
- "controlName": "107-learn-a-language:ruby"
+ "controlName": "100-design-and-development-principles:gof-design-patterns"
},
"children": {
"controls": {
@@ -9825,12 +8916,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "136",
+ "w": "260",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "7",
+ "x": "8",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -9839,40 +8930,24 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "42",
- "measuredW": "39",
+ "w": "168",
+ "measuredW": "164",
"measuredH": "25",
- "x": "47",
- "y": "15",
+ "x": "54",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Ruby"
+ "text": "GOF Design Patterns"
}
},
{
"ID": "2",
"typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "122",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -9882,19 +8957,19 @@
}
},
{
- "ID": "4",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "122",
- "y": "0",
+ "x": "0",
+ "y": "8",
"properties": {
- "color": "3700253",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -9902,287 +8977,97 @@
}
},
{
- "ID": "14262",
- "typeID": "Arrow",
- "zOrder": "208",
- "w": "154",
- "h": "40",
- "measuredW": "150",
- "measuredH": "100",
- "x": "864",
- "y": "520",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.4299387442572742,
- "y": 0.06087289433384378
- },
- "p2": {
- "x": 154,
- "y": 40
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14263",
- "typeID": "Arrow",
- "zOrder": "209",
- "w": "152",
- "h": "83",
- "measuredW": "150",
- "measuredH": "100",
- "x": "872",
- "y": "522",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 0,
- "y": 0
- },
- "p1": {
- "x": 0.5124862467909179,
- "y": -0.09515553629180144
- },
- "p2": {
- "x": 152,
- "y": 83
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14264",
- "typeID": "Arrow",
- "zOrder": "210",
- "w": "124",
- "h": "57",
- "measuredW": "150",
- "measuredH": "100",
- "x": "508",
- "y": "524",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 124,
- "y": 0
- },
- "p1": {
- "x": 0.4977437042068999,
- "y": -0.11213547479256634
- },
- "p2": {
- "x": 0,
- "y": 57
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14265",
- "typeID": "Arrow",
- "zOrder": "211",
- "w": "151",
- "h": "29",
- "measuredW": "150",
- "measuredH": "100",
- "x": "872",
- "y": "474",
- "properties": {
- "color": "2848996",
- "leftArrow": "false",
- "p0": {
- "x": 150,
- "y": 28
- },
- "p1": {
- "x": 0.4823054457996908,
- "y": 0.02336368321594228
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14266",
- "typeID": "Arrow",
- "zOrder": "212",
- "w": "153",
- "h": "13",
- "measuredW": "150",
- "measuredH": "100",
- "x": "874",
- "y": "457",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 152,
- "y": 0
- },
- "p1": {
- "x": 0.4798692360633173,
- "y": -0.004989676531314521
- },
- "p2": {
- "x": 0,
- "y": 12
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14267",
- "typeID": "Arrow",
- "zOrder": "213",
- "h": "60",
- "measuredW": "150",
- "measuredH": "100",
- "x": "872",
- "y": "408",
- "properties": {
- "color": "2848996",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 149,
- "y": 0
- },
- "p1": {
- "x": 0.4552212800557556,
- "y": -0.05494250203275647
- },
- "p2": {
- "x": 0,
- "y": 59
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14268",
- "typeID": "Arrow",
- "zOrder": "214",
- "w": "129",
- "h": "36",
- "measuredW": "150",
- "measuredH": "100",
- "x": "493",
- "y": "476",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "direction": "bottom",
- "leftArrow": "false",
- "p0": {
- "x": 129,
- "y": 0
- },
- "p1": {
- "x": 0.4772874058127019,
- "y": 0.05888051668460705
- },
- "p2": {
- "x": 0,
- "y": 36
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14269",
- "typeID": "Arrow",
- "zOrder": "215",
- "w": "131",
- "h": "9",
- "measuredW": "150",
- "measuredH": "100",
- "x": "493",
- "y": "465",
- "properties": {
- "color": "2848996",
- "curvature": "0",
- "leftArrow": "false",
- "p0": {
- "x": 129,
- "y": 7
- },
- "p1": {
- "x": 0.4652789342214826,
- "y": -0.001332223147377271
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14270",
- "typeID": "Arrow",
+ "ID": "14320",
+ "typeID": "__group__",
"zOrder": "216",
- "w": "143",
- "h": "53",
- "measuredW": "150",
- "measuredH": "100",
- "x": "483",
- "y": "418",
+ "measuredW": "268",
+ "measuredH": "40",
+ "w": "268",
+ "h": "40",
+ "x": "667",
+ "y": "2897",
"properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 141,
- "y": 51
- },
- "p1": {
- "x": 0.45522128005575574,
- "y": -0.054942502032756434
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "controlName": "101-design-and-development-principles:domain-driven-design"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "260",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "175",
+ "measuredW": "172",
+ "measuredH": "25",
+ "x": "50",
+ "y": "7",
+ "properties": {
+ "size": "17",
+ "text": "Domain Driven Design"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "8",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14271",
+ "ID": "14321",
"typeID": "__group__",
"zOrder": "217",
- "measuredW": "278",
- "measuredH": "60",
- "w": "278",
- "h": "60",
- "x": "606",
- "y": "434",
+ "measuredW": "268",
+ "measuredH": "40",
+ "w": "268",
+ "h": "40",
+ "x": "667",
+ "y": "2942",
"properties": {
- "controlName": "100-internet"
+ "controlName": "102-design-and-development-principles:test-driven-development"
},
"children": {
"controls": {
@@ -10191,27 +9076,28 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "272",
- "h": "50",
+ "w": "260",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "10",
+ "x": "8",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "62",
+ "w": "196",
+ "measuredW": "194",
"measuredH": "25",
- "x": "111",
- "y": "23",
+ "x": "40",
+ "y": "7",
"properties": {
- "text": "Internet",
- "size": "17"
+ "size": "17",
+ "text": "Test Driven Development"
}
},
{
@@ -10221,7 +9107,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -10237,13 +9123,13 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -10251,17 +9137,17 @@
}
},
{
- "ID": "14272",
+ "ID": "14322",
"typeID": "__group__",
"zOrder": "218",
- "measuredW": "306",
- "measuredH": "53",
- "w": "306",
- "h": "53",
- "x": "209",
- "y": "386",
+ "measuredW": "254",
+ "measuredH": "37",
+ "w": "254",
+ "h": "37",
+ "x": "1459",
+ "y": "3009",
"properties": {
- "controlName": "100-internet:how-does-the-internet-work"
+ "controlName": "104-architectural-patterns:serverless"
},
"children": {
"controls": {
@@ -10270,12 +9156,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "299",
- "h": "44",
+ "w": "245",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "9",
+ "x": "0",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -10284,14 +9170,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "223",
- "measuredW": "219",
+ "w": "87",
+ "measuredW": "82",
"measuredH": "25",
- "x": "45",
- "y": "19",
+ "x": "79",
+ "y": "6",
"properties": {
"size": "17",
- "text": "How does the internet work?"
+ "text": "Serverless"
}
},
{
@@ -10300,8 +9186,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "230",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -10316,8 +9202,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "230",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -10331,17 +9217,17 @@
}
},
{
- "ID": "14273",
+ "ID": "14323",
"typeID": "__group__",
"zOrder": "219",
- "measuredW": "307",
- "measuredH": "47",
- "w": "307",
- "h": "47",
- "x": "208",
- "y": "438",
+ "measuredW": "328",
+ "measuredH": "138",
+ "w": "328",
+ "h": "138",
+ "x": "1059",
+ "y": "3777",
"properties": {
- "controlName": "101-internet:what-is-http"
+ "controlName": "123-scalability"
},
"children": {
"controls": {
@@ -10350,34 +9236,75 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "299",
- "h": "40",
+ "w": "318",
+ "h": "129",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "7",
+ "x": "10",
+ "y": "9",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "119",
- "measuredW": "113",
+ "measuredW": "134",
"measuredH": "25",
- "x": "98",
- "y": "15",
+ "x": "102",
+ "y": "25",
"properties": {
- "size": "17",
- "text": "What is HTTP?"
+ "text": "Building for Scale",
+ "size": "17"
}
},
{
"ID": "2",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "2",
+ "w": "264",
+ "measuredW": "260",
+ "measuredH": "24",
+ "x": "37",
+ "y": "53",
+ "properties": {
+ "size": "16",
+ "text": "General topics that you should learn"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Label",
+ "zOrder": "3",
+ "w": "270",
+ "measuredW": "258",
+ "measuredH": "24",
+ "x": "34",
+ "y": "76",
+ "properties": {
+ "size": "16",
+ "text": "and care about for the sustainability"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "w": "108",
+ "measuredW": "105",
+ "measuredH": "24",
+ "x": "115",
+ "y": "100",
+ "properties": {
+ "size": "16",
+ "text": "of the product."
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Icon",
+ "zOrder": "5",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -10391,9 +9318,9 @@
}
},
{
- "ID": "3",
+ "ID": "6",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "6",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -10411,17 +9338,17 @@
}
},
{
- "ID": "14274",
+ "ID": "14324",
"typeID": "__group__",
"zOrder": "220",
- "measuredW": "307",
+ "measuredW": "210",
"measuredH": "48",
- "w": "307",
+ "w": "210",
"h": "48",
- "x": "208",
- "y": "483",
+ "x": "813",
+ "y": "3703",
"properties": {
- "controlName": "102-internet:browsers-and-how-they-work"
+ "controlName": "100-scalability:mitigation-strategies"
},
"children": {
"controls": {
@@ -10430,11 +9357,11 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "299",
+ "w": "199",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
+ "x": "0",
"y": "8",
"properties": {
"color": "16770457"
@@ -10444,14 +9371,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "230",
- "measuredW": "225",
+ "w": "159",
+ "measuredW": "159",
"measuredH": "25",
- "x": "42",
- "y": "16",
+ "x": "20",
+ "y": "15",
"properties": {
"size": "17",
- "text": "Browsers and how they work?"
+ "text": "Mitigation Strategies"
}
},
{
@@ -10460,7 +9387,7 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "0",
+ "x": "186",
"y": "0",
"properties": {
"color": "16777215",
@@ -10476,14 +9403,62 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
+ "x": "186",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14325",
+ "typeID": "__group__",
+ "zOrder": "221",
+ "measuredW": "198",
+ "measuredH": "36",
+ "w": "198",
+ "h": "36",
+ "x": "814",
+ "y": "3848",
+ "properties": {
+ "controlName": "101-scalability:instrumentation-monitoring-telemetry"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "198",
+ "h": "36",
+ "measuredW": "200",
+ "measuredH": "140",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "155",
+ "measuredW": "154",
+ "measuredH": "25",
+ "x": "22",
+ "y": "6",
+ "properties": {
+ "size": "17",
+ "text": "Understand the Diff."
}
}
]
@@ -10491,17 +9466,129 @@
}
},
{
- "ID": "14275",
+ "ID": "14326",
+ "typeID": "Label",
+ "zOrder": "222",
+ "w": "84",
+ "measuredW": "83",
+ "measuredH": "25",
+ "x": "667",
+ "y": "3859",
+ "properties": {
+ "size": "17",
+ "text": "Monitoring"
+ }
+ },
+ {
+ "ID": "14327",
+ "typeID": "Label",
+ "zOrder": "223",
+ "w": "78",
+ "measuredW": "73",
+ "measuredH": "25",
+ "x": "660",
+ "y": "3702",
+ "properties": {
+ "size": "17",
+ "text": "Throttling"
+ }
+ },
+ {
+ "ID": "14328",
+ "typeID": "Label",
+ "zOrder": "224",
+ "w": "109",
+ "measuredW": "107",
+ "measuredH": "25",
+ "x": "629",
+ "y": "3730",
+ "properties": {
+ "size": "17",
+ "text": "Backpressure"
+ }
+ },
+ {
+ "ID": "14329",
+ "typeID": "Label",
+ "zOrder": "225",
+ "w": "100",
+ "measuredW": "94",
+ "measuredH": "25",
+ "x": "638",
+ "y": "3758",
+ "properties": {
+ "size": "17",
+ "text": "Loadshifting"
+ }
+ },
+ {
+ "ID": "14330",
+ "typeID": "Label",
+ "zOrder": "226",
+ "w": "70",
+ "measuredW": "66",
+ "measuredH": "25",
+ "x": "666",
+ "y": "3652",
+ "properties": {
+ "size": "17",
+ "text": "Graceful"
+ }
+ },
+ {
+ "ID": "14331",
+ "typeID": "Label",
+ "zOrder": "227",
+ "w": "84",
+ "measuredW": "76",
+ "measuredH": "25",
+ "x": "665",
+ "y": "3884",
+ "properties": {
+ "size": "17",
+ "text": "Telemetry"
+ }
+ },
+ {
+ "ID": "14332",
+ "typeID": "Label",
+ "zOrder": "228",
+ "w": "124",
+ "measuredW": "121",
+ "measuredH": "25",
+ "x": "627",
+ "y": "3834",
+ "properties": {
+ "size": "17",
+ "text": "Instrumentation"
+ }
+ },
+ {
+ "ID": "14333",
+ "typeID": "Label",
+ "zOrder": "229",
+ "w": "118",
+ "measuredW": "116",
+ "measuredH": "25",
+ "x": "620",
+ "y": "3783",
+ "properties": {
+ "size": "17",
+ "text": "Circuit Breaker"
+ }
+ },
+ {
+ "ID": "14334",
"typeID": "__group__",
- "zOrder": "221",
- "measuredW": "290",
+ "zOrder": "230",
+ "measuredW": "342",
"measuredH": "49",
- "w": "290",
+ "w": "342",
"h": "49",
- "x": "1009",
- "y": "381",
+ "x": "1436",
+ "y": "3812",
"properties": {
- "controlName": "103-internet:dns-and-how-it-works"
+ "controlName": "102-scalability:migration-strategies"
},
"children": {
"controls": {
@@ -10510,7 +9597,7 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "280",
+ "w": "333",
"h": "40",
"measuredW": "200",
"measuredH": "140",
@@ -10524,14 +9611,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "179",
- "measuredW": "175",
+ "measuredW": "155",
"measuredH": "25",
- "x": "51",
- "y": "17",
+ "x": "93",
+ "y": "16",
"properties": {
- "size": "17",
- "text": "DNS and how it works?"
+ "text": "Migration Strategies",
+ "size": "17"
}
},
{
@@ -10540,7 +9626,7 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "266",
+ "x": "318",
"y": "0",
"properties": {
"color": "16777215",
@@ -10556,7 +9642,7 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "266",
+ "x": "318",
"y": "0",
"properties": {
"color": "10027263",
@@ -10571,17 +9657,17 @@
}
},
{
- "ID": "14276",
+ "ID": "14335",
"typeID": "__group__",
- "zOrder": "222",
- "measuredW": "290",
- "measuredH": "45",
- "w": "290",
- "h": "45",
- "x": "1008",
- "y": "431",
+ "zOrder": "231",
+ "measuredW": "341",
+ "measuredH": "42",
+ "w": "341",
+ "h": "42",
+ "x": "1437",
+ "y": "3865",
"properties": {
- "controlName": "104-internet:what-is-domain-name"
+ "controlName": "103-scalability:horizontal-vertical-scaling"
},
"children": {
"controls": {
@@ -10590,12 +9676,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "280",
+ "w": "332",
"h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "5",
+ "y": "2",
"properties": {
"color": "16770457"
}
@@ -10604,14 +9690,14 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "179",
- "measuredW": "180",
+ "w": "230",
+ "measuredW": "221",
"measuredH": "25",
- "x": "51",
- "y": "13",
+ "x": "54",
+ "y": "9",
"properties": {
"size": "17",
- "text": "What is Domain Name?"
+ "text": "Horizontal vs Vertical Scaling"
}
},
{
@@ -10620,7 +9706,7 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "266",
+ "x": "317",
"y": "0",
"properties": {
"color": "16777215",
@@ -10636,7 +9722,7 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "266",
+ "x": "317",
"y": "0",
"properties": {
"color": "10027263",
@@ -10651,17 +9737,95 @@
}
},
{
- "ID": "14277",
+ "ID": "14336",
+ "typeID": "Label",
+ "zOrder": "232",
+ "w": "96",
+ "measuredW": "96",
+ "measuredH": "25",
+ "x": "640",
+ "y": "3672",
+ "properties": {
+ "size": "17",
+ "text": "Degradation"
+ }
+ },
+ {
+ "ID": "14339",
+ "typeID": "Icon",
+ "zOrder": "233",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "1705",
+ "y": "2455",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14340",
+ "typeID": "Icon",
+ "zOrder": "234",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "1705",
+ "y": "2455",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14341",
+ "typeID": "Icon",
+ "zOrder": "264",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "1709",
+ "y": "2809",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14342",
+ "typeID": "Icon",
+ "zOrder": "265",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "1709",
+ "y": "2809",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "14343",
"typeID": "__group__",
- "zOrder": "223",
- "measuredW": "289",
- "measuredH": "46",
- "w": "289",
- "h": "46",
- "x": "1009",
- "y": "476",
+ "zOrder": "235",
+ "measuredW": "154",
+ "measuredH": "40",
+ "w": "154",
+ "h": "40",
+ "x": "957",
+ "y": "2377",
"properties": {
- "controlName": "105-internet:what-is-hosting"
+ "controlName": "103-apis:grpc"
},
"children": {
"controls": {
@@ -10670,12 +9834,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "280",
+ "w": "145",
"h": "40",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "6",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -10684,14 +9848,15 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "133",
- "measuredW": "126",
+ "w": "90",
+ "measuredW": "45",
"measuredH": "25",
- "x": "74",
- "y": "14",
+ "x": "28",
+ "y": "7",
"properties": {
+ "align": "center",
"size": "17",
- "text": "What is hosting?"
+ "text": "gRPC"
}
},
{
@@ -10700,8 +9865,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "265",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -10716,8 +9881,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "265",
- "y": "0",
+ "x": "130",
+ "y": "8",
"properties": {
"color": "10027263",
"icon": {
@@ -10731,17 +9896,17 @@
}
},
{
- "ID": "14278",
+ "ID": "14358",
"typeID": "__group__",
- "zOrder": "224",
- "measuredW": "277",
- "measuredH": "55",
- "w": "277",
- "h": "55",
- "x": "607",
- "y": "495",
+ "zOrder": "236",
+ "measuredW": "324",
+ "measuredH": "50",
+ "w": "324",
+ "h": "50",
+ "x": "676",
+ "y": "2679",
"properties": {
- "controlName": "101-basic-frontend"
+ "controlName": "ext_link:roadmap.sh/software-design-architecture"
},
"children": {
"controls": {
@@ -10750,59 +9915,30 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "272",
+ "w": "324",
"h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "5",
- "y": "5",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "4273622",
+ "borderColor": "4273622",
+ "textColor": "16777215"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "207",
+ "measuredW": "240",
"measuredH": "25",
- "x": "37",
- "y": "18",
- "properties": {
- "text": "Basic Frontend Knowledge",
- "size": "17"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
+ "x": "42",
+ "y": "12",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Software Design & Architecture",
+ "size": "17",
+ "color": "16777215"
}
}
]
@@ -10810,17 +9946,17 @@
}
},
{
- "ID": "14279",
+ "ID": "14359",
"typeID": "__group__",
- "zOrder": "225",
- "measuredW": "148",
- "measuredH": "52",
- "w": "148",
- "h": "52",
- "x": "367",
- "y": "547",
+ "zOrder": "237",
+ "measuredW": "221",
+ "measuredH": "50",
+ "w": "221",
+ "h": "50",
+ "x": "1118",
+ "y": "4054",
"properties": {
- "controlName": "100-basic-frontend:html"
+ "controlName": "124-bonus-content"
},
"children": {
"controls": {
@@ -10829,28 +9965,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "142",
- "h": "43",
+ "w": "210",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "6",
- "y": "9",
+ "x": "11",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "49",
- "measuredW": "48",
+ "measuredW": "115",
"measuredH": "25",
- "x": "52",
- "y": "19",
+ "x": "58",
+ "y": "12",
"properties": {
"size": "17",
- "text": "HTML"
+ "text": "Bonus Content"
}
},
{
@@ -10860,7 +9995,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "13",
"properties": {
"color": "16777215",
"icon": {
@@ -10876,9 +10011,9 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "13",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -10890,17 +10025,317 @@
}
},
{
- "ID": "14280",
- "typeID": "__group__",
- "zOrder": "226",
+ "ID": "14360",
+ "typeID": "Arrow",
+ "zOrder": "68",
+ "w": "125",
+ "h": "39",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "984",
+ "y": "871",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 125.25416379776266,
+ "y": 38.781956555409124
+ },
+ "p1": {
+ "x": 0.5135953851047824,
+ "y": 0.07342097486825926
+ },
+ "p2": {
+ "x": -0.07798982877545768,
+ "y": 0.01943481524267554
+ }
+ }
+ },
+ {
+ "ID": "14366",
+ "typeID": "Arrow",
+ "zOrder": "58",
+ "w": "1",
+ "h": "83",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1424",
+ "y": "1044",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.24980034602958767,
+ "y": 83.20762430962418
+ },
+ "p1": {
+ "x": 0.5,
+ "y": 0
+ },
+ "p2": {
+ "x": -0.24980034602958767,
+ "y": 0.43870807682526447
+ }
+ }
+ },
+ {
+ "ID": "14367",
+ "typeID": "Arrow",
+ "zOrder": "67",
+ "w": "1",
+ "h": "167",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "763",
+ "y": "1051",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.24980034602958767,
+ "y": 167.04191001796403
+ },
+ "p1": {
+ "x": 0.49999999999999994,
+ "y": 0
+ },
+ "p2": {
+ "x": -0.24980034602958767,
+ "y": 0.03268182252122642
+ }
+ }
+ },
+ {
+ "ID": "14368",
+ "typeID": "Arrow",
+ "zOrder": "66",
+ "w": "1",
+ "h": "162",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "927",
+ "y": "1056",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.24980034602958767,
+ "y": 162.04191001796403
+ },
+ "p1": {
+ "x": 0.5,
+ "y": 0
+ },
+ "p2": {
+ "x": -0.24980034602958767,
+ "y": 0.32416628950863924
+ }
+ }
+ },
+ {
+ "ID": "14372",
+ "typeID": "Arrow",
+ "zOrder": "64",
+ "w": "154",
+ "h": "5",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1453",
+ "y": "1189",
+ "properties": {
+ "p0": {
+ "x": 0.458717507699248,
+ "y": 4.902762431183191
+ },
+ "p1": {
+ "x": 0.5,
+ "y": 0
+ },
+ "p2": {
+ "x": 154.57320260870983,
+ "y": -0.3887220358042214
+ },
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted"
+ }
+ },
+ {
+ "ID": "14373",
+ "typeID": "Arrow",
+ "zOrder": "63",
+ "w": "146",
+ "h": "56",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1446",
+ "y": "1129",
+ "properties": {
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.4785091927819849,
+ "y": 55.642664613955276
+ },
+ "p1": {
+ "x": 0.5049653579676676,
+ "y": -0.08879907621247125
+ },
+ "p2": {
+ "x": 145.69874920774737,
+ "y": 0.08207771058664548
+ }
+ }
+ },
+ {
+ "ID": "14374",
+ "typeID": "Arrow",
+ "zOrder": "62",
+ "w": "152",
+ "h": "101",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1440",
+ "y": "1072",
+ "properties": {
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.4314292181429664,
+ "y": 100.73682456323331
+ },
+ "p1": {
+ "x": 0.49914028657114357,
+ "y": -0.13680773075641442
+ },
+ "p2": {
+ "x": 151.69874920774737,
+ "y": 0.19861969047110506
+ }
+ }
+ },
+ {
+ "ID": "14375",
+ "typeID": "Arrow",
+ "zOrder": "61",
+ "w": "165",
+ "h": "5",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1351",
+ "y": "922",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 165.64034870052888,
+ "y": 0
+ },
+ "p1": {
+ "x": 0.4652789342214824,
+ "y": -0.0013322231473772653
+ },
+ "p2": {
+ "x": 0.2814591071698942,
+ "y": 4.68279684831532
+ }
+ }
+ },
+ {
+ "ID": "14376",
+ "typeID": "Arrow",
+ "zOrder": "60",
+ "w": "161",
+ "h": "48",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1326",
+ "y": "868",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 161.53718413209776,
+ "y": 0.4764677114528695
+ },
+ "p1": {
+ "x": 0.46937049176096124,
+ "y": 0.08997514266115965
+ },
+ "p2": {
+ "x": 0.14690788897928542,
+ "y": 48.45408568084645
+ }
+ }
+ },
+ {
+ "ID": "14377",
+ "typeID": "Arrow",
+ "zOrder": "59",
+ "w": "143",
+ "h": "34",
"measuredW": "150",
+ "measuredH": "100",
+ "x": "1351",
+ "y": "937",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 143.1515397158321,
+ "y": 33.33754370096199
+ },
+ "p1": {
+ "x": 0.4799532170311047,
+ "y": -0.07212649611970279
+ },
+ "p2": {
+ "x": 0.2814591071698942,
+ "y": -0.31720315168468005
+ }
+ }
+ },
+ {
+ "ID": "14378",
+ "typeID": "__group__",
+ "zOrder": "238",
+ "measuredW": "299",
"measuredH": "50",
- "w": "150",
+ "w": "299",
"h": "50",
- "x": "1009",
- "y": "528",
+ "x": "1418",
+ "y": "1406",
"properties": {
- "controlName": "101-basic-frontend:css"
+ "controlName": "102-os-general-knowledge"
},
"children": {
"controls": {
@@ -10909,60 +10344,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "142",
- "h": "43",
+ "w": "299",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "7",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "38",
- "measuredW": "33",
+ "measuredW": "213",
"measuredH": "25",
- "x": "52",
- "y": "17",
- "properties": {
- "size": "17",
- "text": "CSS"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "126",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "126",
- "y": "0",
+ "x": "47",
+ "y": "12",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "OS and General Knowledge",
+ "size": "17"
}
}
]
@@ -10970,327 +10372,944 @@
}
},
{
- "ID": "14281",
- "typeID": "__group__",
- "zOrder": "227",
+ "ID": "14380",
+ "typeID": "TextArea",
+ "zOrder": "57",
+ "w": "307",
+ "h": "401",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "1415",
+ "y": "1592"
+ },
+ {
+ "ID": "14383",
+ "typeID": "Label",
+ "zOrder": "239",
+ "measuredW": "235",
+ "measuredH": "25",
+ "x": "1447",
+ "y": "1954",
+ "properties": {
+ "size": "17",
+ "text": "Operating Systems Knowledge"
+ }
+ },
+ {
+ "ID": "14391",
+ "typeID": "Arrow",
+ "zOrder": "56",
+ "w": "182",
+ "h": "244",
"measuredW": "150",
- "measuredH": "48",
- "w": "150",
- "h": "48",
- "x": "1009",
- "y": "581",
+ "measuredH": "100",
+ "x": "1269",
+ "y": "1185",
"properties": {
- "controlName": "102-basic-frontend:javascript"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "142",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "5",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "84",
- "measuredW": "81",
- "measuredH": "25",
- "x": "34",
- "y": "14",
- "properties": {
- "size": "17",
- "text": "JavaScript"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "126",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "126",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 2.6820507296401956,
+ "y": -0.28812721471331315
+ },
+ "p1": {
+ "x": 0.5486000169108877,
+ "y": -0.2734756055254588
+ },
+ "p2": {
+ "x": 181.4160384735476,
+ "y": 243.50229284977354
}
}
},
{
- "ID": "14282",
+ "ID": "14401",
"typeID": "Arrow",
- "zOrder": "228",
- "w": "135",
- "h": "195",
+ "zOrder": "55",
+ "w": "372",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1094",
+ "y": "1447",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 0.5
+ },
+ "p1": {
+ "x": 0.4734542725983134,
+ "y": -0.00011162392477927833
+ },
+ "p2": {
+ "x": 372.1665431406352,
+ "y": 0.44787919754480754
+ }
+ }
+ },
+ {
+ "ID": "14403",
+ "typeID": "Arrow",
+ "zOrder": "54",
+ "w": "108",
+ "h": "69",
"measuredW": "150",
"measuredH": "100",
- "x": "887",
- "y": "694",
+ "x": "866",
+ "y": "1459",
"properties": {
"color": "2848996",
"curvature": "-1",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 134.5,
- "y": 195
+ "x": 108.53128935943289,
+ "y": -0.29133900542706215
},
"p1": {
- "x": 0.5227813114793675,
- "y": 0.0017380179353795955
+ "x": 0.5277931876178863,
+ "y": -0.08110507045378823
},
"p2": {
- "x": -0.5,
+ "x": 0.33217034204835727,
+ "y": 68.41805714189809
+ }
+ }
+ },
+ {
+ "ID": "14404",
+ "typeID": "Arrow",
+ "zOrder": "53",
+ "w": "112",
+ "h": "105",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "870",
+ "y": "1462",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 112.74894396834816,
+ "y": -0.32317972942405504
+ },
+ "p1": {
+ "x": 0.5277931876178864,
+ "y": -0.08110507045378819
+ },
+ "p2": {
+ "x": 0.4409976465059344,
+ "y": 105.13672108498872
+ }
+ }
+ },
+ {
+ "ID": "14406",
+ "typeID": "Arrow",
+ "zOrder": "52",
+ "w": "1",
+ "h": "166",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1560",
+ "y": "1351",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.24980034602958767,
+ "y": 166.66755247481046
+ },
+ "p1": {
+ "x": 0.5,
"y": 0
},
- "rightArrow": "false",
- "stroke": "dotted"
+ "p2": {
+ "x": -0.24980034602958767,
+ "y": 0.43870807682526447
+ }
}
},
{
- "ID": "14283",
+ "ID": "14407",
"typeID": "Arrow",
- "zOrder": "229",
- "w": "136",
- "h": "131",
+ "zOrder": "51",
+ "w": "163",
+ "h": "178",
"measuredW": "150",
"measuredH": "100",
- "x": "892",
- "y": "692",
+ "x": "1153",
+ "y": "1460",
"properties": {
"color": "2848996",
- "curvature": "-1",
+ "direction": "bottom",
"leftArrow": "false",
+ "rightArrow": "false",
"p0": {
- "x": 135.5,
- "y": 131
+ "x": -0.16305972330678742,
+ "y": 0.21190866916163031
},
"p1": {
- "x": 0.5227813114793675,
- "y": 0.0017380179353796794
+ "x": 0.45708880562052184,
+ "y": 0.19653198805241293
},
"p2": {
- "x": -0.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": 163.28809993951177,
+ "y": 178.12777272691983
+ }
}
},
{
- "ID": "14284",
+ "ID": "14408",
"typeID": "Arrow",
- "zOrder": "230",
- "w": "138",
- "h": "76",
+ "zOrder": "50",
+ "w": "108",
+ "h": "52",
"measuredW": "150",
"measuredH": "100",
- "x": "885",
- "y": "686",
+ "x": "866",
+ "y": "1385",
"properties": {
"color": "2848996",
"curvature": "-1",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 137.5,
- "y": 76
+ "x": 108.53128935943289,
+ "y": 52.02385644383003
},
"p1": {
- "x": 0.524315747719159,
- "y": -0.026418088060293544
+ "x": 0.5450108459869839,
+ "y": 0.08947939262472887
},
"p2": {
- "x": -0.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": 0.33217034204835727,
+ "y": -0.02128941263345041
+ }
}
},
{
- "ID": "14285",
+ "ID": "14409",
"typeID": "Arrow",
- "zOrder": "231",
- "w": "141",
- "h": "30",
+ "zOrder": "49",
+ "w": "118",
+ "h": "21",
"measuredW": "150",
"measuredH": "100",
- "x": "884",
- "y": "680",
+ "x": "861",
+ "y": "1427",
"properties": {
"color": "2848996",
"curvature": "-1",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 140.5,
- "y": 30
+ "x": 117.64011666389058,
+ "y": 20.98072925571705
},
"p1": {
- "x": 0.5227813114793672,
- "y": 0.0017380179353795478
+ "x": 0.572103398504133,
+ "y": 0.053273848576302456
},
"p2": {
- "x": -0.5,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": -0.14626606389515473,
+ "y": 0.43659273342882443
+ }
}
},
{
- "ID": "14286",
+ "ID": "14410",
"typeID": "Arrow",
- "zOrder": "232",
- "w": "144",
- "h": "5",
+ "zOrder": "48",
+ "w": "110",
+ "h": "33",
"measuredW": "150",
"measuredH": "100",
- "x": "881",
- "y": "669",
+ "x": "863",
+ "y": "1452",
"properties": {
"color": "2848996",
"curvature": "-1",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 143.5,
- "y": 0
+ "x": 110.27050756240465,
+ "y": 0.4591656616605633
},
"p1": {
- "x": 0.5227813114793672,
- "y": 0.001738017935379522
+ "x": 0.6011290949912016,
+ "y": -0.04344446531392316
},
"p2": {
- "x": -0.5,
- "y": 5
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": -0.14626606389515473,
+ "y": 33.436592733428824
+ }
}
},
{
- "ID": "14287",
+ "ID": "14442",
"typeID": "__group__",
- "zOrder": "233",
- "measuredW": "276",
- "measuredH": "51",
- "w": "276",
- "h": "51",
- "x": "1009",
- "y": "638",
+ "zOrder": "242",
+ "measuredW": "174",
+ "measuredH": "154",
+ "w": "174",
+ "h": "154",
+ "x": "678",
+ "y": "1631",
"properties": {
- "controlName": "105-os-general-knowledge:memory-management"
+ "controlName": "100-nosql-databases:document-databases"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "174",
+ "h": "154",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "21",
+ "y": "15",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "78",
+ "measuredH": "25",
+ "x": "51",
+ "y": "24",
+ "properties": {
+ "size": "17",
+ "text": "MongoDB"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "TextArea",
+ "zOrder": "3",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "21",
+ "y": "63",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "74",
+ "measuredH": "25",
+ "x": "53",
+ "y": "72",
+ "properties": {
+ "size": "17",
+ "text": "CouchDB"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "117",
+ "measuredH": "25",
+ "x": "31",
+ "y": "114",
+ "properties": {
+ "size": "17",
+ "text": "Document DBs"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "12",
+ "y": "22",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "__group__",
+ "zOrder": "7",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "11",
+ "y": "71",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14443",
+ "typeID": "__group__",
+ "zOrder": "245",
+ "measuredW": "168",
+ "measuredH": "154",
+ "w": "168",
+ "h": "154",
+ "x": "849",
+ "y": "1780",
+ "properties": {
+ "controlName": "101-nosql-databases:column-databases"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "168",
+ "h": "154",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "15",
+ "y": "14",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "83",
+ "measuredH": "25",
+ "x": "42",
+ "y": "23",
+ "properties": {
+ "size": "17",
+ "text": "Cassandra"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "TextArea",
+ "zOrder": "3",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "15",
+ "y": "62",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "53",
+ "measuredH": "25",
+ "x": "57",
+ "y": "71",
+ "properties": {
+ "size": "17",
+ "text": "HBase"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "96",
+ "measuredH": "25",
+ "x": "36",
+ "y": "113",
+ "properties": {
+ "size": "17",
+ "text": "Column DBs"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "137",
+ "y": "23",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "__group__",
+ "zOrder": "7",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "137",
+ "y": "71",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14444",
+ "typeID": "__group__",
+ "zOrder": "243",
+ "measuredW": "168",
+ "measuredH": "154",
+ "w": "168",
+ "h": "154",
+ "x": "849",
+ "y": "1631",
+ "properties": {
+ "controlName": "102-nosql-databases:timeseries-databases"
},
"children": {
"controls": {
"control": [
{
- "ID": "0",
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "168",
+ "h": "154",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "17",
+ "y": "14",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "65",
+ "measuredH": "25",
+ "x": "53",
+ "y": "23",
+ "properties": {
+ "size": "17",
+ "text": "InfluxDB"
+ }
+ },
+ {
+ "ID": "3",
"typeID": "TextArea",
- "zOrder": "0",
- "w": "267",
+ "zOrder": "3",
+ "w": "137",
"h": "43",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "8",
+ "x": "17",
+ "y": "62",
"properties": {
"color": "16770457"
}
},
{
- "ID": "1",
+ "ID": "4",
"typeID": "Label",
- "zOrder": "1",
- "w": "170",
- "measuredW": "169",
+ "zOrder": "4",
+ "measuredW": "81",
"measuredH": "25",
- "x": "50",
- "y": "18",
+ "x": "45",
+ "y": "71",
"properties": {
"size": "17",
- "text": "Memory Management"
+ "text": "TimeScale"
}
},
{
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "252",
- "y": "0",
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "91",
+ "measuredH": "25",
+ "x": "38",
+ "y": "113",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "size": "17",
+ "text": "Time Series"
}
},
{
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14288",
+ "w": "24",
+ "h": "24",
+ "x": "137",
+ "y": "21",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "__group__",
+ "zOrder": "7",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "141",
+ "y": "70",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14445",
"typeID": "__group__",
- "zOrder": "234",
- "measuredW": "276",
- "measuredH": "47",
- "w": "276",
- "h": "47",
- "x": "1009",
- "y": "691",
+ "zOrder": "244",
+ "measuredW": "174",
+ "measuredH": "154",
+ "w": "174",
+ "h": "154",
+ "x": "678",
+ "y": "1780",
"properties": {
- "controlName": "106-os-general-knowledge:interprocess-communication"
+ "controlName": "103-nosql-databases:realtime-databases"
},
"children": {
"controls": {
@@ -11299,78 +11318,210 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
- "h": "43",
+ "w": "174",
+ "h": "154",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
- "properties": {
- "color": "16770457"
- }
+ "y": "0"
},
{
"ID": "1",
- "typeID": "Label",
+ "typeID": "TextArea",
"zOrder": "1",
- "w": "224",
- "measuredW": "222",
- "measuredH": "25",
- "x": "23",
- "y": "13",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "21",
+ "y": "14",
"properties": {
- "size": "17",
- "text": "Interprocess Communication"
+ "color": "16770457"
}
},
{
"ID": "2",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "252",
- "y": "0",
+ "measuredW": "68",
+ "measuredH": "25",
+ "x": "56",
+ "y": "23",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "size": "17",
+ "text": "Firebase"
}
},
{
"ID": "3",
- "typeID": "Icon",
+ "typeID": "TextArea",
"zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "252",
- "y": "0",
+ "w": "137",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "21",
+ "y": "62",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "color": "16770457"
}
- }
- ]
- }
- }
- },
- {
- "ID": "14289",
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "83",
+ "measuredH": "25",
+ "x": "48",
+ "y": "71",
+ "properties": {
+ "size": "17",
+ "text": "RethinkDB"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "69",
+ "measuredH": "25",
+ "x": "55",
+ "y": "113",
+ "properties": {
+ "size": "17",
+ "text": "Realtime"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "9",
+ "y": "23",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "__group__",
+ "zOrder": "7",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "10",
+ "y": "71",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14446",
"typeID": "__group__",
- "zOrder": "235",
- "measuredW": "276",
- "measuredH": "47",
- "w": "276",
- "h": "47",
- "x": "1009",
- "y": "741",
+ "zOrder": "246",
+ "measuredW": "174",
+ "measuredH": "154",
+ "w": "174",
+ "h": "154",
+ "x": "678",
+ "y": "1930",
"properties": {
- "controlName": "107-os-general-knowledge:io-management"
+ "controlName": "104-nosql-databases:key-value-databases"
},
"children": {
"controls": {
@@ -11379,37 +11530,248 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
- "h": "43",
+ "w": "174",
+ "h": "154",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "4",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "143",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "18",
+ "y": "14",
"properties": {
"color": "16770457"
}
},
{
- "ID": "1",
+ "ID": "2",
"typeID": "Label",
- "zOrder": "1",
- "w": "135",
- "measuredW": "133",
+ "zOrder": "2",
+ "measuredW": "45",
"measuredH": "25",
- "x": "66",
- "y": "14",
+ "x": "64",
+ "y": "23",
"properties": {
"size": "17",
- "text": "I/O Management"
+ "text": "Redis"
}
},
{
- "ID": "2",
+ "ID": "3",
+ "typeID": "TextArea",
+ "zOrder": "3",
+ "w": "143",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "18",
+ "y": "61",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "88",
+ "measuredH": "25",
+ "x": "43",
+ "y": "70",
+ "properties": {
+ "size": "17",
+ "text": "DynamoDB"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "76",
+ "measuredH": "25",
+ "x": "52",
+ "y": "114",
+ "properties": {
+ "size": "17",
+ "text": "Key-Value"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "11",
+ "y": "21",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "__group__",
+ "zOrder": "7",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "9",
+ "y": "70",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14447",
+ "typeID": "Arrow",
+ "zOrder": "47",
+ "w": "167",
+ "h": "2",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "993",
+ "y": "1655",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 166.3460572544161,
+ "y": -0.11252414244177089
+ },
+ "p1": {
+ "x": 0.4652789342214823,
+ "y": -0.0013322231473772638
+ },
+ "p2": {
+ "x": -0.450419321956133,
+ "y": 1.4791597765599818
+ }
+ }
+ },
+ {
+ "ID": "14448",
+ "typeID": "__group__",
+ "zOrder": "241",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1707",
+ "y": "1625",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
"color": "16777215",
@@ -11420,12 +11782,12 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
"color": "10027263",
@@ -11440,69 +11802,25 @@
}
},
{
- "ID": "14290",
+ "ID": "14449",
"typeID": "__group__",
- "zOrder": "236",
- "measuredW": "276",
- "measuredH": "69",
- "w": "276",
- "h": "69",
- "x": "1009",
- "y": "791",
- "properties": {
- "controlName": "108-os-general-knowledge:posix-basics"
- },
+ "zOrder": "240",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1708",
+ "y": "1600",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "268",
- "h": "65",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "4",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "105",
- "measuredH": "25",
- "x": "81",
- "y": "15",
- "properties": {
- "text": "POSIX Basics",
- "size": "17"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "w": "180",
- "measuredW": "172",
- "measuredH": "23",
- "x": "44",
- "y": "36",
- "properties": {
- "size": "15",
- "text": "stdin, stdout, stderr, pipes"
- }
- },
- {
- "ID": "3",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
"color": "16777215",
@@ -11513,15 +11831,15 @@
}
},
{
- "ID": "4",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -11533,56 +11851,25 @@
}
},
{
- "ID": "14291",
+ "ID": "14464",
"typeID": "__group__",
- "zOrder": "237",
- "measuredW": "276",
- "measuredH": "44",
- "w": "276",
- "h": "44",
- "x": "1009",
- "y": "866",
- "properties": {
- "controlName": "109-os-general-knowledge:basic-networking-concepts"
- },
+ "zOrder": "247",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1005",
+ "y": "1744",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "268",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "1",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "218",
- "measuredW": "213",
- "measuredH": "25",
- "x": "25",
- "y": "10",
- "properties": {
- "size": "17",
- "text": "Basic Networking Concepts"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
"color": "16777215",
@@ -11593,15 +11880,15 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
- "x": "252",
+ "x": "0",
"y": "0",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -11613,202 +11900,22 @@
}
},
{
- "ID": "14292",
- "typeID": "Arrow",
- "zOrder": "238",
- "w": "128",
- "h": "151",
- "measuredW": "150",
- "measuredH": "100",
- "x": "506",
- "y": "698",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 128,
- "y": 0
- },
- "p1": {
- "x": 0.4075757037878519,
- "y": -0.014129007064503547
- },
- "p2": {
- "x": 0,
- "y": 151
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14293",
- "typeID": "Arrow",
- "zOrder": "239",
- "w": "125",
- "h": "107",
- "measuredW": "150",
- "measuredH": "100",
- "x": "507",
- "y": "691",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 125,
- "y": 0
- },
- "p1": {
- "x": 0.4291571249168944,
- "y": -0.03135849892886164
- },
- "p2": {
- "x": 0,
- "y": 107
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14294",
- "typeID": "Arrow",
- "zOrder": "240",
- "w": "119",
- "h": "55",
- "measuredW": "150",
- "measuredH": "100",
- "x": "509",
- "y": "689",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 119,
- "y": 0
- },
- "p1": {
- "x": 0.513033864773653,
- "y": -0.03543581985336902
- },
- "p2": {
- "x": 0,
- "y": 55
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14295",
- "typeID": "Arrow",
- "zOrder": "241",
- "w": "131",
- "h": "11",
- "measuredW": "150",
- "measuredH": "100",
- "x": "502",
- "y": "683",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 131,
- "y": 0
- },
- "p1": {
- "x": 0.4401290896950813,
- "y": -0.005675495214778532
- },
- "p2": {
- "x": 0,
- "y": 11
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14296",
- "typeID": "Arrow",
- "zOrder": "242",
- "w": "138",
- "h": "32",
- "measuredW": "150",
- "measuredH": "100",
- "x": "497",
- "y": "649",
- "properties": {
- "color": "2848996",
- "curvature": "-1",
- "leftArrow": "false",
- "p0": {
- "x": 138,
- "y": 32
- },
- "p1": {
- "x": 0.4566473988439307,
- "y": -0.03179190751445087
- },
- "p2": {
- "x": 0,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
- }
- },
- {
- "ID": "14297",
+ "ID": "14465",
"typeID": "__group__",
- "zOrder": "243",
- "measuredW": "276",
- "measuredH": "60",
- "w": "276",
- "h": "60",
- "x": "621",
- "y": "653",
- "properties": {
- "controlName": "102-os-general-knowledge"
- },
+ "zOrder": "248",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1005",
+ "y": "1893",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "272",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "4",
- "y": "10",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "213",
- "measuredH": "25",
- "x": "33",
- "y": "23",
- "properties": {
- "text": "OS and General Knowledge",
- "size": "17"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -11822,15 +11929,15 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -11842,53 +11949,22 @@
}
},
{
- "ID": "14298",
+ "ID": "14466",
"typeID": "__group__",
- "zOrder": "244",
- "measuredW": "275",
- "measuredH": "52",
- "w": "275",
- "h": "52",
- "x": "242",
- "y": "614",
- "properties": {
- "controlName": "100-os-general-knowledge:terminal-usage"
- },
+ "zOrder": "249",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "669",
+ "y": "1893",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "269",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
- "x": "6",
- "y": "9",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "123",
- "measuredW": "121",
- "measuredH": "25",
- "x": "79",
- "y": "19",
- "properties": {
- "size": "17",
- "text": "Terminal Usage"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -11902,15 +11978,15 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
+ "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
@@ -11922,78 +11998,22 @@
}
},
{
- "ID": "14299",
+ "ID": "14467",
"typeID": "__group__",
- "zOrder": "245",
- "measuredW": "275",
- "measuredH": "106",
- "w": "275",
- "h": "106",
- "x": "242",
- "y": "817",
- "properties": {
- "controlName": "104-os-general-knowledge:basic-terminal-commands"
- },
+ "zOrder": "250",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "694",
+ "y": "2068",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "269",
- "h": "101",
- "measuredW": "200",
- "measuredH": "140",
- "x": "6",
- "y": "5",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "217",
- "measuredH": "26",
- "x": "32",
- "y": "17",
- "properties": {
- "text": "Basic Terminal Commands",
- "size": "18"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "measuredW": "223",
- "measuredH": "25",
- "x": "29",
- "y": "43",
- "properties": {
- "text": "grep, awk, sed, lsof, curl, wget",
- "size": "17"
- }
- },
- {
- "ID": "3",
- "typeID": "Label",
- "zOrder": "3",
- "measuredW": "204",
- "measuredH": "25",
- "x": "39",
- "y": "69",
- "properties": {
- "text": "tail, head, less, find, ssh, kill",
- "size": "17"
- }
- },
- {
- "ID": "4",
"typeID": "Icon",
- "zOrder": "4",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -12007,19 +12027,19 @@
}
},
{
- "ID": "5",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "5",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10066329"
}
}
]
@@ -12027,53 +12047,22 @@
}
},
{
- "ID": "14300",
+ "ID": "14469",
"typeID": "__group__",
- "zOrder": "246",
- "measuredW": "274",
- "measuredH": "50",
- "w": "274",
- "h": "50",
- "x": "242",
- "y": "715",
- "properties": {
- "controlName": "102-os-general-knowledge:process-management"
- },
+ "zOrder": "251",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "670",
+ "y": "2068",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "267",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
- "x": "7",
- "y": "7",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "172",
- "measuredW": "170",
- "measuredH": "25",
- "x": "55",
- "y": "16",
- "properties": {
- "size": "17",
- "text": "Process Management"
- }
- },
- {
- "ID": "2",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -12087,19 +12076,19 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -12107,53 +12096,71 @@
}
},
{
- "ID": "14301",
+ "ID": "14470",
"typeID": "__group__",
- "zOrder": "247",
- "measuredW": "275",
- "measuredH": "49",
- "w": "275",
- "h": "49",
- "x": "242",
- "y": "766",
- "properties": {
- "controlName": "103-os-general-knowledge:threads-and-concurrency"
- },
+ "zOrder": "252",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "693",
+ "y": "1618",
"children": {
"controls": {
"control": [
{
"ID": "0",
- "typeID": "TextArea",
+ "typeID": "Icon",
"zOrder": "0",
- "w": "268",
- "h": "43",
- "measuredW": "200",
- "measuredH": "140",
- "x": "7",
- "y": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
}
},
{
"ID": "1",
- "typeID": "Label",
+ "typeID": "Icon",
"zOrder": "1",
- "w": "202",
- "measuredW": "200",
- "measuredH": "25",
- "x": "40",
- "y": "16",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
"properties": {
- "size": "17",
- "text": "Threads and Concurrency"
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10066329"
}
- },
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14471",
+ "typeID": "__group__",
+ "zOrder": "253",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "669",
+ "y": "1618",
+ "children": {
+ "controls": {
+ "control": [
{
- "ID": "2",
+ "ID": "0",
"typeID": "Icon",
- "zOrder": "2",
+ "zOrder": "0",
"measuredW": "24",
"measuredH": "24",
"x": "0",
@@ -12167,19 +12174,19 @@
}
},
{
- "ID": "3",
+ "ID": "1",
"typeID": "Icon",
- "zOrder": "3",
+ "zOrder": "1",
"measuredW": "24",
"measuredH": "24",
"x": "0",
"y": "0",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -12187,17 +12194,47 @@
}
},
{
- "ID": "14302",
+ "ID": "14472",
+ "typeID": "Arrow",
+ "zOrder": "46",
+ "w": "1",
+ "h": "90",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1149",
+ "y": "1960",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.07895678672230133,
+ "y": 90.41565770544025
+ },
+ "p1": {
+ "x": 0.4652789342214822,
+ "y": -0.0013322231473772612
+ },
+ "p2": {
+ "x": -0.07895678672230133,
+ "y": 0.128788397934386
+ }
+ }
+ },
+ {
+ "ID": "14477",
"typeID": "__group__",
- "zOrder": "248",
- "measuredW": "275",
- "measuredH": "48",
- "w": "275",
- "h": "48",
- "x": "242",
- "y": "667",
+ "zOrder": "254",
+ "measuredW": "226",
+ "measuredH": "50",
+ "w": "226",
+ "h": "50",
+ "x": "1195",
+ "y": "2143",
"properties": {
- "controlName": "101-os-general-knowledge:how-oss-work-in-general"
+ "controlName": "109-scaling-databases"
},
"children": {
"controls": {
@@ -12206,60 +12243,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "268",
- "h": "43",
+ "w": "226",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "7",
- "y": "5",
+ "x": "0",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "197",
- "measuredW": "195",
+ "measuredW": "144",
"measuredH": "25",
- "x": "42",
- "y": "14",
+ "x": "41",
+ "y": "12",
"properties": {
"size": "17",
- "text": "How OSs work in General"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "text": "Scaling Databases"
}
}
]
@@ -12267,107 +12271,337 @@
}
},
{
- "ID": "14303",
+ "ID": "14479",
"typeID": "Arrow",
- "zOrder": "249",
- "w": "58",
- "h": "1",
+ "zOrder": "45",
+ "w": "173",
+ "h": "3",
"measuredW": "150",
"measuredH": "100",
- "x": "1144",
- "y": "1140",
+ "x": "1378",
+ "y": "2182",
"properties": {
"color": "2848996",
- "curvature": "-1",
+ "curvature": "0",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 58,
- "y": 1
+ "x": 172.5,
+ "y": -0.5
},
"p1": {
- "x": 0.4872751951136749,
- "y": -0.011876484560570062
+ "x": 0.46527893422148214,
+ "y": -0.001332223147377259
},
"p2": {
"x": 0,
- "y": 1
+ "y": 2
+ }
+ }
+ },
+ {
+ "ID": "14480",
+ "typeID": "Arrow",
+ "zOrder": "44",
+ "w": "159",
+ "h": "48",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1373",
+ "y": "2123",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 158.5,
+ "y": -0.5
+ },
+ "p1": {
+ "x": 0.4189469596436937,
+ "y": 0.0748615633485625
},
+ "p2": {
+ "x": -0.450419321956133,
+ "y": 47.47915977655998
+ }
+ }
+ },
+ {
+ "ID": "14481",
+ "typeID": "Arrow",
+ "zOrder": "43",
+ "w": "171",
+ "h": "86",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1365",
+ "y": "2078",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
"rightArrow": "false",
- "stroke": "dotted"
+ "stroke": "dotted",
+ "p0": {
+ "x": 170.5,
+ "y": -0.5
+ },
+ "p1": {
+ "x": 0.4189469596436937,
+ "y": 0.07486156334856249
+ },
+ "p2": {
+ "x": -0.5,
+ "y": 85.5
+ }
}
},
{
- "ID": "14304",
+ "ID": "14482",
"typeID": "Arrow",
- "zOrder": "250",
- "w": "85",
- "h": "3",
+ "zOrder": "42",
+ "w": "178",
+ "h": "120",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1355",
+ "y": "2037",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 177.5,
+ "y": -0.5
+ },
+ "p1": {
+ "x": 0.4189469596436937,
+ "y": 0.07486156334856242
+ },
+ "p2": {
+ "x": -0.5,
+ "y": 119.5
+ }
+ }
+ },
+ {
+ "ID": "14483",
+ "typeID": "Arrow",
+ "zOrder": "41",
+ "w": "103",
+ "h": "5",
"measuredW": "150",
"measuredH": "100",
- "x": "807",
- "y": "1136",
+ "x": "853",
+ "y": "2166",
"properties": {
"color": "2848996",
"curvature": "-1",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": 83,
- "y": 1
+ "x": 0.04283790938666243,
+ "y": 4.965888182811341
},
"p1": {
- "x": 0.4872751951136748,
- "y": -0.01187648456057007
+ "x": 0.46992665036674774,
+ "y": -0.000488997555012224
},
"p2": {
- "x": 0,
- "y": 1
+ "x": 103.52951745304472,
+ "y": 0.09592679252182279
+ }
+ }
+ },
+ {
+ "ID": "14484",
+ "typeID": "Arrow",
+ "zOrder": "40",
+ "w": "71",
+ "h": "41",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "860",
+ "y": "2181",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.3477799948213942,
+ "y": 41.100482780854236
+ },
+ "p1": {
+ "x": 0.43463702116260416,
+ "y": 0.12389499062416165
},
+ "p2": {
+ "x": 70.96222015402327,
+ "y": -0.2941890366091684
+ }
+ }
+ },
+ {
+ "ID": "14485",
+ "typeID": "Arrow",
+ "zOrder": "39",
+ "w": "85",
+ "h": "82",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "865",
+ "y": "2188",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
"rightArrow": "false",
- "stroke": "dotted"
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.2177413851111396,
+ "y": 81.58260633617965
+ },
+ "p1": {
+ "x": 0.43463702116260416,
+ "y": 0.1238949906241616
+ },
+ "p2": {
+ "x": 85.44206571518248,
+ "y": 0.010753048825790756
+ }
+ }
+ },
+ {
+ "ID": "14486",
+ "typeID": "__group__",
+ "zOrder": "255",
+ "measuredW": "155",
+ "measuredH": "40",
+ "w": "155",
+ "h": "40",
+ "x": "956",
+ "y": "2422",
+ "properties": {
+ "controlName": "106-apis:graphql"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "146",
+ "h": "40",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "71",
+ "measuredH": "25",
+ "x": "37",
+ "y": "7",
+ "properties": {
+ "align": "center",
+ "size": "17",
+ "text": "GraphQL"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "131",
+ "y": "8",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "131",
+ "y": "8",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14305",
+ "ID": "14492",
"typeID": "Arrow",
- "zOrder": "251",
- "w": "56",
- "h": "1",
+ "zOrder": "38",
+ "w": "1",
+ "h": "76",
"measuredW": "150",
"measuredH": "100",
- "x": "440",
- "y": "1142",
+ "x": "1393",
+ "y": "3182",
"properties": {
"color": "2848996",
- "curvature": "-1",
+ "direction": "bottom",
"leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
"p0": {
- "x": -0.5,
- "y": 0
+ "x": 0,
+ "y": 76.34691492882303
},
"p1": {
- "x": 0.4872751951136748,
- "y": -0.011876484560570066
+ "x": 0.5702216182256714,
+ "y": -0.004517251466967862
},
"p2": {
- "x": 55,
- "y": 0
- },
- "rightArrow": "false",
- "stroke": "dotted"
+ "x": 0,
+ "y": 0.4406451246140932
+ }
}
},
{
- "ID": "14306",
+ "ID": "14493",
"typeID": "__group__",
- "zOrder": "252",
- "measuredW": "224",
- "measuredH": "62",
- "w": "224",
- "h": "62",
- "x": "222",
- "y": "1106",
+ "zOrder": "256",
+ "measuredW": "153",
+ "measuredH": "40",
+ "w": "153",
+ "h": "40",
+ "x": "1310",
+ "y": "3171",
"properties": {
- "controlName": "100-version-control-systems:git"
+ "controlName": "103-containerization:kubernetes"
},
"children": {
"controls": {
@@ -12376,27 +12610,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "216",
- "h": "54",
+ "w": "144",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "8",
- "y": "8",
+ "x": "9",
+ "y": "0",
"properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "144",
+ "measuredW": "90",
"measuredH": "25",
- "x": "44",
- "y": "23",
+ "x": "36",
+ "y": "7",
"properties": {
- "text": "Basic Usage of Git",
- "size": "17"
+ "size": "17",
+ "text": "Kubernetes"
}
},
{
@@ -12406,7 +12640,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -12422,7 +12656,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -12436,17 +12670,17 @@
}
},
{
- "ID": "14307",
+ "ID": "14496",
"typeID": "__group__",
- "zOrder": "253",
- "measuredW": "138",
- "measuredH": "57",
- "w": "138",
- "h": "57",
- "x": "1198",
- "y": "1008",
+ "zOrder": "257",
+ "measuredW": "169",
+ "measuredH": "102",
+ "w": "169",
+ "h": "102",
+ "x": "849",
+ "y": "1930",
"properties": {
- "controlName": "100-repo-hosting-services:github"
+ "controlName": "120-graph-databases"
},
"children": {
"controls": {
@@ -12455,764 +12689,757 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "131",
- "h": "49",
+ "w": "169",
+ "h": "102",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "8",
- "properties": {
- "color": "16776960"
- }
+ "y": "0"
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "54",
+ "measuredW": "85",
"measuredH": "25",
- "x": "39",
- "y": "21",
+ "x": "42",
+ "y": "64",
"properties": {
- "text": "GitHub",
- "size": "17"
+ "size": "17",
+ "text": "Graph DBs"
}
},
{
"ID": "2",
- "typeID": "Icon",
+ "typeID": "TextArea",
"zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "114",
- "y": "0",
+ "w": "143",
+ "h": "43",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "14",
+ "y": "15",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
+ "color": "16770457"
}
},
{
"ID": "3",
- "typeID": "Icon",
+ "typeID": "Label",
"zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "114",
- "y": "0",
+ "measuredW": "47",
+ "measuredH": "25",
+ "x": "62",
+ "y": "24",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
+ "size": "17",
+ "text": "Neo4j"
}
- }
- ]
+ },
+ {
+ "ID": "4",
+ "typeID": "__group__",
+ "zOrder": "4",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "5",
+ "y": "24",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "3700253",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "14497",
+ "typeID": "Arrow",
+ "zOrder": "37",
+ "w": "1",
+ "h": "106",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1228",
+ "y": "2071",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 0
+ },
+ "p1": {
+ "x": 0.46992665036674797,
+ "y": -0.0004889975550122331
+ },
+ "p2": {
+ "x": 0,
+ "y": 106.37551896409877
+ }
+ }
+ },
+ {
+ "ID": "14499",
+ "typeID": "Arrow",
+ "zOrder": "34",
+ "w": "111",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1105",
+ "y": "2166",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0.04261279713523436,
+ "y": 0.3755189640987737
+ },
+ "p1": {
+ "x": 0.4699266503667479,
+ "y": -0.0004889975550122328
+ },
+ "p2": {
+ "x": 111,
+ "y": 0.3755189640987737
+ }
+ }
+ },
+ {
+ "ID": "14500",
+ "typeID": "Arrow",
+ "zOrder": "36",
+ "w": "1",
+ "h": "99",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1031",
+ "y": "2178",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0,
+ "y": 0
+ },
+ "p1": {
+ "x": 0.4699266503667479,
+ "y": -0.0004889975550122329
+ },
+ "p2": {
+ "x": 0,
+ "y": 98.50806291693607
+ }
+ }
+ },
+ {
+ "ID": "14501",
+ "typeID": "Arrow",
+ "zOrder": "35",
+ "w": "201",
+ "h": "180",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1085",
+ "y": "2182",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.44276318265201553,
+ "y": 0.046489627115988696
+ },
+ "p1": {
+ "x": 0.49484282315015704,
+ "y": 0.17344202855363883
+ },
+ "p2": {
+ "x": 200.399593928993,
+ "y": 179.89103205690662
+ }
+ }
+ },
+ {
+ "ID": "14502",
+ "typeID": "Arrow",
+ "zOrder": "33",
+ "w": "105",
+ "h": "6",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1319",
+ "y": "2357",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 104.8501699892604,
+ "y": 0
+ },
+ "p1": {
+ "x": 0.465278934221482,
+ "y": -0.0013322231473772486
+ },
+ "p2": {
+ "x": -0.1831206274359829,
+ "y": 5.78948687398406
+ }
+ }
+ },
+ {
+ "ID": "14504",
+ "typeID": "Arrow",
+ "zOrder": "32",
+ "w": "80",
+ "h": "47",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1326",
+ "y": "2307",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 80.73800466406828,
+ "y": 0.19194556900447424
+ },
+ "p1": {
+ "x": 0.46208226221079857,
+ "y": 0.1105398457583562
+ },
+ "p2": {
+ "x": 0.4878500355812321,
+ "y": 47.3979188798794
+ }
+ }
+ },
+ {
+ "ID": "14507",
+ "typeID": "Arrow",
+ "zOrder": "31",
+ "w": "100",
+ "h": "33",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1312",
+ "y": "2371",
+ "properties": {
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 100.6387513279276,
+ "y": 32.964190856298046
+ },
+ "p1": {
+ "x": 0.3846922212510933,
+ "y": -0.13210138594081824
+ },
+ "p2": {
+ "x": 0.32605804231866387,
+ "y": -0.07999046131453724
}
}
},
{
- "ID": "14308",
- "typeID": "__group__",
- "zOrder": "254",
- "measuredW": "319",
- "measuredH": "78",
- "w": "319",
- "h": "78",
- "x": "853",
- "y": "1099",
+ "ID": "14508",
+ "typeID": "Arrow",
+ "zOrder": "29",
+ "w": "60",
+ "h": "30",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1514",
+ "y": "2361",
"properties": {
- "controlName": "105-repo-hosting-services"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "319",
- "h": "78",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "172",
- "measuredH": "25",
- "x": "74",
- "y": "15",
- "properties": {
- "text": "Repo hosting services",
- "size": "17"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "w": "279",
- "measuredW": "275",
- "measuredH": "23",
- "x": "20",
- "y": "41",
- "properties": {
- "size": "15",
- "text": "Create account and Learn to use GitHub"
- }
- }
- ]
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 60.31920991767379,
+ "y": 30.162697528578974
+ },
+ "p1": {
+ "x": 0.38469222125109326,
+ "y": -0.13210138594081827
+ },
+ "p2": {
+ "x": 0.32605804231866387,
+ "y": -0.07999046131453724
}
}
},
{
- "ID": "14309",
- "typeID": "__group__",
- "zOrder": "255",
- "measuredW": "336",
- "measuredH": "77",
- "w": "336",
- "h": "77",
- "x": "484",
- "y": "1100",
+ "ID": "14509",
+ "typeID": "Arrow",
+ "zOrder": "30",
+ "w": "61",
+ "h": "24",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1518",
+ "y": "2325",
"properties": {
- "controlName": "104-version-control-systems"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "336",
- "h": "77",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "186",
- "measuredH": "25",
- "x": "75",
- "y": "15",
- "properties": {
- "text": "Version Control Systems",
- "size": "17"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "w": "292",
- "measuredW": "285",
- "measuredH": "23",
- "x": "22",
- "y": "40",
- "properties": {
- "size": "15",
- "text": "What are they and why you should use one"
- }
- }
- ]
+ "color": "2848996",
+ "curvature": "0",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 61.039807248761235,
+ "y": 0.07433489335426202
+ },
+ "p1": {
+ "x": 0.46208226221079857,
+ "y": 0.11053984575835622
+ },
+ "p2": {
+ "x": 0.4878500355812321,
+ "y": 24.3979188798794
}
}
},
{
- "ID": "14310",
- "typeID": "__group__",
- "zOrder": "256",
- "measuredW": "140",
- "measuredH": "53",
- "w": "140",
- "h": "53",
- "x": "1198",
- "y": "1120",
+ "ID": "14510",
+ "typeID": "Arrow",
+ "zOrder": "28",
+ "w": "1",
+ "h": "231",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1287",
+ "y": "2373",
"properties": {
- "controlName": "102-repo-hosting-services:bitbucket"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "131",
- "h": "49",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "4",
- "properties": {
- "backgroundAlpha": "0.5",
- "color": "10066329"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "80",
- "measuredW": "75",
- "measuredH": "25",
- "x": "26",
- "y": "16",
- "properties": {
- "bold": "true",
- "color": "3355443",
- "size": "17",
- "text": "Bitbucket"
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "5",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 1,
+ "y": 230.99950276112986
+ },
+ "p1": {
+ "x": 0.5029666818804198,
+ "y": 0.0027384755819260605
+ },
+ "p2": {
+ "x": 1,
+ "y": -0.5
+ }
+ }
+ },
+ {
+ "ID": "14514",
+ "typeID": "Arrow",
+ "zOrder": "26",
+ "w": "155",
+ "h": "5",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1085",
+ "y": "2638",
+ "properties": {
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.009024679748335984,
+ "y": 4.145913893075885
+ },
+ "p1": {
+ "x": 0.5,
+ "y": 0
+ },
+ "p2": {
+ "x": 154.57320260870983,
+ "y": -0.3887220358042214
}
}
},
{
- "ID": "14311",
- "typeID": "__group__",
- "zOrder": "257",
- "measuredW": "140",
- "measuredH": "54",
- "w": "140",
- "h": "54",
- "x": "1198",
- "y": "1065",
+ "ID": "14515",
+ "typeID": "Arrow",
+ "zOrder": "24",
+ "w": "106",
+ "h": "32",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1126",
+ "y": "2595",
"properties": {
- "controlName": "101-repo-hosting-services:gitlab"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "131",
- "h": "49",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "5",
- "properties": {
- "backgroundAlpha": "0.5",
- "color": "10066329"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "52",
- "measuredW": "52",
- "measuredH": "25",
- "x": "40",
- "y": "17",
- "properties": {
- "bold": "true",
- "color": "3355443",
- "size": "17",
- "text": "GitLab"
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "4",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "5",
- "typeID": "Icon",
- "zOrder": "4",
- "measuredW": "24",
- "measuredH": "24",
- "x": "116",
- "y": "0",
- "properties": {
- "color": "3700253",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.3537016835969098,
+ "y": -0.2378178001258675
+ },
+ "p1": {
+ "x": 0.42742041137167663,
+ "y": -0.06871479103891165
+ },
+ "p2": {
+ "x": 105.32924772165484,
+ "y": 31.71284132239225
}
}
},
{
- "ID": "14312",
- "typeID": "__group__",
- "zOrder": "258",
- "measuredW": "178",
- "measuredH": "48",
- "w": "178",
- "h": "48",
- "x": "541",
- "y": "1294",
+ "ID": "14516",
+ "typeID": "Arrow",
+ "zOrder": "25",
+ "w": "111",
+ "h": "63",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1123",
+ "y": "2553",
"properties": {
- "controlName": "100-more-about-databases:orms"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "171",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "7",
- "y": "8",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "49",
- "measuredW": "49",
- "measuredH": "25",
- "x": "71",
- "y": "16",
- "properties": {
- "size": "17",
- "text": "ORMs"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.18855530697851464,
+ "y": -0.01944896034137855
+ },
+ "p1": {
+ "x": 0.45567203993408567,
+ "y": -0.07608673207967252
+ },
+ "p2": {
+ "x": 110.78699073107919,
+ "y": 62.65299777998234
+ }
+ }
+ },
+ {
+ "ID": "14517",
+ "typeID": "Arrow",
+ "zOrder": "23",
+ "w": "256",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "978",
+ "y": "2700",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0.2554500412181824,
+ "y": 0.3755189640987737
+ },
+ "p1": {
+ "x": 0.4699266503667478,
+ "y": -0.0004889975550122319
+ },
+ "p2": {
+ "x": 256,
+ "y": 0.3755189640987737
+ }
+ }
+ },
+ {
+ "ID": "14518",
+ "typeID": "Arrow",
+ "zOrder": "22",
+ "w": "1",
+ "h": "55",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "800",
+ "y": "2805",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 54.98738859570176
+ },
+ "p1": {
+ "x": 0.5702216182256715,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
+ },
+ "stroke": "dotted"
+ }
+ },
+ {
+ "ID": "14519",
+ "typeID": "Arrow",
+ "zOrder": "21",
+ "w": "1",
+ "h": "93",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "800",
+ "y": "2707",
+ "properties": {
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 92.900763034168
+ },
+ "p1": {
+ "x": 0.5702216182256716,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
}
}
},
{
- "ID": "14313",
- "typeID": "__group__",
- "zOrder": "259",
- "measuredW": "148",
- "measuredH": "57",
- "w": "148",
- "h": "57",
- "x": "545",
- "y": "2042",
+ "ID": "14520",
+ "typeID": "Arrow",
+ "zOrder": "20",
+ "w": "213",
+ "h": "88",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "974",
+ "y": "2796",
"properties": {
- "controlName": "113-ci-cd"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "140",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "7",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "62",
- "measuredW": "59",
- "measuredH": "25",
- "x": "47",
- "y": "20",
- "properties": {
- "size": "17",
- "text": "CI / CD"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.3036632412641893,
+ "y": 0.039045956690642925
+ },
+ "p1": {
+ "x": 0.5568669211533102,
+ "y": 0.12268077887612237
+ },
+ "p2": {
+ "x": 212.6720572404124,
+ "y": 87.96480211885091
}
}
},
{
- "ID": "14314",
- "typeID": "__group__",
- "zOrder": "260",
- "measuredW": "324",
- "measuredH": "50",
- "w": "324",
- "h": "50",
- "x": "521",
- "y": "2133",
+ "ID": "14521",
+ "typeID": "Arrow",
+ "zOrder": "19",
+ "w": "165",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1320",
+ "y": "2892",
"properties": {
- "controlName": "114-design-and-development-principles"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "324",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "275",
- "measuredH": "25",
- "x": "24",
- "y": "13",
- "properties": {
- "size": "17",
- "text": "Design and Development Principles"
- }
- }
- ]
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.1889462273964,
+ "y": 0.47782109382569615
+ },
+ "p1": {
+ "x": 0.4999999999999998,
+ "y": 1.557694937922094e-18
+ },
+ "p2": {
+ "x": 165.61962819175665,
+ "y": 1.780424888820562
}
}
},
{
- "ID": "14319",
- "typeID": "__group__",
- "zOrder": "261",
- "measuredW": "268",
- "measuredH": "46",
- "w": "268",
- "h": "46",
- "x": "168",
- "y": "2081",
+ "ID": "14522",
+ "typeID": "Arrow",
+ "zOrder": "18",
+ "w": "159",
+ "h": "35",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1314",
+ "y": "2908",
"properties": {
- "controlName": "100-design-and-development-principles:gof-design-patterns"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "260",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "6",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "168",
- "measuredW": "164",
- "measuredH": "25",
- "x": "54",
- "y": "13",
- "properties": {
- "size": "17",
- "text": "GOF Design Patterns"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.3240727475786116,
+ "y": 0.10906663376545112
+ },
+ "p1": {
+ "x": 0.49706031424227115,
+ "y": 0.061378611251901104
+ },
+ "p2": {
+ "x": 158.59359024180708,
+ "y": 35.27936909862956
+ }
+ }
+ },
+ {
+ "ID": "14523",
+ "typeID": "Arrow",
+ "zOrder": "17",
+ "w": "165",
+ "h": "75",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1307",
+ "y": "2915",
+ "properties": {
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.1629082774466042,
+ "y": -0.37791439125976467
+ },
+ "p1": {
+ "x": 0.497060314242271,
+ "y": 0.0613786112519011
+ },
+ "p2": {
+ "x": 165.59359024180708,
+ "y": 74.27936909862956
}
}
},
{
- "ID": "14320",
- "typeID": "__group__",
- "zOrder": "262",
- "measuredW": "268",
- "measuredH": "45",
- "w": "268",
- "h": "45",
- "x": "168",
- "y": "2127",
+ "ID": "14524",
+ "typeID": "Arrow",
+ "zOrder": "16",
+ "w": "172",
+ "h": "116",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1297",
+ "y": "2915",
"properties": {
- "controlName": "101-design-and-development-principles:domain-driven-design"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "260",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "8",
- "y": "5",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "175",
- "measuredW": "172",
- "measuredH": "25",
- "x": "50",
- "y": "12",
- "properties": {
- "size": "17",
- "text": "Domain Driven Design"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "10066329",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.2579220825130051,
+ "y": -0.37791439125976467
+ },
+ "p1": {
+ "x": 0.49706031424227093,
+ "y": 0.061378611251901014
+ },
+ "p2": {
+ "x": 171.68577885682225,
+ "y": 115.55382336329194
}
}
},
{
- "ID": "14321",
+ "ID": "14526",
"typeID": "__group__",
- "zOrder": "263",
+ "zOrder": "266",
"measuredW": "268",
- "measuredH": "43",
+ "measuredH": "40",
"w": "268",
- "h": "43",
- "x": "168",
- "y": "2174",
+ "h": "40",
+ "x": "667",
+ "y": "2987",
"properties": {
- "controlName": "102-design-and-development-principles:test-driven-development"
+ "controlName": "103-design-and-development-principles:cqrs"
},
"children": {
"controls": {
@@ -13226,7 +13453,7 @@
"measuredW": "200",
"measuredH": "140",
"x": "8",
- "y": "3",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -13235,14 +13462,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "196",
- "measuredW": "194",
+ "measuredW": "48",
"measuredH": "25",
- "x": "40",
- "y": "10",
+ "x": "114",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Test Driven Development"
+ "text": "CQRS"
}
},
{
@@ -13252,7 +13478,7 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -13268,13 +13494,13 @@
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10066329",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -13282,17 +13508,17 @@
}
},
{
- "ID": "14322",
+ "ID": "14527",
"typeID": "__group__",
- "zOrder": "264",
- "measuredW": "254",
+ "zOrder": "267",
+ "measuredW": "268",
"measuredH": "40",
- "w": "254",
+ "w": "268",
"h": "40",
- "x": "977",
- "y": "2364",
+ "x": "667",
+ "y": "3032",
"properties": {
- "controlName": "104-architectural-patterns:serverless"
+ "controlName": "104-design-and-development-principles:event-sourcing"
},
"children": {
"controls": {
@@ -13301,159 +13527,37 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "245",
- "h": "37",
+ "w": "260",
+ "h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "3",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "w": "87",
- "measuredW": "82",
- "measuredH": "25",
- "x": "79",
- "y": "9",
- "properties": {
- "size": "17",
- "text": "Serverless"
- }
- },
- {
- "ID": "2",
- "typeID": "Icon",
- "zOrder": "2",
- "measuredW": "24",
- "measuredH": "24",
- "x": "230",
- "y": "0",
- "properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
- }
- }
- },
- {
- "ID": "3",
- "typeID": "Icon",
- "zOrder": "3",
- "measuredW": "24",
- "measuredH": "24",
- "x": "230",
+ "x": "8",
"y": "0",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
- }
- }
- }
- ]
- }
- }
- },
- {
- "ID": "14323",
- "typeID": "__group__",
- "zOrder": "265",
- "measuredW": "328",
- "measuredH": "138",
- "w": "328",
- "h": "138",
- "x": "581",
- "y": "2844",
- "properties": {
- "controlName": "123-scalability"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "318",
- "h": "129",
- "measuredW": "200",
- "measuredH": "140",
- "x": "10",
- "y": "9",
- "properties": {
- "color": "16776960"
+ "color": "16770457"
}
},
{
"ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "134",
- "measuredH": "25",
- "x": "102",
- "y": "25",
- "properties": {
- "text": "Building for Scale",
- "size": "17"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "w": "264",
- "measuredW": "260",
- "measuredH": "24",
- "x": "37",
- "y": "53",
- "properties": {
- "size": "16",
- "text": "General topics that you should learn"
- }
- },
- {
- "ID": "3",
- "typeID": "Label",
- "zOrder": "3",
- "w": "270",
- "measuredW": "258",
- "measuredH": "24",
- "x": "34",
- "y": "76",
- "properties": {
- "size": "16",
- "text": "and care about for the sustainability"
- }
- },
- {
- "ID": "4",
- "typeID": "Label",
- "zOrder": "4",
- "w": "108",
- "measuredW": "105",
- "measuredH": "24",
- "x": "115",
- "y": "100",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "116",
+ "measuredH": "25",
+ "x": "80",
+ "y": "7",
"properties": {
- "size": "16",
- "text": "of the product."
+ "size": "17",
+ "text": "Event Sourcing"
}
},
{
- "ID": "5",
+ "ID": "2",
"typeID": "Icon",
- "zOrder": "5",
+ "zOrder": "2",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
"color": "16777215",
"icon": {
@@ -13463,19 +13567,19 @@
}
},
{
- "ID": "6",
+ "ID": "3",
"typeID": "Icon",
- "zOrder": "6",
+ "zOrder": "3",
"measuredW": "24",
"measuredH": "24",
"x": "0",
- "y": "0",
+ "y": "8",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -13483,17 +13587,17 @@
}
},
{
- "ID": "14324",
+ "ID": "14528",
"typeID": "__group__",
- "zOrder": "266",
- "measuredW": "210",
- "measuredH": "48",
- "w": "210",
- "h": "48",
- "x": "335",
- "y": "2770",
+ "zOrder": "268",
+ "measuredW": "254",
+ "measuredH": "37",
+ "w": "254",
+ "h": "37",
+ "x": "1461",
+ "y": "3052",
"properties": {
- "controlName": "100-scalability:mitigation-strategies"
+ "controlName": "105-architectural-patterns:service-mesh"
},
"children": {
"controls": {
@@ -13502,12 +13606,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "199",
- "h": "40",
+ "w": "245",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
"x": "0",
- "y": "8",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -13516,14 +13620,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "159",
- "measuredW": "159",
+ "measuredW": "105",
"measuredH": "25",
- "x": "20",
- "y": "15",
+ "x": "70",
+ "y": "6",
"properties": {
"size": "17",
- "text": "Mitigation Strategies"
+ "text": "Service Mesh"
}
},
{
@@ -13532,8 +13635,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "186",
- "y": "0",
+ "x": "230",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -13548,8 +13651,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "186",
- "y": "0",
+ "x": "230",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -13563,17 +13666,17 @@
}
},
{
- "ID": "14325",
+ "ID": "14529",
"typeID": "__group__",
- "zOrder": "267",
- "measuredW": "198",
- "measuredH": "36",
- "w": "198",
- "h": "36",
- "x": "336",
- "y": "2915",
+ "zOrder": "269",
+ "measuredW": "254",
+ "measuredH": "37",
+ "w": "254",
+ "h": "37",
+ "x": "1461",
+ "y": "3095",
"properties": {
- "controlName": "101-scalability:instrumentation-monitoring-telemetry"
+ "controlName": "106-architectural-patterns:twelve-factor-apps"
},
"children": {
"controls": {
@@ -13582,8 +13685,8 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "198",
- "h": "36",
+ "w": "245",
+ "h": "37",
"measuredW": "200",
"measuredH": "140",
"x": "0",
@@ -13596,14 +13699,45 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "155",
- "measuredW": "154",
+ "measuredW": "149",
"measuredH": "25",
- "x": "22",
+ "x": "48",
"y": "6",
"properties": {
"size": "17",
- "text": "Understand the Diff."
+ "text": "Twelve Factor Apps"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "230",
+ "y": "7",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Icon",
+ "zOrder": "3",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "230",
+ "y": "7",
+ "properties": {
+ "color": "10027263",
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
}
}
]
@@ -13611,129 +13745,151 @@
}
},
{
- "ID": "14326",
- "typeID": "Label",
- "zOrder": "268",
- "w": "84",
- "measuredW": "83",
- "measuredH": "25",
- "x": "189",
- "y": "2926",
- "properties": {
- "size": "17",
- "text": "Monitoring"
- }
- },
- {
- "ID": "14327",
- "typeID": "Label",
- "zOrder": "269",
- "w": "78",
- "measuredW": "73",
- "measuredH": "25",
- "x": "182",
- "y": "2769",
- "properties": {
- "size": "17",
- "text": "Throttling"
- }
- },
- {
- "ID": "14328",
- "typeID": "Label",
- "zOrder": "270",
- "w": "109",
- "measuredW": "107",
- "measuredH": "25",
- "x": "151",
- "y": "2797",
- "properties": {
- "size": "17",
- "text": "Backpressure"
- }
- },
- {
- "ID": "14329",
- "typeID": "Label",
- "zOrder": "271",
- "w": "100",
- "measuredW": "94",
- "measuredH": "25",
- "x": "160",
- "y": "2825",
- "properties": {
- "size": "17",
- "text": "Loadshifting"
- }
- },
- {
- "ID": "14330",
- "typeID": "Label",
- "zOrder": "272",
- "w": "70",
- "measuredW": "66",
- "measuredH": "25",
- "x": "188",
- "y": "2719",
+ "ID": "14530",
+ "typeID": "Arrow",
+ "zOrder": "14",
+ "w": "182",
+ "h": "159",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1286",
+ "y": "2918",
"properties": {
- "size": "17",
- "text": "Graceful"
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.33005433997027467,
+ "y": 0.4838026862175866
+ },
+ "p1": {
+ "x": 0.4970603142422708,
+ "y": 0.06137861125190098
+ },
+ "p2": {
+ "x": 182.03447695932482,
+ "y": 159.40146567560305
+ }
}
},
{
- "ID": "14331",
- "typeID": "Label",
- "zOrder": "273",
- "w": "84",
- "measuredW": "76",
- "measuredH": "25",
- "x": "187",
- "y": "2951",
+ "ID": "14531",
+ "typeID": "Arrow",
+ "zOrder": "15",
+ "w": "205",
+ "h": "203",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1263",
+ "y": "2918",
"properties": {
- "size": "17",
- "text": "Telemetry"
+ "curvature": "0",
+ "rightArrow": "false",
+ "leftArrow": "false",
+ "color": "10027263",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.33005433997027467,
+ "y": 0.4838026862175866
+ },
+ "p1": {
+ "x": 0.49706031424227093,
+ "y": 0.06137861125190101
+ },
+ "p2": {
+ "x": 205.03447695932482,
+ "y": 203.68999470543167
+ }
}
},
{
- "ID": "14332",
- "typeID": "Label",
- "zOrder": "274",
- "w": "124",
- "measuredW": "121",
- "measuredH": "25",
- "x": "149",
- "y": "2901",
+ "ID": "14534",
+ "typeID": "Arrow",
+ "zOrder": "13",
+ "w": "1",
+ "h": "111",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1184",
+ "y": "2908",
"properties": {
- "size": "17",
- "text": "Instrumentation"
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 111.43559679832697
+ },
+ "p1": {
+ "x": 0.5702216182256715,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
+ }
}
},
{
- "ID": "14333",
- "typeID": "Label",
- "zOrder": "275",
- "w": "118",
- "measuredW": "116",
- "measuredH": "25",
- "x": "142",
- "y": "2850",
+ "ID": "14535",
+ "typeID": "__group__",
+ "zOrder": "270",
+ "measuredW": "198",
+ "measuredH": "159",
+ "w": "198",
+ "h": "159",
+ "x": "1110",
+ "y": "2975",
"properties": {
- "size": "17",
- "text": "Circuit Breaker"
+ "controlName": "116-search-engines"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "198",
+ "h": "159",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "126",
+ "measuredW": "122",
+ "measuredH": "25",
+ "x": "36",
+ "y": "116",
+ "properties": {
+ "size": "17",
+ "text": "Search Engines"
+ }
+ }
+ ]
+ }
}
},
{
- "ID": "14334",
+ "ID": "14542",
"typeID": "__group__",
- "zOrder": "276",
- "measuredW": "342",
- "measuredH": "49",
- "w": "342",
- "h": "49",
- "x": "958",
- "y": "2879",
+ "zOrder": "273",
+ "measuredW": "169",
+ "measuredH": "40",
+ "w": "169",
+ "h": "40",
+ "x": "767",
+ "y": "3109",
"properties": {
- "controlName": "102-scalability:migration-strategies"
+ "controlName": "100-message-brokers:rabbitmq"
},
"children": {
"controls": {
@@ -13742,12 +13898,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "333",
+ "w": "160",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "9",
+ "x": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -13756,13 +13912,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "measuredW": "155",
+ "measuredW": "78",
"measuredH": "25",
- "x": "93",
- "y": "16",
+ "x": "50",
+ "y": "7",
"properties": {
- "text": "Migration Strategies",
- "size": "17"
+ "size": "17",
+ "text": "RabbitMQ"
}
},
{
@@ -13771,8 +13927,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "318",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -13787,8 +13943,8 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "318",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
"color": "10027263",
"icon": {
@@ -13802,17 +13958,17 @@
}
},
{
- "ID": "14335",
+ "ID": "14543",
"typeID": "__group__",
- "zOrder": "277",
- "measuredW": "341",
- "measuredH": "42",
- "w": "341",
- "h": "42",
- "x": "959",
- "y": "2932",
+ "zOrder": "274",
+ "measuredW": "169",
+ "measuredH": "40",
+ "w": "169",
+ "h": "40",
+ "x": "767",
+ "y": "3154",
"properties": {
- "controlName": "103-scalability:horizontal-vertical-scaling"
+ "controlName": "100-message-brokers:rabbitmq"
},
"children": {
"controls": {
@@ -13821,12 +13977,12 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "332",
+ "w": "160",
"h": "40",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "2",
+ "x": "9",
+ "y": "0",
"properties": {
"color": "16770457"
}
@@ -13835,14 +13991,13 @@
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "230",
- "measuredW": "221",
+ "measuredW": "44",
"measuredH": "25",
- "x": "54",
- "y": "9",
+ "x": "67",
+ "y": "7",
"properties": {
"size": "17",
- "text": "Horizontal vs Vertical Scaling"
+ "text": "Kafka"
}
},
{
@@ -13851,8 +14006,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "317",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
"color": "16777215",
"icon": {
@@ -13867,14 +14022,14 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "317",
- "y": "0",
+ "x": "0",
+ "y": "7",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "40463"
}
}
]
@@ -13882,127 +14037,283 @@
}
},
{
- "ID": "14336",
- "typeID": "Label",
- "zOrder": "278",
- "w": "96",
- "measuredW": "96",
- "measuredH": "25",
- "x": "162",
- "y": "2739",
+ "ID": "14544",
+ "typeID": "Arrow",
+ "zOrder": "12",
+ "w": "1",
+ "h": "69",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "886",
+ "y": "3181",
"properties": {
- "size": "17",
- "text": "Degradation"
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 68.99646851243597
+ },
+ "p1": {
+ "x": 0.5702216182256716,
+ "y": -0.004517251466967864
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
+ },
+ "stroke": "dotted"
}
},
{
- "ID": "14337",
- "typeID": "Icon",
- "zOrder": "279",
- "measuredW": "24",
- "measuredH": "24",
- "x": "451",
- "y": "1521",
+ "ID": "14545",
+ "typeID": "Arrow",
+ "zOrder": "11",
+ "w": "177",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1037",
+ "y": "3266",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.12737918400853232,
+ "y": 0.3755189640987737
+ },
+ "p1": {
+ "x": 0.46992665036674786,
+ "y": -0.000488997555012232
+ },
+ "p2": {
+ "x": 177.02673693530664,
+ "y": 0.3755189640987737
}
}
},
{
- "ID": "14338",
- "typeID": "Icon",
- "zOrder": "280",
- "measuredW": "24",
- "measuredH": "24",
- "x": "451",
- "y": "1521",
+ "ID": "14546",
+ "typeID": "Arrow",
+ "zOrder": "10",
+ "w": "164",
+ "h": "8",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1427",
+ "y": "3265",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.24326201347912502,
+ "y": 8.106467390752641
+ },
+ "p1": {
+ "x": 0.4699266503667479,
+ "y": -0.000488997555012235
+ },
+ "p2": {
+ "x": 164.02673693530664,
+ "y": 0.3755189640987737
+ },
+ "stroke": "dotted"
+ }
+ },
+ {
+ "ID": "14547",
+ "typeID": "Arrow",
+ "zOrder": "9",
+ "w": "108",
+ "h": "45",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1438",
+ "y": "3215",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.0021112908482336934,
+ "y": 45.455422423384334
+ },
+ "p1": {
+ "x": 0.5000719114051478,
+ "y": -0.07795196318136031
+ },
+ "p2": {
+ "x": 108.23882934499807,
+ "y": 0.47392920607535416
}
}
},
{
- "ID": "14339",
- "typeID": "Icon",
- "zOrder": "281",
- "measuredW": "24",
- "measuredH": "24",
- "x": "1292",
- "y": "1723",
+ "ID": "14548",
+ "typeID": "Arrow",
+ "zOrder": "8",
+ "w": "1",
+ "h": "88",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1393",
+ "y": "3267",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 87.63542384712537
+ },
+ "p1": {
+ "x": 0.5702216182256716,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
}
}
},
{
- "ID": "14340",
- "typeID": "Icon",
- "zOrder": "282",
- "measuredW": "24",
- "measuredH": "24",
- "x": "1292",
- "y": "1723",
+ "ID": "14549",
+ "typeID": "Arrow",
+ "zOrder": "7",
+ "w": "146",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1453",
+ "y": "3349",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": -0.238336247222378,
+ "y": 0.01273719496157355
+ },
+ "p1": {
+ "x": 0.46992665036674774,
+ "y": -0.0004889975550122332
+ },
+ "p2": {
+ "x": 145.95151670903215,
+ "y": 0.2297521840846457
}
}
},
{
- "ID": "14341",
- "typeID": "Icon",
- "zOrder": "283",
- "measuredW": "24",
- "measuredH": "24",
- "x": "1297",
- "y": "1930",
+ "ID": "14550",
+ "typeID": "Arrow",
+ "zOrder": "6",
+ "w": "101",
+ "h": "38",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1454",
+ "y": "3360",
"properties": {
- "color": "16777215",
- "icon": {
- "ID": "circle",
- "size": "small"
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 0.16733541581857025,
+ "y": 0.25811049928915963
+ },
+ "p1": {
+ "x": 0.5831524955612538,
+ "y": 0.09015584927993948
+ },
+ "p2": {
+ "x": 101.37569515476389,
+ "y": 38.211245401393626
+ }
+ }
+ },
+ {
+ "ID": "14551",
+ "typeID": "Arrow",
+ "zOrder": "5",
+ "w": "177",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "1190",
+ "y": "3353",
+ "properties": {
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.12737918400853232,
+ "y": 0.3755189640987737
+ },
+ "p1": {
+ "x": 0.46992665036674786,
+ "y": -0.000488997555012232
+ },
+ "p2": {
+ "x": 177.02673693530664,
+ "y": 0.3755189640987737
}
}
},
{
- "ID": "14342",
- "typeID": "Icon",
- "zOrder": "284",
- "measuredW": "24",
- "measuredH": "24",
- "x": "1297",
- "y": "1930",
+ "ID": "14552",
+ "typeID": "Arrow",
+ "zOrder": "4",
+ "w": "177",
+ "h": "1",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "998",
+ "y": "3358",
"properties": {
- "color": "10027263",
- "icon": {
- "ID": "check-circle",
- "size": "small"
+ "color": "2848996",
+ "curvature": "-1",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": -0.12737918400853232,
+ "y": 0.3755189640987737
+ },
+ "p1": {
+ "x": 0.46992665036674786,
+ "y": -0.000488997555012232
+ },
+ "p2": {
+ "x": 177.02673693530664,
+ "y": 0.3755189640987737
}
}
},
{
- "ID": "14343",
+ "ID": "14553",
"typeID": "__group__",
- "zOrder": "285",
- "measuredW": "197",
- "measuredH": "47",
- "w": "197",
- "h": "47",
- "x": "1106",
- "y": "1687",
+ "zOrder": "275",
+ "measuredW": "207",
+ "measuredH": "50",
+ "w": "207",
+ "h": "50",
+ "x": "917",
+ "y": "3332",
"properties": {
- "controlName": "103-apis:grpc"
+ "controlName": "122-server-sent-events"
},
"children": {
"controls": {
@@ -14011,29 +14322,27 @@
"ID": "0",
"typeID": "TextArea",
"zOrder": "0",
- "w": "188",
- "h": "40",
+ "w": "197",
+ "h": "50",
"measuredW": "200",
"measuredH": "140",
- "x": "0",
- "y": "7",
+ "x": "10",
+ "y": "0",
"properties": {
- "color": "16770457"
+ "color": "16776960"
}
},
{
"ID": "1",
"typeID": "Label",
"zOrder": "1",
- "w": "90",
- "measuredW": "45",
+ "measuredW": "148",
"measuredH": "25",
- "x": "49",
- "y": "15",
+ "x": "35",
+ "y": "12",
"properties": {
- "align": "center",
"size": "17",
- "text": "gRPC"
+ "text": "Server Sent Events"
}
},
{
@@ -14042,8 +14351,8 @@
"zOrder": "2",
"measuredW": "24",
"measuredH": "24",
- "x": "173",
- "y": "0",
+ "x": "0",
+ "y": "13",
"properties": {
"color": "16777215",
"icon": {
@@ -14058,14 +14367,14 @@
"zOrder": "3",
"measuredW": "24",
"measuredH": "24",
- "x": "173",
- "y": "0",
+ "x": "0",
+ "y": "13",
"properties": {
- "color": "10027263",
"icon": {
"ID": "check-circle",
"size": "small"
- }
+ },
+ "color": "10027263"
}
}
]
@@ -14073,203 +14382,121 @@
}
},
{
- "ID": "14344",
- "typeID": "__group__",
- "zOrder": "286",
- "measuredW": "326",
- "measuredH": "40",
- "w": "326",
- "h": "40",
- "x": "1010",
- "y": "1247",
+ "ID": "14554",
+ "typeID": "Arrow",
+ "zOrder": "3",
+ "w": "1",
+ "h": "88",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "992",
+ "y": "3355",
"properties": {
- "controlName": "101-nosql-databases:column-databases"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "326",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "96",
- "measuredH": "25",
- "x": "15",
- "y": "8",
- "properties": {
- "size": "17",
- "text": "Column DBs"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "measuredW": "83",
- "measuredH": "25",
- "x": "120",
- "y": "8",
- "properties": {
- "size": "17",
- "text": "{color:blue}Cassandra{color}"
- }
- }
- ]
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "p0": {
+ "x": 0,
+ "y": 87.63542384712537
+ },
+ "p1": {
+ "x": 0.5702216182256716,
+ "y": -0.004517251466967863
+ },
+ "p2": {
+ "x": 0,
+ "y": 0.10236492325770996
}
}
},
{
- "ID": "14345",
- "typeID": "__group__",
- "zOrder": "287",
- "measuredW": "328",
- "measuredH": "40",
- "w": "328",
- "h": "40",
- "x": "1009",
- "y": "1292",
+ "ID": "14555",
+ "typeID": "Arrow",
+ "zOrder": "2",
+ "w": "152",
+ "h": "34",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "806",
+ "y": "3420",
"properties": {
- "controlName": "102-nosql-databases:timeseries-databases"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "328",
- "h": "40",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "90",
- "measuredH": "25",
- "x": "16",
- "y": "8",
- "properties": {
- "size": "17",
- "text": "Time series"
- }
- },
- {
- "ID": "2",
- "typeID": "Label",
- "zOrder": "2",
- "measuredW": "175",
- "measuredH": "25",
- "x": "120",
- "y": "9",
- "properties": {
- "size": "17",
- "text": "{color:blue}InfluxDB{color}, TimescaleDB"
- }
- }
- ]
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 151.37091002541922,
+ "y": 34.11258943934581
+ },
+ "p1": {
+ "x": 0.6049019607843139,
+ "y": 0.06960784313725484
+ },
+ "p2": {
+ "x": -0.44162958299875754,
+ "y": 0.37646952636396236
}
}
},
{
- "ID": "14357",
+ "ID": "14556",
"typeID": "Arrow",
- "zOrder": "0",
- "w": "86",
- "h": "20",
+ "zOrder": "1",
+ "w": "142",
+ "h": "76",
"measuredW": "150",
"measuredH": "100",
- "x": "332",
- "y": "2320",
+ "x": "817",
+ "y": "3373",
"properties": {
"color": "2848996",
- "curvature": "0",
"direction": "bottom",
"leftArrow": "false",
"rightArrow": "false",
"stroke": "dotted",
"p0": {
- "x": 86.3287376086613,
- "y": -0.09050190496964206
+ "x": 141.77658168846017,
+ "y": 75.48990278718202
},
"p1": {
- "x": 0.5156380838817266,
- "y": -0.06987812461501966
+ "x": 0.604901960784314,
+ "y": 0.06960784313725492
},
"p2": {
- "x": 0.05062682870931212,
- "y": 19.596770192063104
+ "x": -0.19625627867151252,
+ "y": -0.41636701702691425
}
}
},
{
- "ID": "14358",
- "typeID": "__group__",
- "zOrder": "288",
- "measuredW": "324",
- "measuredH": "50",
- "w": "324",
- "h": "50",
- "x": "521",
- "y": "2187",
+ "ID": "14557",
+ "typeID": "Arrow",
+ "zOrder": "0",
+ "w": "145",
+ "h": "112",
+ "measuredW": "150",
+ "measuredH": "100",
+ "x": "821",
+ "y": "3334",
"properties": {
- "controlName": "ext_link:roadmap.sh/software-design-architecture"
- },
- "children": {
- "controls": {
- "control": [
- {
- "ID": "0",
- "typeID": "TextArea",
- "zOrder": "0",
- "w": "324",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "0",
- "y": "0",
- "properties": {
- "color": "4273622",
- "borderColor": "4273622",
- "textColor": "16777215"
- }
- },
- {
- "ID": "1",
- "typeID": "Label",
- "zOrder": "1",
- "measuredW": "240",
- "measuredH": "25",
- "x": "42",
- "y": "12",
- "properties": {
- "text": "Software Design & Architecture",
- "size": "17",
- "color": "16777215"
- }
- }
- ]
+ "color": "2848996",
+ "direction": "bottom",
+ "leftArrow": "false",
+ "rightArrow": "false",
+ "stroke": "dotted",
+ "p0": {
+ "x": 144.80494000366468,
+ "y": 111.67855946110012
+ },
+ "p1": {
+ "x": 0.604901960784314,
+ "y": 0.06960784313725493
+ },
+ "p2": {
+ "x": -0.19625627867151252,
+ "y": -0.41636701702691425
}
}
}
@@ -14283,10 +14510,10 @@
},
"branchID": "Master",
"resourceID": "4BE92169-157F-4FC5-8E20-403CBCF7A6C6",
- "mockupH": "3053",
- "mockupW": "1196",
- "measuredW": "1338",
- "measuredH": "3232",
+ "mockupH": "3653",
+ "mockupW": "1177",
+ "measuredW": "1797",
+ "measuredH": "4285",
"version": "1.0"
},
"groupOffset": {