タグ

ブックマーク / nari.hatenablog.com (10)

  • パーフェクトなCRubyを目指して - 1行のバグ修正に潜む苦労 - - I am Cruby!

    この記事はパーフェクトRuby Advent Calendar 2013 - Adventar の9日目です。 前の日のエントリーはパーフェクトRuby Advent Calendar 2013(8日目) Let's Sinatra Life - たちブログです。 まだ参加できますので、みなさまもぜひ。 パーフェクトRuby Advent Calendar 2013 - Adventar パーフェクトRubyRubyの仕様に大変詳しい同僚への献をインターセプトして読ませていただきました。 さまざまな機能をまとめたとてもよいだと思います。 著者のみなさまの苦労が偲ばれました。パーフェクトRuby (PERFECT SERIES 6)作者: Rubyサポーターズ,すがわらまさのり,寺田玄太郎,三村益隆,近藤宇智朗,橋立友宏,関口亮一出版社/メーカー: 技術評論社発売日: 2013/08/1

    パーフェクトなCRubyを目指して - 1行のバグ修正に潜む苦労 - - I am Cruby!
  • ソースコードを読むときの3カ条 - I am Cruby!

    GCを読んでいく上で実際に使っているソースコードの読み方を紹介してみます。 個人的に大事にしているのは以下の3カ条です。 小さい疑問から先に倒すべし 正しいツールを選択するべし 必ずメモするべし 小さい疑問から先に倒すべし なんとなく読みたい時は疑問の分析からソースコードってなんとなく読みたくなるということもありますよね。 ただ、その状態でいきなり対象のソースコードを読みはじめるのはよくないです。 小さなプロジェクトだと問題ないかもしれませんが、大きなプロジェクトだと時間がかかりすぎます。 そういうときは最初にドキュメントなどを読んでみましょう。 そうすると、対象のソースコードが持つ機能が書いてあります。 機能がわかれば「どうやってこれを実装しているのか?」という疑問が浮かびます。 たとえば、G1GCの場合は論文がすでに公開されていたので、最初に論文を読みました。 読み終わったあとに論文内

  • Redmineのチケットをコマンドラインで扱う「redcuine」 - I am Cruby!

    rubyRedmineのチケット操作って絶対ブラウザつかわないといけないので面倒ですよね…。どうせならコマンドラインでスコーンと登録したい。 以前はコマンドラインでメール投稿してチケット登録するツールを作ってたんですが、登録されるタイミングとか微妙でどうも使いづらかった。会社のRedmineが1.1に上がったので調べてたらREST APIを見つけて、そっちに乗り換え。どうせなら公開しようと思って、昨日夜なべして作り上げました。 authorNari/redcuine - GitHub gem install redcuine で入ると思います。ドキュメントとかほぼないし、テストもないので(酷い)、使う人はexperimentalだと思って使ってください。 Issueの取得、登録、更新、削除と一通りできます。Redmine1.1でしか試してないので、1.0系だと動かないかも。

  • はじめての並行プログラミング(1) - I am Cruby!

    第53回 社内勉強会に使用したテキストファイル「はじめての並行プログラミング(1)」 今回話すことスレッド? 並行プログラミングの難しさ 複数の仕事を同時に『並行プログラミング』とあるプログラムで何かの処理を同時におこないたい 方法は大きく分けて二つプロセススレッド(軽量プロセス)※ スレッド in プロセス の関係。プロセスとスレッドの違い(簡単に言えば)プロセスは「資源を共有しない」。スレッドは「資源を共有する」。スレッドが共有するもの メモリアドレス空間、ファイルハンドルなどスレッドが共有しないもの プログラムカウンタ、スタック、ローカル変数スレッドを使うメリットよいとこ 一つのプロセス内で並行処理が可能 非同期な処理とか 起動も低コスト データの同期が低コスト グローバル変数で受け渡しなどわるいところ 共有データの扱いが難しい(超重要)スレッドの安全性(safety)スレッドセーフ

  • Skype.elが凄すぎる件 - I am Cruby!

    Emacsid:kiwanamiさんのskype.elをいち早く試してみる.テキストエディタ勉強会に出ました - 技術日記@kiwanamiこれは凄い...めちゃくちゃ使いやすい..linuxのSkypeは使いづらくて腐りまくってると思ってたので凄く助かります.自分の設定ソースコードは以下の様に取得した. $ svn co http://svn.codecheck.in/lang/elisp/skype/trunk/ skype .emacsはフォルダへのパスを通した後で以下の設定をする (require 'skype) (setq skype--my-user-handle "nari") (setq skype--icon-path "~/.emacs.d/skype/icons") (setq skype--emoticon-path "~/.emacs.d/skype/emotic

  • RailsデプロイはRailsを使う人なら買っておくべき本 - I am Cruby!

    読書感想文, RailsRailsデプロイを全部読み終えました.Railsデプロイ作者: Ezra Zygmuntowicz, Bruce A. Tate, Clinton Begin, 前田修吾(監訳), 橋将(監訳), 小倉正充(監訳), 牧野聡出版社/メーカー: オライリージャパン発売日: 2009/03/16メディア: 大型 このはこんな賞賛の声で始まります. 書を購入するまでは,私はこの種の情報を求めて何時間もWebを探し回っていました. 書には求めていた情報すべて(しかも正確に)納められており,Railsプロジェクトを成功裏に 稼働させる上で非常に役立ってくれました.どうもありがとう! --- Eric Kramer (Nationwide Children's Hospital. プログラマ) 私も仕事Railsを扱うようになって最初にとまどったのが,世の中に溢

  • 「ガベージコレクションのアルゴリズムと実装」という本を書きました。

    gcbook, gcai, GCGCLoverのみなさん、お待たせしました。「ガベージコレクションのアルゴリズムと実装」の情報公開です。 書名:ガベージコレクションのアルゴリズムと実装 著者:中村 成洋/相川 光 監修:竹内 郁雄 ページ数:472ページ 体価格:3,200円 発売開始日:2010年3月17日(水) ※地域・書店によって遅れることがあります ISBN:978-4-7980-2562-9 C3055 読み所 書は次の2つのテーマを扱います。 1.GCのアルゴリズム(アルゴリズム編) 2.GCの実装(実装編) アルゴリズム編では、これまでに考案されてきた数多くのGCアルゴリズムの中 から、重要なものを厳選して紹介します。伝統的かつ基的なものから、やや 高度なアルゴリズムを選定しています。GC独特の考え方や各アルゴリズムの特 性などを理解していただくのがアルゴリズム編の最大

  • マイ.emacs探訪 - I am Cruby!

    Emacs(Emacs Advent Calendar jp: 2009 : ATNDの参加記事。すいません、私なんかがトリなんです。昨日はshugoさん。最初はk1LoWさんでした。)みなさん。メリークリスマス。こんな暇な日は自分の.emacsを見ながらニヤニヤすることにしましょう。emacsでメモclmemoemacsのメモはclmemoを愛用しています。clmemoはプログラマお馴染みのChageLogの書式を使ってメモを取るelispです。 (autoload 'clmemo "clmemo" "ChangeLog memo mode." t) (setq clmemo-file-name "~/memo/clmemo.txt") (global-set-key "\C-xM" 'clmemo) 重要なメモはココに集結させています。clmemoが便利なのは、メモを取る先が一つのテキ

  • スーパーマリオブラザーズをRubyで作ってみた - I am Cruby!

    Ruby2008/8/7にやんわり修正しました。 ソースコードsvnは svn co http://svn.coderepos.org/share/lang/ruby/nario Codereposにあげているので自由に触ってください。 環境設定Windowsであれば、ファイル内のrskit/game.exeで、フルスクリーンで動作します。linuxであればruby/sdlを動く環境を作成して、 ruby nario.rb で大丈夫です。 Ubuntuで動作確認していただきました。 SUPER NARIOをプレイしてみた(最速レビューをめざして) - きみのハートを8ビットキャスト 操作方法十字キー ←↑→↓Aボタン ABボタン B終了 ESC(フルスクリーンで動かすときは特に覚えておいたほうがいいです) Todoきのことか成長系、他のマップ、BGM、SEただ、1-1を作って非常に疲れたの

  • org-mode、remember-modeでいろいろしたい!! - I am Cruby!

    emacs今までclmemo.elを愛用してきましたが、org-modeに乗り換えることにしました。org-mode、remember-modeについてはid:rubikitchさんの以下の記事を参考にしました。org-mode + remember-mode でEmacs内で瞬時にメモをする→コードリーディングに生かす・メモ検索する - (rubikitch loves (Emacs Ruby CUI)) 僕の org-remember-templates は以下のように落ち着きました。 (setq org-remember-templates '(("Task" ?t "** TODO %?\n %i\n %a\n %t" nil "Task") ("Work" ?w "** TODO %? :work:\n %i\n %a\n %t" nil "Task") ("Idea" ?i "

  • 1