几乎所有软件都是由从事学术的研究人员写作开发的，并通常公有领域软件释出。由于软件需要经常性的进行修改，如：为了适配新的操作系统或硬件、修正错误及增加新功能，软件的源代码一般都会与软件一起提供。1953 在雷明顿兰德公司的 UNIVAC 上开发的A-2 系统在向用户释出时附上了源代码。用户被邀请将他们的改进发给 UNIVAC。因此 A-2 被认为是第一个自由及开放源代码软件。此时，几乎所有 IBM 主机的软件也会附上源代码。其用户也成立相关组织从事软件共享活动，如：IBM 701 用户的 SHARE