Page 1 of 2

Intro to

Posted: Fri Nov 21, 2014 6:18 pm
by webfork
Note that there is some overlap here with the FAQ and About pages. This is a work in progress.

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 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)
Although we recognize the computing market is changing, to date we only occasionally list information about Android, Linux, and 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

Re: Intro to

Posted: Sat Nov 22, 2014 12:03 am
by Checker
Great overview :!:

But there is a typo. It's not "InnoUp" ... it's "InnoUnp" :wink:
webfork wrote:... InnoUp - a part of Universal Extractor that requires manual updating (see the site FAQ) ...

Has to be changed at the FAQ page as well.

Re: Intro to

Posted: Sat Nov 22, 2014 3:54 am
Thank you, webfork. :)
webfork wrote: trolltech - a toolset used by many programs that writes some non-critical, predictable items to the registry (more from Wikipedia)
The toolkit some programs use is called Qt. Trolltech is the company that used to develop Qt. Then Nokia acquired Trolltech, and later sold Qt to Digia.

The reason why the Trolltech name is still around (HKEY_CURRENT_USER\Software\Trolltech) is that Nokia and Digia aren't able to rename the registry key. If they renamed it, programs which upgrade to a new enough version of Qt wouldn't be able to find old data stored in the old key.
Checker wrote:But there is a typo. It's not "InnoUp" ... it's "InnoUnp" :wink:
"InnoUnp" isn't correct either. It's innounp (all lowercase). ;)

Re: Intro to

Posted: Sat Nov 22, 2014 6:17 am
by Checker
SYSTEM wrote:... "InnoUnp" isn't correct either. It's innounp (all lowercase). ;) ...
100% correct :!:

Re: Intro to

Posted: Sat Nov 22, 2014 6:34 pm
by webfork
Thanks SYSTEM and Checker. I actually made a bunch of errors so I'm running through now with an edit.

Re: Intro to

Posted: Sun Jan 04, 2015 5:30 am
by Midas
IMHO, after due amendments (PFWC? More like TPFC... ;)) the present topic should be a 'sticky' in the "Development" forum.

Re: Intro to

Posted: Sun Jan 04, 2015 3:05 pm
by webfork
Midas wrote:IMHO, after due amendments (PFWC? More like TPFC... ;)) the present topic should be a 'sticky' in the "Development" forum.
Interesting idea. I was wondering what to do with it next.

Re: Intro to

Posted: Thu Jan 22, 2015 4:14 pm
by Midas
FYI, here's an article that provides quick insight on the topic: ... n-you-can/

Re: Intro to

Posted: Thu Jan 22, 2015 4:40 pm
by webfork
Midas wrote:FYI, here's an article
Good addition. If I'd seen this when I was first looking at portable software (coming from an install-only view) it would have really helped.

Re: Intro to

Posted: Sat Jan 02, 2016 11:43 am
by Midas
Here's another interesting piece comparing portable and installable Windows software:

Re: Intro to

Posted: Sat Jan 02, 2016 11:58 am
by I am Baas
Midas wrote:Here's another interesting piece comparing portable and installable Windows software:<br sab="729"><br sab="730">
The person that wrote the article seems clueless as far as portable applications are concerned.

Re: Intro to

Posted: Sat Jan 02, 2016 1:24 pm
by Midas
An opportunity for a right-minded article, then. I believe it is interesting because it reveals the 'layman' mindset about the matter...

Re: Intro to

Posted: Sat Jan 02, 2016 1:53 pm
by webfork
Midas wrote:
I am Baas wrote:The person that wrote the article seems clueless as far as portable applications are concerned.
An opportunity for a right-minded article, then. I believe it is interesting because it reveals the 'layman' mindset about the matter...
I think Baas is referring to these two points:
A portable app will not remember you personal preferences and settings. These may include recent or frequently accessed files and directories among other things.

A portable file will not modify the Windows registry in any way.
I think the author has either a very narrow definition of portable or spoke to someone for the purposes of this article that was just unclear. I've written and been a source for tech articles before and this happens when you rely on only one source or don't send your article to the source before publish.

Re: Intro to

Posted: Sat Mar 21, 2020 8:47 pm
by webfork
There's a glossary already in this thread but I came up with a few more terms over the past year that are more conceptual. Some of these may be a little too basic, but sometimes it's worth revisiting the words we use.


Program descriptions

Under the hood

Referring to features, additional functionality beyond the obvious, usually inside sub menus, configuration menus, or syntax.

High / low barrier to entry

Hard to learn vs. easy to learn, e.g. Chess vs. Tetris. Some programs have you up and running in minutes, while others not only need a manual but a detailed analysis of usage and functionality.

