Open Source
オープンソースとは、ソフトウェアのソースコード(プログラム)を、インターネット上に無償で公開し、万人にその改良や、再配布を認めたソフトウェアのことです。ソースコードをもとに、その技術の転用や、派生バージョンの作成ができます。誰もが自由に利用できる共有財産(Commons)といえます。
1998年、The Open Source Initiative(OSI)という団体によって「The Open Source Definition」(OSD)が定義されました。
CONTENTS
- OSSの定義
- 著作物のライセンス(前提の確認)
- オープンソースのライセンス
- OSSのプラットフォーム
- System
- Browser & Office
- Programming Language
- 2D 3D Graphics
- Document Editing
- Movie Editing
- Sound & Music
- DataScience / Statistics
- Software Development(Editor / IDE)
- Library
- Others
- OpenData
OSSの定義
オープンソースソフトウエア(OSS)には、以下ののような定義があります。
- 1. 自由な再頒布ができること
- 2. ソースコードを入手できること
- 3. 派生物が存在でき、派生物に同じライセンスを適用できること
- 4. 差分情報の配布を認める場合には、同一性の保持を要求してもかまわない
- 5. 個人やグループを差別しないこと
- 6. 適用領域に基づいた差別をしないこと
- 7. 再配布において追加ライセンスを必要としないこと
- 8. 特定製品に依存しないこと
- 9. 同じ媒体で配布される他のソフトウェアを制限しないこと
- A. 技術的な中立を保っていること
このページで紹介するものは、自由に利用・複製できるOSSです。
いずれも有名なもので、安心して使うことができるソフトウエアですが、インストール後のシステムの動作に関する保障はありません。「ソフトのインストール経験がない・・」といった、PC初心者の方は、ダウンロード・インストールに際して経験のある人に付き添ってもらって下さい。
著作物のライセンス(前提の確認)
ライセンスとは、著作物に対して与えられる「使用許諾」のことで、様々なものが存在します。まずは比較の意味で、その全体像を確認します。
Copyright(All Rights Reserved)
これ自体はライセンス(使用許諾)ではありませんが、「ライセンス状態」を説明する表現という意味で記載しています。著作者が全ての権利を主張するもので、大半の商用ソフトウエアに適用されます。
- 詳細 > Copyright
Copyleft
フリーソフトウェア財団を設立したリチャード・ストールマンが提唱(1984)したもので、オープンソースの多くがこの考え方を採用しています。誰もが著作物を利用・再配布・改変できるようにしよう・・という考え方で、「一般ユーザ」にとっては自由が永久保障されるライセンスです。
- 詳細 > Copyleft
Permissive(Copycenter , Copyfree, BSD-like )
Copyleft には改変したコードの再配布について、通常とは真逆の向きの制限(つまり自由を制限してはいけない・・という制限)をかけていますが(上記4・5項目め)、これは、改変したコードについて権利を主張したい・・という開発企業にとっては不都合な場合があります。その制限を取り払うことで改変後の扱いを自由にしたのが Permissive なライセンスです。「開発者にとって」自由度の高い寛容なライセンスとなっています。
CreativeCommons
Copyright と PublicDomain の中間を埋める様々な形態があります。
- 詳細 > CreativeCommons
PublicDomain
著作権が発生していない状態(放棄を含む)または消滅した状態のものです。
オープンソースのライセンス
以下、ライセンス個別の概説です。
GPL(The GNU General Public License)
Copyleft系のライセンス形式。大きく以下の4項目があります。
- 誰でも自由にプログラムを利用できる
- 誰でも自由にプログラムを改変できる(ソースコードの公開を意味する)
- 誰でも自由にプログラムを再配布できる
- 改変したプログラムの公開では、上記の 3 項目を満たさなければならない
MPL(Mozilla Public License)
プロプライエタリとオープンソースの間のバランスを模索した準Copyleft系のライセンス。Firefox、Thunderbird などを開発しているMozilla Foundationによって作成されたものです。
BSD Licence
Permissive 系ライセンスの中で古くから広く使われてるライセンス。現在最も多く使われているのは「2-Claus-BSD-License」です。
- 誰でも自由にソースコード及びプログラムを利用、改変、再配布できる
- 公開したソースコード及びプログラムは著作権情報とこのライセンスを表示しなければならない
ISC
Permissive 系ライセンス。Internet Systems Consortium (ISC) によって作成されたもので、2-Claus-BSD-License と機能上同等です。
MIT License
マサチューセッツ工科大学を起源とするソフトウェアライセンスで、BSDライセンスをベースに作成されたPermissive 系のライセンス。内容は、2-Claus-BSD-License どほぼ同様です。
Apache License
BSD License や MIT License と同様に Permissive 系のライセンス。二次改変や再配布に関して全く制限をかけませんが、特許の適用や商標利用等に関する制限がかけられていて、開発企業にとって使いやすいものとなっています。
WTFPL(Do What the Fuck You Want to Public License)
あらゆる権利を利用者に与えています。パブリックドメインと変わらない扱いができます。
参考:https://choosealicense.com/appendix/
OSSのプラットフォーム
以下に紹介するは、主にOSSの情報があるサイトです。ダウンロード・利用に際しては、利用規約をよく読んでください。
基本的にインストール後の動作保障はありません。また、ウイルスやスパイウエアについても、絶対無いとは言い切れませんので、念のためにソフトウエアの名前で検索をかけて、ソフトウエア自体の評判を確認してください。
- ペンギンの杜
- Linux Software Search
- Linux Software
- freshmeat.net: Welcome to freshmeat.net
- SnapFiles - download freeware and shareware software programs
付記:Cross-platform / Platform-independent
Win、Mac、Linux、異なるプラットフォーム(動作環境)でも、同じ「道具」で仕事ができることを意味します。学校ではMac、家では Windowsといった環境の場合、このメリットは大きなものとなります。
- Cross-Platform の場合は、それぞれのOSにあったバイナリ(実行可能プログラム)を区別してダウンロードしてください。つまりWin版か Mac版かでダウンロードすべきファイルが異なります。
- Platform-independent と記載があれば、当該ファイルをダウンロードすれば、Win版、Mac版といった区別なく、どちらでもで動きます。ただしその場合、Javaランタイムのような「仮想の動作基盤」を必要としますので、そちらもダウンロード・インストールする必要があります(これも無料です)。
System
Linux
Linux とは MacOSX や Windows と同じ、コンピュータのOS(Operating System)です。PCのOSとして配布されているものは、見た目も MacOSX や Windows と同様ですので、パソコンを使った経験のある方であれば、違和感なく操作することができます。
Linuxは、PCのOSとして以外でも様々なところで利用されています。Webサーバー、スマホ(Android)のOS、家電製品への組み込みなど、名前を聞いたことがない方でも、実は日常的に Linux の恩恵に預かっているといえます。
詳しくは、Linuxに関する概説をご覧下さい。
Xampp
Apache + MariaDB + PHP + Perl
XAMPP は、完全に無償で MariaDB、PHP、および Perl を含んだ、簡単にインストールできる Apache ディストリビューションです。XAMPP オープン ソース パッケージは、インストールと利用が非常に簡単できるよう設定されています。
https://www.apachefriends.org/jp/download.html
詳しくは、LocalServerをご覧下さい。
Browser & Office
Firefox
Firefoxとは、Mozilla Foundationが開発・公開している、オープンソースのWebブラウザです。Windows、Mac、Linux、あらゆるプラットフォームで快適に動作しています。
W3C標準に準拠したブラウザであるという点で、技能五輪のWebデザインの審査でも、IEと並ぶ標準ブラウザとして位置づけられています。
2004年11月に最初の正式版が発表され、以来、急速にユーザが増えています。
タブブラウザであること、豊富な機能拡張が続々と開発されていること(インストールや更新も非常に簡単)などもあって、このブラウザへ乗り換える人が増えています。
Firefox は、2007年度GoodDesign賞を受賞しています。
Firefox で Gyao その他 IEでしか見れないサイトがあることでお悩みの方、
Firefoxのヘルプから機能拡張のダウンロードサイトへ行って[ IE Tab ] を落とし、ツール>IEタブのオプションにて、目的サイトのアドレスを登録。
該当サイトへ入ると、その場だけ IEのエンジン を利用して見ることができます。
LibreOffice
OpenOffice から派生したオープンソースのオフィス統合環境。OpenOfficeと同様、ワープロソフト「Writer」、表計算ソフト「Calc」、プレゼンテーションソフト「Impress」、データベースソフト「Base」、ドローソフト「Draw」、数式編集ソフト「Math」の6つのソフトが含まれています。。MSオフィスのデータの読み書きにも対応しています。
Programming Language
JavaScript
オープンな仕様のスクリプト言語で、基本的にはHTMLページに組み込まれるかたちで、ブラウザ上で動作します。「何かをダウンロードしてインストールする」という必要はありません。以下、ライブラリをいくつか紹介しますが、これらもオープンソースとして公開されていて、CDNでページに組み込めるので、同様にダウンロード&インストールは不要です。
Python
Pythonはさまざまな分野のアプリケーションで使われているプログラミング言語です。クリーンで読みやすい文法、手続き型のコードによる自然な表現、直感的なオブジェクト指向、事実上すべてのタスクをこなせる広範な標準ライブラリとサードパーティのモジュール、アプリケーションに組み込んでスクリプトインタフェースとして利用することが可能・・など様々な利点があります。
- 公式サイト
- Python https://www.python.org/
- Python Japan https://www.python.jp/
- インストール
Pythonには、2系と3系のバージョンがあって、これらは互換性がありません。これから学習する方は、3系のインストールをおすすめします。- https://www.python.org/downloads/ 基本 IDE含む
- https://www.anaconda.com/ データサイエンス関連ライブラリ統合
Processing
Processingとは、電子スケッチブックという発想で開発された、デザイナー・アーティストのためのプログラミング環境です。MIT(マサチューセッツ工科大学)メディアラボにおいて、ジョン前田、Casey Reas 、Benjamin Fry らが、電子アートとビジュアルデザインのために開発したプログラミング言語で、視覚的フィードバックが簡単に得られる点で、プログラミング学習用の教材と しても注目されています。
- GNU GPL で公開されているオープンソースのソフトウエアです。
- Win版、Mac版、Linux版、すべて存在します(使い方も同じです)。
- ダウンロードして解凍し、適当なフォルダに置くだけですぐ使えます。
- Javaをベースに動作しています(したがってJavaの動作環境も必要です)。
- サンプルが多数附属しているので、それらを例題としてスムーズに学習できます。
- 実行形式のソフトウエアとしてのエクスポートが可能です。
- 画面上での作品をPDFにすることができます。
- Arduino、GAINERなどとの接続でインタラクティブなメディアアート作品づくりも可能です。
- 関連ページ
- Processing デザイン/アートのためのプログラミング言語
- Processing/Sample
- p5.js
2D 3D Graphics
Blender
Blenderは統合型の3DCGソフトです。もともとはオランダのNaN社がインハウス用に開発していたものですが、多くの有志の支援により、現在はオープンソースのフリーウェア(ライセンスGPL)として、Blender Foundationのサイトからダウンロードして使用することができます。Windows・MacOSX・Linuxすべて同様に動作します。
The GIMP
GIMP は GNU Image Manipulation Program の略で、フォトレタッチソフトです。 GNU General Public License version2 にもとづいてプログラムを自由に再配布、改変、公開することができるフリーソフトです。Windows、Mac(Xの環境が必要)、Linux、あらゆる OSで動作します。操作感に慣れるまでは、若干とまどうかもしれませんが、画像処理に必要な機能は市販ソフトに匹敵するレベルで整っています。
Darktable
RAW画像の現像処理
RawTherapee も同様の現像処理ソフトです
Inkscape
Inkscapeはオープンソースのベクターグラフィックスソフトウェア(ドローソフト)で、W3C標準のツールとして位置づけられています。XML・ SVGなどの標準に完全に準拠していて、Windows、Mac、Linux、あらゆるOSで動作します。将来的には、ベクターアニメーションシステムの実装も予定されています。
Figma
ブラウザベースのコラボレーション・インターフェース・デザイン・ツールで、デスクトップアプリケーションとしてインストールすることで、オフラインでも利用できます。
draw.io
ダイアグラムの作成に便利なドローツールです。ブラウザ上で使えるオンラインツールで、GoogleDriveのアプリケーションとして利用できます。Apache v2ライセンス。
Document Editing
Scribus
いわゆるDTPソフトです。日本語テキストの直接入力が実現してないのですが、エディタで打って流し込めば割り付けはできます。将来性は非常に大きいと考えられます。
Re:VIEW
技術(書|者)のための電子・紙書籍制作ツール
Movie Editing
Blender
上述の3DCGソフトウエアですが、ビデオ編集機能も充実しています。
Kdenlive
動画編集ソフトウェア(MacOS 、Windows 、Linux に対応)
https://kdenlive.org/
Lightworks
The complete video creation package
動画編集ソフトです。元はプロ向けの有料ソフトでしたが、現在は会員登録すれば無料で使えるようになっています。
OpenShot
動画編集ソフトウェア(MacOS 、Windows 、Linux に対応)
Shotcut
動画編集ソフトウェア(MacOS 、Windows 、Linux に対応)
Synfig Animation Studio
Open-source 2D Animation Software for Windows, Linux and OSX
2Dアニメーションソフトで、一応動作確認できたので紹介します。
参考:Unreal Engine
Epic Gamesより開発されたゲームエンジンで、 原則無料、ソースコードも公開されていますが、UE製コンテンツの売上が100万ドルに達した場合5%をロイヤリティとして支払う必要がある・・といった仕様で、これはプロプライエタリなライセンスで、オープンソースの概念には該当しません。
Sound & Music
Ardour
DAW |Record, Edit, and Mix on Linux, macOS and Windows
参考:Cakewalk(SONAR)がFreeソフトになりました。
Cakewalk by BandLab Free Win
Audacity
Audacityは、音声の録音と編集をするための、オープンソースソフトウェアです。Mac OS X、 Windows、Linuxで動きます。
Surge XT
オープンソースのハイブリッドシンセサイザーです。
https://surge-synthesizer.github.io/
Hydrogen
直感的に使えるドラムマシン
LMMS
Let's make music with a free, cross-platform tool for your computer.
LMMSは、いわゆるDAW(Digital Audio Workstation)です。音声データ(WAVなど)や音楽データ(MIDI)を統合的に扱うことができ、VST(Virtual Studio Tecnology)プラグインにも対応していますので、様々な音楽作りが楽しめます。DAWの経験の有る方であれば、直感的に使えると思います。
Rosegarden
Linux用のDAWです。オーディオ、MIDIシーケンサー、楽譜作成ソフトウェア、作曲、編集が可能です。
Qtractor
Qtractorは、オーディオ・MIDIに対応したマルチトラックシーケンサーです。
現状ではLinux環境のみです。Ubuntuの場合はソフトウエアセンターから簡単にインストールできます。
MuseScore
クロスプラットフォームの楽譜エディタです。
入力が簡単。再生視聴することもできます。
- その他の楽譜エディタ
- 楽譜PDF(Blank Sheet)
DataScience / Statistics
GNU R
R は統計解析向けのプログラミング言語及びその開発実行環境です。コマンド操作や変数の扱いに、最初はとまどいを感じるかもしれませんが、グラフの作成などもでき、それを JPEGやPDFで書き出すこともできるので、論文の作成などでは重宝します。統計の専門家が開発に関わっていて、ライブラリーパッケージも充実しています。
Orange
Open source machine learning and data visualization for novice and expert.
グラフィカルに使えるデータマイニングソフトウェア。
モジュールをダイアグラムで結ぶことで分析フローを構築できます。
プログラミングパラダイムは、データフロープログラミング。
Python
Python言語は、現在のデータサイエンス,・AI開発の標準的ツールで、以下のようなライブラリが、それを支えています。
Software Development(Editor / IDE)
Visual Studio Code
Visual Studio Codeは Microsoftが開発している エディタでクロスプラットフォームの TextEditor です。コンパイルされたバイナリはプロプライエタリソフトウェアですが、ソースコードは、MITライセンスの下でリリースされています。
Eclipse
IBMによって開発されたオープンソースの統合開発環境 (IDE) です。Javaをはじめ、様々な言語に対応します。
Aptana Studio
Aptana Studioは、HTML、Java Script、CSSエディタとそのアウトライン機能を搭載するWebオーサリングツールです。IEやFirefox などのブラウザチェック、FTPアップロードも可能な統合ソフトです。Eclipseのプラグインとして提供されていますが、単独で動作するバージョンもありますので、Eclipseをご存知ない方は、そちらを利用すると良いでしょう。
その場合、ダウンロードページでは、[Standalone] を選択すればOKです。
Aptana Studioには、フリー版(Community Edition)のほかに有償版もありますので、ダウンロードやアップデートの際には、区別が必要です。
Blue Griffon
Webオーサリングツール、Nvu(Kompozer) の後継バージョンです。
Library
OpenCV (Open Source Computer Vision Library)
open source computer vision and machine learning software library.
インテルが開発・公開したコンピュータビジョン向けライブラリです。
openFrameworks
openFrameworksは、インタラクティブデザインやメディアアートを制作するためのC++ベースのフレームワークで、MITライセンスで配布されています。
2D、3Dの図形描画、アニメーション、動画、サウンド、マウス・キーボードによるインタラクション、ネットワーク活用など、様々なマルチメディアコンテンツを制作することができます。
OpenGL
The Industry's Foundation for High Performance Graphics
グラフィックスハードウェア向けの 2次元 / 3次元CGライブラリ
TensorFlow
An open source machine learning library for research and production.
Googleが開発・公開している、機械学習のためのソフトウェアライブラリ
参考:テンソルとは、ざっくり言うと多次元配列のこと。次元を「階」と呼びますが、長さ・重さなどの数値(スカラ)は 0 階テンソル、ベクトルは 1 階テンソル、行・列からなる行列は 2 階テンソル、行・列・シートなど 3 つのパラメータをもつデータは 3 階テンソル。TensorFlow は、この拡張された配列同士の演算を簡単にできるようにしたライブラリとも言えます。
Others
その他のオープンソースプロジェクト
- オープンソースハードウエア
- Arduino https://www.arduino.cc/
- OSVehicle https://www.osvehicle.com/
- WikiHouse http://www.wikihouse.cc/
- Raspberry Pi https://www.raspberrypi.org/
- OpenSource Robot Poppy https://www.poppy-project.org/en/
- https://www.automotivelinux.org/
OpenData
ページを独立させました > OpenData