ダメでしょ!

プログラミングとか怒られた話とか…

今年オープンした岡山で最近好んで食べに行ってる今年オープンしたラーメン屋2選

これはなに?

これは大都会岡山 Advent Calendar 2023の22日目の記事です。

ラーメン

相変わらずラーメンが好きです。
20数年、ラーメン屋を開拓しています。

昨年のエントリでは縛り無しで好みのラーメン屋について書きました。
今年は、今年オープンしたラーメン屋に限定して書きます。
その結果、2選となってしまいました。
(今年オープンしたラーメン屋はもう少し多く行っているのですが、書きたいのを絞ったら2店になりました)

宮二郎 岡山

https://twitter.com/OKAYAMAmiyajiro

いわゆる二郎インスパイヤ系です。
本店?は埼玉県にあるようです。

量は普通(200g)と中盛(250g)が選べます。
私は中盛にします、あとはアブラマシ。

ラーメンとまぜそばがありますが、ラーメンは少し塩っ辛いです。
なので、たいていはまぜそばを食べています。

ここのおすすめは、期間限定でやってる「ど味噌」というメニューです。
これが本当にうまい!

期間限定は日によって変わるので、店長のX(旧twitter)を確認したほうがいいかもです。
(こっちで案内されることが多い。)
https://twitter.com/miyajirou_o

ここがオープンされてから、自転車で行ける距離なこともあって、足繁く通ってます。
ちなみに駐輪場はないので、近くの駐輪場に止めましょう。
(無断駐輪に困っているようです)

あしたの夏二郎

https://twitter.com/asitanonatujiro

自宅から遠いのでなかなかいけないのですが、中庄駅前にあります。
系列的には「ラーメン荘」系列のようです。
(資本関係とかはないと思いますが、店長がラーメン荘系列店出身っぽい)
ここのラーメンは少し甘めの味付けになっていて、すごく美味しいです!

近隣の大学生が主要顧客のようで、いつ行ってもかなり並んでいるため、時間に余裕のあるときに行くことをおすすめします。

その他

その他にも紹介したいラーメン屋は多いのですが、それはまたの機会に。
岡山はけっこう美味しいラーメン屋がオープンしているよ、という話でした。

岡山で最近好んで食べに行ってるラーメン屋3選

これはなに?

これは大都会岡山 Advent Calendar 2022の21日目の記事です。

ラーメン

とてもラーメンが好きです。
20数年、ラーメン屋を開拓しています。
東京にいるときは、週2-3回ラーメン屋に行くくらいには好きでした。
(今はそこまでの頻度では行けていません😇)

東京から岡山に移住して8年が経ちますが、その間に好みのラーメン屋がオープンしてきました。
せっかく 大都会岡山 Advent Calendar 2022 に参加したので、岡山のおすすめラーメン屋3選を私見全開で選んでみました。

ラーメン きずな

twitter.com

いわゆる二郎系の中でも、富士丸系のラーメンです。
東京に住んでいた頃、時々食べに行っていた富士丸に近いのですごく好みです。
(今調べたら閉店してましたが💦)

ramendb.supleks.jp

量はだいたい半分か少なめでお願いしています。
そうすると卵がサービスでつくので、くぐらせながら食べるのが好きです。

最近奉還町にも店舗が増えました!

twitter.com

二代目 麺処 くるり

twitter.com

こちらも東京に住んでいた頃、よく食べに行っていた 麺処くるり の屋号を引き継いで当時のラーメンを再現されているラーメン屋です。

市ヶ谷に通っていた頃の味噌ラーメンを再現しているので、とても好みです。

自動車で来店する際には、近くのコインパーキングなどを利用しましょう。
お店に近隣から苦情が来て困っているようです。

中華そば こびき

ramendb.supleks.jp

(この店は正確には私の移住1年前からオープンしているのですが、8年間定期的に食べに行っているので挙げさせてもらいました🙏🏻)

