My Linux Journey
Published: Dec 2026
Linux has become an important part of my IT learning journey. Before studying Linux, I mostly interacted with computers through graphical interfaces. I could open applications, browse files, install software, and perform normal tasks without thinking much about what was happening underneath.
Learning Linux changed the way I think about computers. The command line gave me a different way to interact with the operating system and helped me understand files, permissions, processes, users, and system resources at a deeper level.
Why I Started Learning Linux
As an IT student, I realized that understanding operating systems is important for software development and system administration. Linux is especially important in servers, cloud computing, development environments, and many professional IT systems.
I wanted to become comfortable using the terminal instead of depending entirely on graphical interfaces. My goal was not simply to memorize commands, but to understand what those commands actually do.
Getting Comfortable With the Terminal
The terminal was one of the first things I had to get used to. At first, entering commands instead of clicking buttons felt strange. I had to remember command names and understand how different options worked.
Commands such as pwd, ls, cd, mkdir, cp, mv, and rm became some of the basic tools I practiced.
Over time, using the terminal became more natural. I began to understand that many tasks could be performed quickly from the command line.
Understanding the File System
Linux also introduced me to a different way of thinking about file organization. Instead of thinking only about drives and folders through a graphical interface, I started learning about the Linux directory structure.
Directories such as /home, /etc, /var, and /usr each have specific purposes. Understanding this structure helped me see how the operating system organizes its files.
I also learned about absolute and relative paths. These concepts may seem small, but they are extremely useful when working from the terminal or writing scripts.
File Permissions
One of the most interesting topics I encountered was Linux file permissions. Linux allows permissions to be assigned to the owner, group, and other users.
Learning about read, write, and execute permissions helped me understand why some files can be modified while others cannot.
Commands such as chmod and chown introduced me to the relationship between users, groups, and access control.
This also showed me why security is such an important part of operating systems. Giving every user unlimited access would create serious risks.
Installing and Managing Software
Another useful part of my Linux practice has been learning how software is installed and managed. Package managers make it possible to install, update, and remove software from the command line.
This was especially useful for development because programmers often need to install compilers, programming languages, libraries, databases, and development tools.
Learning package management helped me understand that software environments can be configured and reproduced instead of depending only on manually installed applications.
Linux and Programming
Linux has also become useful for my programming studies. Many development tools work naturally in a Linux environment, and the terminal makes it easy to compile programs, run scripts, manage files, and work with Git.
I am particularly interested in using Linux together with Java, web development, databases, and Git. These technologies are commonly used together in software development environments.
Learning Through Mistakes
My Linux journey has included many mistakes. Sometimes I enter the wrong command. Sometimes I work in the wrong directory. Sometimes a command fails because I do not have the required permissions.
These mistakes are actually useful because they force me to understand what the system is telling me. Instead of simply clicking a button and moving on, the terminal often gives me an error message that I need to investigate.
This has improved my troubleshooting skills. I have learned that error messages are not just problems; they are information that can help me find the cause of a problem.
What I Want to Learn Next
My Linux journey is still at an early stage. I want to become more comfortable with shell scripting, processes, networking, system administration, SSH, services, and server management.
I also want to understand how Linux is used in professional development environments and cloud servers. Learning these skills should help me become a more complete software engineer.
Final Thoughts
Learning Linux has changed the way I interact with computers. I no longer see the operating system as something that simply runs in the background. I am beginning to understand how users, files, processes, permissions, software, and services work together.
I still have a lot to learn, but every command I practice makes the terminal feel more familiar. My goal is to continue experimenting, breaking things safely, fixing them, and learning from the experience.
I believe Linux will remain an important skill throughout my career, especially as I continue learning software development and working toward becoming a professional software engineer.