What do you need to know to migrate to Linux when you have always worked with Windows?

Depending on the language learned in Window, such a migration can be done more or less easily. If you develop with Android Studio, the migration is easy. The working environment is the same. It remains to tame the Linux environment and the chosen graphical environment (Gnome, KDE, etc). In any case, learning the command line is important. If you are already working with Powershell, some of the concepts are transferable to BASH.

But if you develop software to run under Linux, you will probably use different languages such as Python, PHP, etc. But also programming for various graphical environments, and their libraries.

It is not painful when you are a developer, I reassure you.

If you intend to evolve mainly with the UI (KDE, Gnome…), you won’t be disoriented at all. Just like Windows, Linux UIs offer a certain level of abstraction, for example, it is not necessary to mount disks with the “mount” command, because the OS takes care of it for you.

I’ll talk about the command line instead.

Know or remember that :

  1. Under Linux, everything is a file. A folder is therefore also a file.
  2. File names are case sensitive
  3. Avoid spaces in file or folder names
  4. NEVER stay connected as root, rather create a super admin account, and use the sudo command before doing anything that requires root rights. For example, instead of apt get myApplication from the root account, it is much better to get used to typing sudo apt get myApplication in the admin account.
  5. NEVER forget your “root” password. You are warned now.
  6. You stall on a command. Type man commandname, and the manual will open.

If you are used to the command line on Windows (CMD, Powershell or even better the Linux emulations for W10 “WSL subsystem”) it will be a piece of cake.

If you use the console on Linux, you will see almost no difference with the W10 WSL console.

If you were using CMD or Powershell, the disorientation will be minimal, you will have barely ten new classical commands to integrate (grep, find, cat…) if you want to use a command line IDE.

The rest will come naturally with time, and then the man command is your friend.