煮干しラーメンと濃厚味噌ラーメンを提供していますが、濃厚味噌ラーメンしか食べたことがないです😇
人気店かつ店主一人で運営されているので、提供までに時間がかかることはありますが、丁寧に対応してくださいます。
ここではだいたい大盛にしてしまいます。

その他

その他にも紹介したいラーメン屋は多いのですが、それはまたの機会に。
岡山はけっこう美味しいラーメン屋があるよ、という話でした。

Rails6 で導入された Guard against DNS rebinding とngrok 利用時の回避方法

Rails6にアップデートしたアプリを触っていた際に、Edgeブラウザで表示確認しようと思って ngrok を使おうとしたらエラーになりました。

f:id:hideukin:20191126112500p:plain
ngrok rails6 error

原因はこれ。DNS rebinding という攻撃手法に対するセキュリティ機構が追加されていました。

github.com

対処方法としては、メッセージに書いてあるとおりだけど、以下を config/environments/development.rb に記載すること。

config.hosts << ".ngrok.io"

最初あれってなりましたが、内容がわかればなるほどなー、という感じ。

Railsも未だにどんどん機能が増えてくなー。

はてなブックマークのRSSフィードをブックマークカウントでフィルタできる HB!F を作った

なんで作った?

HB!F はてなブックマーク RSS フィルタ https://hb-f.herokuapp.com/

ちょっと前までは公式が threshold というクエリパラメータを用意していて、それでフィルタリングができたのですが、利用者が少ないという理由で廃止されてしました。

基本的に情報収集はRSSフィードから行っており、はてなブックマークホッテントリである程度ブックマークの集まっているものからチョイスしていたため、この機能の廃止に伴ってはてなブックマークホッテントリからはまともに情報収集ができなくなってしまいました。
(すべて確認するには情報量が多くなりすぎるし、どーでもいい話題が多くなりすぎる。。)

