共同開発

無名クラス

ある機能に関してブランチを分けて実装している際、 別ブランチで作成しているクラスのインスタンスが今のブランチで実装しているメソッドを使えるか試したいことがありました。 別ブランチをpullして持ってこようかと思いましたが、コンソール上で無名クラ…

RubyMineとVSCode

自分はRubyMineを約半年ほど愛用していたのですが、 昨日VSCodeを使ってみたら「あれ?!VSCodeめっちゃいいのでは...!!」という気持ちになっております。 よく「VSCodeからRubyMineに乗り換えた」系の記事は見かけたことがあったのですが、自分の場合逆です…

案件回せるようになるための振り返り

今担当している案件をまだ自分がひとりで回せそうに無いので、 先日「どうやったら今の案件を1人で回せるようになるか」を会社の先輩が一緒に考えてくださいました! 具体的には、現状の把握・足りてないこと・アクションプランについて考えていきました! …

tigを入れた!!

先日、特定のプルリクをRevertしたり一部だけマージし直したりしなければならないことがあり、 gitの状態がどうなっているか理解が追いつかない...となることがありました。 そこでtigというツールがあることを教えてもらい、以下の記事も紹介してもらいまし…

バグを発生させてしまった反省

今日は自分の実装した機能が原因の不具合がたくさん発覚しました。 具体的な内容 具体的には以下のような内容です。 ・変更→ 検索で1件のみ絞り込んで表示していたのを条件一致するもの全件表示する バグ→ 半角のものがヒットしなくなってしまった ・変更→ …

@sinamon129さんの「システム障害との向き合い方」をもう一度読んだ

@sinamon129さんの「システム障害との向き合い方」をもう一度読んでみました。 このご発表を聞いた当時はシステム障害を経験したことがありませんでしたが、先日まさにシステム障害を経験することがあったからです。 そのスライドが以下です!! speakerdeck…

リモートのmasterに間違えてmergeしてしまった時

リモートのmasterに間違えてmergeしてしまい、めちゃくちゃ焦る事態がありました。 別に問題のある内容をmergeしてしまった訳ではないのですが、明後日mergeしましょうと話していた内容だったので焦りました。 その時の手順についてまとめておきます。 手順 …

ngコマンドが動く環境構築

某サイトを修正するにあたって、「ng serve」 など、ngコマンドを使う必要があったのですが、環境構築で少し苦戦しました。ngコマンドが何物なのかもよくわかっておりませんでした。 その概要と環境構築の手順を書き留めておきます。 ngコマンドとは Angular…

NKFで文字コードを変換する

csvのインポート・エクスポート処理でshift-gisをUTF-8に変換する必要がありました。 しかし、文字コードについてよくわかっておらず、色々教えてもらいました。 今回はその内容について書き留めておこうと思います!! NKFとは ものすごく古い漢字コード変…

読みやすい条件の書き方にする

ビューで 'Loading...' という文言を表示させる条件を、以下のように書いてしまっておりました。 - unless (@menus.include?(@menus_last) || @menus.length == 0) .page-load-status .infinite-scroll-request | Loading... 自分でもこのunless文を書くにあ…

コントローラを分けるタイミング

本日、あるアクションを実装した部分について、別のコントローラに分ける方が良いというアドバイスを頂きました。 具体的には別のモデルの処理であるにも関わらず、1つのコントローラの中で実装してしまっておりました。 その際に参考文献として以下のリン…

Heroku本番DBの内容をローカルに持ってくる

Herokuの本番DBの内容をローカルに持ってくる方法を教えていただきました!! これは便利!!と感動したくので書き留めておきます。 以下のように、 heroku pg:pull herokuのDB名 ローカルDB名 --app アプリ名 とすると取得できます。 $ heroku pg:pull hero…

テストDBだけリセットしたい(postgresql)

テストデータベースだけリセットしたい!と思うことがありました。 調べてみたところ、以下の手順でテストデータベースをリセットできるようでした! ①データベースをtestに切り替える $ bin/rails db:environment:set RAILS_ENV=test ②データベースを消す $…

ransackで数字の1をパラメータで渡すとエラーが出た

ransackを使った検索フォームを作っていたのですが、数字の1をパラメータとして送る際、エラーが出てしまう問題にぶつかりました。 その解決方法について書き留めておこうと思います。 エラー内容 ransackを使って作成した検索フォームで、数値を入力しても…

一度addしてしまったディレクトリをgitignoreする

昨日、vendor/bundle配下にインストールされたgemをgitの追跡対象に入れてしまったままプルリクを出してしまい、ファイルの変更履歴が膨大な量になって迷惑をかけてしまいました。 そこで、後から.gitignoreにvendor/bundleを含めようとしたのですが、手間取…

postgresqlでDBが作れなかったのを解決(してもらった)

コミュニティ開発しているプロジェクトで、githubログインを実装してくださったプルリクを確認しようと思い、ローカルにプルリクの内容を持ってきて確認しようとしました。 そしたらpostgresqlでデータベースが作成できないエラーにぶつかりました。。。 そ…

プルリクの内容をfetchして来る方法

プルリクエストが出ている内容をローカルに持ってきて試したかったので、その方法を調べました! ①プルリク内容をfetchする git fetch origin pull/プルリクID/head:ブランチ名 上記のコマンドを実行し、プルリクの内容をローカルに持ってきます。 gyazo.com…

bunle install するときの --path vendor/bundle オプション

複数人で開発する際bundle install する時には、--path vendor/bundle オプションを付けてあげる必要があるのですね。。。!! コミュニティ開発しているプロジェクトで、自分がgemを追加し、なにもオプション付けづにbunle installをしてしまいましたw なの…

fork元の最新を取り込む方法

本日、githubでforkしたリポジトリの、本家の最新の取り込み方がよく分からなくてもたつきました。。。 なのでやり方を調べました。 ①リモートリポジトリに本家のリポジトリの紐付けをします 以下のコマンドを実行して、本家のリポジトリとの紐付けをします…

Vimateのモックアップ

コミュニティ開発しているVimateというSNSのモックアップを自分が作ることになりました! 以下のリンクが作成途中のモックアップです。 hayashiyoshino.github.io プロトタイプ、モックアップ、ワイヤーフレームといった概念についてまで今ひとつ分かってい…

Forkして Pull Request 出す手順

本日もくもく会に参加してきたのですが、そのもくもく会では参加者全員、「自己紹介と今日取り組む内容・成果を書いてPull Requestを出す」ということを行いました。 しかし自分は手間取ってしまいました。。。 そこでPull Requestを出すまでの手順について…

コードレビューしてプルリクをマージした!!

まさかの自分が、コードレビューをして、プルリクエストをマージしましたよーーーー!!! と言っても本当にコードが書かれた部分のレビューをした訳ではありませんがw READMEにドキュメント書いていただいて、それを読んで、approveして、ラベルを変更して…

共同開発をしてみる!!

先日Tamarbで作ってみたいという話になった、vimrcを愛でるSNSを共同開発してみる事となりました!! マッチングアプリの予定だったのですが、vimユーザーの男女比が 148:2 らしく、成り立たないという事で変更になりました。 自分にとっては初の共同開発な…