Zookeeper with Java
- Best to start
Learn the very basics of Java coding by building a simple tool for zookeepers. Get to know how to work with variables, strings and arrays, put them in while loops and develop a simple console app from scratch.
Begin grasping coding fundamentals by creating a simple console chat bot from scratch. This bot will be able to engage in basic conversation with you and perform simple arithmetic. During this journey, you will play some word and number games that you are going to implement on your own. Pack up and let’s hit the road!
Imagine that you're the owner of a new small corner shop. You are doing well and want to determine how much you earned in the first month. Create a simple tool that will calculate your net income. Upon completing this project, you can use this tool for your own accounting needs.
What can be better than a cup of coffee during a break? A coffee that you don’t have to make yourself. It’s enough to press a couple of buttons on the machine and you get a cup of energy; but first, we should teach the machine how to do it.
In this project, you'll program a coffee machine simulator using Java. The machine works with typical products: coffee, milk, sugar, and plastic cups; if it runs out of something, it shows a notification. You can get three types of coffee: espresso, cappuccino, and latte. Since nothing’s for free, it also collects the money.
This project allows you to better understand the basic OOP, its main concepts such as classes, class methods and attributes, and get a taste of Java. Practice working with methods, challenge yourself with loops and conditions, and get more confident with OOP.
Secret agents use encryption all the time. You know that everything can be encrypted as different characters. What about encryption that uses only one character and space? This method has a name — the Chuck Norris cipher. In this project, you will create a program that can encrypt any text into a sequence of zeros and spaces and decrypt this sequence into text.
We use numbers every day. But do you know how many different properties they have? Let's take a look at some of the amazing properties of numbers. After completing this project, you will write a program that knows how to determine whether a number is Palindromic or Gapful, or how to distinguish Spy numbers from others. Numbers can be fascinating!
Everybody remembers this paper-and-pencil game from childhood: Tic-Tac-Toe, also known as Noughts and crosses or Xs and Os. A single mistake usually costs you the game, but thankfully it is simple enough that most players discover the best strategy quickly. Let’s program Tic-Tac-Toe and get playing!
Do you know how traffic lights were invented? Some time ago, it was decided to replace the traffic police officers with a looped automated system that gives information to drivers about whether they can continue driving or not. In this project, we will implement a simplified version of such a system for a road junction in which many roads converge to one. You will practice concepts frequently tested in technical interviews at top tech companies.
When learning a new language, it can be hard to remember all the new vocabulary, which is exactly where flashcards can help. Typically, flashcards show a hint (a task or a picture) on one side and the right answer on the other. Flashcards can be used to remember any sort of data, so if you want to create a useful tool to help your learning and your programming skills, this project is for you.
Get firsthand experience of creating a small inhabited universe and observe the many patterns in which this “life” can evolve. Generation by generation, watch the cells come and go, reacting to their environment, perishing from loneliness or finding comfort in company. In this project, you will write a simple “Game of Life”, a classic toy for programmers to entertain and educate themselves. Careful: might be hypnotizing!
The International Union Against Idleness (IUAI) announced a competition for an application that would motivate users. There are prizes involved. Since you like competing and know a little bit about programming, you asked your friend to prepare an interesting algorithm for a quick buck. Unfortunately, you weren't clear enough, and instead of a ready-made program, a friend prepared a flowchart of Honest Calculator. You will have to put some effort into assembling it.
Tetris is one of the best-selling video game franchises of all time. You know the rules. Move and rotate blocks of various shapes to fill the empty space on the screen. Fill horizontal rows with the blocks to continue the gameplay. The game is over when there is no free space on the screen. In this project, you will practice concepts frequently tested in technical interviews at top tech companies.
Everybody remembers this paper-and-pencil game from childhood: Tic-Tac-Toe, also known as Noughts and crosses or Xs and Os. A single mistake usually costs you the game, but thankfully it is simple enough that most players discover the best strategy quickly. Let’s program Tic-Tac-Toe and get playing!
Everyone has their own personal reading history, and as we grow up, we are able to comprehend more and more complicated texts. But how do you estimate the level of difficulty of a given text, and how do you teach a computer to do that? In this project, you will find it out: write a program that determines how difficult the text is and for which age it is most suitable.
Far, far away, in the ASCII lands, there are ASCII animals that urgently need your help. Something is not right with their mirrors — they appear crooked. Let's help them with this anomaly and hit the road. You will practice concepts frequently tested in technical interviews at top tech companies.
Everything goes digital these days, and so does money. Today, most people have credit cards, which save us time, energy and nerves. From not having to carry a wallet full of cash to consumer protection, cards make our lives easier in many ways. In this project, you will develop a simple banking system with database.
We do calculations daily. You may need to know how much change you'll have after purchase or how many points your team needs to win the cup. A calculator can do the heavy lifting for us. Have you ever wonder how a calculator works? In this project, you'll create a full-fledged calculator from scratch that can be run on your computer.
Graduate
We’re all quite used to our good old decimal system of numerals. But let’s not forget that there are other ways to count! Whether we need to convert numbers from one system to another just for fun or to store large data more efficiently, a converter proves helpful. In this project, you will create your own tool that will help you convert numbers from one system to another.
In the modern world, data has become so abundant that processing it is no easy business. How can anyone make sense of all these words and numbers? In this project, you will write a program that processes textual and numeric data and sorts it. Your program will be able to determine the biggest or most frequent pieces of data and perform the necessary calculations on them. You will practice concepts frequently tested in technical interviews at top tech companies. Data is waiting to be sorted!
Artificial intelligence is not just a smart system: it's a smart system capable of self-learning. In this project, you will create a simple interactive game where the computer will try to guess the animal that the person has in mind with the help of yes or no questions. During the game, the computer will extend its knowledge base by learning new facts about animals and using this information in the next game. You will practice concepts frequently tested in technical interviews at top tech companies.
Not to sound overly serious, but it’s very important to manage your budget. This implies analyzing your expenses and estimating the income, which sometimes may be difficult to do yourself. Luckily, technology is there to assist: you can create your own personal budget manager program that counts the ins and outs and helps control the finances.
Online learning is gaining popularity. A good education platform can manage registrations, track learning progress, send notifications and newsletters to many users worldwide. It is a huge volume of work indeed. In this project, you will build an application that keeps track of the registered users, their learning progress, and metrics. It will also provide detailed information about each user or any category of users and the overall statistics for the entire learning platform.
All sorts of creatures lurk around the Internet, including trolls, pirates, miners – and hackers. In this project you’ll wear the hat of a real hacker. You must connect to a secret server without knowing the password. Your task is to write a Java program that can hack this password, and do so in the quickest way possible.
Every day, people face a lot of difficult choices: for example, what to prepare for breakfast, lunch, and dinner? Are the necessary ingredients in stock? With the Meal Planner, this can be quick and painless! You can make a database of categorized meals and set the menu for the week. This app will also help create and store shopping lists based on the meals so that no ingredient is missing.
Have you ever been worried about getting lost in the subway? Do you need to find a faster route to your destination? Write an application that will help you better navigate the complicated metro system. You will practice concepts frequently tested in technical interviews at top tech companies.
Calculators are a very helpful tool that we all use on a regular basis. Why not create one yourself, and make it really special? In this project, you will write a calculator that not only adds, subtracts, and multiplies, but is also smart enough to remember your previous calculations. You will practice concepts frequently tested in technical interviews at top tech companies.
Visualization always draws attention. And it makes learning easier. What if we could visualize everything? In this project, you will build a Java GUI application with Swing to create graphs and visualize graph algorithms like traversals, spanning trees, and shortest pathfindings. You will practice concepts frequently tested in technical interviews at top tech companies.
Graduate
Tired of playing Tic-Tac-Toe? Want something a little more challenging? Connect Four is a great game that fuses the complexity of a larger game board and the need to line up more pieces. In this project, you will create a version of the game with a graphical user interface that you can run on your computer. You will practice concepts frequently tested in technical interviews at top tech companies.
It's so easy to lose your precious data — unless you store it on a server. Besides, file servers allow you to access your files remotely, no matter where you are. In this project, you will create your own file server, even though a simple one. You will practice concepts frequently tested in technical interviews at top tech companies.
Mazes are amazing: keep running, find the exit if you can! If you are not too happy about getting stuck in the actual maze, you can entertain yourself with a virtual one. In this project, you will write a program that generates mazes and looks for a way out. You will practice concepts frequently tested in technical interviews at top tech companies.