What is "portable"?
Portable software is more than just being able to work on a USB "thumb" or "key" drive as when the project started. Increasingly, programs are saved to cloud services like Dropbox, moved on to desktops, and much more. What becomes important whatever the environment is to determine where settings are saved and if a program can work with other files irrespective of where it's stored.
Why portable freeware?
There are a long list of great reasons why portable software increases flexibility, speed, and utility. You can set up your software only once and take it with you everywhere, enabling a predictable experience that's easy to backup and restore. Portable software is often more secure and much faster to get up and running than multiple install sequences.
Every member of PortableFreeware.com can list a time when a listed program got around a restriction, helped them fix a friend's computer, or let them surf the web or send email more securely. Additionally, portable freeware users see fewer registry entries, which have a tendency to slow your computer down over time.
As the Windows desktop is most comfortable with portable software, this is primarily a Windows-focused site. There are several reasons for this:
- Windows is far and away the dominant desktop platform and most often available in public areas
- Many other platforms have taken an "App Store" approach with a single channel software delivery system; it's often more difficult to run local software
- Windows has had relatively good backwards-compatibility across versions and isn't difficult to virtualize (unlike Mac/iOS)
A quick explanation of terms used here on the site:
Portable terms (unique to portable software)
- PFW or PFWC - acronym for the site (Portable FreeWare Collection)
- no-install - something that doesn't have an installation process, usually just a ZIP file with an executable file. This doesn't always mean the program is portable, but can be helpful when using a machine that has disabled software installation for security reasons.
- path portability - describes how, if you move the program and it's associated files, it runs normally. Sometimes this applies to application files, sometimes to the files around it.
- "..\" the way that Windows describes a folder beneath it. See relative pathways below.
- relative pathways - use of files and folders not based on hard links, but depending on where the program is installed. For example a program looking for music files in:
- c:\music would not support relative pathways
- "..\music," or a computer reference to the folder below it, DOES support relative pathways
- no settings - Doesn't save anything to the host machine. Each time you run the program, it always starts and runs the same. These programs are always considered portable.
- self-destructing - program starts, does something, and then closes (like DesktopListView)
- stealth - doesn't write to the registry or, if it does, deletes these entries on exit
- registry green - doesn't write anything to the registry
- UniExtract - short for Universal Extractor, a commonly used tool here on the site
- InnoUnp - a part of Universal Extractor that requires manual updating (see the site FAQ)
Other common terms
- 7z / RAR - similar to ZIP files, these are collections of files packed into one file. These formats are ideal because they are frequently much smaller than ZIP files, but cause confusion because not everyone knows how they work or how to open them. There are many ways to open these, but we generally recommend either PeaExtractor (super simple) or 7-zip.
- AppData (short for 'Application Data') - one of several folders on your computer where applications frequently save info/settings. A program that saves settings to "appdata" isn't portable.
- application folder - this is the folder where you save the portable program. So if you're running a program C:\portable\xyz.exe, the application folder would be C:\portable. If you were running xyz.exe directly from the "F" drive, your application folder would be F:\
- trolltech - (also "qt") a toolset used by many programs that writes some non-critical, predictable items to the registry (more from Wikipedia)
- registry - a place where Windows saves all kinds of information from settings, system data, keys, and much more. Portablefreeware prefers software that doesn't touch the registry, reverses any settings edits on exit, or only makes necessary changes (such as Windows tweaking programs).
- HKEY - another term for registry entries
- HKCU - stands for HKEY CURRENT USER - one subset of the registry hierarchy
- HKLM - stands for HKEY LOCAL MACHINE - another subset of the registry hierarchy
- Command line - a text-based user interface that doesn't require a mouse, not commonly highlighted here on the site
Common system requirements
- Java - developed by Sun, a company later purchased by Oracle, a toolset that must be installed as a requirement for some programs. Some portable versions of this exist but additional configuration is sometimes necessary to enable portable usage.
- .NET (a.k.a. dotNET) - similar to Java in many respects but developed by Microsoft, it is an additional installation in order to enable some programs. There is no portable version, so Portablefreeware generally leans away from dotNET programs.
Background: After a conversation a while back with someone trying to explain what I do on the site, I realized that this place isn't very accessible to new users. I wanted to address the fact that we have our own language/terminology in some areas that confuses new visitors. Note that the focus with this is short, accessible, and clear; I didn't want to overwhelm people with information but instead hopefully seed ideas and interest.
Edits and suggestions welcome.
Related: Presentation - draft site intro