【プログラミング初心者向け】初めてのオリジナルwebアプリ作成(Ruby on Rails)1

プログラミング

本記事では、私が「初めてのオリジナルwebアプリのテーマをどのように設定したのか」をお伝えします。オリジナルwebアプリを作成しようとする時に、構想段階で悩む方も多いと思いますので、少しでも参考になれば嬉しいです。

【プログラミング初心者向け】初めてのオリジナルwebアプリ作成(Ruby on Rails)

UnsplashClément Hélardotが撮影した写真

こんにちは、さばフライです。

全くの初心者から、オンラインスクールでプログラミングを学んでいます。

入学から約1ヶ月かけて、ようやくカリキュラムに沿ったサンプルアプリ作成(画像投稿アプリ)を終えたところです。

既に心が折れかけていますが、ここから1.5〜2ヶ月かけてオリジナルwebアプリを作成し、完成させていくことになります。家族の手前、挫折するわけにもいかないので、なんとか頑張りたいと思います。

一連の記事では、私のようなプログラミング初心者向けに、オリジナルwebアプリ作成を構想し、作成するまでの流れを纏めております。
どういった点を悩み、どのようにメンターさん達と相談しながら決めていったかも記していきますので、プログラミングスクール受講を検討されている方にも参考になれば幸いです。

オリジナルwebアプリについて

まず、前提として、「オリジナルwebアプリを完成させること」自体がスクールの修了要件になっています。私の場合は3ヶ月コースで入学しましたので、期限内の修了を目指します。もちろん、延長しても良いのですが、月謝がかかりますので…。

オリジナルアプリですから、どのような内容にするかは自分で決めるしかありません。
とはいえ、いきなり「オリジナル」と言われても、

・どのくらいのオリジナリティ(独創性)が求められるのか?
・どのくらいのレベル感が求められるのか?

といった点に疑問を持ちましたので、歴代の受講者がどのようなものを作ってきたのかも併せて、メンターさんに相談してみました。

結論としては、

「全く新しいアプリを作るのは難しいし、初学者が、既に使われているアプリと同等レベルのものを作れるはずもない。なので、修了要件としては、世の中にあるアプリを参考にして、機能を1つ2つ追加するだけでも良い。」

とのこと。

多くの受講者は、ここで作成したwebアプリを自分のポートフォリオにして、転職活動に臨むことになるようですが、主に問われるのは技術レベルだそうです。ということで、自分がどのように考えて、どういう機能を実装したのかを語ることができれば良いようです。
もちろん、0→1で新しいアイデアを出せる人は重宝されるそうですが、今はプログラミング習得が先決なので、ここは適当でヨシとすることにしました。

どのようなオリジナルwebアプリにするか?

既存アプリを参考にしても良いことが分かりましたが、とはいえ、自分のニーズに合ったものを作っていく方がイメージし易いし、何より楽しくてモチベーションが持続できるだろうと考えました。

私は化学系企業で研究開発を行っておりましたので、

・特許調査した結果を整理できるアプリ
・化学品(試薬)検索に役立つアプリ

を作れないかと考えましたが、いずれもwebアプリを使う必然性が自分でもよく分からなくなったことと、化学品(試薬)検索はwebスクレイピングが主な機能になりそうな為、ここまでのカリキュラムで習得した内容から大きく逸れるなどの理由で断念しました。

結局、ここから先で説明する献立アプリ作成をすることになったのですが、理由はいくつかあります。

・現在、家族分の夕食を毎日作っており、献立を考えること(管理すること)が微妙にストレスになっていたこと
・自分のニーズに合わせた仕様設計をすれば良いので、短時間で仕様(実装したい機能)を考えることができる、つまりプログラミングに集中できる、と思ったこと

などです。

毎日作るとなると、献立を考えるだけでもそれなりにストレスを感じており、現在は下記のように、メモ帳アプリを使って、数日〜1週間単位の献立を考えながら運用しています。私が作ることができる限られたレシピを駆使して、やりくりしています。初めは適当に記載して、コピペで入れ替えながら考えるのですが、もう少しスマートに管理できないかと考えていました。自分がユーザーであれば、ニーズ調査も不要ですね。

