JetBrains Academy: New Projects and Topics in June
Wow, it’s summer already! We hope you won’t forget to take a break to fully enjoy it. Unless you’re in the southern hemisphere, in which case — don’t forget about a well-deserved break too! One great way to get into it is to enjoy one of our educational great games, like Last Pencil. You’ll also learn Python while playing!
Overall in June, we created 7 projects and more than 30 topics for you to try. We care a lot about keeping our content not only useful but also fun, so you can truly enjoy it.
Let’s look at the updates in more detail.
🆕 Swing project: ASCII Mirror (Beta). Medium.
Far, far away, in the lands of ASCII, there are ASCII animals that need your help. Something is not right with their mirrors — they appear crooked. In this project, you’ll find the root cause of the problem and solve it while learning the basics of Java, such as input and output, as well as working with strings, files, and object lists.
- Spring Boot: Introduction to Spring testing
- Working with data: PriorityQueue, Queue
- Additional instruments: Profiling basics
- Code organization: Data Access Object for JDBC, Flyweight
🆕 Project: Last Pencil. Easy.
Become the mastermind of Last Pencil, a game where you get to determine the victor. In this project, you’ll play with a friend who is also learning the basics of Python. Your opponent is a computer that is an expert in the game. And it’s up to you alone to decide who wins – your friend or the computer.
🆕 Django project: HyperSchool (Beta). Easy.
In this project, you’ll create a service for storing and processing information about students and educational courses (just like this one!). You’ll learn how to create models, forms, and page templates, as well as how to store and represent data with Django.
🆕 Bioinformatics project: Read Quality Control. Hard.
In this project, you will learn how to utilize programming for real-world biological tasks. If you love solving problems at the intersection of the sciences, this project is for you.
🆕 Data Science project: A/B Test for Delivery App (Beta). Challenging.
Digital footprints left by users can be extremely useful for increasing conversions and improving the user experience. Companies use such data to test hypotheses about various product features. This is called A/B testing, where A and B are versions of the same feature. In this project, you will use the A/B test framework to test a statistical hypothesis about the interface of a food delivery application.
🆕 Django topic: Why unit testing matters
Additionally, the Decision Tree with Pen and Paper project was released from Beta.
🆕 Project: University Admission Procedure. Challenging.
It takes a lot of hard work to get into the university of your dreams. Indeed, the process is so stressful that it can be easy to overlook how much work the admissions process is for universities, particularly given the sheer volume of documents they need to process. In this project, you’ll put yourselves in the shoes of admissions officers tasked with implementing an algorithm to determine which students will be accepted. At each stage, the algorithm will become more complex and comprehensive.
- Control flow: Goto and labels
- Functions: Introduction to generics, Advanced usage of generics
- Networking: Making HTTP requests
- Types and data structures: Slice expressions
Bash (Unix shell)
🆕 Project: Simple Calculator (Beta). Easy.
In this project, you will learn to create a simple calculator while familiarizing yourself with basic bash commands. You’ll work with variables, user input, arithmetic operators, conditional statements, functions, arrays, regex, and the bc utility, which stands for “basic calculator”.
- Android: Retrieving declared views, RecyclerView Adapter mastery
- Concurrency and parallelism: Сontext and dispatchers, Executors, Interruptions, States of a thread
- Object-oriented programming: Interface inheritance
- Ktor: Exposed Introduction, Response handling, Basic and form authentication, Ktor CSS DSL, Ktor HTML response
- Control flow: Exceptions and resources
- Additional instruments: kotlinx.html
🆕 Topic: Input/Output
- Databases and SQL: Comparison operators
- Essentials: Insecure cryptographic storage, Dependency injection
- Dev tools: Introduction to GitHub actions
- Algorithms and structures: Best, average, and worst cases
Projects marked as Beta are still in the early stages of testing. If you’re interested in checking out Beta projects on the platform, make sure the Beta-tester feature is enabled in your profile settings.
If you have any questions or if you would like to share your feedback, feel free to leave a comment below, contact us at firstname.lastname@example.org, or share your thoughts with us on Twitter, Facebook, or Reddit.
Your JetBrains Academy team
Subscribe to Blog updates
Thanks, we've got you!