OSS(オープンソース・ソフトウェア)って?プログラミング初心者のための豆知識。
IT業界で欠かすことができない、OSS(オープンソース・ソフトウェア)の知見
IT業界のプロダクト(製品)であるソフトウェアには、ソースコードを一般に公開し、商用・非商用の目的を問わずソースコードの利用・修正・再頒布を可能と定義された「オープンソース・ソフトウェア」というものがあります。
2000年代以降、オープンソースという言葉自体が一般的なものとなり、アクトハウスのカリキュラムで学ぶプログラミング言語「PHP」や、そのPHPで書かれたCMS(コンテンツ管理システム)である「WordPress(ワードプレス)」も、オープンソース・ソフトウェアです。
また、ウェブサイトを動作させるためのWWWサーバーソフトウェア「Apache httpd」や、ドメイン名を取り扱うDNSサーバーソフトウェア「BIND」、WordPressの動作に必須となるデーターベース(DB)ソフトウェア「MySQL」といった製品群、そしてOSSの話題では頻繁に登場するLinuxも、オープンソース・ソフトウェアです。
▶関連記事『「ワードプレス」ってなに?プログラミング初心者のための豆知識。』
▶関連記事『イケてるプログラミング言語「PHP」って? 初心者のための豆知識。』
▶関連記事『「MySQL」ってなに? プログラミング初心者はおさえたい基礎知識。』
さらに「仮想化技術」も
さらに、コンピューターのリソース(資源。この場合は、CPUやメモリや記憶装置のことを指します)を有効に活用させる技術として「仮想化技術」というものも進化しており、代表的な製品として「VirtualBox」があり、仮想化技術により構成された環境(仮想化基盤)の管理運用を効率的に行うツール群「vagrant」も、よく使われているオープンソース・ソフトウェアです。
実は、世の中の多くのウェブサイト(ホームページ)は、OSS製品群が複数組み合わさって動作していることが多いのです。モノづくりの手法としてプログラミングを学ぶことも重要ですが、実際に作ったモノがどうやって動いているのか、その仕組み仕掛け(アーキテクチャ)となる部分を理解しなければ、ITの本質を理解したとは言えません。
プログラミングのスキルだけでなく、周辺技術、とりわけ、OSS製品に関する知識や技術を持ち合わせているエンジニアが優秀とされる所以です。
アクトハウスのITカリキュラムで触れるOSSの知識
①WordPressの動作環境を構築する
『「WordPress」って何?』でご紹介しているWordPress(ワードプレス)は、プログラミング言語「PHP」で書かれたCMSエンジンです。
WordPressを動作させるためには、「WWWサーバー・ソフトウェア」「DNSサーバー・ソフトウェア」「DBサーバー・ソフトウェア」「PHP」と4つの要素が必要となります。PHPについては『イケてるプログラミング言語「PHP」って知ってる?』にて記事にしていますのでチェックしてみてください。
サーバーにPHPを配備し、DBサーバーにWordPress用のデータ領域をセットし、WWWサーバーにWordPressが動作するための設定を施し、DNSサーバーに指定したドメイン名で呼び出せるように設定を加えます。
レンタルサーバーによっては、「簡単インストール」などと呼ばれる、ボタンを押すだけでWordPressの動作環境を構築する機能を備えたものもありますが、この場合でもやっていることは上記と同じで、それらを自動的にやってくれているだけ、となります。
アクトハウスでは「WordPressの動作環境を構築する」というテーマの中で、
①WWWサーバー
②DNSサーバー
③DBサーバー
④PHP
⑤WordPress
という5種類のOSS製品に関する知識に触れているのです。
アクトハウスで学ぶプログラミング内容を紹介するよ。初心者の方にもわかるよう「専門用語+たとえ話」でご説明。これからの時代、プログラミングはどこかで体系的に学ぶ必要がある。それなら一気にアクトハウスでケリをつけるのが得策ってやつ。https://t.co/iLiEwndWGA#IT留学 #アクトハウス
— アクトハウス@IT×英語×ビジネス留学 (@acthouse_) 2018年10月11日
②テスト環境を構築する
プログラミングをするときに、必ず出てくるのが「テスト」という作業。
ソースコードを1行でも書けば必ずバグが含まれている、などと言われるように、作成したプログラムの品質を上げるためには、テスト作業を行い、想定通りにプログラムが動作するか、検証をしていく必要があります。
全くの新規で開発するのであれば、テストしていた環境をそのまま本番環境(実際にサービス提供する環境)として構成していく、ということも可能です。
しかし、既に動作中の本番環境がある場合は、本番環境でテストを行うわけにはいきません。また複数名のエンジニアが開発業務に携わっている場合、エンジニアが個々の開発作業やテスト作業を進めるためには、それぞれが環境を用意する必要が出てきます。そうしたときによく用いられるのが、仮想化技術を用いた環境構築なのです。
アクトハウスでは、「テスト環境を構築する」というテーマの中で「VirtualBox」「vagrant」に触れていきます。
目的別に学ぶから、IT技術の理解が深まる
ITは、複数の要素技術が組み合わさることで動作しています。仕組みや仕掛け(アーキテクチャ)を理解すること。サーバー・ソフトウェアや仮想化技術などの基盤(インフラ)技術を習得すること。一見、プログラミングとは無縁のことのように感じますが、どちらもエンジニアの素養としてしっかり身につけておきたい分野です。
もちろん、要素技術そのものを一つ一つじっくり学ぶことも大切です。しかし、実際の業務においては、要素技術そのものを単体で使うよりも、組み合わせて使うほうが圧倒的に多いわけです。それに、要素技術そのものは単体で学ぼうとしても学習効率が良いとは言い切れない部分もあります。
こちらの記事『これからの世界で必要なスキルセット「ユニファイド・スキル」とは?』でも言及してみましたが、ITに関するユニファイド・スキルを身に着けることで、真にITを駆使することができる高機能人材になっていくことができるでしょう。
であれば、
「なぜその技術を使うのか」
「どんな場合にその技術を使うのか」
というように目的ごとに理解を深めていくほうが、技術習得が効率的と言えるでしょう。
完全初心者でも安心の「アクトハウス」へ
アクトハウスでは、プログラミングはもちろん、エンジニアリングに関するビギナーの方、英語初心者、ビジネスはこれから知識を蓄えたいという方にフィットするIT留学です。
そして、少人数で基礎から粘り強く勉強していくため、初心者はもちろん、ちょっとだけプログラミング経験がある方にも最適です。
「体系的にIT・プログラミング・エンジニアリングを理解できる」という機会は、アクトハウスだからこそある学び。プログラミングと英語はもちろん、マーケティングや財務・お金を学ぶビジネス、そしてデザインについても講座を設けているIT留学というのは、2018年現在見当たらない独自のスタイルであり、アクトハウスの優位性。セブ島のIT留学アクトハウスについては下記のリンクからどうぞ。
▶IT留学「アクトハウス」セブ島を詳しく見る
ご質問はLINEやフォームからどうぞ
アクトハウスではご相談を毎日承っているので、起業やフリーランス、キャリアチェンジをもくろんでいる人は、
からお気軽にご質問・ご相談ください。
また「個別相談」も実施しているのでお気軽にどうぞ。
著者:アクトハウス編集部
▶IT留学アクトハウスの最新記事へ