Tools

In this section you will find the tools, utilities and editors or IDE that I use daily for my work, my hobbies and my open source projects, which you can find on my Github page.

Fedora: Welcome to Freedom

Fedora is a Linux kernel based operating system. It offers three editions:

It is also available in different variations, called spin. At this link you will find all the variants:

Fedora is a great operating system for operating on operating systems and programming with different languages.

Vim: Vi IMproved

Vim, or Vi IMproved, is an open source, cross-platform text editor, created to provide an improved version of Vi. Its first version was written in 1991 by Bram Moolenaar; later versions have added numerous capabilities, especially useful for editing source code.

Vim can be expanded in terms of functionality and themes. There is an ecosystem of plugins for Vim. At this link, you will find many of the most popular and useful plugins for a systems engineer but also a developer … in short, a DevOps.

git

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Git is easy to learn and has a tiny footprint with lightning fast performance. It outclasses SCM tools like Subversion, CVS, Perforce, and ClearCase with features like cheap local branching, convenient staging areas, and multiple workflows. The Git feature that really makes it stand apart from nearly every other SCM out there is its branching model.

Git allows and encourages you to have multiple local branches that can be entirely independent of each other. The creation, merging, and deletion of those lines of development takes seconds.

vscode

vscode is an open source, cross platform text and code editor developed by Microsoft. It is an excellent ally in the writing of the code, since it is expandable through a myriad of add-ons that can be installed through the publisher itself or from its marketplace.

It is a great editor to turn into a python IDE or powershell on a Linux based operating system. Here is a list of the best extensions:

Python

Python is a programming language that lets you work quickly and integrate systems more effectively.

Python is my favorite language and also the one I use the most to develop my libraries or command line tools. Many command line tools in Linux kernel based operating systems are written in python (previously in python2 now in python3). The versatility and readability of this language make it one of the first development tools that allows code to be maintainable by many people. On the other hand, the same cannot be said of speed; python is very slow compared to compiled languages like java, C and C++.

Pycharm

Pycharm is the best python IDE of the all time! There are two versions, a professional and a community (download). Personally, the community version is sufficient for developing complex programs in python. Furthermore, there are a myriad of plugins that can be used for any specific tool or domain. The professional version includes additional support for other languages (Typescript, Vuejs, Javascript, etc.) and for frameworks like Django.

Books to study

Being a DevOps doesn’t just mean using tools like docker or terraform, but learning new tools or investing your own. How? Of course, studying new technologies and languages. One of the best websites to buy study materials is the O’Reilly publishing house https://www.oreilly.com. Here you will find books on all kinds of technology. Another reference of mine, is the Manning publishing house https://www.manning.com. Here the books are much less exhaustive than a particular technology, but they are great books. With these two references, they can help you develop new technologies or learn more.