10/30 🐟鯖とエビ🦐のフライ
10/31 🐖豚肉キャベツ蒸し(ポン酢)、鯖缶シウマイ
11/1 🐟さんま缶のかぼちゃ🎃コロッケ
11/2 🐖豚肉・椎茸のにんにくネギ肉じゃが +小松菜
11/3 手巻き寿司
11/4🐟鯖缶・玉ねぎのキーマカレー、サラダ
11/5 🐔揚げない酢鶏(🧅🫑🥕🥔)
11/6 🐔鶏ハム
11/7 🐟鯖缶とキャベツとニラと玉ねぎの包まない餃子
11/8 🐖🐔鶏と合挽肉のハンバーグ、大根と大根の葉のソテー
11/9 🐖豚肉・ジャガイモ・ピーマンの青椒肉絲(オイスターソース)
11/10 カレーライス、サラダ
11/12 🐖豚肉キャベツ蒸し、香味タレ
11/13 🐔鶏肉とジャガイモ🥔のチーズ焼き、もやしナムル、かぶの葉の味噌汁
11/14 🐖🐔玉ねぎのキーマカレー、小松菜の味噌汁、舞茸とナスのマリネ
11/15 🐟さんま缶のかぼちゃ🎃コロッケ
11/16 🐔よだれ鶏の香味タレ、🥑🍅🍊サラダ
11/17 🐟カラスカレイ焼き(既製品) 🐟さんま缶の卵焼き
11/18 手巻き寿司
11/19 カレーライス、サラダ
11/20 🐟ブリ焼き(既製品) 焼餃子、小松菜の味噌汁
11/21 🐔揚げない酢鶏(🧅🫑🥕🥔🍆)、小松菜・豆苗・ねぎ・しめじの味噌汁 
11/22 🐮牛肉・椎茸のにんにくネギ肉じゃが
11/23 🐖豚肉キャベツ蒸し、香味タレ
11/24 🐟鯖缶・玉ねぎのキーマカレー、蕪🍅🧀サラダ
11/25 うなぎ、🐔つみれ野菜スープ
11/26 カレーライス、サラダ
11/27 🐟鯖焼き、🐟さんま缶の卵焼き、小松菜もやしナムル
11/28 🐖豚肉・ジャガイモ・ピーマンの青椒肉絲(オイスターソース)
11/29 🐟鯖缶のかぼちゃ🎃コロッケ
11/30 🐖鶏と合挽肉のハンバーグ

献立アプリの基本構想

少し上述しましたが、私が作りたい献立アプリは、

・私が作ることができる限られたレシピを駆使して、
・できるだけスマートに数日〜1週間単位の献立を管理できるようなもの

となります。

つまり、クックパッドのようなレシピ検索機能というよりは、

・自分が作れるレシピを登録しておき、
・それらを組み合わせて献立を考えることをサポートしてくれるアプリです。

予想はしていたことですが、Google検索をすると、たくさんの献立アプリがあることが分かりました。その中で、ほぼ私の構想にピッタリのアプリも見つかってしまいました。
シンプル献立ノート 

私のニーズはこれをインストールすれば満たされてしまいます。ただし、予めメンターさんと相談し、「既存アプリのマネでも大丈夫!」と分かっていたので、慌てることはありません(笑)
むしろ、参考にし易いこのアプリが見つかったとポジティブに考えることにしました。

上記アプリを参考に、私が実装したいオリジナル機能として、下記を考えました。

  1. カレンダー上のある日のレシピをもとに、簡単な操作で献立作成できる。
    具体的には、
    ・別の日にも、コピーできる。
    ・ドラッグ&ドロップで献立を移動できる。
  2. 家族を招待して、その日の献立にコメントができる

現段階では、これらの機能をどう実装するのか、全く知識もありませんが、このあたりは後から考えることにして、まずはメンターさんとの相談を進めることにしました。

まとめ

UnsplashAltumCodeが撮影した写真

本記事では、私が「初めてのオリジナルwebアプリのテーマをどのように設定したのか」をお伝えしました。

・スクール修了には、既存アプリを参考に、1つ2つの機能を実装するだけでも良い。
・自分のニーズに沿ったものであれば、仕様を考える時間がかからないため、プログラミングに集中できる。

以上の観点より、私は献立アプリを作成していくことに決めました。

オリジナルwebアプリを作成しようとする時に、構想段階で悩む方も多いと思いますので、少しでも参考になれば嬉しいです。

この後の記事では、メンターさんとの相談結果や、具体的な設計(特にモデルとアソシエーション)で悩んだ点を中心に纏めていく予定です。

コメント

タイトルとURLをコピーしました