About CodeGym

What is CodeGym?

CodeGym is:

  1. a website
  2. an innovative online training course available on this website
  3. and a community of people who want to become (or have already become) Java programmers.

The course consists of four quests, each with 10 levels. Each level is full of lessons (on Java, interview questions, motivation, employment, and fun) and tasks (Thousands of them! The more advanced quests also include mini-projects).

You can access to the materials sequentially, as you make progress. CodeGym has many features. We've mentioned only the most interesting: instant task verification, solution recommendations, advice from mentors. Oh, yes, and the course has a storyline. =)

The goal of the whole course is to have fun, stay happy, and gain real Java programming skills in order to easily get a job as a programmer.

What will I learn from CodeGym?

First of all, you will learn Java Core. This encompasses the basics of the Java language, everything that EVERY potential Junior Java Developer should know. And you'll learn it through practice by completing more than 1200 tasks, including mini-projects (games such as Sokoban and Star Wars, online chat, an ATM emulator, and more).

Additionally, besides Java, some of the lessons are devoted to the interview process and how to write a resume.

Where can I see the learning plan?

For example, <here>.

Do you issue certificates?

Programming is a hands-on activity. No potential employer will put stock in even the most beautiful «piece of paper» that says you've completed courses. So, no, we don't issue certificates. We teach programming so that CodeGym graduates can get a job regardless of whether they possess a diploma, certificate, or other official educational trophies.

What will CodeGym give me?

A combination of theory, practice, and most importantly, feedback about the code you write — that's what CodeGym gives you.

It's impossible to become a programmer just by reading books or watching videos! To learn how to program, you need to... program, a lot, and learn how to think like a programmer. To help you accomplish this, the course has over 1200 tasks of varying complexity (with intelligent automatic verification of your solutions). This will give you more than 1000 hours of practical programming experience.

Where can I find reviews about CodeGym?

  1. Anywhere on the Internet. Type in "CodeGym reviews" on Google and see the search results. We don't filter third-party reviews, so you can see not only the positive reviews (it's nice that there are far more of them), but also constructive and not so constructive criticism.
  2. Our website also has a Reviews section. Here you can leave a review and read other users' opinions.

P.S.: Reviews are subjective, and only you can form the correct impression of what the course means to you. Try learning with CodeGym. The first quest, which covers the initial Java course, is completely free. So you can form your own opinion about the course.

About tasks

What's so special about your tasks? Wouldn't it be better to program on your own and not pay for a «collection of tasks»?

First, independently choosing the tasks that will help you grow in the right direction is not an easy feat, especially for novice developers. Second, even if your program produces the right answer, that doesn't mean that it is implemented correctly.

Accordingly, an automatic solution verification system plays a very important role in our course. The intelligent validator will check your solution in a flash, analyze any errors, and provide recommendations on how to fix them.

How many tasks do you have? What are they like?

The four CodeGym quests have over 1200 tasks. They are quite varied:

  • Code entry. This is the simplest type of task: mechanical code entry. There aren't very many of these, but they are necessary in the first stage of learning to help the student get accustomed to code.
  • Review tasks. These tasks usually come right after the lessons. Most often they are not difficult, though anything is possible. =)
  • Challenge tasks. These tasks require you to run ahead a little bit: they contain something that the lessons haven't yet covered. Hint: the material you need to complete challenge tasks is usually given on the next level.
  • Bonus tasks. They usually require you to think hard, and sometimes — to look for solutions on the Internet.
  • Mini-projects. These are the biggest tasks. As you do them, you will make interesting and at times useful programs, for example, a small game, a URL shortener, or an ATM emulator. You'll complete mini-projects in phases (the task conditions are broken down into 5-20 subtasks).

What are the task requirements?

To reduce the number of questions like «What exactly do I need to do in this task?», we give the student a list of requirements that must be met. What's more, each requirement will have a check mark next to it if everything has been done correctly.

What are recommendations?

