20 programming skills you can learn in 72 hours

Although the title of the original post is a little clickbait, we felt that this list could still find a number of items that would actually help a newbie. If you have something to add to the list, it will be great if you do it in the comments.

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.

Site Parser

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.

Vim editor

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.

Multifunction calculator

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.

linux

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.

JavaScript Basics

JavaScript is the most popular programming language on GitHub. With the advent of Node.js, JavaScript began to be used not only in the front-end, but also in the creation of the back-end and console utilities.

Sorting

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.

Testing

Learn how to develop practice tests for code. This minimizes the number of possible errors.

Python

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.

Regular Expressions

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.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *