Hello novice programmers. Many of you are looking for interesting projects that will show your portfolio and encourage future employers to look at you differently. In this article, I am going to share with you my seven ideas for amazing Java applications.
When I was learning to create applications in several programming languages and mastering technical skills, the most important thing for me has always been creating something that will be used by users. Building your own projects is really the best idea for learning programming.
The projects I have collected here are great for both new and experienced Java developers, they will give you a lot of fun and will allow you to gain experience in Java. Are we starting?
CMS / CRM system
Such systems, and more precisely backends to them, are already the basis, and it does not make sense to write too much about them. Your own CMS / CRM system will certainly teach you how to create CRUDs, databases and server issues. In addition, by creating a backend for such a server, you can learn, among other things, to create and manage microservices. If you decide to go into this type of project, you will also definitely master the skills related to SOAP and REST. You will also learn the rules of communication between individual microservices. This is how Magnolia was created.Own messenger
In my time, everyone wanted their own chat or other means of communication. Now is the era of more serious messaging. If you start writing your own messenger, in addition to standard CRUD-related things, you will also learn about the possibilities offered by websockets or asynchronous backends.
Here you will learn to operate on cryptocurrencies, manage them and create transactions. The topic is really forward-looking. If you think carefully about the rules of transaction management, you can reach for a solution called AKKA for data streaming.
Yes, you didn't hear it. An example of a computer game written in Java is Minecraft. The idea related to a computer game will tell you how to use and create plugins, game modification mechanisms, assets with graphics and music.
Application for downloading information about companies
It is one of the simplest and most effective ideas for your own business. Just share the api for downloading company app or api for shipments. Here you will definitely focus on REST, but if you want, you can write an open source library instead of an application.
Internet search engine
Yes, you can try to write your own search engine. The first version of Google was written in Java. You can then extend it with appropriate search algorithms. Additionally, you can also use api from Google and create a webscrapper. Here the possibilities are endless.
Own ATM prototype
And this is not a joke at all. Java is doing great on a Raspberry Pi board. If you want to do something different than everyone else, create a small, home ATM. It is a project that will allow you, in addition to programming, to rub against electronics and programming serial interfaces in Java.
Additional idea - Application aggregator
The application aggregator should aggregate a few or a dozen solutions into one. An example of a brilliant application integrator was the Armitage frontend for many open source security tools. But you can also go the other way and create a distributed system log aggregation system using a client-server architecture.