A collaborative AI workspace, built on your company context. Build and orchestrate agents right alongside your team's projects, meetings, and connected apps.
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24
技術部の鈴木 (@eagletmt) です。 先日、クックパッドで使われている Ruby のバージョンを 2.0.0 から 2.2 にアップグレードしました。 アップグレードは主に @sorah と私で進めました。 今回はアップグレードまでの過程やアップグレード当日の流れ、そして今のところ見られているアップグレードによる効果などについて紹介します。 アップグレードまでの準備 テストを通す Ruby 2.1 がリリースされたときから 2.1 にアップグレードできないか検証環境でテストを回していました。 しかし、当時はクックパッドの全テストを実行すると必ず途中で Ruby がクラッシュする現象に悩まされていました。 Ruby の GC のバグ、拡張ライブラリのバグを疑いながら色々やってみたものの結局解決できず、Ruby 2.2 がリリースされてからもこの状況は改善されませんでした。 しかしある
Padrino Frameworkのルーターを開発した話 正直この手の技術解説記事を書くのはあまり得意ではないので避けていたところがありますが、 自分以外の人にも深く理解してもらいツッコミを入れてもらえる環境にしておくことがリスクヘッジになるのではないかと考えたために書くことにしました。 ちなみに、このルーターはgithubのmasterブランチには既に取り込まれています。 また、ここでの新しいルーターとは、pendragonを指すことにします。 なぜ新しいルーターなのか そもそもの発端はこのイシューで、http_routerをドロップして新しいルーターを開発しようという動きは私が開発に参加するより以前からあったようです。 大まかな理由は以前書いた「Padrino Frameworkの最新事情と今後について」にある通りですが、補足としていくつか説明します。 http_routerの仕組み
こんにちは、クラスメソッドの稲毛です。 複数バージョンの Ruby を切り替えるだけでなく、ローカルディレクトリ毎に Ruby のバージョンを指定できる「 rbenv 」がとても便利だったので、インストール方法などを記しておきます。 ビルド環境の構築 Ruby をビルドする環境が構築されていない場合は、下記 ruby-build の Wiki を参考にビルド環境を構築する。 Suggested build environment rbenv + ruby-build のインストール rbenv で Ruby のインストールを行うので rbenv のプラグイン「 ruby-build 」を併せてインストールする。 Linux の場合 ここでは既に Git がインストールされているものとします。 $ git clone https://github.com/sstephenson/rbenv.
RubyKaigi 2014 レポート Aman Gupta, GitHubでのRubyの使われ方と高速化のテクニックを紹介 ~ RubyKaigi 2014 基調講演 3日目 2014年9月18日~20日の3日間、タワーホール船堀にてRubyKaigi 2014が開催されました。基調講演をそれぞれレポートしてきました。 3日目最後の基調講演は@a_matsudaの紹介を受けて登壇した、Aman Gupta(@tmm1)です。タイトルは「Ruby 2.1 in Production」。Aman Guptaは現在GitHub, Inc.(以下、GitHub)に勤め、そこで使用している高速化のテクニックとツールを紹介しました。Ruby本体のコミッタでもあるAmanによる講演は、圧巻でした。 当日のスライド(PDF版)は次のリンクから参照できます。 http://bit.ly/ruby21-
こんにちは、hachi8833です。 今回は棚卸しとして、弊社CTOのbabaさんによるRails勉強会スライドから引用して記事にします。 勉強会自体はRails 3.x時代のものなので既出が多くなっていますが、棚卸しも兼ねて今のうちに記事にいたしました。 非同期処理 言うまでもなく、リクエストからレスポンスまでの時間が長くなるほどユーザー・エクスペリエンスの質が低下します。これを改善するためにさまざまな工夫が必要になるわけですが、その中の一つとして、時間のかかる処理をバックグラウンドで実施しておくというのがあります。 cron 最も素朴な方法はやはりunix標準のcronを使って定時に出力データを準備することでしょう。この場合、起動用スクリプト(rakeなど)やジョブ管理は自分で作成する必要があります。 delayed_job delayed_job gemを使用すると、ジョブをActi
Brandon Hilkertの7 reasons why I'm sticking with Minitest and Fixtures in Railsの雑な日本語訳です。 誤訳が雑すぎる訳やあれば、Twitterで@nilp_までお声かけいただくか、コメントやブコメで指摘してもらえると幸いです。 私がMinitestとRailsのFixturesにハマった7つの理由 私は先月グリーンフィールドのRails 4.1アプリの唯一の開発者として過ごす機会に恵まれました(訳注: なんの制約もないことをGreenfieldと言うそう)。 既存のコードをメンテするのにかなりの時間を費やしたことのある人にとって、 パターンを設け、ツールを選択する自由があることは非常に喜ばしい変化です。 私が行った選択の1つがMinitestとRailsのfixturesを使うことです。 端的にいうと、それは最高で
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? これからプログラミングを始めてみたい人に向けて、Webブラウザだけですぐに使えるRuby/Railsのクラウド開発環境 (Nitrous.io) を紹介します。 Rails環境構築の壁 プログラミングを始めるためには、開発環境を構築する必要があります。RubyとRailsの開発環境の構築方法はRails Girls インストール・レシピが参考になりますが、いくつかのソフトウェアをインストールする必要がありました。 Ruby本体 Rails データベース (SQLite) エディタ (Sublime Text, TeraPad) ターミナ
※お願い:最近時間がなかなか取れず、Rails5.xの時代になったというのに未だに5.xでの確認ができておりません。どなたか、5.xでも本記事の内容がうまくいった、と確認されました方はコメント欄にてご一報をいただけますと大変嬉しいです。 (本記事は今の所Rails 3.x〜4.2 対応です) (Homebrew編も公開しました) はじめに:Railsをローカルインストールするという発想 今さらですが、Mac環境でrbenvを使って、Ruby・Rails環境を構築するための記事をまとめてみました。 bundlerでgemをRailsプロジェクト内にローカルインストールすることで、ruby環境を汚さずにRailsプロジェクトを生成できることを目的とします。 Rails自体もローカルインストールすることで、その都度好きなバージョンのRailsプロジェクトを生成し、共存させることができます(←ここ
serverspec とか specinfra の Changes を手で書くのがだるくなってきたので、自動化するために octorelease という gem をつくりました。 rubygems.org にもあげてあるので、gem install で入ります。 Rakefile の中に require "bundler/gem_tasks" require "octorelease" みたいに書いて、 $ rake octorelease すると、 こんな感じになります。 何をしてるかというと、rake release した後に、前のバージョンとリリースするバージョンの間に含まれるプルリクエストをgit logで拾って、各プルリクエストに Released as vX.X.X. とコメントをつけ、GitHub 上にリリースを作成し、リリースの本文にはプルリクエストへリンクを張る、ってなこ
毎日他の人のコミットをながめる文化で生活していると、理由は浮かばないけど「ん?このコミットはなんか気になる」と感じるようになります。それは、新しいことを知ることができたコミットだったり、真似したくなるようなコードが入っているコミットだったり、なんかまずそうな気がするコミットだったり、様々です。 「ん?」と感じてコミットを見直してみても、何が気になったか自分でもすぐにわからない場合があります。そんなとき、気になったことをコミットした人に伝えるために、コミットへのコメントをまとめ始めます。「コミットした人に伝えるため」というように、他の人に伝えようとすることがポイントです。他の人に伝えるためにまとめようとすると、思いの外なにが気になったかまとまるものです。 今回は、メタプログラミングを使ってコードを整理したコミットで「ん?」と感じたときのことについて紹介します。このおかげで「メタプログラミング
こんにちは!エンジニアの川崎です。 嬉しいことに、Wantedly開発チームの仲間は2013年の1年間で2倍に増えました。2013の最初には自分、 awakia と reikubonaga の3人でしたが、 デザイナなのにXCodeも使いこなす ferasyahin、 Chef使いのプロダクティビティ・エンジニア spesnova、それからこのブログのデザインもやってくれたエンジニア imaimiami の加入で合計6人になりました。最近ではさらに kento や shin-en がインターンとして活躍してくれています。 Wantedlyに入社してくるエンジニアは、なぜかRubyもRailsもやったことのない人ばかりなので(自分もそうでした)、 今日はそんな彼ら新人のために、Ruby/Railsで開発をするときに役立つページをまとめてみました。 初めてRails開発をする人に参考にして欲し
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会AI-enhanced description This document discusses the architecture and development of Tabelog, a restaurant review and recommendation website from Japan. It notes that Tabelog uses Rails for its frontend application and a custom framework called Cobqlo for its backend services. It has divided its model, view, and controller logic between these two frameworks
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く