自分にやさしく学ぶプログラミング

プログラミング学習記録、備忘録

Kaigi on Rails 2022に参加しました!(2日目レポート )

本日は、Kaigi on Rails 2022 の2日目でした! 引き続き面白くためになるトークが満載でした・・・! 以下レポートです。 1日目レポート Kaigi on Rails 2022に参加しました!(1日目レポート ) 2日目の各トークについてのレポート、感想など 入社数ヶ…

Kaigi on Rails 2022に参加しました!(1日目レポート )

本日は、Kaigi on Rails 2022 の1日目でした! 早速素敵なトークが満載でしたので、レポートを書いてみたいと思います Kaigi on Rails 2022 とは? Kaigi on Rails のコアコンセプトは 「初学者から上級者までが楽しめる Web 系の技術カンファレンス」 です…

Kaigi on Rails _2022_ newに参加しました!

本日開催のKaigi on Rails 2022 newに参加したので、感想や印象に残ったお話など書いていきたいと思います。 Kaigi on Rails 2022 newとは? 今月21-22日に開催予定のKaigi on Rails 2022のプレイベントです。 本編に向けたタイムテーブル解説やイベントの歩…

XP祭り2022 楽しかったです!

本日開催のオンラインイベント「 XP祭り2022」に参加しました! 毎年開催されてるイベントで、私は初参加でしたがとても楽しかったので、印象に残った講演などを書いてみたいと思います。 XP祭り2022 とは? 日本 XP ユーザグループ(XPJUG)が主催しているイ…

メモ:Rails で whenever を使うときのschedule.rbの記述

概要 Railsアプリで定期的にrakeタスクを実行するみたいなことをしたくて、wheneverを入れてcronを設定したんですが、wheneverのREADMEの最初の例とか、wheneverize直後のサンプルそのままだと意図通りに実行されませんでした。 schedule.rbに適宜設定を追加…

メモ:React 18.0.0 でChakraUIのModalを閉じると他の要素がクリックできなくなった

ChakraUIの勉強してまして、Modalコンポーネントを試していたときにちょっと詰まったところがあったのでメモです。 現象 ChakraUIの公式ドキュメントにあるModalのサンプルを自分のアプリ上に置いてみたんですが、 ボタンクリックでモーダル開く → 閉じる → …

Rechartsの棒グラフにnullが含まれるデータを渡すと表示がおかしくなる場合の対処法

概要 Rechartsで棒グラフ作成時、値がnullであるデータがエリア外に描画される場合がある nullが入りうるような場合は、YAxisのdomainを0が範囲内に入るように設定すると良さそう 参考にしたページ、引用元など 下記に記載しているコードは公式ドキュメント…

capistranoでデプロイしたらpumaを再起動するために必要だったこと

capistranoでデプロイが完了したらそのままpumaを再起動して欲しいんですが、gemや設定の追加が必要だったので、備忘録として書き残しておきます。 ご注意!! ここに書いてあることは全てcapistrano-pumaのREADMEに書いてあります! ただ、capistrano関連の…

capistranoでデプロイしようとしたら"The engine "node" is incompatible with this module."と怒られて止まった

タイトルの通りですが、cap production deployしたらnodeがincompatibleだと怒られてデプロイできないという現象が発生しました。 実行環境 Rails 6.0.3.3 capistrano 3.15.0 rake 13.0.1 参考リンク Cannot deploy an application using Rails 5.1 Webpacke…

プログラマー一年目の最大の学びは「手順書を書くこと」

これは「フィヨルドブートキャンプ Part 2 Advent Calendar 2020」の20日目の記事です。 昨日は@beta_chelseaさんの「すばやく確認OKをもらうためのセルフレビュー」でした。 セルフレビュー&レビュー時に気をつけるべきポイントが具体的にまとめられていて…

プログラミングや勉強における疲労への対処、勉強継続のポイント

背景 僕が卒業したフィヨルドブートキャンプには、関係者が自由に質問・回答できるQ&Aがあって、日々色々な疑問が上がっては解決されていくのですが、 先日「気の抜き方、休み方が分からず、(勉強を)一回休むと癖になってしまいそうで怖い」という相談が上…

RubySilverに合格したので学習メモを公開

昨日Ruby Silver受験してめでたく合格しました! 2回目の挑戦でRubySilver受かりました!— chihaso (@_chihaso_) 2020年9月30日 実は受験は2回目で、1回目落ちたのが悔しかったので頑張って勉強しました。 その際作った学習メモが結構効いたなぁと思ったの…

iCloud管理下のフォルダでgitリポジトリをクローン ⇄ rm -rf 繰り返したら、覚えのないファイルが生成されつづけて困った話

私は普段MacBookAirで開発を行っており、データはほぼ全てiCloudと同期を取っている。 そのおかげでクリーンインストールからの復元も簡単なわけだけど、開発中のリポジトリもiCloud管理下に置いた結果、えらく困ったことが起きた。 話せば長いのでざっくり…

MacのクリーンインストールはiCloud使ってれば怖くない(けど時間かかる)

最近色々よくないことが起こるので、半ば御祓の意味も込めてMacをクリーンインストールすることにした。 やってみた感想としてはタイトルの通りで、iCloudにデータを全部置いていれば何もこわくないなという印象。 12H程度の時間が取れれば、とりあえず使う…

VScode で Gem::LoadError がいっぱい出て困った

わけあってしばらく放置していたrubyのコードを開いて、VScodeで編集しようとしたら、拡張機能のruby-rubocopからこんなかんじで怒られた。 Gem::LoadError: You have already activated forwardable 1.3.1, but your Gemfile requires forwardable 1.2.0. P…

