Sun
31
Oct 2021
Last time I showed the list of my favorite apps for the PC was in May 2009 - 12 years go, so maybe it's time post a new one :) If you know a better alternative to any of these programs, please post a comment below.
December 2023 update: I planned to release a new article with the list a of my favorite apps 2 years later, but I found that I still use mostly the same apps, so I updated this article instead, adding notes about what has changed for me in italic font like this.
Before I start with my list, I would like to stress how much the landscape of PC applications changed throughout these years. Back then, many kinds of programs (e.g. for video editing) were very expensive and had no good and free alternative. Among simpler apps, "shareware" was still a thing, so these also required a small fee (or downloading a crack :) Today, we have many excellent programs available for free. All the programs I list below are free unless explicitly mentioned.
With free programs, we have to be careful though. Some of them are free only for non-commercial use, so they shouldn't be installed on a machine provided by your employer and used for work. Examples are HWiNFO or FastStone Image Viewer. The ones licensed under GNU GPL can be freely installed and used for any purpose. It has nothing to do with the availability of the source code. We won't download the code and compile the program by ourselves, anyway. This free software/open source license also guarantees freedom to use program any way we want. With apps coming for free under a custom license (commonly referred as "freeware") this is not necessarily the case, so to be fully compliant you should always check the license (and/or ask your IT department) before installing anything on a company laptop.
There is also a trap awaiting these who download and instal new apps that many websites take free apps and repack them into their own installers, adding some malware, adware, or other unwanted software. They are often positioned higher in Google search results than the original app developer. To make sure you download the right installer, always go to the original website and not any of these app-aggregating portals. Also, be careful which "DOWNLOAD" button you click. An extreme example of developer's greed is FileZilla, which is free software licensed under GPL, but the original website hosts an installer that "may include bundled offers" and hides real installer for the app alone under "Show additional download options" link.
These days, a web browser is the single most important app, as we do more and more via web pages and less using real desktop apps. Firefox is the browser of my choice, but Chrome is now dominant in this space, so probably soon the time will come to switch as more and more pages will be developed to work correctly just in this one. For now, all these most popular browsers (including also Microsoft Edge) look and work very similar.
Then, there are messaging apps. I do most communication with my friends through Facebook Messenger, which I use via web page, but there is always this one friend who insist on using something different, so I have to have (as most probably all of us these days) many of these apps installed either on the phone, as desktop apps, or open them in the browser. Slack, Discord, Signal, WhatsApp, Telegram, Skype, Microsoft Teams, Zoom...
I remember the times when instant messaging first appeared as a better, more real-time alternative to sending e-mails. There were multiple networks and protocols for this, e.g. ICQ, Jabber, or our local Gadu-Gadu renamed later to GG, which was dominant in Poland back then. But there were also alternative clients that aggregated access to multiple networks under a single, convenient and ad-free interface. Among them, I used to use Konnekt and then AQQ. Now, every platform has its own client and a custom, closed and protected protocol so that alternative clients cannot exist and we must install and use all these apps, despite they are all very similar. Apparently, what we call progress is not always a change for the better...
It is the same with streaming platforms like Spotify or Tidal - you simply install these specific apps when you want to use these services. Similarly, we now have gaming platforms where we buy, download, and launch games - Steam being most popular, followed by Epic Games Launcher and others like GOG Galaxy, Uplay from Ubisoft, Battle.net for games from Blizzard etc. What is interesting is how each of these apps wants to become your "go to" app by starting together with Windows, so disabling this autostart in settings is the first thing to do after installing each one.
I once bought Microsoft Office 2016, which I still use. Even with that may year old program, I have no problems opening and editing any documents. Word, Excel, PowerPoint - we all need to write, calculate, or present some data from time to time. I also like another member of the suite: OneNote, which I use for my list of things "to do". However, I agree that the free LibreOffice would probably suffice in my daily use. It also supports MS Office file formats, although some formatting may be incorrect.
December 2023 update: For note taking, a friend recently showed me Obsidian and I immediately feel in love with this app! It is free and has a desktop, as well mobile version. It is not about keeping your notes in the cloud, but rather serves as a text editor of your notes kept in local files in... Markdown format. I find it very convenient. It meets my needs perfectly. I will probably dedicate a separate article to it some day.
For reading PDF files, I use the canonical Adobe Acrobat Reader. I also use SumatraPDF, which reads e-book formats like EPUB, MOBI, FB2. It also reads PDF, which may be useful as I met some files that didn't look correctly under Acrobat Reader, only in an alternative program. Foxit Reader is another available choice for this.
If you stumble upon an e-book in DJVU format, WinDjView can help with opening it, although I just discovered SumatraPDF supports this format as well. For files ending with PS extension Ghostscript + GSview is the solution. However, I have seen none such file for years now.
If you still collect files on your hard drive rather than keeping everything "in the cloud" (meaning someone else's computer) and accessing them via web browser, some file manager is needed. I know most people just use "This PC" - the built-in way of managing files in Windows. However, I like the concept of two panels with one folder opened on the left and another one on the right, dating back to Norton Commander for DOS, so I use Total Commander. It is shareware, but it is definitely worth its price. Besides listing, copying, and moving files, it can also search, compare (including file contents), compress, batch-rename, calculate checksums, has built-in FTP client, and countless other useful features. I just love this program :)
For handling archive files, I use 7-Zip. I can pack 7Z and ZIP format, and unpack many others, which is all we need these days when an archive file appears on our hard drive. Before this one, we all used to use WinRAR, which was shareware but no one was actually registering it :)
As an FTP client, I use FileZilla. Total Commander can do FTP, but FileZilla is better in this - it can transfer using multiple connections at once and resume broken connection. In case you need to use SCP rather than FTP protocol, there is a similar app: WinSCP. I didn't need it for years, though.
Keeping some files in the cloud can be handy, so I use free Dropbox service and its accompanying app. It just sits in the system tray running in the background and making a specific "magic folder" on my disk automatically synchronized with their server. It can be useful for backup, moving files between multiple PCs and a smartphone, or sharing with friends. Microsoft OneDrive would probably work similarly. I don't know how much space do they offer currently. My free Dropbox account has 6.4 GB, which is enough for me.
Whether you collect funny cat pictures or scientific papers, at some point you may feel a need to find and delete duplicates that you might have accidentally downloaded at different times, to different folders, maybe even under different filename, just with same content. A free app that finds duplicate files is AllDup. After cleaning these, you may also want to see what's left on your hard disk and why it takes so much space. WinDirStat is a great app that shows all this information on a "treemap" diagram, visualizing how big are your files and folders (their size) and what types of files are they (their color).
December 2023 update: I recently learned about WizTree. It is better than WinDirStat - it analyzes your disk faster and shows a better looking diagram.
If you are old-fashioned enough to still record some CD, DVD, or Blu-ray disks, a good recording app is AnyBurn. Before it, I used to use CDBurnerXP. If you want to do the opposite - you bought a rare, classic music album on a CD from Discogs and want to make a backup to MP3 or FLAC files, a way to grab the music is to use Exact Audio Copy. If your favorite song is available only on YouTube and you still need to "have it" rather than just save the link, youtube-dl is the tool to download video and audio from YT, as well as many other websites. Please note though that this is a command-line tool, so not that easy and convenient to use.
December 2023 update: I recently learned that there is a new, better fork of youtube-dl: yt-dlp, so now I use this one.
Sometimes I wanted to download an entire website to my local disk, to have all HTML files, embedded images, and additional files linked from it backed up in case the original page goes offline. For that, I used WinHTTrack Website Copier. I haven't used it for years now and I doubt it would work with a modern website, where so much is loaded dynamically through JavaScript.
If you want to download a "backup" of some music, movie, or other stuff and you lost your original disk ;) a good client for BitTorrent network is qBittorrent. Before this one, I used to use uTorrent. SoulseekQt is a good client to Soulseek network - an ancient but still working P2P network better at individual files, as opposed to entire albums or discographies.
For browsing a collection of pictures, I use FastStone Image Viewer. It can show thumbnails of all pictures in a folder, open a single picture on full screen, show EXIF metadata, do some simple image editing, batch conversion, resizing, and other image processing, among other features. Before this one, I used XnView, which is pretty similar. All these programs are free only for non-commercial use. I had a hard time finding one that I could use to browse image files at work. I finally found ImageGlass, which is not good at showing thumbnails in a folder, but sufficient to open an individual file.
For more advanced image editing, I use GIMP. This free Photoshop alternative may not be as convenient and may lack some professional features that artists need, but for my simple use cases, it is good enough. It supports layers, many kinds of selection and drawing tools, as well as many filters and effects. I plan to write an extensive article about it sometime in the future.
December 2023 update: We all know that Photoshop is really the best bitmap graphics app. I learned free GIMP to use a free tool, but now I am using Photoshop since I subscribed to Adobe photography plan. I am interested in photography, while this plan contains Photoshop + Lightroom - both very useful for me, and the subscription isn't very expensive.
For vector graphics, I use Inkscape. Just like GIMP versus Photoshop, this open source app may not be as convenient to use and as feature-rich as commercial CorelDRAW, but for simple drawings it may be enough. A good example of how inconvenient free software can be is the default behavior of Inkscape to scale also the border width when you scale a rectangle or a circle. Disabling this ridiculous feature is the first thing I do after installing it. It is available in Preferences > Behavior > Transforms > Scale stroke width.
For drawing diagrams, whether UML or some other form of blocks connected with arrows, a good solution I found recently is draw.io - available online as well as in form of a desktop app.
December 2023 update: I recently stared using Figma and did some courses from Udemy about it. It is a very powerful and convenient tool intended mostly for designing UI of applications and web pages, but I would call it also a great generic vector graphics app. It may not be better than draw.io in drawing diagrams (blocks connected with arrows), but for composing bitmap images and drawing some lines and rectangles on top (e.g. to mockup how your dream startup homepage or a business card should look like) I believe it is the best app to use. Free version has limited features, but it should be fine when keeping your personal drawings as "drafts", while commercial version offers sharing and collaboration over network.
To play my local music collection, I use foobar2000. For a long time I couldn't convince myself to its rough interface, but now I appreciate how convenient it is. It catalogues all your music collection, as well as supports multiple tabs with playlists. Additional features (e.g. support for CUE files) can be added by installing plugins. Before it, I used to use AIMP, which was a modern clone of the classical Winamp. When I need to do some simple sound editing, e.g. change volume or cut an audio file and then export it to WAV or MP3, I use Audacity. It also supports recording from any sound inputs available in the system.
To play video files, I install K-Lite Codec Pack. It is a frequently updated package of codecs for all kinds of video and audio file formats installed globally in the system. The package also comes with its own player app called Media Player Classic - a modern clone of an old Windows Media Player that used to ship with Windows and that everyone liked, before Microsoft changed it to a much worse app. I use this one for playing videos, unless some file is not supported. Then I fall back to VLC - a player that has its own set of codecs rather than using the ones installed in the system. These days, however, I see less and less of such files, as everything is basically MP4 + H264.
About video editing, for many years I was convinced that there is no good application available for free. I even bought some old version of Vegas Pro. Now I know that DaVinci Resolve is very professional and feature-rich, more than enough for my video editing needs, and is available for free. Recording footage from the camera or your desktop (or both at once) is best done in OBS Studio. As a bonus, this app has a feature to repack FLV/MKV etc. to MP4 format quickly (File > Remux Recordings), which is useful as DaVinci Resolve and some other programs may not recognize container formats other than MP4. For more advanced conversion and processing, command-line ffmpeg is the go-to solution.
Every programmer needs some integrated development environment (IDE) or at least a text editor and a compiler. As I use mostly C++, my IDE of choice is Visual Studio 2019 Community Edition. This free version suffices to do programming using C++, C#, WinAPI, DirectX or Vulkan. I don't even know what else do the higher, non-free versions provide - nothing interesting for me. Then of course there are essential tools that we programmers install if we need them, for example Cmake, Python, Doxygen etc. and for graphics: Microsoft PIX on Windows, RenderDoc, OCAT, Radeon Developer Tool Suite, Vulkan SDK.
Visual Studio has text editor integrated, but for everything else than C++ I prefer something more lightweight. My favorite editor of unformatted text is currently Visual Studio Code. The name is misleading - this is a completely different app than the full Visual Studio IDE mentioned above, although also made by Microsoft. Thanks to plugins, it can be turned into a fully featured IDE for many programming languages, but I mostly use it as an editor for all kinds of text files - from raw TXT to Python code. Before VS Code, my favorite editor was jEdit. Notepad++ is another popular choice, and some people even go for Sublime Text, which is not free, so surely must have something that makes people pay for it, but I don't really know what is it.
The most popular version control system these days is Git. Because I don't like using it (or anything else really) from the command line if I have a visual alternative, the GUI client of Git that I use is Git Extensions. Note the name is misleading - unlike TortoiseGit or TortoiseSVN, this is not a Windows shell extension that sits in context menus of your files and folders, but a standalone desktop app, having its own main window.
Sometimes we programmers need to type these "magical spells" anyway. Command Prompt provided by Windows is not convenient for this. A solution that supports tabs is desirable. For a long time I was using a 3rd-party Cmder, but recently Microsoft released its own alternative console - Windows Terminal, which is also good. It can be installed using Microsoft Store.
Then, there is a need to compare/merge two/three versions of a file. The best tool for comparing files (and folders and pictures and ZIP archives and FTP servers... the list of features can go on) is Beyond Compare. Unfortunately, it is not free. A free tool that I like is P4Merge that comes with the Perforce Visual Client (aka P4V, aka Helix Visual Client). I like it so much that even if I don't need Perforce, I still install it just to have this tool available and configured as my compare/merge tool in Git Extensions - as I described in my recent article Tips for using Perforce, point 3. Another good and free tool is WinMerge, which can also compare folders.
Finally, sometimes there is a need to view or edit binary data in their hexadecimal form. There are many good "hex editors" out there. Unfortunately, most of them are not free. A free and decent one that I found is HxD, but to be honest, I didn't use it for years now. Apparently, these days where we have everything stored in JSON or XML, we no longer work with binary data that much.
Here are some other tools that I like and use, more or less targeted for programmers or other power users. Among them, the most important one is Process Hacker. It replaces system Task Manager to offer a better view of processes running in the system, shown as a colourful hierarchical list. This app can also list and control system services, network connections, disk usage, identify which process the mysterious windows on your desktop belong to, or find the process that holds a specific file open, preventing you from gracefully unmounting your USB drive. It could even be called a limited debugging tool, as it can show all kinds of details about a selected process, including modules loaded, handles opened, running threads, and a current call stack for each of them!
December 2023 update: I recently found that Process Hacker is continued as System Informer, so I now recommend this one.
To inspect some executable without launching it, I use Dependencies. It can show what DLL libraries are required by a specific program or DLL. This is a successor of old Depends (Dependency Walker). I also recommend entire Windows Sysinternals suite, which contains multiple tools. The ones that I used the most are Process Explorer, which logs all kinds of activities that processes do in the system (like opening files, registry keys, etc.) and DebugView, which prints messages sent by running apps via OutputDebugString
even when the app is not launched from a debugger.
From the applications less "hardcore" and more useful for average users, HWiNFO is good. It scans and presents all kinds of information about the current hardware it can get. With it, you can find out what's the exact name of your motherboard or graphics card to find drivers on the Internet. You can also check if your RAM is running at the speed you wanted when you enabled XMP in the BIOS, or you can check SMART status of your hard disks to know if their time is running out.
MyPhone Explorer is a app that you can install in your Windows and on your Android smartphone to connect them and transfer all kinds of data, including backup of your contacts and managing files on the phone's internal memory and SD card.
Last but not least, X-Mouse Button Control is a small app that works in the background in form of an icon in the system tray. You can define various actions executed in reaction to mouse buttons. For many years I always buy mice that have 5 buttons, so that for buttons other than the default left, right, and middle one, I program additional actions: double click and minimization of the current window. Years ago I used to buy A4Tech mice, which allowed to configure this in their custom driver app, but now with X-Mouse Button Control I can use any 5-button mouse and have the same functionality.
Besides games and graphics, I am also interested in development of desktop applications. Throughout years, I made lots of them. I must admit that two of them still seem to make sense to me and prove to be useful from time to time. First one is FX Batch Compiler - a simple tool that can compile multiple shaders at once using Microsoft FXC compiler. The second one is GameDevCalc - a very unusual calculator that operates on 4-component vectors and supports operations such as dot product, vector normalization, or atan2.
There is also this little but very useful tool that my friend Karol Kuczmarski "Xion" written many years ago - ColorShop, which lets you move your mouse over any place of the screen and pick that color there, to be printed as something like "#9a3448" or "0.60 0.20 0.28".
There are also apps that I know I could install, but I don't because I no longer need them. I already mentioned some of them above. One big piece of software absent from my system is Java Runtime (JRE). It is required for any application written in Java to work, but these days I have no such application any more. I know Java is still big and important in some applications, like enterprise, but on my desktop PC I don't need it since I moved from jEdit to VS Code. Another such platform/technology is Flash, which used to be popular on various websites, but now we can finally forget about it.
Going back to CD/DVD disks, sometimes there used to be a need to mount a ISO file containing a disk image to a virtual drive. For that purpose, I used DAEMON Tools Lite. Now I didn't need to do that for many years already.
Finally, there used to be a whole category of programs that promise to protect, speed up, or clean the system, disk, the registry, cookies and what not, scanning for potential problems. CCleaner may be one of the most popular. I also used Spybot Search & Destroy. I am not sure if it is just me or these programs are less used and less required these days. I no longer care about them. Windows became better now. It can last years without breaking or slowing down significantly and doesn't need manual cleaning. Note I talk about "cleaning" and not proper anti-virus/anti-malware protection, which is still needed, although not discussed in this article.
December 2023 update: There is actually one such small and free utility that I find useful in modern Windows: O&O ShutUp10++. It allows to disable many unwanted features of modern Windows 10/11, like telemetry, advertisements, and "suggestions" pushed by Microsoft.
This is it - the list of PC/Windows apps I use and no longer use in 2021. What are your favorite apps? I look forward to seeing your comments and suggestions! Just please don't send me offers to advertise your program on this website. This is my personal blog and it is non-commercial, so I am not interested!