YouTubeでも発信中!

必要なくてもGitHubを始めるべき2つの理由【まずは5時間やってみる】

必要なくてもGitHubを始めるべき2つの理由【まずは5時間やってみる】

この記事は、
「GitHubをこれから触ってみよう!」
という方に向けて書いています。

僕は社内SEです。
いまの会社ではシステムを内製ではなくパッケージに頼っています。
パッケージに頼っているため、コーディングとはほぼ無縁です。

前職のSIerに勤めていたころはJavaの研修を半年ほど経験し、現場でも少しかじっていたくらいのレベル。

この記事では、僕がなぜGitHubをやってみようと思ったのかと、実際に使い始めるときにやったことをシェアします。
これからGitHubを触りたい人は、ぜひ参考にしてみてください。

なぜGitHubを始めたのか

僕はシステムエンジニアとして6年間働いてきましたが、いまだかつてプログラミング自体を仕事にしたことはありません。

たしかに「読む」「改修の検討」「レビュー」みたいな場面で何度もコードを読むことはありました。
しかし、 会社から任された業務として自らの手で1行1行プログラムを書いたことは一度もありません。

「じゃあGitHubやる必要なくない?」

と思うかもしれません。
のちほど詳しく説明しますが、GitHubはソースコードを公開するプラットフォームです。

そのため、プログラミングをやっていない人にとっては、GitHubを利用するメリットがないように思えます。
それでも、なぜ僕がGitHubを始めたのかというと、以下の2点の理由があったからです。

GitHubを始めた理由
① Pythonを学習し、その成果を公開したい
② せっかく学ぶなら、スキルとして証明したい

もし、みなさんも同じ状況であれば、ぜひGitHubを初めてみることをおすすめします。

Pythonを学習し、その成果を公開したい

GitHubを始めたひとつ目の理由は、
「Pythonを学習し、その成果を公開したい」
からです。

具体的には、タスク管理用のデスクトップアプリを作ろうとしています。
(成果は今後このブログで公開していきます)

開発言語はJavaとかPHPといった、触ったことがある言語でも良かったんですが、せっかくなら
「Pythonやったことないから、触ってみたい!」
という気持ちがありました。

うちの会社は金融ですが、Pythonを勉強するコミュニティがあります。
しかもメンバーの大半はSEではないです。
彼らはエンジニアではないのにも関わらず、「業務効率化」「分析」といった角度からPythonをとても真剣に学んでいます。
※意識が高くてまぶしい…

また、Pythonは習得のしやすさに定評があり、今後若い世代を中心にメジャーな言語となっていくでしょう。

Pythonの波が来ている
① もはやSEじゃない人たちすら、Pythonでプログラミングをする時代
② 若い人たちはプログラミングを教養として、勉強するようになる。そのなかでもPythonの人気は高い。

こういった現状に、正直なところ焦りがありました。
「Python、パイソン、ぱいそーん、ってみんな連呼しているけど、自分はこのまま見て見ぬふりをしていて良いのだろうか…」
と。

そういった深層心理が働くなか、あるとき別の問題にも直面しました。
それは、

「使いやすいタスク管理アプリケーションがない!! まじで

という問題です。

Torello, MicrosoftToDo, Todoistなど、さまざまなタスク管理アプリをいままで試してきましたが、いまだに
「これ最高!やりたかったのはこれさ!」
というものには出会えていません。

元々は「メモ帳」(=sakuraエディタ)で、タスクを管理していましたが、
・優先順位をすばやく入れ替える
・リマインド機能

がどうしても弱いです。

そのため、「タスクを管理するためのタスク」にしばしば時間をとられています。

別にレベルの高い機能はいりません。
自分のやりたいことをピンポイントに解消したいだけです。

タスク管理アプリをさんざん探した結果、
「ないなぁ・・・。なら自分で作るか!」
という結論に達しました。
最高のアプリを作れば10年くらいは使えるだろうから、開発に費やした時間はきっとペイすると思っています。

そんなわけで、「Pythonで」「タスク管理アプリを」作ることになったわけですが、
「せっかくならシェアしたい」
とも思いました。

それがGitHubを始めようと思ったきっかけです。

せっかく学ぶなら、スキルとして証明したい

GitHubを始めるふたつ目の理由は、
「せっかく学ぶなら、スキルとして証明したい 」
からです。

たとえば、とある求人情報には募集要項として、

  • Python, Java, Linux経験3年以上
  • システム運用経験3年以上
  • 業界経験3年以上
  • ハイレベルな問題解決能力

みたいに書いてあります。

