It’s no secret that I’ve been slowly getting back into the Linux world. I’ve always liked a lot of things about Unix in general, and though I spent most of my work-day doing Windows development, I still like to fool around with Linux a bit in my free time.

Recently, however, I’ve been spending a lot more time on Linux as it’s been very helpful for my work: I put all kinds of test servers and tools there that I use during my java/.NET work. Because of this, I’ve been looking to improve my list of useful Linux applications, and I’ve found a few that I’ve liked well enough.

I’m listing them here so that I don’t forget about them later on :-):

GNU Screen

Screen is a “terminal multiplexor” that allows you to have multiple windows inside an ANSI terminal or do split-screens and run separate programs on it.

I knew about it but always dismissed as I wasn’t exactly sure what benefit it would provide for my work. I run X most of the time and like gnome-terminal or konsole well enough and for many tasks, the tab support in those is more than enough.

After seeing a bunch of screen-related links in reddit, however, I decided there might be something there worth looking into after all, and decided to give it a try. I’m just starting to get the hang of it and it’s certainly providing a bit useful, though is it an absolute must to run all the time? Not sure yet. I did found a very colorful tutorial on screen :-).


There are a couple of features I’ve been finding interesting:

  • Detach/Reattach and session sharing: Allows you to detach from a session and reattach later (even connecting through SSH), or have multiple connections (even from different users) attached to the same screen sessions and viewing the same content/applications. Being able to just reattach to a session gone when I accidentally closed the gnome-terminal window also seems pretty useful!
  • Vertical Splits: Modern Screen version can split your terminal window into two vertical panes, which is incredibly useful on large screens and something you can’t replicate using the regular tabbed interfaces in other terminals (you could use multiple terminal windows, but it’s a lot uglier to configure).


Vifm is a console-based, but graphical file manager that uses Vi-like key bindings. The first time I ran it I immediately knew how to use it; it’s very intuitive for Vim users.

vifmI mostly stay in the shell on Linux for file operations, particularly since most graphical file managers on Linux suck imho, but for some tasks, they are easier to use. Now I have one I won’t mind using so much, which is pretty nice.

Before anyone else brings it up, yes, I’m aware of Midnight Commander. First time I ran into it I thought it would be awesome to get that good old’ Norton Commander feeling (I loved NC!). But when I ran it, I realized I had completely forgotten how to NC was used and found Midnight Commander totally unintuitive. Go figure.


Irssi is another terminal-based IRC client (though there’s a GUI based one too, I believe). I hadn’t used IRC in ages, and only started hanging in it occasionally around last year or so. Despite the horrible documentation, I found Irssi to be fairly intuitive and was able to connect to a server and join a room without even going though the docs, so it’s not so bad.

Some people love to script and do all kinds of things with their IRC client, but, to be honest, I don’t care about it at all. All I want is a simple client where I could write text and get it sent and read the text others write comfortably, and Irssi seems to do the trick for now.

Only thing that I found tricky at first until I finally found a page commenting how it’s done was switching between windows and scrolling. So that I don’t forget about it

  • Switch to Window #: Alt + #
  • Scroll through Windows: Ctrl + P / Ctrl + N
  • Scroll window text up/down : Alt + P / Alt + N

Before Irssi, I used to use X-chat and Besirc on Windows, but found myself constantly annoyed with both of them, but can’t pinpoint exactly why.

So far, I only lurk around #powershell on a bit, but if anyone has any other suggestions for other groups that might suit my interests, please do let me know!

Tomas Restrepo

Software developer located in Colombia.