From 9614eb2dc2c2d4b8a3d79a31a8e6e15be0ee43bc Mon Sep 17 00:00:00 2001 From: Kamran Ahmed Date: Fri, 30 Dec 2022 20:08:09 +0400 Subject: [PATCH] Add list comrpehensions, paradigms and expressions --- .../roadmaps/108-python/content-paths.json | 3 + .../106-list-comprehensions.md | 7 + .../107-generator-expressions.md | 11 + .../108-paradigms.md | 13 + public/project/python.json | 2557 +++++++++-------- 5 files changed, 1469 insertions(+), 1122 deletions(-) create mode 100644 content/roadmaps/108-python/content/102-python-advanced-topics/106-list-comprehensions.md create mode 100644 content/roadmaps/108-python/content/102-python-advanced-topics/107-generator-expressions.md create mode 100644 content/roadmaps/108-python/content/102-python-advanced-topics/108-paradigms.md diff --git a/content/roadmaps/108-python/content-paths.json b/content/roadmaps/108-python/content-paths.json index da1091fdc..f9e4eda84 100644 --- a/content/roadmaps/108-python/content-paths.json +++ b/content/roadmaps/108-python/content-paths.json @@ -26,6 +26,9 @@ "python-advanced-topics:modules": "/roadmaps/108-python/content/102-python-advanced-topics/105-modules/readme.md", "python-advanced-topics:modules:builtin-modules": "/roadmaps/108-python/content/102-python-advanced-topics/105-modules/100-builtin-modules.md", "python-advanced-topics:modules:custom-modules": "/roadmaps/108-python/content/102-python-advanced-topics/105-modules/101-custom-modules.md", + "python-advanced-topics:list-comprehensions": "/roadmaps/108-python/content/102-python-advanced-topics/106-list-comprehensions.md", + "python-advanced-topics:generator-expressions": "/roadmaps/108-python/content/102-python-advanced-topics/107-generator-expressions.md", + "python-advanced-topics:paradigms": "/roadmaps/108-python/content/102-python-advanced-topics/108-paradigms.md", "version-control-systems": "/roadmaps/108-python/content/103-version-control-systems/readme.md", "version-control-systems:basic-git-usage": "/roadmaps/108-python/content/103-version-control-systems/100-basic-git-usage.md", "repo-hosting-services": "/roadmaps/108-python/content/104-repo-hosting-services/readme.md", diff --git a/content/roadmaps/108-python/content/102-python-advanced-topics/106-list-comprehensions.md b/content/roadmaps/108-python/content/102-python-advanced-topics/106-list-comprehensions.md new file mode 100644 index 000000000..40a7122de --- /dev/null +++ b/content/roadmaps/108-python/content/102-python-advanced-topics/106-list-comprehensions.md @@ -0,0 +1,7 @@ +# List Comprehensions + +List comprehensions are a concise way to create a list using a single line of code in Python. They are a powerful tool for creating and manipulating lists, and they can be used to simplify and shorten code. + +Free Content +Python - List Comprehension +Python List Comprehensions diff --git a/content/roadmaps/108-python/content/102-python-advanced-topics/107-generator-expressions.md b/content/roadmaps/108-python/content/102-python-advanced-topics/107-generator-expressions.md new file mode 100644 index 000000000..0f336b6d8 --- /dev/null +++ b/content/roadmaps/108-python/content/102-python-advanced-topics/107-generator-expressions.md @@ -0,0 +1,11 @@ +# Generator Compressions + +Generator comprehensions are a concise way to create a generator using a single line of code in Python. They are similar to list comprehensions, but instead of creating a list, they create a generator object that produces the values on-demand, as they are needed. + +Generator comprehensions are a useful tool for creating generators that generate a large sequence of values, as they allow you to create the generator without creating the entire sequence in memory at once. This can be more efficient and use less memory, especially for large sequences. + +Free Content +Python Generator Expressions +List Comprehensions in Python and Generator Expressions +Python | Generator Expressions + diff --git a/content/roadmaps/108-python/content/102-python-advanced-topics/108-paradigms.md b/content/roadmaps/108-python/content/102-python-advanced-topics/108-paradigms.md new file mode 100644 index 000000000..45f5158f1 --- /dev/null +++ b/content/roadmaps/108-python/content/102-python-advanced-topics/108-paradigms.md @@ -0,0 +1,13 @@ +# Python Paradigms + +Python is a multi-paradigm programming language, which means that it supports several programming paradigms. Some of the main paradigms supported by Python are: + +- Imperative programming: This paradigm focuses on telling the computer what to do, step by step. Python supports imperative programming with features such as variables, loops, and control structures. +- Object-oriented programming (OOP): This paradigm is based on the idea of objects and their interactions. Python supports OOP with features such as classes, inheritance, and polymorphism. +- Functional programming: This paradigm is based on the idea of functions as first-class citizens, and it emphasizes the use of pure functions and immutable data. Python supports functional programming with features such as higher-order functions, lambda expressions, and generators. +- Aspect-oriented programming: This paradigm is based on the idea of separating cross-cutting concerns from the main functionality of a program. Python does not have built-in support for aspect-oriented programming, but it can be achieved using libraries or language extensions. + +Python's support for multiple paradigms makes it a versatile and flexible language, and it allows developers to choose the paradigm that best fits their needs. + +Programming Paradigms in Python + diff --git a/public/project/python.json b/public/project/python.json index 4a625ef3d..e98eca19e 100644 --- a/public/project/python.json +++ b/public/project/python.json @@ -2,463 +2,16 @@ "mockup": { "controls": { "control": [ - { - "ID": "14755", - "typeID": "Arrow", - "zOrder": "0", - "w": "1", - "h": "82", - "measuredW": "150", - "measuredH": "100", - "x": "1136", - "y": "1104", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "p0": { - "x": 0, - "y": -0.24280136823927023 - }, - "p1": { - "x": 0.4604452230239245, - "y": 0.003676653605416392 - }, - "p2": { - "x": 0, - "y": 82 - }, - "stroke": "dotted" - } - }, - { - "ID": "14756", - "typeID": "Arrow", - "zOrder": "1", - "w": "199", - "h": "108", - "measuredW": "150", - "measuredH": "100", - "x": "847", - "y": "1065", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "p0": { - "x": -0.5, - "y": 0 - }, - "p1": { - "x": 0.3700657239593706, - "y": -0.20041824337781317 - }, - "p2": { - "x": 198.5, - "y": 108 - } - } - }, - { - "ID": "14757", - "typeID": "Arrow", - "zOrder": "2", - "w": "101", - "h": "24", - "measuredW": "150", - "measuredH": "100", - "x": "418", - "y": "1047", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": 24.5 - }, - "p1": { - "x": 0.4704601401249764, - "y": 0.0798144290854005 - }, - "p2": { - "x": 101, - "y": 0.5 - } - } - }, - { - "ID": "14758", - "typeID": "Arrow", - "zOrder": "3", - "w": "129", - "h": "166", - "measuredW": "150", - "measuredH": "100", - "x": "424", - "y": "1110", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": 165.5 - }, - "p1": { - "x": 0.5753331674095528, - "y": 0.07360228069778492 - }, - "p2": { - "x": 129, - "y": -0.5 - } - } - }, - { - "ID": "14759", - "typeID": "Arrow", - "zOrder": "4", - "w": "86", - "h": "27", - "measuredW": "150", - "measuredH": "100", - "x": "679", - "y": "1037", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "color": "10027263", - "p0": { - "x": 85.5, - "y": 27 - }, - "p1": { - "x": 0.5986120996441281, - "y": 0.12644128113878994 - }, - "p2": { - "x": 0, - "y": 0 - } - } - }, - { - "ID": "14760", - "typeID": "Arrow", - "zOrder": "5", - "w": "87", - "h": "28", - "measuredW": "150", - "measuredH": "100", - "x": "679", - "y": "1073", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "stroke": "dotted", - "color": "10027263", - "p0": { - "x": 86.5, - "y": 0 - }, - "p1": { - "x": 0.6497109826589595, - "y": -0.08978805394990365 - }, - "p2": { - "x": 0, - "y": 28 - } - } - }, - { - "ID": "14761", - "typeID": "Arrow", - "zOrder": "6", - "w": "1", - "h": "352", - "measuredW": "150", - "measuredH": "100", - "x": "845", - "y": "716", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "p0": { - "x": 0, - "y": -0.24280136823927023 - }, - "p1": { - "x": 0.4604452230239245, - "y": 0.0036766536054163917 - }, - "p2": { - "x": 0, - "y": 352 - } - } - }, - { - "ID": "14762", - "typeID": "Arrow", - "zOrder": "7", - "w": "214", - "h": "141", - "measuredW": "150", - "measuredH": "100", - "x": "827", - "y": "1184", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "p0": { - "x": 214.5, - "y": 0 - }, - "p1": { - "x": 0.5712545436900968, - "y": -0.21227347450676648 - }, - "p2": { - "x": 0.20376246056980563, - "y": 141.43444344459454 - } - } - }, - { - "ID": "14763", - "typeID": "Arrow", - "zOrder": "8", - "w": "110", - "h": "112", - "measuredW": "150", - "measuredH": "100", - "x": "422", - "y": "920", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": -0.5, - "y": 0 - }, - "p1": { - "x": 0.49256306145204387, - "y": -0.1262491321818526 - }, - "p2": { - "x": 109, - "y": 111.5 - } - } - }, - { - "ID": "14764", - "typeID": "Arrow", - "zOrder": "9", - "w": "123", - "h": "133", - "measuredW": "150", - "measuredH": "100", - "x": "424", - "y": "1107", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": 133 - }, - "p1": { - "x": 0.4810165153269547, - "y": 0.11402279237004083 - }, - "p2": { - "x": 123, - "y": 0 - } - } - }, - { - "ID": "14765", - "typeID": "Arrow", - "zOrder": "10", - "w": "106", - "h": "93", - "measuredW": "150", - "measuredH": "100", - "x": "425", - "y": "1102", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": 93 - }, - "p1": { - "x": 0.40844857933115414, - "y": 0.13221020870002514 - }, - "p2": { - "x": 106, - "y": 0 - } - } - }, - { - "ID": "14766", - "typeID": "Arrow", - "zOrder": "11", - "w": "105", - "h": "45", - "measuredW": "150", - "measuredH": "100", - "x": "419", - "y": "1104", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": 45 - }, - "p1": { - "x": 0.3839080459770115, - "y": 0.14022988505747125 - }, - "p2": { - "x": 105, - "y": 0 - } - } - }, - { - "ID": "14767", - "typeID": "Arrow", - "zOrder": "12", - "w": "91", - "h": "19", - "measuredW": "150", - "measuredH": "100", - "x": "418", - "y": "1074", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": 0, - "y": -0.5 - }, - "p1": { - "x": 0.4292794822430673, - "y": -0.0842174251423423 - }, - "p2": { - "x": 91, - "y": 17.5 - } - } - }, - { - "ID": "14768", - "typeID": "Arrow", - "zOrder": "13", - "w": "105", - "h": "60", - "measuredW": "150", - "measuredH": "100", - "x": "423", - "y": "973", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": -0.5, - "y": 0 - }, - "p1": { - "x": 0.39794612911033506, - "y": -0.1274852183534456 - }, - "p2": { - "x": 104, - "y": 59.5 - } - } - }, - { - "ID": "14769", - "typeID": "Arrow", - "zOrder": "14", - "w": "94", - "h": "24", - "measuredW": "150", - "measuredH": "100", - "x": "420", - "y": "1016", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "stroke": "dotted", - "p0": { - "x": -0.5, - "y": 0 - }, - "p1": { - "x": 0.487852196079316, - "y": -0.041868754088745526 - }, - "p2": { - "x": 93, - "y": 24 - } - } - }, { "ID": "14770", "typeID": "Arrow", - "zOrder": "15", + "zOrder": "19", "w": "1", - "h": "220", + "h": "205", "measuredW": "150", "measuredH": "100", - "x": "663", - "y": "590", + "x": "652", + "y": "604", "properties": { "curvature": "0", "leftArrow": "false", @@ -467,7 +20,7 @@ "stroke": "dotted", "p0": { "x": 0, - "y": 0 + "y": 0.34052498951359667 }, "p1": { "x": 0.46044522302392416, @@ -475,14 +28,14 @@ }, "p2": { "x": 0, - "y": 219.5 + "y": 205.5 } } }, { "ID": "14771", "typeID": "Arrow", - "zOrder": "16", + "zOrder": "20", "w": "129", "h": "131", "measuredW": "150", @@ -512,7 +65,7 @@ { "ID": "14772", "typeID": "Arrow", - "zOrder": "17", + "zOrder": "21", "w": "128", "h": "91", "measuredW": "150", @@ -542,7 +95,7 @@ { "ID": "14773", "typeID": "Arrow", - "zOrder": "18", + "zOrder": "22", "w": "134", "h": "50", "measuredW": "150", @@ -572,7 +125,7 @@ { "ID": "14774", "typeID": "Arrow", - "zOrder": "19", + "zOrder": "23", "w": "138", "h": "6", "measuredW": "150", @@ -602,12 +155,12 @@ { "ID": "14775", "typeID": "Arrow", - "zOrder": "20", - "w": "122", - "h": "114", + "zOrder": "24", + "w": "113", + "h": "115", "measuredW": "150", "measuredH": "100", - "x": "846", + "x": "856", "y": "598", "properties": { "curvature": "0", @@ -615,23 +168,23 @@ "rightArrow": "false", "color": "10027263", "p0": { - "x": 122.5, + "x": 112.5, "y": -0.5 }, "p1": { - "x": 0.5299139167862267, - "y": -0.2574605451936872 + "x": 0.48937720509145993, + "y": -0.20691804593983584 }, "p2": { - "x": 0.5, - "y": 113.5 + "x": -0.29660178475955945, + "y": 114.83149154894579 } } }, { "ID": "14776", "typeID": "Arrow", - "zOrder": "21", + "zOrder": "25", "w": "1", "h": "76", "measuredW": "150", @@ -661,7 +214,7 @@ { "ID": "14777", "typeID": "Arrow", - "zOrder": "22", + "zOrder": "26", "w": "221", "h": "117", "measuredW": "150", @@ -690,7 +243,7 @@ { "ID": "14778", "typeID": "Arrow", - "zOrder": "23", + "zOrder": "27", "w": "1", "h": "95", "measuredW": "150", @@ -720,7 +273,7 @@ { "ID": "14779", "typeID": "Arrow", - "zOrder": "24", + "zOrder": "28", "w": "1", "h": "80", "measuredW": "150", @@ -749,13 +302,13 @@ { "ID": "14780", "typeID": "Arrow", - "zOrder": "25", - "w": "120", - "h": "45", + "zOrder": "29", + "w": "96", + "h": "46", "measuredW": "150", "measuredH": "100", "x": "871", - "y": "417", + "y": "416", "properties": { "curvature": "0", "leftArrow": "false", @@ -763,25 +316,25 @@ "stroke": "dotted", "color": "10027263", "p0": { - "x": 120, - "y": 0 + "x": 95.72077500246428, + "y": 0.33535944713611343 }, "p1": { - "x": 0.5537800308573948, - "y": 0.04485342737491732 + "x": 0.5365907376221624, + "y": 0.09967779237460443 }, "p2": { "x": 0, - "y": 45 + "y": 46 } } }, { "ID": "14781", "typeID": "Arrow", - "zOrder": "26", - "w": "120", - "h": "44", + "zOrder": "30", + "w": "98", + "h": "43", "measuredW": "150", "measuredH": "100", "x": "867", @@ -793,12 +346,12 @@ "stroke": "dotted", "color": "10027263", "p0": { - "x": 120, - "y": 44 + "x": 98.30225589020824, + "y": 43.46873552956811 }, "p1": { - "x": 0.5846756207563067, - "y": -0.036972790801407494 + "x": 0.3374725601408122, + "y": -0.11051464136788798 }, "p2": { "x": 0, @@ -809,7 +362,7 @@ { "ID": "14782", "typeID": "Arrow", - "zOrder": "27", + "zOrder": "31", "w": "99", "h": "50", "measuredW": "150", @@ -839,7 +392,7 @@ { "ID": "14783", "typeID": "Arrow", - "zOrder": "28", + "zOrder": "32", "w": "99", "h": "50", "measuredW": "150", @@ -869,7 +422,7 @@ { "ID": "14784", "typeID": "Arrow", - "zOrder": "29", + "zOrder": "33", "w": "115", "h": "3", "measuredW": "150", @@ -899,7 +452,7 @@ { "ID": "14785", "typeID": "Arrow", - "zOrder": "30", + "zOrder": "34", "w": "143", "h": "3", "measuredW": "150", @@ -929,7 +482,7 @@ { "ID": "14786", "typeID": "Label", - "zOrder": "31", + "zOrder": "35", "measuredW": "87", "measuredH": "36", "x": "701", @@ -942,7 +495,7 @@ { "ID": "14787", "typeID": "Arrow", - "zOrder": "32", + "zOrder": "36", "w": "1", "h": "55", "measuredW": "150", @@ -971,7 +524,7 @@ { "ID": "14788", "typeID": "__group__", - "zOrder": "33", + "zOrder": "37", "measuredW": "262", "measuredH": "43", "w": "262", @@ -1018,7 +571,7 @@ { "ID": "14789", "typeID": "__group__", - "zOrder": "34", + "zOrder": "38", "measuredW": "222", "measuredH": "42", "w": "222", @@ -1066,7 +619,7 @@ { "ID": "14790", "typeID": "__group__", - "zOrder": "35", + "zOrder": "39", "measuredW": "222", "measuredH": "42", "w": "222", @@ -1114,7 +667,7 @@ { "ID": "14791", "typeID": "__group__", - "zOrder": "36", + "zOrder": "40", "measuredW": "256", "measuredH": "42", "w": "256", @@ -1161,7 +714,7 @@ { "ID": "14792", "typeID": "__group__", - "zOrder": "37", + "zOrder": "41", "measuredW": "222", "measuredH": "42", "w": "222", @@ -1209,7 +762,7 @@ { "ID": "14793", "typeID": "__group__", - "zOrder": "38", + "zOrder": "42", "measuredW": "254", "measuredH": "42", "w": "254", @@ -1256,7 +809,7 @@ { "ID": "14794", "typeID": "__group__", - "zOrder": "39", + "zOrder": "43", "measuredW": "256", "measuredH": "42", "w": "256", @@ -1304,7 +857,7 @@ { "ID": "14795", "typeID": "__group__", - "zOrder": "40", + "zOrder": "44", "measuredW": "262", "measuredH": "43", "w": "262", @@ -1351,7 +904,7 @@ { "ID": "14796", "typeID": "__group__", - "zOrder": "41", + "zOrder": "45", "measuredW": "222", "measuredH": "42", "w": "222", @@ -1398,13 +951,13 @@ { "ID": "14797", "typeID": "__group__", - "zOrder": "42", + "zOrder": "46", "measuredW": "222", "measuredH": "42", "w": "222", "h": "42", "x": "994", - "y": "692", + "y": "691", "properties": { "controlName": "101-data-structures-and-algorithms:heaps-stacks-queues" }, @@ -1445,13 +998,13 @@ { "ID": "14798", "typeID": "__group__", - "zOrder": "43", + "zOrder": "47", "measuredW": "222", "measuredH": "42", "w": "222", "h": "42", "x": "995", - "y": "739", + "y": "737", "properties": { "controlName": "102-data-structures-and-algorithms:hash-tables" }, @@ -1492,13 +1045,13 @@ { "ID": "14799", "typeID": "__group__", - "zOrder": "44", + "zOrder": "48", "measuredW": "222", "measuredH": "42", "w": "222", "h": "42", "x": "994", - "y": "785", + "y": "782", "properties": { "controlName": "103-data-structures-and-algorithms:binary-search-trees" }, @@ -1539,13 +1092,13 @@ { "ID": "14800", "typeID": "__group__", - "zOrder": "45", + "zOrder": "49", "measuredW": "222", "measuredH": "42", "w": "222", "h": "42", "x": "994", - "y": "832", + "y": "828", "properties": { "controlName": "104-data-structures-and-algorithms:recursion" }, @@ -1586,13 +1139,13 @@ { "ID": "14801", "typeID": "__group__", - "zOrder": "46", + "zOrder": "50", "measuredW": "222", "measuredH": "42", "w": "222", "h": "42", "x": "994", - "y": "879", + "y": "874", "properties": { "controlName": "105-data-structures-and-algorithms:sorting-algorithms" }, @@ -1633,7 +1186,7 @@ { "ID": "14802", "typeID": "__group__", - "zOrder": "47", + "zOrder": "51", "measuredW": "311", "measuredH": "43", "w": "311", @@ -1680,7 +1233,7 @@ { "ID": "14803", "typeID": "__group__", - "zOrder": "48", + "zOrder": "52", "measuredW": "115", "measuredH": "142", "w": "115", @@ -1724,12 +1277,12 @@ { "ID": "14804", "typeID": "__group__", - "zOrder": "49", + "zOrder": "53", "measuredW": "90", "measuredH": "42", "w": "90", "h": "42", - "x": "592", + "x": "593", "y": "825", "properties": { "controlName": "100-python-advanced-topics:modules:builtin-modules" @@ -1771,7 +1324,7 @@ { "ID": "14805", "typeID": "__group__", - "zOrder": "50", + "zOrder": "54", "measuredW": "91", "measuredH": "42", "w": "91", @@ -1818,12 +1371,12 @@ { "ID": "14806", "typeID": "__group__", - "zOrder": "51", + "zOrder": "55", "measuredW": "119", "measuredH": "42", "w": "119", "h": "42", - "x": "581", + "x": "576", "y": "583", "properties": { "controlName": "104-python-advanced-topics:iterators" @@ -1865,13 +1418,13 @@ { "ID": "14807", "typeID": "__group__", - "zOrder": "52", - "measuredW": "206", + "zOrder": "56", + "measuredW": "232", "measuredH": "43", - "w": "206", + "w": "232", "h": "43", - "x": "745", - "y": "1047", + "x": "761", + "y": "1110", "properties": { "controlName": "106-python-frameworks" }, @@ -1882,7 +1435,7 @@ "ID": "0", "typeID": "Canvas", "zOrder": "0", - "w": "206", + "w": "232", "h": "43", "measuredW": "100", "measuredH": "70", @@ -1898,7 +1451,7 @@ "zOrder": "1", "measuredW": "140", "measuredH": "24", - "x": "33", + "x": "46", "y": "10", "properties": { "size": "16", @@ -1909,392 +1462,16 @@ } } }, - { - "ID": "14808", - "typeID": "__group__", - "zOrder": "53", - "measuredW": "187", - "measuredH": "43", - "w": "187", - "h": "43", - "x": "498", - "y": "1019", - "properties": { - "controlName": "100-python-frameworks:synchronous" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "187", - "h": "43", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "93", - "measuredH": "24", - "x": "47", - "y": "10", - "properties": { - "size": "16", - "text": "Synchronous" - } - } - ] - } - } - }, - { - "ID": "14809", - "typeID": "__group__", - "zOrder": "54", - "measuredW": "87", - "measuredH": "42", - "w": "87", - "h": "42", - "x": "339", - "y": "905", - "properties": { - "controlName": "100-python-frameworks:synchronous:django" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "87", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "52", - "measuredH": "24", - "x": "18", - "y": "9", - "properties": { - "size": "16", - "text": "Django" - } - } - ] - } - } - }, - { - "ID": "14810", - "typeID": "__group__", - "zOrder": "55", - "measuredW": "88", - "measuredH": "42", - "w": "88", - "h": "42", - "x": "339", - "y": "951", - "properties": { - "controlName": "101-python-frameworks:synchronous:flask" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "88", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "38", - "measuredH": "24", - "x": "25", - "y": "9", - "properties": { - "size": "16", - "text": "Flask" - } - } - ] - } - } - }, - { - "ID": "14811", - "typeID": "__group__", - "zOrder": "56", - "measuredW": "88", - "measuredH": "42", - "w": "88", - "h": "42", - "x": "339", - "y": "997", - "properties": { - "controlName": "102-python-frameworks:synchronous:pyramid" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "88", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "58", - "measuredH": "24", - "x": "15", - "y": "9", - "properties": { - "size": "16", - "text": "Pyramid" - } - } - ] - } - } - }, - { - "ID": "14812", - "typeID": "__group__", - "zOrder": "57", - "measuredW": "91", - "measuredH": "42", - "w": "91", - "h": "42", - "x": "338", - "y": "1113", - "properties": { - "controlName": "100-python-frameworks:asynchronous:gevent" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "91", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "50", - "measuredH": "24", - "x": "21", - "y": "9", - "properties": { - "size": "16", - "text": "gevent" - } - } - ] - } - } - }, - { - "ID": "14813", - "typeID": "__group__", - "zOrder": "58", - "measuredW": "89", - "measuredH": "42", - "w": "89", - "h": "42", - "x": "339", - "y": "1159", - "properties": { - "controlName": "101-python-frameworks:asynchronous:aiohttp" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "89", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "50", - "measuredH": "24", - "x": "20", - "y": "9", - "properties": { - "size": "16", - "text": "aiohttp" - } - } - ] - } - } - }, - { - "ID": "14814", - "typeID": "__group__", - "zOrder": "59", - "measuredW": "91", - "measuredH": "42", - "w": "91", - "h": "42", - "x": "338", - "y": "1205", - "properties": { - "controlName": "102-python-frameworks:asynchronous:tornado" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "91", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "60", - "measuredH": "24", - "x": "16", - "y": "9", - "properties": { - "size": "16", - "text": "Tornado" - } - } - ] - } - } - }, - { - "ID": "14815", - "typeID": "__group__", - "zOrder": "60", - "measuredW": "91", - "measuredH": "42", - "w": "91", - "h": "42", - "x": "338", - "y": "1251", - "properties": { - "controlName": "103-python-frameworks:asynchronous:sanic" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "91", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "41", - "measuredH": "24", - "x": "25", - "y": "9", - "properties": { - "size": "16", - "text": "Sanic" - } - } - ] - } - } - }, { "ID": "14816", "typeID": "__group__", - "zOrder": "61", + "zOrder": "57", "measuredW": "183", "measuredH": "43", "w": "183", "h": "43", - "x": "1034", - "y": "1155", + "x": "732", + "y": "1447", "properties": { "controlName": "108-python-testing" }, @@ -2335,13 +1512,13 @@ { "ID": "14817", "typeID": "__group__", - "zOrder": "62", + "zOrder": "94", "measuredW": "154", "measuredH": "42", "w": "154", "h": "42", - "x": "1060", - "y": "1080", + "x": "473", + "y": "1459", "properties": { "controlName": "100-python-testing:unittest-pyunit" }, @@ -2382,13 +1559,13 @@ { "ID": "14818", "typeID": "__group__", - "zOrder": "63", + "zOrder": "95", "measuredW": "154", "measuredH": "42", "w": "154", "h": "42", - "x": "1060", - "y": "1033", + "x": "473", + "y": "1412", "properties": { "controlName": "101-python-testing:pytest" }, @@ -2429,13 +1606,13 @@ { "ID": "14819", "typeID": "__group__", - "zOrder": "64", + "zOrder": "96", "measuredW": "154", "measuredH": "42", "w": "154", "h": "42", - "x": "1060", - "y": "941", + "x": "473", + "y": "1320", "properties": { "controlName": "102-python-testing:doctest" }, @@ -2476,13 +1653,13 @@ { "ID": "14820", "typeID": "__group__", - "zOrder": "65", + "zOrder": "97", "measuredW": "154", "measuredH": "42", "w": "154", "h": "42", - "x": "1060", - "y": "987", + "x": "473", + "y": "1366", "properties": { "controlName": "102-python-testing:nose" }, @@ -2523,7 +1700,7 @@ { "ID": "14821", "typeID": "Canvas", - "zOrder": "66", + "zOrder": "58", "w": "350", "h": "141", "measuredW": "100", @@ -2534,7 +1711,7 @@ { "ID": "14822", "typeID": "Label", - "zOrder": "67", + "zOrder": "59", "measuredW": "314", "measuredH": "25", "x": "1042", @@ -2547,7 +1724,7 @@ { "ID": "14823", "typeID": "Label", - "zOrder": "68", + "zOrder": "60", "measuredW": "319", "measuredH": "25", "x": "1042", @@ -2560,7 +1737,7 @@ { "ID": "14824", "typeID": "__group__", - "zOrder": "69", + "zOrder": "61", "measuredW": "320", "measuredH": "45", "w": "320", @@ -2665,7 +1842,7 @@ { "ID": "14825", "typeID": "__group__", - "zOrder": "70", + "zOrder": "62", "measuredW": "374", "measuredH": "50", "w": "374", @@ -2714,7 +1891,7 @@ { "ID": "14826", "typeID": "Arrow", - "zOrder": "71", + "zOrder": "63", "w": "1", "h": "77", "measuredW": "150", @@ -2744,7 +1921,7 @@ { "ID": "14827", "typeID": "__group__", - "zOrder": "72", + "zOrder": "64", "measuredW": "131", "measuredH": "184", "w": "131", @@ -2788,7 +1965,7 @@ { "ID": "14828", "typeID": "__group__", - "zOrder": "73", + "zOrder": "65", "measuredW": "169", "measuredH": "42", "w": "169", @@ -2836,7 +2013,7 @@ { "ID": "14829", "typeID": "__group__", - "zOrder": "74", + "zOrder": "66", "measuredW": "169", "measuredH": "42", "w": "169", @@ -2884,7 +2061,7 @@ { "ID": "14830", "typeID": "__group__", - "zOrder": "75", + "zOrder": "67", "measuredW": "169", "measuredH": "42", "w": "169", @@ -2931,7 +2108,7 @@ { "ID": "14831", "typeID": "__group__", - "zOrder": "76", + "zOrder": "68", "measuredW": "172", "measuredH": "42", "w": "172", @@ -2978,7 +2155,7 @@ { "ID": "14832", "typeID": "__group__", - "zOrder": "77", + "zOrder": "69", "measuredW": "171", "measuredH": "42", "w": "171", @@ -3025,7 +2202,7 @@ { "ID": "14833", "typeID": "__group__", - "zOrder": "78", + "zOrder": "70", "measuredW": "174", "measuredH": "42", "w": "174", @@ -3069,189 +2246,16 @@ } } }, - { - "ID": "14834", - "typeID": "__group__", - "zOrder": "79", - "measuredW": "187", - "measuredH": "43", - "w": "187", - "h": "43", - "x": "498", - "y": "1074", - "properties": { - "controlName": "101-python-frameworks:asynchronous" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "187", - "h": "43", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "101", - "measuredH": "24", - "x": "43", - "y": "10", - "properties": { - "size": "16", - "text": "Asynchronous" - } - } - ] - } - } - }, - { - "ID": "14835", - "typeID": "__group__", - "zOrder": "80", - "measuredW": "89", - "measuredH": "42", - "w": "89", - "h": "42", - "x": "339", - "y": "1053", - "properties": { - "controlName": "102-python-frameworks:fastapi" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "Canvas", - "zOrder": "0", - "w": "89", - "h": "42", - "measuredW": "100", - "measuredH": "70", - "x": "0", - "y": "0", - "properties": { - "color": "16770457" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "56", - "measuredH": "24", - "x": "17", - "y": "9", - "properties": { - "size": "16", - "text": "FastAPI" - } - } - ] - } - } - }, - { - "ID": "14836", - "typeID": "Arrow", - "zOrder": "81", - "w": "1", - "h": "98", - "measuredW": "150", - "measuredH": "100", - "x": "829", - "y": "1324", - "properties": { - "curvature": "0", - "leftArrow": "false", - "rightArrow": "false", - "color": "10027263", - "p0": { - "x": -0.5, - "y": -0.5 - }, - "p1": { - "x": 0.5259259259259262, - "y": 0 - }, - "p2": { - "x": -0.5, - "y": 97 - }, - "stroke": "dotted" - } - }, - { - "ID": "14837", - "typeID": "__group__", - "zOrder": "82", - "measuredW": "374", - "measuredH": "50", - "w": "374", - "h": "50", - "x": "622", - "y": "1293", - "properties": { - "controlName": "ext_link:roadmap.sh/backend" - }, - "children": { - "controls": { - "control": [ - { - "ID": "0", - "typeID": "TextArea", - "zOrder": "0", - "w": "374", - "h": "50", - "measuredW": "200", - "measuredH": "140", - "x": "0", - "y": "0", - "properties": { - "color": "4273622", - "borderColor": "4273622" - } - }, - { - "ID": "1", - "typeID": "Label", - "zOrder": "1", - "measuredW": "340", - "measuredH": "25", - "x": "17", - "y": "12", - "properties": { - "size": "17", - "color": "16777215", - "text": "Backend roadmap after Language Selection" - } - } - ] - } - } - }, { "ID": "14839", "typeID": "__group__", - "zOrder": "83", + "zOrder": "71", "measuredW": "173", "measuredH": "193", "w": "173", "h": "193", - "x": "759", - "y": "796", + "x": "339", + "y": "899", "properties": { "controlName": "105-python-package-managers" }, @@ -3289,13 +2293,13 @@ { "ID": "14840", "typeID": "__group__", - "zOrder": "84", + "zOrder": "72", "measuredW": "148", "measuredH": "42", "w": "148", "h": "42", - "x": "772", - "y": "842", + "x": "352", + "y": "945", "properties": { "controlName": "100-python-package-managers:pypi" }, @@ -3336,13 +2340,13 @@ { "ID": "14841", "typeID": "__group__", - "zOrder": "85", + "zOrder": "73", "measuredW": "146", "measuredH": "42", "w": "146", "h": "42", - "x": "773", - "y": "888", + "x": "353", + "y": "991", "properties": { "controlName": "101-python-package-managers:pip" }, @@ -3383,13 +2387,13 @@ { "ID": "14842", "typeID": "__group__", - "zOrder": "86", + "zOrder": "74", "measuredW": "146", "measuredH": "42", "w": "146", "h": "42", - "x": "773", - "y": "934", + "x": "353", + "y": "1037", "properties": { "controlName": "102-python-package-managers:conda" }, @@ -3430,7 +2434,7 @@ { "ID": "14843", "typeID": "__group__", - "zOrder": "87", + "zOrder": "75", "measuredW": "352", "measuredH": "54", "w": "352", @@ -3523,7 +2527,7 @@ { "ID": "14844", "typeID": "Canvas", - "zOrder": "88", + "zOrder": "76", "w": "328", "h": "200", "measuredW": "100", @@ -3534,7 +2538,7 @@ { "ID": "14845", "typeID": "__group__", - "zOrder": "89", + "zOrder": "77", "measuredW": "189", "measuredH": "27", "w": "189", @@ -3616,7 +2620,7 @@ { "ID": "14846", "typeID": "__group__", - "zOrder": "90", + "zOrder": "78", "measuredW": "183", "measuredH": "27", "w": "183", @@ -3698,7 +2702,7 @@ { "ID": "14848", "typeID": "Label", - "zOrder": "91", + "zOrder": "79", "measuredW": "209", "measuredH": "32", "x": "243", @@ -3711,7 +2715,7 @@ { "ID": "14849", "typeID": "__group__", - "zOrder": "92", + "zOrder": "80", "measuredW": "251", "measuredH": "27", "w": "251", @@ -3789,6 +2793,1315 @@ ] } } + }, + { + "ID": "14851", + "typeID": "Arrow", + "zOrder": "18", + "w": "278", + "h": "304", + "measuredW": "150", + "measuredH": "100", + "x": "494", + "y": "719", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 278.60848608141043, + "y": -0.474107944288221 + }, + "p1": { + "x": 0.5805567346688285, + "y": 0.3260932937151271 + }, + "p2": { + "x": 0.4694310921026954, + "y": 287.966393526105 + } + } + }, + { + "ID": "14853", + "typeID": "Arrow", + "zOrder": "16", + "w": "294", + "h": "468", + "measuredW": "150", + "measuredH": "100", + "x": "500", + "y": "713", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 289.7775635498863, + "y": -0.48328505825475077 + }, + "p1": { + "x": 0.5876470144844372, + "y": 0.25068750623071534 + }, + "p2": { + "x": -0.3798456673545729, + "y": 467.3740759577104 + } + } + }, + { + "ID": "14854", + "typeID": "__group__", + "zOrder": "81", + "measuredW": "193", + "measuredH": "42", + "w": "193", + "h": "42", + "x": "302", + "y": "1130", + "properties": { + "controlName": "106-python-advanced-topics:list-comprehensions" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "193", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "154", + "measuredH": "24", + "x": "20", + "y": "9", + "properties": { + "size": "16", + "text": "List Comprehensions" + } + } + ] + } + } + }, + { + "ID": "14855", + "typeID": "__group__", + "zOrder": "82", + "measuredW": "193", + "measuredH": "42", + "w": "193", + "h": "42", + "x": "302", + "y": "1175", + "properties": { + "controlName": "107-python-advanced-topics:generator-expressions" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "193", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "167", + "measuredH": "24", + "x": "13", + "y": "9", + "properties": { + "size": "16", + "text": "Generator Expressions" + } + } + ] + } + } + }, + { + "ID": "14856", + "typeID": "__group__", + "zOrder": "83", + "measuredW": "193", + "measuredH": "42", + "w": "193", + "h": "42", + "x": "302", + "y": "1220", + "properties": { + "controlName": "108-python-advanced-topics:paradigms" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "193", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "77", + "measuredH": "24", + "x": "58", + "y": "9", + "properties": { + "size": "16", + "text": "Paradigms" + } + } + ] + } + } + }, + { + "ID": "14857", + "typeID": "Canvas", + "zOrder": "17", + "w": "131", + "h": "166", + "measuredW": "100", + "measuredH": "70", + "x": "381", + "y": "1113" + }, + { + "ID": "14859", + "typeID": "__group__", + "zOrder": "84", + "measuredW": "155", + "measuredH": "43", + "w": "155", + "h": "43", + "x": "1078", + "y": "1036", + "properties": { + "controlName": "100-python-frameworks:synchronous" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "155", + "h": "43", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "93", + "measuredH": "24", + "x": "31", + "y": "10", + "properties": { + "size": "16", + "text": "Synchronous" + } + } + ] + } + } + }, + { + "ID": "14860", + "typeID": "__group__", + "zOrder": "85", + "measuredW": "87", + "measuredH": "42", + "w": "87", + "h": "42", + "x": "930", + "y": "945", + "properties": { + "controlName": "100-python-frameworks:synchronous:django" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "87", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "52", + "measuredH": "24", + "x": "18", + "y": "9", + "properties": { + "size": "16", + "text": "Django" + } + } + ] + } + } + }, + { + "ID": "14861", + "typeID": "__group__", + "zOrder": "86", + "measuredW": "88", + "measuredH": "42", + "w": "88", + "h": "42", + "x": "930", + "y": "991", + "properties": { + "controlName": "101-python-frameworks:synchronous:flask" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "88", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "38", + "measuredH": "24", + "x": "25", + "y": "9", + "properties": { + "size": "16", + "text": "Flask" + } + } + ] + } + } + }, + { + "ID": "14862", + "typeID": "__group__", + "zOrder": "87", + "measuredW": "88", + "measuredH": "42", + "w": "88", + "h": "42", + "x": "930", + "y": "1037", + "properties": { + "controlName": "102-python-frameworks:synchronous:pyramid" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "88", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "58", + "measuredH": "24", + "x": "15", + "y": "9", + "properties": { + "size": "16", + "text": "Pyramid" + } + } + ] + } + } + }, + { + "ID": "14863", + "typeID": "__group__", + "zOrder": "88", + "measuredW": "156", + "measuredH": "43", + "w": "156", + "h": "43", + "x": "1075", + "y": "1191", + "properties": { + "controlName": "101-python-frameworks:asynchronous" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "156", + "h": "43", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "101", + "measuredH": "24", + "x": "27", + "y": "10", + "properties": { + "size": "16", + "text": "Asynchronous" + } + } + ] + } + } + }, + { + "ID": "14864", + "typeID": "__group__", + "zOrder": "89", + "measuredW": "91", + "measuredH": "42", + "w": "91", + "h": "42", + "x": "936", + "y": "1191", + "properties": { + "controlName": "100-python-frameworks:asynchronous:gevent" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "91", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "50", + "measuredH": "24", + "x": "21", + "y": "9", + "properties": { + "size": "16", + "text": "gevent" + } + } + ] + } + } + }, + { + "ID": "14865", + "typeID": "__group__", + "zOrder": "90", + "measuredW": "89", + "measuredH": "42", + "w": "89", + "h": "42", + "x": "937", + "y": "1237", + "properties": { + "controlName": "101-python-frameworks:asynchronous:aiohttp" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "89", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "50", + "measuredH": "24", + "x": "20", + "y": "9", + "properties": { + "size": "16", + "text": "aiohttp" + } + } + ] + } + } + }, + { + "ID": "14866", + "typeID": "__group__", + "zOrder": "91", + "measuredW": "91", + "measuredH": "42", + "w": "91", + "h": "42", + "x": "936", + "y": "1283", + "properties": { + "controlName": "102-python-frameworks:asynchronous:tornado" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "91", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "60", + "measuredH": "24", + "x": "16", + "y": "9", + "properties": { + "size": "16", + "text": "Tornado" + } + } + ] + } + } + }, + { + "ID": "14867", + "typeID": "__group__", + "zOrder": "92", + "measuredW": "91", + "measuredH": "42", + "w": "91", + "h": "42", + "x": "936", + "y": "1329", + "properties": { + "controlName": "103-python-frameworks:asynchronous:sanic" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "91", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "41", + "measuredH": "24", + "x": "25", + "y": "9", + "properties": { + "size": "16", + "text": "Sanic" + } + } + ] + } + } + }, + { + "ID": "14868", + "typeID": "Arrow", + "zOrder": "15", + "w": "112", + "h": "1", + "measuredW": "150", + "measuredH": "100", + "x": "997", + "y": "1057", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.047263099007864184, + "y": 0.6533333333334213 + }, + "p1": { + "x": 0.4604452230239243, + "y": 0.0036766536054163913 + }, + "p2": { + "x": 111.59431322349451, + "y": 0.6533333333334213 + } + } + }, + { + "ID": "14869", + "typeID": "Arrow", + "zOrder": "14", + "w": "112", + "h": "1", + "measuredW": "150", + "measuredH": "100", + "x": "997", + "y": "1212", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.047263099007864184, + "y": 0.6533333333334213 + }, + "p1": { + "x": 0.4604452230239243, + "y": 0.0036766536054163913 + }, + "p2": { + "x": 111.59431322349451, + "y": 0.6533333333334213 + } + } + }, + { + "ID": "14870", + "typeID": "Arrow", + "zOrder": "13", + "w": "111", + "h": "34", + "measuredW": "150", + "measuredH": "100", + "x": "1011", + "y": "1012", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.047263099007864184, + "y": -0.34666666666657875 + }, + "p1": { + "x": 0.4166479025358807, + "y": -0.11155062310930966 + }, + "p2": { + "x": 111.34668926623954, + "y": 34.03347757295023 + } + } + }, + { + "ID": "14871", + "typeID": "Arrow", + "zOrder": "12", + "w": "142", + "h": "85", + "measuredW": "150", + "measuredH": "100", + "x": "1014", + "y": "962", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.047263099007864184, + "y": -0.34666666666657875 + }, + "p1": { + "x": 0.45447116402693255, + "y": -0.14876029092509369 + }, + "p2": { + "x": 141.9075249167838, + "y": 85.08956113800468 + } + } + }, + { + "ID": "14872", + "typeID": "Arrow", + "zOrder": "9", + "w": "87", + "h": "47", + "measuredW": "150", + "measuredH": "100", + "x": "1020", + "y": "1217", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": -0.03211016308387116, + "y": 47.543452474342075 + }, + "p1": { + "x": 0.412067352666043, + "y": 0.10477081384471411 + }, + "p2": { + "x": 87.06627144096728, + "y": 0.17415721599832068 + } + } + }, + { + "ID": "14873", + "typeID": "Arrow", + "zOrder": "10", + "w": "138", + "h": "87", + "measuredW": "150", + "measuredH": "100", + "x": "1021", + "y": "1220", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.49593161944335407, + "y": 87.32862238510415 + }, + "p1": { + "x": 0.4648888466117703, + "y": 0.11370478535773203 + }, + "p2": { + "x": 138.01969204689271, + "y": 0.23024078105277113 + } + } + }, + { + "ID": "14874", + "typeID": "Arrow", + "zOrder": "11", + "w": "139", + "h": "134", + "measuredW": "150", + "measuredH": "100", + "x": "1023", + "y": "1222", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.023973401970465602, + "y": 134.2259594259749 + }, + "p1": { + "x": 0.4719038339569139, + "y": 0.11801477411186584 + }, + "p2": { + "x": 139.07577561194717, + "y": -0.24171743642000365 + } + } + }, + { + "ID": "14875", + "typeID": "Arrow", + "zOrder": "1", + "w": "162", + "h": "70", + "measuredW": "150", + "measuredH": "100", + "x": "978", + "y": "1054", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 162, + "y": 0 + }, + "p1": { + "x": 0.38529283745163273, + "y": 0.1707591687518475 + }, + "p2": { + "x": -0.05325918258233742, + "y": 69.87473104876676 + } + } + }, + { + "ID": "14876", + "typeID": "__group__", + "zOrder": "93", + "measuredW": "89", + "measuredH": "42", + "w": "89", + "h": "42", + "x": "1179", + "y": "1111", + "properties": { + "controlName": "102-python-frameworks:fastapi" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "Canvas", + "zOrder": "0", + "w": "89", + "h": "42", + "measuredW": "100", + "measuredH": "70", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "56", + "measuredH": "24", + "x": "17", + "y": "9", + "properties": { + "size": "16", + "text": "FastAPI" + } + } + ] + } + } + }, + { + "ID": "14886", + "typeID": "Arrow", + "zOrder": "98", + "w": "1", + "h": "139", + "measuredW": "150", + "measuredH": "100", + "x": "863", + "y": "1653", + "properties": { + "color": "2848996", + "curvature": "-1", + "direction": "bottom", + "leftArrow": "false", + "rightArrow": "false", + "p0": { + "x": 0, + "y": 0 + }, + "p1": { + "x": 0.4438624012549725, + "y": -0.00008403832147459167 + }, + "p2": { + "x": 0, + "y": 139 + }, + "stroke": "dotted" + } + }, + { + "ID": "14887", + "typeID": "TextArea", + "zOrder": "99", + "w": "552", + "h": "124", + "measuredW": "200", + "measuredH": "140", + "x": "575", + "y": "1584" + }, + { + "ID": "14888", + "typeID": "Label", + "zOrder": "100", + "measuredW": "468", + "measuredH": "25", + "x": "604", + "y": "1604", + "properties": { + "size": "17", + "text": "For ecosystem and more, check other tracks involving Python" + } + }, + { + "ID": "14889", + "typeID": "__group__", + "zOrder": "101", + "measuredW": "229", + "measuredH": "44", + "w": "229", + "h": "44", + "x": "870", + "y": "1639", + "properties": { + "controlName": "ext_link:roadmap.sh/devops" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "229", + "h": "44", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "141", + "measuredH": "25", + "x": "44", + "y": "9", + "properties": { + "size": "17", + "text": "DevOps Roadmap" + } + } + ] + } + } + }, + { + "ID": "14890", + "typeID": "__group__", + "zOrder": "102", + "measuredW": "252", + "measuredH": "44", + "w": "252", + "h": "44", + "x": "604", + "y": "1639", + "properties": { + "controlName": "ext_link:roadmap.sh/backend" + }, + "children": { + "controls": { + "control": [ + { + "ID": "0", + "typeID": "TextArea", + "zOrder": "0", + "w": "252", + "h": "44", + "measuredW": "200", + "measuredH": "140", + "x": "0", + "y": "0", + "properties": { + "color": "16770457" + } + }, + { + "ID": "1", + "typeID": "Label", + "zOrder": "1", + "measuredW": "147", + "measuredH": "25", + "x": "52", + "y": "9", + "properties": { + "size": "17", + "text": "Backend Roadmap" + } + } + ] + } + } + }, + { + "ID": "14891", + "typeID": "Arrow", + "zOrder": "8", + "w": "1", + "h": "177", + "measuredW": "150", + "measuredH": "100", + "x": "859", + "y": "1474", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "p0": { + "x": 0, + "y": -0.03469933135352221 + }, + "p1": { + "x": 0.4604452230239244, + "y": 0.003676653605416393 + }, + "p2": { + "x": 0, + "y": 177.44974025524903 + } + } + }, + { + "ID": "14892", + "typeID": "Arrow", + "zOrder": "7", + "w": "1", + "h": "164", + "measuredW": "150", + "measuredH": "100", + "x": "1205", + "y": "1054", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0, + "y": 0 + }, + "p1": { + "x": 0.4604452230239243, + "y": 0.0036766536054163917 + }, + "p2": { + "x": 0, + "y": 164.29796919462592 + } + } + }, + { + "ID": "14893", + "typeID": "Arrow", + "zOrder": "6", + "w": "140", + "h": "3", + "measuredW": "150", + "measuredH": "100", + "x": "616", + "y": "1478", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": -0.3653808564997689, + "y": 2.0334298834904985 + }, + "p1": { + "x": 0.4604452230239242, + "y": 0.0036766536054163973 + }, + "p2": { + "x": 140, + "y": -0.5 + } + } + }, + { + "ID": "14894", + "typeID": "Arrow", + "zOrder": "5", + "w": "135", + "h": "32", + "measuredW": "150", + "measuredH": "100", + "x": "616", + "y": "1432", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": -0.3653808564997689, + "y": 0.03342988349049847 + }, + "p1": { + "x": 0.4200622685609743, + "y": -0.0756289390710124 + }, + "p2": { + "x": 134.55342339761137, + "y": 32.43053692131957 + } + } + }, + { + "ID": "14895", + "typeID": "Arrow", + "zOrder": "4", + "w": "134", + "h": "79", + "measuredW": "150", + "measuredH": "100", + "x": "615", + "y": "1382", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": -0.3653808564997689, + "y": 0.03342988349049847 + }, + "p1": { + "x": 0.4200622685609742, + "y": -0.07562893907101238 + }, + "p2": { + "x": 133.83651565076377, + "y": 78.99672142762438 + } + } + }, + { + "ID": "14896", + "typeID": "Arrow", + "zOrder": "3", + "w": "185", + "h": "119", + "measuredW": "150", + "measuredH": "100", + "x": "621", + "y": "1340", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": -0.3653808564997689, + "y": 0.03342988349049847 + }, + "p1": { + "x": 0.469829518506724, + "y": -0.12837852167583222 + }, + "p2": { + "x": 184.49447129673388, + "y": 119.27981368077667 + } + } + }, + { + "ID": "14897", + "typeID": "Arrow", + "zOrder": "2", + "w": "3", + "h": "759", + "measuredW": "150", + "measuredH": "100", + "x": "857", + "y": "706", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "p0": { + "x": 0, + "y": -0.03469933135352221 + }, + "p1": { + "x": 0.4604452230239244, + "y": 0.0036766536054163926 + }, + "p2": { + "x": 0, + "y": 759.3807619344086 + } + } + }, + { + "ID": "14899", + "typeID": "Arrow", + "zOrder": "0", + "w": "158", + "h": "62", + "measuredW": "150", + "measuredH": "100", + "x": "972", + "y": "1139", + "properties": { + "curvature": "0", + "leftArrow": "false", + "rightArrow": "false", + "color": "10027263", + "stroke": "dotted", + "p0": { + "x": 0.047263099007864184, + "y": 0.6533333333334213 + }, + "p1": { + "x": 0.6549769871651536, + "y": 0.17428100166851102 + }, + "p2": { + "x": 157.98689817887566, + "y": 62.80486195765479 + } + } } ] }, @@ -3800,10 +4113,10 @@ }, "branchID": "Master", "resourceID": "4BE92169-157F-4FC5-8E20-403CBCF7A6C6", - "mockupH": "1289", + "mockupH": "1659", "mockupW": "1164", "measuredW": "1379", - "measuredH": "1422", + "measuredH": "1792", "version": "1.0" }, "groupOffset": {