Configuration vs. customization vs. accessibility
  • Configurability referrs to behavior, such as open last file on startup, launch a web browser, check for a new version every 30 days.
  • Customization talks about the look and feel, icons, toolbars, themes, etc.
  • Accessibility are ways to make the program function for people with disabilities, such as a high contrast mode, larger text and icons, text-to-speech functionality, etc. Accessibility and customization as described here can overlap, such as with many programs' "dark" mode that reduces glare and improves readability.
Note that accessibility can sometimes be synonymous with a low barrier to entry (described above).

Phone home

Any program that reaches out to a home website or service for any reason. This usually means checking for updates, but some more careful users may not want a program that does this. You can usually prevent such connections via the Windows firewall, but ideally programs shouldn't phone home unless specifically authorized. More on phoning home.

CLI / command-line interface

Generally speaking, programs that function in text-only environment. For example, type CMD in the start menu. The window that appears is CLI. Depending on your operating system and settings, it could be the new PowerShell or standard Windows Command Prompt: ... nd-prompt/ .

Related: CLI Submission and Discussion forums.

Batch or Batch-capable

Can be automated. Any software tool that processes one file can usually be setup to do the same to many. Whether that function is built in, must be configured, or requires buying the premium features is a separate issue.

Most command-line tools (mentioned above) can do this from day one.

Frequent vs. rare usage

Depends on your activity, but some programs are assumed to be needed often, others less so
  • Very frequent/daily: browser, notepad, todo list, chat tool
  • Weekly or monthly: software and hardware maintenance e.g. backup programs, temp file cleaners, and update tools
  • Incidental/only when needed: file recovery, troubleshooting

Ill-defined or problematic terms

User friendly

This is a problematic term that's difficult to explain and highly relative to individual users. It is however generally understood that a program that hesitates and shows no activity for long periods of time with no ability to view progress, pause, or cancel is not user friendly. Most users prefer a graphical, responsive interface with clear, uncluttered menus, symbols, and controls.

Command-line tools are also not generally seen as user-friendly.


Freeware tools are usually less focused on breaking new ground in software and computers, but a program that behaves the same as everything before it? New features, better ways to do old efforts, and shortcuts to move faster and easier can all be considered innovation.

It's important to note that sometimes you don't want innovative, you want reliable and simple. Text editor and notepad tools often the programs that must try to bridge this by both doing it better than previous software but still being simple and reliable.


In essence a suggestion of the time and care that's gone into a program, and is not the same as quality or usefulness. Programs that are early stage, have some bugs, and a few interface issues can still be used daily and never need addition. Other programs can have few bugs, very clear and easy interfaces, (high polish) but don't actually solve any problems.



You can write a license to say almost anything, but whether those actually compel action is a separate issue. The FAQ has a number of license types listed:

Redistribution restrictions

Part of a license covering whether or not you allow someone to host/distribute your program. This is important as sometimes programs either add commercial components or go offline altogether, and it's important that we're not prevented from posting a mirror due to a restriction in the license.

Redistribution requirements

Also part of some licenses (notably the GPL) that require hosting the source code along with a binary distribution.

Permissive / Restrictive

In short, a license with few requirements vs. many requirements. Permissive licenses include MIT and BSD, which have very few requirements for their use. Others can restrict usage by commercial services or for use in "offensive acts to public order and morality (including anti-social activities and their promotion)" (


Critical mass

Taken from physics, the notion that technology about whether any tool, service, codebase, or tech would take over if it hit the right size or visibility. This is a frequent conversation in tech circles where something from years ago would be at the forefront now if given a little more time, effort, or focus by the owner. Examples include Firewire, BeOS, Windows on Alpha, Intel Merced, and many more.

It seems that a program needs to have enough users, interest, and/or groundswell to help it hit a level where they become broadly known. This is can result in broader notoriety, inclusion in larger software distributions, donations, write-ups by journalists, corporate sponsorship, and appearances in top 10 or must-download lists. Because software is so easy to copy and distribute, it's not uncommon for major projects to reach 1,000,000 downloads. Some programs quit before they reach this point, others will work for a decade and never reach it.

Many developers have expressed frustration that they've put a huge amount of time and effort into their software, but it doesn't seem to resonate with users. Part of the goal of PFW is to help devs achieve critical mass by getting them the time and attention of more users.

Re: Intro to

Posted: Sun Mar 22, 2020 12:46 am
by vevy
webfork wrote:
Sat Mar 21, 2020 8:47 pm
Under the hood
Very useful additions. I always used under the hood to refer to the mechanics of the program (read: the code itself; how it performs its functions), rather than non-obvious features. I am not sure if it is used differently here.