質問: Ruby on Rails、もしくはPHSを用いてWebサイトを作ろうと思っています。
回答: > Ruby on Rails、もしくはPHSを用いて Ruby on Railsは、言語の名前ではなくフレームワークの名前。 Ruby言語で書かれてる。Ruby言語でウェブアプリを作りたいなら、Ruby on Railsほぼ一択だと考えておけばOK。 また、PHSではなくおそらく「PHP」と書きたかったのだと思うが、PHPは言語の名前。 ここ最近のPHPでよく使われるフレームワークはLaravelになるが、PHPでは他にも色々と選択肢はある。 おそらく今は、「プログラミング言語の名前」と「フレームワークの名前」との区別もあまりよく分かってないのだと思うので、とりあえず「フレームワークって何?」ってところから、理解してみては。 > セキュリティー関係の知識を学べるサイトや書籍を教えて欲しいです ウェブアプリのセキュリティについては、とりあえずはIPAの「安全なウェブサイトの作り方」がお勧め。 > その完成したものをどのようにWebに上げるか、サーバーやドメインについて 「これらの言語の本を読めば、多分自分のパソコン上で作り上げることは出来そう」なんだよね? 自分のパソコンでそれらを作るってことは、普通は、自分のパソコン上でウェブサーバを動かし、そこでテストするって事にもなる。どこかのサーバにアップロードしてテストするのではなく。 つまり、ウェブアプリの作り方に関する本で学べば、そこら辺も網羅されている(筈)。 具体的な本を挙げるのが一番良いのだろうけど、自分はほとんど本を読まずに学んだ人(というかPHPにはロクな本がなくPHP公式サイト = PHPマニュアルで充分だった)ので、本はよく分からない。 自分が学んだ時代にはなかったサービスだけど、今なら「Progate」「paiza」「ドットインストール」といった、動画で学べるサービスを活用してみては? あるいはYoutubeにも、そういう学習向けの動画はたくさんある。便利な時代になったものだ...。 > ユーザーからお金を得られる仕組みも組み込みたい その手段を大雑把に挙げると 1. 広告収入(アフィリエイト) 2. サービス自体を有料化する 3. ユーザーから得られた情報の活用(あるいは他者へ売る) といった事になる。 1は多少ググる程度でも何らかの情報は得られるだろうし、2はそのまんまなので割愛。 3について例えば、このYahoo知恵袋は無料だが、決して無償のボランティアでやっているわけではなく、あくまでも「商売」としてやっている。 以下は、Yahooの「パーソナルデータの取得」についての説明ページ。 決して個人情報をそのまま他者へ売っているわけではなく、「パーソナルデータ」を端的に一言で表現すると「端末利用者の趣味嗜好」であり、Yahooはそれを例えばZOZOと連携させる(連携先は他にもたくさんある)ことで、収益に繋げていたりもする。 Yahoo利用者の大半は、おそらくそんな事は全く理解していないと思うが、サービスの規模が大きくなれば、そういうお金の儲けのやり方もあるって事で。 > 他にも必要そうな知識があれば教えて欲しい 分からない事は、大抵はググれば何とかなる。 別の言い方をすると、ググって何とかできない人がプログラミングを独学するのは、ちょっと厳しいと思う。 プログラミングというのは、どちらかというと知識よりは「考え方」の方が重要なのだけど、特にウェブアプリはとてもお手軽に「実際に動くもの」を作ることができる。 なので、あまり細かな事を悩まず、とりあえず動かしてみて「考え方」を学ぶのが、独学するコツだと思う。 その点、RubyもPHPも「スクリプト言語」で、ウェブアプリとの親和性も高くとても手軽にできるので、初学者にはお勧め。