こういった求人にアタックしたとします。
採用側が気にすることは、
「この人は、本当にプログラミングできるのかな~」
ということです。

この問題は、GitHubを見せるだけで解決します。
「僕はこれだけのことができます」
ということが、一目でわかります。

ソースコードは、”超ハイレベル”である必要はありません、僕の狙いはそこではなく
「最低限ここまではできるんですよ、安心してください」
というメッセージを伝えられればいい。
採用担当者を安心させてあげるツールとして、GitHubは強力なツールになると、僕は考えています。

GitHubってなんだ?

さて、前置きがとても長くなってしまいましたが、ここからGitHubの内容をお話しします。

まず、GitHubとはなんなのか?
僕がGitHubを勉強する前は、こんなイメージでした。

<BEFORE>
GitHub?知ってるよ、ソースコードを掲載できるんでしょ?
GitHubのアカウントを取って、あとはそこにソースコード掲載するだけっしょ。
アカウント登録だけしておいて、さっさとPythonの勉強はじめよっと♪

あなたも似たイメージを持ってませんか?
GitHubを勉強すると、こうなります。

<AFTER>
え、リポジトリ?ブランチ?
バージョン管理をガチでやる感じなんだ。ふむふむ。
というか、WebじゃなくてローカルでコーディングしたのをUP(プッシュ)する仕組みがあるのか!
そもそもGitというシステムが前提にあるのね。じゃあ、Gitをローカルに入れとくか。

お恥ずかしい限りですが、GitHubは想像以上に奥が深かったようです。
GitHubを簡単に説明すると、以下の通りです。

GitHubとは
ソースコードを公開するプラットフォーム
ソースコードを他人にレビューしてもらうことができる
バージョン管理を行うことができる

GitHubって、コーディングを管理することができて、ついでにSNSっぽく公開してみんなで見せ合いっこできるサービスです。
ガチでみんなで開発してもいいし、個人で開発したものを見せびらかしてドヤァしてもいいです。
そんな感じのWebサービスが、GitHub。

GitとGitHubの違い

「Git」って聞いたことありますか?
僕はGitHubを勉強するまで「Git」を聞いたことがなかったです。

Gitとは
バージョン管理システム
LinuxOSの父、リーナスさんが開発した

僕はこれまでバージョン管理システムは、「subversion」しか触ったことがありませんでした。
しかし、この世はとっくにGitに支配されているそうです。

Gitはコマンドライン上で操作するものであり、若干の慣れが必要です。
これに対し、GitHubは
「GitをWeb上でグラフィカルに操作できるようにしたもの」
です。

GitHubを始めよう最初の「5時間」でやったことまとめ

僕がGitHubを初めて触ってから、やったことを時系列にまとめると、以下の通りです。
ぜひトレースしてみてください。

アカウント作成

まずは、GitHubのサイトでアカウントを作成します。
https://github.co.jp/

GitHub Guides「Hello World」を体験

なにはともあれ、GitHubを体感しましょう。
個人でGitHubを利用する場合は、あまり重要ではないかもしれませんが、共同で開発する人たちがどのようにソースコードを開発していくのかがわかります。

以下のサイトで、HelloWorldの出力を試します。
GitHub Guides「Hello World」

英語つらいかもしれないですが、やってみてください!
GitHubを続ける以上、英語からは逃れられないかと。

Git For Windowsのインストール(version 2.24.0)

GitHubはGitのグラフィカル版です。
ローカル環境でGitを使用していて初めてその真価が発揮されます。
のでローカルにGitを入れましょう。

僕の場合はWindowsです。
以下のサイトを参考に、「Git For Windows」をインストールします。
私家版 Git For Windowsのインストール手順

Atomというエディタを入れてない人は、最初に入れとくべし。
途中の選択肢もAtomを選ぶのがオススメです。
あと、GitBashの選択肢は、MinTTYではなくWindows consoleにしました。

Git For Windowsの設定

GitHubとローカルのGitが連携をとれるように、「Git For Windows」を設定します。
僕の場合は、以下のサイトを参考にしました。
Git for Windowsの基本的な使い方

pushしてみる

それではローカルのファイルを、GitHubにUPしてみましょう。
参考にしたサイトはこれです。
今さら聞けない!GitHubの使い方【超初心者向け】

途中、pushをはじかれてしまったので、「git push reject」で検索して対処しました。
たどり着いたサイトはこれです。
【git】git pushがrejectされたときの対応方法

本記事は以上となります。
ぜひGitHubを始めてみて、みなさんの感想などを聞かせてください。