This is a terminal post in two ways. We will be taking a look at an article discussing terminal usage and command line interfaces, and this will also likely be the final (terminal) blog post here. My final semester at Oregon State University as an undergrad is nearing its end. Looking forward to a future after graduation, I’m going to be building a personal site and would likely continue any blogging efforts there. Reflecting on the content of posts over the last seven weeks, it appears that this effort has taken the form of a technology and programming current events blog. I’ve been enjoying reading articles and other blog posts about various topics related to computer science, which is a habit I’m looking forward to continuing. Now, with one of the terminal discussions out of the way, let’s get on to the next!
Terminals and the Command Line
Recently, I’ve been exploring posts on GitHub’s The ReadME Project, a space for stories, news, and sharing information within the software development community. In a recent post, Building the future of the command line, Klint Finley explores exiting new terminals being developed which provide a number of surprising quality of life upgrades for command line users.
Most developers can recall starting out in programming and how it felt to start interacting with terminals. Although often intimidating for beginners, it is equally exciting and satisfying to learn how to use commands effectively. As the author points out, there are many benefits to proficiency with commands in a terminal. Work can be done more quickly and efficiently in many circumstances, utilizing concise text commands rather than interacting with various UI components. Unfortunately, it can take time to master control of the CLI and remember all the commands that may be needed. This is where new terminal innovations are continuing to make a powerful tool even more powerful.
New Terminals, such as Warp, are providing several modern features which can include input that behaves and feels like an IDE, built-in AI command searches to find exactly the commands needed and how to use them, easy navigation through command history, and creation of saved command workflows. Others allow for the flexibility of using a mouse to be able to click, copy, and more on output in the terminal. There are a number of different tools which allow for customization of terminals by users. The post also provides a huge list of terminal options which exist to choose from. As someone who is still a novice and early their software career, this is a very eye-opening find for me! I have built a lot of confidence using the command line and continue to get more familiar with its usage, but I would not consider myself an expert by a long shot. It never occurred to me how many different options are available for terminals and how much they could improve the user experience. I can’t wait to choose one to try integrating with my day-to-day work, and already find myself wishing I had access to more operating systems to try other exciting options. Look into a new terminal for yourself and see which features are most enjoyable to you!