Education shouldn't be a shrine. That's one thing we are sure of! It can and should be changed. And that's just what we've done: we developed the CodeGym programming course, which we dare say is unlike any other online course. It has no long video lessons or lists of assignments with unclear expectations about who will check them and how. Instead, there is a clear goal, special learning tools have been created, and what you need to do is well-defined.
Top 12 features of CodeGym lessons
Usually, online programming courses take the form of textbooks or video tutorials. We've taken an entirely different approach. We've created a series of short lessons on Java, stuffed them with practical exercises, and provided "smart" tools for verifying that your solution is correct. And all this is wrapped up in a consistent and holistic course!
1. CodeGym is kinda like a game. We've got levels and "leveling up"
In other words, we help you level up as a programmer. CodeGym isn't just Java lessons for beginners — it's an opportunity to reinforce what you learn through practice "here and now". You read brief lessons and then immediately complete tasks and get rewarded. It's logical and understandable. You'll complete a wide variety of tasks. The most common tasks involve writing code to solve some problem. Additionally, you'll need to learn to read others' code, fix bugs in it, improve it (refactor it), and add new features to it.
Sometimes you'll be forced to watch interesting videos about people in the tech world. Those learning to program from scratch
also benefit from typing in code. Those who progress far enough will encounter big tasks, which are actually mini-projects: completing these will involve writing a few interesting programs in a more serious way (small games, an online chat application, etc.).
2. Java lessons, and nothing else!
Like any other programming language, you can study Java for a loooong time. To not get too bogged down at the very beginning of the journey, we've eliminated topics that beginners don't need. Programming lessons for beginning Java developers
are often filled with such fluff. CodeGym retains only what is most essential. And these aren't empty words: we've analyzed hundreds of job openings to arrive at this approach. So our claim is that the course includes precisely those topics that an aspiring junior Java developer needs to know to find a job.
Becoming a junior Java developer will take you between three months and one year, depending on how much time you dedicate to your studies.
3. 500 mini-lessons and 1200+ exercises
This course has a lot of practice. A LOT, LOT, LOT, LOT of practice! The course contains 500 mini-lessons (i.e. short lessons on Java) and more than 1200 exercises. The vast majority of them are small tasks, but there are thousands of them! By completing them all, you'll get the minimum experience necessary to get on your feet and tackle more serious problems. In addition, the course has so-called "big tasks" (which are actually mini-projects) and useful videos.
4. Four quests, forty levels, tons of practical knowledge
The course is broken into 4 quests. Each quest has 10 levels that you'll have to pass.
The first quest includes Java lessons that assume no prior knowledge of the language—just the very basics, the syntax, and a huge number relevant tasks.
Some of the tasks are super easy. To help you master the material, there are more difficult tasks that will require you to plow ahead and use Google. And there are challenging tasks for the most daring.
You can only advance to the next level once you've completed most of the tasks in your current level. If some of them are just too tough to crack, they can be safely postponed for later. Working this way, when you get to the end you'll have about 500 hours of practical programming experience.
That's a solid basis for a bid to become a junior Java developer!
||This quest is for beginners. The tasks and lessons about Java in this quest will help you master the language's basic constructs (variables, conditional operators, loops, methods, classes, and basic information about collections and objects)
||In this quest, you'll learn the basics of OOP, and get acquainted with serialization and method overloading
||Multithreading is the most important word in this quest. But that's not all we'll talk about here. We also address how the Object and String classes are organized and many other things. You can study this quest and the next simultaneously.
5. Complete tasks wherever you want
Complete the tasks and submit them for verification:
- right on the website. CodeGym is not just Java lessons for beginners with exercises. It's also an interactive platform for completing your tasks. This is convenient: you explore an example in a lesson, and then you have to complete a very similar task. You can complete these small knowledge-reinforcing tasks right on the CodeGym website: to make this possible, we developed the Web IDE tool;
- To complete tasks that require more time, we recommend using the IntelliJ IDEA professional development environment. To make things more convenient for CodeGym students, we've created a helpful plugin for this popular IDE. The plugin lets you get the task conditions in a single click, and just as easily and quickly submit your solution for verification;
- after being submitted for verification, your code is synchronized across your various computers/devices if you use multiple devices.
6. Instant task verification
Students have firsthand experience with the following situation: your assignment is finished, but your teacher doesn't check it. That's exactly how it works with face-to-face courses where a single teacher provides beginner Java lessons, has to deal with two dozen (or more) students simultaneously, and simply doesn't have the time to check each student's work. On CodeGym, you'll find out whether your solution is correct in an instant. You
- write your solution in Java;
- press the "Verify" button: your solution is submitted to the CodeGym server!
- A moment later, you learn whether your solution is correct and get recommendations if you have errors.
7. CodeGym recommendation system
It's very difficult for a beginner to catch any programming errors that the compiler misses. You've finished the task, but you don't know if your solution is correct? No problem: The CodeGym recommendation system will indicate where errors are hiding in your solution.
8. Help page
If the CodeGym recommendation system isn't able to help you, and you find yourself firmly stuck while trying to complete some difficult task, take a look at the help page—we won't leave you to face your problem alone. Another CodeGym student or staff member will certainly help you.
9. Groups based on interests and cities
Our community consists of interest groups where you can read articles written by other students and industry professionals, write your own posts, participate in competitions, and comment on and discuss Java or other topics related to programming.
10. Social networks and CodeGym
Follow CodeGym on Facebook. In our social networking groups, you can discuss IT news and Java programming lessons, share your achievements with friends, watch video lessons on Java, or ask for help.
11. Scope of the material
The course lessons, as well as articles posted in groups
, contain many references to other Java resources, books, and videos. This is no accident. The way the material is delivered is designed to help you develop an essential programming skill: the ability to search the Internet for the information you need. Have you found good beginning Java lessons that supplement CodeGym lessons? That's absolutely wonderful!
CodeGym's purpose is for you to gain new knowledge and apply it in practice.