[{"data":1,"prerenderedAt":774},["ShallowReactive",2],{"i-kinnu:logo":3,"i-kinnu:origami-folding":8,"tile-technology-backend-development-coding-skills":12,"i-lucide:chevron-right":769,"i-lucide:menu":772},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,27,false,"\u003Cg fill=\"none\">\u003Cpath d=\"M0.046875 1.05555C0.046875 1.03541 0.048197 1.01579 0.0507438 0.996728C0.0987149 0.438619 0.586845 0 1.18194 0H25.4398C26.451 0 26.9575 1.171 26.2424 1.85585L15.7301 11.9243L1.31574 0.903476C1.17475 0.79568 1.01137 0.761884 0.859586 0.784111L26.2936 25.1441C27.0086 25.829 26.5022 27 25.4909 27H1.18194C0.555061 27 0.046875 26.5133 0.046875 25.9129V1.05555Z\" fill=\"currentColor\"/>\u003C/g>",{"left":4,"top":4,"width":9,"height":10,"rotate":4,"vFlip":6,"hFlip":6,"body":11},1000,236,"\u003Cg fill=\"none\">\u003Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n    d=\"M193.68 38.2238C195.994 38.2238 197.87 40.0989 197.87 42.412V231.812C197.87 234.125 195.994 236 193.68 236H4.19013C1.87603 236 2.02305e-07 234.125 0 231.812V42.412C-2.02305e-07 40.0989 1.87603 38.2238 4.19013 38.2238H193.68ZM111.76 89.0072C111.685 87.9474 110.572 87.2905 109.608 87.7376L96.8872 93.641C95.7786 94.1554 95.702 95.7016 96.7545 96.3225L101.579 99.167C94.7045 109.365 90.5733 122.892 90.5732 137.642C90.5733 154.323 95.8569 169.439 104.416 179.945C105.301 181.032 106.9 181.196 107.987 180.311C109.075 179.426 109.238 177.828 108.353 176.741C100.621 167.25 95.6522 153.305 95.6521 137.642C95.6522 123.661 99.6138 111.051 105.963 101.754L110.456 104.403C111.508 105.024 112.826 104.21 112.74 102.991L111.76 89.0072ZM9.63194 136.286C9.14864 136.286 8.75684 136.678 8.75684 137.161C8.7569 137.644 9.14868 138.035 9.63194 138.035H17.2161C17.6993 138.035 18.0912 137.644 18.0912 137.161C18.0912 136.678 17.6994 136.286 17.2161 136.286H9.63194ZM22.6813 136.286C22.198 136.286 21.8062 136.678 21.8062 137.161C21.8063 137.644 22.1981 138.035 22.6813 138.035H30.2655C30.7487 138.035 31.1406 137.644 31.1406 137.161C31.1406 136.678 30.7488 136.286 30.2655 136.286H22.6813ZM35.7464 136.286C35.2631 136.286 34.8713 136.678 34.8713 137.161C34.8713 137.644 35.2631 138.035 35.7464 138.035H44.4973C44.9805 138.035 45.3724 137.644 45.3724 137.161C45.3724 136.678 44.9806 136.286 44.4973 136.286H35.7464ZM49.9977 136.286C49.5144 136.286 49.1226 136.678 49.1226 137.161C49.1226 137.644 49.5144 138.035 49.9977 138.035H57.5819C58.0651 138.035 58.4569 137.644 58.457 137.161C58.457 136.678 58.0651 136.286 57.5819 136.286H49.9977ZM63.0783 136.286C62.595 136.286 62.2032 136.678 62.2032 137.161C62.2033 137.644 62.5951 138.035 63.0783 138.035H70.6625C71.1457 138.035 71.5375 137.644 71.5376 137.161C71.5376 136.678 71.1457 136.286 70.6625 136.286H63.0783ZM76.1277 136.286C75.6444 136.286 75.2526 136.678 75.2526 137.161C75.2527 137.644 75.6445 138.035 76.1277 138.035H83.7119C84.1951 138.035 84.5869 137.644 84.587 137.161C84.587 136.678 84.1951 136.286 83.7119 136.286H76.1277ZM102.266 136.286C101.782 136.286 101.39 136.678 101.39 137.161C101.391 137.644 101.782 138.035 102.266 138.035H109.85C110.333 138.035 110.725 137.644 110.725 137.161C110.725 136.678 110.333 136.286 109.85 136.286H102.266ZM115.338 136.286C114.855 136.286 114.463 136.678 114.463 137.161C114.463 137.644 114.855 138.035 115.338 138.035H122.923C123.406 138.035 123.798 137.644 123.798 137.161C123.798 136.678 123.406 136.286 122.923 136.286H115.338ZM128.403 136.286C127.92 136.286 127.528 136.678 127.528 137.161C127.528 137.644 127.92 138.035 128.403 138.035H135.988C136.471 138.035 136.863 137.644 136.863 137.161C136.863 136.678 136.471 136.286 135.988 136.286H128.403ZM141.468 136.286C140.985 136.286 140.593 136.678 140.593 137.161C140.593 137.644 140.985 138.035 141.468 138.035H149.053C149.536 138.035 149.928 137.644 149.928 137.161C149.928 136.678 149.536 136.286 149.053 136.286H141.468ZM154.541 136.286C154.058 136.286 153.666 136.678 153.666 137.161C153.666 137.644 154.058 138.035 154.541 138.035H162.125C162.609 138.035 163 137.644 163.001 137.161C163.001 136.678 162.609 136.286 162.125 136.286H154.541ZM167.614 136.286C167.131 136.286 166.739 136.678 166.739 137.161C166.739 137.644 167.131 138.035 167.614 138.035H175.198C175.681 138.035 176.073 137.644 176.073 137.161C176.073 136.678 175.681 136.286 175.198 136.286H167.614ZM180.671 136.286C180.188 136.286 179.796 136.678 179.796 137.161C179.796 137.644 180.188 138.035 180.671 138.035H188.255C188.739 138.035 189.13 137.644 189.131 137.161C189.131 136.678 188.739 136.286 188.255 136.286H180.671Z\"\n    fill=\"currentColor\" />\n  \u003Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n    d=\"M444.85 38.2277C447.164 38.2277 449.04 40.1028 449.04 42.4159V132.928C449.04 135.241 447.164 137.116 444.85 137.116H255.36C253.046 137.116 251.17 135.241 251.17 132.928V42.4159C251.17 40.1028 253.046 38.2277 255.36 38.2277H444.85ZM361.96 125.388C361.618 125.046 361.064 125.046 360.722 125.388L354.534 131.572C354.192 131.914 354.192 132.468 354.534 132.81C354.876 133.151 355.43 133.151 355.772 132.81L361.96 126.624C362.301 126.283 362.301 125.73 361.96 125.388ZM371.047 116.311C370.705 115.969 370.15 115.969 369.809 116.311L364.446 121.671C364.104 122.012 364.104 122.567 364.446 122.908C364.788 123.249 365.342 123.25 365.684 122.908L371.047 117.548C371.388 117.207 371.388 116.652 371.047 116.311ZM380.124 107.246C379.782 106.904 379.227 106.904 378.885 107.246L373.523 112.606C373.181 112.948 373.181 113.502 373.523 113.844C373.864 114.185 374.419 114.185 374.761 113.844L380.124 108.483C380.465 108.142 380.465 107.587 380.124 107.246ZM385.736 65.8841C385.891 64.6727 384.622 63.7845 383.536 64.3434L371.069 70.7636C370.124 71.2504 369.96 72.5334 370.752 73.2424L381.2 82.5938C382.11 83.4081 383.561 82.8672 383.717 81.6557L384.393 76.3725C391.143 77.1933 398.567 80.7709 404.771 86.9711C411.124 93.3213 414.726 100.952 415.43 107.827C415.573 109.221 416.819 110.236 418.214 110.093C419.609 109.95 420.624 108.703 420.481 107.309C419.644 99.1317 415.435 90.4514 408.362 83.3817C401.466 76.489 393.038 72.3185 385.038 71.338L385.736 65.8841ZM389.2 98.1733C388.859 97.8319 388.304 97.8318 387.962 98.1733L382.6 103.534C382.258 103.875 382.258 104.429 382.6 104.771C382.941 105.112 383.496 105.112 383.838 104.771L389.2 99.4108C389.542 99.0693 389.542 98.5149 389.2 98.1733ZM398.262 89.1047C397.92 88.7633 397.365 88.7632 397.024 89.1047L391.661 94.4649C391.319 94.8065 391.319 95.3608 391.661 95.7024C392.002 96.0436 392.557 96.0438 392.899 95.7024L398.262 90.3421C398.603 90.0007 398.603 89.4463 398.262 89.1047ZM416.431 70.9616C416.089 70.6202 415.534 70.6201 415.193 70.9616L409.83 76.3218C409.488 76.6634 409.488 77.2177 409.83 77.5592C410.172 77.9005 410.726 77.9007 411.068 77.5592L416.431 72.199C416.772 71.8575 416.772 71.3032 416.431 70.9616ZM425.508 61.891C425.166 61.5496 424.611 61.5495 424.27 61.891L418.907 67.2512C418.565 67.5928 418.565 68.1471 418.907 68.4887C419.249 68.8299 419.803 68.8301 420.145 68.4887L425.508 63.1284C425.849 62.787 425.849 62.2326 425.508 61.891ZM434.569 52.8146C434.227 52.4731 433.673 52.4731 433.331 52.8146L427.968 58.1748C427.626 58.5163 427.627 59.0706 427.968 59.4122C428.31 59.7534 428.864 59.7537 429.206 59.4122L434.569 54.052C434.91 53.7105 434.91 53.1562 434.569 52.8146ZM443.638 43.7479C443.296 43.4065 442.742 43.4064 442.4 43.7479L437.037 49.1081C436.695 49.4496 436.696 50.004 437.037 50.3455C437.379 50.6868 437.933 50.687 438.275 50.3455L443.638 44.9853C443.98 44.6438 443.979 44.0895 443.638 43.7479Z\"\n    fill=\"currentColor\" />\n  \u003Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n    d=\"M684.066 38.2277C687.798 38.2281 689.667 42.7391 687.027 45.3773L596.473 135.889C595.687 136.675 594.621 137.116 593.51 137.116H506.335C504.021 137.116 502.145 135.241 502.145 132.928V42.4159C502.145 40.1028 504.021 38.2277 506.335 38.2277H684.066ZM514.603 124.566C514.261 124.224 513.707 124.224 513.365 124.566L507.178 130.751C506.836 131.093 506.836 131.646 507.178 131.988C507.519 132.329 508.073 132.329 508.415 131.988L514.603 125.803C514.945 125.462 514.945 124.908 514.603 124.566ZM523.689 115.491C523.348 115.15 522.794 115.15 522.452 115.491L517.09 120.852C516.748 121.193 516.748 121.747 517.09 122.088C517.431 122.43 517.985 122.43 518.327 122.088L523.689 116.728C524.031 116.386 524.031 115.833 523.689 115.491ZM532.102 65.8295C530.707 65.6872 529.46 66.7017 529.318 68.0957C529.175 69.4896 530.189 70.7355 531.584 70.8787C538.463 71.5825 546.096 75.1826 552.45 81.5329C558.723 87.8037 562.312 95.3226 563.079 102.13L557.738 102.392C556.518 102.452 555.865 103.855 556.607 104.827L565.115 115.969C565.76 116.814 567.051 116.751 567.611 115.847L574.992 103.928C575.635 102.889 574.848 101.555 573.628 101.615L568.161 101.882C568.161 101.878 568.162 101.874 568.161 101.871C567.324 93.6931 563.114 85.0124 556.041 77.9425C548.968 70.873 540.283 66.6668 532.102 65.8295ZM532.766 106.421C532.425 106.079 531.871 106.079 531.529 106.421L526.166 111.781C525.825 112.123 525.825 112.676 526.166 113.018C526.508 113.359 527.062 113.359 527.403 113.018L532.766 107.657C533.108 107.316 533.108 106.762 532.766 106.421ZM541.843 97.3445C541.501 97.003 540.948 97.003 540.606 97.3445L535.243 102.705C534.901 103.046 534.902 103.6 535.243 103.941C535.585 104.283 536.139 104.283 536.48 103.941L541.843 98.5809C542.185 98.2393 542.185 97.686 541.843 97.3445ZM550.92 88.2778C550.578 87.9363 550.025 87.9363 549.683 88.2778L544.32 93.638C543.978 93.9796 543.978 94.5329 544.32 94.8745C544.662 95.2161 545.215 95.2161 545.557 94.8745L550.92 89.5142C551.262 89.1727 551.262 88.6193 550.92 88.2778ZM569.066 70.1405C568.724 69.799 568.17 69.7991 567.829 70.1405L562.466 75.5008C562.124 75.8423 562.124 76.3956 562.466 76.7372C562.808 77.0788 563.361 77.0788 563.703 76.7372L569.066 71.377C569.407 71.0354 569.407 70.4821 569.066 70.1405ZM578.143 61.0699C577.801 60.7284 577.247 60.7285 576.906 61.0699L571.543 66.4302C571.201 66.7717 571.201 67.3251 571.543 67.6666C571.885 68.0082 572.438 68.0082 572.78 67.6666L578.143 62.3064C578.484 61.9648 578.484 61.4115 578.143 61.0699ZM587.219 51.9896C586.878 51.6481 586.324 51.6481 585.982 51.9896L580.62 57.3498C580.278 57.6914 580.278 58.2447 580.62 58.5863C580.961 58.9279 581.515 58.9279 581.857 58.5863L587.219 53.2261C587.561 52.8845 587.561 52.3312 587.219 51.9896ZM596.288 42.9249C595.947 42.5833 595.392 42.5833 595.05 42.9249L589.689 48.2851C589.347 48.6267 589.347 49.18 589.689 49.5216C590.03 49.863 590.584 49.8631 590.926 49.5216L596.288 44.1613C596.63 43.8198 596.63 43.2664 596.288 42.9249Z\"\n    fill=\"currentColor\" />\n  \u003Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n    d=\"M850.814 38.2277C854.547 38.2281 856.416 42.739 853.777 45.3773L763.223 135.889C762.437 136.674 761.371 137.116 760.26 137.116H673.176C669.443 137.116 667.574 132.605 670.213 129.966L760.768 39.4544C761.554 38.6692 762.62 38.2277 763.731 38.2277H850.814ZM761.338 121.8C760.855 121.8 760.463 122.191 760.463 122.674V131.13H762.213V122.674C762.213 122.191 761.821 121.8 761.338 121.8ZM761.338 108.971C760.855 108.971 760.463 109.363 760.463 109.846V118.301H762.213V109.846C762.213 109.363 761.821 108.971 761.338 108.971ZM761.338 96.1402C760.855 96.1406 760.463 96.5321 760.463 97.0149V105.47H762.213V97.0149C762.213 96.532 761.821 96.1404 761.338 96.1402ZM782.263 71.887C781.043 71.951 780.395 73.3571 781.139 74.3257L784.474 78.6631C779.115 82.951 771.242 85.7443 762.35 85.7444C753.366 85.7442 745.421 82.8944 740.059 78.5305C738.972 77.6461 737.373 77.8099 736.488 78.8961C735.602 79.983 735.766 81.582 736.853 82.467C743.231 87.6574 752.348 90.8207 762.35 90.8209C772.209 90.8208 781.205 87.746 787.568 82.6884L790.833 86.9341C791.577 87.9025 793.103 87.6391 793.479 86.4767L797.791 73.138C798.118 72.127 797.33 71.1017 796.268 71.1566L782.263 71.887ZM761.338 70.4847C760.855 70.4851 760.463 70.8767 760.463 71.3594V79.8147H762.213V71.3594C762.213 70.8766 761.821 70.485 761.338 70.4847ZM761.338 57.656C760.855 57.6564 760.463 58.048 760.463 58.5307V66.986H762.213V58.5307C762.213 58.0479 761.821 57.6563 761.338 57.656ZM761.338 44.8293C760.855 44.8297 760.463 45.2212 760.463 45.704V54.1592H762.213V45.704C762.213 45.2211 761.821 44.8295 761.338 44.8293Z\"\n    fill=\"currentColor\" />\n  \u003Cpath\n    d=\"M995.759 38.2277C999.53 38.228 1001.42 42.5171 998.752 45.0253L959.55 81.9005L905.796 41.5363C905.271 41.1418 904.662 41.0182 904.096 41.0994L997.485 130.319C1000.15 132.828 998.262 137.116 994.491 137.116H905.298C902.96 137.116 901.065 135.333 901.065 133.134V42.0941C901.065 42.0204 901.07 41.9483 901.079 41.8786C901.258 39.8345 903.079 38.2277 905.298 38.2277H995.759Z\"\n    fill=\"currentColor\" />\n  \u003Cpath\n    d=\"M505.873 0C506.657 4.57042e-05 507.307 0.195499 507.823 0.587023C508.338 0.969046 508.596 1.53802 508.596 2.29251C508.596 2.76034 508.467 3.19015 508.209 3.58162C507.951 3.96344 507.497 4.26401 506.848 4.48361V4.54114C507.65 4.67487 508.205 4.96191 508.51 5.4012C508.816 5.83087 508.969 6.31772 508.969 6.86193C508.969 7.74056 508.672 8.41851 508.08 8.89604C507.497 9.38304 506.733 9.62731 505.787 9.62738C504.861 9.62738 504.158 9.42172 503.68 9.0111C503.212 8.60054 502.935 8.08005 502.849 7.44993L503.881 7.10571L503.924 7.24028C504.035 7.54934 504.211 7.82925 504.454 8.07986C504.731 8.36635 505.166 8.50986 505.758 8.50989C506.465 8.50989 506.943 8.32772 507.191 7.9648C507.449 7.6019 507.579 7.20078 507.579 6.7615C507.579 6.2173 507.378 5.80683 506.977 5.52992C506.585 5.25295 505.93 5.10026 505.013 5.07161V4.15402C505.901 4.12537 506.489 3.92484 506.776 3.55237C507.062 3.18009 507.206 2.82242 507.206 2.47876C507.206 1.62801 506.752 1.17539 505.845 1.12237L505.658 1.11749C505.467 1.11752 505.242 1.14605 504.985 1.2033C504.736 1.25105 504.511 1.3274 504.31 1.43245L504.081 2.56457L503.05 2.44951L503.322 0.687461C503.666 0.49653 504.068 0.33454 504.526 0.200875C504.985 0.0671945 505.434 0 505.873 0Z\"\n    fill=\"currentColor\" />\n  \u003Cpath\n    d=\"M905.727 2.30616L904.638 2.4066L904.466 1.26083H901.428V3.72497C901.533 3.71544 901.643 3.71034 901.757 3.71034H902.086C902.755 3.71034 903.386 3.78668 903.979 3.93949C904.58 4.09229 905.068 4.38363 905.44 4.8132C905.822 5.23335 906.014 5.84949 906.014 6.66106C906.014 7.64468 905.722 8.38068 905.14 8.86776C904.557 9.36434 903.783 9.6127 902.818 9.61275C901.91 9.61275 901.213 9.40711 900.725 8.99648C900.248 8.59544 899.96 8.08007 899.865 7.44993L900.911 7.10571C901.007 7.49723 901.203 7.8271 901.499 8.09449C901.795 8.37131 902.211 8.50985 902.746 8.50989C903.395 8.50989 903.869 8.33787 904.165 7.99405C904.461 7.65981 904.609 7.22507 904.609 6.69031C904.609 5.87861 904.337 5.3625 903.792 5.14279C903.248 4.91361 902.612 4.79958 901.886 4.79955C901.695 4.79955 901.489 4.80365 901.27 4.8132C901.059 4.82275 900.854 4.83701 900.653 4.85611L900.224 4.44071V0.143343H905.569L905.727 2.30616Z\"\n    fill=\"currentColor\" />\n  \u003Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n    d=\"M765.49 6.04576H766.966L766.837 7.14862H765.49V9.48404H764.185V7.14862H759.857L759.713 6.04576L762.909 0.143343H765.49V6.04576ZM760.96 6.04576H764.185V1.26083H763.541L760.96 6.04576Z\"\n    fill=\"currentColor\" />\n  \u003Cpath d=\"M4.80573 6.47481H6.41154V7.60693H1.81068V6.47481H3.50235V1.27546H1.81068V0.143343H4.80573V6.47481Z\"\n    fill=\"currentColor\" />\n  \u003Cpath\n    d=\"M254.359 0C255.353 0 256.055 0.239186 256.466 0.716715C256.877 1.18447 257.083 1.68072 257.083 2.20573C257.083 2.85516 256.849 3.44346 256.38 3.96875C255.912 4.49397 255.348 4.96638 254.689 5.38657C254.039 5.79717 253.437 6.15968 252.883 6.47481H256.423L256.538 5.42948L257.599 5.51529L257.426 7.60693H251.407L251.292 6.58987C252.582 5.73032 253.638 4.98523 254.46 4.35489C255.281 3.71509 255.693 3.05632 255.693 2.37832C255.693 1.53787 255.166 1.11749 254.115 1.12237L254.115 1.11749C253.924 1.11754 253.695 1.14604 253.427 1.2033C253.16 1.25104 252.916 1.32238 252.697 1.41783L252.467 2.47876L251.45 2.3637L251.707 0.60165C252.118 0.401088 252.563 0.253475 253.041 0.15797C253.519 0.0529708 253.958 1.99446e-05 254.359 0Z\"\n    fill=\"currentColor\" />\u003C/g>",{"tile":13,"orbsWithOnlyMarkdownPages":290},{"id":14,"data":15,"type":16,"maxContentLevel":19,"version":20,"orbs":21},"dd86a81c-1bbe-4939-b928-20fd4e7a9d25",{"type":16,"title":17,"tagline":18},9,"Coding skills","From syntax to loops",3,2,[22,118,235],{"id":23,"data":24,"type":20,"version":26,"maxContentLevel":19,"pages":27},"21b91eb4-047e-4137-b164-9287fd44872f",{"type":20,"title":25},"Introduction to Coding",1,[28,65,91],{"id":29,"data":30,"type":26,"maxContentLevel":19,"version":26,"reviews":34},"7e270fc8-2c86-4b0c-b310-0f4fcfa20762",{"type":26,"title":31,"contentRole":20,"markdownContent":32,"audioMediaId":33},"What is coding?","Whatever a Backend Developer is working on, one thing is central to everything they do, and that's the ability to code. \n\n ![Graph](image://0bbb3aa0-c1fa-4252-a3f2-0d666e7fb1f4 \"Computer code. Image: Lionel Rowe, CC0/Public Domain, \u003Chttps://creativecommons.org/share-your-work/public-domain/cc0/> via Wikimedia Commons\")\n\nCoding is the process of instructing a computer to perform specific tasks. These instructions are delivered through a terminal, also known as a command line interface (CLI) – you can think of it like a messaging app that lets you talk to your computer directly. \n\nA terminal is available on any normal laptop, but most of us never have a reason to use it. We interact with our computer using icons and menus, otherwise known as the graphical user interface (GUI). But the GUI can be too limited for the needs of a Backend Developer. They need a terminal, because it lets them deliver specific, code-based commands. \n\nWhen writing lots of code at once, a developer can also use an Integrated Development Environment (IDE). This is similar to a word processor, but tailored specifically for writing code. It’s easier to use an IDE than it is to use a terminal directly.\n\n","8f5284d2-e255-4fc9-849f-7cb507c5bf1c",[35,46,54],{"id":36,"data":37,"type":38,"version":26,"maxContentLevel":19},"60d1bfeb-4249-4de7-bec8-07174d66d0fe",{"type":38,"reviewType":39,"spacingBehaviour":26,"clozeQuestion":40,"clozeWords":44},11,4,[41,42,43],"A computer's icons and menus are otherwise known as the graphical user interface (GUI).","The icons and menus on a computer constitute what is known as the graphical user interface (GUI).","The term 'graphical user interface' (GUI) refers to the icons and menus on a computer.",[45],"graphical user interface",{"id":47,"data":48,"type":38,"version":26,"maxContentLevel":19},"89f21bd6-44ce-4e4a-ac7b-127842a10456",{"type":38,"reviewType":26,"spacingBehaviour":26,"activeRecallQuestion":49,"activeRecallAnswers":52},[50,51],"What piece of software is similar to a word processor, but specifically tailored for writing code?","What is the specialized software, which is similar to a word processor, but is used specifically for coding?",[53],"Integrated Development Environment (IDE)",{"id":55,"data":56,"type":38,"version":26,"maxContentLevel":19},"f59e9058-1e5b-4e46-a139-ec9c317da285",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":57,"multiChoiceCorrect":59,"multiChoiceIncorrect":61},[58],"Developers deliver code through a command line interface (CLI), which is otherwise known as what?",[60],"Terminal",[62,63,64],"Monitor","GUI","IDE",{"id":66,"data":67,"type":26,"maxContentLevel":19,"version":26,"reviews":71},"8c60bf87-81d5-4c90-b439-595cb189dd5e",{"type":26,"title":68,"contentRole":20,"markdownContent":69,"audioMediaId":70},"Choosing a language","Backend Developers need a strong understanding of at least one programming language. However, they often use multiple languages over the course of their professional career. This not only broadens their skill set, but also makes them more versatile and adaptable to new projects and requirements.\n\nFor anyone new to backend development, it's a good idea to start with a beginner-friendly programming language such as JavaScript. These languages are not only easier to learn, but also have large communities and extensive resources that provide support and guidance along the way. \n\nAnother example is Python, which is becoming the go to language for Machine Learning and Deep Learning. Ruby is another common language, known for its focus on developer happiness and productivity.\n\nWhen choosing a language, it's important to consider the type of project, the size of the language's community, and how much you enjoy coding in it. If a backend developer has a dream employer in mind, they can also check which languages they prefer to work with. For example, Facebook famously uses Hack, a programming language they created themselves.","83ddeb10-b211-4896-bf9d-285417e72929",[72,83],{"id":73,"data":74,"type":38,"version":26,"maxContentLevel":19},"09746a65-29a6-4403-8422-9b807ae7de61",{"type":38,"reviewType":26,"spacingBehaviour":26,"activeRecallQuestion":75,"activeRecallAnswers":79},[76,77,78],"What are three beginner-friendly programming languages?","Can you name three programming languages that are suitable for beginners?","Which three languages would you recommend for someone just starting out in backend development?",[80,81,82],"JavaScript","Python","Ruby",{"id":84,"data":85,"type":38,"version":26,"maxContentLevel":19},"55a79706-6802-47e8-86b4-65267b510128",{"type":38,"reviewType":26,"spacingBehaviour":26,"activeRecallQuestion":86,"activeRecallAnswers":90},[87,88,89],"A programming language which is becoming the go to for Machine Learning and Deep Learning is:","Which programming language is increasingly being used for Machine Learning and Deep Learning?","What is the programming language that is gaining popularity in the fields of Machine Learning and Deep Learning?",[81],{"id":92,"data":93,"type":26,"maxContentLevel":19,"version":26,"reviews":97},"4b395b71-3072-4e79-b23d-75da1ac3087a",{"type":26,"title":94,"contentRole":20,"markdownContent":95,"audioMediaId":96},"Syntax","Every programming language has its own set of syntax – that's a set of rules that define how the language should be structured. Think of it like grammar in human language: “Dinner? ready is” doesn’t make sense. In the exact same way, a programming language won't make sense to a computer if syntax isn't used correctly.\n\nLet’s use Python as an example. This language’s syntax dictates that every parenthesis has a pair. This code would lead to an error message – *print(\"Hello World!\"* – because the parenthesis is missing its pair. \n\nBut if this code was rewritten with the correct syntax – *print(\"Hello World!\")* – it would make sense to the computer, and the words **Hello World!** would appear in the terminal window.\n\n ![Graph](image://56331780-4c90-4fcc-82cb-03b4ca10e968 \"Hello World. Image: Shaddim, Public domain, via Wikimedia Commons\")\n\nRemember, this example is specific to Python. Other languages have different sets of rules.\n\n","6b97853f-bcd4-470b-a472-3ca9cb6b50f1",[98,108],{"id":99,"data":100,"type":38,"version":26,"maxContentLevel":19},"6ad8d6e3-502c-4414-b800-a57efee073de",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":101,"multiChoiceCorrect":103,"multiChoiceIncorrect":104},[102],"The set of rules that define how a programming language should be structured is known as:",[94],[105,106,107],"Grammar","Semantics","Punctuation",{"id":109,"data":110,"type":38,"version":26,"maxContentLevel":19},"e2d96451-448e-4a5b-92a3-616118aee6f9",{"type":38,"reviewType":39,"spacingBehaviour":26,"clozeQuestion":111,"clozeWords":116},[112,113,114,115],"In Python, every parenthesis must have a pair, otherwise it leads to an error message.","If a parenthesis in Python doesn't have a pair, it will result in an error message.","Python requires every parenthesis to have a pair, or else an error message will occur.","An error message will appear in Python if a parenthesis is missing its pair.",[117],"pair",{"id":119,"data":120,"type":20,"version":20,"maxContentLevel":19,"pages":122},"a0b506fd-d0a1-4a3a-8b38-f634ff12d3f8",{"type":20,"title":121},"Core Programming Concepts",[123,173,199],{"id":124,"data":125,"type":26,"maxContentLevel":19,"version":20,"reviews":129},"3938d4b1-2e3a-49da-885e-9b7eb8e0e155",{"type":26,"title":126,"contentRole":20,"markdownContent":127,"audioMediaId":128},"Variables","Just like syntax, variables are an important part of coding. A variable is a kind of placeholder – you can think of it like a sign that represents a piece of data.\n\nFor example, a developer might use 'pi' as a placeholder for a complicated number like '3.14159'. After setting this variable, the developer can use 'pi' while writing their code, and the computer will know that the letters represent the number. This is a lot more efficient than typing the number every time, especially if it appears in the code on multiple occasions.\n\nVariables can represent many types of data, including strings of text (\"Hello World!\"), integers (1, 2, 3), floating point numbers (3.14, 10.2), or booleans (true, false).\n\nUsing Python as an example, a developer could set a new variable – *b = \"Banana\"*. They could then give the computer a command – *print(b)* – and the word **Banana** would appear in the terminal window.","635026e8-c9bb-4146-a5bd-3078a93b308e",[130,149,162],{"id":131,"data":132,"type":38,"version":26,"maxContentLevel":19},"11c4a821-10e1-4219-ab30-cf082a03e369",{"type":38,"reviewType":133,"spacingBehaviour":26,"matchPairsQuestion":134,"matchPairsPairs":136},6,[135],"Match the types of data:",[137,140,143,146],{"left":138,"right":139,"direction":19},"String","\"Hello!\"",{"left":141,"right":142,"direction":19},"Integer","57",{"left":144,"right":145,"direction":19},"Floating point number","12.5",{"left":147,"right":148,"direction":19},"Boolean","true",{"id":150,"data":151,"type":38,"version":26,"maxContentLevel":19},"785855f9-5f1e-402f-be11-977a5701f15e",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":152,"multiChoiceCorrect":156,"multiChoiceIncorrect":158},[153,154,155],"After setting a variable (b = \"banana\") what Python command could be used to print the word \"banana\"?","What would be the Python command to display the word \"banana\" after it has been assigned to a variable (b = \"banana\")?","If a developer has assigned the word \"banana\" to a variable (b = \"banana\"), what Python command would they use to print this word?",[157],"print(b)",[159,160,161],"(print)b","(print b)","()printb",{"id":163,"data":164,"type":38,"version":26,"maxContentLevel":19},"bc6b0f89-102a-4e1a-995a-b6a2ce8ef551",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":165,"multiChoiceCorrect":167,"multiChoiceIncorrect":169},[166],"In coding, a placeholder that represents a piece of data is known as:",[168],"A variable",[170,171,172],"A function","An array","An object",{"id":174,"data":175,"type":26,"maxContentLevel":19,"version":20,"reviews":179},"6f15bfec-d018-42d5-9df3-c90ec11e3296",{"type":26,"title":176,"contentRole":20,"markdownContent":177,"audioMediaId":178},"Data structures","Variables become even more powerful when you start incorporating different data structures – these are specialized formats that a developer can use to store a number of variables at once.\n\nLists are ordered collections of items, which on Python, might look something like this: *fruits = \\[\"apple\", \"banana\", \"orange\", \"pear\"\\]*. If this list was set up for a grocery store, the computer could track all the fruits available, and share this information with a user. For example, the computer could print the entire list, or just one specific item.\n\nOften programming languages will use zero to represent the first element in an array; this is known as a zero-based index. The command *print(fruits\\[0\\])* would get the computer to print the first item: **apple**. The command *print(fruits\\[1\\])* would print the second item, **banana**, and so on.\n\nDictionaries, meanwhile, store data in key-value pairs, like *\"fruit\": \"banana\"*, *\"price\": 0.45*, and *\"units\": 126*. After a dictionary is set up, the computer can start retrieving data from it, checking things like a store's current price for a single banana, and how many bananas they currently have in stock. Again, this information could be shared with users, and form a crucial part of an online grocery store's backend.","7d1e9438-1f6d-4c1f-ac43-960f6f126bf3",[180,191],{"id":181,"data":182,"type":38,"version":26,"maxContentLevel":19},"2d99159a-3315-44da-afb1-ded9c6366d74",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":183,"multiChoiceCorrect":185,"multiChoiceIncorrect":187},[184],"In Python, how do dictionaries store data?",[186],"Key-value pairs",[188,189,190],"Key-variable pairs","Key-value triplets","Key-variable triplets",{"id":192,"data":193,"type":38,"version":26,"maxContentLevel":19},"ec942f67-6d1a-418b-a9a2-d62dd4bac388",{"type":38,"reviewType":39,"spacingBehaviour":26,"clozeQuestion":194,"clozeWords":197},[195,196],"Programming languages often use zero to represent the first element in a list. This is known as a zero-based index.","A zero-based index, where zero signifies the first element in a list, is commonly used in programming languages.",[198],"zero-based index",{"id":200,"data":201,"type":26,"maxContentLevel":19,"version":20,"reviews":205},"b49360f5-ce96-483d-8b4b-e411c4b5d640",{"type":26,"title":202,"contentRole":20,"markdownContent":203,"audioMediaId":204},"Conditionals","Backend development really starts cooking when you incorporate conditional statements. These use commands like *if* and *else* to let a computer make branching decisions, often in combination with comparison operators like equal to (==), not equal to (!=), greater than (&gt;), and less than (&lt;). Using Python, we can see an example of this:\n\n*if banana\\[\"units\"\\] &gt; 0*\n\n*print(\"Would you like to buy a banana?\")*\n\n*else:*\n\n*print(\"Bananas out of stock.\")*\n\nConditional statements can also be used to check things like a user's password. *If* they enter their password correctly, they can access to their profile, *else* a message is printed: **Access to bananas denied**.\n\n![Graph](image://163c2c43-14c6-4c95-9a4e-29faaff81010 \"If-else flowchart. Image: Snubcube, CC BY-SA 3.0 \u003Chttp://creativecommons.org/licenses/by-sa/3.0/>, via Wikimedia Commons\")","3a526791-35df-4d8a-b47a-53a8e74f0ae5",[206,224],{"id":207,"data":208,"type":38,"version":26,"maxContentLevel":19},"07e70f4b-6c7c-4899-a090-bb060465073f",{"type":38,"reviewType":133,"spacingBehaviour":26,"matchPairsQuestion":209,"matchPairsPairs":211},[210],"Match the comparison operators:",[212,215,218,221],{"left":213,"right":214,"direction":19},"Equal to","==",{"left":216,"right":217,"direction":19},"Not equal to","!=",{"left":219,"right":220,"direction":19},"Greater than",">",{"left":222,"right":223,"direction":19},"Less than","\u003C",{"id":225,"data":226,"type":38,"version":26,"maxContentLevel":19},"d641482e-f837-4695-9f5b-e71fefd846fa",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":227,"multiChoiceCorrect":229,"multiChoiceIncorrect":231},[228],"What kind of statements allow a computer to make branching decisions?",[230],"Conditional statements",[232,233,234],"Loop statements","Function statements","Variable statements",{"id":236,"data":237,"type":20,"version":26,"maxContentLevel":19,"pages":239},"e171dc8f-2003-42b8-bc28-a35e3f521117",{"type":20,"title":238},"Advanced Programming Techniques",[240,256],{"id":241,"data":242,"type":26,"maxContentLevel":19,"version":26,"reviews":246},"7cc4c223-5957-47db-b5a2-27a817f074a4",{"type":26,"title":243,"contentRole":20,"markdownContent":244,"audioMediaId":245},"Loops","Loops let developers write a piece of code once, then have it executed over and over again until a given condition has been met. This can save a lot of time, help to automate repetitive tasks, and provide a method for interpreting lots of structured data.\n\nFor example, you might have a list for every aisle in a gardening store. Each list contains all the products which can be found on that particular aisle: *Aisle1 = [\"pots\", “baskets”, \"troughs\"]*, *Aisle2 = [\"rakes\", \"shovels\", \"shears\"]*, and so on.\n\nA user might want to find out which aisle has watering cans. Instead of manually searching for the “watering cans” variable in each list individually, a loop could be used to automatically check them one by one. When it finds the variable it’s looking for, it stops searching and prints: **You’ll find watering cans in Aisle 4.**","14dae5b8-1131-47b9-9e1f-c56c33ea4e75",[247],{"id":248,"data":249,"type":38,"version":26,"maxContentLevel":19},"1fb3a9e3-f3bd-4cef-a752-08f61f9ae601",{"type":38,"reviewType":26,"spacingBehaviour":26,"activeRecallQuestion":250,"activeRecallAnswers":254},[251,252,253],"What is the term for a piece of code that is executed repeatedly until a given condition is met?","What do you call a piece of code that continues to run until a specific condition has been fulfilled?","Can you name the type of code that repeatedly executes until a particular condition is achieved?",[255],"Loop",{"id":257,"data":258,"type":26,"maxContentLevel":19,"version":26,"reviews":262},"ab4e9579-c441-42f2-bfa5-36ffd08c975c",{"type":26,"title":259,"contentRole":20,"markdownContent":260,"audioMediaId":261},"Functions","Functions are pre-packaged sets of instructions that developers can define and reuse in their code. Basically, a developer can write a complicated block of code, give it a name, and then call that block when they need it. \n\nImagine you have a clothing store, and you want to offer a deal to every customer who happens to buy a tophat. Instead of writing the same code to check for tophats every single time a customer checks out, you can create a block of code which you define (‘def’) as **tophat_deal**:\n\n*def tophat_deal:*\n\n*if \"top hat\" in customer.cart*\n\n*print(\"Congratulations!\")*\n\n*else:*\n\n*print(\"Are you ready to pay?\")*\n\nInstead of running this entire block of code whenever a customer checks out, a developer could call the **tophat_deal** function, which performs all the steps automatically. Functions save time, and make a developer’s code more organized and easy to maintain.","e2fc6ba8-b0b8-490b-850a-f75071bb34f2",[263,280],{"id":264,"data":265,"type":38,"version":26,"maxContentLevel":19},"6be140de-8e99-4dbf-b24d-4a046bb1ffdd",{"type":38,"reviewType":133,"spacingBehaviour":26,"matchPairsQuestion":266,"matchPairsPairs":268},[267],"Match the coding term with its definition:",[269,272,275,277],{"left":270,"right":271,"direction":19},"Function","Resuable block of code",{"left":273,"right":274,"direction":19},"Variable","Placeholder for data",{"left":94,"right":276,"direction":19},"Rules for a language",{"left":278,"right":279,"direction":19},"List","Ordered collection of items",{"id":281,"data":282,"type":38,"version":26,"maxContentLevel":19},"f093bb0e-ab99-4ae7-87ab-4b4c1cdf1392",{"type":38,"reviewType":19,"spacingBehaviour":26,"multiChoiceQuestion":283,"multiChoiceCorrect":285,"multiChoiceIncorrect":286},[284],"Blocks of code, which developers are able to define and reuse, are called what?",[259],[287,288,289],"Procedures","Formats","Packages",[291,420,643],{"id":23,"data":24,"type":20,"version":26,"maxContentLevel":19,"pages":292},[293,335,362],{"id":29,"data":30,"type":26,"maxContentLevel":19,"version":26,"reviews":34,"parsed":294},{"data":295,"body":298,"toc":333},{"title":296,"description":297},"","Whatever a Backend Developer is working on, one thing is central to everything they do, and that's the ability to code.",{"type":299,"children":300},"root",[301,308,318,323,328],{"type":302,"tag":303,"props":304,"children":305},"element","p",{},[306],{"type":307,"value":297},"text",{"type":302,"tag":303,"props":309,"children":310},{},[311],{"type":302,"tag":312,"props":313,"children":317},"img",{"alt":314,"src":315,"title":316},"Graph","image://0bbb3aa0-c1fa-4252-a3f2-0d666e7fb1f4","Computer code. Image: Lionel Rowe, CC0/Public Domain, \u003Chttps://creativecommons.org/share-your-work/public-domain/cc0/> via Wikimedia Commons",[],{"type":302,"tag":303,"props":319,"children":320},{},[321],{"type":307,"value":322},"Coding is the process of instructing a computer to perform specific tasks. These instructions are delivered through a terminal, also known as a command line interface (CLI) – you can think of it like a messaging app that lets you talk to your computer directly.",{"type":302,"tag":303,"props":324,"children":325},{},[326],{"type":307,"value":327},"A terminal is available on any normal laptop, but most of us never have a reason to use it. We interact with our computer using icons and menus, otherwise known as the graphical user interface (GUI). But the GUI can be too limited for the needs of a Backend Developer. They need a terminal, because it lets them deliver specific, code-based commands.",{"type":302,"tag":303,"props":329,"children":330},{},[331],{"type":307,"value":332},"When writing lots of code at once, a developer can also use an Integrated Development Environment (IDE). This is similar to a word processor, but tailored specifically for writing code. It’s easier to use an IDE than it is to use a terminal directly.",{"title":296,"searchDepth":20,"depth":20,"links":334},[],{"id":66,"data":67,"type":26,"maxContentLevel":19,"version":26,"reviews":71,"parsed":336},{"data":337,"body":339,"toc":360},{"title":296,"description":338},"Backend Developers need a strong understanding of at least one programming language. However, they often use multiple languages over the course of their professional career. This not only broadens their skill set, but also makes them more versatile and adaptable to new projects and requirements.",{"type":299,"children":340},[341,345,350,355],{"type":302,"tag":303,"props":342,"children":343},{},[344],{"type":307,"value":338},{"type":302,"tag":303,"props":346,"children":347},{},[348],{"type":307,"value":349},"For anyone new to backend development, it's a good idea to start with a beginner-friendly programming language such as JavaScript. These languages are not only easier to learn, but also have large communities and extensive resources that provide support and guidance along the way.",{"type":302,"tag":303,"props":351,"children":352},{},[353],{"type":307,"value":354},"Another example is Python, which is becoming the go to language for Machine Learning and Deep Learning. Ruby is another common language, known for its focus on developer happiness and productivity.",{"type":302,"tag":303,"props":356,"children":357},{},[358],{"type":307,"value":359},"When choosing a language, it's important to consider the type of project, the size of the language's community, and how much you enjoy coding in it. If a backend developer has a dream employer in mind, they can also check which languages they prefer to work with. For example, Facebook famously uses Hack, a programming language they created themselves.",{"title":296,"searchDepth":20,"depth":20,"links":361},[],{"id":92,"data":93,"type":26,"maxContentLevel":19,"version":26,"reviews":97,"parsed":363},{"data":364,"body":366,"toc":418},{"title":296,"description":365},"Every programming language has its own set of syntax – that's a set of rules that define how the language should be structured. Think of it like grammar in human language: “Dinner? ready is” doesn’t make sense. In the exact same way, a programming language won't make sense to a computer if syntax isn't used correctly.",{"type":299,"children":367},[368,372,385,405,413],{"type":302,"tag":303,"props":369,"children":370},{},[371],{"type":307,"value":365},{"type":302,"tag":303,"props":373,"children":374},{},[375,377,383],{"type":307,"value":376},"Let’s use Python as an example. This language’s syntax dictates that every parenthesis has a pair. This code would lead to an error message – ",{"type":302,"tag":378,"props":379,"children":380},"em",{},[381],{"type":307,"value":382},"print(\"Hello World!\"",{"type":307,"value":384}," – because the parenthesis is missing its pair.",{"type":302,"tag":303,"props":386,"children":387},{},[388,390,395,397,403],{"type":307,"value":389},"But if this code was rewritten with the correct syntax – ",{"type":302,"tag":378,"props":391,"children":392},{},[393],{"type":307,"value":394},"print(\"Hello World!\")",{"type":307,"value":396}," – it would make sense to the computer, and the words ",{"type":302,"tag":398,"props":399,"children":400},"strong",{},[401],{"type":307,"value":402},"Hello World!",{"type":307,"value":404}," would appear in the terminal window.",{"type":302,"tag":303,"props":406,"children":407},{},[408],{"type":302,"tag":312,"props":409,"children":412},{"alt":314,"src":410,"title":411},"image://56331780-4c90-4fcc-82cb-03b4ca10e968","Hello World. Image: Shaddim, Public domain, via Wikimedia Commons",[],{"type":302,"tag":303,"props":414,"children":415},{},[416],{"type":307,"value":417},"Remember, this example is specific to Python. Other languages have different sets of rules.",{"title":296,"searchDepth":20,"depth":20,"links":419},[],{"id":119,"data":120,"type":20,"version":20,"maxContentLevel":19,"pages":421},[422,468,551],{"id":124,"data":125,"type":26,"maxContentLevel":19,"version":20,"reviews":129,"parsed":423},{"data":424,"body":426,"toc":466},{"title":296,"description":425},"Just like syntax, variables are an important part of coding. A variable is a kind of placeholder – you can think of it like a sign that represents a piece of data.",{"type":299,"children":427},[428,432,437,442],{"type":302,"tag":303,"props":429,"children":430},{},[431],{"type":307,"value":425},{"type":302,"tag":303,"props":433,"children":434},{},[435],{"type":307,"value":436},"For example, a developer might use 'pi' as a placeholder for a complicated number like '3.14159'. After setting this variable, the developer can use 'pi' while writing their code, and the computer will know that the letters represent the number. This is a lot more efficient than typing the number every time, especially if it appears in the code on multiple occasions.",{"type":302,"tag":303,"props":438,"children":439},{},[440],{"type":307,"value":441},"Variables can represent many types of data, including strings of text (\"Hello World!\"), integers (1, 2, 3), floating point numbers (3.14, 10.2), or booleans (true, false).",{"type":302,"tag":303,"props":443,"children":444},{},[445,447,452,454,458,460,465],{"type":307,"value":446},"Using Python as an example, a developer could set a new variable – ",{"type":302,"tag":378,"props":448,"children":449},{},[450],{"type":307,"value":451},"b = \"Banana\"",{"type":307,"value":453},". They could then give the computer a command – ",{"type":302,"tag":378,"props":455,"children":456},{},[457],{"type":307,"value":157},{"type":307,"value":459}," – and the word ",{"type":302,"tag":398,"props":461,"children":462},{},[463],{"type":307,"value":464},"Banana",{"type":307,"value":404},{"title":296,"searchDepth":20,"depth":20,"links":467},[],{"id":174,"data":175,"type":26,"maxContentLevel":19,"version":20,"reviews":179,"parsed":469},{"data":470,"body":472,"toc":549},{"title":296,"description":471},"Variables become even more powerful when you start incorporating different data structures – these are specialized formats that a developer can use to store a number of variables at once.",{"type":299,"children":473},[474,478,490,523],{"type":302,"tag":303,"props":475,"children":476},{},[477],{"type":307,"value":471},{"type":302,"tag":303,"props":479,"children":480},{},[481,483,488],{"type":307,"value":482},"Lists are ordered collections of items, which on Python, might look something like this: ",{"type":302,"tag":378,"props":484,"children":485},{},[486],{"type":307,"value":487},"fruits = [\"apple\", \"banana\", \"orange\", \"pear\"]",{"type":307,"value":489},". If this list was set up for a grocery store, the computer could track all the fruits available, and share this information with a user. For example, the computer could print the entire list, or just one specific item.",{"type":302,"tag":303,"props":491,"children":492},{},[493,495,500,502,507,509,514,516,521],{"type":307,"value":494},"Often programming languages will use zero to represent the first element in an array; this is known as a zero-based index. The command ",{"type":302,"tag":378,"props":496,"children":497},{},[498],{"type":307,"value":499},"print(fruits[0])",{"type":307,"value":501}," would get the computer to print the first item: ",{"type":302,"tag":398,"props":503,"children":504},{},[505],{"type":307,"value":506},"apple",{"type":307,"value":508},". The command ",{"type":302,"tag":378,"props":510,"children":511},{},[512],{"type":307,"value":513},"print(fruits[1])",{"type":307,"value":515}," would print the second item, ",{"type":302,"tag":398,"props":517,"children":518},{},[519],{"type":307,"value":520},"banana",{"type":307,"value":522},", and so on.",{"type":302,"tag":303,"props":524,"children":525},{},[526,528,533,535,540,542,547],{"type":307,"value":527},"Dictionaries, meanwhile, store data in key-value pairs, like ",{"type":302,"tag":378,"props":529,"children":530},{},[531],{"type":307,"value":532},"\"fruit\": \"banana\"",{"type":307,"value":534},", ",{"type":302,"tag":378,"props":536,"children":537},{},[538],{"type":307,"value":539},"\"price\": 0.45",{"type":307,"value":541},", and ",{"type":302,"tag":378,"props":543,"children":544},{},[545],{"type":307,"value":546},"\"units\": 126",{"type":307,"value":548},". After a dictionary is set up, the computer can start retrieving data from it, checking things like a store's current price for a single banana, and how many bananas they currently have in stock. Again, this information could be shared with users, and form a crucial part of an online grocery store's backend.",{"title":296,"searchDepth":20,"depth":20,"links":550},[],{"id":200,"data":201,"type":26,"maxContentLevel":19,"version":20,"reviews":205,"parsed":552},{"data":553,"body":555,"toc":641},{"title":296,"description":554},"Backend development really starts cooking when you incorporate conditional statements. These use commands like if and else to let a computer make branching decisions, often in combination with comparison operators like equal to (==), not equal to (!=), greater than (>), and less than (\u003C). Using Python, we can see an example of this:",{"type":299,"children":556},[557,576,584,592,600,608,633],{"type":302,"tag":303,"props":558,"children":559},{},[560,562,567,569,574],{"type":307,"value":561},"Backend development really starts cooking when you incorporate conditional statements. These use commands like ",{"type":302,"tag":378,"props":563,"children":564},{},[565],{"type":307,"value":566},"if",{"type":307,"value":568}," and ",{"type":302,"tag":378,"props":570,"children":571},{},[572],{"type":307,"value":573},"else",{"type":307,"value":575}," to let a computer make branching decisions, often in combination with comparison operators like equal to (==), not equal to (!=), greater than (>), and less than (\u003C). Using Python, we can see an example of this:",{"type":302,"tag":303,"props":577,"children":578},{},[579],{"type":302,"tag":378,"props":580,"children":581},{},[582],{"type":307,"value":583},"if banana[\"units\"] > 0",{"type":302,"tag":303,"props":585,"children":586},{},[587],{"type":302,"tag":378,"props":588,"children":589},{},[590],{"type":307,"value":591},"print(\"Would you like to buy a banana?\")",{"type":302,"tag":303,"props":593,"children":594},{},[595],{"type":302,"tag":378,"props":596,"children":597},{},[598],{"type":307,"value":599},"else:",{"type":302,"tag":303,"props":601,"children":602},{},[603],{"type":302,"tag":378,"props":604,"children":605},{},[606],{"type":307,"value":607},"print(\"Bananas out of stock.\")",{"type":302,"tag":303,"props":609,"children":610},{},[611,613,618,620,624,626,631],{"type":307,"value":612},"Conditional statements can also be used to check things like a user's password. ",{"type":302,"tag":378,"props":614,"children":615},{},[616],{"type":307,"value":617},"If",{"type":307,"value":619}," they enter their password correctly, they can access to their profile, ",{"type":302,"tag":378,"props":621,"children":622},{},[623],{"type":307,"value":573},{"type":307,"value":625}," a message is printed: ",{"type":302,"tag":398,"props":627,"children":628},{},[629],{"type":307,"value":630},"Access to bananas denied",{"type":307,"value":632},".",{"type":302,"tag":303,"props":634,"children":635},{},[636],{"type":302,"tag":312,"props":637,"children":640},{"alt":314,"src":638,"title":639},"image://163c2c43-14c6-4c95-9a4e-29faaff81010","If-else flowchart. Image: Snubcube, CC BY-SA 3.0 \u003Chttp://creativecommons.org/licenses/by-sa/3.0/>, via Wikimedia Commons",[],{"title":296,"searchDepth":20,"depth":20,"links":642},[],{"id":236,"data":237,"type":20,"version":26,"maxContentLevel":19,"pages":644},[645,695],{"id":241,"data":242,"type":26,"maxContentLevel":19,"version":26,"reviews":246,"parsed":646},{"data":647,"body":649,"toc":693},{"title":296,"description":648},"Loops let developers write a piece of code once, then have it executed over and over again until a given condition has been met. This can save a lot of time, help to automate repetitive tasks, and provide a method for interpreting lots of structured data.",{"type":299,"children":650},[651,655,683],{"type":302,"tag":303,"props":652,"children":653},{},[654],{"type":307,"value":648},{"type":302,"tag":303,"props":656,"children":657},{},[658,660,671,672,682],{"type":307,"value":659},"For example, you might have a list for every aisle in a gardening store. Each list contains all the products which can be found on that particular aisle: ",{"type":302,"tag":378,"props":661,"children":662},{},[663,665],{"type":307,"value":664},"Aisle1 = ",{"type":302,"tag":666,"props":667,"children":668},"span",{},[669],{"type":307,"value":670},"\"pots\", “baskets”, \"troughs\"",{"type":307,"value":534},{"type":302,"tag":378,"props":673,"children":674},{},[675,677],{"type":307,"value":676},"Aisle2 = ",{"type":302,"tag":666,"props":678,"children":679},{},[680],{"type":307,"value":681},"\"rakes\", \"shovels\", \"shears\"",{"type":307,"value":522},{"type":302,"tag":303,"props":684,"children":685},{},[686,688],{"type":307,"value":687},"A user might want to find out which aisle has watering cans. Instead of manually searching for the “watering cans” variable in each list individually, a loop could be used to automatically check them one by one. When it finds the variable it’s looking for, it stops searching and prints: ",{"type":302,"tag":398,"props":689,"children":690},{},[691],{"type":307,"value":692},"You’ll find watering cans in Aisle 4.",{"title":296,"searchDepth":20,"depth":20,"links":694},[],{"id":257,"data":258,"type":26,"maxContentLevel":19,"version":26,"reviews":262,"parsed":696},{"data":697,"body":699,"toc":767},{"title":296,"description":698},"Functions are pre-packaged sets of instructions that developers can define and reuse in their code. Basically, a developer can write a complicated block of code, give it a name, and then call that block when they need it.",{"type":299,"children":700},[701,705,717,725,733,741,748,756],{"type":302,"tag":303,"props":702,"children":703},{},[704],{"type":307,"value":698},{"type":302,"tag":303,"props":706,"children":707},{},[708,710,715],{"type":307,"value":709},"Imagine you have a clothing store, and you want to offer a deal to every customer who happens to buy a tophat. Instead of writing the same code to check for tophats every single time a customer checks out, you can create a block of code which you define (‘def’) as ",{"type":302,"tag":398,"props":711,"children":712},{},[713],{"type":307,"value":714},"tophat_deal",{"type":307,"value":716},":",{"type":302,"tag":303,"props":718,"children":719},{},[720],{"type":302,"tag":378,"props":721,"children":722},{},[723],{"type":307,"value":724},"def tophat_deal:",{"type":302,"tag":303,"props":726,"children":727},{},[728],{"type":302,"tag":378,"props":729,"children":730},{},[731],{"type":307,"value":732},"if \"top hat\" in customer.cart",{"type":302,"tag":303,"props":734,"children":735},{},[736],{"type":302,"tag":378,"props":737,"children":738},{},[739],{"type":307,"value":740},"print(\"Congratulations!\")",{"type":302,"tag":303,"props":742,"children":743},{},[744],{"type":302,"tag":378,"props":745,"children":746},{},[747],{"type":307,"value":599},{"type":302,"tag":303,"props":749,"children":750},{},[751],{"type":302,"tag":378,"props":752,"children":753},{},[754],{"type":307,"value":755},"print(\"Are you ready to pay?\")",{"type":302,"tag":303,"props":757,"children":758},{},[759,761,765],{"type":307,"value":760},"Instead of running this entire block of code whenever a customer checks out, a developer could call the ",{"type":302,"tag":398,"props":762,"children":763},{},[764],{"type":307,"value":714},{"type":307,"value":766}," function, which performs all the steps automatically. Functions save time, and make a developer’s code more organized and easy to maintain.",{"title":296,"searchDepth":20,"depth":20,"links":768},[],{"left":4,"top":4,"width":770,"height":770,"rotate":4,"vFlip":6,"hFlip":6,"body":771},24,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m9 18l6-6l-6-6\"/>",{"left":4,"top":4,"width":770,"height":770,"rotate":4,"vFlip":6,"hFlip":6,"body":773},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5h16M4 12h16M4 19h16\"/>",1778179452212]