プログラミング初心者のためのポートフォリオ作成ガイド③:注意点

ポートフォリオ作成ガイドシリーズも第三弾となり、いよいよ実際のコーディングに移っていきます。
プログラミング、特にフロントエンドの開発というのは山登りのようなもので最終的な目的地は頂上に辿り着くこと、プログラミングで言うと依頼書通りの見た目を作り上げること。
しかし、そこに至るまでのやり方は一つではありません。自分がやりやすい方法と誰が見ても分かりやすい方法は違うかもしれません。
しかし、実際のコーディングの現場で評価されやすいのは後者でしょう。そのため本記事ではポートフォリオ作成段階で注意すべきことを具体的に4つの項目に分けてお話ししていきたいと思います。

この記事を読んでできるようになる事
・就活や案件獲得に有利なポートフォリオとはどんなものか理解できる
・現段階のコーディングの癖を矯正できる
・どのような機能をポートフォリオに実装するのが効果的かわかるようになる

それでは早速本題に移っていきましょう。

注意点①:コードの品質と可読性

一つ目はコーディングを行う際の品質を意識する事です。
特にHTMLで言えばclassやidなどの命名規則に沿った命名ができているか、やCSSに無駄なコードが含まれていないか?などが該当します。
近年、サイト制作の見た目はWordpressやノーコードのツールで作成することも増えており0からHTMLを打ち込んで作成することは少なくなっているとはいえ、まだまだ現役の言語です。

例えば、test1、test2というクラス名がつけられた2種類の要素があったとします。
両方ともに同じCSSを当てたい場合下記のように記載していませんか?

.test1 {
  /*文字の色を赤色にするCSS*/
  color: red;
}

.test2 {
  /*文字の色を赤色にするCSS*/
  color: red;
}

上記の書き方でももちろんCSSはしっかりと反映されますが、実際の開発現場では下記のような書き方が好まれます。

.test1, .test2 {
  /*文字の色を赤色にするCSS*/
  color: red;
}

クイズなどの問題文と同じで情報量が多いとそれだけでわかりずらく読む気を無くしてしまうことも少なくありません。そういった些細な積み重ねが業務の非効率化を招きかねません。
その為、出来るだけコードの記述量は少なくし、ぱっと見で分かりやすい記述を心がけていきましょう。

レスポンシブデザインとアクセサビリティ

ポートフォリオでwebサイトを作成する際は必ずレスポンシブ対応(異なるデバイスや画面サイズに対応したデザイン)を行なって下さい。
現在、情報検索の主流はPCよりもスマホがメインです。その為、実際の案件でレスポンシブデザインも含めて依頼されることがほとんどです。
また、アクセサビリティについてですがデザインの段階からユーザーが利用しやすい設計にする事が重要です。

具体的な例としては
・見やすいフォントを使用
・テキストの色味やコントラストを配慮
・デジタル操作が苦手な人でも分かりやすい
などが挙げられます。

昨今のデザイン業界では見た目のみに重点を置くのではなく、ユーザーの使いやすさなども重視されておりいかにストレスなく情報を得る事ができるかという部分に注力する必要があります。

デザインの考慮とポートフォリオ全体の一貫性

リアルなユースケースの組み込み

ポートフォリオには、実際のユーザーが体験できるデモやサンプルがあると良いです。
例えば、サイトのインタラクティブな要素やフォームの入力チェック、APIとの連携などを組み込んで、自身の技術力を証明することができます。

まとめ

ポートフォリオ作成は初心者が最初に作る自分の作品ということでいまいちどのような構成にしたら良いかなど決めかねている人もいらっしゃるかと思います。
そういった方に向けて、作成時に上記の4つのポイントに注意することでアイデアを固める手助けになればと考えております。

最後に、ポートフォリオ作る前にサイト作成そのものを練習したいという方向けに、[CodeJump]というサイトにレベル別のサイト作成練習問題が掲載されていますので、そちらをご覧いただければと思います。

プログラミング初心者のためのポートフォリオ作成ガイド②:作成準備

前回の記事でどのようなポートフォリオを作成するかの方向性がある程度固まってきたかなと思います。なのでやる気に満ち溢れているイマさっそくポートフォリオ制作を始めたいと意気込んでいるかと思いますが、その前に開発者にとって必須のツールであるGit hubについて学びながら設定まで行っていきましょう。

この記事を読んでできるようになる事
・Git hubとは何か理解できるようになる
・Git hubのアカウント登録ができる
・Git hubの使い方がわかる

Git hubとは

