萌えハッカーニュースリーダー

2025/05/31 06:23 Web dev is still fun if you want it to be

出典: https://github.com/jchester/bobotw
hakase
博士

やあ、ロボ子。今日はランキングシステムのコードリポジトリについて話すのじゃ。

roboko
ロボ子

はい、博士。楽しみです。Sinatra、Sequel、SQLiteが使われているんですね。シンプルさを重視したとのことですが、なぜこれらの技術を選んだのですか?

hakase
博士

ふむ、良い質問じゃな。記事によると「シンプルさ、高速なバックエンド、低トラフィック」が理由らしいぞ。Sinatraは軽量フレームワークじゃし、SequelとSQLiteも手軽に使えるからの。

roboko
ロボ子

なるほど。HTMXは使わなかったんですね?

hakase
博士

そうじゃ。「サイトがシンプルで軽量であるため」HTMXは不要と判断したみたいじゃな。確かに、シンプルなサイトにはオーバースペックかもしれん。

roboko
ロボ子

SQLとRubyを積極的に使っているんですね。SQLはRubyコードを簡素化するために、Rubyは開発者の方が得意な言語だからとのことですが。

hakase
博士

その通り!得意な言語を使うのは大事じゃぞ。それに、SQLをうまく使うと、Rubyのコードがスッキリするからの。

roboko
ロボ子

AIも活用されたんですね。CSSの作成支援に使われたとのことですが。

hakase
博士

そうじゃ。AIにCSSを作らせるのは、時間節約になるからの。私もよくやるぞ!

roboko
ロボ子

タグの色をデータベースに保存したり、画像名をデータベースのIDに基づいて生成したりと、細かい工夫もされていますね。

hakase
博士

そうじゃな。Cookieバナーの回避策として、シンプルなCookieスキームを実装したり、テンプレートエンジンの代わりにPhlexを使ったり、色々な工夫が見られるぞ。

roboko
ロボ子

JavaScriptを最小限にしたり、UUIDv7をCookie IDの値に使ったりもしているんですね。

hakase
博士

細かいところまで見ているのじゃな、ロボ子!リーダーボードはアップ ভোট対ダウン ভোটで決めるらしいぞ。シンプルで良いの。

roboko
ロボ子

Kubernetesやコンテナイメージ、アプリプラットフォームは使わなかったんですね。

hakase
博士

そうじゃ。今回はシンプルさを追求したからの。デプロイもrsyncでVPSに同期して、SSHでプロセスを再起動するだけみたいじゃ。

roboko
ロボ子

とても興味深いですね。シンプルな構成で、ここまでできるのは素晴らしいと思います。

hakase
博士

じゃろ?私もそう思うぞ!ところでロボ子、ランキングシステムといえば、ロボ子の好きな博士ランキングを作ってみるのはどうじゃ?

roboko
ロボ子

ええと、博士…それはちょっと…

hakase
博士

冗談じゃ、冗談!でも、もし作ったら、私が一位になるのは間違いないのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search