So, you've got an error in your code. It's not working correctly for some reason. But why? No one knows. Well, someone knows, but where can you find this someone? Beginning with CodeGym version 2.0, the student can use code recommendations: Your virtual mentor will comment on your code, point out the error, and in 95% of cases will explain why it happened.

Teaching methodology

What makes our teaching methodology unique?

A combination of factors make it unique.

1. Practice, lots of it! We understand that saying «our course is a bazillion percent practice» has already made you nauseous. But in our case, practice really is the foundation of the foundation. Our course is not based on webinars, nor lessons (though we do have lessons, of course), but on tasks. We have more than 1200 of them.

2. A intelligent system (virtual mentor) that lets students:

  • Instantly submit tasks for verification and find out whether their solution is correct
  • Get task requirements
  • Get comments from the virtual mentor: it reports the errors in your program and tells you how to fix them
  • Analyze your code style. When working in a team, easy-to-read code is very important.

3. Comprehensive plan.

The ultimate goal of completing CodeGym is to find a job as a Java programmer. CodeGym offers a lot to help you achieve this:

  • Java Core lessons
  • Lessons about related technologies (for example, JavaScript)
  • Tasks with automatic code verification
  • Mini-projects for practice
  • Motivational lessons (motivation is VERY important for self-study!)
  • Links to additional materials
  • Questions and answers for job interviews
  • Lessons on resume writing and expert-review of your resume

4. It's important not to die from boredom when learning, so we have lectures interleaved with an unobtrusive, yet interesting plot and thoughtful characters. You are a young robot named Amigo, who is being taught how to program on the spaceship Galaxy Rush. In your journey, you are accompanied by very curious people. =) The rest you'll learn from the course.

How does CodeGym differ from other courses?

  • A LOT of practice: more than 1200 tasks, including mini-projects
  • Online course with a comprehensive plan «link to the plan»:
  • You can study at any time and at your own pace
  • Instant task verification system
  • Recommendations and code analysis
  • Code style recommendations
  • Web IDE with syntax highlighting and auto-complete for completing tasks directly on the website
  • Plugin for completing tasks in a professional IDE: IntelliJ IDEA
  • Opportunity to participate in an online internship
  • Gamification and plot
  • Lots of materials to help you get a job: help with resume writing, questions for job interviews (with analysis), advice from folks who have found work
  • A huge community where people share their experiences and help each other in their studies.

Why is the text in the lessons highly formatted?

Have you noticed that code is also formatted in good development environments? This is done to make it easier to read. We do the exact same thing in our texts.

IntelliJ IDEA plugin

What is IntelliJ IDEA and why do I need it?

IntelliJ IDEA is one of the most popular integrated development environments (IDE). It is used by most Java programmers. When you get a job, you will most likely write code in IntelliJ IDEA. This IDE significantly speeds up the work of the programmer and helps develop good code style. To allow you to perfect your skills under real working conditions, we've developed a special plugin for completing CodeGym tasks in IntelliJ IDEA. You can use it right in IntelliJ IDEA to open a list of available incomplete jobs and submit them for verification in one click. You'll learn more about this on the 3rd level.

How do I download and configure the plugin?

The third level of the first CodeGym quest has detailed instructions on how to download, install, and configure the plugin.
<Instructions on how to download the plugin>

My Internet connection uses a proxy server, but the plugin can't authenticate on the server. I configured the plugin according to the instructions. What's the problem?

You need to configure the proxy for IntelliJ IDEA. Link to instructions on how to configure the proxy: https://www.jetbrains.com/help/idea/2016.1/http-proxy.html

The task code in IntelliJ IDEA is highlighted in red. What should I do?
Most likely, you haven't connected the SDK in IntelliJ IDEA. To fix this, in IntelliJ IDEA go to File -> Project Structure -> Platform Settings -> SDKs.
On the Classpath tab, you need to connect all the jar files (they can be found at «Java path»/jre/lib, On Windows, the default Java path is — C:\Program Files\Java).