I’m currently running Kubuntu as my primary OS. Kubuntu is a version of Ubuntu using the KDE Plasma desktop environment, which is fully-featured, customizable, and surprisingly well-performing.
I used Windows 7 for most purposes other than programming up until 2015, when I switched to using Linux full time (initially Linux Mint followed by Kubuntu). Based on my experiences, I encourage other Windows 7 refugees to give Kubuntu a try.
The remainder of page contains some useful resources for Linux and Windows.
NOTE: Some of the content on this page is out of date.
This is a list of free programs (many open source) that have proven useful to me. Most are Windows programs or cross-platform.
Notes:
Program | Description | Availability |
---|---|---|
7-Zip | file compression/decompression program | Windows, Linux, Mac |
Anki | spaced repetition flashcard software, especially good for Chinese/Japanese | Windows, Linux, Mac, Android |
Avast | excellent anti-virus software | Windows |
CCleaner | easy crap removal, program uninstall, and disabling of start-up programs | Windows |
Comodo Firewall | more powerful replacement for Windows Firewall | Windows, Linux |
CPU-Z | easy access to useful hardware information | Windows |
Cygwin | get a Unix shell and environment on Windows | Windows |
DoPDF | allows you to print to a PDF file from any program | Windows |
Dropbox | easy backup and file sharing system | Windows, Linux, Mac, Android (limited) |
Filezilla | super easy FTP/SFTP client | Windows, Linux, Mac |
F.lux | shifts your monitor’s colors in the red direction after sunset to keep you from staying awake all night | Windows, Linux |
Foxit Reader | PDF reader with a tabbed interface | Windows, Linux (old) |
HWMonitor | view temperature of your computer’s HW components in real time | Windows |
Image Resizer for Windows | Explorer extension that shrinks photos for web upload | Windows |
ImgBurn | CD/DVD image burning program | Windows |
JabRef | bibliography manager for LaTeX | Windows, Linux |
LibreOffice | fork of OpenOffice that has surpassed the original | Windows, Linux |
Macrium Reflect | easy drive imaging and backup/restore | Windows |
MalwareBytes | malware removal software | Windows |
Microsoft Expression Web | good code + preview HTML/web editor | Windows |
MikTeX | easy-to-use distribution for the LaTeX typesetting system with on-the-fly package downloading | Windows, Linux (in development) |
Mozilla Firefox | still my favorite web browser | Windows, Linux, Mac, Android |
Notepad++ | excellent text editor with Scintilla and numerous plugins | Windows |
Paint.net | fancier replacement for MS paint (not as complex as Photoshop or Gimp) | Windows |
ProcessExplorer | more powerful version of Windows Task Manager | Windows |
PyCharm | IDE for Python (community edition free) | Windows, Linux, Mac |
RStudio | IDE for the R statistical programming language | Windows, Linux |
Scribus | open source page layout program, replacement for Adobe InDesign | Windows, Linux |
Sublime Text | another excellent text editor, with an unlimited-length free trial | Windows, Linux, Mac |
TeamViewer | easy-to-use remote desktop server/client | Windows, Linux, Mac, Android |
TeXstudio | excellent editor/IDE for LaTeX | Windows, Linux, Mac (experimental) |
TightVNC | remote desktop viewer for the VNC protocol | Windows, Linux (old) |
VirtualBox | run another OS in a virtual machine | Windows, Linux, Mac |
VLC Media Player | can play every file format you can think of | Windows, Linux, Mac, Android |
WinDirStat | disk usage analyzer with block-based visualization | Windows |
Xming | X server for windows (old version available free) | Windows |
XShell | excellent terminal emulator and SSH client (free for home and school use) | Windows |
Some useful add-ons (extensions) for Firefox:
Add-on | Description | Notes |
---|---|---|
Adblock Plus | Blocks annoying banners, pop-ups, and video ads | The unrelated Adblock (without the “Plus”) is also supposed to be good, but I’ve never had a problem Adblock Plus so I haven’t needed to test the alternative. |
Classic Theme Restorer | Allows you to revert the awful UI changes in Firefox 29, among other customizations. | |
HTTPS-Everywhere | Forces site to load via HTTPS for improved security. | Breaks some websites, but can be disabled easily. |
Rikaichan | Pop-up Japanese dictionary. Hover your mouse over a word to see its meaning and pronunciation. | Requires a separate dictionary add-on (several languages available). |
Roomy Bookmarks Toolbar | Allows you bookmarks to display as icon/text only to save space. | |
Xmarks | Sync bookmarks, history, and tabs across multiple devices and browsers. |
Linux is now at a point where it’s fairly easy for non-computer specialists to switch over and take advantage of a free, robust, and endlessly customizable operating system. Why bother? In my mind, there are quite a few:
To avoid vendor lock-in. The Linux world is predominantly free and open-source. It’s unlikely that you will ever be stuck with files that cannot be opened. In the worst case, the program that created them will still be freely available.
To take advantage of the power of a Unix-like OS. Some things just work better on a Linux (or Unix), which is built to be fast, secure, and modular. Many administrative tasks that are difficult or error-prone in Windows, like putting your home directory on a separate hard drive, are dead simple in Linux. Your computer will install updates only when you give the OK (no mysterious background installers running at inopportune moments). It’s also a much nicer programming environment. (This is less relevant for Mac users, since Mac OS X is based on Unix.)
To have the ability to fully customize your system. This is related to #2. For example, you may dislike some aspects of the default user interface for your OS, but since many graphical desktop environments are available for Linux, you get the freedom to choose one that suits your needs and preferences. You also have much more freedom to customize things like docks/taskbars, menus, and keyboard shortcuts without installing sketchy external software.
To give new life to older hardware. Except for some computational or graphically intensive programs, you can have the benefits of up-to-date software on hardware that is 5-10 years old or more. Now that Windows XP has been discontinued, Linux offers a way to avoid replacing old computers in order to maintain a secure, usable system. (The same goes for old Macs). Often, the most you would need to revive a 10-year-old computer is a $30-40 memory upgrade.
Because you believe in the value of free and open-source software generally. Commercial software companies don’t always act in their customers’ best interests, so supporting free, high quality alternatives will put pressure on them to step up their game.
I would say that the primary downside to Linux, even today, is that it has an inherent learning curve – you get a lot of power, but need to understand a bit in order to use it. You will have to understand the concept of a window manager, for example, in order to swap one for another. You will also have to use the command line occasionally, if only to copy and paste code from web forums (because graphical tools vary more than command line tools, help will usually be given in the most general form).
My recommendation is to start by experimenting with Linux in a virtual machine (using VirtualBox), so that there is no chance of hurting the rest of your data accidentally. Try downloading and installing one of the more user-friendly distros, such as Mint, Ubuntu, OpenSUSE, or Mageia, and playing around a bit. A Linux distro, short for “distribution”, includes the Linux kernel (the core of the OS) and other basic components as well as a collection of ready-to-install, compatibility-checked software packages which can be downloaded from a centralized repository.
Most distros offer several versions of the install CD/DVD with different desktop environments; I recommend Cinnamon, MATE and KDE, which are among the most user-friendly and familiar in feel for Windows users (and probably the least obnoxious for Mac users as well). For older computers, the very traditional XFCE works extremely well. The two other biggies, Gnome 3 and Unity, are less traditional and currently suffer from the Windows 8-like “you can do it our way and no other” syndrome. Unity also tries to be like a tablet on the desktop, again like Windows 8.
Many install disks double as “live” CD/DVDs, which allow you to test the OS and desktop environment on your system before installing, which is extremely helpful for confirming hardware compatibility. If you don’t want to bother with testing every combination, just go for Mint + Cinnamon. This combination is exceptionally easy to use, and Mint users can install most packages from the well-known Ubuntu as well as its parent, Debian.
Once you find a distro and desktop environment that you like, you can either install it alongside your current OS (if you chose Mint or Ubuntu, which can install to a virtual hard drive inside Windows while still booting natively) or partition your hard drive for a true dual boot system. Other people have already written about this better than I can – Google is your friend.