![「Server::Starterに対応するとはどういうことか」の補足 : sonots:blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/da78a05937633f7a2b4b2219826151c370cd607b/height=288;version=1;width=512/https%3A%2F%2Fparts.blog.livedoor.jp%2Fimg%2Fusr%2Fcmn%2Fogp_image%2Flivedoor.png)
RubyKaigi 2014、楽しかったし、学びがあって行って良かったなぁと思いました(小並感すぎる)。 淡々とメモしておくよ benchmark-ips ベンチマークの高機能版。ウォームアップとして何回か走らせてから実行したり、5秒とか100msで何回実行できるかとかを計測できるっぽい synvert フォーマッターらしい。Rubyのバージョンがあがってシンタックスを変更したほうがよかったりする場合に変更してくれる Railsバージョンもあるっぽいけど、このセッション聞いてなかったので詳しくはわからない(あとで調べる) peek-performance_bar View や SQL等でかかった時間を表示するプロファイラ rack-mini-profilerと似てる気がするけど、こっちも試してみたい stackprof Ruby 2.1で追加された rb_profile_frames を使
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
社内セミナー用にプレゼン資料を作成する必要があるのだけど、markdownでサクッと書きたかったので環境を整えてみた。 markdownでプレゼン資料を作成する方法がイロイロあって悩んだけど、シンタックスハイライトが使えるのと、テンプレートが豊富なのでslideshowを使うことにした。 slideshowでプレゼン資料作成 markdownやtextileからスライドを作成できるgem。 テンプレートも色々ある。 ※テンプレートのリストには載ってないけど、impress.jsとかも使える 今回はslideshow-showerというテンプレートを使用した。 インストール $ gem install slideshow テンプレートのインストール $ slideshow install shower テンプレートの適用、ビルド $ slideshow build index.md -t s
最近の Ruby のメモリ管理 Recent Ruby’s memory management Koichi Sasada ko1@heroku.com K.Sasada: 最近の Ruby のメモリ管理, 2014 Summary •Ruby’s new two GC implementation • RGenGC: Restricted Generational GC • RincGC: Restricted incremental GC K.Sasada: 最近の Ruby のメモリ管理, 2014 Who am I ? Koichi Sasada from Heroku, Inc. •CRuby/MRI committer • Virtual machine (YARV) from Ruby 1.9 • YARV development since 2004/1/1 • Recen
引き続きプログラミングの基礎体力づくりと、Pythonの勉強を兼ねてアルゴリズムを勉強中です。今回は『共通部分文字列をカウントする方法』について勉強しました。AIZU Online Judgeで対応している問題は、『Common Sub-String』です。アルゴリズムというよりは頭の体操的なパズル問題ですが、ある程度速度の早いプログラムを書くのには工夫が必要だなと痛感しています。 🏈 AOJ問題Common Sub-String Aizu Online Judge。2個の文字列が与えられたとき、 両方の文字列に含まれる文字列のうちもっとも長いものを探し、 その長さを答えるプログラム。 🍄 Rubyコードloop do s, t = gets.chomp, gets.chomp rescue break s, t = t, s if s.length > t.length max_l
require 'rubygems' require 'parallel' require 'open-uri' require 'digest/md5' urls = [ 'http://farm4.staticflickr.com/3052/3086132328_e2041be795.jpg', 'http://farm7.staticflickr.com/6053/6312937936_cebaf2feb9.jpg', 'http://farm1.staticflickr.com/54/131841577_0e67642c02.jpg', 'http://farm3.staticflickr.com/2293/2266151759_058e732577.jpg' ] Parallel.each(urls, in_threads: 2) {|url| puts "start downl
この記事は英語版のブログで2013年2月5日に公開された記事の翻訳版です。 Engine Yard のPaaS製品は非常に複雑である上に、数千ものサーバーに及んでいます。弊社のアプリケーションを素早く確実に動作させるには、並行処理と並列処理をよく理解する必要があります。私は、自らの開発努力でこの問題を解決しようと、並行処理という困難な世界を探求しました。この投稿はその要約です。後編となるパート2では、並列処理に重点を置いて説明する予定です。 ハードウェア? この問題をハードウェアで解決しようとすることはできます。しかし、CPUがネックなのであれば、コアごとのスピードをある程度まで上げることはできても、最終的には役に立たなくなってしまいます。サーバーの数を増やすにしても、同じことが言えます。次々とシリアル処理を行っても、追加されたサーバーごとの処理装置の数は決まっているからです。 「シリアル
TL;DR MVCもレイヤで捉えて関係性の設計をするといいのでは 普通のRubyオブジェクトを積極的に使いたいですね 「パーフェクト Rails」に期待しましょう 長くなって面倒くさくなり、途中から手抜き感が半端ないですが許してください この記事の位置付けなど 7 Patterns to Refactor Fat ActiveRecord Models - Code Climate Blog [翻訳] エリック・エヴァンスのドメイン駆動設計 エンタープライズ アプリケーションアーキテクチャパターン これらの参考文献を踏まえてRailsアプリケーションのリファクタリングをしていて、だいぶ方向性や考え方がまとまってきたので、これからチームに合流する人を想定読者に、Qiitaがどんな感じで作られているのかを文書化したものです。(参考文献の一覧は記事の最後にあります) 内容的には文献[2,3]を踏
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist
※この内容はRailsで書かれたWantedlyのプロジェクトに参加することを想定していて、一部Railsのデフォルトでない機能の解説もありますが、使っているgemもメジャーなもので割と汎用的な内容になっていると思うので、是非参考にしてみてください。 URLを見ればだいたいどこを変更すればいいかわかると言うこと Ruby on RailsはMVC(Model View Controller)にもとづいて設計されていて、ディレクトリ構造的にもapp/以下に綺麗に分かれている。 MVCって何?って人は、ググってみてほしいが、割と宗教論争になりかけているので、モデルはDBの各テーブルに関連していて、ビューはHTMLの部分に近くて、コントローラーはビュー用にモデルを引っ張ってくるつなぎ役だと思ってれば大体合っている。これ以上は深く考えずにコードを読んだほうが良いと思う。 Router でもコード的
このエントリは パーフェクトRuby Advent Calendar の2日目のエントリです。 1日目のエントリはパーフェクトRuby Advent Calendar 2013(1日目) - すがブロです。 yard diff いきなりですが、パーフェクトRubyで知った最高に便利なコマンドは yard diff です。 開発中でも、運用中でも利用するライブラリのバージョンアップは必ず発生します。依存関係がたくさんあるライブラリを使っていていると次のようなことが起こりがちです。 ○○を更新したら、○○の使っている△△が更新されて今まで動いていたものが動かなくなった ○○の使っている□□を更新したいけど、よくわかんないし、仕事増えそうだからやめよう こんなときに yard diffを利用すると便利。変更内容を俯瞰できるので、ソースを追ってやるという気持ちになれます。yardのことを全然知らな
rvm が多機能&壊れやすすぎて Homebrew の ruby を直にインストールして使っていたのですが,Homebrew の ruby はバージョンを上げるときにgemで入れたコマンドを引き継いでくれなかったり,gemでインストールしたコマンドを反映してくれないので,rbenv という ruby のパッケージマネージャを使ってみる事にしました. しかし,rbenvも若干面倒なところがあり,gemでインストールしたコマンドを使う前にrbenv rehashをして $HOME/.rvm/shims 以下の情報を更新しなくてはいけません. そこで,gem でインストールしたときでもいちいち rbenv rehash しなくて良い方法を考えました. 方法1: rbenv-rehash という gem を入れる % gem install rbenv-rehashとするとインストールできます.
Ruby On RailsのO/RマッパーActiveRecordなどで活用される手法「メタプログラミング」。パターンを持ったロジック自体を生成するコードを記述し、メタレベルのプログラミングを行う手法です。 メタプログラミングを活用したコードは、簡潔で美しく、時に魔法の呪文のように見えることもあります。強力な機能を持つ反面、乱用すると思わぬ副作用を生むこともあります。 このセッションでは、Perl、Python、RubyそしてHaskell各言語のメタプログラミング機能を比較しながら、光と闇の境界線について議論し、メタプログラミングの理解を深めます。 Perlのパネラーには「モダンPerl入門」やJPAでの活動で知られる牧さん,Rubyは「メタプログラミングRuby」の翻訳者角さん,Pythonは去年のライトニングトークでも名試合を繰り広げた小泉守義さん。Haskellのパネラーとして,e
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く