JetBrains Academy
The place for learning and teaching computer science your way
JetBrains Academy’s New Projects and Topics: January Update
The start of the new year is the perfect opportunity to follow through with resolutions to learn something new or sharpen your skills. Luckily, there are plenty of knowledge areas to explore in computer science and lots of ways to go about it.
JetBrains Academy can help! This month we’ve prepared 7 new projects and 39 topics, so you can tackle learning goals big and small. Check them all out and choose which project or topic you will add to your study plan this year.
Python
🆕 Project: ELISA (Beta). Challenging.
Ever wanted to take part in a laboratory experiment? Practice modern science by obtaining protein concentrations from an ELISA test! Using raw data files, write a Python function that automates the process of measuring protein levels.
🆕 Project: Sorting Tool (Beta). Hard.
Data has become so abundant that filtering it is no easy task. In this project, you will write a program that processes textual and numeric data and sorts it. Along the way you’ll become familiar with lists and collections and learn how to work with files, arguments, and the command line.
Additionally, the Movie Quality Predictor and Logistic Regression from Scratch projects have been released from Beta.
🆕 Topics: More on multithreading, Yield from, SQL Alchemy migrations
Kotlin
🆕 Project: Remo (Beta). Easy.
In this project you will learn how to work with a remote – a repository in Git that tracks all of the changes made to files in your project, building a history over time. It will take you through basic Git commands like initializing a repository, staging your changes, and making commits.
🆕 Topics:
- Additional instruments: JUnit
- Concurrency and parallelism: Flows
- Control flow: Stack trace
- Types and data structures: Retrieve collection parts, Retrieve single element
Android
🆕 Project: Phrases (Beta). Challenging.
Sometimes the right quote at the right time can help you stay inspired. In this project, you will create an app that sends you push notifications with motivational phrases during the day. Learn how to store your data, show it with RecyclerView, explore how to send a push notification, and build a fully functional app from scratch.
🆕 Topics: Starting activities: intents in detail, Hello, Compose!, Introduction to Jetpack Compose, ContentResolver
Java
🆕 Project: Rock-Paper-Scissors (Beta). Hard.
Rock Paper Scissors is a very famous game which you might have played with your friends to resolve a dispute. Now you can create a Rock-Paper-Scissors-Lizard-Spock – a more advanced version of the classic game – and play against the computer. You’ll practice using arrays, the Random class, formatted strings, and algorithms.
🆕 Topics:
- Java internals: Jakarta EE overview
- Multithreading: ExecutorService
- Code organization: Reactive programming concepts
- Spring Boot: Database pre-population, JPA PersistenceContext
- Algorithms and problem-solving techniques: Dynamic programming approach in action
Frontend
🆕 Project: First Landing (Beta). Easy.
Create your first landing page to promote a new product and sharpen your HTML and CSS skills. You will choose which product to highlight and will build all of the necessary blocks – from a navigation bar to a contact form – without JavaScript.
🆕 Project: Amazing Prices (Beta). Hard.
You’ve created an outstanding product for your users! Now it’s time to show the pricing details. In this project, you will design a layout for the pricing page of a service or product. Practice your frontend skills using HTML and CSS and build a page based on our Figma designs.
We’ve also released the HyperCinema project from Beta.
Go
🆕 Topics: Avoiding common problems with channels, Channels, Goroutines, Using stack in Go, CRUD operations — Read
We have also released the Game of Life project from Beta.
Scala
🆕 Topic: Algebraic data types
Math
🆕 Topics: Logarithmic function, Linear inequality and geometric interpretation, Combinations, Numerical and categorical data, Empirical rule
Bash (Unix Shell)
The True or False project that we introduced last month has been released from Beta.
Fundamentals
- NLP: Hugging face transformers, Language models, Syntactic parsing
- Dev tools: Conditional execution, Globbing, Dockerfile (COPY, ADD, ENV, ARG), Dockerfile (FROM, LABEL, CMD, ENTRYPOINT)
- Algorithms and structures: Flow network
- Databases and SQL: Collections of documents
- JVM: JVM options
Enjoy learning!
Your JetBrains Academy team