こんばんは、daihaseです。 今回は私も大好きなLinuxのことを書いていこうと思います。
Linuxとは
PCのことをあまり知らない方でも、WindowsやMac OS Xは普通に知ってると思います。特にMac OS XはiPhoneが出てきてからはiPhoneアプリ開発には欠かせないものとなり、今では開発現場ではほとんどエンジニアにはMacが支給される、なんてことも当たり前になってますよね。
LinuxはそうしたOSの一つで、基本的にはWindows等と変わりません。ただ、その利用範囲は上記OS等と大きく違い、特にサーバー用としては欠かせないOSとなっています。
Linuxの特徴
Linuxがサーバー向けに使われてるというのは、IT企業で働く方なら初心者の方でも何となくわかってることだとは思います。
ざっくりとLinuxは以下のような特徴を持っています。
- オープンソースであり、誰でも無償で使うことができる
- 世界中でサーバー用途として使われており、その実績からも信頼性が高い
- 開発環境が非常に整っており(特にWeb系)、初心者の方も学習用に選ぶOSとして最適
- MySQL, Apache, などなど高品質なソフトウェアの多くを利用出来る
- ネットワーク機能やセキュリティ面もしっかり考えられている
あげればまだまだ色々あるのですが、とりあえずパっと出てくるだけでもこのような特徴があります。
Linuxの欠点
ではLinuxは万能なOSかというとそうではなく、やはり得意不得意があります。
それはLinuxはオープンソースを提唱してるのもあり、基本的にほとんどのソフトウェアが無償で使えるため、商用アプリケーションがあまり存在しません。そこでよく挙げられるのがMicrosoft Officeシリーズが使えないということですかね。
未だ結構開発現場ではOfficeを活用しているところも多く、それに近いソフトとしてLibreOfficeというものがありますが、安定性・互換性面など考えるとやはりWindowsのそれには勝てません。
また動画や音楽、マルチメディア系はWindowsやMac OS Xには劣ってしまっています。こうしたものを編集するのはやはりWindowsなどの方がソフトも充実しておりLinuxでは不向きと言えます。(僕のノートPCに入れてるUbuntuではhuluが再生出来ませんでした...)
あとはLinux発祥がフィンランドということもあり、基本的にドキュメントやヘルプ関係は基本英語です。日本語版がないソフトウェアなんかも多く、そうしたことが多少日本人で英語に苦手意識を持った方の導入障壁となっているかもしれません。
ただ、そうした苦手意識を克服してでもLinuxは触る価値があると思います。例えば言葉だけは聞いた事があるかもしれません、AmazonのAWS。これなんかも基本的にはLinuxサーバーを構築していくことになります。またAndroid、これも実はLinuxをベースに作られたOSです。
このように結構身近でもLinuxは大きな影響を与えており、これからもますます広く普及していくOSなので、Linuxを学ぶことはエンジニアとして活躍してく上で必ずプラスになるので全く知らないって人は是非学んでいってその面白さを体感してみてください。
おわりに
どうでしょうか? 結構クライアント側の開発者やゲーム開発者の中には、Linuxに全く触れた事ないという人もいたので、これがキッカケで興味が出てきた、てなったら幸いですが...。
とりあえずまずはLinuxとはなんぞや?というのから簡単に書いてみました。
次回はLinuxの種類や、導入方法を書こうと思います。
それでは良い開発ライフを〜