Welcome to Flatiron School! We're thrilled that you've joined our community of learners! In this lesson, we want to talk about the Learn platform and philosophy.
The Learn platform is designed for people who are passionate, curious, self-driven, and serious about learning.
We are comrades in a never-ending quest for knowledge. While there are no shortcuts, we believe that by providing knowledge in an optimized order, reinforcing knowledge with automated feedback from hands-on labs, and providing space for discussion and feedback, you will learn quickly. Learn is Flatiron School's framework for delivering that experience to you. Our goal is to provide you with the right materials, support and structure you need to discover your own love for the material.
Imagine that we want to learn how to build a birdhouse but do not have any experience with carpentry. Where would we start? Is it necessary to first learn everything about the particular type of wood we are using? Or how nails and hammers are made?
No. It may be valuable to know what type of wood we're using. It may be interesting to understand how nails are made. However, not having these facts won't stop us from successfully building a birdhouse. In fact, we likely won't fully appreciate the materials, the wood and nails we're using until we've gone through the experience of building the birdhouse first.
We call this approach "starting in the middle." We neither work bottom-up (explaining wood and nail manufacture as a first step) nor top-down (here's a bird house, taking it apart and explaining each concept one by one). Instead we work from the middle: provide a relatable context, try it, try it again, break it down (a bit) and then explain how it integrates to the next idea. Let's imagine how this relates to birdhouses.
After building birdhouse "Version 1," we can go back and better understand the best type of wood to use for our purposes, or realize that glue works just as well as nails and is much easier to use. When we build birdhouse "Version 2," we'll repeat the original again, but it'll be way better. By birdhouse "Version 3," we'll know how everything fits together just by looking at the materials. By "Version 15", we'll have developed a custom birdhouse building tool that uses phone location to choose the optimal wood for the bug populations and climates, cuts the wood, glues the edges, assembles and ships the birdhouse within 30 seconds of ordering!
Look! We just built a birdhouse empire without knowing any of the details of nail manufacture, wood harvesting, or the biology of birds.
Learning how to program is not much different. Where do we start? How do we know what is necessary to understand first? Again, we start in the middle.
Learn handles the guiding from the middle, for you. It provides an environment that you don't have to build from scratch. We give you a place to code. You get to focus on coding, not setup.
Many people on Learn have already spent some time dabbling with coding by using the amazing and plentiful resources all around the internet. In developing the content here on Learn, though, we make no assumptions. It is designed for absolute beginners. Lessons build off each other, providing the tools and concepts necessary to complete future lessons.
What we don't do, however, is dumb anything down. We believe in your infinite capacity to learn. We do our best to offer a curriculum that is clear, digestible, engaging, challenging, and deep. The curriculum you'll encounter on Learn is rigorous and will demand that you be patient, resourceful, and gritty.
From the beginning, we'll make sure you have the support and tools you need; you just need to bring the grit.
We don't believe in learning alone. As you make progress, expect to bump into other learners just like you, ready and willing to help each other succeed. Together, we can go further than we could ever go alone. We expect everyone on Learn to be friendly, respectful, helpful, and nice. Learn is something special.
If you get stuck following the instructions, ask! If you get stuck getting a coding concept, ask! Instructors from the community will be glad to help. There is an 'Ask a Question' button in all lessons on Learn.co for this reason. You can also see questions from other students who may be working on similar problems.
As mentioned previously, one of the time-consuming parts of getting started with programming is setting up your work environment. There's a lot room for error. Also, many computers need extra programs or setup to be used for coding. Many would-be developers have tossed their laptops out the window in frustration when trying to get their environment set up. They wrongly assumed that "If I can't set up the language, there's no way I can use the language." Nothing could be further from the truth!
Learn provides a solution for this so you can get to writing code faster: the
in-browser Learn IDE. The in-browser IDE is a fully-functional text editor and
command line interface, connected with your GitHub account through Learn. It
automates some steps for us and also comes with some built in command line
tools such as
learn, used for running tests in later lessons. If "command
line" and "editor" are still new concepts to you, don't worry, you'll be
getting to know them soon enough.
Later, when you dive deeper and create your own projects, you'll likely decide to set up your own work environment. If you're already comfortable in the command-line and with a text editor, you might want to set up your own local environment instead. If that describes you, visit this guide.
If you have opted for the in-browser IDE, you'll notice a 'Sandbox' button on the top right of this lesson readme. This will also extend to all other READMEs as well. The Sandbox acts as a scratch pad for practicing as you read lessons, and will save any files you create or edit for later reference. On lessons where you have to write code to pass tests, the 'Sandbox' button becomes an 'Open IDE' button, which, when clicked, will create your own copy of the lesson files to work on.
Resources for setting up are linked at the bottom of this lesson. And remember, if you're not sure of something, feel free to use the 'Ask a Question' button!
You're just getting started, and we're happy you're here. To proceed to the next lesson, press the "I'm Done" button in the right rail then click "Next Lesson".
View The Learn Philosophy on Learn.co and start learning to code for free.