そもそもGit hubってなに?って方へ向けてまずは大まかな概要の説明をしていきます。そんなことは分かってるよという方は読み飛ばして下さい。
まずGit hubとはソフトウェア開発プロジェクトのためのプラットフォームで、主にバージョン管理システムであるGitを利用しています。このように説明すると初心者の方の中には「結局なんなの?」という状態になってしまう方もいるかと思いますが、要は開発したまたは開発途中のコードを指定した相手と共有し合えるプラットフォームになります。

Git hubを使う主な理由は大きく分けて下記の2つになります
①複数の開発者で同時にソースコードの変更を管理、変更履歴の追跡
②ポートフォリオなどのソースコードを公開

ポートフォリオ作成段階からGit hubを使っての開発に慣れておくと実際の業務においてもスムーズに開発を行うことができるようになります。また、Git hubでは開発履歴も確認できるため作成したポートフォリオが本当に自分で作ったという証拠にもなりますので必ず使って下さい。

Git hubアカウント作成方法

Git hubのサービスを利用するための登録から始めていきます。

GitHubのウェブサイトにアクセス

まず初めにコチラ(https://github.com/)のリンクをクリックしてGithubの公式サイトにアクセスします。

アカウントの作成

リンク先の画面に移動したら画面右上の「Sign up」ボタンをクリックして、新しいアカウントを作成します。

上記のように必要な情報を入力し、continueボタンをクリックします。
Email preferencesに関しては公式からの最新情報などを受け取りたい方はチェックを入れて下さい。必要ない方はチェックなしでも問題ありません。

次にアカウントを有効化するために簡単なテストを行います。
下記の画像のように画面の指示に従ってオブジェを動かしてください。

これを送信すると登録したメールアドレスに認証コードが送られてきますのでそれを入力して下さい。

コード認証が終わったら最後にプランの選択を行います。
基本的には無料プランで十分ですので下記の画像のように左側のcontinue for freeのボタンをクリックして下さい。

プラン選択が完了すると作成したアカウントのホームのページに自動で移動します。

プロフィールの設定

任意でプロフィールの設定が可能ですので、ポートフォリオの一環としてGit hubの利用履歴などを提出しようと考えている人はプロフィールの設定を行いましょう。
手順としては
①右上のアイコンをクリック
②プルダウンメニューの中から上から2番目にあるYour profileをクリック
③画面左側に出てくるEdit profileをクリックし編集する
④編集完了後したの方にあるsaveボタンをクリックして完了

以上でアカウントの登録・設定の完了です。

ソースコードの管理方法

web版のGit hubを使って基本的なコードの管理方法を学習する前にまずは基本用語を解説していきます。

基本用語集

リポジトリ(Repositoly)

プロジェクトの基本的なデータ構造で、ファイルやフォルダの集まりです。通常は特定のプロジェクトやアプリケーションのコードやリソースが含まれます。

クローン(Clone)

リモート(GitHub上)のリポジトリをローカルマシン(自身のパソコンなどの開発環境)に複製することです。これにより、自分のコンピュータでリポジトリのコードを編集できます。

ブランチ(Branch)

リポジトリ内で独立した作業用の枝です。主に新機能の追加やバグ修正などを行う際に使用されます。マスターブランチ(大元のブランチ)は通常、安定した状態を保つためのものです。
マスターブランチを修正したのちにバグが発生するなどのトラブルがあると修正が大変になってしまう為、基本的に編集作業を行う際はブランチを分けて作業します。

コミット(Commit)

ファイルやプロジェクトの変更をGitに記録する操作です。コミットはその時点でのファイルの状態をスナップショットとして保存します。

プッシュ (Push)

ローカルリポジトリでの変更をリモートリポジトリに反映させる操作です。通常、他の開発者との共同作業時に使用します。

プルリクエスト(Pull Request)

自分のリポジトリの特定のブランチ(通常は新機能を追加したりバグを修正したりしたブランチ)から、他のリポジトリのブランチに対して変更を取り込んでもらう(プルしてもらう)ためのリクエストです。

プル(Pull)

リモートリポジトリから最新の変更を取得して、ローカルリポジトリに統合する操作です。実際には、プルは「fetch(リモートリポジトリから情報を取得する)」と「merge(ローカルの変更と統合する)」の組み合わせです。

マージ (Merge)

異なるブランチやフォークされたリポジトリの変更を統合する操作です。例えば、開発中の機能をテスト済みの安定したマスターブランチに統合する場合に使用します。

コンフリクト (Conflict)

異なる箇所で同時に変更が加えられた場合などに発生する競合状態です。マージ時やプル時に解消する必要があります。

以上です。全ての用語を網羅している訳ではありませんが、業務上必ずといっていいほど必要になるものをリストアップしました。
一見多いように見えますが、プログラミング業務はカンニングし放題なので暗記しなくてはいけないものではありませんのでご安心ください。

続いて、Git hubを用いてのコード管理方法を具体的に見ていきましょう。

コード管理方法

今回はGit hub DsktopというGitを簡単に使う為のツールを用いてコード管理を行なっていきます。まず初めにコチラからGit hub Dsktopをインストールし、下記のようなホーム画面が出てくるまで登録を進めて下さい。

個人開発とチーム開発では流れが違う部分もありますが、チーム開発用の手順を理解できれば個人開発の方も簡単ですので今回は一緒にチーム開発に向けてのGit hub Dsktopの使い方を学習していきましょう。

チーム開発において、まずはリポジトリが作成されます。
そのリポジトリのメインブランチは基本的には触らないようにして下さい。

操作手順としては
①Current Branchの部分がmainになっていることを確認する
②Current Branchの横の▼をクリック
③プルダウンメニューの中からNew Branchを選択
④わかりやすいBranch名をつけて新しいBranchを作成
⑤Current Branchの部分が作成した新しいブランチになっているのを確認したらGit hub Dsktop上からテキストエディタツールを開きコード編集を行う
⑥コードの変更完了後、Git hub Desktopに戻りコミットメッセージ(何をどう修正したか)を記載してコミットする
⑦コミットした後、GitHub Desktopの「Push origin」ボタンをクリックして、変更をリモートリポジトリに送信する
⑧GitHub Desktop上で「Open in GitHub」をクリックして、リモートリポジトリの対象ブランチを開く
⑨GitHubのウェブインターフェースで「Pull Request」ボタンをクリックして、プルリクエストを作成する
タイトルと説明を追加し、他の開発者に変更内容を共有します。
⑩レビューが完了し、プルリクエストが承認されたら、GitHubのウェブインターフェースでマージを行う
マージ後、GitHub Desktopでメインブランチに切り替え、変更をローカルにプル(Fetch origin / Pull origin)する

まとめ

今回の記事ではプログラミングの効率を飛躍的に向上させるツールGit hubとGit hub Desktopについて学んできました。
おそらくこの記事を見てくださっているほとんどの方はプログラミングを始めて間もない初学者の方がほとんどかと思いますのであまりイメージが湧きづらい部分もあったかと思います。
さらに言えば今回の記事は「ポートフォリオを作るだけ」が目的なのであれば特に必要のないものかもしれません。
ただ、ほとんどの方は何かの目的のためにポートフォリオを作成する方がほとんどかと思いますので是非身につけてほしい知識になります。

次の記事ではいよいよ実際のコーディングを行う際の注意点を学んでいきますので、その記事を参考にしながら簡単な作品を作ってみて下さい。

プログラミング初心者のためのポートフォリオ作成ガイド①:作成目的

プログラミングの勉強を始めてから実際に副業などで収益を得ようと考えている人が必ずと言っていいほどぶつかる壁がポートフォリオの作成の段階だと思います。

今回は主にフロントエンドのwebデザイナー用のポートフォリを作成するまでの流れとコツを整理する企画第一段として実際の作成の前段階であるポートフォリオを作成するにあたっての目的の明確化について書いていきます。

今からポートフォリオを作成しようとしている皆様はすでに目的にがはっきりとしている方がほとんどかと思いますが、作成の目的をしっかりと言語化することでどのようなポートフォリオを作成するのが効果的かを定める指標にもなるので、改めて作成目的を固めていきましょう。

ポートフォリオ作成の目的

いきなり結論ですが、ポートフォリオを作る目的は最終的に一つの大きな目的につながります。
その目的とは『自分の持っているスキルを証明する』ことです。
では、誰になぜスキルを証明する必要があるのか、ここを明確化することでポートフォリオの内容が決まりやすくなります。

人によって目的は違いますが、そのほとんどはこれから紹介する4種類のどれかに分類されます。
自分の目的がどれに分類されるのか確認していきましょう。

自己表現とブランディング

ポートフォリオは、自分のスキルや興味を示す場として機能し、他の人に自己を紹介する手段となります。
特にビジネスシーンでは自己を紹介する主な手段としては名刺交換が挙げられますが、エンジニアやクリエイターにとっては名刺に載せることができる情報量ではその人の持つスキルや経歴など一番大切な部分が見えづらく、その都度口頭で説明することも難しいのが現状です。

そこで名刺代わりとなるのがポートフォリオです。
これさえあればURLもしくはファイル一つ共有することで現状の自分の持てるスキルを効率的に証明することができます。

この目的でポートフォリオを作成する人がよく作成しているものは自己紹介サイトです。
サイトのボリュームは人によって異なりますが、基本的にはTOPの1ページのみで自分の経歴や顔写真などを載せることが多いです。しかし、一つだけ注意しなければならない点として個人情報をどこまで掲載するかを慎重に決める必要があります。
単なる自己紹介サイトなのでそこまで慎重にSEO対策などを施す必要はなくものすごい数の閲覧数になるということは考えにくいですが、それでもネット上にアップする以上はどんな人に見られるかは分からないので自己防衛の意識をしっかり持った上で掲載内容を考えていきましょう。

実践的な経験の構築

ポートフォリオを作成することで、実際のプロジェクトに取り組む経験を積むことができます。これは、理論的な知識を実践に移す重要なステップです。
実務経験がないプログラミング初心者にとって実際の案件や仕事場ではどのような流れでコーディングをし、サイトの公開まで行うのかなど未知の領域だと思います。
だからと言って実際に働いてから学んでいくというような受け身の姿勢では雇用主やクライアントに不安感を与えるのみで契約成立は遠のくばかりです。

そこでポートフォリオ作成の段階で0から公開までの全てのプロセスを繰り返し練習することで全体の流れを把握できるようになり、実際に案件を受注できた際にもよりスムーズに業務に取り掛かることが出来るようになります。

この目的でポートフォリオを作成する人がよく利用しているものはCodejumpなどのコピーコーディング練習用サイトを用いてデザインカンプからコーディングを行ったり、Git hubなどの管理ツールを用いて擬似的にチーム開発の練習を積んでいる方が多いです。

求職活動の支援

ポートフォリオは、就職や転職の際に役立ちます。作品やプロジェクトを通じて自分の能力をアピールでき、雇用主に自分の価値を示すことができます。
多くの人がポートフォリオを作成しようと思うきっかけとしてはこれが一番メジャーなのではないでしょうか。

案件獲得や就職の為には必ずと言っていいほど雇い主側からポートフォリオの提出を求められます。そこで、自らの自己紹介用のポートフォリオと共にその時の応募内容に沿ったポートフォリオを提出することでよりマッチ度を高めることができます。

この目的でポートフォリオを作成する人は応募した内容に沿った形で新しくポートフォリオを作成、もしくは既存のものを修正し選考が有利になるように応募する内容ごとにポートフォリオを変更するのがいいでしょう。もちろん手間もかかる為、必ずそうしなければいけないという事ではありませんが、選考の基準になる部分としてどれだけ手間をかけてくれているかという部分も大きな基準の一つになります。
その為、志望度の高い案件ほどしっかりと相手の求めるものに沿ったポートフォリオを随時作成する必要があります。

成長とフィードバックの機会

ポートフォリオを作成することで、自分のスキルや能力を改善するためのフィードバックを得る機会を得ることができます。他の人からのコメントや評価を通じて成長し、スキルを磨くことができます。
オリジナルのポートフォリオ作成の際には基本的に自らデザインや機能を決めそれに沿った形でコーディングをしていく為、完成品は自分にとって考えられる100%を注ぎ込んだものとなっているはずです。しかし、実際に経験豊富なエンジニアやwebデザイナーの方から見るとコードが読みづらい、ボタンの位置が分かりずらなど様々な問題点が出てくることもあります。

そこで自分のポートフォリオを公開してあわよくばフィードバックをしてもらう事で自分自身の更なる成長につながる事があります。
また、Qiitaなどを用いて自分がフィードバックを受けるのみではなく他の方がフィードバックを求めている際に問題点を探し改善方法を提案するといった事は復習にもなり、実際に働くにあたり他のスタッフに指示出しを行う際の練習にもなるので積極的にフィードバックを行っていくと良いでしょう。

まとめ

冒頭でもお伝えした通り、ポートフォリオ作成の一番の目的は『自分の持っているスキルを証明する』という事です。
しかし、自分の目標達成に向けて誰に、なぜ、どのようなポートフォリオを作成する必要があるのかということをしっかりと明確にできていないとモチベーションの低下や制作物の妥協などにも繋がってしまう恐れがあるので作成の第一段階として明確なペルソナを設定する事がとても大切な工程の1つです。