「駆け出しエンジニアのための、初めてのLT会」に参加してきた

同じフィヨルドブートキャンプ生の@NMP3000さん主催の勉強会に参加してきた。 connpass.com その名の通り、駆け出しのエンジニアが集まって気軽にLTしようというもの。 なんと私にも発表の時間をいただくことができ、こんな感じの発表をしてきた。 speakerde…

Ruby on Rails : railsのフォルダ、ファイルの意味について自分なりにまとめる

概要 Railsのフォルダ構成の意味がよくわかっていないので、とりあえず今の時点での理解を文章化してみる。 正直あまり自信ないので、もしも間違いがあればコメント等いただけるとありがたい。 Railsの各フォルダ、ファイルの意味 自明なものなど一部省略 |-…

Ruby on Rails : deviseでユーザー認証追加してi18nしてユーザープロフィールページも追加するための手順の解説

概要 先日上げたエントリ(Ruby on Rails : deviseでユーザー認証追加してi18nしてユーザープロフィールページも追加するための手順(手順だけ))の解説。自明な部分は置いといて、自分がよくわからないと感じた部分だけまとめる。 参考資料 Rails4でdeviseの…

Ruby on Rails : deviseでユーザー認証追加してi18nしてユーザープロフィールページも追加するための手順(手順だけ)

概要 まっさらな空のディレクトリから、 Railsのアプリを立ち上げて deviseでユーザー認証機能を導入し ユーザー情報の項目を追加し ユーザープロフィール表示ページを追加する までの手順をまとめる(手順だけ)。 サンプルとして、rails scaffoldでシンプ…

Webアプリ:ネタ検討のため困っていることを列挙

現在参加中のFJORD BOOT CAMPは、最終課題で自作アプリを作ることになっている。 自作アプリをつくるに当たって、自分の個人的な困りごとを解決するものをつくるのがいいと聞いたので、今の時点で思いつく困りごとについて列挙してみたい。 (まだ自分は他の…

Ruby: eachとmapの返り値

概要 eachとmapの使い分けがようやく実感として掴めた気がした。 返り値が違う。 eachの返り値 eachは繰り返し処理を実行したオブジェクトを返す。 ary = ["./hello/11", "./hello/22", "./hello/33"] test = [] ary.each { |a| test << a.delete_prefix("./…

Ruby on Rails : kaminariでpaginate

概要 gem kaminariを使うとすっごい簡単にindex pageをpaginateできる! やること Gemfileにgem 'kaminari'を追記してbundle install コントローラのindexアクションを下記のように編集する。 def index @books = Book.page(params[:page]).per(10) end inde…

Ruby on Rails : localhostで動かしているアプリをとりあえず日本語対応させる

概要 表題の通り、とりあえずアプリを英語と日本語対応させるためにI18nについて勉強した。 結構詰まったので、最終的に上手くいった方法をまとめる。 参考にした資料 Railsのscaffoldで生成されたコードを1行1行説明する Railsで環境毎にサブドメインとパス…

全要素が別個のオブジェクトを参照する2次元配列を作りたいとき

Rubyにおける配列生成は参照するオブジェクトに注意 Rubyで2次元配列を作る時、初期化方法によっては複数要素が同じオブジェクトを参照するので注意が必要。知識として知ってはいたけど、実際コーディングしたら思いっきり詰まったので、忘れないうちに整理…

Rakeはどう便利なのか勉強中

Rakeを使う利点てなんだ?という疑問 現在Rakeの使い方を勉強中なんですが、いまいち便利さが実感できません。 いや、大規模なプロジェクトなら依存関係とか簡単に整理できるの便利なんだろうなーとは思うんですが、やっぱり手元で便利さを実感したい。 と言…

nginxにSSLで保護されたサイトを追加する方法(certbotを使って簡単に)

nginxにVirtualHostを追加する勉強をしています。 単純に追加するならnginxの設定ファイルに書くだけですが、SSLで保護するためには証明書の取得も必要になります。 復習を兼ねて、手順をまとめておきます。 大まかな流れ 任意のドメインを取得 サーバーのIP…

sshの設定ファイルはクライアント用とサーバー用があるので気をつけようという話

レンタルサーバーを契約して、リモートホストにログインする方法を学びました。 その際、勘違いからsshの設定にめちゃくちゃ手こずったという話です。 前提条件 クライアント:MacBook Air / macOS Mojave 10.14.5 サーバー:さくらVPS / Debian 9.9 双方ssh…

bashにおける '-' (ハイフン)の意味

現在シェルスクリプトの勉強をしており、サンプルコードを読んでいたら不思議な記述に出会ったので記載しておきます。 サンプルコード 今回読んでいたサンプルコードはこちら。 (日経XTEC: 再入門 体で覚えるLinuxの基本 より) 指定したディレクトリの中の…

Markdownを覚えたよ

引き続きFJORD BOOT CAMPで勉強してるわけですが、Markdownを覚えて以降日報にうまいことまとめて書くのが楽しくてブログ全然触らなくなりました。なんなんこれ。簡単にこんな綺麗に書ける上に自分でインデントのスタイル考える必要もないし超楽じゃん。こん…

HTMLの何たるか

引き続きフィヨルドでの勉強。 HTMLの意義って深く考えたことなかったけど、これを読んでだいぶ認識が変わりました。 www.kanzaki.com HTMLはあくまで「コンピュータが文書の構成を理解できるように印をつける」もの。だから、フォントサイズを小さくしたい…