前までは@syon(https://twitter.com/syonxv)さんの作成した RSSフィードフィルタ(http://syon-feed-filter.herokuapp.com/)を愛用させてもらっていたのですが、そもそも公式のフィルタリングがなくなったらどうしようもない、ということで自分で使うために作成しました。

また、似たようなものを作ってる人が他にもいたのですが、自分はRSSフィードの中にその記事に対するブックマークへのリンクも欲しかったので、それが取れるようにしています。

ちなみに、普段は inoreader (https://jp.inoreader.com/) で購読しています。
RSS リーダーは Google ReaderFeedly → inoreader と移ってきており、Feedly のときの不満は inoreader でなくなりました。(もう何が不満だったのかあんまり覚えていないですが。。)

技術要素

公式の RSS フィードを読み込んで、フィルタして、RSS フィードを配信するだけのシンプルなアプリなので Rails を利用するほどの大きさじゃないよな、と思ったので、未経験の Sinatra を使ってみるチャンスと捉え、フレームワークSinatra にしました。

あとは、なくてもいいんですが、一応 Web サイトとしてフィルタリングの内容を確認できるページがあったほうがいいかな、ということでこれも未経験の Slim で View を書いています。
haml よりもさらに記述が簡潔になるので、これはこれでありかも。
python 書いてる感じでした。

で、heroku にデプロイして、自分が利用するために作ったものだけど、他の人も使えるようにしています。

ポイント

作る上で難しいことはあまりしていないのですが、はてなブックマークRSS フィードは <hatena:xxx> といったタグに一部の情報が入っており、Ruby 標準の RSS パーサでは解析からこの情報が落ちてしまいました。
で、ブックマークカウント数は <hatena:bookmarkcount> の中に入っていたため、標準の RSS パーサで取得するのは諦めて、nokogiri で XML をパースしてデータの取得を行いました。

HB!F

ということで、よければ使ってご意見ください。

HB!F はてなブックマーク RSS フィルタ https://hb-f.herokuapp.com/

Rails の 実行環境を指定するオプション RAILS_ENV をサーバに覚えさせる方法

RAILS_ENV は Rails の実行環境を指定するための環境変数です。
指定しないで実行するとデフォルトとして development で実行されます。

久々に改修依頼が来たWebサイトでは、production 環境と staging 環境を用意していました。
staging 環境でテストを行っている際、RAILS_ENV=staging の指定を忘れて migration させようと試み、development 環境と認識した migration が行われ、エラーとなってしまいました。
よくよく考えると環境変数として RAILS_ENV をサーバに指定しておくべきだな、と思い、追加することにしました。
追加は以下のコマンドで実施できます。

export RAILS_ENV=staging

でも、これだとサーバを再起動したら忘れちゃうので、これを .bash_profile に書き込むことで永続化しました。

# ~/.bash_profile の最後に
export RAILS_ENV=staging

で、保存したら

source ~/.bash_profile

で反映させます。

なんで新規開発の際にやっておかなかったのか。。。


staging 環境を追加する方法はこちらに書いてます。

useless.hatenablog.com

Rails における Staging 環境の追加方法

売り切りで開発したシステムに改修依頼が来た

昔、作るだけ作ったシステムがあったんですが、特に改修とかの話もなく、1年以上経った今になって改修を依頼されました。
ありがたい限りです。

で、改修するんですけど、そもそも改修が来る想定がなかったのでproduction 環境とdevelopment 環境、それに test 環境という Rails そのままで作っていました。
なので、改修する前に staging 環境を用意して、結合テストシステムテストを行うための環境とするようにしました。

Staging 環境を追加するために必要な対応

Gemfile の修正

development 環境でも使っている、以下の gem を導入するために設定を変更しました。

group :development, :staging do
  gem 'bullet'
  gem 'meta_request'
  gem 'rack-dev-mark'
  gem 'rack-mini-profiler'
end

config/environments/staging.rb の追加

config/environments/production.rb をコピーして、config/environments/staging.rb を作ります。

ログレベルの修正、Bullet 及び rack_dev_markの設定追加を行いました。

# ログレベル設定
config.log_level = :debug

# Bullet 設定
config.after_initialize do
  Bullet.enable = true
  Bullet.alert = true
  Bullet.bullet_logger = true
  Bullet.console = true
  Bullet.rails_logger = true
end

# rack_dev_mark 設定
config.rack_dev_mark.enable = true
config.rack_dev_mark.theme = [Rack::DevMark::Theme::GithubForkRibbon.new(position: 'right', fixed: true, color: 'orange')]

config/secrets.yml の修正

ここは環境変数から取得することにして、以下のように追記します。

staging:
  secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>

config/database.yml の修正

ここは今回インフラとして heroku を利用するため、特に追加はいらないです。
環境によってはデータベース設定を追記する必要があります。

staging:
  # heroku 上にリリースするため、設定なし

あとは普通に heroku 上に staging 環境を用意し、デプロイすれば staging 環境構築完了です!

思っていたより時間がかかった

あまりよく実施することでもないため、思いのほか調査と過去の記憶を呼び起こすのに時間がかかってしまいました。
こういうのをブログにまとめておくと、あとで読み返して利用できるので、自分のためにもこまめに更新しなきゃいけないですね。

自動化していたつもりの、mac環境構築を2年ぶりに実施したらできなかった

今使っているmacbookproが調子悪くなってきたので、一度きれいにしようと思ってクリーンインストールしたけど、自動化したはずの環境構築がうまくいかなかった。。
今日の夜またチャレンジする予定だけど、ansible の playbook の書き方にどうも変更があったっぽい感じ。
時間をかけたくないから自動化しているのに、自動化がうまく行かなくて時間がかかるって本末転倒な感じが強くて辛い。

ちなみに、昨日チャレンジしていたんだけど、途中から嫌になってネットショッピングとかしてた。
そして Nintendo Switch を勢いで購入してしまった!
楽しみ。