{"componentChunkName":"component---src-templates-legacy-tutorial-page-js","path":"/oa/tutorials/make-school-environment-setup-dsi/computer-and-environment-setup/","result":{"pageContext":{"tutorial":{"id":"T0E6OlR1dG9yaWFsLTM0NA==","slug":"make-school-environment-setup-dsi","title":"Make School Environment Setup","previewText":"This tutorial will cover skills critical to setting up your development environment.\n","heroImagePath":"https://raw.githubusercontent.com/MakeSchool-Tutorials/Environment-Setup/master/cover.png","heroImageFile":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","placeholder":{"fallback":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD6ElEQVQ4y42RX0xcRRTGLwu+YKxGk1ZD60N3Gl7qCwoxmmqkaGO0aXzQxNYHHzSxPmliNBqNYrVWU+auRYnWSA1SoYFuNPhQ2vLn3pUWUigiKBQKhYXddZe1bFl22b33zvnMzN1rtm2aOMnkzJw553e+c0YDkZZzRAkAuTVB9AkRrViOiIAoBhRvxIgoZjkiCqKkI8SrMgdA6T9ZSyMi7ToYgE+JCAAhmbVRP7iMdwcSeG8ggZe6w9jdNY83jSiylgMSQsUBeKUYqhXDImkLx/5MOQAJgKh/MUN1wUV65MQ83fbVBG1pnqILsYyqmM7ZzuHQHK6tW9dBNQ+2mnew71TUecuMq7JZy1H2YnwdO0+G8UDrNGaurksXcrYg2cmO7wbFC22jcJRaF6pg0TUL+3v/FjXtC/Th+WX5SN/8kUTH9IoChJbWMJbIqnPrZAq/RTIqZk/rCG6vPy1e7hzD1UxeQSUw8svsKh4+sWDVBRfx/rll1dLBC3GUN02gL5yGt7rm0jIOxpILfPbHYdr8RS/uOnAm1z+XlL5+zXKoGsBqy2QKVT/N2x+ccxXqo8vkaxzH5uZJ9ITT6F7IoC4YxmMdYalQFX2mZRgbPj5tdYxHZc5Mat26vzBDF/r12AreMOK2fG0YSVB50wTdc/QvbG+Zws72GezuiuLxjgVygYQnvh+yjo0syvDLa3m7wpthWeFjqgXR6nBczcoOjC6jtHGcqtrm6KnOK9imm6htn6ba4BINqBkKazCsZnw574iKAqPM+2UFJZJKSQ3t0HDC3tJ8Cc/9GqFdJ+eJcYMqdYOqW6bQv5S1CmOdXcs7FcUMzXEcr23lSGYd1f7P7kfZe7oieLLzClUGTNp6uA/3ft5njcbWlLKpZKbiBkGqZQUVQkiHehDCnem34yvY0RG2nw7Oq5Y3HuyxWkeXFOxazlUmcyRIbqVQLnnxoJ5SOVMA6aMTKdQcn7XvO9TrwWZzDv2nzIMpdcXLgxa3AHKVNo4k8MPFiFKWyORvavMmWDHUtm+Agh4CkAJwKWs5/x92C2iptFlbbF3JWpuKfbeEMW74GDel1Rg3S+T9bApa+Ufd2oYDZ3zHf4+U5QsFmgYXyk5NJ7TKgOlTeYEBmVfq50Ypc7fPA8ntY3rIvQeGpC3xc0Or1E2tvnemTHvwiDpv01WiG/fleWX93p0bUqG5l+mhOxVMD93NuPkiOzJUUii0l3HzUVVQD21k3HzeTTZrGTdeY4GBOxg33mHc+IxxQ5e5khpj3GjzN/TJc5BxI+Jv6JGATYW3s37eL+9V8sy4uY9xY4Rxs4bpoe2MG3N+brzu58bbjBu7/gWOSk/VhPcKJgAAAABJRU5ErkJggg=="},"images":{"fallback":{"src":"/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/5aead/cover.png","srcSet":"/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/e9fba/cover.png 50w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/15e42/cover.png 100w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/5aead/cover.png 200w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/d6138/cover.png 400w","sizes":"(min-width: 200px) 200px, 100vw"},"sources":[{"srcSet":"/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/b79cb/cover.avif 50w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/6d0de/cover.avif 100w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/f2685/cover.avif 200w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/4ff31/cover.avif 400w","type":"image/avif","sizes":"(min-width: 200px) 200px, 100vw"},{"srcSet":"/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/dbc4a/cover.webp 50w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/d8057/cover.webp 100w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/2e34e/cover.webp 200w,\n/mediabook/static/a69ceb219f4e17b4f09e707a84068da8/416c3/cover.webp 400w","type":"image/webp","sizes":"(min-width: 200px) 200px, 100vw"}]},"width":200,"height":200}}},"pages":{"nodes":[{"id":"T0E6OlBhZ2UtMjE5NQ==","title":"Welcome to Make School!","slug":"welcome","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNDg=","title":"Welcome to Make School!","htmlContent":"<p>Welcome to the Make School family! We're absolutely thrilled to bring you on board!</p><p><a href=\"https://media1.tenor.com/images/7579a792cffb3e35c5ae81669a8a3bb4/tenor.gif?itemid=12198352\" target=\"_blank\">\n          <img src=\"https://media1.tenor.com/images/7579a792cffb3e35c5ae81669a8a3bb4/tenor.gif?itemid=12198352\" alt=\"hello\" title=\"\">\n        </a>\n<sub> Source: <a href=\"https://tenor.com/view/yay-bobs-burger-excited-happiness-hello-gif-12198352\" target=\"_blank\">Tenor</a> </sub><br><br></p><p>We'll see you in a few short weeks, but until then, we've prepared some tasks for you in this environment setup tutorial that will set you up for success at Make School. We'll cover how to set up your laptop so that you're ready to start coding.</p><div class=\"action\">\n<p></p>\n\n<p><strong>Watch the following video</strong> by Dan, a Make School instructor, to get an overview of what you'll accomplish in this tutorial:</p>\n\n<p><iframe width=\"640\" height=\"360\" src=\"https://www.youtube.com/embed/S7eSqgI0Tyk\" frameborder=\"0\" allowfullscreen></iframe></p>\n</div><p>Once you finish each section, click the \"Mark as Complete\" checkbox. If you've made it this far, go ahead and click the one below this box now!</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNDk=","title":"Learning Outcomes","htmlContent":"<p>During your time at Make School, you'll see <strong>learning outcomes</strong> throughout your tutorials, courses, and lessons. Think of these as the skills you are gaining that will allow you to excel in your software engineering career.</p><div class=\"info\">\n<p></p>\n\n<p>It's a great practice to <em>self reflect</em> on these learning outcomes any time you complete a tutorial, lesson, or course, and see if you met the learning outcomes. If you didn't, talk to your peers, instructor, or coach to figure out what you can do to achieve these outcomes</p>\n</div><p>By the end of this tutorial, you should be able to...</p><ol>\n<li>Set up your development environment to be coding ready</li>\n<li>Describe Make School's academic policies</li>\n</ol><div class=\"action\">\n<p></p>\n\n<p>Reflect on these as you complete each chapter. Are you meeting these outcomes?</p>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNTA=","title":"Tell Us About Yourself","htmlContent":"<p>We have students from all different walks of life, and we'd love to learn about yours!</p><div class=\"action\">\n<p></p>\n\n<p>Take a few minutes to <a href=\"https://forms.gle/h56BE7LxgbPBLs2X9\" target=\"_blank\">fill out your student profile</a>. This will be available for all students/staff to see, so please fill it out appropriately.</p>\n</div><p>Looking forward to learning more about you! Now, are you ready to get that development environment set up?</p><p><a href=\"https://media.giphy.com/media/Cx0JktG3wBWvu/giphy.gif\" target=\"_blank\">\n          <img src=\"https://media.giphy.com/media/Cx0JktG3wBWvu/giphy.gif\" alt=\"lets-do-this\" title=\"\">\n        </a>\n<br><sub> Source: <a href=\"https://media.giphy.com/media/Cx0JktG3wBWvu/giphy.gif\" target=\"_blank\">Giphy</a> </sub></p><p>Onto the next chapter!</p>"}]},"next":{"id":"T0E6OlBhZ2UtMjE5Ng==","slug":"computer-and-environment-setup","title":"Computer And Environment Setup"},"previous":{"id":"T0E6OlBhZ2UtMjE5Ng==","slug":"computer-and-environment-setup","title":"Computer And Environment Setup"}},{"id":"T0E6OlBhZ2UtMjE5Ng==","title":"Computer And Environment Setup","slug":"computer-and-environment-setup","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNTE=","title":"Computer And Environment Setup","htmlContent":"<h2>Computer Requirements</h2><p>In order to participate in Make School, you must have a laptop that meets the the following requirements:</p><ol>\n<li>An Apple Laptop</li>\n<li>At least 8 MB of Random Access Memory (RAM)</li>\n<li>At least 100 GB of Solid State Drive (SSD) Storage</li>\n<li>A battery that holds a charge</li>\n<li>A fully-functioning keyboard</li>\n<li>A fully-functioning screen</li>\n</ol><div class=\"info\">\n<p></p>\n\n<p>Why do we require your laptop to be from <em>Apple</em>? We have found that it is difficult to support the tools/languages we use in our fast-paced learning environment on a PC. Whether it's web, mobile, or data science, a Mac (OSX) environment is much easier to work with both for the students and the instructor, and also goes far to helping guarantee a students success by minimizing hardware issues.</p>\n</div><p>Unfortunately, we cannot offer any sort of exceptions to this policy, students in the past who we have allowed to use workarounds such as a \"hackintosh\" or virtual machines have not been successful. If you cannot meet these requirements, please review the <a href=\"https://docs.google.com/document/d/1a1i2jwXqx__URpWvUf8z8E9iwcdJ05QsPnbjs7Z83Us/preview#heading=h.p5a6appfat36\" target=\"_blank\">Laptop section of our student handbook</a> for available options on how to find an economical laptop that meets these requirements.</p><p>If you have any questions about the laptop requirements, please message <a href=\"mailto:questions@makeschool.com\" target=\"_blank\">questions@makeschool.com</a>.</p><div class=\"action\">\n<p></p>\n\n<p>Ensure that your computer meets these requirements, or that you have a plan in place to obtain a computer that does meet these requirements before continuing through the remainder of this chapter.</p>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNTI=","title":"Operating System","htmlContent":"<p>Next you must download and install - or update - your operating system. The operating system is the software that allows your whole computer to function. This step is important so that we're all starting off with the same operating system version, as there are minor differences between them.</p><div class=\"action\">\n<p></p>\n\n<p>Update your MacBook's operating system (OSX) to the <a href=\"https://www.apple.com/macos/how-to-upgrade/\" target=\"_blank\">most recent stable version of the Apple operating system</a></p>\n</div><!-- --><div class=\"info\">\n<p>\nThis download may take multiple hours to complete, so please start it now before continuing. </p>\n\n<p>[info]\nNote you may need to delete some files to make sure you have enough space to download the applications in this tutorial</p>\n</div>"}]},"next":{"id":"T0E6OlBhZ2UtMjE5Nw==","slug":"terminal-setup","title":"Terminal Setup"},"previous":{"id":"T0E6OlBhZ2UtMjE5Nw==","slug":"terminal-setup","title":"Terminal Setup"}},{"id":"T0E6OlBhZ2UtMjE5Nw==","title":"Terminal Setup","slug":"terminal-setup","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEyMzE=","title":"Terminal Setup","htmlContent":"<p>The Terminal is an application that gives you command line control over your system, meaning you can type commands in  text form and the computer does stuff. For developers the terminal is one of the most important tools in our toolbox. It may seem weird to want to use a simple text based command system when we have all these awesome graphics, but the Terminal gives you control over almost everything on your computer! It can also be faster and more flexible as you dive deeper into the world of coding.</p><p>Since it's one of our most important tools we are going to make sure to polish it up (we're going to make our terminal pretty and work well).</p>"},{"id":"T0E6OlNlY3Rpb24tMTEyMzI=","title":"Make Your Terminal Professional","htmlContent":"<div class=\"action\">\n<p></p>\n\n<ol>\n<li>Use the keyboard shortcut <code>command</code> + <code>spacebar</code> and type \"terminal\" to open your terminal.</li>\n<li>Now use the keyboard shortcut <code>command</code> + <code>,</code> to open your preferences (this keyboards shortcut works for every program on your computer!).</li>\n<li>Set your profile to \"Pro\" and click \"Default\".</li>\n</ol>\n</div><p>Looking professional!</p>"},{"id":"T0E6OlNlY3Rpb24tMTEyMzM=","title":"Make a dev or code directory","htmlContent":"<p>All good developers have well organized folders and files in their computer. Always keep your folders, files, and desktop clean and organized. It will make you work faster and look and feel more professional.</p><h2>IMPORTANT NOTE ON $</h2><p>Whenever you see code prefixed with a dollar sign <code>$</code>, that indicates that it's a command to be entered in the command prompt. <strong>Don't include the <code>$</code> when you paste the command in.</strong></p><h2>Create a dev directory</h2><p>A best practice to organize your code projects is to create one folder called either <code>dev</code> or <code>code</code> in the root of your computer.</p><div class=\"action\">\n<p></p>\n\n<p><strong>REMEMBER: Don't include the <code>$</code> when you paste a command in to your terminal!</strong></p>\n\n<ol>\n<li>\n<p>Use your terminal to make this now.</p>\n<pre>$ mkdir dev\n$ <span class=\"nb\">cd</span> dev\n</pre>\n</li>\n<li><p>Now you are in your <code>dev</code> folder. You should create your portfolio coding projects in this folder!</p></li>\n<li>\n<p>Let's add one more thing which is a folder for your courses. In this folder you can make directories for your coursework.</p>\n<pre>$ mkdir courses\n</pre>\n</li>\n</ol>\n</div><p><a href=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P02-Terminal-Setup/make-dev-folder.gif\" target=\"_blank\">\n          <img src=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P02-Terminal-Setup/make-dev-folder.gif\" alt=\"Terminal Dev Folder\" title=\"\">\n        </a></p><div class=\"info\">\n<p></p>\n\n<p>Don't worry if your terminal has a different color scheme, or if the style doesn't match up 100% to the image. You will learn more as you get into your first classes!</p>\n</div><p>Great! Now, if you explore the <code>dev</code> folder in Finder, you should see the <code>courses</code> folder we just created.</p><div class=\"action\">\n<p></p>\n\n<ol>\n<li>Use the keyboard shortcut <code>command</code> + <code>spacebar</code> and type \"finder\" to open Finder.</li>\n<li>In the menu at the very top of your screen, go to \"Go\" -&gt; \"Home\".</li>\n<li>Click on the \"dev\" folder to open it in Finder and check that it contains a folder \"courses\".</li>\n</ol>\n</div><p><a href=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P02-Terminal-Setup/finder-courses-folder.png\" target=\"_blank\">\n          <img src=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P02-Terminal-Setup/finder-courses-folder.png\" alt=\"Finder Courses Folder\" title=\"\">\n        </a></p><p>If this step was difficult for you, don't worry - we'll be going over Terminal in much more detail during Term 1.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEyMzQ=","title":"Show Hidden Files","htmlContent":"<p>As a developer, it's often very useful to be able to see hidden files and folders in Finder. They're hidden because messing with them can cause problems, but we're fancy-pants developers and we're not afraid.</p><p>Showing hidden files is useful because a lot of the coding tools we will be using have hidden files associated with them that aren't normally visible to an average computer user.</p><div class=\"action\">\n<p></p>\n\n<ol>\n<li>Open your Finder application, go to File-&gt;New Window. Once the window is open press CMD + SHIFT + . which will tell the finder to show hidden files.</li>\n</ol>\n</div><!-- -->"},{"id":"T0E6OlNlY3Rpb24tMTEyMzU=","title":"Homebrew","htmlContent":"<p>Homebrew is a package manager for Mac OS. It makes it easy to install software packages from the terminal while also installing and managing their dependencies. For more information, see the <a href=\"http://brew.sh/\" target=\"_blank\">Homebrew website</a></p><div class=\"action\">\n<p></p>\n\n<p>Install Homebrew by following the install instructions on the <a href=\"http://brew.sh/\" target=\"_blank\">Homebrew website</a></p>\n</div><p>If you already have Homebrew installed, you need to update your formulae by running:</p><pre>$ brew update\n</pre><p>This may take several minutes to download updates, so be patient while it completes.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEyMzY=","title":"Node","htmlContent":"<p>Node is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. It allows us to run JavaScript programs on our computer.</p><div class=\"action\">\n<p></p>\n\n<p>Install Node by running the following in Terminal:</p>\n<pre>$ brew install node\n</pre>\n</div><p>If you've already installed Node, you can verify that it's been updated to the latest version by running:</p><pre>$ node -v\n</pre>"},{"id":"T0E6OlNlY3Rpb24tMTEyMzc=","title":"Run Make School's Bash Setup Script","htmlContent":"<p>What about bash color coding? We've got ya covered! Make School has our own custom script to help you set up your terminal settings. It should take less than 30 seconds! However, for a full walkthrough of how to run the script, watch <a href=\"https://www.youtube.com/watch?v=35A1mDFRrBY\" target=\"_blank\">this video</a>.</p><div class=\"action\">\n<p></p>\n\n<p>Go to <a href=\"https://make.sc/bash-setup\" target=\"_blank\">make.sc/bash-setup</a> and follow the steps to run Make School's bash setup script to set up your terminal.</p>\n</div><!-- -->"}]},"next":{"id":"T0E6OlBhZ2UtMjE5OA==","slug":"setup-vs-code","title":"Setting Up VS Code"},"previous":{"id":"T0E6OlBhZ2UtMjE5OA==","slug":"setup-vs-code","title":"Setting Up VS Code"}},{"id":"T0E6OlBhZ2UtMjE5OA==","title":"Setting Up VS Code","slug":"setup-vs-code","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNTk=","title":"Setting Up VS Code","htmlContent":"<p>Download and install VS Code! VS Code is a text editor built on open-source from Microsoft, that we will use to write code. It also has other coding features we will eventually learn how to use: an excellent debugger, built-in Git support, and numerous extensions you can download (for free!) to help enhance your coding experience!</p><div class=\"action\">\n<p></p>\n\n<p><a href=\"https://code.visualstudio.com/\" target=\"_blank\">Download VS Code</a> on to your computer now!</p>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjA=","title":"Launch From The Command Line","htmlContent":"<p>We want to be able to open files from our terminal for ease of use! The terminal is a \"command line interface\" that will let you interact with your computer using only text, which can be more powerful than just using the graphics based apps you may be used to. You'll learn more about terminal set up in the coming chapters, but there's a quick way to enable it so that we're ready to go:</p><div class=\"action\">\n<p></p>\n\n<p>Follow <a href=\"https://code.visualstudio.com/docs/setup/mac#_launching-from-the-command-line\" target=\"_blank\">these instructions</a> so that typing <code>code</code> in your terminal will launch VS Code!</p>\n</div><p>Make sure you drag VS Code into your Applications! This will be helpful for opening it later.</p><p>If this step is difficult for you, don't worry! We'll be covering the terminal in much more depth during Term 1.</p>"}]},"next":{"id":"T0E6OlBhZ2UtMjE5OQ==","slug":"git-github","title":"Git + GitHub"},"previous":{"id":"T0E6OlBhZ2UtMjE5OQ==","slug":"git-github","title":"Git + GitHub"}},{"id":"T0E6OlBhZ2UtMjE5OQ==","title":"Git + GitHub","slug":"git-github","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNjE=","title":"Git + GitHub","htmlContent":"<p>Git and Github are super important and awesome tools for tracking, revising, and collaborating on code projects. Let's get your computer setup to use Git and Github.</p><h2>Why Use Git?</h2><p>In short, developers use git to collaborate on a project simultaneously and save snapshots of different versions of the project.</p><p>Watch this 5 min video by Paul Programming where he explains the value of using git:</p><p><iframe width=\"640\" height=\"360\" src=\"https://www.youtube.com/embed/OqmSzXDrJBk\" frameborder=\"0\" allowfullscreen></iframe></p><h2>Install / Setup</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>\n<p>Install git if you haven't already.</p>\n<pre>$ brew install git\n</pre>\n</li>\n<li><p>Head over to <a href=\"github.com\" target=\"_blank\">github.com</a> and sign up for an account using your personal email address if you don't already have one.</p></li>\n<li><p>Configure your global username and email address.</p></li>\n</ol>\n\n<p><strong>&#8252;&#65039; IMPORTANT: If you skip this step, Git will produce a warning each time you push to a remote branch.</strong></p>\n<pre>$ git config --global user.name <span class=\"s2\">\"YOUR_NAME\"</span>\n$ git config --global user.email <span class=\"s2\">\"YOUR_PERSONAL_EMAIL@example.com\"</span>\n</pre>\n<p>Finally, double-check your settings. They should look similar to the following:</p>\n<pre>$ git config --list\n\ncredential.helper<span class=\"o\">=</span>osxkeychain\nuser.name<span class=\"o\">=</span>Dani Roxberry\nuser.email<span class=\"o\">=</span>dani@bitoriented.com\n</pre>\n</div><p>If you can&rsquo;t set this up, don&rsquo;t worry - we will be giving extra support during orientation.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjI=","title":"Generating and Configuring SSH Keys","htmlContent":"<p>SSH keys are a cryptographic way to secure your connection between your computer and GitHub. Setting them up will make it so you don't have to login through your terminal when you are trying to push. Let's set them up:</p><p><strong>&#8252;&#65039; IMPORTANT !!: DO NOT ENTER A PASSWORD WHEN PROMPTED</strong>. Just hit enter after running the <code>ssh-keygen</code> command, and do it until you see something on your terminal that looks like the following:</p><pre>The key fingerprint is:\nSHA256:Up6KjbnEV4Hgfo75YM393QdQsK3Z0aTNBz0DoirrW+c ylo@klar\nThe key<span class=\"err\">'</span>s randomart image is:\n+---<span class=\"o\">[</span>RSA <span class=\"m\">2048</span><span class=\"o\">]</span>----+\n<span class=\"p\">|</span>    .      ..oo..<span class=\"p\">|</span>\n<span class=\"p\">|</span>   . . .  . .o.X.<span class=\"p\">|</span>\n<span class=\"p\">|</span>    . . o.  ..+ B<span class=\"p\">|</span>\n<span class=\"p\">|</span>   .   o.o  .+ ..<span class=\"p\">|</span>\n<span class=\"p\">|</span>    ..o.S   o..  <span class=\"p\">|</span>\n<span class=\"p\">|</span>   . %o<span class=\"o\">=</span>      .  <span class=\"p\">|</span>\n<span class=\"p\">|</span>    @.B...     . <span class=\"p\">|</span>\n<span class=\"p\">|</span>   o.<span class=\"o\">=</span>. o. . .  .<span class=\"p\">|</span>\n<span class=\"p\">|</span>    .oo  E. . .. <span class=\"p\">|</span>\n+----<span class=\"o\">[</span>SHA256<span class=\"o\">]</span>-----+\nklar <span class=\"o\">(</span><span class=\"m\">11</span>:40<span class=\"o\">)</span> ~&gt;\n</pre><p><em><a href=\"https://www.ssh.com/ssh/keygen/\" target=\"_blank\">source</a></em></p><div class=\"action\">\n<p></p>\n\n<p>Run the following commands, using your email address that you entered earlier.</p>\n\n<p><strong>&#8252;&#65039; IMPORTANT !!: DO NOT ENTER A PASSWORD WHEN PROMPTED</strong>. Remember to just hit enter after running the <code>ssh-keygen</code> command until you get the image that looks like the example above</p>\n<pre>$ ssh-keygen -t rsa -C <span class=\"s2\">\"your.email@example.com\"</span> -b <span class=\"m\">4096</span>\n</pre>\n<p>Once again, you will get a few prompts, just keep hitting enter! Once you see something that looks like the above example, run the following command:</p>\n<pre>$ cat ~/.ssh/id_rsa.pub\n\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC+SJSGSCeSeLnOg543Hyqh3OcAENvugks8ygkoOkEA4g652gK0ES7CjjpBy4GS/XnaUWiD9iaoE4soE8dqhe/psCoiU+QxGmkjNapLtQAOu1W2v/SEh3Jao+rtfop0S+Ak96fiOVgUgupFAN1FXV1iYdpwyk7rR3Kv/T2M9Ce06Bk5KupdgNzF7Eg/tmFx8H2yVmeQ2J3MWM948ZvWmbBwtbcDRQ6ZtnXSoEof1Wg8agzyisq0Yoi3rXqAIxr1Hevs4g79Lrf65548yTfqZqyljSFA/h4VntXsZYKIWoXti5uPstrwRF6oaH8dm1l74jLAKC/XlqnsqVkRWn/Updj+x8g3+EdtFiWpUwEIMWWDbjPk0HHTfOS06716Hcji0hg4Kfipe03QjhD8Vqp/snaYCb8R3OSZOK1H3Zj9n1JgHhOoFYzk0gstV9DGRmrm2ywrQh3Q7fs23pzrZARGBhRHwk5XfFQl85D7oJffBbfpqjDdyzcHYOAo3mlDfwkfl1nHxynWrwCk+0KKD0zLVsqtkSVlNfQv2JqSSc6ox6vktO7RWKg5/T0b9r0fnNcYfGBVnoJDulJPJr7ynSUDRi2hX5WpMDomylUahVYN/VlAZBwvuWdOM0h3ZUsQEPjauN0k+mY3nQVTIa0hWl1vszTddcxLZKK5mJsvlnL7HMBQxQ<span class=\"o\">==</span> dani@bitoriented.com\n</pre>\n<p>With your mouse, highlight the entire <a href=\"https://en.wikipedia.org/wiki/Public-key_cryptography\" target=\"_blank\">public key</a>, beginning with <code>ssh-rsa</code> and ending with your email address. Copy the highlighted public key to the clipboard.</p>\n</div><p>If you run into issues here, we will help you during orientation.</p><h2>Add the key to <a href=\"http://github.com\" target=\"_blank\">GitHub</a>\n</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>Click the above link, log in, and navigate to your account \"Settings\".</li>\n<li>Click on SSH and GPG Keys section.</li>\n<li>Paste your key in the 'Key' section and give it a relevant <code>Title</code>. Use an identifiable title like <code>Work Laptop</code> or <code>Home MacBook Pro 15</code>.</li>\n<li><strong>Make sure you copied the entire key starting with <code>ssh-rsa</code> and ending with your email.</strong></li>\n<li>Test your setup by running <code>ssh -T git@github.com</code>:</li>\n</ol>\n<pre>$ ssh -T git@github.com\n\nHi droxey! You have successfully authenticated, but GitHub does not provide shell access.\n</pre>\n</div><p>This can be complicated for first time developers. If so, have no fear - we will help you at orientation.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjM=","title":"Stretch Challenge: Practice Git","htmlContent":"<h2>Note About Stretch Challenges</h2><p>You'll frequently see Stretch Challenges throughout your time at Make School. These challenges are <em>optional</em>, and are there to help give you more practice, or to dive deeper into a topic. If you want to go the extra mile and enhance your learning, we encourage you to complete them after you have completed the required content for a chapter/project/lesson/etc.</p><h2>Practice Git</h2><p>Now that you have a general understanding of git, practice your skills at <a href=\"https://learngitbranching.js.org/\" target=\"_blank\">Learn Git Branching</a>. This is a great way to learn and practice the basics of git from the browser with a guided tutorial.</p><div class=\"challenge\">\n<p></p>\n\n<p>Complete at least the following sections from <a href=\"https://learngitbranching.js.org/\" target=\"_blank\">Learn Git Branching</a>:</p>\n\n<ul>\n<li>On the <code>Main</code> tab, do the <code>Introduction Sequence</code>, parts 1-4</li>\n<li>On the <code>Remote</code> tab, do Push and Pull Git Remotes, parts 1-7</li>\n<li>Complete extra sections to level up your git skills even more</li>\n</ul>\n</div><h2>Extra Resources</h2><ul>\n<li><a href=\"https://marklodato.github.io/visual-git-guide/index-en.html\" target=\"_blank\">A Visual Git Reference</a></li>\n<li><a href=\"https://tutorialzine.com/2016/06/learn-git-in-30-minutes\" target=\"_blank\">Learn Git in 30 Minutes Tutorial</a></li>\n<li><a href=\"https://www.git-tower.com/learn/git/ebook/en/command-line/introduction\" target=\"_blank\">Git-Tower.com - Learn Version Control with Git - Ebook</a></li>\n<li><a href=\"https://www.git-tower.com/learn/git/videos#episodes\" target=\"_blank\">Git-Tower.com - Learn Version Control with Git - Videos 1-8</a></li>\n</ul>"}]},"next":{"id":"T0E6OlBhZ2UtMjIwMA==","slug":"ios-install-instructions","title":"iOS Install Instructions"},"previous":{"id":"T0E6OlBhZ2UtMjIwMA==","slug":"ios-install-instructions","title":"iOS Install Instructions"}},{"id":"T0E6OlBhZ2UtMjIwMA==","title":"iOS Install Instructions","slug":"ios-install-instructions","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNjQ=","title":"iOS Install Instructions","htmlContent":"<p>You should follow this guide to update and install your iOS development environment before Python, as the Python installers actually have some dependencies on the iOS tools.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjU=","title":"Command Line Tools","htmlContent":"<p>Install the Xcode Command Line Tools, which is a bundle of command-line based software for developers. It includes things like <code>git</code>, <code>gcc</code> and <code>clang</code>. For a complete list, see <a href=\"http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/\" target=\"_blank\">this article</a>.</p><div class=\"action\">\n<p></p>\n\n<p>Install Command Line Tools by running this command in terminal:</p>\n<pre>$ xcode-select --install\n</pre>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjY=","title":"Download Xcode","htmlContent":"<p>To install the latest version of Xcode, you need the latest version of Mac OS before you install Xcode.</p><div class=\"action\">\n<p></p>\n\n<ol>\n<li>On the upper left corner, click the apple icon, and click <code>About This Mac</code>\n</li>\n<li>From the <code>Overview</code> tab, click on <code>Software Update</code>, and if there are any updates available, install them.</li>\n</ol>\n</div><p>From here, Xcode is an easy download in the Mac App Store:</p><div class=\"action\">\n<p></p>\n\n<ol>\n<li>Use the keyboard shortcut <code>command</code> + <code>spacebar</code> and type \"app store\" to open the App Store.</li>\n<li>Once there, search for the program <code>Xcode</code> and click <code>Install</code>.</li>\n</ol>\n</div><p>After it's installed (this will take some time, it's not a quick download), you should open Xcode to allow it to do some additional installation and configuration. Note that you should <strong>not install a beta version of Xcode!</strong> Only install a production version through the app store.</p>"}]},"next":{"id":"T0E6OlBhZ2UtMjIwMQ==","slug":"academic-policies","title":"Academic Policies"},"previous":{"id":"T0E6OlBhZ2UtMjIwMQ==","slug":"academic-policies","title":"Academic Policies"}},{"id":"T0E6OlBhZ2UtMjIwMQ==","title":"Academic Policies","slug":"academic-policies","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNjc=","title":"Academic Policies","htmlContent":"<p>Like any college, Make School has a large number of policies that we expect all students to adhere to. These policies will be covered more in depth during your orientation, but we want to give you a brief overview of a few of them.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjg=","title":"Grading System","htmlContent":"<p>Make School uses a pass/fail grading system for all courses. We utilize rubrics and other assessment tools to track a student's mastery of a course. In order to pass a course, you must complete all assignments as indicated by your instructor, as well as pass all assessments in the course. This can include, but is not limited to, quizzes, exams, projects, homework, and self-evaluations.</p><div class=\"action\">\n<p></p>\n\n<p>Read more about our <a href=\"https://make.sc/grading-system\" target=\"_blank\">grading system</a></p>\n</div><h2>Check your understanding</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>What type of grading system does Make School use?</li>\n<li>Do you get a GPA from Make School?</li>\n<li>What can you do if an internship/job or advanced degree program requires a GPA from Make School?</li>\n</ol>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNjk=","title":"Attendance","htmlContent":"<p>Just like any job, attendance at Make School is required and a key component of your success. <strong>Attendance is being onsite from 9:30 to 5:30 each day, attending all scheduled sessions.</strong></p><p>Unless otherwise noted, attendance requirements for scheduled sessions are:</p><div class=\"action\">\n<p></p>\n\n<ol>\n<li>No more than two no call/no shows per term in any scheduled session.</li>\n<li>No more than four excused absences per term in any scheduled session.</li>\n</ol>\n</div><p>You must let your instructor and coach know if you are going to be absent.</p><div class=\"action\">\n<p></p>\n\n<p>Read more about our <a href=\"https://make.sc/attendance-policy\" target=\"_blank\">attendance policy</a></p>\n</div><h2>Check your understanding</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>What onsite hours must you adhere to?</li>\n<li>What are the two requirements for scheduled sessions?</li>\n<li>What do you do if ill for over a week, or have a family emergency?</li>\n</ol>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzA=","title":"Code of Conduct, Equity & Inclusion","htmlContent":"<p>At Make School we strive to build a community where everyone feels safe. To maintain that safe environment, we follow an official Code of Conduct and a Harassment Policy.</p><div class=\"action\">\n<p></p>\n\n<p>Read more about our <a href=\"https://make.sc/diversity-and-inclusion-statement\" target=\"_blank\">Code of Conduct, Equity &amp; Inclusion</a> from our Student Handbook</p>\n</div><h2>Check your understanding</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>What are three behaviors that you are protected from at Make School by this code?</li>\n<li>In which environments does the Code of Conduct and a Harassment Policy apply?</li>\n<li>True or false: jokes that make a few people uncomfortable are fine, it's just a joke.</li>\n<li>Who can you go to if you notice one of your peers is experiencing harassment?</li>\n<li>How many times does someone have to ask you to stop harassing behaviors before you are required to stop?</li>\n</ol>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzE=","title":"Academic Honesty & Integrity","htmlContent":"<p>Make School is a place of community, trust, fun, as well as high achievement and high expectations. All of these fundamental values are at odds with lying, misrepresenting, or otherwise unethical behavior. Violation of these fundamental values via unethical behavior will <strong>not</strong> be tolerated.</p><div class=\"action\">\n<p></p>\n\n<p>Please read the Make School <a href=\"https://make.sc/academic-honesty-policy\" target=\"_blank\">Academic and Professional Integrity Policy</a></p>\n</div><h2>Check your understanding</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>Other than plagiarism, what are other examples of cheating?</li>\n<li>What happens if a student has been found to have committed an act of academic dishonesty?</li>\n</ol>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzI=","title":"Disability Services (Academic Accommodations)","htmlContent":"<p>Make School is committed to providing effective, reasonable accommodations to qualified students with disabilities. Through our process you will meet with a Make School staff member to make sure that the appropriate accommodations are provided for you. This is a common procedure for us, and we want to set you up for success to the best of our abilities.</p><p>Please know that all information you share with Make School staff will remain confidential.</p><div class=\"action\">\n<p></p>\n\n<p>Please read our policy on <a href=\"https://make.sc/disability-services\" target=\"_blank\">Disability Services</a></p>\n</div><h2>Check your understanding</h2><div class=\"action\">\n<p></p>\n\n<ol>\n<li>How do you qualify as having a disability at Make School?</li>\n<li>How do you request accommodations for your disability?</li>\n<li>What is the only way Make School can share your disability information?</li>\n</ol>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzM=","title":"Want to Learn More?","htmlContent":"<p>You can read about these policies yourself in depth in the <a href=\"http://make.sc/academic-handbook\" target=\"_blank\">Student Handbook</a></p><p>Alright, we've had our policy time, let's get back to coding! <strong>Congrats on completing your environment setup tutorial!!</strong></p>"}]},"next":{"id":"T0E6OlBhZ2UtMjIwMg==","slug":"culture-of-feedback","title":"Culture of Feedback"},"previous":{"id":"T0E6OlBhZ2UtMjIwMg==","slug":"culture-of-feedback","title":"Culture of Feedback"}},{"id":"T0E6OlBhZ2UtMjIwMg==","title":"Culture of Feedback","slug":"culture-of-feedback","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNzQ=","title":"Culture of Feedback","htmlContent":"<p>Before we wrap up, we wanted to highlight Make School's <strong>culture of feedback.</strong> We love hearing from students on what's working well, and we love it even more when we hear how we could be improving. Here are some of the things that came out of receiving student feedback:</p><ul>\n<li>Office hours dedicated to math concepts used in data science</li>\n<li>More curriculum related to technical interviews</li>\n<li>More engaging morning activities during our Monday morning all-hands meeting</li>\n</ul><p><a href=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P07-Culture-of-Feedback/assets/feedback.png\" target=\"_blank\">\n          <img src=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P07-Culture-of-Feedback/assets/feedback.png\" alt=\"feedback\" title=\"\">\n        </a>\n<sub>Source: <a href=\"https://certificationmap.com/blog/supporting-the-feedback-cycle-in-the-classroom/\" target=\"_blank\">Teacher Certification Map</a></sub><br><br></p><p>This cycle of receiving feedback, taking action on it, and asking for feedback on the improvement is a core procedure at Make School, and we want it to be crucial to you as well.</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzU=","title":"Getting Feedback","htmlContent":"<p>At Make School, there are numerous opportunities for you to get feedback on your projects, yourself, or anything in between! Instructors and TAs will have <em>office hours</em> to give you feedback, and you can also ask for a <em>code review</em> from senior students to get a pair of fresh eyes on your project.</p><p>For these opportunities and more, we expect you to <strong>ask questions!</strong></p><p><a href=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P07-Culture-of-Feedback/assets/question.jpg\" target=\"_blank\">\n          <img src=\"https://cdn.jsdelivr.net/gh/MakeSchool-Tutorials/Environment-Setup@df97d4b1a516654723207384c2704c1458c51e61/P07-Culture-of-Feedback/assets/question.jpg\" alt=\"question\" title=\"\">\n        </a>\n<sub>Source: <a href=\"https://www.skipprichard.com/ask-questions-to-improve-your-leadership/\" target=\"_blank\">Skip Prichard</a></sub><br><br></p><p>We're all learners here at Make School, and we welcome you to ask as many questions as you have. If you have a question, it's a guarantee that at least one other person has that same question.</p><div class=\"action\">\n<p></p>\n\n<p>Let's ask some questions now! Write down 3 questions you want get addressed during orientation</p>\n\n<p>Once you've done that, please fill out <a href=\"https://forms.gle/ctxDg2t9aWzsM6WQA\" target=\"_blank\">this form</a> with what you hope to get out of during your first term at Make School</p>\n</div><p>Hit the <code>Mark as Complete</code> box once you've done the above survey!</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzY=","title":"Giving Feedback","htmlContent":"<p>As important as it is to get feedback, it's equally important to give feedback. The best way for us to meet your needs is by you telling us what they are!</p><p>We provide a variety of platforms for students to give feedback to us, from opening GitHub issues, to end-of-term feedback surveys, to town halls where we discuss feedback with students in a conversational setting. You can also always give us feedback via the <code>#make-school-feedback</code> channel on Slack!</p><p>In the spirit of collecting feedback, we'd love to hear your thoughts on this environment setup tutorial. <strong>We promise this won't take longer than 2 minutes!</strong></p><div class=\"action\">\n<p></p>\n\n<p>Please take a moment to rate your understanding of the learning outcomes from this tutorial, and how we can improve it via our <a href=\"https://forms.gle/qpzzgfJA3zBByNsz9\" target=\"_blank\">tutorial feedback form</a></p>\n</div><p>Hit the <code>Mark as Complete</code> box once you've done the above survey! And finally...</p>"},{"id":"T0E6OlNlY3Rpb24tMTEwNzc=","title":"That's a Wrap!","htmlContent":"<p><strong>Congrats on completing your environment setup!</strong></p><p><a href=\"https://media.giphy.com/media/rY93u9tQbybks/giphy.gif\" target=\"_blank\">\n          <img src=\"https://media.giphy.com/media/rY93u9tQbybks/giphy.gif\" alt=\"congrats\" title=\"\">\n        </a>\n <sub>Source: <a href=\"https://giphy.com/gifs/great-dicaprio-leonardo-rY93u9tQbybks\" target=\"_blank\">giphy</a></sub><br><br></p><p>We'll see you soon, and we're excited for you to be joining us &#128513;</p>"}]},"next":null,"previous":null}]}},"page":{"id":"T0E6OlBhZ2UtMjE5Ng==","title":"Computer And Environment Setup","slug":"computer-and-environment-setup","sections":{"nodes":[{"id":"T0E6OlNlY3Rpb24tMTEwNTE=","title":"Computer And Environment Setup","htmlContent":"<h2>Computer Requirements</h2><p>In order to participate in Make School, you must have a laptop that meets the the following requirements:</p><ol>\n<li>An Apple Laptop</li>\n<li>At least 8 MB of Random Access Memory (RAM)</li>\n<li>At least 100 GB of Solid State Drive (SSD) Storage</li>\n<li>A battery that holds a charge</li>\n<li>A fully-functioning keyboard</li>\n<li>A fully-functioning screen</li>\n</ol><div class=\"info\">\n<p></p>\n\n<p>Why do we require your laptop to be from <em>Apple</em>? We have found that it is difficult to support the tools/languages we use in our fast-paced learning environment on a PC. Whether it's web, mobile, or data science, a Mac (OSX) environment is much easier to work with both for the students and the instructor, and also goes far to helping guarantee a students success by minimizing hardware issues.</p>\n</div><p>Unfortunately, we cannot offer any sort of exceptions to this policy, students in the past who we have allowed to use workarounds such as a \"hackintosh\" or virtual machines have not been successful. If you cannot meet these requirements, please review the <a href=\"https://docs.google.com/document/d/1a1i2jwXqx__URpWvUf8z8E9iwcdJ05QsPnbjs7Z83Us/preview#heading=h.p5a6appfat36\" target=\"_blank\">Laptop section of our student handbook</a> for available options on how to find an economical laptop that meets these requirements.</p><p>If you have any questions about the laptop requirements, please message <a href=\"mailto:questions@makeschool.com\" target=\"_blank\">questions@makeschool.com</a>.</p><div class=\"action\">\n<p></p>\n\n<p>Ensure that your computer meets these requirements, or that you have a plan in place to obtain a computer that does meet these requirements before continuing through the remainder of this chapter.</p>\n</div>"},{"id":"T0E6OlNlY3Rpb24tMTEwNTI=","title":"Operating System","htmlContent":"<p>Next you must download and install - or update - your operating system. The operating system is the software that allows your whole computer to function. This step is important so that we're all starting off with the same operating system version, as there are minor differences between them.</p><div class=\"action\">\n<p></p>\n\n<p>Update your MacBook's operating system (OSX) to the <a href=\"https://www.apple.com/macos/how-to-upgrade/\" target=\"_blank\">most recent stable version of the Apple operating system</a></p>\n</div><!-- --><div class=\"info\">\n<p>\nThis download may take multiple hours to complete, so please start it now before continuing. </p>\n\n<p>[info]\nNote you may need to delete some files to make sure you have enough space to download the applications in this tutorial</p>\n</div>"}]},"next":{"id":"T0E6OlBhZ2UtMjE5Nw==","slug":"terminal-setup","title":"Terminal Setup"},"previous":{"id":"T0E6OlBhZ2UtMjE5Nw==","slug":"terminal-setup","title":"Terminal Setup"}}}},"staticQueryHashes":[]}