Git Product home page Git Product logo

welcome-to-learn-java-cs's Introduction

Welcome To Learn

Hello! Welcome to Learn. Learn is a Learning Management System. While that sounds quite fancy, for you it means that Learn is an online campus. Through Learn.co we've taught hundreds of students how to be iOS and Web Developers. Now, we are teaching Computer Science theory with Java to existing developers. Before we get into environment setup and the actual work, let's talk about how Learn works and what we expect the students of this class to already understand before starting it.

How Learn Works

Learn uses real tools. That means we don't have students coding in the browser, we don't have small games or quizzes โ€” we just have you, a text editor, and a set of failing tests that you need to pass. Every lab comes with a set of directions as well as a set of tests that you need to pass. Real developers use Test Driven Development. So you will too. For this track we use JUnit and Hamcrest for testing.

The other main tool that real developers use is source control. Here on Learn we use Git and GitHub. We use the same flow that most other Open Source projects use to contribute code. Throughout this course, we assume you know how to use Git. If you don't, check out this awesome tutorial from GitHub. The basic flow for working on and submitting labs on Learn is:

  1. Fork the repository
  2. Clone your fork down to your local machine
  3. Work, work, work. As you need to run the tests, run learn-test. This will run the tests as well as submit your results up to Learn.
  4. When you get all the tests to pass, push your code up, and submit a pull request.

If you are on OS X or Linux, most of this will be done for you using the learn tool. We'll cover more about the learn tool in future lessons after your environment is setup though.

What We Expect You Already Know

We can't cover everything. It's simply too much! So because of that we have quizzes before every unit. These quizzes are meant to tell you what we expect you to know before starting that unit. If you know all of those basic things (ArrayLists, Java, LinkedLists, etc.) then you'll be fine, and you'll probably get 100%. If you don't, there are resources on each quiz that will explain those concepts.

Other than that, we expect that you are already a developer. You've written Java code before, and you are quite expert at using your computer. So getting your environment setup should be a no-brainer.

A Note On Using IDEs

All of the content will work fine if you want to use an IDE to code your Java. Truth is though, if you are using this content as interview prep, you won't have an IDE in an interview. We highly recommend using a text editor to write your code. Then, to compile/test your code, just run learn-test.

In summary, don't use an IDE. A text editor is way closer to the whiteboarding that you'll be doing in interviews.

View Welcome To Learn on Learn.co and start learning to code for free.

welcome-to-learn-java-cs's People

Contributors

loganhasson avatar pletcher avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.