きり丸の技術日記

技術検証したり、資格等をここに残していきます。

新しい言語を学びたければgitpodいいぞ

友達にgitpodを教えられてから、開発体験がだいぶ快適になったので紹介記事書きます。

ターゲット

  • 初心者
  • 新しい言語を触ってみたい人
  • PCの性能に不満が出てきて、ローカルでの開発が快適にできなくなった人
    • いいPC持ってるなら、当然ローカルでやったほうが良さそう

参考記事

公式ページ
www.gitpod.io

Qiita qiita.com

日本語情報を纏めていただいているので、最低限ここを見てもらえれば理解できます。


私の記事は、特に新規性はないです。
強いて言えば、gitpodを使ったときの感想と、gitpodを少しでも拡散に寄与しようとしているくらいです。

メリット

面倒な登録もなくすぐ使える

GitHub、GitLabが使えるとすぐに使えます。

gitpodを使いたいリポジトリに対して gitpod.io/# を頭につけるだけ。

先週は以下のリポジトリで、Python, pytest, GitHub Actions でFizzBuzzで遊んでました。

https://gitpod.io/#https://github.com/hirotoKirimaru/python-practice

私は入れてませんが、https://gitpod.io/# をつけてくれるChrome拡張もあるので、使ったら便利なはずです。

月に50時間無料

単純計算で、1日に1.5時間触ってもタダなのは大きいです。

自分の場合せいぜい土日に2-3時間、筆が乗って8時間くらいなので、ずーっと無料で使えます。

最初から多数の言語の開発環境が整っている

プログラミングって、基本的にタダでできるものです。
ですが、環境構築の手間がかかります。

それが最初から構築されていて、試すことができるのはすごい嬉しい。

仕事で使う言語ならともかく、遊びで扱いたい言語に対して環境構築に2-3時間もかけてられませんしね。
これだけの言語が簡単に始められるのはありがたいです。

f:id:nainaistar:20200714235528p:plain
対応言語がより取りみどり

先週Pythonで遊んだので、近いうちにgoとかRubyとか最近話題のRustとかつまみ食いしようかと思います。
副業用のスキルセットとして、Kotlinも覚えたいなぁ。

ペアプロができるところ

gitpodページの右上にて、アイコンをクリックし、「Share Running Workspace」をクリックするとURLが出力されます。

そのURLをクリックして、ペアプロしたい人に対して共有すると、VSCodeのLiveShareみたいに画面の共有ができます。
皆で書き込みができるので、非常に便利でした。

※ repositoryに対してペアプロする人のWrite権限を付与する必要もあると思いますが、 先に権限付与してしまったため要不要が分かりません。

f:id:nainaistar:20200714235603p:plain
ペアプロするときのボタン

LPICの練習ができる?

正直、LPICのコマンドを自分が覚えてないだけかもしれないですが、単純なファイル操作程度ならこの環境上でいろいろ試せるかも。

色々いじれるサンドボックスが欲しかったです。

まぁ、やらないけど。

よくわからないところ

開発のスペックはどこまで快適にできるのか

AWSのcloud9が好きじゃなかった理由として、相当容量を大きくしないと容量不足でnpm run serveがすぐできなくなって、ろくな開発体験得られなかった経験がありました。

gitpodでフレームワークを使った体験はしたことないので、Ruby on Railsとか触ってみたらまた記事を書こうと思います。

dockerを使う

事前に必要なdockerImageを固めておけば、必要なdockerをgitpod上で起動できそうですね。

最低限、DBだけでも起動していて欲しいので、どこかのタイミングで練習します。 用意されたdocker-compose.ymlで操作しかやったことないから、dockerはまだまだ苦手意識があります…。

■ 参考ページ

medium.com

困ったこと

ソースをPushできないときは

下記のGitHubのアクセスコントロールから、権限を追加する。

https://gitpod.io/access-control/

f:id:nainaistar:20200714235655p:plain
アクセスコントロール

終わりに

環境構築が嫌いな自分にとって、簡単に構築できるのは非常にありがたいです。

わざわざ休日を使って新しいことを勉強するのだから、余計なことに時間を掛けたくないです。
言語を本気で気に入ったときに、ローカルで環境構築すればいいですしね。

逆に、デフォルトで色んな環境が入ってるせいで、通常の環境のデフォルトが分からないのかが唯一のデメリットかも。

でも、ローカルで環境構築したり、GitHub Actionsで動かすときに分かります。
CI/CDの勉強にもなるし、一石二鳥。

ぜひ快適な開発ライフを送ってください。