Even in programming, there are easy-to-learn skills that go beyond regular expressions, databases, and version control systems. I will talk about what can be learned in 72 hours.
Create a program for parsing sites and displaying the necessary information in a convenient frame. This will allow you to keep track of news, weather and other important events. The program is easy to implement and will save you a lot of time.
Learn the Linux editor Vim, which can be enhanced with extensions and add-ons. Vim is not entirely intuitive, so learning is required. It supports two input modes (text and commands) that you can switch between.
Develop your own calculator with simple operations, matrices, vectors and everything else a coder needs; add singular value decomposition, least squares and the ability to calculate the inverse matrix to it – you get an indispensable tool for people who often perform complex calculations, but at the same time applicable in everyday life.
Master one of the distributed databases
If you haven’t mastered SQL yet, start with it. Databases are used in everything from web applications to artificial intelligence. In addition, distributed databases like MySQL or PostgreSQL are used in production. You also need to master the CAP theorem and the MapReduce algorithm.
Learn extends in Java (swing)
Programming skills with extends in Java make working with frames and panels easier: the Frame class extends JFrame/JPanel. Thanks to this approach, you will not need to write a new JFrame.set*, Jframe.add* each time, just use set* or add* in your code. This improvement doesn’t seem like a big deal at first, but when dealing with a huge number of elements, extending classes in Java is a good idea.
LaTeX, BibTex, pgfplots
TeX is a text layout language for serious people. LaTeX skills will allow you to quickly create PDF files with mathematical formulas, code and graphics.
Learn how to pass interviews
Prepare for interviews by researching online and filling in gaps in your least learned languages as employers ask. This will allow you to familiarize yourself with the general requirements in the IT services market and improve your programming skills.
Learn the basics of working with Linux. It is one of the most popular development operating systems and is often used for remote servers. In addition, the Kali Linux distribution is often used by hackers and information security specialists.
Fundamentals of Graph Theory
Graphs are used everywhere in the modern world, from the file system tree to search engine algorithms and social media friend graphs.
Version control systems (VCS)
Learn to work with one of the VCS (for example, Git version control system). Such a tool protects against errors, because it allows you to roll back if changes in the program did not lead to the desired result and you need to go back several steps.
Implement one of the machine learning algorithms
In 72 hours, you can master some machine learning algorithms and implement them from scratch: learn how to read a CSV file, create training and test datasets, run an algorithm with customizable parameters, and get simple conclusions from relevant statistics.
Learn to use the necessary resources
Create a profile on Stack Overflow and learn how to use these Q&A systems. Some of you will find useful tips and tricks, someone will get a free practice.
Learn OOP/Design Patterns
If you know OOP, start learning design patterns right away. They are often used in production code. Their knowledge is often asked in interviews. Having mastered them, you will become a better specialist.
Learn some practical sorting algorithms. Systematization simplifies life and makes life much easier for a coder.
Work on the command line
The command line greatly speeds up work and is a necessary skill for interacting with a remote server. Often the ability to work in the terminal is included in the list of requirements for various vacancies.
Learn how to develop practice tests for code. This minimizes the number of possible errors.
Understand how the list generator is used in Python. Yes, this is “syntactic sugar” that you can do without, but generation is much more convenient. Read about Python’s built-in functions and figure out what each one does by experimenting in the interpreter console. Get familiar with the itertools module.
AWK, sed and grep
Work with AWK. It is an excellent C-style language used in Bash scripts. Sed is a streaming text editor (and programming language) that applies specified text transformations to a serial stream of text data. Sed and grep will save you a lot of time processing textual information by the server.
Find and learn basic regular expressions in the languages you prefer to work with. Of course, no one forbids the use of cheat sheets, but this is unworthy of a good specialist.