From 0400b1d6c05d929c2bf84ce67cc40ff423362dab Mon Sep 17 00:00:00 2001 From: Kamran Ahmed Date: Sun, 9 Jan 2022 11:29:03 +0400 Subject: [PATCH] Add interactivity for the backend roadmap --- components/roadmap/roadmap-page-header.tsx | 4 +- content/roadmaps.json | 23 +- .../roadmaps/101-backend/content-paths.json | 138 + .../100-how-does-the-internet-work.md | 10 + .../content/100-internet/101-what-is-http.md | 9 + .../102-browsers-and-how-they-work.md | 8 + .../100-internet/103-dns-and-how-it-works.md | 7 + .../100-internet/104-what-is-domain-name.md | 8 + .../100-internet/105-what-is-hosting.md | 8 + .../content/100-internet/readme.md | 10 + .../content/101-basic-frontend/100-html.md | 8 + .../content/101-basic-frontend/101-css.md | 12 + .../101-basic-frontend/102-javascript.md | 9 + .../content/101-basic-frontend/readme.md | 8 + .../100-terminal-usage.md | 1 + .../101-how-oss-work-in-general.md | 1 + .../102-process-management.md | 1 + .../103-threads-and-concurrency.md | 1 + .../104-basic-terminal-commands.md | 1 + .../105-memory-management.md | 1 + .../106-interprocess-communication.md | 1 + .../107-io-management.md | 1 + .../108-posix-basics.md | 1 + .../109-basic-networking-concepts.md | 1 + .../102-os-general-knowledge/readme.md | 1 + .../content/103-learn-a-language/100-go.md | 1 + .../content/103-learn-a-language/101-rust.md | 1 + .../content/103-learn-a-language/102-java.md | 1 + .../103-learn-a-language/103-csharp.md | 1 + .../content/103-learn-a-language/103-php.md | 1 + .../103-learn-a-language/105-javascript.md | 1 + .../103-learn-a-language/106-python.md | 1 + .../content/103-learn-a-language/107-ruby.md | 1 + .../content/103-learn-a-language/readme.md | 1 + .../100-basic-usage-of-git.md | 1 + .../104-version-control-systems/readme.md | 1 + .../105-repo-hosting-services/100-github.md | 1 + .../105-repo-hosting-services/101-gitlab.md | 1 + .../102-bitbucket.md | 1 + .../105-repo-hosting-services/readme.md | 1 + .../100-postgresql.md | 1 + .../106-relational-databases/101-mysql.md | 1 + .../106-relational-databases/102-mariadb.md | 1 + .../106-relational-databases/103-mssql.md | 1 + .../106-relational-databases/104-oracle.md | 1 + .../106-relational-databases/readme.md | 1 + .../100-document-databases.md | 1 + .../101-column-databases.md | 1 + .../102-timeseries-databases.md | 1 + .../103-realtime-databases.md | 1 + .../content/107-nosql-databases/readme.md | 1 + .../108-more-about-databases/100-orms.md | 1 + .../108-more-about-databases/101-acid.md | 1 + .../102-transactions.md | 1 + .../103-n-plus-one-problem.md | 1 + .../104-database-normalization.md | 1 + .../105-database-indexes.md | 1 + .../106-data-replication.md | 1 + .../107-sharding-strategies.md | 1 + .../108-cap-theorem.md | 1 + .../108-more-about-databases/readme.md | 1 + .../101-backend/content/109-apis/100-rest.md | 1 + .../content/109-apis/101-json-apis.md | 1 + .../101-backend/content/109-apis/102-soap.md | 1 + .../101-backend/content/109-apis/103-grpc.md | 1 + .../content/109-apis/104-hateoas.md | 1 + .../content/109-apis/105-open-api-spec.md | 1 + .../106-authentication/100-cookie-based.md | 1 + .../109-apis/106-authentication/101-oauth.md | 1 + .../102-basic-authentication.md | 1 + .../103-token-authentication.md | 1 + .../109-apis/106-authentication/104-jwt.md | 1 + .../109-apis/106-authentication/105-openid.md | 1 + .../109-apis/106-authentication/105-saml.md | 1 + .../109-apis/106-authentication/readme.md | 1 + .../101-backend/content/109-apis/readme.md | 1 + .../content/110-caching/100-cdn.md | 1 + .../110-caching/101-server-side/100-redis.md | 1 + .../101-server-side/101-memcached.md | 1 + .../110-caching/101-server-side/readme.md | 1 + .../content/110-caching/102-client-side.md | 1 + .../101-backend/content/110-caching/readme.md | 1 + .../111-web-security-knowledge/100-md5.md | 1 + .../101-sha-family.md | 1 + .../111-web-security-knowledge/102-bcrypt.md | 1 + .../111-web-security-knowledge/104-scrypt.md | 1 + .../105-content-security-policy.md | 1 + .../111-web-security-knowledge/105-https.md | 1 + .../111-web-security-knowledge/106-cors.md | 1 + .../111-web-security-knowledge/107-ssl-tls.md | 1 + .../111-web-security-knowledge/108-owasp.md | 1 + .../111-web-security-knowledge/readme.md | 1 + .../112-testing/100-integration-testing.md | 1 + .../content/112-testing/101-unit-testing.md | 1 + .../112-testing/102-functional-testing.md | 1 + .../101-backend/content/112-testing/readme.md | 1 + .../roadmaps/101-backend/content/113-ci-cd.md | 1 + .../100-gof-design-patterns.md | 1 + .../101-domain-driven-design.md | 1 + .../102-test-driven-development.md | 1 + .../103-solid.md | 1 + .../104-kiss.md | 1 + .../105-yagni.md | 1 + .../106-dry.md | 1 + .../readme.md | 1 + .../100-monolithic-apps.md | 1 + .../101-microservices.md | 1 + .../115-architectural-patterns/102-soa.md | 1 + .../115-architectural-patterns/103-cqrs.md | 1 + .../104-serverless.md | 1 + .../115-architectural-patterns/readme.md | 1 + .../116-search-engines/100-elasticsearch.md | 1 + .../content/116-search-engines/101-solr.md | 1 + .../content/116-search-engines/readme.md | 1 + .../117-message-brokers/100-rabbitmq.md | 1 + .../content/117-message-brokers/101-kafka.md | 1 + .../content/117-message-brokers/readme.md | 1 + .../118-containerization/100-docker.md | 1 + .../content/118-containerization/101-rkt.md | 1 + .../content/118-containerization/102-lxc.md | 1 + .../content/118-containerization/readme.md | 1 + .../content/119-graphql/100-apollo.md | 1 + .../content/119-graphql/101-relay-modern.md | 1 + .../101-backend/content/119-graphql/readme.md | 1 + .../content/120-graph-databases/100-neo4j.md | 1 + .../content/120-graph-databases/readme.md | 1 + .../101-backend/content/121-web-sockets.md | 1 + .../content/122-web-servers/100-nginx.md | 1 + .../content/122-web-servers/101-apache.md | 1 + .../content/122-web-servers/102-caddy.md | 1 + .../content/122-web-servers/103-ms-iis.md | 1 + .../content/122-web-servers/readme.md | 1 + .../100-mitigation-strategies.md | 1 + ...01-instrumentation-monitoring-telemetry.md | 1 + .../102-migration-strategies.md | 1 + .../103-horizontal-vertial-scaling.md | 1 + .../123-scalability/104-observability.md | 1 + .../content/123-scalability/readme.md | 1 + .../roadmaps/101-backend/content/readme.md | 1 + content/roadmaps/101-backend/meta.json | 7 +- lib/roadmap.ts | 4 + pages/[roadmap]/index.tsx | 4 +- pages/[roadmap]/interactive.tsx | 4 + public/project/backend.json | 21243 +++++++++------- public/sitemap.xml | 28 +- 145 files changed, 12398 insertions(+), 9279 deletions(-) create mode 100644 content/roadmaps/101-backend/content-paths.json create mode 100644 content/roadmaps/101-backend/content/100-internet/100-how-does-the-internet-work.md create mode 100644 content/roadmaps/101-backend/content/100-internet/101-what-is-http.md create mode 100644 content/roadmaps/101-backend/content/100-internet/102-browsers-and-how-they-work.md create mode 100644 content/roadmaps/101-backend/content/100-internet/103-dns-and-how-it-works.md create mode 100644 content/roadmaps/101-backend/content/100-internet/104-what-is-domain-name.md create mode 100644 content/roadmaps/101-backend/content/100-internet/105-what-is-hosting.md create mode 100644 content/roadmaps/101-backend/content/100-internet/readme.md create mode 100644 content/roadmaps/101-backend/content/101-basic-frontend/100-html.md create mode 100644 content/roadmaps/101-backend/content/101-basic-frontend/101-css.md create mode 100644 content/roadmaps/101-backend/content/101-basic-frontend/102-javascript.md create mode 100644 content/roadmaps/101-backend/content/101-basic-frontend/readme.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/100-terminal-usage.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/101-how-oss-work-in-general.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/102-process-management.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/103-threads-and-concurrency.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/104-basic-terminal-commands.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/105-memory-management.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/106-interprocess-communication.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/107-io-management.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/108-posix-basics.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/109-basic-networking-concepts.md create mode 100644 content/roadmaps/101-backend/content/102-os-general-knowledge/readme.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/100-go.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/101-rust.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/102-java.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/103-php.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/106-python.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/107-ruby.md create mode 100644 content/roadmaps/101-backend/content/103-learn-a-language/readme.md create mode 100644 content/roadmaps/101-backend/content/104-version-control-systems/100-basic-usage-of-git.md create mode 100644 content/roadmaps/101-backend/content/104-version-control-systems/readme.md create mode 100644 content/roadmaps/101-backend/content/105-repo-hosting-services/100-github.md create mode 100644 content/roadmaps/101-backend/content/105-repo-hosting-services/101-gitlab.md create mode 100644 content/roadmaps/101-backend/content/105-repo-hosting-services/102-bitbucket.md create mode 100644 content/roadmaps/101-backend/content/105-repo-hosting-services/readme.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/100-postgresql.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/101-mysql.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/102-mariadb.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/103-mssql.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/104-oracle.md create mode 100644 content/roadmaps/101-backend/content/106-relational-databases/readme.md create mode 100644 content/roadmaps/101-backend/content/107-nosql-databases/100-document-databases.md create mode 100644 content/roadmaps/101-backend/content/107-nosql-databases/101-column-databases.md create mode 100644 content/roadmaps/101-backend/content/107-nosql-databases/102-timeseries-databases.md create mode 100644 content/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md create mode 100644 content/roadmaps/101-backend/content/107-nosql-databases/readme.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/100-orms.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/101-acid.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/102-transactions.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/103-n-plus-one-problem.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/104-database-normalization.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/105-database-indexes.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/106-data-replication.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/107-sharding-strategies.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/108-cap-theorem.md create mode 100644 content/roadmaps/101-backend/content/108-more-about-databases/readme.md create mode 100644 content/roadmaps/101-backend/content/109-apis/100-rest.md create mode 100644 content/roadmaps/101-backend/content/109-apis/101-json-apis.md create mode 100644 content/roadmaps/101-backend/content/109-apis/102-soap.md create mode 100644 content/roadmaps/101-backend/content/109-apis/103-grpc.md create mode 100644 content/roadmaps/101-backend/content/109-apis/104-hateoas.md create mode 100644 content/roadmaps/101-backend/content/109-apis/105-open-api-spec.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/100-cookie-based.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/101-oauth.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/102-basic-authentication.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/103-token-authentication.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/104-jwt.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/105-openid.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/105-saml.md create mode 100644 content/roadmaps/101-backend/content/109-apis/106-authentication/readme.md create mode 100644 content/roadmaps/101-backend/content/109-apis/readme.md create mode 100644 content/roadmaps/101-backend/content/110-caching/100-cdn.md create mode 100644 content/roadmaps/101-backend/content/110-caching/101-server-side/100-redis.md create mode 100644 content/roadmaps/101-backend/content/110-caching/101-server-side/101-memcached.md create mode 100644 content/roadmaps/101-backend/content/110-caching/101-server-side/readme.md create mode 100644 content/roadmaps/101-backend/content/110-caching/102-client-side.md create mode 100644 content/roadmaps/101-backend/content/110-caching/readme.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/100-md5.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/101-sha-family.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/102-bcrypt.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/104-scrypt.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/105-content-security-policy.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/105-https.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/106-cors.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/107-ssl-tls.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/108-owasp.md create mode 100644 content/roadmaps/101-backend/content/111-web-security-knowledge/readme.md create mode 100644 content/roadmaps/101-backend/content/112-testing/100-integration-testing.md create mode 100644 content/roadmaps/101-backend/content/112-testing/101-unit-testing.md create mode 100644 content/roadmaps/101-backend/content/112-testing/102-functional-testing.md create mode 100644 content/roadmaps/101-backend/content/112-testing/readme.md create mode 100644 content/roadmaps/101-backend/content/113-ci-cd.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md create mode 100644 content/roadmaps/101-backend/content/114-design-and-development-principles/readme.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/102-soa.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/104-serverless.md create mode 100644 content/roadmaps/101-backend/content/115-architectural-patterns/readme.md create mode 100644 content/roadmaps/101-backend/content/116-search-engines/100-elasticsearch.md create mode 100644 content/roadmaps/101-backend/content/116-search-engines/101-solr.md create mode 100644 content/roadmaps/101-backend/content/116-search-engines/readme.md create mode 100644 content/roadmaps/101-backend/content/117-message-brokers/100-rabbitmq.md create mode 100644 content/roadmaps/101-backend/content/117-message-brokers/101-kafka.md create mode 100644 content/roadmaps/101-backend/content/117-message-brokers/readme.md create mode 100644 content/roadmaps/101-backend/content/118-containerization/100-docker.md create mode 100644 content/roadmaps/101-backend/content/118-containerization/101-rkt.md create mode 100644 content/roadmaps/101-backend/content/118-containerization/102-lxc.md create mode 100644 content/roadmaps/101-backend/content/118-containerization/readme.md create mode 100644 content/roadmaps/101-backend/content/119-graphql/100-apollo.md create mode 100644 content/roadmaps/101-backend/content/119-graphql/101-relay-modern.md create mode 100644 content/roadmaps/101-backend/content/119-graphql/readme.md create mode 100644 content/roadmaps/101-backend/content/120-graph-databases/100-neo4j.md create mode 100644 content/roadmaps/101-backend/content/120-graph-databases/readme.md create mode 100644 content/roadmaps/101-backend/content/121-web-sockets.md create mode 100644 content/roadmaps/101-backend/content/122-web-servers/100-nginx.md create mode 100644 content/roadmaps/101-backend/content/122-web-servers/101-apache.md create mode 100644 content/roadmaps/101-backend/content/122-web-servers/102-caddy.md create mode 100644 content/roadmaps/101-backend/content/122-web-servers/103-ms-iis.md create mode 100644 content/roadmaps/101-backend/content/122-web-servers/readme.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/100-mitigation-strategies.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/101-instrumentation-monitoring-telemetry.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/102-migration-strategies.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/103-horizontal-vertial-scaling.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/104-observability.md create mode 100644 content/roadmaps/101-backend/content/123-scalability/readme.md create mode 100644 content/roadmaps/101-backend/content/readme.md diff --git a/components/roadmap/roadmap-page-header.tsx b/components/roadmap/roadmap-page-header.tsx index 7e0ffdf67..1f1c0d488 100644 --- a/components/roadmap/roadmap-page-header.tsx +++ b/components/roadmap/roadmap-page-header.tsx @@ -1,4 +1,4 @@ -import { RoadmapType } from '../../lib/roadmap'; +import { isInteractiveRoadmap, RoadmapType } from '../../lib/roadmap'; import { NewAlertBanner } from './new-alert-banner'; import { Badge, @@ -90,7 +90,7 @@ export function RoadmapPageHeader(props: RoadmapPageHeaderType) { - {roadmap.id === 'frontend' && ( + {isInteractiveRoadmap(roadmap.id) && ( Free Content +The Internet Explained +How Does the Internet Work? +Introduction to Internet +How does the Internet work? +How the Internet Works in 5 Minutes diff --git a/content/roadmaps/101-backend/content/100-internet/101-what-is-http.md b/content/roadmaps/101-backend/content/100-internet/101-what-is-http.md new file mode 100644 index 000000000..17733babd --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/101-what-is-http.md @@ -0,0 +1,9 @@ +# What is HTTP? + +HTTP is the `TCP/IP` based application layer communication protocol which standardizes how the client and server communicate with each other. It defines how the content is requested and transmitted across the internet. + +Free Content +What is HTTP? +An overview of HTTP +Journey to HTTP/2 +HTTP Crash Course & Exploration diff --git a/content/roadmaps/101-backend/content/100-internet/102-browsers-and-how-they-work.md b/content/roadmaps/101-backend/content/100-internet/102-browsers-and-how-they-work.md new file mode 100644 index 000000000..2202067c8 --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/102-browsers-and-how-they-work.md @@ -0,0 +1,8 @@ +# Browsers + +A web browser is a software application that enables a user to access and display web pages or other online content through its graphical user interface. + +Free Content +How Browsers Work +Role of Rendering Engine in Browsers +Populating the Page: How Browsers Work diff --git a/content/roadmaps/101-backend/content/100-internet/103-dns-and-how-it-works.md b/content/roadmaps/101-backend/content/100-internet/103-dns-and-how-it-works.md new file mode 100644 index 000000000..abcad0eb7 --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/103-dns-and-how-it-works.md @@ -0,0 +1,7 @@ +# DNS +The Domain Name System (DNS) is the phonebook of the Internet. Humans access information online through domain names, like nytimes.com or espn.com. Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources. + +Free Content +What is DNS? +DNS and How does it Work? +DNS Records diff --git a/content/roadmaps/101-backend/content/100-internet/104-what-is-domain-name.md b/content/roadmaps/101-backend/content/100-internet/104-what-is-domain-name.md new file mode 100644 index 000000000..1fb0a759e --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/104-what-is-domain-name.md @@ -0,0 +1,8 @@ +# Domain Name + +A domain name is a unique, easy-to-remember address used to access websites, such as ‘google.com’, and ‘facebook.com’. Users can connect to websites using domain names thanks to the DNS system. + +Free Content +What is a Domain Name? +What is a Domain Name? | Domain name vs. URL +A Beginners Guide to How Domain Names Work diff --git a/content/roadmaps/101-backend/content/100-internet/105-what-is-hosting.md b/content/roadmaps/101-backend/content/100-internet/105-what-is-hosting.md new file mode 100644 index 000000000..7ab9b4f76 --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/105-what-is-hosting.md @@ -0,0 +1,8 @@ +# Hosting + +Web hosting is an online service that allows you to publish your website files onto the internet. So, anyone who has access to the internet has access to your website. + +Free Content +What Is Web Hosting? Explained +Different Types of Web Hosting Explained +Where to Host a Fullstack Project on a Budget diff --git a/content/roadmaps/101-backend/content/100-internet/readme.md b/content/roadmaps/101-backend/content/100-internet/readme.md new file mode 100644 index 000000000..ef14a4d6e --- /dev/null +++ b/content/roadmaps/101-backend/content/100-internet/readme.md @@ -0,0 +1,10 @@ +# Internet + +The Internet is a global network of computers connected to each other which communicate through a standardized set of protocols. + +Free Content +The Internet Explained +How Does the Internet Work? +Introduction to Internet +How does the Internet work? +How the Internet Works in 5 Minutes diff --git a/content/roadmaps/101-backend/content/101-basic-frontend/100-html.md b/content/roadmaps/101-backend/content/101-basic-frontend/100-html.md new file mode 100644 index 000000000..1d42b1287 --- /dev/null +++ b/content/roadmaps/101-backend/content/101-basic-frontend/100-html.md @@ -0,0 +1,8 @@ +# HTML + +HTML stands for Hyper Text Markup Language. It is used on the frontend and gives the structure to the webpage which you can style using CSS and make interactive using JavaScript. + +Free Content +W3Schools: Learn HTML +HTML Full Course - Build a Website Tutorial +HTML Tutorial for Beginners: HTML Crash Course diff --git a/content/roadmaps/101-backend/content/101-basic-frontend/101-css.md b/content/roadmaps/101-backend/content/101-basic-frontend/101-css.md new file mode 100644 index 000000000..6cc746a03 --- /dev/null +++ b/content/roadmaps/101-backend/content/101-basic-frontend/101-css.md @@ -0,0 +1,12 @@ +# CSS + +CSS or Cascading Style Sheets is the language used to style the frontend of any website. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript. + +Free Content +W3Schools — Learn CSS +freeCodeCamp — Responsive Web Design +Learn to Code HTML & CSS +CSS Crash Course For Absolute Beginners +HTML and CSS Tutorial +CSS Masterclass - Tutorial & Course for Beginners +What The Flexbox! diff --git a/content/roadmaps/101-backend/content/101-basic-frontend/102-javascript.md b/content/roadmaps/101-backend/content/101-basic-frontend/102-javascript.md new file mode 100644 index 000000000..f8708aa41 --- /dev/null +++ b/content/roadmaps/101-backend/content/101-basic-frontend/102-javascript.md @@ -0,0 +1,9 @@ +# JavaScript + +JavaScript allows you to add interactivity to your pages. Common examples that you may have seen on the websites are sliders, click interactions, popups and so on. + +Free Content +W3Schools – JavaScript Tutorial +The Modern JavaScript Tutorial +JavaScript Crash Course for Beginners +Build a Netflix Landing Page Clone with HTML, CSS & JS diff --git a/content/roadmaps/101-backend/content/101-basic-frontend/readme.md b/content/roadmaps/101-backend/content/101-basic-frontend/readme.md new file mode 100644 index 000000000..73ef4141f --- /dev/null +++ b/content/roadmaps/101-backend/content/101-basic-frontend/readme.md @@ -0,0 +1,8 @@ +# Basic Frontend Knowledge + +As a backend developer, you may not need to have proficient knowledge of the frontend stack but you should at least have some basic understanding of HTML, CSS and JavaScript. + +Free Content +W3Schools: Learn HTML +W3Schools: Learn CSS +W3Schools: JavaScript Tutorial diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/100-terminal-usage.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/100-terminal-usage.md new file mode 100644 index 000000000..2a11f97e6 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/100-terminal-usage.md @@ -0,0 +1 @@ +# Terminal usage \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/101-how-oss-work-in-general.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/101-how-oss-work-in-general.md new file mode 100644 index 000000000..192caaaa8 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/101-how-oss-work-in-general.md @@ -0,0 +1 @@ +# Operating Systems diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/102-process-management.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/102-process-management.md new file mode 100644 index 000000000..26ac6ca21 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/102-process-management.md @@ -0,0 +1 @@ +# Process Management diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/103-threads-and-concurrency.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/103-threads-and-concurrency.md new file mode 100644 index 000000000..22c6c97e7 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/103-threads-and-concurrency.md @@ -0,0 +1 @@ +# Threads and Concurrency diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/104-basic-terminal-commands.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/104-basic-terminal-commands.md new file mode 100644 index 000000000..910d351e0 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/104-basic-terminal-commands.md @@ -0,0 +1 @@ +# Basic terminal Commands diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/105-memory-management.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/105-memory-management.md new file mode 100644 index 000000000..9349679e5 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/105-memory-management.md @@ -0,0 +1 @@ +# Memory management \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/106-interprocess-communication.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/106-interprocess-communication.md new file mode 100644 index 000000000..5f3e76338 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/106-interprocess-communication.md @@ -0,0 +1 @@ +# Interprocess communication \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/107-io-management.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/107-io-management.md new file mode 100644 index 000000000..0c20a796b --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/107-io-management.md @@ -0,0 +1 @@ +# Io management \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/108-posix-basics.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/108-posix-basics.md new file mode 100644 index 000000000..babfb2c69 --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/108-posix-basics.md @@ -0,0 +1 @@ +# Posix basics \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/109-basic-networking-concepts.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/109-basic-networking-concepts.md new file mode 100644 index 000000000..fd00d8f4f --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/109-basic-networking-concepts.md @@ -0,0 +1 @@ +# Basic networking concepts \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/102-os-general-knowledge/readme.md b/content/roadmaps/101-backend/content/102-os-general-knowledge/readme.md new file mode 100644 index 000000000..c4a9305ec --- /dev/null +++ b/content/roadmaps/101-backend/content/102-os-general-knowledge/readme.md @@ -0,0 +1 @@ +# General Knowledge diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/100-go.md b/content/roadmaps/101-backend/content/103-learn-a-language/100-go.md new file mode 100644 index 000000000..59448b216 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/100-go.md @@ -0,0 +1 @@ +# Go \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/101-rust.md b/content/roadmaps/101-backend/content/103-learn-a-language/101-rust.md new file mode 100644 index 000000000..8fc1f9db2 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/101-rust.md @@ -0,0 +1 @@ +# Rust \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/102-java.md b/content/roadmaps/101-backend/content/103-learn-a-language/102-java.md new file mode 100644 index 000000000..526e9b119 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/102-java.md @@ -0,0 +1 @@ +# Java \ No newline at end of file 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 new file mode 100644 index 000000000..ad0f08296 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/103-csharp.md @@ -0,0 +1 @@ +# Csharp \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/103-php.md b/content/roadmaps/101-backend/content/103-learn-a-language/103-php.md new file mode 100644 index 000000000..cff2d3b3f --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/103-php.md @@ -0,0 +1 @@ +# Php \ No newline at end of file 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 new file mode 100644 index 000000000..446ae8e73 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/105-javascript.md @@ -0,0 +1 @@ +# Javascript \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/106-python.md b/content/roadmaps/101-backend/content/103-learn-a-language/106-python.md new file mode 100644 index 000000000..92106a828 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/106-python.md @@ -0,0 +1 @@ +# Python \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/103-learn-a-language/107-ruby.md b/content/roadmaps/101-backend/content/103-learn-a-language/107-ruby.md new file mode 100644 index 000000000..cf37b2083 --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/107-ruby.md @@ -0,0 +1 @@ +# Ruby \ No newline at end of file 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 new file mode 100644 index 000000000..00ac1d80a --- /dev/null +++ b/content/roadmaps/101-backend/content/103-learn-a-language/readme.md @@ -0,0 +1 @@ +# Learn a language \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/104-version-control-systems/100-basic-usage-of-git.md b/content/roadmaps/101-backend/content/104-version-control-systems/100-basic-usage-of-git.md new file mode 100644 index 000000000..65f57e71e --- /dev/null +++ b/content/roadmaps/101-backend/content/104-version-control-systems/100-basic-usage-of-git.md @@ -0,0 +1 @@ +# Git \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/104-version-control-systems/readme.md b/content/roadmaps/101-backend/content/104-version-control-systems/readme.md new file mode 100644 index 000000000..5e0249474 --- /dev/null +++ b/content/roadmaps/101-backend/content/104-version-control-systems/readme.md @@ -0,0 +1 @@ +# Version control systems \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/105-repo-hosting-services/100-github.md b/content/roadmaps/101-backend/content/105-repo-hosting-services/100-github.md new file mode 100644 index 000000000..1d347d3e4 --- /dev/null +++ b/content/roadmaps/101-backend/content/105-repo-hosting-services/100-github.md @@ -0,0 +1 @@ +# Github \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/105-repo-hosting-services/101-gitlab.md b/content/roadmaps/101-backend/content/105-repo-hosting-services/101-gitlab.md new file mode 100644 index 000000000..70157a4e6 --- /dev/null +++ b/content/roadmaps/101-backend/content/105-repo-hosting-services/101-gitlab.md @@ -0,0 +1 @@ +# Gitlab \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/105-repo-hosting-services/102-bitbucket.md b/content/roadmaps/101-backend/content/105-repo-hosting-services/102-bitbucket.md new file mode 100644 index 000000000..9c781a3b3 --- /dev/null +++ b/content/roadmaps/101-backend/content/105-repo-hosting-services/102-bitbucket.md @@ -0,0 +1 @@ +# Bitbucket \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/105-repo-hosting-services/readme.md b/content/roadmaps/101-backend/content/105-repo-hosting-services/readme.md new file mode 100644 index 000000000..ca921962f --- /dev/null +++ b/content/roadmaps/101-backend/content/105-repo-hosting-services/readme.md @@ -0,0 +1 @@ +# Repo hosting services \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/100-postgresql.md b/content/roadmaps/101-backend/content/106-relational-databases/100-postgresql.md new file mode 100644 index 000000000..a6798acec --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/100-postgresql.md @@ -0,0 +1 @@ +# Postgresql \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/101-mysql.md b/content/roadmaps/101-backend/content/106-relational-databases/101-mysql.md new file mode 100644 index 000000000..39b7062b3 --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/101-mysql.md @@ -0,0 +1 @@ +# Mysql \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/102-mariadb.md b/content/roadmaps/101-backend/content/106-relational-databases/102-mariadb.md new file mode 100644 index 000000000..2efaf2286 --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/102-mariadb.md @@ -0,0 +1 @@ +# Mariadb \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/103-mssql.md b/content/roadmaps/101-backend/content/106-relational-databases/103-mssql.md new file mode 100644 index 000000000..036266741 --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/103-mssql.md @@ -0,0 +1 @@ +# Mssql \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/104-oracle.md b/content/roadmaps/101-backend/content/106-relational-databases/104-oracle.md new file mode 100644 index 000000000..1d05ecc39 --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/104-oracle.md @@ -0,0 +1 @@ +# Oracle \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/106-relational-databases/readme.md b/content/roadmaps/101-backend/content/106-relational-databases/readme.md new file mode 100644 index 000000000..d2db20e73 --- /dev/null +++ b/content/roadmaps/101-backend/content/106-relational-databases/readme.md @@ -0,0 +1 @@ +# Relational databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/100-document-databases.md b/content/roadmaps/101-backend/content/107-nosql-databases/100-document-databases.md new file mode 100644 index 000000000..a8218888d --- /dev/null +++ b/content/roadmaps/101-backend/content/107-nosql-databases/100-document-databases.md @@ -0,0 +1 @@ +# Document databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/101-column-databases.md b/content/roadmaps/101-backend/content/107-nosql-databases/101-column-databases.md new file mode 100644 index 000000000..11f96ea48 --- /dev/null +++ b/content/roadmaps/101-backend/content/107-nosql-databases/101-column-databases.md @@ -0,0 +1 @@ +# Column databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/102-timeseries-databases.md b/content/roadmaps/101-backend/content/107-nosql-databases/102-timeseries-databases.md new file mode 100644 index 000000000..6db12a000 --- /dev/null +++ b/content/roadmaps/101-backend/content/107-nosql-databases/102-timeseries-databases.md @@ -0,0 +1 @@ +# Timeseries databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md b/content/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md new file mode 100644 index 000000000..ac39b1522 --- /dev/null +++ b/content/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md @@ -0,0 +1 @@ +# Realtime databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/107-nosql-databases/readme.md b/content/roadmaps/101-backend/content/107-nosql-databases/readme.md new file mode 100644 index 000000000..827dc6040 --- /dev/null +++ b/content/roadmaps/101-backend/content/107-nosql-databases/readme.md @@ -0,0 +1 @@ +# Nosql databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/100-orms.md b/content/roadmaps/101-backend/content/108-more-about-databases/100-orms.md new file mode 100644 index 000000000..0774e010e --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/100-orms.md @@ -0,0 +1 @@ +# Orms \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/101-acid.md b/content/roadmaps/101-backend/content/108-more-about-databases/101-acid.md new file mode 100644 index 000000000..727e552b0 --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/101-acid.md @@ -0,0 +1 @@ +# Acid \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/102-transactions.md b/content/roadmaps/101-backend/content/108-more-about-databases/102-transactions.md new file mode 100644 index 000000000..0125c964d --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/102-transactions.md @@ -0,0 +1 @@ +# Transactions \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/103-n-plus-one-problem.md b/content/roadmaps/101-backend/content/108-more-about-databases/103-n-plus-one-problem.md new file mode 100644 index 000000000..ad83aaa39 --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/103-n-plus-one-problem.md @@ -0,0 +1 @@ +# N plus one problem \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/104-database-normalization.md b/content/roadmaps/101-backend/content/108-more-about-databases/104-database-normalization.md new file mode 100644 index 000000000..780e08a1b --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/104-database-normalization.md @@ -0,0 +1 @@ +# Database normalization \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/105-database-indexes.md b/content/roadmaps/101-backend/content/108-more-about-databases/105-database-indexes.md new file mode 100644 index 000000000..6aa95691a --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/105-database-indexes.md @@ -0,0 +1 @@ +# Database indexes \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/106-data-replication.md b/content/roadmaps/101-backend/content/108-more-about-databases/106-data-replication.md new file mode 100644 index 000000000..cf578cd09 --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/106-data-replication.md @@ -0,0 +1 @@ +# Data replication \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/107-sharding-strategies.md b/content/roadmaps/101-backend/content/108-more-about-databases/107-sharding-strategies.md new file mode 100644 index 000000000..8da2891b6 --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/107-sharding-strategies.md @@ -0,0 +1 @@ +# Sharding strategies \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/108-cap-theorem.md b/content/roadmaps/101-backend/content/108-more-about-databases/108-cap-theorem.md new file mode 100644 index 000000000..b85469e6d --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/108-cap-theorem.md @@ -0,0 +1 @@ +# Cap theorem \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/108-more-about-databases/readme.md b/content/roadmaps/101-backend/content/108-more-about-databases/readme.md new file mode 100644 index 000000000..9b82db219 --- /dev/null +++ b/content/roadmaps/101-backend/content/108-more-about-databases/readme.md @@ -0,0 +1 @@ +# More about databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/100-rest.md b/content/roadmaps/101-backend/content/109-apis/100-rest.md new file mode 100644 index 000000000..5088a865c --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/100-rest.md @@ -0,0 +1 @@ +# Rest \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/101-json-apis.md b/content/roadmaps/101-backend/content/109-apis/101-json-apis.md new file mode 100644 index 000000000..c37be7d18 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/101-json-apis.md @@ -0,0 +1 @@ +# Json apis \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/102-soap.md b/content/roadmaps/101-backend/content/109-apis/102-soap.md new file mode 100644 index 000000000..388cb826f --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/102-soap.md @@ -0,0 +1 @@ +# Soap \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/103-grpc.md b/content/roadmaps/101-backend/content/109-apis/103-grpc.md new file mode 100644 index 000000000..5d543f43c --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/103-grpc.md @@ -0,0 +1 @@ +# Grpc \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/104-hateoas.md b/content/roadmaps/101-backend/content/109-apis/104-hateoas.md new file mode 100644 index 000000000..5d512d077 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/104-hateoas.md @@ -0,0 +1 @@ +# Hateoas \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/105-open-api-spec.md b/content/roadmaps/101-backend/content/109-apis/105-open-api-spec.md new file mode 100644 index 000000000..c0dd7fe71 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/105-open-api-spec.md @@ -0,0 +1 @@ +# Open api spec \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/100-cookie-based.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/100-cookie-based.md new file mode 100644 index 000000000..72735c138 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/100-cookie-based.md @@ -0,0 +1 @@ +# Cookie based \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/101-oauth.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/101-oauth.md new file mode 100644 index 000000000..4288db050 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/101-oauth.md @@ -0,0 +1 @@ +# Oauth \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/102-basic-authentication.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/102-basic-authentication.md new file mode 100644 index 000000000..771370c96 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/102-basic-authentication.md @@ -0,0 +1 @@ +# Basic authentication \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/103-token-authentication.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/103-token-authentication.md new file mode 100644 index 000000000..368549660 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/103-token-authentication.md @@ -0,0 +1 @@ +# Token authentication \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/104-jwt.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/104-jwt.md new file mode 100644 index 000000000..d4a983b34 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/104-jwt.md @@ -0,0 +1 @@ +# Jwt \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/105-openid.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/105-openid.md new file mode 100644 index 000000000..70dd95853 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/105-openid.md @@ -0,0 +1 @@ +# Openid \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/105-saml.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/105-saml.md new file mode 100644 index 000000000..9cec13756 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/105-saml.md @@ -0,0 +1 @@ +# Saml \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/106-authentication/readme.md b/content/roadmaps/101-backend/content/109-apis/106-authentication/readme.md new file mode 100644 index 000000000..66a783b30 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/106-authentication/readme.md @@ -0,0 +1 @@ +# Authentication \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/109-apis/readme.md b/content/roadmaps/101-backend/content/109-apis/readme.md new file mode 100644 index 000000000..db412acd9 --- /dev/null +++ b/content/roadmaps/101-backend/content/109-apis/readme.md @@ -0,0 +1 @@ +# Apis \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/100-cdn.md b/content/roadmaps/101-backend/content/110-caching/100-cdn.md new file mode 100644 index 000000000..10851277a --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/100-cdn.md @@ -0,0 +1 @@ +# Cdn \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/101-server-side/100-redis.md b/content/roadmaps/101-backend/content/110-caching/101-server-side/100-redis.md new file mode 100644 index 000000000..0de4bc736 --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/101-server-side/100-redis.md @@ -0,0 +1 @@ +# Redis \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/101-server-side/101-memcached.md b/content/roadmaps/101-backend/content/110-caching/101-server-side/101-memcached.md new file mode 100644 index 000000000..a77571ada --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/101-server-side/101-memcached.md @@ -0,0 +1 @@ +# Memcached \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/101-server-side/readme.md b/content/roadmaps/101-backend/content/110-caching/101-server-side/readme.md new file mode 100644 index 000000000..ed3765dd8 --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/101-server-side/readme.md @@ -0,0 +1 @@ +# Server side \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/102-client-side.md b/content/roadmaps/101-backend/content/110-caching/102-client-side.md new file mode 100644 index 000000000..2d2376520 --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/102-client-side.md @@ -0,0 +1 @@ +# Client side \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/110-caching/readme.md b/content/roadmaps/101-backend/content/110-caching/readme.md new file mode 100644 index 000000000..07f88797a --- /dev/null +++ b/content/roadmaps/101-backend/content/110-caching/readme.md @@ -0,0 +1 @@ +# Caching \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/100-md5.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/100-md5.md new file mode 100644 index 000000000..30a6ef237 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/100-md5.md @@ -0,0 +1 @@ +# Md5 \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/101-sha-family.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/101-sha-family.md new file mode 100644 index 000000000..4ab9c4f9b --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/101-sha-family.md @@ -0,0 +1 @@ +# Sha family \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/102-bcrypt.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/102-bcrypt.md new file mode 100644 index 000000000..4d74e8304 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/102-bcrypt.md @@ -0,0 +1 @@ +# Bcrypt \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/104-scrypt.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/104-scrypt.md new file mode 100644 index 000000000..fd0de9978 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/104-scrypt.md @@ -0,0 +1 @@ +# Scrypt \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/105-content-security-policy.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/105-content-security-policy.md new file mode 100644 index 000000000..9a1241811 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/105-content-security-policy.md @@ -0,0 +1 @@ +# Content security policy \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/105-https.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/105-https.md new file mode 100644 index 000000000..cd7ede8bd --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/105-https.md @@ -0,0 +1 @@ +# Https \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/106-cors.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/106-cors.md new file mode 100644 index 000000000..7b9050194 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/106-cors.md @@ -0,0 +1 @@ +# Cors \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/107-ssl-tls.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/107-ssl-tls.md new file mode 100644 index 000000000..064964cdf --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/107-ssl-tls.md @@ -0,0 +1 @@ +# Ssl tls \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/108-owasp.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/108-owasp.md new file mode 100644 index 000000000..2c3dd94a4 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/108-owasp.md @@ -0,0 +1 @@ +# Owasp \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/111-web-security-knowledge/readme.md b/content/roadmaps/101-backend/content/111-web-security-knowledge/readme.md new file mode 100644 index 000000000..f440075e0 --- /dev/null +++ b/content/roadmaps/101-backend/content/111-web-security-knowledge/readme.md @@ -0,0 +1 @@ +# Web security knowledge \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/112-testing/100-integration-testing.md b/content/roadmaps/101-backend/content/112-testing/100-integration-testing.md new file mode 100644 index 000000000..30f1d7fbd --- /dev/null +++ b/content/roadmaps/101-backend/content/112-testing/100-integration-testing.md @@ -0,0 +1 @@ +# Integration testing \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/112-testing/101-unit-testing.md b/content/roadmaps/101-backend/content/112-testing/101-unit-testing.md new file mode 100644 index 000000000..94ee45331 --- /dev/null +++ b/content/roadmaps/101-backend/content/112-testing/101-unit-testing.md @@ -0,0 +1 @@ +# Unit testing \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/112-testing/102-functional-testing.md b/content/roadmaps/101-backend/content/112-testing/102-functional-testing.md new file mode 100644 index 000000000..db67a05b7 --- /dev/null +++ b/content/roadmaps/101-backend/content/112-testing/102-functional-testing.md @@ -0,0 +1 @@ +# Functional testing \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/112-testing/readme.md b/content/roadmaps/101-backend/content/112-testing/readme.md new file mode 100644 index 000000000..94cfd7d77 --- /dev/null +++ b/content/roadmaps/101-backend/content/112-testing/readme.md @@ -0,0 +1 @@ +# Testing \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/113-ci-cd.md b/content/roadmaps/101-backend/content/113-ci-cd.md new file mode 100644 index 000000000..edee7d737 --- /dev/null +++ b/content/roadmaps/101-backend/content/113-ci-cd.md @@ -0,0 +1 @@ +# Ci cd \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md new file mode 100644 index 000000000..80a8498fd --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/100-gof-design-patterns.md @@ -0,0 +1 @@ +# Gof design patterns \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md new file mode 100644 index 000000000..27cc770b3 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/101-domain-driven-design.md @@ -0,0 +1 @@ +# Domain driven design \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md new file mode 100644 index 000000000..3ad649e5d --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/102-test-driven-development.md @@ -0,0 +1 @@ +# Test driven development \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md new file mode 100644 index 000000000..7d6790eb1 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/103-solid.md @@ -0,0 +1 @@ +# Solid \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md new file mode 100644 index 000000000..19562d9b6 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/104-kiss.md @@ -0,0 +1 @@ +# Kiss \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md new file mode 100644 index 000000000..99a944f08 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/105-yagni.md @@ -0,0 +1 @@ +# Yagni \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md new file mode 100644 index 000000000..378c54dd5 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/106-dry.md @@ -0,0 +1 @@ +# Dry \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/114-design-and-development-principles/readme.md b/content/roadmaps/101-backend/content/114-design-and-development-principles/readme.md new file mode 100644 index 000000000..46706a444 --- /dev/null +++ b/content/roadmaps/101-backend/content/114-design-and-development-principles/readme.md @@ -0,0 +1 @@ +# Design and development principles \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md b/content/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md new file mode 100644 index 000000000..f45912489 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/100-monolithic-apps.md @@ -0,0 +1 @@ +# Monolithic apps \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md b/content/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md new file mode 100644 index 000000000..3ace82ef2 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md @@ -0,0 +1 @@ +# Microservices \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/102-soa.md b/content/roadmaps/101-backend/content/115-architectural-patterns/102-soa.md new file mode 100644 index 000000000..f5538ff66 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/102-soa.md @@ -0,0 +1 @@ +# Soa \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md b/content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md new file mode 100644 index 000000000..53209f872 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/103-cqrs.md @@ -0,0 +1 @@ +# Cqrs \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/104-serverless.md b/content/roadmaps/101-backend/content/115-architectural-patterns/104-serverless.md new file mode 100644 index 000000000..0ef70d396 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/104-serverless.md @@ -0,0 +1 @@ +# Serverless \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/115-architectural-patterns/readme.md b/content/roadmaps/101-backend/content/115-architectural-patterns/readme.md new file mode 100644 index 000000000..9dc6d42a6 --- /dev/null +++ b/content/roadmaps/101-backend/content/115-architectural-patterns/readme.md @@ -0,0 +1 @@ +# Architectural patterns \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/116-search-engines/100-elasticsearch.md b/content/roadmaps/101-backend/content/116-search-engines/100-elasticsearch.md new file mode 100644 index 000000000..1c01a877a --- /dev/null +++ b/content/roadmaps/101-backend/content/116-search-engines/100-elasticsearch.md @@ -0,0 +1 @@ +# Elasticsearch \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/116-search-engines/101-solr.md b/content/roadmaps/101-backend/content/116-search-engines/101-solr.md new file mode 100644 index 000000000..54c3caa94 --- /dev/null +++ b/content/roadmaps/101-backend/content/116-search-engines/101-solr.md @@ -0,0 +1 @@ +# Solr \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/116-search-engines/readme.md b/content/roadmaps/101-backend/content/116-search-engines/readme.md new file mode 100644 index 000000000..bc600ec99 --- /dev/null +++ b/content/roadmaps/101-backend/content/116-search-engines/readme.md @@ -0,0 +1 @@ +# Search engines \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/117-message-brokers/100-rabbitmq.md b/content/roadmaps/101-backend/content/117-message-brokers/100-rabbitmq.md new file mode 100644 index 000000000..dc5fc1d48 --- /dev/null +++ b/content/roadmaps/101-backend/content/117-message-brokers/100-rabbitmq.md @@ -0,0 +1 @@ +# Rabbitmq \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/117-message-brokers/101-kafka.md b/content/roadmaps/101-backend/content/117-message-brokers/101-kafka.md new file mode 100644 index 000000000..96fba0ab7 --- /dev/null +++ b/content/roadmaps/101-backend/content/117-message-brokers/101-kafka.md @@ -0,0 +1 @@ +# Kafka \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/117-message-brokers/readme.md b/content/roadmaps/101-backend/content/117-message-brokers/readme.md new file mode 100644 index 000000000..08e76c75e --- /dev/null +++ b/content/roadmaps/101-backend/content/117-message-brokers/readme.md @@ -0,0 +1 @@ +# Message brokers \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/118-containerization/100-docker.md b/content/roadmaps/101-backend/content/118-containerization/100-docker.md new file mode 100644 index 000000000..687140836 --- /dev/null +++ b/content/roadmaps/101-backend/content/118-containerization/100-docker.md @@ -0,0 +1 @@ +# Docker \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/118-containerization/101-rkt.md b/content/roadmaps/101-backend/content/118-containerization/101-rkt.md new file mode 100644 index 000000000..916fd70a9 --- /dev/null +++ b/content/roadmaps/101-backend/content/118-containerization/101-rkt.md @@ -0,0 +1 @@ +# Rkt \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/118-containerization/102-lxc.md b/content/roadmaps/101-backend/content/118-containerization/102-lxc.md new file mode 100644 index 000000000..5b04c84c2 --- /dev/null +++ b/content/roadmaps/101-backend/content/118-containerization/102-lxc.md @@ -0,0 +1 @@ +# Lxc \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/118-containerization/readme.md b/content/roadmaps/101-backend/content/118-containerization/readme.md new file mode 100644 index 000000000..9268986d8 --- /dev/null +++ b/content/roadmaps/101-backend/content/118-containerization/readme.md @@ -0,0 +1 @@ +# Containerization \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/119-graphql/100-apollo.md b/content/roadmaps/101-backend/content/119-graphql/100-apollo.md new file mode 100644 index 000000000..845aec91d --- /dev/null +++ b/content/roadmaps/101-backend/content/119-graphql/100-apollo.md @@ -0,0 +1 @@ +# Apollo \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/119-graphql/101-relay-modern.md b/content/roadmaps/101-backend/content/119-graphql/101-relay-modern.md new file mode 100644 index 000000000..b821c1bb5 --- /dev/null +++ b/content/roadmaps/101-backend/content/119-graphql/101-relay-modern.md @@ -0,0 +1 @@ +# Relay modern \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/119-graphql/readme.md b/content/roadmaps/101-backend/content/119-graphql/readme.md new file mode 100644 index 000000000..92b738b69 --- /dev/null +++ b/content/roadmaps/101-backend/content/119-graphql/readme.md @@ -0,0 +1 @@ +# Graphql \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/120-graph-databases/100-neo4j.md b/content/roadmaps/101-backend/content/120-graph-databases/100-neo4j.md new file mode 100644 index 000000000..42258d939 --- /dev/null +++ b/content/roadmaps/101-backend/content/120-graph-databases/100-neo4j.md @@ -0,0 +1 @@ +# Neo4j \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/120-graph-databases/readme.md b/content/roadmaps/101-backend/content/120-graph-databases/readme.md new file mode 100644 index 000000000..54a5a1640 --- /dev/null +++ b/content/roadmaps/101-backend/content/120-graph-databases/readme.md @@ -0,0 +1 @@ +# Graph databases \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/121-web-sockets.md b/content/roadmaps/101-backend/content/121-web-sockets.md new file mode 100644 index 000000000..8b76cfb8d --- /dev/null +++ b/content/roadmaps/101-backend/content/121-web-sockets.md @@ -0,0 +1 @@ +# Web sockets \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/122-web-servers/100-nginx.md b/content/roadmaps/101-backend/content/122-web-servers/100-nginx.md new file mode 100644 index 000000000..6026f3d2d --- /dev/null +++ b/content/roadmaps/101-backend/content/122-web-servers/100-nginx.md @@ -0,0 +1 @@ +# Nginx \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/122-web-servers/101-apache.md b/content/roadmaps/101-backend/content/122-web-servers/101-apache.md new file mode 100644 index 000000000..b00666336 --- /dev/null +++ b/content/roadmaps/101-backend/content/122-web-servers/101-apache.md @@ -0,0 +1 @@ +# Apache \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/122-web-servers/102-caddy.md b/content/roadmaps/101-backend/content/122-web-servers/102-caddy.md new file mode 100644 index 000000000..0b4e60b6c --- /dev/null +++ b/content/roadmaps/101-backend/content/122-web-servers/102-caddy.md @@ -0,0 +1 @@ +# Caddy \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/122-web-servers/103-ms-iis.md b/content/roadmaps/101-backend/content/122-web-servers/103-ms-iis.md new file mode 100644 index 000000000..659721734 --- /dev/null +++ b/content/roadmaps/101-backend/content/122-web-servers/103-ms-iis.md @@ -0,0 +1 @@ +# Ms iis \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/122-web-servers/readme.md b/content/roadmaps/101-backend/content/122-web-servers/readme.md new file mode 100644 index 000000000..0ad9cf0c8 --- /dev/null +++ b/content/roadmaps/101-backend/content/122-web-servers/readme.md @@ -0,0 +1 @@ +# Web servers \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/100-mitigation-strategies.md b/content/roadmaps/101-backend/content/123-scalability/100-mitigation-strategies.md new file mode 100644 index 000000000..14dcc962a --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/100-mitigation-strategies.md @@ -0,0 +1 @@ +# Mitigation strategies \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/101-instrumentation-monitoring-telemetry.md b/content/roadmaps/101-backend/content/123-scalability/101-instrumentation-monitoring-telemetry.md new file mode 100644 index 000000000..742080177 --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/101-instrumentation-monitoring-telemetry.md @@ -0,0 +1 @@ +# Instrumentation monitoring telemetry \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/102-migration-strategies.md b/content/roadmaps/101-backend/content/123-scalability/102-migration-strategies.md new file mode 100644 index 000000000..d3bc035a1 --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/102-migration-strategies.md @@ -0,0 +1 @@ +# Migration strategies \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/103-horizontal-vertial-scaling.md b/content/roadmaps/101-backend/content/123-scalability/103-horizontal-vertial-scaling.md new file mode 100644 index 000000000..17ce60808 --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/103-horizontal-vertial-scaling.md @@ -0,0 +1 @@ +# Horizontal vertial scaling \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/104-observability.md b/content/roadmaps/101-backend/content/123-scalability/104-observability.md new file mode 100644 index 000000000..c5ac4a2fa --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/104-observability.md @@ -0,0 +1 @@ +# Observability \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/123-scalability/readme.md b/content/roadmaps/101-backend/content/123-scalability/readme.md new file mode 100644 index 000000000..d6ca5f195 --- /dev/null +++ b/content/roadmaps/101-backend/content/123-scalability/readme.md @@ -0,0 +1 @@ +# Scalability \ No newline at end of file diff --git a/content/roadmaps/101-backend/content/readme.md b/content/roadmaps/101-backend/content/readme.md new file mode 100644 index 000000000..4e768b56d --- /dev/null +++ b/content/roadmaps/101-backend/content/readme.md @@ -0,0 +1 @@ +# \ No newline at end of file diff --git a/content/roadmaps/101-backend/meta.json b/content/roadmaps/101-backend/meta.json index 5af244713..1986ddd80 100644 --- a/content/roadmaps/101-backend/meta.json +++ b/content/roadmaps/101-backend/meta.json @@ -35,11 +35,12 @@ "featuredDescription": "Step by step guide to becoming a backend developer in 2022", "featured": true, "imageUrl": "/roadmaps/backend.png", - "jsonUrl": "/project/frontend.json", + "jsonUrl": "/project/backend.json", "resourcesPath": "./resources.md", "author": { "name": "Kamran Ahmed", "url": "https://twitter.com/kamranahmedse" }, - "pdfUrl": "https://kamranahmedse.gumroad.com/l/backend-roadmap" -} + "pdfUrl": "https://kamranahmedse.gumroad.com/l/backend-roadmap", + "contentPathsFilePath": "./content-paths.json" +} \ No newline at end of file diff --git a/lib/roadmap.ts b/lib/roadmap.ts index 6f89bc5a5..1b009c9bd 100644 --- a/lib/roadmap.ts +++ b/lib/roadmap.ts @@ -40,3 +40,7 @@ export function getFeaturedRoadmaps(): RoadmapType[] { return roadmaps.filter((roadmap) => roadmap.featured); } + +export function isInteractiveRoadmap(id: string): boolean { + return ['frontend', 'backend'].includes(id); +} diff --git a/pages/[roadmap]/index.tsx b/pages/[roadmap]/index.tsx index f844d1230..f046c3f8a 100644 --- a/pages/[roadmap]/index.tsx +++ b/pages/[roadmap]/index.tsx @@ -4,7 +4,7 @@ import { GlobalHeader } from '../../components/global-header'; import { OpensourceBanner } from '../../components/opensource-banner'; import { UpdatesBanner } from '../../components/updates-banner'; import { Footer } from '../../components/footer'; -import { getAllRoadmaps, getRoadmapById, RoadmapType } from '../../lib/roadmap'; +import { getAllRoadmaps, getRoadmapById, isInteractiveRoadmap, RoadmapType } from '../../lib/roadmap'; import MdRenderer from '../../components/md-renderer'; import Helmet from '../../components/helmet'; import { RoadmapPageHeader } from '../../components/roadmap/roadmap-page-header'; @@ -17,7 +17,7 @@ type RoadmapProps = { function ImageRoadmap(props: RoadmapProps) { const { roadmap } = props; - if (roadmap.id === 'frontend') { + if (isInteractiveRoadmap(roadmap.id)) { return ; } diff --git a/pages/[roadmap]/interactive.tsx b/pages/[roadmap]/interactive.tsx index ab83dd27e..4038ee39c 100644 --- a/pages/[roadmap]/interactive.tsx +++ b/pages/[roadmap]/interactive.tsx @@ -118,6 +118,10 @@ export function InteractiveRoadmapRenderer(props: RoadmapProps) { minHeight = ['970px', '970px', '2100px', '2800px', '2800px']; } + if (roadmap.id === 'backend') { + minHeight = ['870px', '1130px', '1900px', '2500px', '2520px', '2520px']; + } + return ( {(isLoading || isRendering) && } diff --git a/public/project/backend.json b/public/project/backend.json index ff6308433..c224a1aa0 100644 --- a/public/project/backend.json +++ b/public/project/backend.json @@ -3,10 +3,15 @@ "controls": { "control": [ { - "ID": "729", + "ID": "2049", + "typeID": "Arrow", + "zOrder": "0", + "w": "62", "h": "114", - "measuredH": "113", - "measuredW": "61", + "measuredW": "150", + "measuredH": "100", + "x": "937", + "y": "1226", "properties": { "color": "2848996", "curvature": "1", @@ -26,18 +31,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "62", - "x": "937", - "y": "1226", - "zOrder": "0" + } }, { - "ID": "730", + "ID": "2050", + "typeID": "Arrow", + "zOrder": "1", + "w": "52", "h": "68", - "measuredH": "67", - "measuredW": "51", + "measuredW": "150", + "measuredH": "100", + "x": "946", + "y": "1225", "properties": { "color": "2848996", "curvature": "0", @@ -57,18 +62,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "52", - "x": "946", - "y": "1225", - "zOrder": "1" + } }, { - "ID": "731", + "ID": "2051", + "typeID": "Arrow", + "zOrder": "2", + "w": "65", "h": "39", - "measuredH": "38", - "measuredW": "64", + "measuredW": "150", + "measuredH": "100", + "x": "936", + "y": "1209", "properties": { "color": "2848996", "curvature": "0", @@ -88,18 +93,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "65", - "x": "936", - "y": "1209", - "zOrder": "2" + } }, { - "ID": "732", + "ID": "2052", + "typeID": "Arrow", + "zOrder": "3", + "w": "88", "h": "20", - "measuredH": "20", - "measuredW": "88", + "measuredW": "150", + "measuredH": "100", + "x": "1005", + "y": "1604", "properties": { "color": "2848996", "curvature": "-1", @@ -118,18 +123,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "88", - "x": "1005", - "y": "1604", - "zOrder": "3" + } }, { - "ID": "733", + "ID": "2053", + "typeID": "Arrow", + "zOrder": "4", + "w": "116", "h": "68", - "measuredH": "68", - "measuredW": "116", + "measuredW": "150", + "measuredH": "100", + "x": "850", + "y": "2910", "properties": { "color": "2848996", "direction": "bottom", @@ -148,18 +153,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "116", - "x": "850", - "y": "2910", - "zOrder": "4" + } }, { - "ID": "734", + "ID": "2054", + "typeID": "Arrow", + "zOrder": "5", + "w": "133", "h": "34", - "measuredH": "34", - "measuredW": "133", + "measuredW": "150", + "measuredH": "100", + "x": "840", + "y": "2900", "properties": { "color": "2848996", "direction": "bottom", @@ -178,18 +183,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "133", - "x": "840", - "y": "2900", - "zOrder": "5" + } }, { - "ID": "735", + "ID": "2055", + "typeID": "Arrow", + "zOrder": "6", + "w": "2", "h": "89", - "measuredH": "88", - "measuredW": "1", + "measuredW": "150", + "measuredH": "100", + "x": "727", + "y": "3123", "properties": { "color": "2848996", "curvature": "0", @@ -208,18 +213,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "2", - "x": "727", - "y": "3123", - "zOrder": "6" + } }, { - "ID": "736", + "ID": "2056", + "typeID": "Arrow", + "zOrder": "7", + "w": "8", "h": "166", - "measuredH": "165", - "measuredW": "7", + "measuredW": "150", + "measuredH": "100", + "x": "727", + "y": "2945", "properties": { "color": "2848996", "curvature": "0", @@ -237,46 +242,18 @@ "y": 0 }, "rightArrow": "false" - }, + } + }, + { + "ID": "2059", "typeID": "Arrow", - "w": "8", - "x": "727", - "y": "2945", - "zOrder": "7" - }, - { - "ID": "737", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "207", - "x": "632", - "y": "3094", - "zOrder": "8" - }, - { - "ID": "738", - "measuredH": "25", - "measuredW": "117", - "properties": { - "bold": "true", - "size": "17", - "text": "Keep Learning" - }, - "typeID": "Label", - "x": "677", - "y": "3107", - "zOrder": "9" - }, - { - "ID": "739", + "zOrder": "9", + "w": "131", "h": "1", - "measuredH": "1", - "measuredW": "131", + "measuredW": "150", + "measuredH": "100", + "x": "850", + "y": "2890", "properties": { "color": "2848996", "direction": "bottom", @@ -295,18 +272,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "131", - "x": "850", - "y": "2890", - "zOrder": "10" + } }, { - "ID": "740", + "ID": "2060", + "typeID": "Arrow", + "zOrder": "10", + "w": "71", "h": "11", - "measuredH": "11", - "measuredW": "71", + "measuredW": "150", + "measuredH": "100", + "x": "256", + "y": "2910", "properties": { "color": "2848996", "direction": "bottom", @@ -325,18 +302,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "71", - "x": "256", - "y": "2910", - "zOrder": "11" + } }, { - "ID": "741", + "ID": "2061", + "typeID": "Arrow", + "zOrder": "11", + "w": "71", "h": "31", - "measuredH": "31", - "measuredW": "71", + "measuredW": "150", + "measuredH": "100", + "x": "255", + "y": "2912", "properties": { "color": "2848996", "direction": "bottom", @@ -355,18 +332,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "71", - "x": "255", - "y": "2912", - "zOrder": "12" + } }, { - "ID": "742", + "ID": "2062", + "typeID": "Arrow", + "zOrder": "12", + "w": "64", "h": "17", - "measuredH": "17", - "measuredW": "64", + "measuredW": "150", + "measuredH": "100", + "x": "256", + "y": "2894", "properties": { "color": "2848996", "direction": "bottom", @@ -385,18 +362,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "64", - "x": "256", - "y": "2894", - "zOrder": "13" + } }, { - "ID": "743", + "ID": "2063", + "typeID": "Arrow", + "zOrder": "13", + "w": "81", "h": "52", - "measuredH": "52", - "measuredW": "81", + "measuredW": "150", + "measuredH": "100", + "x": "238", + "y": "2791", "properties": { "color": "2848996", "direction": "bottom", @@ -415,18 +392,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "81", - "x": "238", - "y": "2791", - "zOrder": "14" + } }, { - "ID": "744", + "ID": "2064", + "typeID": "Arrow", + "zOrder": "14", + "w": "87", "h": "35", - "measuredH": "35", - "measuredW": "87", + "measuredW": "150", + "measuredH": "100", + "x": "236", + "y": "2732", "properties": { "color": "2848996", "direction": "bottom", @@ -445,18 +422,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "87", - "x": "236", - "y": "2732", - "zOrder": "15" + } }, { - "ID": "745", + "ID": "2065", + "typeID": "Arrow", + "zOrder": "15", + "w": "88", "h": "39", - "measuredH": "39", - "measuredW": "88", + "measuredW": "150", + "measuredH": "100", + "x": "238", + "y": "2779", "properties": { "color": "2848996", "direction": "bottom", @@ -475,18 +452,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "88", - "x": "238", - "y": "2779", - "zOrder": "16" + } }, { - "ID": "746", + "ID": "2066", + "typeID": "Arrow", + "zOrder": "16", + "w": "92", "h": "15", - "measuredH": "15", - "measuredW": "92", + "measuredW": "150", + "measuredH": "100", + "x": "238", + "y": "2775", "properties": { "color": "2848996", "direction": "bottom", @@ -505,18 +482,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "92", - "x": "238", - "y": "2775", - "zOrder": "17" + } }, { - "ID": "747", + "ID": "2067", + "typeID": "Arrow", + "zOrder": "17", + "w": "84", "h": "11", - "measuredH": "11", - "measuredW": "84", + "measuredW": "150", + "measuredH": "100", + "x": "237", + "y": "2761", "properties": { "color": "2848996", "direction": "bottom", @@ -535,18 +512,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "84", - "x": "237", - "y": "2761", - "zOrder": "18" + } }, { - "ID": "748", + "ID": "2068", + "typeID": "Arrow", + "zOrder": "18", + "w": "131", "h": "2", - "measuredH": "2", - "measuredW": "131", + "measuredW": "150", + "measuredH": "100", + "x": "462", + "y": "2914", "properties": { "color": "2848996", "direction": "bottom", @@ -565,18 +542,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "131", - "x": "462", - "y": "2914", - "zOrder": "19" + } }, { - "ID": "749", + "ID": "2069", + "typeID": "Arrow", + "zOrder": "19", + "w": "83", "h": "112", - "measuredH": "112", - "measuredW": "83", + "measuredW": "150", + "measuredH": "100", + "x": "501", + "y": "2780", "properties": { "color": "2848996", "direction": "bottom", @@ -595,47 +572,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2072", "typeID": "Arrow", - "w": "83", - "x": "501", - "y": "2780", - "zOrder": "20" - }, - { - "ID": "750", - "h": "123", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "335", - "x": "938", - "y": "2962", - "zOrder": "21" - }, - { - "ID": "751", - "measuredH": "25", - "measuredW": "276", - "properties": { - "bold": "true", - "size": "17", - "text": "Building with Observability in mind" - }, - "typeID": "Label", - "w": "281", - "x": "968", - "y": "2974", - "zOrder": "22" - }, - { - "ID": "752", + "zOrder": "21", + "w": "35", "h": "95", - "measuredH": "95", - "measuredW": "35", + "measuredW": "150", + "measuredH": "100", + "x": "802", + "y": "2754", "properties": { "color": "2848996", "direction": "bottom", @@ -653,18 +601,18 @@ "y": 0 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "35", - "x": "802", - "y": "2754", - "zOrder": "23" + } }, { - "ID": "753", + "ID": "2073", + "typeID": "Arrow", + "zOrder": "22", + "w": "162", "h": "1", - "measuredH": "1", - "measuredW": "162", + "measuredW": "150", + "measuredH": "100", + "x": "623", + "y": "2742", "properties": { "color": "2848996", "direction": "bottom", @@ -682,18 +630,18 @@ "y": 0.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "162", - "x": "623", - "y": "2742", - "zOrder": "24" + } }, { - "ID": "754", + "ID": "2074", + "typeID": "Arrow", + "zOrder": "23", + "w": "2", "h": "80", - "measuredH": "80", - "measuredW": "2", + "measuredW": "150", + "measuredH": "100", + "x": "1078", + "y": "2129", "properties": { "color": "2848996", "curvature": "-1", @@ -712,18 +660,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "2", - "x": "1078", - "y": "2129", - "zOrder": "25" + } }, { - "ID": "755", + "ID": "2075", + "typeID": "Arrow", + "zOrder": "24", + "w": "88", "h": "1", - "measuredH": "1", - "measuredW": "88", + "measuredW": "150", + "measuredH": "100", + "x": "811", + "y": "2137", "properties": { "color": "2848996", "direction": "bottom", @@ -741,18 +689,18 @@ "y": -0.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "88", - "x": "811", - "y": "2137", - "zOrder": "26" + } }, { - "ID": "756", + "ID": "2076", + "typeID": "Arrow", + "zOrder": "25", + "w": "98", "h": "196", - "measuredH": "196", - "measuredW": "98", + "measuredW": "150", + "measuredH": "100", + "x": "407", + "y": "2156", "properties": { "color": "2848996", "curvature": "-1", @@ -771,18 +719,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "98", - "x": "407", - "y": "2156", - "zOrder": "27" + } }, { - "ID": "757", + "ID": "2077", + "typeID": "Arrow", + "zOrder": "26", + "w": "95", "h": "160", - "measuredH": "160", - "measuredW": "95", + "measuredW": "150", + "measuredH": "100", + "x": "409", + "y": "2147", "properties": { "color": "2848996", "curvature": "-1", @@ -801,18 +749,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "95", - "x": "409", - "y": "2147", - "zOrder": "28" + } }, { - "ID": "758", + "ID": "2078", + "typeID": "Arrow", + "zOrder": "27", + "w": "108", "h": "80", - "measuredH": "80", - "measuredW": "108", + "measuredW": "150", + "measuredH": "100", + "x": "649", + "y": "2053", "properties": { "color": "2848996", "direction": "bottom", @@ -830,18 +778,18 @@ "y": 0 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "108", - "x": "649", - "y": "2053", - "zOrder": "29" + } }, { - "ID": "759", + "ID": "2079", + "typeID": "Arrow", + "zOrder": "28", + "w": "99", "h": "91", - "measuredH": "91", - "measuredW": "99", + "measuredW": "150", + "measuredH": "100", + "x": "410", + "y": "2135", "properties": { "color": "2848996", "curvature": "-1", @@ -860,18 +808,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "99", - "x": "410", - "y": "2135", - "zOrder": "30" + } }, { - "ID": "760", + "ID": "2080", + "typeID": "Arrow", + "zOrder": "29", + "w": "67", "h": "36", - "measuredH": "36", - "measuredW": "67", + "measuredW": "150", + "measuredH": "100", + "x": "452", + "y": "1787", "properties": { "color": "2848996", "curvature": "-1", @@ -890,18 +838,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "67", - "x": "452", - "y": "1787", - "zOrder": "31" + } }, { - "ID": "761", + "ID": "2081", + "typeID": "Arrow", + "zOrder": "30", + "w": "103", "h": "46", - "measuredH": "46", - "measuredW": "103", + "measuredW": "150", + "measuredH": "100", + "x": "404", + "y": "2132", "properties": { "color": "2848996", "curvature": "-1", @@ -920,18 +868,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "103", - "x": "404", - "y": "2132", - "zOrder": "32" + } }, { - "ID": "762", + "ID": "2082", + "typeID": "Arrow", + "zOrder": "31", + "w": "121", "h": "4", - "measuredH": "4", - "measuredW": "121", + "measuredW": "150", + "measuredH": "100", + "x": "387", + "y": "2128", "properties": { "color": "2848996", "curvature": "-1", @@ -950,18 +898,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "121", - "x": "387", - "y": "2128", - "zOrder": "33" + } }, { - "ID": "763", + "ID": "2083", + "typeID": "Arrow", + "zOrder": "32", + "w": "107", "h": "38", - "measuredH": "38", - "measuredW": "107", + "measuredW": "150", + "measuredH": "100", + "x": "401", + "y": "2086", "properties": { "color": "2848996", "curvature": "-1", @@ -980,18 +928,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "107", - "x": "401", - "y": "2086", - "zOrder": "34" + } }, { - "ID": "764", + "ID": "2084", + "typeID": "Arrow", + "zOrder": "33", + "w": "105", "h": "128", - "measuredH": "128", - "measuredW": "105", + "measuredW": "150", + "measuredH": "100", + "x": "402", + "y": "2136", "properties": { "color": "2848996", "curvature": "-1", @@ -1010,18 +958,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "105", - "x": "402", - "y": "2136", - "zOrder": "35" + } }, { - "ID": "765", + "ID": "2085", + "typeID": "Arrow", + "zOrder": "34", + "w": "57", "h": "105", - "measuredH": "105", - "measuredW": "57", + "measuredW": "150", + "measuredH": "100", + "x": "741", + "y": "2132", "properties": { "color": "2848996", "direction": "bottom", @@ -1039,131 +987,18 @@ "y": 0 }, "rightArrow": "false" - }, + } + }, + { + "ID": "2094", "typeID": "Arrow", - "w": "57", - "x": "741", - "y": "2132", - "zOrder": "36" - }, - { - "ID": "766", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "317", - "x": "887", - "y": "2111", - "zOrder": "37" - }, - { - "ID": "767", - "measuredH": "25", - "measuredW": "179", - "properties": { - "bold": "true", - "size": "17", - "text": "Architectural Patterns" - }, - "typeID": "Label", - "w": "183", - "x": "954", - "y": "2124", - "zOrder": "38" - }, - { - "ID": "768", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "243", - "x": "958", - "y": "2179", - "zOrder": "39" - }, - { - "ID": "769", - "measuredH": "25", - "measuredW": "121", - "properties": { - "size": "17", - "text": "Monolithic Apps" - }, - "typeID": "Label", - "w": "123", - "x": "1018", - "y": "2187", - "zOrder": "40" - }, - { - "ID": "770", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "244", - "x": "958", - "y": "2224", - "zOrder": "41" - }, - { - "ID": "771", - "measuredH": "25", - "measuredW": "109", - "properties": { - "size": "17", - "text": "Microservices" - }, - "typeID": "Label", - "w": "112", - "x": "1024", - "y": "2231", - "zOrder": "42" - }, - { - "ID": "772", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "245", - "x": "957", - "y": "2306", - "zOrder": "43" - }, - { - "ID": "773", - "measuredH": "25", - "measuredW": "207", - "properties": { - "size": "17", - "text": "CQRS and Event Sourcing" - }, - "typeID": "Label", - "w": "209", - "x": "975", - "y": "2312", - "zOrder": "44" - }, - { - "ID": "774", + "zOrder": "39", + "w": "1", "h": "63", - "measuredH": "63", - "measuredW": "0", + "measuredW": "150", + "measuredH": "100", + "x": "582", + "y": "2245", "properties": { "color": "2848996", "curvature": "0", @@ -1183,18 +1018,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "1", - "x": "582", - "y": "2245", - "zOrder": "45" + } }, { - "ID": "775", + "ID": "2095", + "typeID": "Arrow", + "zOrder": "40", + "w": "1", "h": "181", - "measuredH": "181", - "measuredW": "1", + "measuredW": "150", + "measuredH": "100", + "x": "799", + "y": "2235", "properties": { "color": "2848996", "direction": "bottom", @@ -1212,131 +1047,18 @@ "y": 0 }, "rightArrow": "false" - }, + } + }, + { + "ID": "2104", "typeID": "Arrow", - "w": "1", - "x": "799", - "y": "2235", - "zOrder": "46" - }, - { - "ID": "776", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "313", - "x": "512", - "y": "2210", - "zOrder": "47" - }, - { - "ID": "777", - "measuredH": "25", - "measuredW": "124", - "properties": { - "bold": "true", - "size": "17", - "text": "Search Engines" - }, - "typeID": "Label", - "w": "126", - "x": "606", - "y": "2222", - "zOrder": "48" - }, - { - "ID": "778", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "160", - "x": "514", - "y": "2290", - "zOrder": "49" - }, - { - "ID": "779", - "measuredH": "25", - "measuredW": "104", - "properties": { - "size": "17", - "text": "Elasticsearch" - }, - "typeID": "Label", - "w": "106", - "x": "546", - "y": "2298", - "zOrder": "50" - }, - { - "ID": "780", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "157", - "x": "514", - "y": "2334", - "zOrder": "51" - }, - { - "ID": "781", - "measuredH": "25", - "measuredW": "31", - "properties": { - "size": "17", - "text": "Solr" - }, - "typeID": "Label", - "w": "36", - "x": "575", - "y": "2342", - "zOrder": "52" - }, - { - "ID": "782", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "244", - "x": "958", - "y": "2265", - "zOrder": "53" - }, - { - "ID": "783", - "measuredH": "25", - "measuredW": "35", - "properties": { - "size": "17", - "text": "SOA" - }, - "typeID": "Label", - "w": "38", - "x": "1061", - "y": "2272", - "zOrder": "54" - }, - { - "ID": "784", + "zOrder": "45", + "w": "4", "h": "109", - "measuredH": "109", - "measuredW": "4", + "measuredW": "150", + "measuredH": "100", + "x": "598", + "y": "2630", "properties": { "color": "2848996", "direction": "bottom", @@ -1354,18 +1076,18 @@ "y": 108.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "4", - "x": "598", - "y": "2630", - "zOrder": "55" + } }, { - "ID": "785", + "ID": "2105", + "typeID": "Arrow", + "zOrder": "46", + "w": "96", "h": "3", - "measuredH": "3", - "measuredW": "96", + "measuredW": "150", + "measuredH": "100", + "x": "394", + "y": "2622", "properties": { "color": "2848996", "curvature": "0", @@ -1385,46 +1107,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2108", "typeID": "Arrow", - "w": "96", - "x": "394", - "y": "2622", - "zOrder": "56" - }, - { - "ID": "786", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "259", - "y": "2603", - "zOrder": "57" - }, - { - "ID": "787", - "measuredH": "25", - "measuredW": "47", - "properties": { - "size": "17", - "text": "Neo4j" - }, - "typeID": "Label", - "w": "51", - "x": "305", - "y": "2611", - "zOrder": "58" - }, - { - "ID": "788", + "zOrder": "48", + "w": "120", "h": "29", - "measuredH": "29", - "measuredW": "120", + "measuredW": "150", + "measuredH": "100", + "x": "851", + "y": "2537", "properties": { "color": "2848996", "curvature": "0", @@ -1444,18 +1138,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "120", - "x": "851", - "y": "2537", - "zOrder": "59" + } }, { - "ID": "789", + "ID": "2109", + "typeID": "Arrow", + "zOrder": "49", + "w": "121", "h": "13", - "measuredH": "13", - "measuredW": "121", + "measuredW": "150", + "measuredH": "100", + "x": "849", + "y": "2570", "properties": { "color": "2848996", "curvature": "0", @@ -1475,18 +1169,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "121", - "x": "849", - "y": "2570", - "zOrder": "60" + } }, { - "ID": "790", + "ID": "2110", + "typeID": "Arrow", + "zOrder": "50", + "w": "188", "h": "66", - "measuredH": "66", - "measuredW": "188", + "measuredW": "150", + "measuredH": "100", + "x": "619", + "y": "2559", "properties": { "color": "2848996", "direction": "bottom", @@ -1504,18 +1198,18 @@ "y": 0 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "188", - "x": "619", - "y": "2559", - "zOrder": "61" + } }, { - "ID": "791", + "ID": "2111", + "typeID": "Arrow", + "zOrder": "51", + "w": "75", "h": "25", - "measuredH": "25", - "measuredW": "75", + "measuredW": "150", + "measuredH": "100", + "x": "311", + "y": "2462", "properties": { "color": "2848996", "curvature": "0", @@ -1535,18 +1229,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "75", - "x": "311", - "y": "2462", - "zOrder": "62" + } }, { - "ID": "792", + "ID": "2112", + "typeID": "Arrow", + "zOrder": "52", + "w": "78", "h": "4", - "measuredH": "3", - "measuredW": "78", + "measuredW": "150", + "measuredH": "100", + "x": "310", + "y": "2498", "properties": { "color": "2848996", "curvature": "0", @@ -1566,18 +1260,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "78", - "x": "310", - "y": "2498", - "zOrder": "63" + } }, { - "ID": "793", + "ID": "2113", + "typeID": "Arrow", + "zOrder": "53", + "w": "96", "h": "47", - "measuredH": "47", - "measuredW": "96", + "measuredW": "150", + "measuredH": "100", + "x": "304", + "y": "2499", "properties": { "color": "2848996", "curvature": "0", @@ -1597,18 +1291,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "96", - "x": "304", - "y": "2499", - "zOrder": "64" + } }, { - "ID": "794", + "ID": "2114", + "typeID": "Arrow", + "zOrder": "54", + "w": "199", "h": "84", - "measuredH": "84", - "measuredW": "199", + "measuredW": "150", + "measuredH": "100", + "x": "885", + "y": "2745", "properties": { "color": "2848996", "curvature": "0", @@ -1628,18 +1322,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "199", - "x": "885", - "y": "2745", - "zOrder": "65" + } }, { - "ID": "795", + "ID": "2115", + "typeID": "Arrow", + "zOrder": "55", + "w": "199", "h": "42", - "measuredH": "42", - "measuredW": "199", + "measuredW": "150", + "measuredH": "100", + "x": "887", + "y": "2746", "properties": { "color": "2848996", "curvature": "0", @@ -1659,18 +1353,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "199", - "x": "887", - "y": "2746", - "zOrder": "66" + } }, { - "ID": "796", + "ID": "2116", + "typeID": "Arrow", + "zOrder": "56", + "w": "196", "h": "5", - "measuredH": "5", - "measuredW": "196", + "measuredW": "150", + "measuredH": "100", + "x": "894", + "y": "2736", "properties": { "color": "2848996", "curvature": "0", @@ -1690,18 +1384,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "196", - "x": "894", - "y": "2736", - "zOrder": "67" + } }, { - "ID": "797", + "ID": "2117", + "typeID": "Arrow", + "zOrder": "57", + "w": "197", "h": "42", - "measuredH": "42", - "measuredW": "197", + "measuredW": "150", + "measuredH": "100", + "x": "892", + "y": "2696", "properties": { "color": "2848996", "curvature": "0", @@ -1721,18 +1415,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "197", - "x": "892", - "y": "2696", - "zOrder": "68" + } }, { - "ID": "798", + "ID": "2118", + "typeID": "Arrow", + "zOrder": "58", + "w": "199", "h": "54", - "measuredH": "54", - "measuredW": "199", + "measuredW": "150", + "measuredH": "100", + "x": "540", + "y": "2507", "properties": { "color": "2848996", "direction": "bottom", @@ -1750,18 +1444,18 @@ "y": -0.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "199", - "x": "540", - "y": "2507", - "zOrder": "69" + } }, { - "ID": "799", + "ID": "2119", + "typeID": "Arrow", + "zOrder": "59", + "w": "192", "h": "55", - "measuredH": "56", - "measuredW": "192", + "measuredW": "150", + "measuredH": "100", + "x": "526", + "y": "2437", "properties": { "color": "2848996", "direction": "bottom", @@ -1779,18 +1473,18 @@ "y": 0.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "192", - "x": "526", - "y": "2437", - "zOrder": "70" + } }, { - "ID": "800", + "ID": "2120", + "typeID": "Arrow", + "zOrder": "60", + "w": "149", "h": "15", - "measuredH": "15", - "measuredW": "149", + "measuredW": "150", + "measuredH": "100", + "x": "876", + "y": "2441", "properties": { "color": "2848996", "curvature": "0", @@ -1809,18 +1503,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "149", - "x": "876", - "y": "2441", - "zOrder": "71" + } }, { - "ID": "801", + "ID": "2121", + "typeID": "Arrow", + "zOrder": "61", + "w": "106", "h": "9", - "measuredH": "9", - "measuredW": "106", + "measuredW": "150", + "measuredH": "100", + "x": "910", + "y": "2422", "properties": { "color": "2848996", "curvature": "0", @@ -1840,482 +1534,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2154", "typeID": "Arrow", - "w": "106", - "x": "910", - "y": "2422", - "zOrder": "72" - }, - { - "ID": "802", - "measuredH": "32", - "measuredW": "95", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "RabbitMQ" - }, - "typeID": "TextInput", - "w": "183", - "x": "1006", - "y": "2403", - "zOrder": "73" - }, - { - "ID": "803", - "measuredH": "32", - "measuredW": "63", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "Kafka" - }, - "typeID": "TextInput", - "w": "183", - "x": "1006", - "y": "2439", - "zOrder": "74" - }, - { - "ID": "804", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "221", - "x": "701", - "y": "2413", - "zOrder": "75" - }, - { - "ID": "805", - "measuredH": "25", - "measuredW": "139", - "properties": { - "bold": "true", - "size": "17", - "text": "Message Brokers" - }, - "typeID": "Label", - "w": "141", - "x": "741", - "y": "2425", - "zOrder": "76" - }, - { - "ID": "806", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "294", - "x": "383", - "y": "2470", - "zOrder": "77" - }, - { - "ID": "807", - "measuredH": "25", - "measuredW": "269", - "properties": { - "bold": "true", - "size": "17", - "text": "Containerization vs Virtualization" - }, - "typeID": "Label", - "w": "270", - "x": "396", - "y": "2483", - "zOrder": "78" - }, - { - "ID": "808", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "163", - "x": "750", - "y": "2716", - "zOrder": "79" - }, - { - "ID": "809", - "measuredH": "25", - "measuredW": "104", - "properties": { - "bold": "true", - "size": "17", - "text": "Web Servers" - }, - "typeID": "Label", - "w": "108", - "x": "784", - "y": "2729", - "zOrder": "80" - }, - { - "ID": "810", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "1053", - "y": "2675", - "zOrder": "81" - }, - { - "ID": "811", - "measuredH": "25", - "measuredW": "43", - "properties": { - "size": "17", - "text": "Nginx" - }, - "typeID": "Label", - "w": "46", - "x": "1102", - "y": "2683", - "zOrder": "82" - }, - { - "ID": "812", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "1053", - "y": "2721", - "zOrder": "83" - }, - { - "ID": "813", - "measuredH": "25", - "measuredW": "58", - "properties": { - "size": "17", - "text": "Apache" - }, - "typeID": "Label", - "w": "60", - "x": "1095", - "y": "2729", - "zOrder": "84" - }, - { - "ID": "814", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "1053", - "y": "2766", - "zOrder": "85" - }, - { - "ID": "815", - "measuredH": "25", - "measuredW": "50", - "properties": { - "size": "17", - "text": "Caddy" - }, - "typeID": "Label", - "w": "53", - "x": "1098", - "y": "2774", - "zOrder": "86" - }, - { - "ID": "816", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "1053", - "y": "2810", - "zOrder": "87" - }, - { - "ID": "817", - "measuredH": "25", - "measuredW": "53", - "properties": { - "size": "17", - "text": "MS IIS" - }, - "typeID": "Label", - "w": "55", - "x": "1102", - "y": "2818", - "zOrder": "88" - }, - { - "ID": "818", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "170", - "y": "2436", - "zOrder": "89" - }, - { - "ID": "819", - "measuredH": "25", - "measuredW": "55", - "properties": { - "size": "17", - "text": "Docker" - }, - "typeID": "Label", - "w": "58", - "x": "217", - "y": "2444", - "zOrder": "90" - }, - { - "ID": "820", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "borderColor": "6710886", - "color": "15658734", - "textColor": "6710886" - }, - "typeID": "TextArea", - "w": "144", - "x": "170", - "y": "2482", - "zOrder": "91" - }, - { - "ID": "821", - "measuredH": "25", - "measuredW": "22", - "properties": { - "color": "3355443", - "size": "17", - "text": "rkt" - }, - "typeID": "Label", - "w": "24", - "x": "230", - "y": "2490", - "zOrder": "92" - }, - { - "ID": "822", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "borderColor": "6710886", - "color": "14540253", - "textColor": "6710886" - }, - "typeID": "TextArea", - "w": "144", - "x": "170", - "y": "2527", - "zOrder": "93" - }, - { - "ID": "823", - "measuredH": "25", - "measuredW": "34", - "properties": { - "color": "3355443", - "size": "17", - "text": "LXC" - }, - "typeID": "Label", - "w": "37", - "x": "223", - "y": "2535", - "zOrder": "94" - }, - { - "ID": "824", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "163", - "x": "695", - "y": "2535", - "zOrder": "95" - }, - { - "ID": "825", - "measuredH": "25", - "measuredW": "72", - "properties": { - "bold": "true", - "size": "17", - "text": "GraphQL" - }, - "typeID": "Label", - "w": "79", - "x": "737", - "y": "2548", - "zOrder": "96" - }, - { - "ID": "826", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "957", - "y": "2518", - "zOrder": "97" - }, - { - "ID": "827", - "measuredH": "25", - "measuredW": "47", - "properties": { - "size": "17", - "text": "Apollo" - }, - "typeID": "Label", - "w": "50", - "x": "1004", - "y": "2526", - "zOrder": "98" - }, - { - "ID": "828", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "957", - "y": "2564", - "zOrder": "99" - }, - { - "ID": "829", - "measuredH": "25", - "measuredW": "106", - "properties": { - "size": "17", - "text": "Relay Modern" - }, - "typeID": "Label", - "w": "108", - "x": "975", - "y": "2572", - "zOrder": "100" - }, - { - "ID": "830", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "184", - "x": "454", - "y": "2597", - "zOrder": "101" - }, - { - "ID": "831", - "measuredH": "25", - "measuredW": "140", - "properties": { - "bold": "true", - "size": "17", - "text": "Graph Databases" - }, - "typeID": "Label", - "w": "143", - "x": "474", - "y": "2610", - "zOrder": "102" - }, - { - "ID": "832", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "159", - "x": "549", - "y": "2718", - "zOrder": "103" - }, - { - "ID": "833", - "measuredH": "25", - "measuredW": "101", - "properties": { - "bold": "true", - "size": "17", - "text": "WebSockets" - }, - "typeID": "Label", - "w": "104", - "x": "577", - "y": "2731", - "zOrder": "104" - }, - { - "ID": "834", + "zOrder": "79", + "w": "85", "h": "75", - "measuredH": "75", - "measuredW": "85", + "measuredW": "150", + "measuredH": "100", + "x": "602", + "y": "1137", "properties": { "color": "2848996", "direction": "bottom", @@ -2333,18 +1563,18 @@ "y": 74.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "85", - "x": "602", - "y": "1137", - "zOrder": "105" + } }, { - "ID": "835", + "ID": "2155", + "typeID": "Arrow", + "zOrder": "80", + "w": "14", "h": "62", - "measuredH": "62", - "measuredW": "14", + "measuredW": "150", + "measuredH": "100", + "x": "590", + "y": "1983", "properties": { "color": "2848996", "direction": "bottom", @@ -2362,18 +1592,18 @@ "y": 0 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "14", - "x": "590", - "y": "1983", - "zOrder": "106" + } }, { - "ID": "836", + "ID": "2156", + "typeID": "Arrow", + "zOrder": "81", + "w": "78", "h": "48", - "measuredH": "48", - "measuredW": "78", + "measuredW": "150", + "measuredH": "100", + "x": "464", + "y": "1975", "properties": { "color": "2848996", "curvature": "-1", @@ -2392,18 +1622,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "78", - "x": "464", - "y": "1975", - "zOrder": "107" + } }, { - "ID": "837", + "ID": "2157", + "typeID": "Arrow", + "zOrder": "82", + "w": "81", "h": "4", - "measuredH": "4", - "measuredW": "81", + "measuredW": "150", + "measuredH": "100", + "x": "455", + "y": "1973", "properties": { "color": "2848996", "curvature": "-1", @@ -2422,18 +1652,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "81", - "x": "455", - "y": "1973", - "zOrder": "108" + } }, { - "ID": "838", + "ID": "2158", + "typeID": "Arrow", + "zOrder": "83", + "w": "86", "h": "33", - "measuredH": "33", - "measuredW": "86", + "measuredW": "150", + "measuredH": "100", + "x": "457", + "y": "1932", "properties": { "color": "2848996", "curvature": "-1", @@ -2452,18 +1682,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "86", - "x": "457", - "y": "1932", - "zOrder": "109" + } }, { - "ID": "839", + "ID": "2159", + "typeID": "Arrow", + "zOrder": "84", + "w": "107", "h": "129", - "measuredH": "129", - "measuredW": "106", + "measuredW": "150", + "measuredH": "100", + "x": "683", + "y": "1839", "properties": { "color": "2848996", "direction": "bottom", @@ -2481,18 +1711,18 @@ "y": -0.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "107", - "x": "683", - "y": "1839", - "zOrder": "110" + } }, { - "ID": "840", + "ID": "2160", + "typeID": "Arrow", + "zOrder": "85", + "w": "80", "h": "1", - "measuredH": "1", - "measuredW": "80", + "measuredW": "150", + "measuredH": "100", + "x": "959", + "y": "1833", "properties": { "color": "2848996", "curvature": "-1", @@ -2511,18 +1741,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "80", - "x": "959", - "y": "1833", - "zOrder": "111" + } }, { - "ID": "841", + "ID": "2161", + "typeID": "Arrow", + "zOrder": "86", + "w": "123", "h": "5", - "measuredH": "5", - "measuredW": "123", + "measuredW": "150", + "measuredH": "100", + "x": "642", + "y": "1839", "properties": { "color": "2848996", "direction": "bottom", @@ -2540,18 +1770,18 @@ "y": 4.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "123", - "x": "642", - "y": "1839", - "zOrder": "112" + } }, { - "ID": "842", + "ID": "2162", + "typeID": "Arrow", + "zOrder": "87", + "w": "94", "h": "52", - "measuredH": "52", - "measuredW": "94", + "measuredW": "150", + "measuredH": "100", + "x": "693", + "y": "1630", "properties": { "color": "2848996", "curvature": "-1", @@ -2570,18 +1800,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "94", - "x": "693", - "y": "1630", - "zOrder": "113" + } }, { - "ID": "843", + "ID": "2163", + "typeID": "Arrow", + "zOrder": "88", + "w": "70", "h": "1", - "measuredH": "1", - "measuredW": "70", + "measuredW": "150", + "measuredH": "100", + "x": "386", + "y": "1682", "properties": { "color": "2848996", "curvature": "-1", @@ -2600,125 +1830,29 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "70", - "x": "386", - "y": "1682", - "zOrder": "114" + } }, { - "ID": "844", - "h": "282", - "measuredH": "140", - "measuredW": "200", + "ID": "2164", "typeID": "TextArea", + "zOrder": "89", "w": "248", + "h": "282", + "measuredW": "200", + "measuredH": "140", "x": "165", - "y": "1472", - "zOrder": "115" + "y": "1472" }, { - "ID": "845", - "measuredH": "32", - "measuredW": "63", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "OAuth" - }, - "typeID": "TextInput", - "w": "223", - "x": "177", - "y": "1524", - "zOrder": "116" - }, - { - "ID": "846", - "measuredH": "32", - "measuredW": "180", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "Basic Authentication" - }, - "typeID": "TextInput", - "w": "223", - "x": "177", - "y": "1560", - "zOrder": "117" - }, - { - "ID": "847", - "measuredH": "32", - "measuredW": "183", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "Token Authentication" - }, - "typeID": "TextInput", - "w": "223", - "x": "177", - "y": "1596", - "zOrder": "118" - }, - { - "ID": "848", - "measuredH": "32", - "measuredW": "55", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "JWT" - }, - "typeID": "TextInput", - "w": "223", - "x": "177", - "y": "1633", - "zOrder": "119" - }, - { - "ID": "849", - "measuredH": "32", - "measuredW": "77", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "OpenID" - }, - "typeID": "TextInput", - "w": "223", - "x": "178", - "y": "1669", - "zOrder": "120" - }, - { - "ID": "850", - "measuredH": "32", - "measuredW": "63", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "SAML" - }, - "typeID": "TextInput", - "w": "223", - "x": "178", - "y": "1706", - "zOrder": "121" - }, - { - "ID": "851", + "ID": "2171", + "typeID": "Arrow", + "zOrder": "96", + "w": "57", "h": "33", - "measuredH": "33", - "measuredW": "57", + "measuredW": "150", + "measuredH": "100", + "x": "456", + "y": "1843", "properties": { "color": "2848996", "curvature": "-1", @@ -2737,18 +1871,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "57", - "x": "456", - "y": "1843", - "zOrder": "122" + } }, { - "ID": "852", + "ID": "2172", + "typeID": "Arrow", + "zOrder": "97", + "w": "95", "h": "3", - "measuredH": "3", - "measuredW": "95", + "measuredW": "150", + "measuredH": "100", + "x": "427", + "y": "1832", "properties": { "color": "2848996", "curvature": "-1", @@ -2767,18 +1901,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "95", - "x": "427", - "y": "1832", - "zOrder": "123" + } }, { - "ID": "853", + "ID": "2173", + "typeID": "Arrow", + "zOrder": "98", + "w": "81", "h": "20", - "measuredH": "20", - "measuredW": "81", + "measuredW": "150", + "measuredH": "100", + "x": "269", + "y": "1836", "properties": { "color": "2848996", "curvature": "-1", @@ -2797,18 +1931,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "81", - "x": "269", - "y": "1836", - "zOrder": "124" + } }, { - "ID": "854", + "ID": "2174", + "typeID": "Arrow", + "zOrder": "99", + "w": "87", "h": "23", - "measuredH": "23", - "measuredW": "87", + "measuredW": "150", + "measuredH": "100", + "x": "262", + "y": "1809", "properties": { "color": "2848996", "curvature": "-1", @@ -2827,216 +1961,47 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "87", - "x": "262", - "y": "1809", - "zOrder": "125" + } }, { - "ID": "855", - "h": "203", - "measuredH": "203", - "measuredW": "242", + "ID": "2175", + "typeID": "Arrow", + "zOrder": "100", + "w": "242", + "h": "206", + "measuredW": "150", + "measuredH": "100", + "x": "646", + "y": "1622", "properties": { "color": "2848996", "direction": "bottom", "leftArrow": "false", + "rightArrow": "false", "p0": { "x": 242, "y": 0 }, "p1": { "x": 0.5151777033596199, - "y": 0.14994058550286277 + "y": 0.14994058550286274 }, "p2": { - "x": 0, - "y": 202.5 - }, - "rightArrow": "false" - }, + "x": 0.21212121212113288, + "y": 206.030303030303 + } + } + }, + { + "ID": "2188", "typeID": "Arrow", - "w": "242", - "x": "646", - "y": "1622", - "zOrder": "126" - }, - { - "ID": "856", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "159", - "x": "502", - "y": "1809", - "zOrder": "127" - }, - { - "ID": "857", - "measuredH": "25", - "measuredW": "65", - "properties": { - "bold": "true", - "size": "17", - "text": "Caching" - }, - "typeID": "Label", - "w": "70", - "x": "545", - "y": "1822", - "zOrder": "128" - }, - { - "ID": "858", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "145", - "y": "1790", - "zOrder": "129" - }, - { - "ID": "859", - "measuredH": "25", - "measuredW": "44", - "properties": { - "size": "17", - "text": "Redis" - }, - "typeID": "Label", - "w": "46", - "x": "194", - "y": "1798", - "zOrder": "130" - }, - { - "ID": "860", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "144", - "x": "145", - "y": "1836", - "zOrder": "131" - }, - { - "ID": "861", - "measuredH": "25", - "measuredW": "93", - "properties": { - "size": "17", - "text": "Memcached" - }, - "typeID": "Label", - "w": "96", - "x": "173", - "y": "1844", - "zOrder": "132" - }, - { - "ID": "862", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "129", - "x": "341", - "y": "1814", - "zOrder": "133" - }, - { - "ID": "863", - "measuredH": "25", - "measuredW": "93", - "properties": { - "size": "17", - "text": "Server Side" - }, - "typeID": "Label", - "w": "95", - "x": "360", - "y": "1822", - "zOrder": "134" - }, - { - "ID": "864", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "128", - "x": "341", - "y": "1859", - "zOrder": "135" - }, - { - "ID": "865", - "measuredH": "25", - "measuredW": "85", - "properties": { - "size": "17", - "text": "Client Side" - }, - "typeID": "Label", - "w": "88", - "x": "362", - "y": "1867", - "zOrder": "136" - }, - { - "ID": "866", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "129", - "x": "342", - "y": "1772", - "zOrder": "137" - }, - { - "ID": "867", - "measuredH": "25", - "measuredW": "36", - "properties": { - "size": "17", - "text": "CDN" - }, - "typeID": "Label", - "w": "40", - "x": "387", - "y": "1779", - "zOrder": "138" - }, - { - "ID": "868", + "zOrder": "107", + "w": "103", "h": "16", - "measuredH": "15", - "measuredW": "102", + "measuredW": "150", + "measuredH": "100", + "x": "988", + "y": "1446", "properties": { "color": "2848996", "curvature": "-1", @@ -3056,18 +2021,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "103", - "x": "988", - "y": "1446", - "zOrder": "139" + } }, { - "ID": "869", + "ID": "2189", + "typeID": "Arrow", + "zOrder": "108", + "w": "103", "h": "23", - "measuredH": "22", - "measuredW": "103", + "measuredW": "150", + "measuredH": "100", + "x": "989", + "y": "1469", "properties": { "color": "2848996", "curvature": "-1", @@ -3087,18 +2052,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "103", - "x": "989", - "y": "1469", - "zOrder": "140" + } }, { - "ID": "870", + "ID": "2190", + "typeID": "Arrow", + "zOrder": "109", + "w": "100", "h": "15", - "measuredH": "15", - "measuredW": "100", + "measuredW": "150", + "measuredH": "100", + "x": "688", + "y": "1622", "properties": { "color": "2848996", "curvature": "-1", @@ -3117,18 +2082,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "100", - "x": "688", - "y": "1622", - "zOrder": "141" + } }, { - "ID": "871", + "ID": "2191", + "typeID": "Arrow", + "zOrder": "110", + "w": "109", "h": "24", - "measuredH": "24", - "measuredW": "109", + "measuredW": "150", + "measuredH": "100", + "x": "676", + "y": "1592", "properties": { "color": "2848996", "curvature": "-1", @@ -3147,18 +2112,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "109", - "x": "676", - "y": "1592", - "zOrder": "142" + } }, { - "ID": "872", + "ID": "2192", + "typeID": "Arrow", + "zOrder": "111", + "w": "104", "h": "75", - "measuredH": "75", - "measuredW": "104", + "measuredW": "150", + "measuredH": "100", + "x": "995", + "y": "1539", "properties": { "color": "2848996", "curvature": "-1", @@ -3177,18 +2142,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "104", - "x": "995", - "y": "1539", - "zOrder": "143" + } }, { - "ID": "873", + "ID": "2193", + "typeID": "Arrow", + "zOrder": "112", + "w": "96", "h": "37", - "measuredH": "36", - "measuredW": "96", + "measuredW": "150", + "measuredH": "100", + "x": "1001", + "y": "1615", "properties": { "color": "2848996", "curvature": "-1", @@ -3207,18 +2172,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "96", - "x": "1001", - "y": "1615", - "zOrder": "144" + } }, { - "ID": "874", + "ID": "2194", + "typeID": "Arrow", + "zOrder": "113", + "w": "93", "h": "66", - "measuredH": "66", - "measuredW": "93", + "measuredW": "150", + "measuredH": "100", + "x": "1004", + "y": "1625", "properties": { "color": "2848996", "curvature": "-1", @@ -3237,18 +2202,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "93", - "x": "1004", - "y": "1625", - "zOrder": "145" + } }, { - "ID": "875", + "ID": "2195", + "typeID": "Arrow", + "zOrder": "114", + "w": "21", "h": "147", - "measuredH": "147", - "measuredW": "20", + "measuredW": "150", + "measuredH": "100", + "x": "892", + "y": "1465", "properties": { "color": "2848996", "curvature": "-1", @@ -3267,18 +2232,18 @@ "y": 147 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "21", - "x": "892", - "y": "1465", - "zOrder": "146" + } }, { - "ID": "876", + "ID": "2196", + "typeID": "Arrow", + "zOrder": "115", + "w": "105", "h": "58", - "measuredH": "57", - "measuredW": "104", + "measuredW": "150", + "measuredH": "100", + "x": "984", + "y": "1399", "properties": { "color": "2848996", "curvature": "-1", @@ -3298,18 +2263,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "105", - "x": "984", - "y": "1399", - "zOrder": "147" + } }, { - "ID": "877", + "ID": "2197", + "typeID": "Arrow", + "zOrder": "116", + "w": "7", "h": "227", - "measuredH": "226", - "measuredW": "6", + "measuredW": "150", + "measuredH": "100", + "x": "844", + "y": "1221", "properties": { "color": "2848996", "curvature": "0", @@ -3328,18 +2293,18 @@ "y": 226 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "7", - "x": "844", - "y": "1221", - "zOrder": "148" + } }, { - "ID": "878", + "ID": "2198", + "typeID": "Arrow", + "zOrder": "117", + "w": "82", "h": "58", - "measuredH": "58", - "measuredW": "81", + "measuredW": "150", + "measuredH": "100", + "x": "690", + "y": "1471", "properties": { "color": "2848996", "curvature": "-1", @@ -3359,18 +2324,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "82", - "x": "690", - "y": "1471", - "zOrder": "149" + } }, { - "ID": "879", + "ID": "2199", + "typeID": "Arrow", + "zOrder": "118", + "w": "81", "h": "8", - "measuredH": "7", - "measuredW": "80", + "measuredW": "150", + "measuredH": "100", + "x": "689", + "y": "1471", "properties": { "color": "2848996", "curvature": "1", @@ -3390,18 +2355,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "81", - "x": "689", - "y": "1471", - "zOrder": "150" + } }, { - "ID": "880", + "ID": "2200", + "typeID": "Arrow", + "zOrder": "119", + "w": "85", "h": "29", - "measuredH": "28", - "measuredW": "84", + "measuredW": "150", + "measuredH": "100", + "x": "685", + "y": "1436", "properties": { "color": "2848996", "curvature": "-1", @@ -3421,18 +2386,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "85", - "x": "685", - "y": "1436", - "zOrder": "151" + } }, { - "ID": "881", + "ID": "2201", + "typeID": "Arrow", + "zOrder": "120", + "w": "97", "h": "69", - "measuredH": "68", - "measuredW": "96", + "measuredW": "150", + "measuredH": "100", + "x": "675", + "y": "1385", "properties": { "color": "2848996", "curvature": "-1", @@ -3452,18 +2417,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "97", - "x": "675", - "y": "1385", - "zOrder": "152" + } }, { - "ID": "882", + "ID": "2202", + "typeID": "Arrow", + "zOrder": "121", + "w": "74", "h": "94", - "measuredH": "92", - "measuredW": "73", + "measuredW": "150", + "measuredH": "100", + "x": "693", + "y": "1343", "properties": { "color": "2848996", "curvature": "-1", @@ -3483,18 +2448,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "74", - "x": "693", - "y": "1343", - "zOrder": "153" + } }, { - "ID": "883", + "ID": "2203", + "typeID": "Arrow", + "zOrder": "122", + "w": "83", "h": "213", - "measuredH": "212", - "measuredW": "82", + "measuredW": "150", + "measuredH": "100", + "x": "711", + "y": "1226", "properties": { "color": "2848996", "curvature": "1", @@ -3513,18 +2478,18 @@ "y": 212 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "83", - "x": "711", - "y": "1226", - "zOrder": "154" + } }, { - "ID": "884", + "ID": "2204", + "typeID": "Arrow", + "zOrder": "123", + "w": "82", "h": "5", - "measuredH": "4", - "measuredW": "81", + "measuredW": "150", + "measuredH": "100", + "x": "926", + "y": "1201", "properties": { "color": "2848996", "curvature": "-1", @@ -3544,18 +2509,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "82", - "x": "926", - "y": "1201", - "zOrder": "155" + } }, { - "ID": "885", + "ID": "2205", + "typeID": "Arrow", + "zOrder": "124", + "w": "67", "h": "111", - "measuredH": "111", - "measuredW": "67", + "measuredW": "150", + "measuredH": "100", + "x": "428", + "y": "1241", "properties": { "color": "2848996", "curvature": "-1", @@ -3574,18 +2539,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "67", - "x": "428", - "y": "1241", - "zOrder": "156" + } }, { - "ID": "886", + "ID": "2206", + "typeID": "Arrow", + "zOrder": "125", + "w": "78", "h": "157", - "measuredH": "157", - "measuredW": "78", + "measuredW": "150", + "measuredH": "100", + "x": "426", + "y": "1242", "properties": { "color": "2848996", "curvature": "-1", @@ -3604,18 +2569,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "78", - "x": "426", - "y": "1242", - "zOrder": "157" + } }, { - "ID": "887", + "ID": "2207", + "typeID": "Arrow", + "zOrder": "126", + "w": "73", "h": "79", - "measuredH": "79", - "measuredW": "73", + "measuredW": "150", + "measuredH": "100", + "x": "421", + "y": "1229", "properties": { "color": "2848996", "curvature": "-1", @@ -3634,18 +2599,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "73", - "x": "421", - "y": "1229", - "zOrder": "158" + } }, { - "ID": "888", + "ID": "2208", + "typeID": "Arrow", + "zOrder": "127", + "w": "86", "h": "32", - "measuredH": "32", - "measuredW": "86", + "measuredW": "150", + "measuredH": "100", + "x": "414", + "y": "1222", "properties": { "color": "2848996", "curvature": "-1", @@ -3664,18 +2629,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "86", - "x": "414", - "y": "1222", - "zOrder": "159" + } }, { - "ID": "889", + "ID": "2209", + "typeID": "Arrow", + "zOrder": "128", + "w": "125", "h": "14", - "measuredH": "14", - "measuredW": "125", + "measuredW": "150", + "measuredH": "100", + "x": "405", + "y": "1207", "properties": { "color": "2848996", "curvature": "-1", @@ -3694,950 +2659,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2274", "typeID": "Arrow", - "w": "125", - "x": "405", - "y": "1207", - "zOrder": "160" - }, - { - "ID": "890", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "229", - "x": "488", - "y": "1201", - "zOrder": "161" - }, - { - "ID": "891", - "measuredH": "25", - "measuredW": "172", - "properties": { - "bold": "true", - "size": "17", - "text": "Relational Databases" - }, - "typeID": "Label", - "w": "174", - "x": "516", - "y": "1214", - "zOrder": "162" - }, - { - "ID": "892", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "191", - "x": "243", - "y": "1192", - "zOrder": "163" - }, - { - "ID": "893", - "measuredH": "25", - "measuredW": "95", - "properties": { - "size": "17", - "text": "PostgreSQL" - }, - "typeID": "Label", - "w": "96", - "x": "291", - "y": "1200", - "zOrder": "164" - }, - { - "ID": "894", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1185", - "zOrder": "165" - }, - { - "ID": "895", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1185", - "zOrder": "166" - }, - { - "ID": "896", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1185", - "zOrder": "167" - }, - { - "ID": "897", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "191", - "x": "243", - "y": "1238", - "zOrder": "168" - }, - { - "ID": "898", - "measuredH": "25", - "measuredW": "58", - "properties": { - "size": "17", - "text": "MySQL" - }, - "typeID": "Label", - "w": "60", - "x": "309", - "y": "1246", - "zOrder": "169" - }, - { - "ID": "899", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1235", - "zOrder": "170" - }, - { - "ID": "900", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1235", - "zOrder": "171" - }, - { - "ID": "901", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1235", - "zOrder": "172" - }, - { - "ID": "902", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "191", - "x": "243", - "y": "1283", - "zOrder": "173" - }, - { - "ID": "903", - "measuredH": "25", - "measuredW": "65", - "properties": { - "size": "17", - "text": "MariaDB" - }, - "typeID": "Label", - "w": "68", - "x": "305", - "y": "1291", - "zOrder": "174" - }, - { - "ID": "904", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1280", - "zOrder": "175" - }, - { - "ID": "905", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1280", - "zOrder": "176" - }, - { - "ID": "906", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1280", - "zOrder": "177" - }, - { - "ID": "907", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "191", - "x": "243", - "y": "1329", - "zOrder": "178" - }, - { - "ID": "908", - "measuredH": "25", - "measuredW": "66", - "properties": { - "size": "17", - "text": "MS SQL" - }, - "typeID": "Label", - "w": "67", - "x": "305", - "y": "1337", - "zOrder": "179" - }, - { - "ID": "909", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1326", - "zOrder": "180" - }, - { - "ID": "910", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1326", - "zOrder": "181" - }, - { - "ID": "911", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1326", - "zOrder": "182" - }, - { - "ID": "912", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "191", - "x": "243", - "y": "1375", - "zOrder": "183" - }, - { - "ID": "913", - "measuredH": "25", - "measuredW": "51", - "properties": { - "size": "17", - "text": "Oracle" - }, - "typeID": "Label", - "w": "54", - "x": "312", - "y": "1383", - "zOrder": "184" - }, - { - "ID": "914", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1372", - "zOrder": "185" - }, - { - "ID": "915", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1372", - "zOrder": "186" - }, - { - "ID": "916", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "235", - "y": "1372", - "zOrder": "187" - }, - { - "ID": "917", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "191", - "x": "756", - "y": "1187", - "zOrder": "188" - }, - { - "ID": "918", - "measuredH": "25", - "measuredW": "149", - "properties": { - "bold": "true", - "size": "17", - "text": "NoSQL Databases" - }, - "typeID": "Label", - "w": "151", - "x": "775", - "y": "1199", - "zOrder": "189" - }, - { - "ID": "919", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "326", - "x": "990", - "y": "1182", - "zOrder": "190" - }, - { - "ID": "920", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1221", - "y": "1315", - "zOrder": "191" - }, - { - "ID": "921", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "171", - "x": "528", - "y": "1326", - "zOrder": "192" - }, - { - "ID": "922", - "measuredH": "25", - "measuredW": "41", - "properties": { - "size": "17", - "text": "ACID" - }, - "typeID": "Label", - "w": "43", - "x": "592", - "y": "1334", - "zOrder": "193" - }, - { - "ID": "923", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "238", - "x": "762", - "y": "1432", - "zOrder": "194" - }, - { - "ID": "924", - "measuredH": "25", - "measuredW": "184", - "properties": { - "bold": "true", - "size": "17", - "text": "More about Databases" - }, - "typeID": "Label", - "w": "186", - "x": "792", - "y": "1445", - "zOrder": "195" - }, - { - "ID": "925", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "171", - "x": "528", - "y": "1370", - "zOrder": "196" - }, - { - "ID": "926", - "measuredH": "25", - "measuredW": "100", - "properties": { - "size": "17", - "text": "Transactions" - }, - "typeID": "Label", - "w": "105", - "x": "568", - "y": "1377", - "zOrder": "197" - }, - { - "ID": "927", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "171", - "x": "528", - "y": "1414", - "zOrder": "198" - }, - { - "ID": "928", - "measuredH": "25", - "measuredW": "96", - "properties": { - "size": "17", - "text": "N+1 Problem" - }, - "typeID": "Label", - "w": "98", - "x": "571", - "y": "1421", - "zOrder": "199" - }, - { - "ID": "929", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "206", - "x": "1080", - "y": "1425", - "zOrder": "200" - }, - { - "ID": "930", - "measuredH": "25", - "measuredW": "153", - "properties": { - "size": "17", - "text": "Sharding Strategies" - }, - "typeID": "Label", - "w": "155", - "x": "1107", - "y": "1432", - "zOrder": "201" - }, - { - "ID": "931", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "266", - "x": "435", - "y": "1460", - "zOrder": "202" - }, - { - "ID": "932", - "measuredH": "25", - "measuredW": "184", - "properties": { - "size": "17", - "text": "Database Normalization" - }, - "typeID": "Label", - "w": "188", - "x": "482", - "y": "1468", - "zOrder": "203" - }, - { - "ID": "933", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "207", - "x": "1080", - "y": "1380", - "zOrder": "204" - }, - { - "ID": "934", - "measuredH": "25", - "measuredW": "126", - "properties": { - "size": "17", - "text": "Data Replication" - }, - "typeID": "Label", - "w": "129", - "x": "1122", - "y": "1387", - "zOrder": "205" - }, - { - "ID": "935", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "434", - "y": "1506", - "zOrder": "206" - }, - { - "ID": "936", - "measuredH": "25", - "measuredW": "210", - "properties": { - "size": "17", - "text": "Indexes and how they work" - }, - "typeID": "Label", - "w": "214", - "x": "466", - "y": "1514", - "zOrder": "207" - }, - { - "ID": "937", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "238", - "x": "776", - "y": "1592", - "zOrder": "208" - }, - { - "ID": "938", - "measuredH": "25", - "measuredW": "142", - "properties": { - "bold": "true", - "size": "17", - "text": "Learn about APIs" - }, - "typeID": "Label", - "w": "143", - "x": "823", - "y": "1605", - "zOrder": "209" - }, - { - "ID": "939", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "188", - "x": "1085", - "y": "1520", - "zOrder": "210" - }, - { - "ID": "940", - "measuredH": "25", - "measuredW": "46", - "properties": { - "size": "17", - "text": "REST" - }, - "typeID": "Label", - "w": "49", - "x": "1155", - "y": "1528", - "zOrder": "211" - }, - { - "ID": "941", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "188", - "x": "1085", - "y": "1584", - "zOrder": "212" - }, - { - "ID": "942", - "measuredH": "25", - "measuredW": "89", - "properties": { - "size": "17", - "text": "JSON APIs" - }, - "typeID": "Label", - "w": "90", - "x": "1134", - "y": "1592", - "zOrder": "213" - }, - { - "ID": "943", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "188", - "x": "1085", - "y": "1630", - "zOrder": "214" - }, - { - "ID": "944", - "measuredH": "25", - "measuredW": "45", - "properties": { - "size": "17", - "text": "SOAP" - }, - "typeID": "Label", - "w": "49", - "x": "1154", - "y": "1638", - "zOrder": "215" - }, - { - "ID": "945", - "measuredH": "22", - "measuredW": "168", - "properties": { - "size": "14", - "text": "Read Roy Fielding’s Paper" - }, - "typeID": "Label", - "w": "179", - "x": "1092", - "y": "1560", - "zOrder": "216" - }, - { - "ID": "946", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "434", - "y": "1570", - "zOrder": "217" - }, - { - "ID": "947", - "measuredH": "25", - "measuredW": "76", - "properties": { - "size": "17", - "text": "HATEOAS" - }, - "typeID": "Label", - "w": "78", - "x": "529", - "y": "1578", - "zOrder": "218" - }, - { - "ID": "948", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "434", - "y": "1616", - "zOrder": "219" - }, - { - "ID": "949", - "measuredH": "25", - "measuredW": "227", - "properties": { - "size": "17", - "text": "Open API Spec and Swagger" - }, - "typeID": "Label", - "w": "230", - "x": "456", - "y": "1623", - "zOrder": "220" - }, - { - "ID": "950", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "206", - "x": "1081", - "y": "1471", - "zOrder": "221" - }, - { - "ID": "951", - "measuredH": "25", - "measuredW": "106", - "properties": { - "size": "17", - "text": "CAP Theorem" - }, - "typeID": "Label", - "w": "109", - "x": "1129", - "y": "1478", - "zOrder": "222" - }, - { - "ID": "952", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "434", - "y": "1663", - "zOrder": "223" - }, - { - "ID": "953", - "measuredH": "25", - "measuredW": "109", - "properties": { - "size": "17", - "text": "Authentication" - }, - "typeID": "Label", - "w": "111", - "x": "512", - "y": "1671", - "zOrder": "224" - }, - { - "ID": "954", + "zOrder": "154", + "w": "1", "h": "156", - "measuredH": "156", - "measuredW": "0", + "measuredW": "150", + "measuredH": "100", + "x": "920", + "y": "1832", "properties": { "color": "2848996", "curvature": "-1", @@ -4656,469 +2689,54 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "1", - "x": "920", - "y": "1832", - "zOrder": "225" + } }, { - "ID": "955", - "h": "54", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "240", - "x": "739", - "y": "1808", - "zOrder": "226" - }, - { - "ID": "956", - "measuredH": "25", - "measuredW": "202", - "properties": { - "bold": "true", - "size": "17", - "text": "Web Security Knowledge" - }, - "typeID": "Label", - "w": "203", - "x": "762", - "y": "1823", - "zOrder": "227" - }, - { - "ID": "957", - "h": "171", - "measuredH": "140", - "measuredW": "200", + "ID": "2277", "typeID": "TextArea", + "zOrder": "156", "w": "456", + "h": "171", + "measuredW": "200", + "measuredH": "140", "x": "834", - "y": "1915", - "zOrder": "228" + "y": "1915" }, { - "ID": "958", - "h": "42", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "163", - "x": "849", - "y": "1979", - "zOrder": "229" - }, - { - "ID": "959", - "measuredH": "25", - "measuredW": "49", - "properties": { - "bold": "true", - "size": "17", - "text": "CORS" - }, - "typeID": "Label", - "w": "51", - "x": "905", - "y": "1988", - "zOrder": "230" - }, - { - "ID": "960", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "166", - "x": "848", - "y": "1929", - "zOrder": "231" - }, - { - "ID": "961", - "measuredH": "25", - "measuredW": "57", - "properties": { - "bold": "true", - "size": "17", - "text": "HTTPS" - }, - "typeID": "Label", - "w": "63", - "x": "899", - "y": "1939", - "zOrder": "232" - }, - { - "ID": "962", - "h": "44", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "257", - "x": "1019", - "y": "1929", - "zOrder": "233" - }, - { - "ID": "963", - "measuredH": "25", - "measuredW": "191", - "properties": { - "bold": "true", - "size": "17", - "text": "Content Security Policy" - }, - "typeID": "Label", - "w": "196", - "x": "1050", - "y": "1939", - "zOrder": "234" - }, - { - "ID": "964", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "427", - "x": "848", - "y": "2027", - "zOrder": "235" - }, - { - "ID": "965", - "measuredH": "25", - "measuredW": "183", - "properties": { - "bold": "true", - "size": "17", - "text": "OWASP Security Risks" - }, - "typeID": "Label", - "w": "187", - "x": "968", - "y": "2037", - "zOrder": "236" - }, - { - "ID": "966", - "h": "185", - "measuredH": "140", - "measuredW": "200", + "ID": "2286", "typeID": "TextArea", + "zOrder": "161", "w": "270", + "h": "185", + "measuredW": "200", + "measuredH": "140", "x": "1018", - "y": "1719", - "zOrder": "237" + "y": "1719" }, { - "ID": "967", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "239", - "x": "1033", - "y": "1727", - "zOrder": "238" - }, - { - "ID": "968", - "measuredH": "25", - "measuredW": "201", - "properties": { - "size": "17", - "text": "MD5 and why not to use it" - }, + "ID": "2295", "typeID": "Label", - "w": "203", - "x": "1053", - "y": "1735", - "zOrder": "239" - }, - { - "ID": "969", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "237", - "x": "1034", - "y": "1772", - "zOrder": "240" - }, - { - "ID": "970", + "zOrder": "166", + "w": "155", + "measuredW": "149", "measuredH": "25", - "measuredW": "87", - "properties": { - "size": "17", - "text": "SHA Family" - }, - "typeID": "Label", - "w": "93", - "x": "1106", - "y": "1779", - "zOrder": "241" - }, - { - "ID": "971", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "119", - "x": "1035", - "y": "1818", - "zOrder": "242" - }, - { - "ID": "972", - "measuredH": "25", - "measuredW": "50", - "properties": { - "size": "17", - "text": "scrypt" - }, - "typeID": "Label", - "w": "62", - "x": "1073", - "y": "1825", - "zOrder": "243" - }, - { - "ID": "973", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "111", - "x": "1161", - "y": "1818", - "zOrder": "244" - }, - { - "ID": "974", - "measuredH": "25", - "measuredW": "51", - "properties": { - "size": "17", - "text": "bcrypt" - }, - "typeID": "Label", - "w": "53", - "x": "1196", - "y": "1825", - "zOrder": "245" - }, - { - "ID": "975", - "measuredH": "25", - "measuredW": "150", + "x": "1075", + "y": "1866", "properties": { "size": "17", "text": "Hashing Algorithms" - }, - "typeID": "Label", - "w": "155", - "x": "1075", - "y": "1866", - "zOrder": "246" + } }, { - "ID": "976", - "measuredH": "32", - "measuredW": "127", - "properties": { - "align": "center", - "color": "16770457", - "size": "18", - "text": "Cookie Based" - }, - "typeID": "TextInput", - "w": "223", - "x": "177", - "y": "1486", - "zOrder": "247" - }, - { - "ID": "977", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "258", - "x": "1018", - "y": "1979", - "zOrder": "248" - }, - { - "ID": "978", - "measuredH": "25", - "measuredW": "73", - "properties": { - "bold": "true", - "size": "17", - "text": "SSL/TLS" - }, - "typeID": "Label", - "w": "75", - "x": "1109", - "y": "1988", - "zOrder": "249" - }, - { - "ID": "979", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "159", - "x": "527", - "y": "1945", - "zOrder": "250" - }, - { - "ID": "980", - "measuredH": "25", - "measuredW": "60", - "properties": { - "bold": "true", - "size": "17", - "text": "Testing" - }, - "typeID": "Label", - "w": "63", - "x": "575", - "y": "1958", - "zOrder": "251" - }, - { - "ID": "981", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "192", - "x": "279", - "y": "1914", - "zOrder": "252" - }, - { - "ID": "982", - "measuredH": "25", - "measuredW": "146", - "properties": { - "size": "17", - "text": "Integration Testing" - }, - "typeID": "Label", - "w": "150", - "x": "300", - "y": "1922", - "zOrder": "253" - }, - { - "ID": "983", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "193", - "x": "278", - "y": "1961", - "zOrder": "254" - }, - { - "ID": "984", - "measuredH": "25", - "measuredW": "95", - "properties": { - "size": "17", - "text": "Unit Testing" - }, - "typeID": "Label", - "w": "99", - "x": "325", - "y": "1968", - "zOrder": "255" - }, - { - "ID": "985", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "193", - "x": "278", - "y": "2002", - "zOrder": "256" - }, - { - "ID": "986", - "measuredH": "25", - "measuredW": "142", - "properties": { - "size": "17", - "text": "Functional Testing" - }, - "typeID": "Label", - "w": "151", - "x": "299", - "y": "2009", - "zOrder": "257" - }, - { - "ID": "987", + "ID": "2307", + "typeID": "Arrow", + "zOrder": "173", + "w": "42", "h": "152", - "measuredH": "152", - "measuredW": "42", + "measuredW": "150", + "measuredH": "100", + "x": "744", + "y": "513", "properties": { "color": "2848996", "direction": "bottom", @@ -5136,18 +2754,18 @@ "y": 151.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "42", - "x": "744", - "y": "513", - "zOrder": "258" + } }, { - "ID": "988", + "ID": "2308", + "typeID": "Arrow", + "zOrder": "174", + "w": "26", "h": "112", - "measuredH": "112", - "measuredW": "26", + "measuredW": "150", + "measuredH": "100", + "x": "672", + "y": "317", "properties": { "color": "2848996", "direction": "bottom", @@ -5165,32 +2783,32 @@ "y": 112 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "26", - "x": "672", - "y": "317", - "zOrder": "259" + } }, { - "ID": "989", + "ID": "2309", + "typeID": "Label", + "zOrder": "175", + "measuredW": "130", "measuredH": "40", - "measuredW": "131", + "x": "644", + "y": "263", "properties": { "bold": "true", "size": "32", "text": "Backend" - }, - "typeID": "Label", - "x": "644", - "y": "263", - "zOrder": "260" + } }, { - "ID": "990", + "ID": "2310", + "typeID": "Arrow", + "zOrder": "176", + "w": "19", "h": "80", - "measuredH": "79", - "measuredW": "18", + "measuredW": "150", + "measuredH": "100", + "x": "741", + "y": "176", "properties": { "color": "2848996", "curvature": "-1", @@ -5210,333 +2828,247 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "19", - "x": "741", - "y": "176", - "zOrder": "261" + } }, { - "ID": "991", - "h": "141", - "measuredH": "70", - "measuredW": "100", + "ID": "2311", "typeID": "Canvas", + "zOrder": "177", "w": "350", + "h": "141", + "measuredW": "100", + "measuredH": "70", "x": "949", - "y": "169", - "zOrder": "262" + "y": "169" }, { - "ID": "992", - "measuredH": "25", + "ID": "2312", + "typeID": "Label", + "zOrder": "178", "measuredW": "314", + "measuredH": "25", + "x": "963", + "y": "186", "properties": { "size": "17", "text": "Find the detailed version of this roadmap" - }, - "typeID": "Label", - "x": "963", - "y": "186", - "zOrder": "263" + } }, { - "ID": "993", + "ID": "2313", + "typeID": "Label", + "zOrder": "179", + "measuredW": "319", "measuredH": "25", - "measuredW": "322", + "x": "963", + "y": "214", "properties": { "size": "17", "text": "along with resources and other roadmaps" - }, - "typeID": "Label", - "x": "963", - "y": "214", - "zOrder": "264" + } }, { - "ID": "994", - "h": "45", - "measuredH": "70", - "measuredW": "100", - "properties": { - "borderColor": "4273622", - "color": "4273622" - }, - "typeID": "Canvas", - "w": "320", - "x": "964", - "y": "250", - "zOrder": "265" - }, - { - "ID": "995", - "measuredH": "28", - "measuredW": "103", - "properties": { - "color": "16777215", - "size": "20", - "text": "roadmap.sh" - }, - "typeID": "Label", - "x": "1105", - "y": "258", - "zOrder": "266" - }, - { - "ID": "996", - "measuredH": "28", - "measuredW": "36", - "properties": { - "color": "16777215", - "size": "20", - "text": "http" - }, - "typeID": "Label", - "x": "1040", - "y": "258", - "zOrder": "267" - }, - { - "ID": "997", - "measuredH": "28", - "measuredW": "10", - "properties": { - "bold": "true", - "color": "16777215", - "size": "20", - "text": ":" - }, - "typeID": "Label", - "x": "1077", - "y": "258", - "zOrder": "268" - }, - { - "ID": "998", - "measuredH": "28", - "measuredW": "10", - "properties": { - "color": "16777215", - "size": "20", - "text": "/" - }, - "typeID": "Label", - "x": "1084", - "y": "259", - "zOrder": "269" - }, - { - "ID": "999", - "measuredH": "28", - "measuredW": "10", - "properties": { - "color": "16777215", - "size": "20", - "text": "/" - }, - "typeID": "Label", - "x": "1092", - "y": "259", - "zOrder": "270" - }, - { - "ID": "1000", - "h": "162", - "measuredH": "70", - "measuredW": "100", + "ID": "2320", "typeID": "Canvas", + "zOrder": "181", "w": "408", + "h": "162", + "measuredW": "100", + "measuredH": "70", "x": "137", - "y": "159", - "zOrder": "271" + "y": "159" }, { - "ID": "1001", - "measuredH": "24", + "ID": "2321", + "typeID": "Icon", + "zOrder": "182", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "180", "properties": { "color": "16777215", "icon": { "ID": "circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "180", - "zOrder": "272" + } }, { - "ID": "1002", - "measuredH": "24", + "ID": "2322", + "typeID": "Icon", + "zOrder": "183", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "180", "properties": { "color": "10027263", "icon": { "ID": "check-circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "180", - "zOrder": "273" + } }, { - "ID": "1003", + "ID": "2323", + "typeID": "Label", + "zOrder": "184", + "measuredW": "269", "measuredH": "24", - "measuredW": "263", + "x": "196", + "y": "180", "properties": { "size": "16", "text": "Personal Recommendation / Opinion" - }, - "typeID": "Label", - "x": "196", - "y": "180", - "zOrder": "274" + } }, { - "ID": "1004", - "measuredH": "24", + "ID": "2324", + "typeID": "Label", + "zOrder": "185", "measuredW": "159", + "measuredH": "24", + "x": "196", + "y": "277", "properties": { "size": "16", "text": "I wouldn't recommend" - }, - "typeID": "Label", - "x": "196", - "y": "277", - "zOrder": "275" + } }, { - "ID": "1005", - "measuredH": "24", + "ID": "2325", + "typeID": "Icon", + "zOrder": "186", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "277", "properties": { "color": "10066329", "icon": { "ID": "circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "277", - "zOrder": "276" + } }, { - "ID": "1006", + "ID": "2326", + "typeID": "Label", + "zOrder": "187", + "w": "324", + "measuredW": "315", "measuredH": "24", - "measuredW": "319", + "x": "197", + "y": "245", "properties": { "size": "16", "text": "Order in roadmap not strict (Learn anytime)" - }, - "typeID": "Label", - "w": "324", - "x": "197", - "y": "245", - "zOrder": "277" + } }, { - "ID": "1007", - "measuredH": "24", + "ID": "2327", + "typeID": "Icon", + "zOrder": "188", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "245", "properties": { "color": "16777215", "icon": { "ID": "circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "245", - "zOrder": "278" + } }, { - "ID": "1008", - "measuredH": "24", + "ID": "2328", + "typeID": "Icon", + "zOrder": "189", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "245", "properties": { "color": "10066329", "icon": { "ID": "check-circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "245", - "zOrder": "279" + } }, { - "ID": "1009", + "ID": "2329", + "typeID": "Label", + "zOrder": "190", + "measuredW": "272", "measuredH": "24", - "measuredW": "277", + "x": "196", + "y": "213", "properties": { "size": "16", "text": "Alternative Option - Pick this or purple" - }, - "typeID": "Label", - "x": "196", - "y": "213", - "zOrder": "280" + } }, { - "ID": "1010", - "measuredH": "24", + "ID": "2330", + "typeID": "Icon", + "zOrder": "191", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "212", "properties": { "color": "16777215", "icon": { "ID": "circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "212", - "zOrder": "281" + } }, { - "ID": "1011", - "measuredH": "24", + "ID": "2331", + "typeID": "Icon", + "zOrder": "192", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "212", "properties": { "color": "16777215", "icon": { "ID": "circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "212", - "zOrder": "282" + } }, { - "ID": "1012", - "measuredH": "24", + "ID": "2332", + "typeID": "Icon", + "zOrder": "193", "measuredW": "24", + "measuredH": "24", + "x": "160", + "y": "212", "properties": { "color": "3700253", "icon": { "ID": "check-circle", "size": "small" } - }, - "typeID": "Icon", - "x": "160", - "y": "212", - "zOrder": "283" + } }, { - "ID": "1013", + "ID": "2333", + "typeID": "Arrow", + "zOrder": "194", + "w": "41", "h": "264", - "measuredH": "264", - "measuredW": "41", + "measuredW": "150", + "measuredH": "100", + "x": "718", + "y": "675", "properties": { "color": "2848996", "direction": "bottom", @@ -5554,18 +3086,18 @@ "y": 263.5 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "41", - "x": "718", - "y": "675", - "zOrder": "284" + } }, { - "ID": "1014", + "ID": "2334", + "typeID": "Arrow", + "zOrder": "195", + "w": "87", "h": "151", - "measuredH": "151", - "measuredW": "87", + "measuredW": "150", + "measuredH": "100", + "x": "687", + "y": "951", "properties": { "color": "2848996", "direction": "bottom", @@ -5583,18 +3115,18 @@ "y": 151 }, "rightArrow": "false" - }, - "typeID": "Arrow", - "w": "87", - "x": "687", - "y": "951", - "zOrder": "285" + } }, { - "ID": "1015", + "ID": "2335", + "typeID": "Arrow", + "zOrder": "196", + "w": "43", "h": "82", - "measuredH": "82", - "measuredW": "43", + "measuredW": "150", + "measuredH": "100", + "x": "830", + "y": "856", "properties": { "color": "2848996", "curvature": "0", @@ -5614,18 +3146,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "43", - "x": "830", - "y": "856", - "zOrder": "286" + } }, { - "ID": "1016", + "ID": "2336", + "typeID": "Arrow", + "zOrder": "197", + "w": "48", "h": "73", - "measuredH": "73", - "measuredW": "48", + "measuredW": "150", + "measuredH": "100", + "x": "612", + "y": "866", "properties": { "color": "2848996", "curvature": "0", @@ -5644,18 +3176,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "48", - "x": "612", - "y": "866", - "zOrder": "287" + } }, { - "ID": "1017", + "ID": "2337", + "typeID": "Arrow", + "zOrder": "198", + "w": "118", "h": "74", - "measuredH": "74", - "measuredW": "118", + "measuredW": "150", + "measuredH": "100", + "x": "457", + "y": "962", "properties": { "color": "2848996", "curvature": "0", @@ -5675,18 +3207,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "118", - "x": "457", - "y": "962", - "zOrder": "288" + } }, { - "ID": "1018", + "ID": "2338", + "typeID": "Arrow", + "zOrder": "199", + "w": "91", "h": "61", - "measuredH": "61", - "measuredW": "91", + "measuredW": "150", + "measuredH": "100", + "x": "940", + "y": "960", "properties": { "color": "2848996", "leftArrow": "false", @@ -5704,18 +3236,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "91", - "x": "940", - "y": "960", - "zOrder": "289" + } }, { - "ID": "1019", + "ID": "2339", + "typeID": "Arrow", + "zOrder": "200", + "w": "93", "h": "24", - "measuredH": "24", - "measuredW": "93", + "measuredW": "150", + "measuredH": "100", + "x": "936", + "y": "949", "properties": { "color": "2848996", "curvature": "0", @@ -5735,18 +3267,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "93", - "x": "936", - "y": "949", - "zOrder": "290" + } }, { - "ID": "1020", + "ID": "2340", + "typeID": "Arrow", + "zOrder": "201", + "w": "115", "h": "18", - "measuredH": "18", - "measuredW": "115", + "measuredW": "150", + "measuredH": "100", + "x": "931", + "y": "922", "properties": { "color": "2848996", "direction": "bottom", @@ -5765,18 +3297,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "115", - "x": "931", - "y": "922", - "zOrder": "291" + } }, { - "ID": "1021", + "ID": "2341", + "typeID": "Arrow", + "zOrder": "202", + "w": "131", "h": "45", - "measuredH": "45", - "measuredW": "131", + "measuredW": "150", + "measuredH": "100", + "x": "447", + "y": "946", "properties": { "color": "2848996", "curvature": "0", @@ -5796,18 +3328,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "131", - "x": "447", - "y": "946", - "zOrder": "292" + } }, { - "ID": "1022", + "ID": "2342", + "typeID": "Arrow", + "zOrder": "203", + "w": "141", "h": "5", - "measuredH": "5", - "measuredW": "141", + "measuredW": "150", + "measuredH": "100", + "x": "458", + "y": "937", "properties": { "color": "2848996", "curvature": "-1", @@ -5826,639 +3358,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2384", "typeID": "Arrow", - "w": "141", - "x": "458", - "y": "937", - "zOrder": "293" - }, - { - "ID": "1023", + "zOrder": "213", + "w": "154", "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "800", - "y": "827", - "zOrder": "294" - }, - { - "ID": "1024", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "329", - "y": "921", - "zOrder": "295" - }, - { - "ID": "1025", - "measuredH": "25", - "measuredW": "36", - "properties": { - "size": "17", - "text": "Java" - }, - "typeID": "Label", - "w": "38", - "x": "378", - "y": "929", - "zOrder": "296" - }, - { - "ID": "1026", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "542", - "y": "831", - "zOrder": "297" - }, - { - "ID": "1027", - "measuredH": "25", - "measuredW": "37", - "properties": { - "size": "17", - "text": "Rust" - }, - "typeID": "Label", - "w": "39", - "x": "590", - "y": "839", - "zOrder": "298" - }, - { - "ID": "1028", - "measuredH": "25", - "measuredW": "22", - "properties": { - "size": "17", - "text": "Go" - }, - "typeID": "Label", - "w": "26", - "x": "855", - "y": "834", - "zOrder": "299" - }, - { - "ID": "1029", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "329", - "y": "970", - "zOrder": "300" - }, - { - "ID": "1030", - "measuredH": "25", - "measuredW": "24", - "properties": { - "size": "17", - "text": "C#" - }, - "typeID": "Label", - "w": "27", - "x": "383", - "y": "978", - "zOrder": "301" - }, - { - "ID": "1031", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "792", - "y": "819", - "zOrder": "302" - }, - { - "ID": "1032", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "792", - "y": "819", - "zOrder": "303" - }, - { - "ID": "1033", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "792", - "y": "819", - "zOrder": "304" - }, - { - "ID": "1034", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "914", - "zOrder": "305" - }, - { - "ID": "1035", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "914", - "zOrder": "306" - }, - { - "ID": "1036", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "914", - "zOrder": "307" - }, - { - "ID": "1037", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "534", - "y": "822", - "zOrder": "308" - }, - { - "ID": "1038", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "534", - "y": "822", - "zOrder": "309" - }, - { - "ID": "1039", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "534", - "y": "822", - "zOrder": "310" - }, - { - "ID": "1040", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "964", - "zOrder": "311" - }, - { - "ID": "1041", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "964", - "zOrder": "312" - }, - { - "ID": "1042", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "964", - "zOrder": "313" - }, - { - "ID": "1043", - "h": "98", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "380", - "x": "566", - "y": "920", - "zOrder": "314" - }, - { - "ID": "1044", - "measuredH": "25", - "measuredW": "146", - "properties": { - "bold": "true", - "size": "17", - "text": "Learn a Language" - }, - "typeID": "Label", - "w": "149", - "x": "681", - "y": "933", - "zOrder": "315" - }, - { - "ID": "1045", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "329", - "y": "1017", - "zOrder": "316" - }, - { - "ID": "1046", - "measuredH": "25", - "measuredW": "33", - "properties": { - "size": "17", - "text": "PHP" - }, - "typeID": "Label", - "w": "34", - "x": "380", - "y": "1025", - "zOrder": "317" - }, - { - "ID": "1047", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "1013", - "zOrder": "318" - }, - { - "ID": "1048", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "1013", - "zOrder": "319" - }, - { - "ID": "1049", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "321", - "y": "1013", - "zOrder": "320" - }, - { - "ID": "1050", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "1019", - "y": "906", - "zOrder": "321" - }, - { - "ID": "1051", - "measuredH": "25", - "measuredW": "82", - "properties": { - "size": "17", - "text": "JavaScript" - }, - "typeID": "Label", - "w": "85", - "x": "1046", - "y": "914", - "zOrder": "322" - }, - { - "ID": "1052", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "1019", - "y": "952", - "zOrder": "323" - }, - { - "ID": "1053", - "measuredH": "25", - "measuredW": "53", - "properties": { - "size": "17", - "text": "Python" - }, - "typeID": "Label", - "w": "56", - "x": "1059", - "y": "960", - "zOrder": "324" - }, - { - "ID": "1054", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "136", - "x": "1019", - "y": "998", - "zOrder": "325" - }, - { - "ID": "1055", - "measuredH": "25", - "measuredW": "39", - "properties": { - "size": "17", - "text": "Ruby" - }, - "typeID": "Label", - "w": "42", - "x": "1066", - "y": "1006", - "zOrder": "326" - }, - { - "ID": "1056", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1140", - "y": "899", - "zOrder": "327" - }, - { - "ID": "1057", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1140", - "y": "899", - "zOrder": "328" - }, - { - "ID": "1058", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "947", - "zOrder": "329" - }, - { - "ID": "1059", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "947", - "zOrder": "330" - }, - { - "ID": "1060", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "947", - "zOrder": "331" - }, - { - "ID": "1061", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "991", - "zOrder": "332" - }, - { - "ID": "1062", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "991", - "zOrder": "333" - }, - { - "ID": "1063", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1141", - "y": "991", - "zOrder": "334" - }, - { - "ID": "1064", - "h": "40", - "measuredH": "40", - "measuredW": "154", + "measuredW": "150", + "measuredH": "100", + "x": "844", + "y": "500", "properties": { "color": "2848996", "curvature": "-1", @@ -6477,18 +3388,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "154", - "x": "844", - "y": "500", - "zOrder": "335" + } }, { - "ID": "1065", + "ID": "2385", + "typeID": "Arrow", + "zOrder": "214", + "w": "152", "h": "83", - "measuredH": "83", - "measuredW": "152", + "measuredW": "150", + "measuredH": "100", + "x": "852", + "y": "502", "properties": { "color": "2848996", "curvature": "-1", @@ -6507,18 +3418,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "152", - "x": "852", - "y": "502", - "zOrder": "336" + } }, { - "ID": "1066", + "ID": "2386", + "typeID": "Arrow", + "zOrder": "215", + "w": "124", "h": "57", - "measuredH": "57", - "measuredW": "124", + "measuredW": "150", + "measuredH": "100", + "x": "488", + "y": "504", "properties": { "color": "2848996", "curvature": "-1", @@ -6537,18 +3448,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "124", - "x": "488", - "y": "504", - "zOrder": "337" + } }, { - "ID": "1067", + "ID": "2387", + "typeID": "Arrow", + "zOrder": "216", + "w": "151", "h": "29", - "measuredH": "28", "measuredW": "150", + "measuredH": "100", + "x": "852", + "y": "454", "properties": { "color": "2848996", "leftArrow": "false", @@ -6566,18 +3477,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "151", - "x": "852", - "y": "454", - "zOrder": "338" + } }, { - "ID": "1068", + "ID": "2388", + "typeID": "Arrow", + "zOrder": "217", + "w": "153", "h": "13", - "measuredH": "12", - "measuredW": "152", + "measuredW": "150", + "measuredH": "100", + "x": "854", + "y": "437", "properties": { "color": "2848996", "curvature": "0", @@ -6597,18 +3508,17 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "153", - "x": "854", - "y": "437", - "zOrder": "339" + } }, { - "ID": "1069", + "ID": "2389", + "typeID": "Arrow", + "zOrder": "218", "h": "60", - "measuredH": "59", - "measuredW": "149", + "measuredW": "150", + "measuredH": "100", + "x": "852", + "y": "388", "properties": { "color": "2848996", "direction": "bottom", @@ -6627,17 +3537,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "x": "852", - "y": "388", - "zOrder": "340" + } }, { - "ID": "1070", + "ID": "2390", + "typeID": "Arrow", + "zOrder": "219", + "w": "129", "h": "36", - "measuredH": "36", - "measuredW": "129", + "measuredW": "150", + "measuredH": "100", + "x": "473", + "y": "456", "properties": { "color": "2848996", "curvature": "0", @@ -6657,18 +3568,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "129", - "x": "473", - "y": "456", - "zOrder": "341" + } }, { - "ID": "1071", + "ID": "2391", + "typeID": "Arrow", + "zOrder": "220", + "w": "131", "h": "9", - "measuredH": "7", - "measuredW": "129", + "measuredW": "150", + "measuredH": "100", + "x": "473", + "y": "445", "properties": { "color": "2848996", "curvature": "0", @@ -6687,18 +3598,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "131", - "x": "473", - "y": "445", - "zOrder": "342" + } }, { - "ID": "1072", + "ID": "2392", + "typeID": "Arrow", + "zOrder": "221", + "w": "143", "h": "53", - "measuredH": "51", - "measuredW": "141", + "measuredW": "150", + "measuredH": "100", + "x": "463", + "y": "398", "properties": { "color": "2848996", "curvature": "-1", @@ -6717,538 +3628,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2428", "typeID": "Arrow", - "w": "143", - "x": "463", - "y": "398", - "zOrder": "343" - }, - { - "ID": "1073", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "272", - "x": "592", - "y": "424", - "zOrder": "344" - }, - { - "ID": "1074", - "measuredH": "25", - "measuredW": "68", - "properties": { - "bold": "true", - "size": "17", - "text": "Internet" - }, - "typeID": "Label", - "w": "69", - "x": "693", - "y": "437", - "zOrder": "345" - }, - { - "ID": "1075", - "h": "44", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "299", - "x": "196", - "y": "375", - "zOrder": "346" - }, - { - "ID": "1076", - "measuredH": "25", - "measuredW": "221", - "properties": { - "size": "17", - "text": "How does the internet work?" - }, - "typeID": "Label", - "w": "223", - "x": "234", - "y": "385", - "zOrder": "347" - }, - { - "ID": "1077", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "299", - "x": "196", - "y": "425", - "zOrder": "348" - }, - { - "ID": "1078", - "measuredH": "25", - "measuredW": "117", - "properties": { - "size": "17", - "text": "What is HTTP?" - }, - "typeID": "Label", - "w": "119", - "x": "286", - "y": "433", - "zOrder": "349" - }, - { - "ID": "1079", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "299", - "x": "196", - "y": "471", - "zOrder": "350" - }, - { - "ID": "1080", - "measuredH": "25", - "measuredW": "229", - "properties": { - "size": "17", - "text": "Browsers and how they work?" - }, - "typeID": "Label", - "w": "230", - "x": "230", - "y": "479", - "zOrder": "351" - }, - { - "ID": "1081", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "280", - "x": "989", - "y": "370", - "zOrder": "352" - }, - { - "ID": "1082", - "measuredH": "25", - "measuredW": "178", - "properties": { - "size": "17", - "text": "DNS and how it works?" - }, - "typeID": "Label", - "w": "179", - "x": "1040", - "y": "378", - "zOrder": "353" - }, - { - "ID": "1083", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "280", - "x": "988", - "y": "416", - "zOrder": "354" - }, - { - "ID": "1084", - "measuredH": "25", - "measuredW": "179", - "properties": { - "size": "17", - "text": "What is Domain Name?" - }, - "typeID": "Label", - "w": "179", - "x": "1039", - "y": "424", - "zOrder": "355" - }, - { - "ID": "1085", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "280", - "x": "989", - "y": "462", - "zOrder": "356" - }, - { - "ID": "1086", - "measuredH": "25", - "measuredW": "129", - "properties": { - "size": "17", - "text": "What is hosting?" - }, - "typeID": "Label", - "w": "133", - "x": "1063", - "y": "470", - "zOrder": "357" - }, - { - "ID": "1087", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "586", - "y": "414", - "zOrder": "358" - }, - { - "ID": "1088", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "586", - "y": "414", - "zOrder": "359" - }, - { - "ID": "1089", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "189", - "y": "366", - "zOrder": "360" - }, - { - "ID": "1090", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "189", - "y": "366", - "zOrder": "361" - }, - { - "ID": "1091", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "188", - "y": "418", - "zOrder": "362" - }, - { - "ID": "1092", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "188", - "y": "418", - "zOrder": "363" - }, - { - "ID": "1093", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "188", - "y": "463", - "zOrder": "364" - }, - { - "ID": "1094", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "188", - "y": "463", - "zOrder": "365" - }, - { - "ID": "1095", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1255", - "y": "361", - "zOrder": "366" - }, - { - "ID": "1096", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1255", - "y": "361", - "zOrder": "367" - }, - { - "ID": "1097", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1254", - "y": "411", - "zOrder": "368" - }, - { - "ID": "1098", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1254", - "y": "411", - "zOrder": "369" - }, - { - "ID": "1099", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1254", - "y": "456", - "zOrder": "370" - }, - { - "ID": "1100", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1254", - "y": "456", - "zOrder": "371" - }, - { - "ID": "1101", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "272", - "x": "592", - "y": "480", - "zOrder": "372" - }, - { - "ID": "1102", - "measuredH": "25", - "measuredW": "215", - "properties": { - "bold": "true", - "size": "17", - "text": "Basic Frontend Knowledge" - }, - "typeID": "Label", - "w": "221", - "x": "620", - "y": "492", - "zOrder": "373" - }, - { - "ID": "1103", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "142", - "x": "353", - "y": "536", - "zOrder": "374" - }, - { - "ID": "1104", - "measuredH": "25", - "measuredW": "47", - "properties": { - "size": "17", - "text": "HTML" - }, - "typeID": "Label", - "w": "49", - "x": "399", - "y": "546", - "zOrder": "375" - }, - { - "ID": "1105", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "142", - "x": "989", - "y": "515", - "zOrder": "376" - }, - { - "ID": "1106", - "measuredH": "25", - "measuredW": "36", - "properties": { - "size": "17", - "text": "CSS" - }, - "typeID": "Label", - "w": "38", - "x": "1041", - "y": "525", - "zOrder": "377" - }, - { - "ID": "1107", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "142", - "x": "989", - "y": "566", - "zOrder": "378" - }, - { - "ID": "1108", + "zOrder": "233", + "w": "135", "h": "195", - "measuredH": "195", - "measuredW": "135", + "measuredW": "150", + "measuredH": "100", + "x": "867", + "y": "674", "properties": { "color": "2848996", "curvature": "-1", @@ -7267,18 +3658,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "135", - "x": "867", - "y": "674", - "zOrder": "379" + } }, { - "ID": "1109", + "ID": "2429", + "typeID": "Arrow", + "zOrder": "234", + "w": "136", "h": "131", - "measuredH": "131", - "measuredW": "136", + "measuredW": "150", + "measuredH": "100", + "x": "872", + "y": "672", "properties": { "color": "2848996", "curvature": "-1", @@ -7297,18 +3688,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "136", - "x": "872", - "y": "672", - "zOrder": "380" + } }, { - "ID": "1110", + "ID": "2430", + "typeID": "Arrow", + "zOrder": "235", + "w": "138", "h": "76", - "measuredH": "76", - "measuredW": "138", + "measuredW": "150", + "measuredH": "100", + "x": "865", + "y": "666", "properties": { "color": "2848996", "curvature": "-1", @@ -7327,18 +3718,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "138", - "x": "865", - "y": "666", - "zOrder": "381" + } }, { - "ID": "1111", + "ID": "2431", + "typeID": "Arrow", + "zOrder": "236", + "w": "141", "h": "30", - "measuredH": "30", - "measuredW": "141", + "measuredW": "150", + "measuredH": "100", + "x": "864", + "y": "660", "properties": { "color": "2848996", "curvature": "-1", @@ -7357,18 +3748,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "141", - "x": "864", - "y": "660", - "zOrder": "382" + } }, { - "ID": "1112", + "ID": "2432", + "typeID": "Arrow", + "zOrder": "237", + "w": "144", "h": "5", - "measuredH": "5", - "measuredW": "144", + "measuredW": "150", + "measuredH": "100", + "x": "861", + "y": "649", "properties": { "color": "2848996", "curvature": "-1", @@ -7387,173 +3778,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2444", "typeID": "Arrow", - "w": "144", - "x": "861", - "y": "649", - "zOrder": "383" - }, - { - "ID": "1113", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "267", - "x": "989", - "y": "626", - "zOrder": "384" - }, - { - "ID": "1114", - "measuredH": "25", - "measuredW": "167", - "properties": { - "size": "17", - "text": "Memory Management" - }, - "typeID": "Label", - "w": "170", - "x": "1039", - "y": "636", - "zOrder": "385" - }, - { - "ID": "1115", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "989", - "y": "675", - "zOrder": "386" - }, - { - "ID": "1116", - "measuredH": "25", - "measuredW": "221", - "properties": { - "size": "17", - "text": "Interprocess Communication" - }, - "typeID": "Label", - "w": "224", - "x": "1012", - "y": "684", - "zOrder": "387" - }, - { - "ID": "1117", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "989", - "y": "725", - "zOrder": "388" - }, - { - "ID": "1118", - "measuredH": "25", - "measuredW": "132", - "properties": { - "size": "17", - "text": "I/O Management" - }, - "typeID": "Label", - "w": "135", - "x": "1055", - "y": "735", - "zOrder": "389" - }, - { - "ID": "1119", - "h": "65", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "989", - "y": "775", - "zOrder": "390" - }, - { - "ID": "1120", - "measuredH": "25", - "measuredW": "113", - "properties": { - "bold": "true", - "size": "17", - "text": "POSIX Basics" - }, - "typeID": "Label", - "w": "115", - "x": "1067", - "y": "786", - "zOrder": "391" - }, - { - "ID": "1121", - "measuredH": "23", - "measuredW": "179", - "properties": { - "size": "15", - "text": "stdin, stdout, stderr, pipes" - }, - "typeID": "Label", - "w": "180", - "x": "1033", - "y": "807", - "zOrder": "392" - }, - { - "ID": "1122", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "989", - "y": "847", - "zOrder": "393" - }, - { - "ID": "1123", - "measuredH": "25", - "measuredW": "215", - "properties": { - "size": "17", - "text": "Basic Networking Concepts" - }, - "typeID": "Label", - "w": "218", - "x": "1014", - "y": "856", - "zOrder": "394" - }, - { - "ID": "1124", + "zOrder": "243", + "w": "128", "h": "151", - "measuredH": "151", - "measuredW": "128", + "measuredW": "150", + "measuredH": "100", + "x": "486", + "y": "678", "properties": { "color": "2848996", "curvature": "-1", @@ -7572,18 +3808,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "128", - "x": "486", - "y": "678", - "zOrder": "395" + } }, { - "ID": "1125", + "ID": "2445", + "typeID": "Arrow", + "zOrder": "244", + "w": "125", "h": "107", - "measuredH": "107", - "measuredW": "125", + "measuredW": "150", + "measuredH": "100", + "x": "487", + "y": "671", "properties": { "color": "2848996", "curvature": "-1", @@ -7602,18 +3838,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "125", - "x": "487", - "y": "671", - "zOrder": "396" + } }, { - "ID": "1126", + "ID": "2446", + "typeID": "Arrow", + "zOrder": "245", + "w": "119", "h": "55", - "measuredH": "55", - "measuredW": "119", + "measuredW": "150", + "measuredH": "100", + "x": "489", + "y": "669", "properties": { "color": "2848996", "curvature": "-1", @@ -7632,18 +3868,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "119", - "x": "489", - "y": "669", - "zOrder": "397" + } }, { - "ID": "1127", + "ID": "2447", + "typeID": "Arrow", + "zOrder": "246", + "w": "131", "h": "11", - "measuredH": "11", - "measuredW": "131", + "measuredW": "150", + "measuredH": "100", + "x": "482", + "y": "663", "properties": { "color": "2848996", "curvature": "-1", @@ -7662,18 +3898,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "131", - "x": "482", - "y": "663", - "zOrder": "398" + } }, { - "ID": "1128", + "ID": "2448", + "typeID": "Arrow", + "zOrder": "247", + "w": "138", "h": "32", - "measuredH": "32", - "measuredW": "138", + "measuredW": "150", + "measuredH": "100", + "x": "477", + "y": "629", "properties": { "color": "2848996", "curvature": "-1", @@ -7692,258 +3928,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, + } + }, + { + "ID": "2466", "typeID": "Arrow", - "w": "138", - "x": "477", - "y": "629", - "zOrder": "399" - }, - { - "ID": "1129", - "measuredH": "25", - "measuredW": "82", - "properties": { - "size": "17", - "text": "JavaScript" - }, - "typeID": "Label", - "w": "84", - "x": "1023", - "y": "575", - "zOrder": "400" - }, - { - "ID": "1130", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "272", - "x": "605", - "y": "643", - "zOrder": "401" - }, - { - "ID": "1131", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "269", - "x": "228", - "y": "603", - "zOrder": "402" - }, - { - "ID": "1132", - "measuredH": "25", - "measuredW": "121", - "properties": { - "size": "17", - "text": "Terminal Usage" - }, - "typeID": "Label", - "w": "123", - "x": "301", - "y": "613", - "zOrder": "403" - }, - { - "ID": "1133", - "h": "101", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "269", - "x": "228", - "y": "802", - "zOrder": "404" - }, - { - "ID": "1134", - "measuredH": "25", - "measuredW": "214", - "properties": { - "bold": "true", - "size": "17", - "text": "Basic Terminal Commands" - }, - "typeID": "Label", - "w": "210", - "x": "258", - "y": "814", - "zOrder": "405" - }, - { - "ID": "1135", - "measuredH": "25", - "measuredW": "234", - "properties": { - "size": "17", - "text": "grep, awk, sed, lsof, curl, wget" - }, - "typeID": "Label", - "w": "238", - "x": "244", - "y": "840", - "zOrder": "406" - }, - { - "ID": "1136", - "measuredH": "25", - "measuredW": "215", - "properties": { - "size": "17", - "text": "tail, head, less, find, ssh, kill" - }, - "typeID": "Label", - "w": "216", - "x": "255", - "y": "866", - "zOrder": "407" - }, - { - "ID": "1137", - "measuredH": "25", - "measuredW": "220", - "properties": { - "bold": "true", - "size": "17", - "text": "OS and General Knowledge" - }, - "typeID": "Label", - "w": "222", - "x": "633", - "y": "655", - "zOrder": "408" - }, - { - "ID": "1138", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "267", - "x": "229", - "y": "702", - "zOrder": "409" - }, - { - "ID": "1139", - "measuredH": "25", - "measuredW": "169", - "properties": { - "size": "17", - "text": "Process Management" - }, - "typeID": "Label", - "w": "172", - "x": "277", - "y": "711", - "zOrder": "410" - }, - { - "ID": "1140", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "229", - "y": "752", - "zOrder": "411" - }, - { - "ID": "1141", - "measuredH": "25", - "measuredW": "201", - "properties": { - "size": "17", - "text": "Threads and Concurrency" - }, - "typeID": "Label", - "w": "202", - "x": "262", - "y": "762", - "zOrder": "412" - }, - { - "ID": "1142", - "h": "43", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "268", - "x": "229", - "y": "652", - "zOrder": "413" - }, - { - "ID": "1143", - "measuredH": "25", - "measuredW": "196", - "properties": { - "size": "17", - "text": "How OSs work in General" - }, - "typeID": "Label", - "w": "197", - "x": "264", - "y": "661", - "zOrder": "414" - }, - { - "ID": "1144", - "measuredH": "23", - "measuredW": "347", - "properties": { - "size": "15", - "text": "Make sure to learn its quirks. Core details about its" - }, - "typeID": "Label", - "w": "347", - "x": "582", - "y": "961", - "zOrder": "415" - }, - { - "ID": "1145", - "measuredH": "23", - "measuredW": "301", - "properties": { - "size": "15", - "text": "runtime e.g. concurrency, memory model etc." - }, - "typeID": "Label", - "w": "306", - "x": "603", - "y": "984", - "zOrder": "416" - }, - { - "ID": "1146", + "zOrder": "254", + "w": "58", "h": "1", - "measuredH": "1", - "measuredW": "58", + "measuredW": "150", + "measuredH": "100", + "x": "1124", + "y": "1120", "properties": { "color": "2848996", "curvature": "-1", @@ -7962,18 +3958,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "58", - "x": "1124", - "y": "1120", - "zOrder": "417" + } }, { - "ID": "1147", + "ID": "2467", + "typeID": "Arrow", + "zOrder": "255", + "w": "85", "h": "3", - "measuredH": "1", - "measuredW": "83", + "measuredW": "150", + "measuredH": "100", + "x": "787", + "y": "1116", "properties": { "color": "2848996", "curvature": "-1", @@ -7992,18 +3988,18 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "85", - "x": "787", - "y": "1116", - "zOrder": "418" + } }, { - "ID": "1148", + "ID": "2468", + "typeID": "Arrow", + "zOrder": "256", + "w": "56", "h": "1", - "measuredH": "0", - "measuredW": "56", + "measuredW": "150", + "measuredH": "100", + "x": "420", + "y": "1122", "properties": { "color": "2848996", "curvature": "-1", @@ -8022,4113 +4018,10856 @@ }, "rightArrow": "false", "stroke": "dotted" - }, - "typeID": "Arrow", - "w": "56", - "x": "420", - "y": "1122", - "zOrder": "419" + } }, { - "ID": "1149", - "h": "54", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "216", - "x": "210", - "y": "1094", - "zOrder": "420" - }, - { - "ID": "1150", + "ID": "2526", + "typeID": "Label", + "zOrder": "277", + "w": "84", + "measuredW": "83", "measuredH": "25", - "measuredW": "153", - "properties": { - "bold": "true", - "size": "17", - "text": "Basic Usage of Git" - }, - "typeID": "Label", - "w": "155", - "x": "241", - "y": "1109", - "zOrder": "421" - }, - { - "ID": "1151", - "h": "49", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "131", - "x": "1178", - "y": "996", - "zOrder": "422" - }, - { - "ID": "1152", - "measuredH": "25", - "measuredW": "57", - "properties": { - "bold": "true", - "size": "17", - "text": "GitHub" - }, - "typeID": "Label", - "w": "64", - "x": "1212", - "y": "1009", - "zOrder": "423" - }, - { - "ID": "1153", - "h": "78", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "319", - "x": "833", - "y": "1079", - "zOrder": "424" - }, - { - "ID": "1154", - "measuredH": "25", - "measuredW": "180", - "properties": { - "bold": "true", - "size": "17", - "text": "Repo hosting services" - }, - "typeID": "Label", - "w": "189", - "x": "899", - "y": "1094", - "zOrder": "425" - }, - { - "ID": "1155", - "measuredH": "23", - "measuredW": "278", - "properties": { - "size": "15", - "text": "Create account and Learn to use GitHub" - }, - "typeID": "Label", - "w": "279", - "x": "854", - "y": "1120", - "zOrder": "426" - }, - { - "ID": "1156", - "h": "77", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "336", - "x": "464", - "y": "1080", - "zOrder": "427" - }, - { - "ID": "1157", - "measuredH": "25", - "measuredW": "199", - "properties": { - "bold": "true", - "size": "17", - "text": "Version Control Systems" - }, - "typeID": "Label", - "w": "201", - "x": "529", - "y": "1095", - "zOrder": "428" - }, - { - "ID": "1158", - "measuredH": "23", - "measuredW": "290", - "properties": { - "size": "15", - "text": "What are they and why you should use one" - }, - "typeID": "Label", - "w": "292", - "x": "483", - "y": "1120", - "zOrder": "429" - }, - { - "ID": "1159", - "h": "49", - "measuredH": "140", - "measuredW": "200", - "properties": { - "backgroundAlpha": "0.5", - "borderColor": "16777215", - "color": "10066329" - }, - "typeID": "TextArea", - "w": "131", - "x": "1178", - "y": "1104", - "zOrder": "430" - }, - { - "ID": "1160", - "measuredH": "25", - "measuredW": "78", - "properties": { - "bold": "true", - "color": "3355443", - "size": "17", - "text": "Bitbucket" - }, - "typeID": "Label", - "w": "80", - "x": "1204", - "y": "1116", - "zOrder": "431" - }, - { - "ID": "1161", - "h": "48", - "measuredH": "140", - "measuredW": "200", - "properties": { - "backgroundAlpha": "0.25", - "borderColor": "6710886", - "color": "15658734" - }, - "typeID": "TextArea", - "w": "131", - "x": "1178", - "y": "1104", - "zOrder": "432" - }, - { - "ID": "1162", - "h": "49", - "measuredH": "140", - "measuredW": "200", - "properties": { - "backgroundAlpha": "0.5", - "borderColor": "16777215", - "color": "10066329" - }, - "typeID": "TextArea", - "w": "131", - "x": "1178", - "y": "1050", - "zOrder": "433" - }, - { - "ID": "1163", - "measuredH": "25", - "measuredW": "55", - "properties": { - "bold": "true", - "color": "3355443", - "size": "17", - "text": "GitLab" - }, - "typeID": "Label", - "w": "52", - "x": "1218", - "y": "1062", - "zOrder": "434" - }, - { - "ID": "1164", - "h": "49", - "measuredH": "140", - "measuredW": "200", - "properties": { - "backgroundAlpha": "0.25", - "borderColor": "6710886", - "color": "15658734" - }, - "typeID": "TextArea", - "w": "131", - "x": "1178", - "y": "1050", - "zOrder": "435" - }, - { - "ID": "1165", - "children": { - "controls": { - "control": [ - { - "ID": "0", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "0", - "y": "0", - "zOrder": "0" - }, - { - "ID": "1", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "0", - "y": "0", - "zOrder": "1" - } - ] - } - }, - "h": "24", - "measuredH": "24", - "measuredW": "24", - "typeID": "__group__", - "w": "24", - "x": "202", - "y": "1086", - "zOrder": "436" - }, - { - "ID": "1166", - "children": { - "controls": { - "control": [ - { - "ID": "0", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "0", - "y": "0", - "zOrder": "0" - }, - { - "ID": "1", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "0", - "y": "0", - "zOrder": "1" - } - ] - } - }, - "h": "24", - "measuredH": "24", - "measuredW": "24", - "typeID": "__group__", - "w": "24", - "x": "1292", - "y": "988", - "zOrder": "437" - }, - { - "ID": "1167", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1045", - "zOrder": "438" - }, - { - "ID": "1168", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1045", - "zOrder": "439" - }, - { - "ID": "1169", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1045", - "zOrder": "440" - }, - { - "ID": "1170", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1100", - "zOrder": "441" - }, - { - "ID": "1171", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1100", - "zOrder": "442" - }, - { - "ID": "1172", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1294", - "y": "1100", - "zOrder": "443" - }, - { - "ID": "1173", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "171", - "x": "528", - "y": "1282", - "zOrder": "444" - }, - { - "ID": "1174", - "measuredH": "25", - "measuredW": "48", - "properties": { - "size": "17", - "text": "ORMs" - }, - "typeID": "Label", - "w": "49", - "x": "592", - "y": "1290", - "zOrder": "445" - }, - { - "ID": "1175", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "140", - "x": "533", - "y": "2029", - "zOrder": "446" - }, - { - "ID": "1176", - "measuredH": "25", - "measuredW": "61", - "properties": { - "bold": "true", - "size": "17", - "text": "CI / CD" - }, - "typeID": "Label", - "w": "62", - "x": "572", - "y": "2042", - "zOrder": "447" - }, - { - "ID": "1177", - "h": "50", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "324", - "x": "501", - "y": "2113", - "zOrder": "448" - }, - { - "ID": "1178", - "measuredH": "25", - "measuredW": "284", - "properties": { - "bold": "true", - "size": "17", - "text": "Design and Development Principles" - }, - "typeID": "Label", - "w": "292", - "x": "525", - "y": "2126", - "zOrder": "449" - }, - { - "ID": "1179", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "261", - "x": "155", - "y": "2203", - "zOrder": "450" - }, - { - "ID": "1180", - "measuredH": "25", - "measuredW": "53", - "properties": { - "size": "17", - "text": "SOLID" - }, - "typeID": "Label", - "w": "55", - "x": "258", - "y": "2210", - "zOrder": "451" - }, - { - "ID": "1181", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "261", - "x": "155", - "y": "2245", - "zOrder": "452" - }, - { - "ID": "1182", - "measuredH": "25", - "measuredW": "40", - "properties": { - "size": "17", - "text": "KISS" - }, - "typeID": "Label", - "w": "44", - "x": "264", - "y": "2252", - "zOrder": "453" - }, - { - "ID": "1183", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "260", - "x": "156", - "y": "2286", - "zOrder": "454" - }, - { - "ID": "1184", - "measuredH": "25", - "measuredW": "49", - "properties": { - "size": "17", - "text": "YAGNI" - }, - "typeID": "Label", - "w": "53", - "x": "259", - "y": "2294", - "zOrder": "455" - }, - { - "ID": "1185", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "260", - "x": "156", - "y": "2330", - "zOrder": "456" - }, - { - "ID": "1186", - "measuredH": "25", - "measuredW": "35", - "properties": { - "size": "17", - "text": "DRY" - }, - "typeID": "Label", - "w": "38", - "x": "267", - "y": "2338", - "zOrder": "457" - }, - { - "ID": "1187", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "260", - "x": "156", - "y": "2067", - "zOrder": "458" - }, - { - "ID": "1188", - "measuredH": "25", - "measuredW": "165", - "properties": { - "size": "17", - "text": "GOF Design Patterns" - }, - "typeID": "Label", - "w": "168", - "x": "202", - "y": "2074", - "zOrder": "459" - }, - { - "ID": "1189", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "260", - "x": "156", - "y": "2112", - "zOrder": "460" - }, - { - "ID": "1190", - "measuredH": "25", - "measuredW": "171", - "properties": { - "size": "17", - "text": "Domain Driven Design" - }, - "typeID": "Label", - "w": "175", - "x": "198", - "y": "2119", - "zOrder": "461" - }, - { - "ID": "1191", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "260", - "x": "156", - "y": "2157", - "zOrder": "462" - }, - { - "ID": "1192", - "measuredH": "25", - "measuredW": "194", - "properties": { - "size": "17", - "text": "Test Driven Development" - }, - "typeID": "Label", - "w": "196", - "x": "188", - "y": "2164", - "zOrder": "463" - }, - { - "ID": "1193", - "h": "37", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "245", - "x": "957", - "y": "2347", - "zOrder": "464" - }, - { - "ID": "1194", - "measuredH": "25", - "measuredW": "84", - "properties": { - "size": "17", - "text": "Serverless" - }, - "typeID": "Label", - "w": "87", - "x": "1036", - "y": "2353", - "zOrder": "465" - }, - { - "ID": "1195", - "h": "129", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16776960" - }, - "typeID": "TextArea", - "w": "318", - "x": "571", - "y": "2833", - "zOrder": "466" - }, - { - "ID": "1196", - "measuredH": "25", - "measuredW": "143", - "properties": { - "bold": "true", - "size": "17", - "text": "Building for Scale" - }, - "typeID": "Label", - "w": "147", - "x": "656", - "y": "2849", - "zOrder": "467" - }, - { - "ID": "1197", - "measuredH": "24", - "measuredW": "260", - "properties": { - "size": "16", - "text": "General topics that you should learn" - }, - "typeID": "Label", - "w": "264", - "x": "598", - "y": "2877", - "zOrder": "468" - }, - { - "ID": "1198", - "measuredH": "24", - "measuredW": "263", - "properties": { - "size": "16", - "text": "and care about for the sustainability" - }, - "typeID": "Label", - "w": "270", - "x": "595", - "y": "2900", - "zOrder": "469" - }, - { - "ID": "1199", - "measuredH": "24", - "measuredW": "106", - "properties": { - "size": "16", - "text": "of the product." - }, - "typeID": "Label", - "w": "108", - "x": "676", - "y": "2924", - "zOrder": "470" - }, - { - "ID": "1200", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "199", - "x": "315", - "y": "2758", - "zOrder": "471" - }, - { - "ID": "1201", - "measuredH": "25", - "measuredW": "157", - "properties": { - "size": "17", - "text": "Mitigation Strategies" - }, - "typeID": "Label", - "w": "159", - "x": "335", - "y": "2765", - "zOrder": "472" - }, - { - "ID": "1202", - "measuredH": "23", - "measuredW": "294", - "properties": { - "size": "15", - "text": "Metrics logging and other observable items" - }, - "typeID": "Label", - "w": "299", - "x": "957", - "y": "3002", - "zOrder": "473" - }, - { - "ID": "1203", - "measuredH": "23", - "measuredW": "302", - "properties": { - "size": "15", - "text": "that could help you in debugging and solving" - }, - "typeID": "Label", - "w": "305", - "x": "954", - "y": "3025", - "zOrder": "474" - }, - { - "ID": "1204", - "measuredH": "23", - "measuredW": "225", - "properties": { - "size": "15", - "text": "the issues when things go wrong" - }, - "typeID": "Label", - "w": "229", - "x": "992", - "y": "3049", - "zOrder": "475" - }, - { - "ID": "1205", - "h": "36", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "198", - "x": "316", - "y": "2895", - "zOrder": "476" - }, - { - "ID": "1206", - "measuredH": "25", - "measuredW": "81", + "x": "169", + "y": "2906", "properties": { "size": "17", "text": "Monitoring" - }, - "typeID": "Label", - "w": "84", - "x": "169", - "y": "2906", - "zOrder": "477" + } }, { - "ID": "1207", + "ID": "2527", + "typeID": "Label", + "zOrder": "278", + "w": "78", + "measuredW": "73", "measuredH": "25", - "measuredW": "75", + "x": "162", + "y": "2749", "properties": { "size": "17", "text": "Throttling" - }, - "typeID": "Label", - "w": "78", - "x": "162", - "y": "2749", - "zOrder": "478" + } }, { - "ID": "1208", - "measuredH": "25", + "ID": "2528", + "typeID": "Label", + "zOrder": "279", + "w": "109", "measuredW": "107", + "measuredH": "25", + "x": "131", + "y": "2777", "properties": { "size": "17", "text": "Backpressure" - }, - "typeID": "Label", - "w": "109", - "x": "131", - "y": "2777", - "zOrder": "479" + } }, { - "ID": "1209", + "ID": "2529", + "typeID": "Label", + "zOrder": "280", + "w": "100", + "measuredW": "94", "measuredH": "25", - "measuredW": "97", + "x": "140", + "y": "2805", "properties": { "size": "17", "text": "Loadshifting" - }, - "typeID": "Label", - "w": "100", - "x": "140", - "y": "2805", - "zOrder": "480" + } }, { - "ID": "1210", - "measuredH": "25", + "ID": "2530", + "typeID": "Label", + "zOrder": "281", + "w": "70", "measuredW": "66", + "measuredH": "25", + "x": "168", + "y": "2699", "properties": { "size": "17", "text": "Graceful" - }, - "typeID": "Label", - "w": "70", - "x": "168", - "y": "2699", - "zOrder": "481" + } }, { - "ID": "1211", + "ID": "2531", + "typeID": "Label", + "zOrder": "282", + "w": "84", + "measuredW": "76", "measuredH": "25", - "measuredW": "78", + "x": "167", + "y": "2931", "properties": { "size": "17", "text": "Telemetry" - }, - "typeID": "Label", - "w": "84", - "x": "167", - "y": "2931", - "zOrder": "482" + } }, { - "ID": "1212", + "ID": "2532", + "typeID": "Label", + "zOrder": "283", + "w": "124", + "measuredW": "121", "measuredH": "25", - "measuredW": "122", + "x": "129", + "y": "2881", "properties": { "size": "17", "text": "Instrumentation" - }, - "typeID": "Label", - "w": "124", - "x": "129", - "y": "2881", - "zOrder": "483" + } }, { - "ID": "1213", - "measuredH": "25", - "measuredW": "154", - "properties": { - "size": "17", - "text": "Understand the Diff." - }, + "ID": "2534", "typeID": "Label", - "w": "155", - "x": "338", - "y": "2901", - "zOrder": "484" - }, - { - "ID": "1214", + "zOrder": "284", + "w": "118", + "measuredW": "116", "measuredH": "25", - "measuredW": "115", + "x": "122", + "y": "2830", "properties": { "size": "17", "text": "Circuit Breaker" - }, + } + }, + { + "ID": "2539", "typeID": "Label", - "w": "118", - "x": "122", - "y": "2830", - "zOrder": "485" - }, - { - "ID": "1215", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "333", - "x": "938", - "y": "2868", - "zOrder": "486" - }, - { - "ID": "1216", + "zOrder": "287", + "w": "96", + "measuredW": "96", "measuredH": "25", - "measuredW": "152", - "properties": { - "size": "17", - "text": "Migration Strategies" - }, - "typeID": "Label", - "w": "154", - "x": "1031", - "y": "2875", - "zOrder": "487" - }, - { - "ID": "1217", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "332", - "x": "939", - "y": "2914", - "zOrder": "488" - }, - { - "ID": "1218", - "measuredH": "25", - "measuredW": "228", - "properties": { - "size": "17", - "text": "Horizontal vs Vertical Scaling" - }, - "typeID": "Label", - "w": "230", - "x": "993", - "y": "2921", - "zOrder": "489" - }, - { - "ID": "1219", - "measuredH": "25", - "measuredW": "93", + "x": "142", + "y": "2719", "properties": { "size": "17", "text": "Degradation" - }, - "typeID": "Label", - "w": "96", - "x": "142", - "y": "2719", - "zOrder": "490" + } }, { - "ID": "1220", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, + "ID": "2580", "typeID": "Icon", - "x": "587", - "y": "475", - "zOrder": "491" - }, - { - "ID": "1221", - "measuredH": "24", + "zOrder": "288", "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "587", - "y": "475", - "zOrder": "492" - }, - { - "ID": "1222", "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "601", - "y": "633", - "zOrder": "493" - }, - { - "ID": "1223", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "601", - "y": "633", - "zOrder": "494" - }, - { - "ID": "1224", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "594", - "zOrder": "495" - }, - { - "ID": "1225", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "594", - "zOrder": "496" - }, - { - "ID": "1226", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "647", - "zOrder": "497" - }, - { - "ID": "1227", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "647", - "zOrder": "498" - }, - { - "ID": "1228", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "695", - "zOrder": "499" - }, - { - "ID": "1229", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "695", - "zOrder": "500" - }, - { - "ID": "1230", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "746", - "zOrder": "501" - }, - { - "ID": "1231", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "746", - "zOrder": "502" - }, - { - "ID": "1232", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "797", - "zOrder": "503" - }, - { - "ID": "1233", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "222", - "y": "797", - "zOrder": "504" - }, - { - "ID": "1234", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "347", - "y": "527", - "zOrder": "505" - }, - { - "ID": "1235", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "347", - "y": "527", - "zOrder": "506" - }, - { - "ID": "1236", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1115", - "y": "508", - "zOrder": "507" - }, - { - "ID": "1237", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1115", - "y": "508", - "zOrder": "508" - }, - { - "ID": "1238", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1115", - "y": "561", - "zOrder": "509" - }, - { - "ID": "1239", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1115", - "y": "561", - "zOrder": "510" - }, - { - "ID": "1240", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "618", - "zOrder": "511" - }, - { - "ID": "1241", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "618", - "zOrder": "512" - }, - { - "ID": "1242", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "671", - "zOrder": "513" - }, - { - "ID": "1243", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "671", - "zOrder": "514" - }, - { - "ID": "1244", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "721", - "zOrder": "515" - }, - { - "ID": "1245", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "721", - "zOrder": "516" - }, - { - "ID": "1246", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "771", - "zOrder": "517" - }, - { - "ID": "1247", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "771", - "zOrder": "518" - }, - { - "ID": "1248", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "846", - "zOrder": "519" - }, - { - "ID": "1249", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1241", - "y": "846", - "zOrder": "520" - }, - { - "ID": "1250", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1274", - "zOrder": "521" - }, - { - "ID": "1251", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1274", - "zOrder": "522" - }, - { - "ID": "1252", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1322", - "zOrder": "523" - }, - { - "ID": "1253", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1322", - "zOrder": "524" - }, - { - "ID": "1254", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1365", - "zOrder": "525" - }, - { - "ID": "1255", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1365", - "zOrder": "526" - }, - { - "ID": "1256", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1411", - "zOrder": "527" - }, - { - "ID": "1257", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "521", - "y": "1411", - "zOrder": "528" - }, - { - "ID": "1258", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "429", - "y": "1451", - "zOrder": "529" - }, - { - "ID": "1259", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "429", - "y": "1451", - "zOrder": "530" - }, - { - "ID": "1260", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", "x": "431", "y": "1501", - "zOrder": "531" - }, - { - "ID": "1261", - "measuredH": "24", - "measuredW": "24", "properties": { - "color": "10027263", + "color": "16777215", "icon": { - "ID": "check-circle", + "ID": "circle", "size": "small" } - }, + } + }, + { + "ID": "2581", "typeID": "Icon", + "zOrder": "289", + "measuredW": "24", + "measuredH": "24", "x": "431", "y": "1501", - "zOrder": "532" - }, - { - "ID": "1262", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1371", - "zOrder": "533" - }, - { - "ID": "1263", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1371", - "zOrder": "534" - }, - { - "ID": "1264", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1421", - "zOrder": "535" - }, - { - "ID": "1265", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1421", - "zOrder": "536" - }, - { - "ID": "1266", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1466", - "zOrder": "537" - }, - { - "ID": "1267", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1271", - "y": "1466", - "zOrder": "538" - }, - { - "ID": "1268", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "428", - "y": "1562", - "zOrder": "539" - }, - { - "ID": "1269", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "428", - "y": "1562", - "zOrder": "540" - }, - { - "ID": "1270", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "428", - "y": "1610", - "zOrder": "541" - }, - { - "ID": "1271", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "428", - "y": "1610", - "zOrder": "542" - }, - { - "ID": "1272", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "429", - "y": "1657", - "zOrder": "543" - }, - { - "ID": "1273", - "measuredH": "24", - "measuredW": "24", "properties": { "color": "10027263", "icon": { "ID": "check-circle", "size": "small" } - }, - "typeID": "Icon", - "x": "429", - "y": "1657", - "zOrder": "544" + } }, { - "ID": "1274", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, + "ID": "2623", "typeID": "Icon", - "x": "1257", - "y": "1511", - "zOrder": "545" - }, - { - "ID": "1275", - "measuredH": "24", + "zOrder": "290", "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1257", - "y": "1511", - "zOrder": "546" - }, - { - "ID": "1276", "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1258", - "y": "1577", - "zOrder": "547" - }, - { - "ID": "1277", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1258", - "y": "1577", - "zOrder": "548" - }, - { - "ID": "1278", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1258", - "y": "1625", - "zOrder": "549" - }, - { - "ID": "1279", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1258", - "y": "1625", - "zOrder": "550" - }, - { - "ID": "1280", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1520", - "zOrder": "551" - }, - { - "ID": "1281", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1520", - "zOrder": "552" - }, - { - "ID": "1282", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1556", - "zOrder": "553" - }, - { - "ID": "1283", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1556", - "zOrder": "554" - }, - { - "ID": "1284", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1593", - "zOrder": "555" - }, - { - "ID": "1285", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1593", - "zOrder": "556" - }, - { - "ID": "1286", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1629", - "zOrder": "557" - }, - { - "ID": "1287", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "170", - "y": "1629", - "zOrder": "558" - }, - { - "ID": "1288", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1664", - "zOrder": "559" - }, - { - "ID": "1289", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1664", - "zOrder": "560" - }, - { - "ID": "1290", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1702", - "zOrder": "561" - }, - { - "ID": "1291", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1702", - "zOrder": "562" - }, - { - "ID": "1292", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1480", - "zOrder": "563" - }, - { - "ID": "1293", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "171", - "y": "1480", - "zOrder": "564" - }, - { - "ID": "1294", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "136", - "y": "1782", - "zOrder": "565" - }, - { - "ID": "1295", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "136", - "y": "1782", - "zOrder": "566" - }, - { - "ID": "1296", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "138", - "y": "1831", - "zOrder": "567" - }, - { - "ID": "1297", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "138", - "y": "1831", - "zOrder": "568" - }, - { - "ID": "1298", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "138", - "y": "1831", - "zOrder": "569" - }, - { - "ID": "1299", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "333", - "y": "1763", - "zOrder": "570" - }, - { - "ID": "1300", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "333", - "y": "1763", - "zOrder": "571" - }, - { - "ID": "1301", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "334", - "y": "1855", - "zOrder": "572" - }, - { - "ID": "1302", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "334", - "y": "1855", - "zOrder": "573" - }, - { - "ID": "1303", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", "x": "1272", "y": "1703", - "zOrder": "574" - }, - { - "ID": "1304", - "measuredH": "24", - "measuredW": "24", "properties": { - "color": "10027263", + "color": "16777215", "icon": { - "ID": "check-circle", + "ID": "circle", "size": "small" } - }, + } + }, + { + "ID": "2624", "typeID": "Icon", + "zOrder": "291", + "measuredW": "24", + "measuredH": "24", "x": "1272", "y": "1703", - "zOrder": "575" - }, - { - "ID": "1305", - "measuredH": "24", - "measuredW": "24", "properties": { - "color": "16777215", + "color": "10027263", "icon": { - "ID": "circle", + "ID": "check-circle", "size": "small" } - }, + } + }, + { + "ID": "2625", "typeID": "Icon", + "zOrder": "292", + "measuredW": "24", + "measuredH": "24", "x": "1277", "y": "1910", - "zOrder": "576" - }, - { - "ID": "1306", - "measuredH": "24", - "measuredW": "24", "properties": { - "color": "10027263", + "color": "16777215", "icon": { - "ID": "check-circle", + "ID": "circle", "size": "small" } - }, + } + }, + { + "ID": "2626", "typeID": "Icon", + "zOrder": "293", + "measuredW": "24", + "measuredH": "24", "x": "1277", "y": "1910", - "zOrder": "577" - }, - { - "ID": "1307", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "272", - "y": "1905", - "zOrder": "578" - }, - { - "ID": "1308", - "measuredH": "24", - "measuredW": "24", "properties": { "color": "10027263", "icon": { "ID": "check-circle", "size": "small" } - }, - "typeID": "Icon", - "x": "272", - "y": "1905", - "zOrder": "579" - }, - { - "ID": "1309", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "272", - "y": "1954", - "zOrder": "580" - }, - { - "ID": "1310", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "272", - "y": "1954", - "zOrder": "581" - }, - { - "ID": "1311", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "272", - "y": "1996", - "zOrder": "582" - }, - { - "ID": "1312", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "272", - "y": "1996", - "zOrder": "583" - }, - { - "ID": "1313", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "525", - "y": "2022", - "zOrder": "584" - }, - { - "ID": "1314", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "525", - "y": "2022", - "zOrder": "585" - }, - { - "ID": "1315", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2171", - "zOrder": "586" - }, - { - "ID": "1316", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2171", - "zOrder": "587" - }, - { - "ID": "1317", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2220", - "zOrder": "588" - }, - { - "ID": "1318", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2220", - "zOrder": "589" - }, - { - "ID": "1319", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2261", - "zOrder": "590" - }, - { - "ID": "1320", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2261", - "zOrder": "591" - }, - { - "ID": "1321", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1189", - "y": "2303", - "zOrder": "592" - }, - { - "ID": "1322", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1189", - "y": "2303", - "zOrder": "593" - }, - { - "ID": "1323", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2344", - "zOrder": "594" - }, - { - "ID": "1324", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1187", - "y": "2344", - "zOrder": "595" - }, - { - "ID": "1325", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2200", - "zOrder": "596" - }, - { - "ID": "1326", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2200", - "zOrder": "597" - }, - { - "ID": "1327", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "147", - "y": "2243", - "zOrder": "598" - }, - { - "ID": "1328", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "147", - "y": "2243", - "zOrder": "599" - }, - { - "ID": "1329", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "147", - "y": "2285", - "zOrder": "600" - }, - { - "ID": "1330", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "147", - "y": "2285", - "zOrder": "601" - }, - { - "ID": "1331", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "149", - "y": "2328", - "zOrder": "602" - }, - { - "ID": "1332", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "149", - "y": "2328", - "zOrder": "603" - }, - { - "ID": "1333", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2154", - "zOrder": "604" - }, - { - "ID": "1334", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2154", - "zOrder": "605" - }, - { - "ID": "1335", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2107", - "zOrder": "606" - }, - { - "ID": "1336", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2107", - "zOrder": "607" - }, - { - "ID": "1337", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2061", - "zOrder": "608" - }, - { - "ID": "1338", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "148", - "y": "2061", - "zOrder": "609" - }, - { - "ID": "1339", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "507", - "y": "2284", - "zOrder": "610" - }, - { - "ID": "1340", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "507", - "y": "2284", - "zOrder": "611" - }, - { - "ID": "1341", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "507", - "y": "2329", - "zOrder": "612" - }, - { - "ID": "1342", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "507", - "y": "2329", - "zOrder": "613" - }, - { - "ID": "1343", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "162", - "y": "2430", - "zOrder": "614" - }, - { - "ID": "1344", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "162", - "y": "2430", - "zOrder": "615" - }, - { - "ID": "1345", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1088", - "y": "2510", - "zOrder": "616" - }, - { - "ID": "1346", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1088", - "y": "2510", - "zOrder": "617" - }, - { - "ID": "1347", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1062", - "y": "2510", - "zOrder": "618" - }, - { - "ID": "1348", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1062", - "y": "2510", - "zOrder": "619" - }, - { - "ID": "1349", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1086", - "y": "2560", - "zOrder": "620" - }, - { - "ID": "1350", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1086", - "y": "2560", - "zOrder": "621" - }, - { - "ID": "1351", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1086", - "y": "2560", - "zOrder": "622" - }, - { - "ID": "1352", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "447", - "y": "2585", - "zOrder": "623" - }, - { - "ID": "1353", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "447", - "y": "2585", - "zOrder": "624" - }, - { - "ID": "1354", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "253", - "y": "2595", - "zOrder": "625" - }, - { - "ID": "1355", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "253", - "y": "2595", - "zOrder": "626" - }, - { - "ID": "1356", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "844", - "y": "2527", - "zOrder": "627" - }, - { - "ID": "1357", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "844", - "y": "2527", - "zOrder": "628" - }, - { - "ID": "1358", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1174", - "y": "2394", - "zOrder": "629" - }, - { - "ID": "1359", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1174", - "y": "2394", - "zOrder": "630" - }, - { - "ID": "1360", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1151", - "y": "2393", - "zOrder": "631" - }, - { - "ID": "1361", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1151", - "y": "2393", - "zOrder": "632" - }, - { - "ID": "1362", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "907", - "y": "2403", - "zOrder": "633" - }, - { - "ID": "1363", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "907", - "y": "2403", - "zOrder": "634" - }, - { - "ID": "1364", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1175", - "y": "2434", - "zOrder": "635" - }, - { - "ID": "1365", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1175", - "y": "2434", - "zOrder": "636" - }, - { - "ID": "1366", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1175", - "y": "2434", - "zOrder": "637" - }, - { - "ID": "1367", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "541", - "y": "2710", - "zOrder": "638" - }, - { - "ID": "1368", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "541", - "y": "2710", - "zOrder": "639" - }, - { - "ID": "1369", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "896", - "y": "2704", - "zOrder": "640" - }, - { - "ID": "1370", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "896", - "y": "2704", - "zOrder": "641" - }, - { - "ID": "1371", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2666", - "zOrder": "642" - }, - { - "ID": "1372", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2666", - "zOrder": "643" - }, - { - "ID": "1373", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1155", - "y": "2666", - "zOrder": "644" - }, - { - "ID": "1374", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10066329", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1155", - "y": "2666", - "zOrder": "645" - }, - { - "ID": "1375", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2717", - "zOrder": "646" - }, - { - "ID": "1376", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2717", - "zOrder": "647" - }, - { - "ID": "1377", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2717", - "zOrder": "648" - }, - { - "ID": "1378", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2806", - "zOrder": "649" - }, - { - "ID": "1379", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2806", - "zOrder": "650" - }, - { - "ID": "1380", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2806", - "zOrder": "651" - }, - { - "ID": "1381", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2762", - "zOrder": "652" - }, - { - "ID": "1382", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2762", - "zOrder": "653" - }, - { - "ID": "1383", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "3700253", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1181", - "y": "2762", - "zOrder": "654" - }, - { - "ID": "1384", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "501", - "y": "2750", - "zOrder": "655" - }, - { - "ID": "1385", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "501", - "y": "2750", - "zOrder": "656" - }, - { - "ID": "1386", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "561", - "y": "2824", - "zOrder": "657" - }, - { - "ID": "1387", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "561", - "y": "2824", - "zOrder": "658" - }, - { - "ID": "1388", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2859", - "zOrder": "659" - }, - { - "ID": "1389", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2859", - "zOrder": "660" - }, - { - "ID": "1390", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2912", - "zOrder": "661" - }, - { - "ID": "1391", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2912", - "zOrder": "662" - }, - { - "ID": "1392", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2958", - "zOrder": "663" - }, - { - "ID": "1393", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1256", - "y": "2958", - "zOrder": "664" - }, - { - "ID": "1394", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", - "w": "188", - "x": "1086", - "y": "1674", - "zOrder": "665" - }, - { - "ID": "1395", - "measuredH": "25", - "measuredW": "46", - "properties": { - "align": "center", - "size": "17", - "text": "gRPC" - }, - "typeID": "Label", - "w": "90", - "x": "1135", - "y": "1682", - "zOrder": "666" - }, - { - "ID": "1396", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "16777215", - "icon": { - "ID": "circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1259", - "y": "1667", - "zOrder": "667" - }, - { - "ID": "1397", - "measuredH": "24", - "measuredW": "24", - "properties": { - "color": "10027263", - "icon": { - "ID": "check-circle", - "size": "small" - } - }, - "typeID": "Icon", - "x": "1259", - "y": "1667", - "zOrder": "668" - }, - { - "ID": "1398", - "measuredH": "25", - "measuredW": "83", - "properties": { - "bold": "true", - "size": "17", - "text": "Document" - }, - "typeID": "Label", - "x": "1005", - "y": "1190", - "zOrder": "669" - }, - { - "ID": "1399", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", + } + }, + { + "ID": "2733", + "typeID": "__group__", + "zOrder": "180", + "measuredW": "320", + "measuredH": "45", + "w": "320", + "h": "45", + "x": "964", + "y": "250", + "properties": { + "controlName": "ext_link:roadmap.sh" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "320", + "h": "45", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "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": "35", + "measuredH": "28", + "x": "76", + "y": "8", + "properties": { + "color": "16777215", + "size": "20", + "text": "http" + } + }, + { + "ID": "3", + "typeID": "Label", + "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", + "properties": { + "color": "16777215", + "size": "20", + "text": "/" + } + } + ] + } + } + }, + { + "ID": "2734", + "typeID": "__group__", + "zOrder": "222", + "measuredW": "278", + "measuredH": "60", + "w": "278", + "h": "60", + "x": "586", + "y": "414", + "properties": { + "controlName": "100-internet" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "272", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "10", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "69", + "measuredW": "63", + "measuredH": "25", + "x": "107", + "y": "23", + "properties": { + "bold": "true", + "size": "17", + "text": "Internet" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2735", + "typeID": "__group__", + "zOrder": "223", + "measuredW": "306", + "measuredH": "53", + "w": "306", + "h": "53", + "x": "189", + "y": "366", + "properties": { + "controlName": "100-internet:how-does-the-internet-work" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "299", + "h": "44", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "223", + "measuredW": "219", + "measuredH": "25", + "x": "45", + "y": "19", + "properties": { + "size": "17", + "text": "How does the internet work?" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2736", + "typeID": "__group__", + "zOrder": "224", + "measuredW": "307", + "measuredH": "47", + "w": "307", + "h": "47", + "x": "188", + "y": "418", + "properties": { + "controlName": "101-internet:what-is-http" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "299", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "119", + "measuredW": "113", + "measuredH": "25", + "x": "98", + "y": "15", + "properties": { + "size": "17", + "text": "What is HTTP?" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2737", + "typeID": "__group__", + "zOrder": "225", + "measuredW": "307", + "measuredH": "48", + "w": "307", + "h": "48", + "x": "188", + "y": "463", + "properties": { + "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": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "230", + "measuredW": "225", + "measuredH": "25", + "x": "42", + "y": "16", + "properties": { + "size": "17", + "text": "Browsers and how they work?" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2739", + "typeID": "__group__", + "zOrder": "226", + "measuredW": "290", + "measuredH": "49", + "w": "290", + "h": "49", + "x": "989", + "y": "361", + "properties": { + "controlName": "103-internet:dns-and-how-it-works" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "__group__", + "zOrder": "0", + "measuredW": "290", + "measuredH": "49", + "w": "290", + "h": "49", + "x": "0", + "y": "0", + "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": "2740", + "typeID": "__group__", + "zOrder": "227", + "measuredW": "290", + "measuredH": "45", + "w": "290", + "h": "45", + "x": "988", + "y": "411", + "properties": { + "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": "2741", + "typeID": "__group__", + "zOrder": "228", + "measuredW": "289", + "measuredH": "46", + "w": "289", + "h": "46", + "x": "989", + "y": "456", + "properties": { + "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": "2742", + "typeID": "__group__", + "zOrder": "229", + "measuredW": "277", + "measuredH": "55", + "w": "277", + "h": "55", + "x": "587", + "y": "475", + "properties": { + "controlName": "101-basic-frontend" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "272", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "5", + "y": "5", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "208", + "measuredH": "25", + "x": "37", + "y": "18", + "properties": { + "bold": "true", + "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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2743", + "typeID": "__group__", + "zOrder": "230", + "measuredW": "148", + "measuredH": "52", + "w": "148", + "h": "52", + "x": "347", + "y": "527", + "properties": { + "controlName": "100-basic-frontend:html" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "142", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "49", + "measuredW": "48", + "measuredH": "25", + "x": "52", + "y": "19", + "properties": { + "size": "17", + "text": "HTML" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2745", + "typeID": "__group__", + "zOrder": "231", + "measuredW": "150", + "measuredH": "50", + "w": "150", + "h": "50", + "x": "989", + "y": "508", + "properties": { + "controlName": "101-basic-frontend:css" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "142", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "38", + "measuredW": "33", + "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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2746", + "typeID": "__group__", + "zOrder": "232", + "measuredW": "150", + "measuredH": "48", + "w": "150", + "h": "48", + "x": "989", + "y": "561", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2747", + "typeID": "__group__", + "zOrder": "248", + "measuredW": "276", + "measuredH": "60", + "w": "276", + "h": "60", + "x": "601", + "y": "633", + "properties": { + "controlName": "102-os-general-knowledge" + }, + "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", + "w": "222", + "measuredW": "213", + "measuredH": "25", + "x": "32", + "y": "23", + "properties": { + "bold": "true", + "size": "17", + "text": "OS and General Knowledge" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2748", + "typeID": "__group__", + "zOrder": "249", + "measuredW": "275", + "measuredH": "52", + "w": "275", + "h": "52", + "x": "222", + "y": "594", + "properties": { + "controlName": "100-os-general-knowledge:terminal-usage" + }, + "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", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2749", + "typeID": "__group__", + "zOrder": "253", + "measuredW": "275", + "measuredH": "48", + "w": "275", + "h": "48", + "x": "222", + "y": "647", + "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": "7", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "197", + "measuredW": "195", + "measuredH": "25", + "x": "42", + "y": "14", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2750", + "typeID": "__group__", + "zOrder": "251", + "measuredW": "274", + "measuredH": "50", + "w": "274", + "h": "50", + "x": "222", + "y": "695", + "properties": { + "controlName": "102-os-general-knowledge:process-management" + }, + "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", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2751", + "typeID": "__group__", + "zOrder": "252", + "measuredW": "275", + "measuredH": "49", + "w": "275", + "h": "49", + "x": "222", + "y": "746", + "properties": { + "controlName": "103-os-general-knowledge:threads-and-concurrency" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "268", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "202", + "measuredW": "200", + "measuredH": "25", + "x": "40", + "y": "16", + "properties": { + "size": "17", + "text": "Threads and Concurrency" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2752", + "typeID": "__group__", + "zOrder": "250", + "measuredW": "275", + "measuredH": "106", + "w": "275", + "h": "106", + "x": "222", + "y": "797", + "properties": { + "controlName": "104-os-general-knowledge:basic-terminal-commands" + }, + "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", + "w": "210", + "measuredW": "208", + "measuredH": "25", + "x": "36", + "y": "17", + "properties": { + "bold": "true", + "size": "17", + "text": "Basic Terminal Commands" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "238", + "measuredW": "223", + "measuredH": "25", + "x": "22", + "y": "43", + "properties": { + "size": "17", + "text": "grep, awk, sed, lsof, curl, wget" + } + }, + { + "ID": "3", + "typeID": "Label", + "zOrder": "3", + "w": "216", + "measuredW": "204", + "measuredH": "25", + "x": "33", + "y": "69", + "properties": { + "size": "17", + "text": "tail, head, less, find, ssh, kill" + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "0", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "0", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2753", + "typeID": "__group__", + "zOrder": "238", + "measuredW": "276", + "measuredH": "51", + "w": "276", + "h": "51", + "x": "989", + "y": "618", + "properties": { + "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": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "170", + "measuredW": "169", + "measuredH": "25", + "x": "50", + "y": "18", + "properties": { + "size": "17", + "text": "Memory Management" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2754", + "typeID": "__group__", + "zOrder": "239", + "measuredW": "276", + "measuredH": "47", + "w": "276", + "h": "47", + "x": "989", + "y": "671", + "properties": { + "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": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "224", + "measuredW": "222", + "measuredH": "25", + "x": "23", + "y": "13", + "properties": { + "size": "17", + "text": "Interprocess Communication" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2755", + "typeID": "__group__", + "zOrder": "240", + "measuredW": "276", + "measuredH": "47", + "w": "276", + "h": "47", + "x": "989", + "y": "721", + "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": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "135", + "measuredW": "133", + "measuredH": "25", + "x": "66", + "y": "14", + "properties": { + "size": "17", + "text": "I/O Management" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2756", + "typeID": "__group__", + "zOrder": "241", + "measuredW": "276", + "measuredH": "69", + "w": "276", + "h": "69", + "x": "989", + "y": "771", + "properties": { + "controlName": "108-os-general-knowledge:posix-basics" + }, + "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", + "w": "115", + "measuredW": "106", + "measuredH": "25", + "x": "78", + "y": "15", + "properties": { + "bold": "true", + "size": "17", + "text": "POSIX Basics" + } + }, + { + "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", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2757", + "typeID": "__group__", + "zOrder": "242", + "measuredW": "276", + "measuredH": "44", + "w": "276", + "h": "44", + "x": "989", + "y": "846", + "properties": { + "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": "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", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "252", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2758", + "typeID": "__group__", + "zOrder": "208", + "measuredW": "380", + "measuredH": "98", + "w": "380", + "h": "98", + "x": "566", + "y": "920", + "properties": { + "controlName": "103-learn-a-language" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "380", + "h": "98", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "149", + "measuredW": "142", + "measuredH": "25", + "x": "115", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Learn a Language" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "347", + "measuredW": "343", + "measuredH": "23", + "x": "16", + "y": "41", + "properties": { + "size": "15", + "text": "Make sure to learn its quirks. Core details about its" + } + }, + { + "ID": "3", + "typeID": "Label", + "zOrder": "3", + "w": "306", + "measuredW": "300", + "measuredH": "23", + "x": "37", + "y": "64", + "properties": { + "size": "15", + "text": "runtime e.g. concurrency, memory model etc." + } + } + ] + } + } + }, + { + "ID": "2759", + "typeID": "__group__", + "zOrder": "204", + "measuredW": "144", + "measuredH": "48", + "w": "144", + "h": "48", + "x": "792", + "y": "819", + "properties": { + "controlName": "100-learn-a-language:go" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "26", + "measuredW": "23", + "measuredH": "25", + "x": "63", + "y": "15", + "properties": { + "size": "17", + "text": "Go" + } + }, + { + "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": "2760", + "typeID": "__group__", + "zOrder": "206", + "measuredW": "144", + "measuredH": "49", + "w": "144", + "h": "49", + "x": "534", + "y": "822", + "properties": { + "controlName": "101-learn-a-language:rust" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "39", + "measuredW": "36", + "measuredH": "25", + "x": "56", + "y": "17", + "properties": { + "size": "17", + "text": "Rust" + } + }, + { + "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": "2761", + "typeID": "__group__", + "zOrder": "205", + "measuredW": "144", + "measuredH": "47", + "w": "144", + "h": "47", + "x": "321", + "y": "914", + "properties": { + "controlName": "102-learn-a-language:java" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "38", + "measuredW": "36", + "measuredH": "25", + "x": "57", + "y": "15", + "properties": { + "size": "17", + "text": "Java" + } + }, + { + "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": "2762", + "typeID": "__group__", + "zOrder": "207", + "measuredW": "144", + "measuredH": "46", + "w": "144", + "h": "46", + "x": "321", + "y": "964", + "properties": { + "controlName": "103-learn-a-language:csharp" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "27", + "measuredW": "24", + "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", + "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": "2763", + "typeID": "__group__", + "zOrder": "209", + "measuredW": "144", + "measuredH": "44", + "w": "144", + "h": "44", + "x": "321", + "y": "1013", + "properties": { + "controlName": "103-learn-a-language:php" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "34", + "measuredW": "34", + "measuredH": "25", + "x": "59", + "y": "12", + "properties": { + "size": "17", + "text": "PHP" + } + }, + { + "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": "2764", + "typeID": "__group__", + "zOrder": "210", + "measuredW": "145", + "measuredH": "47", + "w": "145", + "h": "47", + "x": "1019", + "y": "899", + "properties": { + "controlName": "105-learn-a-language:javascript" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "85", + "measuredW": "81", + "measuredH": "25", + "x": "27", + "y": "15", + "properties": { + "size": "17", + "text": "JavaScript" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "121", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "121", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2765", + "typeID": "__group__", + "zOrder": "211", + "measuredW": "146", + "measuredH": "45", + "w": "146", + "h": "45", + "x": "1019", + "y": "947", + "properties": { + "controlName": "106-learn-a-language:python" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "56", + "measuredW": "53", + "measuredH": "25", + "x": "40", + "y": "13", + "properties": { + "size": "17", + "text": "Python" + } + }, + { + "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", + "measuredW": "24", + "measuredH": "24", + "x": "122", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "122", + "y": "0", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2766", + "typeID": "__group__", + "zOrder": "212", + "measuredW": "146", + "measuredH": "47", + "w": "146", + "h": "47", + "x": "1019", + "y": "991", + "properties": { + "controlName": "107-learn-a-language:ruby" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "136", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "42", + "measuredW": "39", + "measuredH": "25", + "x": "47", + "y": "15", + "properties": { + "size": "17", + "text": "Ruby" + } + }, + { + "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", + "measuredW": "24", + "measuredH": "24", + "x": "122", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "122", + "y": "0", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2767", + "typeID": "Paragraph", + "zOrder": "297", + "measuredW": "275", + "measuredH": "80", + "x": "314", + "y": "702", + "properties": { + "text": "105-learn-a-language:javascript" + } + }, + { + "ID": "2769", + "typeID": "__group__", + "zOrder": "260", + "measuredW": "336", + "measuredH": "77", + "w": "336", + "h": "77", + "x": "464", + "y": "1080", + "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", + "w": "201", + "measuredW": "189", + "measuredH": "25", + "x": "65", + "y": "15", + "properties": { + "bold": "true", + "size": "17", + "text": "Version Control Systems" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "292", + "measuredW": "285", + "measuredH": "23", + "x": "19", + "y": "40", + "properties": { + "size": "15", + "text": "What are they and why you should use one" + } + } + ] + } + } + }, + { + "ID": "2770", + "typeID": "__group__", + "zOrder": "257", + "measuredW": "224", + "measuredH": "62", + "w": "224", + "h": "62", + "x": "202", + "y": "1086", + "properties": { + "controlName": "100-version-control-systems:git" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "216", + "h": "54", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "8", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "155", + "measuredW": "146", + "measuredH": "25", + "x": "39", + "y": "23", + "properties": { + "bold": "true", + "size": "17", + "text": "Basic Usage of Git" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2771", + "typeID": "__group__", + "zOrder": "259", + "measuredW": "319", + "measuredH": "78", + "w": "319", + "h": "78", + "x": "833", + "y": "1079", + "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", + "w": "189", + "measuredW": "171", + "measuredH": "25", + "x": "66", + "y": "15", + "properties": { + "bold": "true", + "size": "17", + "text": "Repo hosting services" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "279", + "measuredW": "275", + "measuredH": "23", + "x": "21", + "y": "41", + "properties": { + "size": "15", + "text": "Create account and Learn to use GitHub" + } + } + ] + } + } + }, + { + "ID": "2772", + "typeID": "__group__", + "zOrder": "258", + "measuredW": "138", + "measuredH": "57", + "w": "138", + "h": "57", + "x": "1178", + "y": "988", + "properties": { + "controlName": "100-repo-hosting-services:github" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "131", + "h": "49", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "8", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "64", + "measuredW": "55", + "measuredH": "25", + "x": "34", + "y": "21", + "properties": { + "bold": "true", + "size": "17", + "text": "GitHub" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "114", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "114", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2773", + "typeID": "__group__", + "zOrder": "262", + "measuredW": "140", + "measuredH": "54", + "w": "140", + "h": "54", + "x": "1178", + "y": "1045", + "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", + "borderColor": "16777215", + "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": "2", + "typeID": "TextArea", + "zOrder": "2", + "w": "131", + "h": "49", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "5", + "properties": { + "backgroundAlpha": "0.25", + "borderColor": "6710886", + "color": "15658734" + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2774", + "typeID": "__group__", + "zOrder": "261", + "measuredW": "140", + "measuredH": "53", + "w": "140", + "h": "53", + "x": "1178", + "y": "1100", + "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", + "borderColor": "16777215", + "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": "2", + "typeID": "TextArea", + "zOrder": "2", + "w": "131", + "h": "48", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "backgroundAlpha": "0.25", + "borderColor": "6710886", + "color": "15658734" + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "116", + "y": "0", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2775", + "typeID": "__group__", + "zOrder": "129", + "measuredW": "229", + "measuredH": "50", + "w": "229", + "h": "50", + "x": "488", + "y": "1201", + "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", + "w": "174", + "measuredW": "167", + "measuredH": "25", + "x": "28", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Relational Databases" + } + } + ] + } + } + }, + { + "ID": "2776", + "typeID": "__group__", + "zOrder": "130", + "measuredW": "199", + "measuredH": "47", + "w": "199", + "h": "47", + "x": "235", + "y": "1185", + "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": "2777", + "typeID": "__group__", + "zOrder": "131", + "measuredW": "199", + "measuredH": "43", + "w": "199", + "h": "43", + "x": "235", + "y": "1235", + "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": "2778", + "typeID": "__group__", + "zOrder": "132", + "measuredW": "199", + "measuredH": "43", + "w": "199", + "h": "43", + "x": "235", + "y": "1280", + "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": "2779", + "typeID": "__group__", + "zOrder": "133", + "measuredW": "199", + "measuredH": "43", + "w": "199", + "h": "43", + "x": "235", + "y": "1326", + "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": "2780", + "typeID": "__group__", + "zOrder": "134", + "measuredW": "199", + "measuredH": "43", + "w": "199", + "h": "43", + "x": "235", + "y": "1372", + "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": "2781", + "typeID": "__group__", + "zOrder": "135", + "measuredW": "191", + "measuredH": "50", + "w": "191", + "h": "50", + "x": "756", + "y": "1187", + "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", + "w": "151", + "measuredW": "144", + "measuredH": "25", + "x": "19", + "y": "12", + "properties": { + "bold": "true", + "size": "17", + "text": "NoSQL Databases" + } + } + ] + } + } + }, + { + "ID": "2782", + "typeID": "__group__", + "zOrder": "136", + "measuredW": "326", + "measuredH": "40", "w": "326", + "h": "40", + "x": "990", + "y": "1182", + "properties": { + "controlName": "100-nosql-databases:document-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": "80", + "measuredH": "25", + "x": "15", + "y": "8", + "properties": { + "bold": "true", + "size": "17", + "text": "Document" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "measuredW": "160", + "measuredH": "25", + "x": "105", + "y": "8", + "properties": { + "bold": "true", + "size": "17", + "text": "{color:blue}MongoDB{color}, CouchDB" + } + } + ] + } + } + }, + { + "ID": "2783", + "typeID": "__group__", + "zOrder": "295", + "measuredW": "326", + "measuredH": "40", + "w": "326", + "h": "40", "x": "990", "y": "1227", - "zOrder": "670" + "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": "97", + "measuredH": "25", + "x": "15", + "y": "8", + "properties": { + "bold": "true", + "size": "17", + "text": "Column DBs" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "measuredW": "84", + "measuredH": "25", + "x": "120", + "y": "8", + "properties": { + "bold": "true", + "size": "17", + "text": "{color:blue}Cassandra{color}" + } + } + ] + } + } }, { - "ID": "1400", - "measuredH": "25", - "measuredW": "98", - "properties": { - "bold": "true", - "size": "17", - "text": "Column DBs" - }, - "typeID": "Label", - "x": "1005", - "y": "1235", - "zOrder": "671" - }, - { - "ID": "1401", - "measuredH": "25", - "measuredW": "87", - "properties": { - "bold": "true", - "size": "17", - "text": "{color:blue}Cassandra{color}" - }, - "typeID": "Label", - "x": "1110", - "y": "1235", - "zOrder": "672" - }, - { - "ID": "1402", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", + "ID": "2784", + "typeID": "__group__", + "zOrder": "296", + "measuredW": "328", + "measuredH": "40", "w": "328", + "h": "40", "x": "989", "y": "1272", - "zOrder": "673" + "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": { + "bold": "true", + "size": "17", + "text": "Time series" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "measuredW": "178", + "measuredH": "25", + "x": "120", + "y": "9", + "properties": { + "bold": "true", + "size": "17", + "text": "{color:blue}InfluxDB{color}, TimescaleDB" + } + } + ] + } + } }, { - "ID": "1403", - "measuredH": "25", - "measuredW": "96", - "properties": { - "bold": "true", - "size": "17", - "text": "Time series" - }, - "typeID": "Label", - "x": "1005", - "y": "1280", - "zOrder": "674" - }, - { - "ID": "1404", - "measuredH": "25", - "measuredW": "183", - "properties": { - "bold": "true", - "size": "17", - "text": "{color:blue}InfluxDB{color}, TimescaleDB" - }, - "typeID": "Label", - "x": "1109", - "y": "1281", - "zOrder": "675" - }, - { - "ID": "1405", - "measuredH": "25", - "measuredW": "157", - "properties": { - "bold": "true", - "size": "17", - "text": "{color:blue}MongoDB{color}, CouchDB" - }, - "typeID": "Label", - "x": "1095", - "y": "1190", - "zOrder": "676" - }, - { - "ID": "1406", - "h": "40", - "measuredH": "140", - "measuredW": "200", - "properties": { - "color": "16770457" - }, - "typeID": "TextArea", + "ID": "2785", + "typeID": "__group__", + "zOrder": "137", + "measuredW": "328", + "measuredH": "42", "w": "328", + "h": "42", "x": "989", - "y": "1317", - "zOrder": "677" + "y": "1315", + "properties": { + "controlName": "103-nosql-databases:realtime-databases" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Icon", + "zOrder": "0", + "measuredW": "24", + "measuredH": "24", + "x": "232", + "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": "70", + "measuredH": "25", + "x": "16", + "y": "10", + "properties": { + "bold": "true", + "size": "17", + "text": "Realtime" + } + }, + { + "ID": "3", + "typeID": "Label", + "zOrder": "3", + "measuredW": "160", + "measuredH": "25", + "x": "99", + "y": "10", + "properties": { + "bold": "true", + "size": "17", + "text": "{color:blue}Firebase{color}, RethinkDB" + } + } + ] + } + } }, { - "ID": "1407", - "measuredH": "25", - "measuredW": "73", + "ID": "2786", + "typeID": "__group__", + "zOrder": "139", + "measuredW": "238", + "measuredH": "50", + "w": "238", + "h": "50", + "x": "762", + "y": "1432", "properties": { - "bold": "true", - "size": "17", - "text": "Realtime" + "controlName": "108-more-about-databases" }, - "typeID": "Label", - "x": "1005", - "y": "1325", - "zOrder": "678" + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "238", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "186", + "measuredW": "178", + "measuredH": "25", + "x": "30", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "More about Databases" + } + } + ] + } + } }, { - "ID": "1408", - "measuredH": "25", - "measuredW": "162", + "ID": "2787", + "typeID": "__group__", + "zOrder": "263", + "measuredW": "178", + "measuredH": "48", + "w": "178", + "h": "48", + "x": "521", + "y": "1274", "properties": { - "bold": "true", - "size": "17", - "text": "{color:blue}Firebase{color}, RethinkDB" + "controlName": "100-more-about-databases:orms" }, - "typeID": "Label", - "x": "1088", - "y": "1325", - "zOrder": "679" + "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" + } + } + } + ] + } + } + }, + { + "ID": "2788", + "typeID": "__group__", + "zOrder": "138", + "measuredW": "178", + "measuredH": "44", + "w": "178", + "h": "44", + "x": "521", + "y": "1322", + "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" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "43", + "measuredW": "40", + "measuredH": "25", + "x": "71", + "y": "12", + "properties": { + "size": "17", + "text": "ACID" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2789", + "typeID": "__group__", + "zOrder": "140", + "measuredW": "178", + "measuredH": "45", + "w": "178", + "h": "45", + "x": "521", + "y": "1365", + "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" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "105", + "measuredW": "99", + "measuredH": "25", + "x": "47", + "y": "12", + "properties": { + "size": "17", + "text": "Transactions" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2790", + "typeID": "__group__", + "zOrder": "141", + "measuredW": "178", + "measuredH": "43", + "w": "178", + "h": "43", + "x": "521", + "y": "1411", + "properties": { + "controlName": "103-more-about-databases:n-plus-one-problem" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "171", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "3", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "99", + "measuredH": "25", + "x": "46", + "y": "11", + "properties": { + "text": "N+1 Problem", + "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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2791", + "typeID": "__group__", + "zOrder": "143", + "measuredW": "272", + "measuredH": "49", + "w": "272", + "h": "49", + "x": "429", + "y": "1451", + "properties": { + "controlName": "104-more-about-databases:database-normalization" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "266", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "188", + "measuredW": "185", + "measuredH": "25", + "x": "53", + "y": "17", + "properties": { + "size": "17", + "text": "Database Normalization" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2792", + "typeID": "__group__", + "zOrder": "145", + "measuredW": "268", + "measuredH": "40", + "w": "268", + "h": "40", + "x": "434", + "y": "1506", + "properties": { + "controlName": "105-more-about-databases:database-indexes" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "268", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "214", + "measuredW": "205", + "measuredH": "25", + "x": "32", + "y": "8", + "properties": { + "size": "17", + "text": "Indexes and how they work" + } + } + ] + } + } + }, + { + "ID": "2793", + "typeID": "__group__", + "zOrder": "144", + "measuredW": "215", + "measuredH": "49", + "w": "215", + "h": "49", + "x": "1080", + "y": "1371", + "properties": { + "controlName": "106-more-about-databases:data-replication" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "207", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "129", + "measuredW": "128", + "measuredH": "25", + "x": "42", + "y": "16", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2794", + "typeID": "__group__", + "zOrder": "142", + "measuredW": "215", + "measuredH": "44", + "w": "215", + "h": "44", + "x": "1080", + "y": "1421", + "properties": { + "controlName": "107-more-about-databases:sharding-strategies" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "206", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "155", + "measuredW": "151", + "measuredH": "25", + "x": "27", + "y": "11", + "properties": { + "size": "17", + "text": "Sharding Strategies" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2795", + "typeID": "__group__", + "zOrder": "152", + "measuredW": "214", + "measuredH": "45", + "w": "214", + "h": "45", + "x": "1081", + "y": "1466", + "properties": { + "controlName": "108-more-about-databases:cap-theorem" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "206", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "109", + "measuredW": "107", + "measuredH": "25", + "x": "48", + "y": "12", + "properties": { + "size": "17", + "text": "CAP Theorem" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "190", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "190", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2796", + "typeID": "__group__", + "zOrder": "146", + "measuredW": "238", + "measuredH": "50", + "w": "238", + "h": "50", + "x": "776", + "y": "1592", + "properties": { + "controlName": "109-apis" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "238", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "143", + "measuredW": "135", + "measuredH": "25", + "x": "47", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Learn about APIs" + } + } + ] + } + } + }, + { + "ID": "2797", + "typeID": "__group__", + "zOrder": "147", + "measuredW": "196", + "measuredH": "71", + "w": "196", + "h": "71", + "x": "1085", + "y": "1511", + "properties": { + "controlName": "100-apis:rest" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "188", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "49", + "measuredW": "44", + "measuredH": "25", + "x": "70", + "y": "17", + "properties": { + "size": "17", + "text": "REST" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "179", + "measuredW": "167", + "measuredH": "22", + "x": "7", + "y": "49", + "properties": { + "size": "14", + "text": "Read Roy Fielding’s Paper" + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "172", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "172", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2798", + "typeID": "__group__", + "zOrder": "148", + "measuredW": "197", + "measuredH": "47", + "w": "197", + "h": "47", + "x": "1085", + "y": "1577", + "properties": { + "controlName": "101-apis:json-apis" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "188", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "90", + "measuredW": "85", + "measuredH": "25", + "x": "49", + "y": "15", + "properties": { + "size": "17", + "text": "JSON APIs" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2799", + "typeID": "__group__", + "zOrder": "149", + "measuredW": "197", + "measuredH": "45", + "w": "197", + "h": "45", + "x": "1085", + "y": "1625", + "properties": { + "controlName": "102-apis:soap" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "188", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "49", + "measuredW": "44", + "measuredH": "25", + "x": "69", + "y": "13", + "properties": { + "size": "17", + "text": "SOAP" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2800", + "typeID": "__group__", + "zOrder": "294", + "measuredW": "197", + "measuredH": "47", + "w": "197", + "h": "47", + "x": "1086", + "y": "1667", + "properties": { + "controlName": "103-apis:grpc" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "188", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "90", + "measuredW": "45", + "measuredH": "25", + "x": "49", + "y": "15", + "properties": { + "align": "center", + "size": "17", + "text": "gRPC" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "173", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2801", + "typeID": "__group__", + "zOrder": "150", + "measuredW": "274", + "measuredH": "48", + "w": "274", + "h": "48", + "x": "428", + "y": "1562", + "properties": { + "controlName": "104-apis:hateoas" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "268", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "78", + "measuredW": "76", + "measuredH": "25", + "x": "101", + "y": "16", + "properties": { + "size": "17", + "text": "HATEOAS" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2802", + "typeID": "__group__", + "zOrder": "151", + "measuredW": "274", + "measuredH": "46", + "w": "274", + "h": "46", + "x": "428", + "y": "1610", + "properties": { + "controlName": "105-apis:open-api-spec" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "268", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "230", + "measuredW": "222", + "measuredH": "25", + "x": "28", + "y": "13", + "properties": { + "size": "17", + "text": "Open API Spec and Swagger" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2803", + "typeID": "__group__", + "zOrder": "153", + "measuredW": "273", + "measuredH": "46", + "w": "273", + "h": "46", + "x": "429", + "y": "1657", + "properties": { + "controlName": "106-apis:authentication" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "268", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "5", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "111", + "measuredW": "111", + "measuredH": "25", + "x": "83", + "y": "14", + "properties": { + "size": "17", + "text": "Authentication" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2804", + "typeID": "__group__", + "zOrder": "167", + "measuredW": "229", + "measuredH": "38", + "w": "229", + "h": "38", + "x": "171", + "y": "1480", + "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" + } + }, + { + "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": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2805", + "typeID": "__group__", + "zOrder": "90", + "measuredW": "230", + "measuredH": "36", + "w": "230", + "h": "36", + "x": "170", + "y": "1520", + "properties": { + "controlName": "101-apis:authentication:oauth" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "223", + "measuredW": "64", + "measuredH": "32", + "x": "7", + "y": "4", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "OAuth" + } + }, + { + "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": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2806", + "typeID": "__group__", + "zOrder": "91", + "measuredW": "230", + "measuredH": "36", + "w": "230", + "h": "36", + "x": "170", + "y": "1556", + "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", + "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": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2807", + "typeID": "__group__", + "zOrder": "92", + "measuredW": "230", + "measuredH": "35", + "w": "230", + "h": "35", + "x": "170", + "y": "1593", + "properties": { + "controlName": "103-apis:authentication:token-authentication" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "223", + "measuredW": "185", + "measuredH": "32", + "x": "7", + "y": "3", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "Token Authentication" + } + }, + { + "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": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2808", + "typeID": "__group__", + "zOrder": "93", + "measuredW": "230", + "measuredH": "36", + "w": "230", + "h": "36", + "x": "170", + "y": "1629", + "properties": { + "controlName": "104-apis:authentication:jwt" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "223", + "measuredW": "51", + "measuredH": "32", + "x": "7", + "y": "4", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "JWT" + } + }, + { + "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": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2809", + "typeID": "__group__", + "zOrder": "94", + "measuredW": "230", + "measuredH": "37", + "w": "230", + "h": "37", + "x": "171", + "y": "1664", + "properties": { + "controlName": "105-apis:authentication:openid" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "223", + "measuredW": "78", + "measuredH": "32", + "x": "7", + "y": "5", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "OpenID" + } + }, + { + "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": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2810", + "typeID": "__group__", + "zOrder": "95", + "measuredW": "230", + "measuredH": "36", + "w": "230", + "h": "36", + "x": "171", + "y": "1702", + "properties": { + "controlName": "105-apis:authentication:saml" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "223", + "measuredW": "62", + "measuredH": "32", + "x": "7", + "y": "4", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "SAML" + } + }, + { + "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": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2811", + "typeID": "__group__", + "zOrder": "101", + "measuredW": "159", + "measuredH": "50", + "w": "159", + "h": "50", + "x": "502", + "y": "1809", + "properties": { + "controlName": "110-caching" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "159", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "70", + "measuredW": "64", + "measuredH": "25", + "x": "43", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Caching" + } + } + ] + } + } + }, + { + "ID": "2812", + "typeID": "__group__", + "zOrder": "106", + "measuredW": "138", + "measuredH": "46", + "w": "138", + "h": "46", + "x": "333", + "y": "1763", + "properties": { + "controlName": "100-caching:cdn" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "129", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "9", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "40", + "measuredW": "38", + "measuredH": "25", + "x": "54", + "y": "16", + "properties": { + "size": "17", + "text": "CDN" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2813", + "typeID": "__group__", + "zOrder": "104", + "measuredW": "129", + "measuredH": "40", + "w": "129", + "h": "40", + "x": "341", + "y": "1814", + "properties": { + "controlName": "101-caching:server-side" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "129", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "95", + "measuredW": "90", + "measuredH": "25", + "x": "19", + "y": "8", + "properties": { + "size": "17", + "text": "Server Side" + } + } + ] + } + } + }, + { + "ID": "2814", + "typeID": "__group__", + "zOrder": "102", + "measuredW": "153", + "measuredH": "48", + "w": "153", + "h": "48", + "x": "136", + "y": "1782", + "properties": { + "controlName": "100-caching:server-side:redis" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "9", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "46", + "measuredW": "45", + "measuredH": "25", + "x": "58", + "y": "16", + "properties": { + "size": "17", + "text": "Redis" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2815", + "typeID": "__group__", + "zOrder": "103", + "measuredW": "151", + "measuredH": "45", + "w": "151", + "h": "45", + "x": "138", + "y": "1831", + "properties": { + "controlName": "101-caching:server-side:memcached" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "96", + "measuredW": "96", + "measuredH": "25", + "x": "35", + "y": "13", + "properties": { + "size": "17", + "text": "Memcached" + } + }, + { + "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": "2816", + "typeID": "__group__", + "zOrder": "105", + "measuredW": "135", + "measuredH": "44", + "w": "135", + "h": "44", + "x": "334", + "y": "1855", + "properties": { + "controlName": "102-caching:client-side" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "128", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "88", + "measuredW": "84", + "measuredH": "25", + "x": "28", + "y": "12", + "properties": { + "size": "17", + "text": "Client Side" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2820", + "typeID": "__group__", + "zOrder": "155", + "measuredW": "240", + "measuredH": "54", + "w": "240", + "h": "54", + "x": "739", + "y": "1808", + "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", + "w": "203", + "measuredW": "192", + "measuredH": "25", + "x": "23", + "y": "15", + "properties": { + "bold": "true", + "size": "17", + "text": "Web Security Knowledge" + } + } + ] + } + } + }, + { + "ID": "2821", + "typeID": "__group__", + "zOrder": "162", + "measuredW": "239", + "measuredH": "40", + "w": "239", + "h": "40", + "x": "1033", + "y": "1727", + "properties": { + "controlName": "100-web-security-knowledge:md5" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "239", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "203", + "measuredW": "197", + "measuredH": "25", + "x": "20", + "y": "8", + "properties": { + "size": "17", + "text": "MD5 and why not to use it" + } + } + ] + } + } + }, + { + "ID": "2822", + "typeID": "__group__", + "zOrder": "163", + "measuredW": "237", + "measuredH": "40", + "w": "237", + "h": "40", + "x": "1034", + "y": "1772", + "properties": { + "controlName": "101-web-security-knowledge:sha-family" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "237", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "93", + "measuredW": "87", + "measuredH": "25", + "x": "72", + "y": "7", + "properties": { + "size": "17", + "text": "SHA Family" + } + } + ] + } + } + }, + { + "ID": "2823", + "typeID": "__group__", + "zOrder": "165", + "measuredW": "111", + "measuredH": "40", + "w": "111", + "h": "40", + "x": "1161", + "y": "1818", + "properties": { + "controlName": "102-web-security-knowledge:bcrypt" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "111", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "53", + "measuredW": "48", + "measuredH": "25", + "x": "35", + "y": "7", + "properties": { + "size": "17", + "text": "bcrypt" + } + } + ] + } + } + }, + { + "ID": "2824", + "typeID": "__group__", + "zOrder": "164", + "measuredW": "119", + "measuredH": "40", + "w": "119", + "h": "40", + "x": "1035", + "y": "1818", + "properties": { + "controlName": "104-web-security-knowledge:scrypt" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "119", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "62", + "measuredW": "47", + "measuredH": "25", + "x": "38", + "y": "7", + "properties": { + "size": "17", + "text": "scrypt" + } + } + ] + } + } + }, + { + "ID": "2825", + "typeID": "__group__", + "zOrder": "158", + "measuredW": "166", + "measuredH": "43", + "w": "166", + "h": "43", + "x": "848", + "y": "1929", + "properties": { + "controlName": "105-web-security-knowledge:https" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "166", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "63", + "measuredW": "53", + "measuredH": "25", + "x": "51", + "y": "10", + "properties": { + "bold": "true", + "size": "17", + "text": "HTTPS" + } + } + ] + } + } + }, + { + "ID": "2826", + "typeID": "__group__", + "zOrder": "159", + "measuredW": "257", + "measuredH": "44", + "w": "257", + "h": "44", + "x": "1019", + "y": "1929", + "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", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "196", + "measuredW": "179", + "measuredH": "25", + "x": "31", + "y": "10", + "properties": { + "bold": "true", + "size": "17", + "text": "Content Security Policy" + } + } + ] + } + } + }, + { + "ID": "2827", + "typeID": "__group__", + "zOrder": "157", + "measuredW": "163", + "measuredH": "42", + "w": "163", + "h": "42", + "x": "849", + "y": "1979", + "properties": { + "controlName": "106-web-security-knowledge:cors" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "163", + "h": "42", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "51", + "measuredW": "47", + "measuredH": "25", + "x": "56", + "y": "9", + "properties": { + "bold": "true", + "size": "17", + "text": "CORS" + } + } + ] + } + } + }, + { + "ID": "2828", + "typeID": "__group__", + "zOrder": "168", + "measuredW": "258", + "measuredH": "43", + "w": "258", + "h": "43", + "x": "1018", + "y": "1979", + "properties": { + "controlName": "107-web-security-knowledge:ssl-tls" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "258", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "75", + "measuredW": "69", + "measuredH": "25", + "x": "91", + "y": "9", + "properties": { + "bold": "true", + "size": "17", + "text": "SSL/TLS" + } + } + ] + } + } + }, + { + "ID": "2829", + "typeID": "__group__", + "zOrder": "160", + "measuredW": "427", + "measuredH": "43", + "w": "427", + "h": "43", + "x": "848", + "y": "2027", + "properties": { + "controlName": "108-web-security-knowledge:owasp" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "427", + "h": "43", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "187", + "measuredW": "172", + "measuredH": "25", + "x": "120", + "y": "10", + "properties": { + "bold": "true", + "size": "17", + "text": "OWASP Security Risks" + } + } + ] + } + } + }, + { + "ID": "2830", + "typeID": "__group__", + "zOrder": "169", + "measuredW": "159", + "measuredH": "50", + "w": "159", + "h": "50", + "x": "527", + "y": "1945", + "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", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "63", + "measuredW": "55", + "measuredH": "25", + "x": "48", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Testing" + } + } + ] + } + } + }, + { + "ID": "2831", + "typeID": "__group__", + "zOrder": "170", + "measuredW": "199", + "measuredH": "49", + "w": "199", + "h": "49", + "x": "272", + "y": "1905", + "properties": { + "controlName": "100-testing:integration-testing" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "192", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "150", + "measuredW": "144", + "measuredH": "25", + "x": "28", + "y": "17", + "properties": { + "size": "17", + "text": "Integration 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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2832", + "typeID": "__group__", + "zOrder": "171", + "measuredW": "199", + "measuredH": "44", + "w": "199", + "h": "44", + "x": "272", + "y": "1954", + "properties": { + "controlName": "101-testing:unit-testing" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "193", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "7", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "99", + "measuredW": "91", + "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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2833", + "typeID": "__group__", + "zOrder": "172", + "measuredW": "199", + "measuredH": "43", + "w": "199", + "h": "43", + "x": "272", + "y": "1996", + "properties": { + "controlName": "102-testing:functional-testing" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "193", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "151", + "measuredW": "140", + "measuredH": "25", + "x": "27", + "y": "13", + "properties": { + "size": "17", + "text": "Functional 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", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2834", + "typeID": "__group__", + "zOrder": "264", + "measuredW": "148", + "measuredH": "57", + "w": "148", + "h": "57", + "x": "525", + "y": "2022", + "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": "60", + "measuredH": "25", + "x": "47", + "y": "20", + "properties": { + "bold": "true", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2835", + "typeID": "__group__", + "zOrder": "265", + "measuredW": "324", + "measuredH": "50", + "w": "324", + "h": "50", + "x": "501", + "y": "2113", + "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", + "w": "292", + "measuredW": "276", + "measuredH": "25", + "x": "24", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Design and Development Principles" + } + } + ] + } + } + }, + { + "ID": "2836", + "typeID": "__group__", + "zOrder": "270", + "measuredW": "268", + "measuredH": "46", + "w": "268", + "h": "46", + "x": "148", + "y": "2061", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2837", + "typeID": "__group__", + "zOrder": "271", + "measuredW": "268", + "measuredH": "45", + "w": "268", + "h": "45", + "x": "148", + "y": "2107", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2838", + "typeID": "__group__", + "zOrder": "272", + "measuredW": "268", + "measuredH": "43", + "w": "268", + "h": "43", + "x": "148", + "y": "2154", + "properties": { + "controlName": "102-design-and-development-principles:test-driven-development" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "260", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "3", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "196", + "measuredW": "194", + "measuredH": "25", + "x": "40", + "y": "10", + "properties": { + "size": "17", + "text": "Test Driven Development" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2839", + "typeID": "__group__", + "zOrder": "266", + "measuredW": "268", + "measuredH": "40", + "w": "268", + "h": "40", + "x": "148", + "y": "2200", + "properties": { + "controlName": "103-design-and-development-principles:solid" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "261", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "3", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "55", + "measuredW": "51", + "measuredH": "25", + "x": "110", + "y": "10", + "properties": { + "size": "17", + "text": "SOLID" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2840", + "typeID": "__group__", + "zOrder": "267", + "measuredW": "269", + "measuredH": "39", + "w": "269", + "h": "39", + "x": "147", + "y": "2243", + "properties": { + "controlName": "104-design-and-development-principles:kiss" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "261", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "2", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "44", + "measuredW": "37", + "measuredH": "25", + "x": "117", + "y": "9", + "properties": { + "size": "17", + "text": "KISS" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2841", + "typeID": "__group__", + "zOrder": "268", + "measuredW": "269", + "measuredH": "41", + "w": "269", + "h": "41", + "x": "147", + "y": "2285", + "properties": { + "controlName": "105-design-and-development-principles:yagni" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "260", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "9", + "y": "1", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "53", + "measuredW": "50", + "measuredH": "25", + "x": "112", + "y": "9", + "properties": { + "size": "17", + "text": "YAGNI" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2842", + "typeID": "__group__", + "zOrder": "269", + "measuredW": "267", + "measuredH": "42", + "w": "267", + "h": "42", + "x": "149", + "y": "2328", + "properties": { + "controlName": "106-design-and-development-principles:dry" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "260", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "2", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "38", + "measuredW": "35", + "measuredH": "25", + "x": "118", + "y": "10", + "properties": { + "size": "17", + "text": "DRY" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2843", + "typeID": "__group__", + "zOrder": "35", + "measuredW": "317", + "measuredH": "50", + "w": "317", + "h": "50", + "x": "887", + "y": "2111", + "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", + "w": "183", + "measuredW": "170", + "measuredH": "25", + "x": "67", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Architectural Patterns" + } + } + ] + } + } + }, + { + "ID": "2844", + "typeID": "__group__", + "zOrder": "36", + "measuredW": "253", + "measuredH": "48", + "w": "253", + "h": "48", + "x": "958", + "y": "2171", + "properties": { + "controlName": "100-architectural-patterns:monolithic-apps" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "243", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "123", + "measuredW": "123", + "measuredH": "25", + "x": "60", + "y": "16", + "properties": { + "size": "17", + "text": "Monolithic Apps" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2845", + "typeID": "__group__", + "zOrder": "37", + "measuredW": "253", + "measuredH": "41", + "w": "253", + "h": "41", + "x": "958", + "y": "2220", + "properties": { + "controlName": "101-architectural-patterns:microservices" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "244", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "112", + "measuredW": "108", + "measuredH": "25", + "x": "66", + "y": "11", + "properties": { + "size": "17", + "text": "Microservices" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2846", + "typeID": "__group__", + "zOrder": "44", + "measuredW": "253", + "measuredH": "41", + "w": "253", + "h": "41", + "x": "958", + "y": "2261", + "properties": { + "controlName": "102-architectural-patterns:soa" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "244", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "38", + "measuredW": "34", + "measuredH": "25", + "x": "103", + "y": "11", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2847", + "typeID": "__group__", + "zOrder": "38", + "measuredW": "256", + "measuredH": "40", + "w": "256", + "h": "40", + "x": "957", + "y": "2303", + "properties": { + "controlName": "103-architectural-patterns:cqrs" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "245", + "h": "37", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "3", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "209", + "measuredW": "202", + "measuredH": "25", + "x": "18", + "y": "9", + "properties": { + "size": "17", + "text": "CQRS and Event Sourcing" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "232", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "232", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2848", + "typeID": "__group__", + "zOrder": "273", + "measuredW": "254", + "measuredH": "40", + "w": "254", + "h": "40", + "x": "957", + "y": "2344", + "properties": { + "controlName": "104-architectural-patterns:serverless" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "245", + "h": "37", + "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", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2849", + "typeID": "__group__", + "zOrder": "41", + "measuredW": "313", + "measuredH": "50", + "w": "313", + "h": "50", + "x": "512", + "y": "2210", + "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": { + "bold": "true", + "size": "17", + "text": "Search Engines" + } + } + ] + } + } + }, + { + "ID": "2850", + "typeID": "__group__", + "zOrder": "42", + "measuredW": "167", + "measuredH": "46", + "w": "167", + "h": "46", + "x": "507", + "y": "2284", + "properties": { + "controlName": "100-search-engines:elasticsearch" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "160", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "106", + "measuredW": "104", + "measuredH": "25", + "x": "39", + "y": "14", + "properties": { + "size": "17", + "text": "Elasticsearch" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2851", + "typeID": "__group__", + "zOrder": "43", + "measuredW": "164", + "measuredH": "45", + "w": "164", + "h": "45", + "x": "507", + "y": "2329", + "properties": { + "controlName": "101-search-engines:solr" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "157", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "5", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "36", + "measuredW": "30", + "measuredH": "25", + "x": "68", + "y": "13", + "properties": { + "size": "17", + "text": "Solr" + } + }, + { + "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": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2852", + "typeID": "__group__", + "zOrder": "64", + "measuredW": "230", + "measuredH": "60", + "w": "230", + "h": "60", + "x": "701", + "y": "2403", + "properties": { + "controlName": "117-message-brokers" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "221", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "10", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "141", + "measuredW": "137", + "measuredH": "25", + "x": "40", + "y": "22", + "properties": { + "bold": "true", + "size": "17", + "text": "Message Brokers" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "206", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "206", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2853", + "typeID": "__group__", + "zOrder": "62", + "measuredW": "192", + "measuredH": "42", + "w": "192", + "h": "42", + "x": "1006", + "y": "2393", + "properties": { + "controlName": "100-message-brokers:rabbitmq" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "183", + "measuredW": "97", + "measuredH": "32", + "x": "0", + "y": "10", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "RabbitMQ" + } + }, + { + "ID": "1", + "typeID": "Icon", + "zOrder": "1", + "measuredW": "24", + "measuredH": "24", + "x": "168", + "y": "1", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "168", + "y": "1", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "145", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "145", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2854", + "typeID": "__group__", + "zOrder": "63", + "measuredW": "193", + "measuredH": "37", + "w": "193", + "h": "37", + "x": "1006", + "y": "2434", + "properties": { + "controlName": "101-message-brokers:kafka" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextInput", + "zOrder": "0", + "w": "183", + "measuredW": "60", + "measuredH": "32", + "x": "0", + "y": "5", + "properties": { + "align": "center", + "color": "16770457", + "size": "18", + "text": "Kafka" + } + }, + { + "ID": "1", + "typeID": "Icon", + "zOrder": "1", + "measuredW": "24", + "measuredH": "24", + "x": "169", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "169", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "169", + "y": "0", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2855", + "typeID": "__group__", + "zOrder": "65", + "measuredW": "294", + "measuredH": "50", + "w": "294", + "h": "50", + "x": "383", + "y": "2470", + "properties": { + "controlName": "118-containerization" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "294", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "270", + "measuredW": "255", + "measuredH": "25", + "x": "13", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Containerization vs Virtualization" + } + } + ] + } + } + }, + { + "ID": "2856", + "typeID": "__group__", + "zOrder": "71", + "measuredW": "152", + "measuredH": "46", + "w": "152", + "h": "46", + "x": "162", + "y": "2430", + "properties": { + "controlName": "100-containerization:docker" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "6", + "properties": { + "color": "16770457" + } + }, + { + "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", + "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" + } + } + } + ] + } + } + }, + { + "ID": "2857", + "typeID": "__group__", + "zOrder": "72", + "measuredW": "144", + "measuredH": "40", + "w": "144", + "h": "40", + "x": "170", + "y": "2482", + "properties": { + "controlName": "101-containerization:rkt" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "borderColor": "6710886", + "color": "15658734", + "textColor": "6710886" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "24", + "measuredW": "20", + "measuredH": "25", + "x": "60", + "y": "8", + "properties": { + "color": "3355443", + "size": "17", + "text": "rkt" + } + } + ] + } + } + }, + { + "ID": "2858", + "typeID": "__group__", + "zOrder": "73", + "measuredW": "144", + "measuredH": "40", + "w": "144", + "h": "40", + "x": "170", + "y": "2527", + "properties": { + "controlName": "102-containerization:lxc" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "borderColor": "6710886", + "color": "14540253", + "textColor": "6710886" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "37", + "measuredW": "32", + "measuredH": "25", + "x": "53", + "y": "8", + "properties": { + "color": "3355443", + "size": "17", + "text": "LXC" + } + } + ] + } + } + }, + { + "ID": "2859", + "typeID": "__group__", + "zOrder": "74", + "measuredW": "173", + "measuredH": "58", + "w": "173", + "h": "58", + "x": "695", + "y": "2527", + "properties": { + "controlName": "119-graphql" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "163", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "8", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "79", + "measuredW": "71", + "measuredH": "25", + "x": "42", + "y": "21", + "properties": { + "bold": "true", + "size": "17", + "text": "GraphQL" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "149", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "149", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2860", + "typeID": "__group__", + "zOrder": "75", + "measuredW": "155", + "measuredH": "48", + "w": "155", + "h": "48", + "x": "957", + "y": "2510", + "properties": { + "controlName": "100-graphql:apollo" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "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", + "measuredW": "24", + "measuredH": "24", + "x": "131", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "131", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + }, + { + "ID": "4", + "typeID": "Icon", + "zOrder": "4", + "measuredW": "24", + "measuredH": "24", + "x": "105", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "105", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2861", + "typeID": "__group__", + "zOrder": "76", + "measuredW": "153", + "measuredH": "44", + "w": "153", + "h": "44", + "x": "957", + "y": "2560", + "properties": { + "controlName": "101-graphql:relay-modern" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "108", + "measuredW": "107", + "measuredH": "25", + "x": "18", + "y": "12", + "properties": { + "size": "17", + "text": "Relay Modern" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "129", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "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", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2862", + "typeID": "__group__", + "zOrder": "77", + "measuredW": "191", + "measuredH": "62", + "w": "191", + "h": "62", + "x": "447", + "y": "2585", + "properties": { + "controlName": "120-graph-databases" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "184", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "7", + "y": "12", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "143", + "measuredW": "136", + "measuredH": "25", + "x": "27", + "y": "25", + "properties": { + "bold": "true", + "size": "17", + "text": "Graph Databases" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2863", + "typeID": "__group__", + "zOrder": "47", + "measuredW": "150", + "measuredH": "48", + "w": "150", + "h": "48", + "x": "253", + "y": "2595", + "properties": { + "controlName": "100-graph-databases:neo4j" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "6", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "51", + "measuredW": "47", + "measuredH": "25", + "x": "52", + "y": "16", + "properties": { + "size": "17", + "text": "Neo4j" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2864", + "typeID": "__group__", + "zOrder": "78", + "measuredW": "167", + "measuredH": "58", + "w": "167", + "h": "58", + "x": "541", + "y": "2710", + "properties": { + "controlName": "121-web-sockets" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "159", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "8", + "y": "8", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "104", + "measuredW": "97", + "measuredH": "25", + "x": "36", + "y": "21", + "properties": { + "bold": "true", + "size": "17", + "text": "WebSockets" + } + }, + { + "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" + } + } + } + ] + } + } + }, + { + "ID": "2865", + "typeID": "__group__", + "zOrder": "66", + "measuredW": "170", + "measuredH": "62", + "w": "170", + "h": "62", + "x": "750", + "y": "2704", + "properties": { + "controlName": "122-web-servers" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "163", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "12", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "108", + "measuredW": "99", + "measuredH": "25", + "x": "34", + "y": "25", + "properties": { + "bold": "true", + "size": "17", + "text": "Web Servers" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "146", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "146", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2866", + "typeID": "__group__", + "zOrder": "67", + "measuredW": "152", + "measuredH": "49", + "w": "152", + "h": "49", + "x": "1053", + "y": "2666", + "properties": { + "controlName": "100-web-servers:nginx" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "46", + "measuredW": "45", + "measuredH": "25", + "x": "49", + "y": "17", + "properties": { + "size": "17", + "text": "Nginx" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "128", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "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", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "102", + "y": "0", + "properties": { + "color": "10066329", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2867", + "typeID": "__group__", + "zOrder": "68", + "measuredW": "152", + "measuredH": "44", + "w": "152", + "h": "44", + "x": "1053", + "y": "2717", + "properties": { + "controlName": "101-web-servers:apache" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "144", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "60", + "measuredW": "59", + "measuredH": "25", + "x": "42", + "y": "12", + "properties": { + "size": "17", + "text": "Apache" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "128", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "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", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2868", + "typeID": "__group__", + "zOrder": "69", + "measuredW": "152", + "measuredH": "44", + "w": "152", + "h": "44", + "x": "1053", + "y": "2762", + "properties": { + "controlName": "102-web-servers:caddy" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "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", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "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", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2870", + "typeID": "__group__", + "zOrder": "70", + "measuredW": "152", + "measuredH": "44", + "w": "152", + "h": "44", + "x": "1053", + "y": "2806", + "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": "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", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "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", + "properties": { + "color": "3700253", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2871", + "typeID": "__group__", + "zOrder": "274", + "measuredW": "328", + "measuredH": "138", + "w": "328", + "h": "138", + "x": "561", + "y": "2824", + "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" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "147", + "measuredW": "139", + "measuredH": "25", + "x": "95", + "y": "25", + "properties": { + "bold": "true", + "size": "17", + "text": "Building for Scale" + } + }, + { + "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", + "properties": { + "size": "16", + "text": "of the product." + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "0", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "6", + "typeID": "Icon", + "zOrder": "6", + "measuredW": "24", + "measuredH": "24", + "x": "0", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2873", + "typeID": "__group__", + "zOrder": "275", + "measuredW": "210", + "measuredH": "48", + "w": "210", + "h": "48", + "x": "315", + "y": "2750", + "properties": { + "controlName": "100-scalability:mitigation-strategies" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "199", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "8", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "159", + "measuredW": "159", + "measuredH": "25", + "x": "20", + "y": "15", + "properties": { + "size": "17", + "text": "Mitigation Strategies" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "186", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "186", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2874", + "typeID": "__group__", + "zOrder": "276", + "measuredW": "198", + "measuredH": "36", + "w": "198", + "h": "36", + "x": "316", + "y": "2895", + "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": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "155", + "measuredW": "154", + "measuredH": "25", + "x": "22", + "y": "6", + "properties": { + "size": "17", + "text": "Understand the Diff." + } + } + ] + } + } + }, + { + "ID": "2875", + "typeID": "__group__", + "zOrder": "285", + "measuredW": "342", + "measuredH": "49", + "w": "342", + "h": "49", + "x": "938", + "y": "2859", + "properties": { + "controlName": "102-scalability:migration-strategies" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "333", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "9", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "155", + "measuredH": "25", + "x": "93", + "y": "16", + "properties": { + "text": "Migration Strategies", + "size": "17" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "318", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "318", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2876", + "typeID": "__group__", + "zOrder": "286", + "measuredW": "341", + "measuredH": "42", + "w": "341", + "h": "42", + "x": "939", + "y": "2912", + "properties": { + "controlName": "103-scalability:horizontal-vertial-scaling" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "332", + "h": "40", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "2", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "230", + "measuredW": "221", + "measuredH": "25", + "x": "54", + "y": "9", + "properties": { + "size": "17", + "text": "Horizontal vs Vertical Scaling" + } + }, + { + "ID": "2", + "typeID": "Icon", + "zOrder": "2", + "measuredW": "24", + "measuredH": "24", + "x": "317", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "3", + "typeID": "Icon", + "zOrder": "3", + "measuredW": "24", + "measuredH": "24", + "x": "317", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2877", + "typeID": "__group__", + "zOrder": "20", + "measuredW": "342", + "measuredH": "127", + "w": "342", + "h": "127", + "x": "938", + "y": "2958", + "properties": { + "controlName": "104-scalability:observability" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "335", + "h": "123", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "4", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "w": "281", + "measuredW": "264", + "measuredH": "25", + "x": "30", + "y": "16", + "properties": { + "bold": "true", + "size": "17", + "text": "Building with Observability in mind" + } + }, + { + "ID": "2", + "typeID": "Label", + "zOrder": "2", + "w": "299", + "measuredW": "294", + "measuredH": "23", + "x": "19", + "y": "44", + "properties": { + "size": "15", + "text": "Metrics logging and other observable items" + } + }, + { + "ID": "3", + "typeID": "Label", + "zOrder": "3", + "w": "305", + "measuredW": "300", + "measuredH": "23", + "x": "16", + "y": "67", + "properties": { + "size": "15", + "text": "that could help you in debugging and solving" + } + }, + { + "ID": "4", + "typeID": "Label", + "zOrder": "4", + "w": "229", + "measuredW": "220", + "measuredH": "23", + "x": "54", + "y": "91", + "properties": { + "size": "15", + "text": "the issues when things go wrong" + } + }, + { + "ID": "5", + "typeID": "Icon", + "zOrder": "5", + "measuredW": "24", + "measuredH": "24", + "x": "318", + "y": "0", + "properties": { + "color": "16777215", + "icon": { + "ID": "circle", + "size": "small" + } + } + }, + { + "ID": "6", + "typeID": "Icon", + "zOrder": "6", + "measuredW": "24", + "measuredH": "24", + "x": "318", + "y": "0", + "properties": { + "color": "10027263", + "icon": { + "ID": "check-circle", + "size": "small" + } + } + } + ] + } + } + }, + { + "ID": "2878", + "typeID": "__group__", + "zOrder": "8", + "measuredW": "207", + "measuredH": "50", + "w": "207", + "h": "50", + "x": "632", + "y": "3094", + "properties": { + "controlName": "ext_link:google.com" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "207", + "h": "50", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16776960" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "114", + "measuredH": "25", + "x": "45", + "y": "13", + "properties": { + "bold": "true", + "size": "17", + "text": "Keep Learning" + } + } + ] + } + } } ] }, - "measuredH": "3212", - "measuredW": "1318", + "attributes": { + "name": "New Wireframe 7", + "order": 1000068.7430630563, + "parentID": null, + "notes": null + }, + "branchID": "Master", + "resourceID": "93ECBB28-32EE-4BB7-BDD8-29A9F331416F", "mockupH": "3053", "mockupW": "1196", + "measuredW": "1318", + "measuredH": "3212", "version": "1.0" } } diff --git a/public/sitemap.xml b/public/sitemap.xml index 91bc8e987..5ad2831a3 100644 --- a/public/sitemap.xml +++ b/public/sitemap.xml @@ -3,73 +3,73 @@ https://roadmap.sh/frontend monthly - 2021-12-07T20:45:44.001Z + 2022-01-01T14:33:25.342Z 1.0 https://roadmap.sh/backend monthly - 2021-12-07T12:24:10.383Z + 2022-01-08T17:34:17.532Z 1.0 https://roadmap.sh/devops monthly - 2021-12-07T12:24:29.396Z + 2022-01-01T14:33:25.337Z 1.0 https://roadmap.sh/react monthly - 2021-12-07T12:24:47.750Z + 2022-01-01T14:33:25.341Z 1.0 https://roadmap.sh/angular monthly - 2021-12-07T12:25:01.864Z + 2022-01-01T14:31:59.549Z 1.0 https://roadmap.sh/android monthly - 2021-12-07T12:25:10.650Z + 2022-01-01T14:32:00.124Z 1.0 https://roadmap.sh/python monthly - 2021-12-07T12:25:20.397Z + 2022-01-01T14:31:59.350Z 1.0 https://roadmap.sh/golang monthly - 2021-12-07T12:25:48.316Z + 2022-01-01T14:31:59.192Z 1.0 https://roadmap.sh/java monthly - 2021-12-07T12:26:09.478Z + 2022-01-01T14:31:59.515Z 1.0 https://roadmap.sh/postgresql-dba monthly - 2021-12-03T13:12:58.599Z + 2022-01-01T14:31:59.273Z 1.0 https://roadmap.sh/aws monthly - 2021-12-03T13:12:58.597Z + 2022-01-01T14:31:59.852Z 1.0 https://roadmap.sh/qa monthly - 2021-12-03T13:12:58.589Z + 2022-01-01T14:31:59.633Z 1.0 @@ -255,7 +255,7 @@ https://roadmap.sh/ monthly - 2021-12-04T13:06:07.143Z + 2021-12-18T08:12:35.720Z 1.0 @@ -273,7 +273,7 @@ https://roadmap.sh/thanks monthly - 2021-12-06T14:21:37.276Z + 2022-01-01T14:45:56.924Z 0.5