プログラミング未経験から、Python・Djangoを学習し始めて、何でもいいから動くアプリを作成したいとか、就職活動用にポートフォリオを作成したいとか、そんな時に「一体何を作ったらいいのかわからない!!」なんてことはありませんでしょうか?
私ヒロヤンは、プログラミング未経験からPythonの学習を初めて半年が経ったくらいに「フードシェアアプリ」のポートフォリオを作成しました。
詳細は以下記事になります。
当時は侍エンジニア塾というプログラミングスクールに通い、受講生限定で過去の在校生のポートフォリオを閲覧できました。
先人のポートフォリオを参考にして、web公開まで漕ぎつけ、そのポートフォリオを持ってwebエンジニアへ就職活動を行いました。
今回の記事では、あなたのアプリやポートフォリオ作成のヒントやきっかけになるような情報やネタ案を紹介し、少しでも制作活動のヒントになればと考え、例を交えて紹介したいと思います。
コンテンツ
おすすめアプリ・ポートフォリオの実例
web上にはおそらくおおよそ無限と言ってもいいようなアプリが存在していると思います。
その中でも比較的初心者が容易に、プログラミングの基礎を押さえたイメージしやすく作成しやすいアプリ(ポートフォリオ)をいくつか挙げていきます。
TODOリスト
難易度:⭐️☆☆☆☆
TODOリストは、「どんなプログラミング言語でも学び始めたばかりなら試しに作成してみる」、と言っても過言ではないでしょう。
なぜTODOリストがここまでクローズアップされるのかというと
- 見た目(html&css)
- サーバー側の処理(プログラミング言語)
- データの処理(SQL)
という普段私たちが実際に使用する様々なアプリケーションのまさに最低限の基礎部分を最低限に組み込むことで作成できるからです。
これさえ理解して作成できればほぼ全て応用が効くということです。
そしてTODOリストはSQLにおいて基礎的なCRUD(クラッド)4項目が全て含まれています。
- Create(作成)
- Read(読み込み)
- Update(更新)
- Delete(削除)
「TODOリスト プログラミング 作り方」等で検索すればいくらでもネタが出てきますので調べてみてはいかがでしょうか?
5ch(2ch)風掲示板
難易度:⭐️⭐️☆☆☆
5ch(2ch)のような掲示板は誰しもが一度は目にしたことがあるのではないでしょうか。
TODOリストの応用なようなもので、単純かつほとんどの人がイメージしやすいので比較的ゴールまでの到達も早いかと思います。
難しいのは量が膨大に増えた時の処理。
例えばページングとかスレッドなどの繰り返す処理コードを綺麗に書けるイメージがあれば取り組む価値はあるでしょう。
ちなみに掲示板アプリは以下の「Python Django超入門」でもコードが紹介されています。
私ヒロヤンが初めて購入した本でもあり、丁寧な解説と見やすい色使いのコードで非常にお勧めの一冊です。
web履歴書
難易度:⭐️⭐️☆☆☆
社会人で今まで履歴書を書いたことがない人なんていないのではないでしょうか?
当たり前のように感じるあのコンビニで売られている履歴書ですが、いちいち手で書くのは面倒くさくないですか?
だったら自分でオリジナルの履歴書を作成すれば良いのです。
そう、web履歴書です。
実際にgoogleで、「オリジナル 履歴書」などと検索すればそれっぽいサイトがたくさん出てきますがどれも完成度は高く非常に参考になります。
プロフィールの画像を扱う処理が今までとは少し違い難易度が上がるところですが、調べてやればできますので挑戦してみてはいかがでしょうか?
Instagram風写真シェアアプリ
難易度:⭐️⭐️⭐️☆☆
実は私ヒロヤンが初めて作成したのはこのInstagram風のポートフォリオでした。
Instagramも元はpython・djangoで作成されたアプリです。
画像を投稿して、大量の画像を扱う処理が増えますので、難易度はこれまでよりも高くなりますが、やりがいがあるアプリです。
ツイッター風アプリ
難易度:⭐️⭐️⭐️☆☆
仕組みとしては2chに似ていますが、個々のユーザーを容易してログイン・ログアウトなど個人のセキュリティ周りが大変なのかもしれません。
Ajaxという機能を実装し「イイね!!」のような動的な処理も組み込むことができれば、よりTwitterとして映えること間違いないでしょう。
マッチングアプリ
難易度:⭐️⭐️⭐️⭐️☆
マッチングアプリもここ数年で様々な種類が増えました。
婚活マッチングアプリ、OBマッチングアプリ、業界マッチングアプリ、…様々な用途から進化を遂げ多くのマッチングアプリが存在しています。
Twitter風アプリの場合は開かれていましたが、マッチングアプリでは開かれている且つマッチングした同士が結びついた時の処理を組むことが必要になってきます。
ECサイト
難易度:⭐️⭐️⭐️⭐️⭐️
フロント部分のレイアウトを真似するだけならいくらでもできます。
しかしながら、課金や決済処理が絡んできた時の処理は非常にセンシティブでセキュリティ等の高度な知識が求められてきます。
フリマアプリや、オークションサイト、ECサイトを作れるような技術スキルがあれば、ほぼプロ級と言ってもいいでしょう。
見つからない時は
今までアプリの実例をもとに紹介をしてきましたが、それでも「見つからない」、「いいアイディアが浮かばない」って人は以下で方法を紹介していきます。
本屋で探す
本屋に行くと、初心者向けのプログラミングの参考書が多数おいてあります。
2年前くらいいまではRubyが本屋の棚で隆盛を迎えていましたが、web系言語になると今はPython・Django、PHP、Goが多いです。
そして初心者向けのプログラミングの参考書の巻末には、必ずと言っていいほどそのコードをコピペすれば作成できるアプリが掲載されていることが多く、コピペでもいいので先ずは手を動かしてみることをお勧めします。
また丁寧な参考書になるとdockerやAWSへのデプロイまで紹介されています。
図書館で探す
大きい図書館にはプログラミングの本も一定数存在しています。
基本的に図書館に置いてあるプログラミングの技術書は情報が古い本が多いので、しっかり見定めて借りて頂ければ幸いです。
Twitterを有効活用する
Twitterで #駆け出しエンジニア #未経験エンジニア などのハッシュタグを検索するとそれっぽいユーザーが多数検索できます。
彼らの中には、プロフィールページに自らが作成したオリジナルポートフォリオのURLリンクがありますので覗いてみるのもてです。
Quiitaで探す
エンジニア御用達のQuiitaですが、ポートフォリオで検索すると(2021/9/12現在)、約3,500件の検索結果が表示されました。
中には、いわゆる駆け出しエンジニアが自信を持って公開している記事と実際のポートフォリオサイトも多数公開されていますので非常に参考になります。
スクールに公開されている場合がある
一部のプログラミングスクールでは卒業生のポートフォリオを公開している記事やサイトがあります。
もしくは、自分がもしプログラミングスクールの受講生ならメンター等に過去の在校生が作成したポートフォリオ等を紹介してもらえれば何らかの情報を得られるかもしれません。
その他
その他としては、自分の趣味に結びつけたものや、自らの身近な問題点を解決するため、を基軸に考えてみるのも手です。
今まで紹介した例と大きく違うのは、自分で考えたサービスやアイデアを形にするのは相当な気概とパワーが必要ですが、惰性で例に習って作るよりもゴールまで走り切る熱量が違います。
あれやこれや考えすぎてガス欠してしまうかもしれませんが、皆さんがプログラミングを始めたきっかけは、そんな感じじゃなかったですか?
最後に
いかがでしたでしょうか。
以上が、「Python・Django初心者におすすめするポートフォリオを例を交えて紹介します」の紹介記事になります。
ぜひ今回の記事を参考に、あなたオリジナルのアプリやポートフォリオを作成してみてはいかがでしょうか?
プログラミング学習を効率良く進めるには…
私ヒロヤンがプログラミングを始めた頃は以下のような感じでした。
そしてネットで調べていくうちに膨大な時間が過ぎていきました。
私ヒロヤンの実体験より、プログラミングを効率的に学ぶために大切なことは以下のことだと考えています。
1. いつまでもダラダラとやらないで、目標を決定して短期集中する
2. マンツーマンで、わからない箇所は直ぐに質問をして即レスをもらう
.proでは私ヒロヤンが学習してきたプログラミング経験0からのpython/django、その他webサイト・サービス開発のコースが用意されています。
カウンセリング自体は無料なので話を聞いてみるだけでもいかがでしょうか?
また以下のリンク先ではdjangoを教えてくれるスクールをまとめ紹介しています。