タグ

2010年9月24日のブックマーク (29件)

  • RailsのログファイルをMessagePackで超高速解析!|TechRacho by BPS株式会社

    最近Railsがガンガン出力するproduction.logを解析してどのアクションがリクエスト多いのか、DBがボトルネックになってるアクションはないか、などを調べているんですが、production.logがどんどん肥大化して、解析ツールの開発イテレーションを回す際の効率が悪くなってきました。 また似たようなツールをやたらめったらコピペで作ってきたため、開発効率も悪くなってきたので、ここでAPIを整理しつつ、あわよくばログをなめる部分を高速化できないものかと考えました。 シンプルに正規表現をつかって変化する箇所を切り出していたのですが、これではかなり重いのは自明ですし、がんばって文字列をパースするパーサを作ってもrubyではあまりスピードは出なそう、でもrubyで書きたいし.... ということで、一度パースしたデータを読込みに効率よさそうな形式に変換することで、次以降の解析を高速化しよう

    RailsのログファイルをMessagePackで超高速解析!|TechRacho by BPS株式会社
  • Guyon Diary

    VimConf 2018の裏方をやってみて感じた事や想い出をいくつか紹介したいと思います。 私がスタッフになったのは夏休み明けでした。 GitLabのIssueで作業とTODO管理をしてスタッフ向けのSlackと必要に応じてハングアウトを使ってコミュニケーションが行われていました。 仕事を抱えながらなので、各自の業務状況によりますが、Slackの反応は一次リアクションや意思決定力はとても早いように感じた事を覚えています。 また、前年の経験を活かして、スタッフ数が少ないという点を基コンセプトを確かめることで、無理をして個人負担が大きくなりすぎないように、何かができなくなるよりもコンスタントに目的に進めてけるようにしていました。(全部に究極を求めすぎないように) CFPの採択で燃え尽きる 平日夜に会場周辺のとある場所に集まり、自分たちがVimConf 2018をどうしたいか・ビジョンを(いい

    Guyon Diary
  • RubyからScalaに乗り換えた15くらいの理由 - ヽ( ・∀・)ノくまくまー(2010-04-26)

    ● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのがになる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc

  • 第8章 Ruby言語の詳細

    これまで話していないRuby言語の構文と評価の詳細について述べる。完全な説 明をしようとは思っていないので、書に登場しない細かい仕様は全てカット した。だからこれだけ読んでもRubyプログラムが書けるようになるということ は、まずありえない。完全なものが必要なら添付CD-ROMに同梱したリファレン スマニュアル\footnote{Rubyリファレンスマニュアル:添付CD-ROMarchives/ruby-refm.tar.gz}を 読んでいただきたい。 Rubyを知っている読者はこの章も飛ばして構わない。 リテラル Rubyはリテラルを使った式の表現力が非常に高い。 Rubyをスクリプト言語たら しめているのは第一にトップレベルの存在、第二がリテラルの表現力だと筆者 は考えている。第三には豊富な基ライブラリが挙げられるだろう。 リテラルは単体でも非常に強力だが、組み合わせるとさらに強力

    InoHiro
    InoHiro 2010/09/24
  • Ruby でパターンマッチ - まめめも

    ref: 未来の国のアリス - d.y.d. で紹介されている implicit future が Ruby に欲しい! # promise を作る x = Promise.new a = [1, x, 2, x, 3, x] # 今はまだ値になっていない p a #=> [1, _promise_, 2, _promise_, 3, _promise_] # この promise は 42 に決めた! (代入ではないよ) x === 42 # x の箇所は勝手に 42 になっている p a #=> [1, 42, 2, 42, 3, 42] というのも、これがあれば Ruby でパターンマッチができる気がするんですよね。こんな感じに。 # 何にでもマッチする箇所には _ と書く (実体は Promise.new) def _ Promise.new end # + と定数だけからなる抽象

    Ruby でパターンマッチ - まめめも
    InoHiro
    InoHiro 2010/09/24
  • No Reservations about Keywords in Ruby on Rails

    Have you ever had the urge to name a data model in your Ruby on Rails application something obvious, like Action, Table, File, Columns, or Database? Well, don’t. Choosing a name like that might work for you in some cases, but it might fail miserably for someone else using a different database engine (i.e., MySQL verses PostgreSQL verses Oracle). Think you can remember all the problematic names? T

    InoHiro
    InoHiro 2010/09/24
    Railsで使えない(予約語)単語
  • cuspos diary

    ファイルをUPLOADする際に利用できるプラグインの覚書。 http://wiki.rubyonrails.org/rails/pages/HowtoUploadFiles を見ると基的なuploadを行う際の手順が記載されている。 その中でページ下段「Other approaches」を見ると、いくつかplugin形式のものも含まれている。 ■file_column ■Acts as Attachment ■attachment_fu その中でfile_columnは長い間更新されていないのでパス。今回はActs as Attachmentの後継?のようなattachment_fuを試してみる。 親切なTutorialがhttp://clarkware.com/cgi/blosxom/2007/02/24に用意されている。*1 attachment_fuプラグインの導入 前提としてRM

  • git/無視するファイルを指定する方法(.gitignoreについて) - TOBY SOFT wiki

    はじめに † gitで無視するファイルを指定する方法。 .gitignoreをトップディレクトリに置きます。 注意点:CVS同様基的にgitはディレクトリを扱いません。ですので、空のディレクトリを扱いたい場合は、空のディレクトリ内に空の.gitignoreファイルを置いてgit管理下におけばよいでしょう。 (ディレクトリを扱えないことはCVSの大きな欠点だと思っていたので、私には疑問点がありますが) ↑ 実例で学ぶ.gitignoreの書き方 † # ←で始めるとコメント行 # サブディレクトリを含む hoge.dcu 等のファイルを無視したい # ※ *.dcuはDelphiのコンパイル済みファイル *.dcu # トップディレクトリの*.exeファイルのみを無視対象にしたくなった、 # サブディレクトリは無視しない方向の場合 /*.exe # tmp ディレクトリまるごと無視したい場

    InoHiro
    InoHiro 2010/09/24
  • 他人のiPhoneをテスト機として使用する(Ad Hocビルド):iPhoneアプリ開発雑記帳

    他人の(自分以外の)iPhoneiPadをテスト機として使用する方法をご紹介しておきます。 友人などにテストに協力してもらう場合には、iTunesを利用して識別子(UDID)を取得してもらいデバイス登録を行います。 デバイス登録が完了したら、Ad Hoc配布用のプロビジョニング・プロファイル(Provisioning Profile)を作成し、Provisioning Profileとアプリ体を渡して、iTunesに取り込んで同期してもらうという流れになります。 iTunesを利用した識別子の取得 (iPhoneの持ち主側の作業) まずは同期するときと同様にiPhoneiTunesに接続します。 iTunesにiPhoneの項目(項目名はiPhoneの初期登録時に付けた名前になります)が出てきますので、その項目をクリックし、iPhoneの電話番号などの概要が書かれた画面を表示します。

    他人のiPhoneをテスト機として使用する(Ad Hocビルド):iPhoneアプリ開発雑記帳
  • Ad Hocアプリケーションの動作方法 | akalogue

    iPhoneのアプリケーションはApp Store経由でインストールするのが一般的ですが、それとは別にAd Hocと呼ばれる配布方法があります。これは開発者から見れば、100台までのiPhoneを登録して、それらのiPhone上でだけ動作するアプリケーションを作成し、メール添付やWebサイトを通じて配布することになります。インハウス限定のアプリケーションや、App Store登録前のベータ・テストなどに適していますね。 Ad Hocアプリケーションの利用者は、最初に使用しているiPhoneのID(UDID)を開発者に伝えなければなりません。これは以下の手順です。 (1) App Storeで無償配布されているAd Hoc HelperをiPhoneにインストール。 (2) Ad Hoc Helperを起動し、To:欄に開発者のメール・アドレスを入力し、Sendボタンを押してメールを送信。

  • C#でiPhoneアプリ開発 with MonoTouch

    2. 自己紹介 • 伊勢 シンといいます。 – スマートフォン勉強会の代表です。 – 次回関東10/31、関西11/14です! – 詳しくは http://smartphone.techtalk.jp/ へ! • 先日、 Microsoft MVP for Windows Mobile を 受賞しました! わんくま同盟 大阪勉強会 #32 3. • WM開発書きました! – Windows Mobile実践プログラミング with .NET Compact Framework – 酢酸さん、こげつさんとの合作です – もう各地の屋さんに並んでいるはず • WMのMVPですが、今日はiPhoneのネタやり ます! – WMだけじゃなくてiPhoneアプリも作ってます わんくま同盟 大阪勉強会 #32 4. おしながき • おさらい編 – 基的なiPhone開発のおさらい – Windo

    C#でiPhoneアプリ開発 with MonoTouch
  • Photo Tourism: Microsoft Research, Interactive Visual Media Group

    InoHiro
    InoHiro 2010/09/24
  • http://www.itarchitect.jp/technology_and_programming/-/27047-3.html

  • asahi.com(朝日新聞社):肉体的な衰え「感じない」 36歳イチロー、成長続く - スポーツ

    36歳。ベテランと呼ばれる領域に達したが、イチローは年齢という固定観念に縛られていない。  「僕が使っている道具は最高のものばかり。練習方法も昔とは違う。選手のパフォーマンスが前に進んでもおかしくない。ことさら年齢にフォーカスされるのは変な感じ」  パワー全盛の大リーグで、イチローは持ち味の「スピード」にこだわり続ける。この10年間、体重77キロ前後を維持し、同世代男性の標準値が20%前後の体脂肪率は、わずか6%。肉体的な衰えは、感じていないと言い切る。「25歳なのに、40歳みたいなやつがたくさんいる。僕は、そっちの方に興味があります」  2001年、27歳で大リーグに飛び込んで以来、イチローのプレースタイルに大きな変化はない。俊足、巧打。今季は35歳以上でただ一人40盗塁以上をマークし、リーグ最多の200安打を放つ。右翼の守備では、時にはフェンスに激突しながら塁打性の打球をつかみ取ろう

    InoHiro
    InoHiro 2010/09/24
    "「プレッシャーを避けて通ろうとするなんて、本当にバカげてる。それに立ち向かわなきゃいけない。クリアしないと、何かを越えられない」"
  • Loading...

  • はてなブログ | 無料ブログを作成しよう

    ベルギーに行った 先日、ベルギーに行きました。 マグリットの絵とルーベンスの絵を見るのが目的。 あまり時間もなく、ブリュッセルとアントワープを駆け足気味で巡ることに。 ミュンヘンから車で10時間近くかかり、なんでこんな無茶をしてしまったのかとも思いましたが、ヨーロッパの方…

    はてなブログ | 無料ブログを作成しよう
  • subversionを使っていた人がgit便利だなと感じたこと - (゚∀゚)o彡 sasata299's blog

    2009年05月25日05:42 Git subversionを使っていた人がgit便利だなと感じたこと 最近は subversion も使いますが、git を使うことも多くなってきました。モジュールの配布なども git のものが多くなってきて、そろそろ git を使えるようになっておかないとまずい気が・・。ってことでちょっと勉強してみたのでまとめてみます。 そもそも「 subversion と git は何が違うの?」っていう話ですが、主な違いは以下の通りです。【参考】に挙げたサイトが分かり易いと思います。 subversion ・単一リポジトリ(リポジトリは一つだけ) ・commit したら即反映 ・add するのは新規にファイルを追加するときだけ ・リビジョン番号は数字 ・考えるのは『ローカル( checkout した場所)』と『リポジトリ』の2つだけ git ・分散リポジトリ(マス

    InoHiro
    InoHiro 2010/09/24
    Subversionとの比較など
  • brass.to - a really cool domain parked on Park.io

    The domain name brass.to is being parked on Park.io. Contact the domain owner to make an offer right now...

  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    InoHiro
    InoHiro 2010/09/24
  • Rubyのcase式と===演算子について - しばそんノート

    前フリ 奥様、知ってらした?Rubyのcase式ってすっごくパワフルなんですって!単なる同値判定で振り分けるだけじゃなくて、例えばこんなこともできちゃうらしいんですのよ! case gets.chomp when /おはよう/ puts 'おはようございます、お目覚めはいかがですか?' when /こんにちは/ puts 'こんにちは、いい天気ですね。' when /こんばんは/ puts 'こんばんは、遅くまでお疲れ様です。' else puts '何か御用でしょうか?' end あたくし、今までcase式の実力を見くびっていましたわ…! カラクリ どうしてこんなことができるのかというと、リファレンスマニュアルにも書いてあることなのですが、case式は===演算子を使ったif〜elsif〜end式と等価な処理を行うように実装されているからなんですね。 要は、この===演算子がキモなわけで

    Rubyのcase式と===演算子について - しばそんノート
    InoHiro
    InoHiro 2010/09/24
  • アジャイル開発を、人はどのようにして学ぶのか。アジャイルの第一人者、平鍋さんに聞いた

    アジャイル開発は、実はを読んで理解するのがとても難しい」。9月4日に、有志によるアジャイル開発のイベントの基調講演「アジャイル開発の現在・過去・未来」の中で、アジャイルの第一人者であるチェンジビジョン代表取締役社長の平鍋健児氏はこう発言しました。 を読んで理解するのが難しいのだとすると、アジャイル開発はどのようにして学んでいくのがいいのでしょうか? 平鍋さんが伝えようとしたことを詳しく聞くために、メールインタビューをしました。 自分で考えることが質 先日のXP祭りで平鍋さんの講演を聞いたとき、「アジャイルは人づてに伝わっていく」という部分が印象に残りました。また、「アジャイルは、実はを読んで理解するのがとても難しい」ともおっしゃっていました。とはいえ、アジャイル開発をや講演などから学び始める人も多いはずです。そういう方々にアジャイルをどう学ぶのがいいのか、というアドバイスを届け

    アジャイル開発を、人はどのようにして学ぶのか。アジャイルの第一人者、平鍋さんに聞いた
  • ダイクストラ法(最短経路問題)

    ダイクストラ法 (Dijkstra's Algorithm) は最短経路問題を効率的に解くグラフ理論におけるアルゴリズムです。 スタートノードからゴールノードまでの最短距離とその経路を求めることができます。 アルゴリズム 以下のグラフを例にダイクストラのアルゴリズムを解説します。 円がノード,線がエッジで,sがスタートノード,gがゴールノードを表しています。 エッジの近くに書かれている数字はそのエッジを通るのに必要なコスト(たいてい距離または時間)です。 ここではエッジに向きが存在しない(=どちらからでも通れる)無向グラフだとして扱っていますが, ダイクストラ法の場合はそれほど無向グラフと有向グラフを区別して考える必要はありません。 ダイクストラ法はDP(動的計画法)的なアルゴリズムです。 つまり,「手近で明らかなことから順次確定していき,その確定した情報をもとにさらに遠くまで確定していく

  • 広くなった画面を有効利用できる、Emacs内Window管理ツール e2wm.el を作ってみた。(旧名称 ewm.el) - 技術日記@kiwanami

    世間が iPad で盛り上がっている中、空気を読まずにEmacsです。 (2010/05/31 追記:バグがあって動かない状態でしたので、修正いたしました。試してみて動かなかった皆さんご迷惑をおかけしました。peccuさんご指摘ありがとうございました。) (2010/06/07 名称変更:名称を変更ましたので、混乱しないように内容をすこし修正しました。既に導入いただいた皆さんすみません。) 図の一覧@Cacoo(2010/07/03追記) 概要 Window分割をあらかじめ決めておいて一発で切り替えたり、ポップアップの出現位置を固定したり、ちょっと便利になるプラグインを追加できるようにする、e2wm.elというEmacsの拡張を作ってみました。Emacs以外の人に分かりやすい表現で言うと、Eclipseの「パースペクティブ」のようなものを実現するものです。 画面概観 近年モニターの解像度が

    広くなった画面を有効利用できる、Emacs内Window管理ツール e2wm.el を作ってみた。(旧名称 ewm.el) - 技術日記@kiwanami
  • ユニバーサルアプリ使ってますか?厳選100個のユニバーサルアプリをご紹介♪ - matuダイアリー

    iPhoneでもiPadでも最適なUIで使えるユニバーサルアプリ。 使う側からすると、ありがたくてお得なアプリです。 少々割高に感じられても、ユニバーサルアプリなら買うか!そんな風に思ってポチったアプリは数知れません。 今日はそんなユニバーサルアプリを開発者様に感謝しつつ、100個厳選してご紹介したいと思います。 はじめに ご紹介する前に注意書きさせてください。 見出し(=カテゴリ)は、アプリがAppStoreに申請しているものをそのまま採用しています。 価格は執筆時のものです。いくつかセール中のものもありますのでご注意ください。 できるだけ多くのカテゴリでアプリをご紹介したいのですが、私の興味の対象の関連で偏りが出ています。かなり(笑) 今回はご紹介だけですので、コメントはあっさりです。アプリの解説等はまたの機会に! ソーシャルネットワーキング(10) Twitter 無料 Twitte

    InoHiro
    InoHiro 2010/09/24
  • 鶴見線の終点駅めぐり :: デイリーポータルZ

    川崎市の臨海部に、鶴見線というJRの路線が通っている。一見ふつうの通勤電車っぽいけど、路線図を見ると先の方が何かに分岐していて、ちょっと興味深い。 ひとつの路線にこれだけ終点の駅があると、それぞれどんな感じなのか気になったので、特に分岐してる先の方を中心に、見て歩いてきました。 (萩原 雅紀) ふしぎな鶴見線 鶴見線は京浜東北線の鶴見駅から出発して、そのまま真っすぐ突き当たりの扇町駅まで進む線と、途中の浅野駅で分岐する海芝浦支線、そして武蔵白石駅で分岐する大川支線がある。地図ではあともう1、安善駅からも分岐しているけど、これは貨物線なので乗ることはできない。

    InoHiro
    InoHiro 2010/09/24
  • Git と GitHub を体験しながら身につける勉強会行ってきた - 予定は未定Blog版

    9/18(土) 15:30~ GitGitHubを体験しながら身につける勉強会(名古屋) : ATND 行ってきました。 なんかいろいろと話すことになったんですけど、あの場で言いそびれたこととか、もっとこう説明してればよかったなぁ、って部分の補足も兼ねたエントリです。 長文注意。 ショートカット git add の話 git add -p/git reset -p の話 リビジョン番号がない話 ブランチの話 git-completion の話、__git_ps1 の話 コミットの指定の話 reset の話 rebase と merge の話 公開したものの rebase の話 stash の話 TortoiseGit、HG、SVNのはなし 全体を通して git add の話 Git と SVN では、add に限らず、同じ名前のサブコマンドでも意味が異なるものがいくつかあります。 その中

    Git と GitHub を体験しながら身につける勉強会行ってきた - 予定は未定Blog版
    InoHiro
    InoHiro 2010/09/24
  • 構造化テキストの間違ったエスケープ手法について : 404 Blog Not Found

    2010年09月22日21:30 カテゴリLightweight Languages 構造化テキストの間違ったエスケープ手法について 昨晩のtwitter XSS祭りは、ふだんもtwitter.comは使わない私には遠くの祭り囃子だったのですが、せっかくの自戒の機会なので。 Kazuho@Cybozu Labs: (Twitter の XSS 脆弱性に関連して) 構造化テキストの正しいエスケープ手法について 正しいアプローチは、全てのルールを同時に適用することです。 これは残念ながら(おそらく)必要条件であっても十分条件ではありません。 こういう(かなりええかげんな)正規表現でtweetをparseしていたとします。 re_http = '(?:https?://[\\x21-\\x7e]+)'; re_user = '(?:[@][0-9A-Za-z_]{1,15})'; re_hash

    構造化テキストの間違ったエスケープ手法について : 404 Blog Not Found
    InoHiro
    InoHiro 2010/09/24
  • 多重継承まとめ - 西尾泰和のはてなダイアリー

    JavaはInterfaceという特殊な実装を持たないものだけ多重継承できる。実装を多重継承する仕組みはない。同じシグネチャのメソッドを持っている2つのInterfaceを継承した際にエラーにならないので衝突に気付けない。 Pythonはクラスを多重継承できる。同じ名前のメソッドを持っている2つのクラスを継承した際にどのメソッドが呼ばれるかはC3線形化を使って決定される。see: A Monotonic Superclass Linearization for Dylan RubyはModuleという「なにかを継承することはできなくてインスタンス化もできないもの」だけは多重継承できる。Moduleが別のものを継承できないためメソッドの解決は素朴な探索でOK(include A include BしたらBでの実装が優先) SmalltalkにはTraitという実装の多重継承ができるしくみがあ

    多重継承まとめ - 西尾泰和のはてなダイアリー
  • YouTube Denkitribe Channel

    作成した動画を友だち、家族、世界中の人たちと共有

    YouTube Denkitribe Channel
    InoHiro
    InoHiro 2010/09/24