ガチ初心者が環境構築で詰まる理由①

環境構築(Rails)をやってて詰まるのは良くあることらしいのですが

ガチ初心者の自分の場合、小難しい話以前に

rbenvbundlerをよく理解もせず使っていたのが

そもそもの原因でした。

 

 

rbenv

Rubyをインストールするのに使用

Rubyのバージョン管理が簡単になるほか

複数のバージョンでRubyを自在に切り替えることが出来る。

brew install rbenv       # インストール
rbenv init           # シェルにrbenvの初期設定
# eval "$(rbenv init -)"を ~/.zshrcに追記(zshの場合)

rbenv -v           # バージョン確認

Ruby

rbenv versions      # インストール済みの一覧
ruby -v          # バージョン確認
rbenv install -l     # 利用可能なRubyリスト
rbenv install 2.5.1    # インストール


rbenv global 2.5.1   # システム全体で使用するRubyのバージョンをrbenvに設定
rbenv local 2.5.1    # カレントディレクトリのみでRubyのバージョンを変更

 

bundler

複数のGemを管理できる Gemパッケージ管理ツール

gem install bundler  # Bundlerのインストール
bundle init      # Gemfileの作成
vim Gemfile          # 入れたいGemをGemfileに記述する
「gem 'rails'」を記入   


**bundle install --path vendor/bundle # --pathでインストール先のディレクトリを指定**
        # 公開されているRubyで書かれたプログラムにGemfileが添えられていた時は
        # bundle installを実行してからプログラムを実行する


bundle -v           # バージョン確認
bundle update         # バージョンアップ
rails new           
rails _5.2.6_ new sample   #バージョン指定 
rails new .          #カレントディレクトリにファイルを生成 

gem

gem update --system     # gemのアップデート
gem -v             # バージョン確認
gem list            # バージョンアップ

rails

gem install rails -v 5.2.1  
rails -v            # バージョン確認

インテンド侮るなかれ

[![Image from Gyazo](https://i.gyazo.com/2773777198dca74957820be776c5884e.jpg)](https://gyazo.com/2773777198dca74957820be776c5884e)

 

”現場で使えるRuby on Rails” を学習中

その中で、日本語翻訳ファイルをGitHubrails-i18nリポジトリからダウンロードして活用する項目があるのですが

日本語化が思うようにいかず...

 

散々調べて色々試しても上手くいかず

スクール(Runteq)の講師に助けてもらいました。

 

原因は日本語翻訳ファイル(ja.yml)のインテンドミス

散々調べたはずなのに、恥ずかしい💦

↓変更前

[![Image from Gyazo](https://i.gyazo.com/249ae1e0edae2ead81f43dec777ff515.png)](https://gyazo.com/249ae1e0edae2ead81f43dec777ff515)

↓変更後

[![Image from Gyazo](https://i.gyazo.com/48d2e42a608ec77dd54403c5f7c84d04.png)](https://gyazo.com/48d2e42a608ec77dd54403c5f7c84d04)

 

何時間も詰まって進まないぐらいなら

潔く誰かを頼った方がいいかもですね。

 

また、slimファイルで[Slim::Parser::SyntaxError]が生じた際もインテンドの調整で解決したので
インテンド一つであっても重要だと気付かされました...

全体像を理解する

RailsだったりGitだったり学習している中で

文字でいろいろと理解しようとしても

いまいちピンと来ないところが所々ありました。

 

そんな時は

 

文字見て理解しようと頑張るより

”〇〇 全体像”

で画像検索する方がよほど早く理解できるので

よくこうやって調べてます。↓

 

 

参考:【Git】の全体像とコマンドメモ – Miho's Portfolio | Blog

 

 

学習もわかってくると楽しくなってくるもので

いかに最初の山を越えるかが重要だなと。

 

またわからない状態になった時は画像検索に頼ろうと思います。

 

GitHub

Github】Windowsでのsshベース認証設定の方法(2021/8/13までに対策必要)

 

共同で作業やバージョン管理のために使うGit

 

パッと覚えられるものだろうと思っていたけど

けっこう複雑だった印象😅

 

途中ちょこっと詰まったとき、

『多分これじゃね?』

って感じでいじったら

どんどんドツボにハマりましたw💦

 

おかしいと思ったら、

手を動かすんじゃなくて

構造や原因をハッキリさせるまで

まず調べないとダメですねほんと。。。

 

 

理解度が不安だったので、

今日も調べ直しました。

 

↓参考

サル先生のGit入門〜バージョン管理を使いこなそう〜【プロジェクト管理ツールBacklog】

Git - Git リポジトリの取得

 

APIとはなんぞや?

APIの理解がいまいちだったのでググってみたら

しっくりくる解釈があったのでここで紹介。

 

APIというのは

異なるプログラム間で発生する異文化コミュニケーションの仲介人という位置付け

 

 

例えて言えば、鎖国時代の日本。

外国とのやりとりは禁止されているわけですから、普通に考えると追い返されるだけですが、出島へ行き、ある程度の外国語の知識のある担当の人と通じて正式な手続きを踏み、許可をもらい、こちら側の情報も向こうに提供することに同意すれば、

出島を通じた貿易が晴れて可能になり、日本側は南蛮渡来の珍品を手に入れることができ、日本国内でそれを活用できるようになるわけです。

 

 

 

参照↓

今さら聞けないIT用語:やたらと耳にするけど「API」って何? – ページ 4 – データのじかん

技術書を読むにあたって

https://i.gyazo.com/a1e72724d894695ee4a44c3ebd4cc458.pnghttps://i.gyazo.com/4d14c4092bdc0e45309787822485561c.png

 

とりあえず基本的な内容を確認するためにわかりやすいと評判の本を読んでいます。

 

自分は本を読むのが無茶苦茶遅いので

読むスピードが早い人をすごい尊敬しています。

 

どうにかして早く読むことはできないかと

いろいろな速読法を試したこともありますが、

なかなか効果を実感できず...

 

 

特に難しい技術書なんかだと

完璧主義気味な性格が災いして

しっかり理解するまで先に進めず

途中で嫌になってしまうこともしばしば

 

 

”本を読んで何を得たいか”

っていう根本を忘れてしまうと

ついつい全てを理解しようと躍起になってしまう。

 

 

目的を忘れないことを心がけるようにしてます。

 

あと、一回で理解しようとじっくり読むより、

2周した方が断然理解が早まる。

↑これ最近気づいたw💦

 

 

 

 

sinatra Gem使用によるエラー

学習中の書籍 ”Raby超入門” Chapter10にて
sinatra Gem を使ってウェブアプリを作る項目で RuntimeError

 

【環境】

 

【状況】
ターミナルにてsinatra Gemをインストール
↓ターミナル
gem install sinatra

VScodeで下のプログラムを書いて実行
↓ ファイル名:sinatra_hi_rb
require "sinatra"
get "/hi" do
"hi!"
end

↓ターミナル
ruby sinatra_hi.rb -p 4567

エラー文
↓ターミナル
〜:in `detect_rack_handler': Server handler (thin,puma,reel,HTTP,webrick) not found. (RuntimeError)

 

【原因】
Ruby3.0.0になりRuby2.7まで標準で添付されていたwebrickという
アプリケーションサーバーのライブラリが削除されてしまったため、サーバーが起動しなかったようです。

 

【改善法】
改めてwebrickをインストール
↓ターミナル
gem install webrick

 

【参考】
https://qiita.com/onoda_kenta/items/88cf7840904f8b144043