個人でwebサービスを開発したい!と思ってから実際にやったこと2 準備~開発編

2018年5月1日プログラミング, Ruby

 

webサービスを作って公開したいと思った後、即行動・・・というわけにはいきません。色々と決めるべきことがありました。

個人でwebサービスを開発したい!と思ってから実際にやったこと2 準備~開発編

 

そうだ、webサービスつくろう・・・その前に

 

前回のエントリではざっくりとした内容で、完成イメージなどを書きました。そしてその後コツコツと開発を進め・・・自作のwebサービス「ちえのわ!」を公開するところまで到達することができました。つまり自作のwebサービスを公開後、この記事を書いています。

振り返ってみるとまずwebサービスを作ってみようと思い立った後、決めるべきことがありました。それは

  • どの言語で開発をするか
  • 教材は何を使うか
  • どれくらいの期間で開発するか。

どの言語を使うかは初心者にとって重要です。人によっては言語の選択は宗教の選択をするようなものという人もいるかもしれませんが、やはり言語選択というのは初心者にとって大きな壁でしょう。ちなみに私は最初Pythonを使用しようとしていました。ですが途中でPythonを使う事をあきらめ、Rubyへ変更します

どの言語で開発するか・・・。

前項でも書きましたが言語を選択するのは初心者にとっては一大事です。

この難しい問題について、私なりの回答が今回の経験により導くことができました。

それは「もっとも簡単に公開までもっていける言語を選択する」です。

webサービスを公開してみて、大切だなぁとしみじみ思ったことは「出来はともかく、公開することが重要」ということです。

実際にwebサービス作っていると、あの機能がほしい、こういうことも出来たらいいな、などなど色々と頭に浮かんできます。それら一つ一つをすべて実装してから公開なんていっていたらいつまで経ってもサービスを開始できません。

なによりも実装の途中で挫折して結局公開できずなんて状況が最もいけない状況と言えるでしょう。

とにかく前へ進むこと。そのためには最低限動くものをつくり、公開していまうのが一番だと感じました。サービスの向上は公開後もできるわけですし、何度も言いますがとにかく公開することが目標です。そのためには言語の選択は公開までの道のりが簡単な言語にするべきだと思いました。

私のおススメはRubyです。最初Pythonでなんとかしようと考えていた身ではありますが、日本語のマニュアルや資料の量が段違いでRubyのほうが多いです。

教材は何を使うか・・・

私は上記の書籍1冊だけでwebサービス「ちえのわ!」を作成いたしました。

非常にいい入門書だと思っております。(いかんせん誤字脱字が多いのが気にはなりますが・・・)

前項でも書きましたがRubyは日本語の入門書がとても多いです。

教材選びのポイントとしては「できるだけ新しい書籍を買う」というのが重要だと思います。

なぜなら言語の仕様(バージョン)はどんどん新しくなっているので、評価の良い書籍でも今の環境ではもう古くなっており、最悪サンプルコードが動かないという事態が発生してしまいます。

なので書籍の評価も大事ですが、後発の書籍を優先的に試してみるのが公開までの近道かと私は思っています。

どのくらいの期間で開発するか・・・

開発したことないのにリードタイムなんて決められるわけないだろ!いい加減にしろ!という方もいるかもしれませんが、期間を設定するのは非常に重要なことだと思います。

公開までの期間・・・というと難しいかもしれませんが、「購入した書籍を何日中に終わらせる」というものを設定するといいと思います。

教材を買ったが結局完走できず仕舞い・・・というのが最悪のパターンですのでとにかく買った書籍についてはサンプルコードをすべて打ち込みましょう。サンプルコードがある程度手元にそろえば、自分が実現させたいwebサービスに必要なサンプルコードというものが見えてきます。

あとはそれをどんどん組み替えていき、自分自身のコードにしていけばいいと私は思っております。

とりあえずサンプルコードはすべて動かした!・・・その後

本買った!とりあえずサンプルコード動かした!

・・・で?

という感じになりますが、まずはサンプルコードを書き換えるところから始めました。

そこでまずぶち当たる壁としては「コードが動かない・・・」ということでしょう。

その時の苦しみといったらもう大変なストレスですよね・・・。

どの言語を選択するかにもよりますが、必ずデバッグの環境とやり方を確認することが重要です。

コードが動かないとまず気持ちが萎えてしまいますので、どこに問題があるのか、どこのコードで引っかかっているのかを確認する術を必ず確立させておきましょう。

意外なことにこのデバッグの方法まで書いた書籍があまりありません。ググって確認して・・・という地道な情報収集が必要な部分になるかと思います。

書籍の内容とやりたいことがなんか違う!そう思ったら・・・

買ってきた本の内容は一通り目を通したぞ!

でもなんか違う・・・と思ったらすぐに2冊目を購入しましょう。1冊目を理解できなかったことに気分を落としているとwebサービスを作りたいという情熱まで萎えていきます。

ここはお金を使っていいところだと思います。自分に合った良書に出合うのはなかなか難しいものですよね。2冊目もわからなかったら3冊目と進んでいけばいいのです。最もいけないのは停滞だと思います。そして3冊目を読み終わるころ・・・あぁ1冊目のこの部分はこういうことだったのかと、前理解できなかったところが理解できるようになるということも考えられるでしょう。

 

あとは根気・・・トライアンドエラーやる気と根性

今のジャンプ漫画でこんなこというのかどうか疑問ですが、あとは根気です。

ひたすらコードと睨めっこ。あーでもないこーでもないとコードを改変しては、ググり、本を読み・・・。でも不思議なことに何時間も粘っている答えが自ずと見えてきます。(8時間同じコード眺めるとか・・・)

私がここで重要だと思うのはエラーコードがでたら、とりあえずそのエラーコードを丸っとコピーしてググることです。

これである程度の原因は探れます。最初はエラーコードの意味もわからず、ただ困惑してしまいそうになりますがもう何も考えずエラーコードをググれば少しずつ見るべきポイントも見えてくると思います。

 

最後に

  • とにかく公開までこぎつけよう。公開するって大事なこと。

 

公開することは何度も言いますが非常に重要であるとおもいました。私が作成した「ちえのわ!」はというと・・・googleアナリティクスに新規ユーザーの数が1と表示されたとき本当に嬉しかったです。そしてもっとこの「ちえのわ!」を育てたいと思いましたし、こうしたいなとか、あれができたら便利だなと自分で使いながら改善点を見つけていけます。もちろん友人や家族に見てもらって指摘してもらうことも重要です。

公開するということは、自分の技術の向上というメリットもありますが、意見を出してもらえるというのが最大のメリットであると思います。その点、すでに自分でサービスを作られて、月間何万PVという集客を達成できている人達のことを本当に尊敬すると同時に、そうなってみたいな~というモチベーション維持にも繋がります。

もし自分でサービスを作成したいと思っている人がいたら諦めず、公開するところまでもっていってくださいね。

以上です。

読んでいただきありがとうございます。

 

追記

 

webサービス完成しました!

The following two tabs change content below.
sensiki

sensiki

名前:sensiki 職業:サラリーマン。いわゆる理系男子で大学からプログラミングを学び仕事でも活用中。好きな言語はPython。流行に疎いこともあり最近の話題を独自の視点でまとめていこうと思いブログ開始。スクレイピングや統計を用いたエントリを書きたいと思いまながらツールを作成中。

広告