タグ

ブックマーク / shyouhei.tumblr.com (16)

  • ruby/ruby#495日本語解題

    三行で卜部って口だけ野郎でどうせたいしたもん書けないんでしょ? [1] [2]→ 見せてやんよゴラァ→ ごらんの有様教訓: 陰口は人に聞こえない所で。さすがに名指しはまずい。 どういうパッチかRubyのオブジェクトサイズを変更(大きく)する。そのことにより第一義的にはCPUキャッシュミスヒットが削減される。副次的作用として大きくなった余剰の領域にデータを詰め込めるので中間構造体を減らしてメモリアロケーションが最適化される。それらの総合的な結果として全体に高速化する。 前史とはいえこのアイディア、べつに最近涌いて出たものでもない。というか、俺がまだ大学院でNetBurstと戯れてたころの発想だから、かれこれ7~8年物だな。しかもこの間べつに秘密にしてたわけでもなくて、Rubyのオブジェクトって素数幅でいくなくね?ってのは、わりと口頭では折に触れて言ってたので、聞いたことがある人もいるはずか

    ruby/ruby#495日本語解題
  • テストのめどい話

    最初にめどい言い訳をせねばならぬ俺は江島氏ともきょん氏とも面識はないですが、お二人ともが俺のことを知ってることを俺も知ってる程度には狭い業界であり。どちらかに肩入れしたいわけではないです。喧嘩したいわけでもないです。普段あまりここでは言及しないですが俺は今の仕事としてはテストを書いたりテストを実施したりする係をしてノリクチをしのいでおり、いわばテストは業ですので、テストに言及することは今現在の同僚に対して意図しない受け取られ方をする可能性があるので困るので、それもあって普段はここではあまりテストの話はしないわけだが、だからと言って沈黙を破ってテストの話をするのが同僚に対して含みがあるというわけでもないです。とはいえ俺は大学等で真面目にソフトウエア工学の講義を受講したことがなく、経験と勘と昔取った杵柄だけでってるので、そういう意味では若干の後ろめたい気持ちもある。で、テストって何なん俺が

    テストのめどい話
    tarchan
    tarchan 2014/01/14
    >我々が必要としているのは止まらないソフトウエアじゃない。止まらない業務だ。
  • .travis.ymlめぐり

    Travis CI というGithubと連動してGithubにコミットすると勝手にテストが走ってテスト結果を通知してくれる、ようするにJenkins as a Serviceみたいなやつがあって、とても便利なので知らなかった人はこの際使いましょう。 そんでTravisの設定ファイルが.travis.ymlで、プロジェクトのディレクトリに置いておくだけでいいんだけど、ごく最近rubyの.travis.ymlを書き直したので、そのときに調べたものを開陳しておこうというエントリ。 https://github.com/ruby/ruby/blob/trunk/.travis.yml これが最終的に今のRubyの.travis.ymlで、俺の趣味によるやりすぎ気味のコメントと、language: cの例としてはもっとも網羅的な(つまり微に入り際に穿った)記述が特徴。Cのプロジェクトはまずこれをコピ

    .travis.ymlめぐり
  • '10年代のRubyコア用語集

    IRC (あいあーるしー) 「教養チャンネル」とも「衒学チャンネル」とも呼ばれる。ほとんどのタイミングで日史か中欧史か仏教史か英語史の話をしている。たまにRubyの話題になると逆に違和感が… ISeq (あいせく) RubyVM::InstructionSequence のこと。長いので誰も正式名称で呼ぼうとしない。 rubyスクリプトのいくつかある表現型の中でもっとも低レベルな表現。現在、rubyスクリプトからISeqを生成する機能は公開されているが、そのようにして生成したISeqを実行する機能はセキュリティ上の懸念から(作られてはいるが)封印されている。→ AST ID (あいでぃー) 型。rubyレベルでいうSymbolにほぼ相当するもの(ちょっとだけ違う)。objcプログラマーはこれを見てVALUEと混乱しないように。 assn (あさしん) IRCで彼らがアサシンと呼んでいるも

    '10年代のRubyコア用語集
  • Rubyがそろそろ一回終わってみるべき10の理由

    いや、Rubyを取り巻く皆さんの生活まで終われとは言ってないですからね。終わってみるべきなのはRubyのコア部分の開発。 1) 百年の大計の欠如 https://twitter.com/yukihiro_matz/status/25168548474 によると、100年や200年続けるべきなんだそうだ。ふーん。100年って言ってみたいだけちゃうんか。200年後といえば人はおろかまつもとゆきひろと面識のある人間すら死に絶えている時期なんだけどな。そこまで続けたきゃどうするればいいか真面目に考えたことあんのかね。日国ですらこの120年で2回も憲法変わってんだぞ。惰性で200年もつわけがないだろ。 2) まつもとゆきひろがスケールしない 御存知の通りまつもとゆきひろのRuby開発に対するコミットペース(ここでいうコミットってのはソースコードをチェックインすることだけではなくて広く「関与」の意

    Rubyがそろそろ一回終わってみるべき10の理由
    tarchan
    tarchan 2012/10/12
    >ガイジンがRubyのコア開発に来ない理由は俺にはよく分かったよ。日本語読み書きできてIRC参加できるタイムゾーンで生活してないと実質議論に参加できねえもん。
  • Pythonでおk ─ 書評: C言語によるスーパーLinuxプログラミング

    あのね、このAmazonの内容紹介が あまりにたわけていて ね。 Cライブラリで、効率的にプログラミング! Webアプリの世界ではPHPJavaが格段とポピュラーだが、ハードウェアの操作や ユーザーインタフェース、画像処理などの分野ではC言語でしか扱えないものが多く、近年、現場でのニーズは高い。 書は、プログラミングでの複雑な処理を短時間に組むために用意されたライブラリに焦点を当て、その使い方を解説しました。 データベース・プログラミングからネットワーク、科学技術計算、コンピュータグラフィクスまで、 ライブラリの活用術を身につけ、複雑なコーディングを簡素に実現する。 LinuxのディストリビューションにはUbuntuを採用。 あれですか句読点のところで毎回「なわけねーだろ」とかツッコミ入れる視聴者参加型インタラクティブ漫才か何かですか。SBCの編集会議はよくこれを通したよね。 まあ

    Pythonでおk ─ 書評: C言語によるスーパーLinuxプログラミング
    tarchan
    tarchan 2011/06/21
    >この本はむしろPythonに翻訳する修行をすることによりPython力を高めるPython本として使うのが正しい使い方というふうに思うわけです。
  • やります: RubyConf2011旅費出しますから行ってきて

    ぢっと通帳をみた結果とりあえず一回は実行可能という結論に達したのでやります。おまえらの旅費俺で持ちますから行ってきてください。 趣意つらつらと思い返してみると俺がRubyConf参加するようになったことに関して森脇大悟さんの果たしてくれた役割はとてつもなく大きいわけですよ。やっぱ単身見知らぬ海外の土地に出かけていくっていうのは西成に物見遊山に行くのより不安な行為じゃないですか。海外とか初めてだけど連れてってくれる人がいる、これが最終的にRubyConf行く決心がついた理由なので。森脇さんにはいくら感謝しても足りません。最近ご無沙汰してしまっており失礼していますが、この場を借りて再度お礼申し上げたい。その節は大変お世話になりました。でだな、まあ森脇さんへのお礼はそれはそれとして、世の中にはcharityとかpay it forwardとかいう風習もあって、詳しくはググれなんだけど、RubyC

    やります: RubyConf2011旅費出しますから行ってきて
  • 今回のiPhoneの件は要するにAtariショックを避けようとしてるんだと思うと色々と腑に落ちてくるものがある

    今回のiPhoneの件は要するにAtariショックを避けようとしてるんだと思うと色々と腑に落ちてくるものがある つまりAppleがやってるのは露骨な任天堂の猿真似ってわけね。DSでFlashが動くかよって話。 いやもちろん、我等が偉大なる任天堂様のなさる審査とAppleの杜撰な検閲を一緒にしないで頂戴、とかの質的な議論はありうると思うんだけども、じゃあといってDS向け同人ゲーをコミケで頒布させろとかの声がマジョリティとかには絶対ならないというのは、やっぱゲーム業界は痛い目見た経験を生かしてるからなんじゃないの。 だからさ、実はAppleはおまえらプログラマを切り捨てているように見えるけど、当は逆で、あれはおまえらを保護しようとしてるんじゃないか? クソゲーとかから。そう思うとあながち逆噴射な発想じゃないとおもうんだよなー 以上まったく根拠のないチラシの裏でした。

    今回のiPhoneの件は要するにAtariショックを避けようとしてるんだと思うと色々と腑に落ちてくるものがある
  • 卜部昌平のあまりreblogしないtumblr

    昔と違って今は{PostNotes}がテーマに入ってるから、wgetでページぶっこ抜いてきてawkかperlでちょろっと整形してgraphvizに突っ込むだけでこういう画像が簡単に。 zsh % export target="http://shyouhei.tumblr.com/post/339223403/tumblr-tumblr"; \ zsh -c 'wget -O - $target | tidy -i -w 0 -utf8 | ruby -n <(cat) | neato -Tpng -o tmp.png' <<'EOF' BEGIN { require 'open-uri' require 'thread' $h = Hash.new $q = Queue.new $th = Thread.start { loop { url = $q.deq $th.exit unless

    卜部昌平のあまりreblogしないtumblr
  • 俺の .screenrc が火を吹くぜ

    たまにはこういう生産性のない話題もいいよね! さて、まあおまえらも GNU Screen くらいは使ってるとおもうわけだが。こいつがまたひどいバッドノウハウでさあ。ほとんどの人が他人の .screenrc をコピペしてきて済ませちゃうんだよね。俺くらいカスタマイズして使ってるやつとか見かけないわけよ。当に。CodeRepos 見ても俺に比肩する規模の .screenrc 書いてる奴はいないもん。で、たまーにプロジェクタに表示して見せたりすると「それどうなってるんですか」とか。まあ一般人のおまえらは info なんか読まないよね。そうだよね。 でも今日は気が向いたから line-by-line で何が起こってるか解説しちゃうよ。 .screenrc の前にスクリーンショットの解説をちょっとだけ これが普段俺が使ってるノート PC の画面である。これで全画面。OS は普通の Ubuntu で

    俺の .screenrc が火を吹くぜ
    tarchan
    tarchan 2010/01/06
    眠くなってきた
  • ルームシェアを始めたと思ったらシェアメイトが家賃滞納して逐電したので家追い出されたでござるの巻

    オフラインの知り合いの皆さんには「川口に引っ越すよー」って話はしてあったと思うのですが、元々から知人の男が川口でその前からルームシェアしてて、シェアメイトの人が大阪に行っちゃったので「一人では家賃辛いからかわりに住まないか」という話だったのですね。んで10月末くらいに布団とか着替えとか運んで、とりあえず住み始めたんですけど、どうやらその時点ですでにだいぶ滞納してたらしくて。 というわけで今週いきなり家に不動産管理会社から契約解除の通告が来て「出てってね(はぁと)」と。で一緒に住んでたその男は音信不通で週末から戻ってこないし携帯にも出ないと。 まあ名義人の変更とか大家さんへの挨拶とか前の家の解約とかまだぜーんぜんなんもやってなかったため、契約上は赤の他人で、俺には金銭的にもなんも不都合はなくて、俺は普通に前の調布の家に帰ります。なんだけど、元シェアメイトの親族の方とか保証人の方とか(両方とも

    ルームシェアを始めたと思ったらシェアメイトが家賃滞納して逐電したので家追い出されたでござるの巻
  • 今年のRubyConfには参加しませんの件

    まあ表題の通りなんだけど、誤解されないように言っておくんだけど、過去の実績から考えて今年のRubyConfも素晴らしいカンファレンスなのは間違いないです! Rubyistなら毎回行けとまでは言わないが一生に一度以上は行くべきです!今年RubyConf行く人は楽しんできてください。 でもなんか、俺は行きづらくなっちゃった。 その、仮に一人でふらっと行ってもいいんであれば、今年も行ってたと思うんだよね。俺。でもそうじゃないじゃん。俺がRubyConfに行くということに付随するもんができちゃってるじゃん。具体的に言うとレポートなんだけどさ。正直に言っていいですか? あれ近年重荷になってました。正直俺が聞きたいコマよりレポートする価値のあるコマを優先して聞くの、かなり辛いです。ええそうですよ、誰もそこまでしろとか言われてませんよ。でも「今年も期待してます」とか言われるとさあ。あなたが俺に期待してる

    今年のRubyConfには参加しませんの件
  • あえて言うがRuby会議はそろそろ一回終わってみるべき。

    表題のようなことを実は2007年のやつの後くらいから思ってて、今年はほとんど確信に近くなっている。Ruby会議2009最終日にうっかり角谷さんの電波(自称)を浴びてしまったせいで、当日は「あー、俺より角谷さんのほうがちゃんと考えてて、でも逃げてないんだなあ」とか思った。思ったが、一日たって冷静に考えてみたら、やっぱ逃げてもいいと思うよ。なので当初考えていたとおりに書くことにする。 (1) おまえらの仕事は品質過剰です。 Ruby会議は世間のカンファレンスの相場から考えると、クオリティに比して参加費が異常に安い。クオリティの高さに関しては素晴らしいとは思うが、それの費用は安すぎだと思う。 なぜRuby会議はあのクオリティで開催できるのか、一回きちんと考察してみるべきだ。俺には参加費の代わりにおまえらのモチベーションを削ぎ落としながら燃料にしてオペレーション回してるようにしか見えない。横から見

    あえて言うがRuby会議はそろそろ一回終わってみるべき。
  • 右利きのおまえらが左手でマウスを使うべきいくつかの理由

    俺における身も蓋もない左手マウスの理由は、またしても中学2年の頃に「おまえらと違って左手で華麗にマウス使っちゃう俺」的な発想で使い始めたところに遡るわけだが、それ以来飽きることなく十年以上も左手マウスを続けているのは、純粋にそのほうが便利だからである。もう中2じゃないのでべつにおまえらと違わなくても生きていけるので、そろそろ左手マウスの良さについて一言いっておく。 マウスは左手でも不自由なく扱えるいきなり消極的な理由に思えるかもしれないが、実はこれが一番重要な点だ。左利きのおまえらと違って右利きのおまえらは利き手じゃないほうの手で細かい操作をすることに不安をおぼえるかもしれないが、実際にはなんの問題もない。よくマウスを観察してみよう。ボタンが数個くらい付いてるだけだろう。こんなもん箸も持てない子供ですら扱えるわけで、健常者のおまえらならまったく問題ない。 左手マウス+右手テンキーの破壊力は

    右利きのおまえらが左手でマウスを使うべきいくつかの理由
    tarchan
    tarchan 2009/06/10
    箸の持ち方は中学生のとき自力で矯正した
  • 検索と挿入がともにO(1)であるようなHashを作るにはコツがいる

    このところ立て続けに表記の事実を理解していない俺実装のHash(しかもCで!)を見かけたので、おそらく知られていないんだと思う。以降、同じ轍を踏む人が少なくなればと思い、啓蒙のために公開しておく。 先に言っておくがおまえらはHashを再発明するんじゃねよボケが。おとなしくありもののライブラリ使えよ。つうかHashのある言語使えよ。Cとかマゾかよ。 言葉と前提とりあえずHashが何であるかとか、どういう作りになっているかとか、そういうことは既知とする。リストの配列ってことね。←これで何言ってるか分からないおまえらにはこの文章はちょっとはやい。先にデータ構造の教科書を読むことをおすすめ。以下ではHashに登録されるキーとデータのペアのことをentryと呼び、リストの配列と言ったときのリストのほうをbin、配列のほうをbucketと呼ぶ。つまり、 class Hash { typedef lis

    検索と挿入がともにO(1)であるようなHashを作るにはコツがいる
  • 俺において時としておまえらに厳しい指摘をするのはつまるところ俺が必要な時にそれがなかったから

    田舎で育ったわけだ。 いや、そりゃ下を見りゃもっとすごい田舎はあるかもしらんが、でもまあ田舎さ。田舎には良いところも悪いところもあるんだろうが、俺にとっていちばん悪かったのは回りに同じ趣味の人間がどの世代を見渡してもいなかったってことだ。 俺の場合中1で親のLC630についてきたHyperCard Liteにmagicコマンド打って以来、中3くらいでResEditMacsBugに飽き(注)、高校時代はNetBSD/mac68kについてきた/usr/srcを眺めるなどしていたような少々世間様とはずれたお子様だったわけで、回りに俺の話を理解してくれる人がいない。当時の俺にnetnews読むとかの発想があればまた違った人生になってたんだろうが、あいにくそこまでは頭が回ってなかった。Cの話が通じる人にようやく出会えるのは実に大学に入ってからである。 注:というか理解できてなかったのが正しい。A-

    俺において時としておまえらに厳しい指摘をするのはつまるところ俺が必要な時にそれがなかったから
  • 1