1980年代後半から自由な利用ができる新しいプログラミング言語が幾つか誕生した。1987年にPerl、1991年にPython、1995年にRubyがインタプリタのスクリプト言語としてリリースされた。それらのスクリプト言語はホビイストやハッカーの手軽なツール、HTTPサーバのCGIとして多用されたサン・マイクロシステムズは1995年にJava仮想マシン用にJava言語を開発し、コンパイラと実行環境を無償で提供した。Java仮想マシンはWindows、Mac OS、Linux、そして当然サン・マイクロシステムズのSolarisで動作した。また、Java仮想マシンとウェブブラウザを連携させてウェブブラウザ上でJavaソフトウェアを動かすJava Appletはソースコードの入手、学習、実行の容易さに加えて、プログラマからエンドユーザーへの頒布のハードルの高さを下げた。Java仮想マシンはプロプライエタリ・ソフトウェアであったが、その上で動作するソフトウェアがプロプライエタリでなければならない制約はなかったため、Javaソフトウェアのソースコードは開発者同士でインターネットを通して共有された。また1990年代後半にはウェブブラウザ上で動作するプログラミング言語、ソフトウェア環境としてJavaScript、Macromedia Flash（ActionScript）が登場した。しかし、ソースコードから実行形式のソフトウェアを出力できるプログラミング言語およびコンパイラは依然として限られており、GNUプロジェクトのGCCが対応するC/C++が主流のプログラミング言語だった。
1980年代、Unixがクローズドソースとなり自由に利用できるオペレーティングシステム（カーネル）が存在しなくなったため、Unixのソースコードを源流とせず、しかしながらUnixのインターフェースと互換性のあるカーネルの開発が始まった。アムステルダム自由大学の教授アンドリュー・タネンバウムは1987年にソースコードが非公開となったAT&TのUnixの代わりの教育用オペレーティングシステム「MINIX」を著書『Operating Systems: Design and Implementation』の中で例として開発した。機能上の新しさはないが、マイクロカーネル構造を採用するなど、モダンな洗練が行われていた。元々はIBM PCをターゲットとして開発されたが、その後Atari、Amiga、Macintosh、SPARCをはじめ、日本においてはNEC PC-9800シリーズにも移植された。GNUプロジェクトは開発初期はMachをベースにマイクロカーネルを開発することを検討していたが、1987年にTRIXをベースにすることを検討し、最終的には1990年にBSD4.4をベースにしたGNU Hurdの開発を決定した。しかし、開発は遅々として進まず、リチャード・ストールマンは2010年にGNU Hurdは完成していないが重要なプロジェクトではなくなったと発言している。
1980年代以降、AT&TのUNIXはクローズドソース、プロプライエタリ・ソフトウェアとなったが、それまでに大学等で広く使われていたため、そのインターフェースをベースとしたオペレーティングシステムがUNIXライクOSとして派生、誕生、成長していった。また、オペレーティングシステムに加えて、UNIXライクOS上で動作するGUIアプリケーション、コンパイラやプログラミング言語も自由に利用できるソフトウェアとして開発、公開された。UNIX、DOS、Macintoshなどのプロプライエタリな環境を望まないユーザーにとって好ましいもので、ソフトウェアの利用者、開発者を拡大していった。
リチャード・ストールマンはフリーソフトウェアの更なる促進を図るため、1985年にフリーソフトウェア財団を設立した。フリーソフトウェア財団はフリーソフトウェアの推進し、GNUプロジェクトを支援する非営利団体である。1990年代中ほどまでのフリーソフトウェア財団はGNUプロジェクトの開発者の支援（雇用）が主な事業だった。1990年代中ほど以降はフリーソフトウェアの利用者の自由を啓蒙し、「フリー（自由）」であるソフトウェアやファイルフォーマット、在り方を広めるフリーソフトウェア運動を実施していった。また、GPL違反是正（特にコピーレフト違反是正）をソフトウェア開発者やソフトウェアベンダーに強く指導し、時にはライセンス違反の訴えを裁判で争った。
リチャード・ストールマンは1980年代中頃にフリーソフトウェアを広く展開させるためコピーライト（著作権）の対象となる著作物の自由な状態を維持するための法的な仕組みとなる「コピーレフト」の概念を発案した。コピーレフトは利用者に、追加費用なく利用する権利、プログラムの完全なソースコードを入手する権利、ソースコードを学習、修正する権利などの多くの権利を与え、同時に成果物に同一の条件および追加の制限を加えない義務を要求した。成果物は他のプログラムの混合で構成されるため、下流の利用者は自身の成果物を独自の制約を加えたソフトウェア（プロプライエタリ・ソフトウェア）に変えることはできず、コピーレフトのコモンズ（ローカル・コモンズ）に貢献するよう呼びかけられた。コピーレフト（copyleft）という単語はコピーライト（copyright）の対義語として1970年代後半には存在していた。リチャード・ストールマンがコピーレフトという語を気に入ったのは、1984年にドン・ホプキンスがリチャード・ストールマンに宛てて送った「Copyleft — all rights reversed」（コピーレフト―全ての権利は逆さにされている）というフレーズに由来する。この後、リチャード・ストールマンはコピーレフトという概念の発案と定義まで少々の時間をかけた。
プロプライエタリ・ソフトウェアの文化に強いストレスを感じた一人にリチャード・ストールマンがいた。リチャード・ストールマンはこのままでは最初に他者が書いたプログラムを学習、修正することができなくなり、それは非道徳的であると考えた。この文化に対抗する形で、1980年代中程からリチャード・ストールマンは、利用者の自由とコミュニティに敬意を払い、ソフトウェア利用者にソフトウェアを実行、複製、頒布、学習、改善する自由を提供する「フリーソフトウェア」（英:  free software、日: 自由ソフトウェア）を提唱した。
国際連合憲章は、総会が「国際法の漸進的発達と法典化を奨励すること」などの目的のために研究を発議し、勧告をすることとしている（13条1項）。これを受けて、国連総会は、第1回通常会期第2部開会中の1946年12月11日に採択した決議において、国連憲章に定められた使命を達成するための手続を検討すべく、「国際法の漸進的発達と法典化のための委員会」、別名「17人委員会」を設立した (A/RES/94 (I))。同委員会は、1947年5月12日から同年6月17日までの間に30回の会合を開き、国際法委員会の設置を勧告する報告書を提出した。その中では、国際法委員会は政府代表ではなく個人資格の国際法専門家で構成されるとの方針が多数に支持された。これを受けて、国連総会は、第2回通常会期中の1947年11月21日に採択した決議において、国際法委員会を設立するとともに、第6委員会で準備された26条から成る国際法委員会規程を制定した (A/RES/174 (II))。規程に従い、国際法委員会の最初の選挙が1948年11月3日に行われ、第1回会期は1949年4月12日に開会した。