2002-02-15
_ 場所
神奈川
_ 飯
今日は僕、たくみ、いのうえざん。たくみがいのうえさんに渡すものがあるということなのだけど、なぜか僕も召喚されました。いや明白なんだけど。
昨日は目当ての人が居ませんでしたが、今日は居ました。Final Fantasy の勝利のポーズ並に喜ばしいですなへっへ。
さて明日も仕事があるのですでに頭痛がしつつ寝ます。
2003-02-15
_ いつも「 時間が足りない 」と嘆くあなたに捧げる処方箋
しるちゃんのところより。
タイムリー1。そいや、うちのボスはしきりに「 まずは日程表作れ 」と言ってくる。自分が抱えているタスクを洗い出すためにやってるんだよな。
与えられた仕事をやみくもにこなすだけという状況から脱しないと 自分の能力を伸ばす意欲がわかず,単に疲弊していくばかりである。
_ マリちゃん@サタデー HOT リクエスト
* 前
仕事を昼に抜け出そうとしたら 1130 ころに虫発見。えぃゃっと直して渋谷へごー。
メイト渋谷にてマリちゃん CD 購入。真綾な gravity 予約。
1330 ころ NHK のスタジオ前あたりに到着。佐伯くん、上山さんと合流。整列。佐伯くん 2 番。ヲレ 40 番。上山さん 100 番台。
1445 くらいにスタジオ入場。最前列のほうが空いてたから行ってみたら佐伯くんが最前列の左隅に居た。その隣をげと。だらだら
マリちゃんを見たらとっとと仕事に戻ろうと思ってたのだけど、マリちゃんの出番が 1630 ころだと。でも普通に番組を楽しんだ。なかなかおもろい。ていうか隣の少女、手紙書いたりガサガサしたりうるさいです。
ジニーとかいう娘( not 娘。)。けっこう美人すね。
* さたほと
はるか昔にふいに来たときはミニライブやってくれたです。アルバム「そら」が発売されたあたり( トマトが入ってるアルバムは「そら」だっけ? )。らむさんと一緒にハァハァしますた。でも今回は CD をかけるだけらしい。ち。
内容は省略。今回のアルバム作成時の話しとかいろいろ。
マリちゃん見たのでさくっと帰社。さて仕事。
_ diff
Microsoft WindowsXP には UNIX 系統と同様に diff コマンドがあるのか。いいね。Windows2000 にはあるのかな。
_ メールアドレス
ふむ。BIGLOBE のメールアドレスには SPAM だけが来るようになった :D 。
_ 軽率
2/16 にゆかたんたちが参加するライブがある。ヲレは忙殺されていたのですっかり行かない方向に決めていた。
昨日マリちゃに萌えてから帰社してからの仕事ちうに某荒川さんから「 明日のチケットはたくみから言われたので確保しときました。よろしく 」というメールが飛んでできた。
はて。頼んだっけ? でもたくみさまから「 頼んだだろうがスカタン。IRC ログ見れ 」と言われて思い出した。そいや「 チケットおねげーします 」と言った記憶がある。
ああしまった。すっかり忘れていた。がんばって行くか。
ぃゃ「 仕方無いから行く 」という語彙ではないので誤解しないでね。仕事から逃げる口実です ... 。
2004-02-15
_ 仕事
0700 出勤。
_ 朝
気温がちと高いか。自転車通勤したら汗がにじんだ。
_ サブタイトル
サブタイトルが「むぅ」になってるのがやたらと多いオイラの日記。
_ 仕事
0800 有楽町へ。
_ しまった
日比谷で目が覚めたのはいいが途端にドアが閉まった。惜しい。ひと駅乗り過ごし。
_ さらに
出口を間違えて日比谷駅地下をさまよう。
_ 仕事
1830 現場作業終了。
_ しまった(2)
新丸子で下車しようとしたら気付いたら元住吉だった。
_ 仕事
1930 帰社。
_ Tour de Japon プロモ
「ファイルを再生できません」と言われた会社の計算機。
_ 仕事
2250 退勤。
_ 帰路
風が強いっすよ。そりゃもう向かい風を受けてるような風の強さ。耳痛いし。
_ もういっちょ
見つけた幸せは偽りの幸せだった。
rin@sakura[~]% which happy /bin/happy rin@sakura[~]% ls -l `which happy` lrwxrwxrwx 1 root root 10 2月 16日 01:01 /bin/happy -> /bin/false*
2005-02-15
_ でりばり
弊社の交通費清算書なんぞを勤務先で書いたのはいいけど当面弊社に行く用事がないのでいつ弊社に提出しようかと考えていたら中島支障( 仮名 )が打ち合わせのために弊社からこちらに来ていたのでコーヒーを飲みつつデリバリをお願いした。
中「 13:00 になったけど仕事戻らなくていいの?( ずずー ) 」
ヲ「 H さんを捕まえないと先に進まないんだけど、そもそも H さんがなかなか捕まらないんだよね( ずずー ) 」
中「 あのひとはなかなか捕まらないからねえ。待て待てー って追っかけるんでしょ。浜辺で( ずずー ) 」
ヲ「 待てよぅー あははー みたいな。やらねーって( ずずー ) 」
などとヨタヨタ。
_ 今日のグラディウス 5
ステージ 6 のボス。BGM が「 stage boss 」になったのでアレを倒せばステージ 6 クリアだったのだろうけど、やられた。
ステージ 4 でクレジット 2 回使ったのがダメだなあ。
2006-02-15 :-)
_ 医者はどこだ
胃痛部の部活動。
医者に行ってきた。
以下医者との会話のまとめ。
- 胃に異常なし
- 胃炎とか胃潰瘍ではない
- i386 や 586 のころは計算機が高価だった
- 1995 ころはインターネットなんて「 ピーガー 」といいながらやっていた
- やっぱり DELL
私はそのころの話題はついていけません笑
_ joel on software
ちまちまと読み進めてます。
休憩中に読んでいたらソフトウェア開発について担当の Kb さんと会話が発展した。
Kb さん「 なに読んでるの 」
ヲレ「 joel on software という本っす。ちょっとしか読んでないのだけど、Microsoft Excel の開発に携わったひとが書いてるらしいっす 」
Kb さん「 難しいのか? 」
ヲレ「 ぃゃそうでもないですよ。文章に登場する単語はそれなりに知ってないと楽しめないけど( C の文字列の NULL 終端は邪道とか C++ の string クラスとか ) 文章自体は噛み砕いてるというか砕けた文章なので笑えます。面白いエピソードとかあるし。WindowsNT 1.0 と MSN が失敗したプロジェクトだそうです笑 」
Kb さん「 Windows なんかだと何人くらいで開発するんだろね 」
ヲレ「 何千人ものひとが関わってるらしいっすよ 」
Kb さん「 すげえな、やっぱコミュニケーションはピラミッド型になるんだろか 」
ヲレ「 どうすかね、さすがにそんな経験はないけど、そのくらいの規模になったらピラミッド型のほうがいいのかな 」
Kb さん「 人数が増えたらそれだけコミュニケーションの負荷が大きくなるんだろう。あっちを直したらこっちが不具合になったとか 」
ヲレ「 あはは。管理が大変ですよね。多発するセキュリティホールなんてのもそーいうコミュニケーションによる不具合だったりして 」
Kb さん「 OS なんてひとりじゃ作れないのかな 」
ヲレ「 そうでもないみたいっす。近日 30 日で作れる OS 入門とかそーいう本が出るのだけど、やっぱりこれもひとりで OS を書くという前提みたいっす。機能はだいぶ限定しているみたいだから、それで OS を肥大化しないようにしてるのかな 」
Kb さん「 なるほど、OS として最低限の機能ならばそれほど大きくならないわけか。そういえばアノ装置の OS は弊社から依頼してよくソフトを作ってもらってるひとが 1 人で書いたみたいだぞ 」
ヲレ「 まじっすか。ぃゃまあひとりで書けるのかもしれないな。Linux も最初は Linus ひとりで書いたんだし 」
世の中すごいひとばかり。
とんがれプログラマ。
ref.
4274066304
- 30日でできる!OS自作入門 コンピュータ書籍専門ネット書店 cbook24 [2006-02-03]
- HariboteOS - OsaskWiki - 「30日でできる! OS自作入門」のページ[2006-02-07]
- CNET Japan Blog - 中島聡・ネット時代のデジタルライフスタイル:ネットスケープのヴィジョン
わずか数十人で作ったWindows95をリリースすることでさえあれほど大変だったことを考えれば、何千人が関わっているWindows Vistaをリリースすることがいかに大変かは想像を絶する。
2008-02-15 :-)
_ 朝ったー
0540 起床。ねむ。
_ [ファイナルファンタジー I・II][植松伸夫]通勤ったー
ファイナルファンタジー I・II全曲集
今日から 3 週間くらいファイナルファンタジーシリーズ( 以降 FF )の作品が続きます。FF1, 2 は各々 1 回ずつプレイしました。作曲は植松伸夫さん。CD 1 枚に FF1 と FF2 の曲が収録されてます。CD の最初と最後にアレンジ曲があります。最近の FF は 1 ゲームで 100 曲近くあるのが当たり前になっていますが、このころは曲数が少なかったです。FF1 は 20 曲。FF2 は 27 曲です。FF1 から FF12 までの曲数は以前まとめました[ 20070302#p04 ]。
FF1。使用している音が少ないのでメロディが分かりやすいです。世間では「マトーヤの洞窟」が人気があるようですが( 観測範囲が狭いですが )私は「街」「店」「船」など素朴な曲のほうが好みです。
FF2。ゲームの開始直後にパーティが全滅します。なので「プレリュード」の次に「戦闘シーン」が収録されています。「メインテーマ」はフィールド曲なのですが、暗いです。作品全体に漂う悲壮感を表しています。「チョコボのテーマ」は今では FF の伝統的キャラクターになったチョコボの曲です。チョコボは FF2 で初登場しました。「ファンファーレ」は FF5 「ファンファーレ1」と同じ曲です。「戦闘シーン2」はボス戦の曲です。植松さんの「裏切るような曲」[ 20071020#p01 ]が発揮されています。tr45「店」以降はゲーム未収録の曲です。tr48「ダンジョン」は後に FF6「からくり屋敷」として使われます。
B00005FO1L
_ 仕事
0830 出勤。
_ 仕事場のレイアウト
上司から「事業所のフロアレイアウトの草稿を描いてみないかい」ということでチラチラ描いてみました。ISMS 的な機密保護レベルくらいは考慮しました。あと消防関連で部屋に要求される事項がありそうなんだけどさっぱり分かりません。むしろ素人にやらせるよりも外部業者に金払って設計してもらったほうがいろいろな意味で良いんじゃないでしょうか、と上司にはツッコミしておきました。
_ 仕事場の席にチョコレートが置いてあった
一緒に「【品質】設計者の心得」というメッセージカードも置いてありました。「チョコレートやるから会社にちゃんと貢献しろよ」という飴とムチなメッセージかもしれませんね。
_ デブサミに行って気づいたこと
- 最初から最後まで居ることが体力的につらい
- 会場近辺に喫茶店が無い
- ホテル内の喫茶店のコーヒーは高い( 1 杯 900 円なんて生活は私には出来ない )
- なのでちょいと移動してベローチェでコーヒー飲んで読書したり
- 会場の最前列は空いている
- たまにプレゼン資料の字が小さいひとが居るので最前列のほうがいい
- 講演者のしぐさも見れるし
- プレゼン資料
- 背景色は黒、文字色は白が見やすい
- 背景色をグラデーションしておくとかっこいい
- 「ソフトウェア開発と関係無いんじゃないか?」という講演も聴くといい
- 新しいことが分かるので楽しい
- 全然違う業界の話を聴ける
- 違う業界と自分の業界の共通点を発見したりして楽しい
- 鳥の目、虫の目[ 20080214#p01 ]
- JaSST 2008 ナムコのひとたち[ 20080130#p01 ]
- Embedded Technology 2007 人間中心設計フォーラム2007[ 20071116#p06 ]
- 1 セッション空けておくと時間が余る
- あまのりょーさんから「30分くらい時間を潰すならブースに居るひとと会話して時間を潰せばいいよ」と助言を頂いた
- なっ ブースに居るひとに話しかけるんですかっ そんな恐れ多い おう え あうあ
- という恐怖感
- ブースはまったく行かなかった
- 翔泳社は joel 本があるから行ったけど
_ [Emacs][Mac OS X][akio0911]皆さん、Terminal内でEmacsやVimを使ってますか? - Web2.0職人への軌跡
( akio0911 さんとこ )
コメントを書こうとしたけどやめました。考えてみたら私が Mac mini で Mac OS X を使ってたころは以下のような状況でした。たぶん
- Emacs current を使ってた
- vim は使ってない
- Terminal 内で使ったかどうかあまり覚えてない
- 日本語は問題なく使えてた気がする
- uim と Anthy を使ってた記録はある( [ Mac OS X で uim と Anthy を使う ] )
- なので普通に日本語を使って暮らしてたと思う
幼いころから「Emacs は current を使うもんだ」と啓蒙されて育ったので Carbon Emacs を使ったことが無く、上記のように記憶が曖昧だし現在だといろいろな状況が異なるかもしれないし結局助言にならないのでここでボソボソしておくことにします。
_ [joel]joel が言っていた「美学」
- 無駄な機能を削ぎ落とす
- 必要最小限の機能
- 洗練させる
joel は Apple iPhone と Samsung BlackJack を比較していました。
- iPhone
- 機能を絞る
- やれることを絞る
- 無駄が無くなる
- インターフェースを減らす
- BlaskJack
- 多機能
- なんでもやれる
- インターフェースが多い
joel が言っていたのはたんに華やかという意味ではなくて、単純な機能を実現したので見た目がこうなりました、という意味の美しさだと解釈したけど違うのかしら。Macbook Air を見たときに同じような印象を持ちました。ちなみに Macbook Air 実機を使ったことはないので妄想です。
建築に無駄な装飾をとりのぞくモダンアーキテクチャという流派があるが、ソフトウェアはまだその段階に達していない。ユーザーは装飾を好む。ウィンドウのありえないところに影があったり、金属でもないのに金属の見た目だったり。
そうか。モダンの話題がありました。装飾の話題がありましたね。
_ [tdiary][trunk][current] tdiary current を追いかける
しばたさんから「 trunk にしちゃいなよ」とツッコミを頂いたので tdiary を trunk にしました。current? trunk?
作業ディレクトリは $HOME/usr/local/tdiary-cur です。このディレクトリに以下のような trac.sh を用意します。tracking の trac です。contrib は tdiary-contrib と CodeRepos にありますが tdiary-contrib から取得だけしておきます。でも cp しないことにします。setup, teardown の関数名は RSpec を真似しました。public_html 以下にファイルを cp するので最初に apache を stop しておきます。最後に apache を start します。「それ 1 行で書けるよ」といった処理があればツッコミをお願いします。
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/pkg/bin
setup()
{
pserver=:pserver:anonymous@tdiary.cvs.sourceforge.net:/cvsroot/tdiary
modules="core plugin contrib"
workdir=$(pwd)
tdiarydir=${HOME}/public_html/tdiary
sudo /etc/rc.d/apache stop
}
teardown()
{
sudo /etc/rc.d/apache start
}
main()
{
local op=$1
cvs -d"${pserver}" login
case $op in
checkout)
for mod in $modules; do
cvs -z3 -d"${pserver}" co -P $mod
done
;;
update)
for mod in $modules; do
pushd .
cd ./$mod
cvs up
popd
done
;;
esac
cd "${workdir}"/core
cp -R * "${tdiarydir}"
cd "${workdir}"/plugin
cp -R * "${tdiarydir}"/misc/plugin
}
setup
main $@
teardown
こんなふうに実行。
% cd ~/usr/local/tdiary-cur % ./trac.sh checkout
cvs up は動作確認してないです。
ref.
_ 買い物
amazon
@lynmock への小遣いをあげるために買ってみました( ref. P3:PeraPeraPrv - とかいろいろ )
( via ただのにっき )
B000YIRSGM
( via [mixi] トヨタ生産方式 )
4828413995
( 誰かが Twitter で「いい!」と言っていた )
B000NVL0T6
( MAD を見て釣られた )
B000SKNOF0
2010-02-15 :-|
_ 朝ッ
0530 起床
_ 仕事
0830 出勤
_ 最近なぜ自転車に乗っていないのかが分かった
自転車に乗らないからだ。
_ PSフレンドのひとが「 Modern Warfare 2 をプレイしている」と話題にしたので動画を探してみた
最初にたどり着いたのがこれだった。閲覧注意。ゲーム脳については否定するけど、さすがにこれは私自身に耐性が無いので自分でもプレイしたくないし、子供が出来たとして子供にもプレイさせたくないなあ...。
_ 気づいたらチームANSで最長老だった
ただいま 32 歳
チームメンバーの高校受験(!) という話題を見て驚愕することもあった。年齢が 2 倍以上離れてるし。おそろしい。私がその年齢だったころはなあ(中略) FF5 とかロマサガをプレイしていた。FF5 は高校受験が終わるまで我慢したものさ。すぐクリアしたけど。神竜は強かった
チームANS じゃないけど Papo さんがかろうじて年が近い( それでも年下 )。HIKKORO さんは年上かなあ。JE4URN さんは年上。
_ [リッジレーサー7]リッジレーサー7オンラインバトルでの開幕スタートが難しいコース
「難しい」というのは下手すればニトロが 1 本も溜まらないので「誰か後ろから押してー」状態になること。ただし HIJACK は除く。まあ「開幕スタートとはどこなのか」という定義しないといけないんだけど。
| コース | ムズイ? |
| Seaside Route765 | |
| Seaside Route765 R | |
| Rave City Riverfront | |
| Rave City Riverfront R | |
| Industrial Drive | ○ |
| Industrial Drive R | ○ |
| Lost Ruins | |
| Lost Ruins R | |
| Harborline 765 | ○ |
| Harborline 765 R | |
| Old Central | |
| Old Central R | |
| Highland Cliffs | |
| Highland Cliffs R | |
| Seacrest District | |
| Seacrest District R | |
| Mist Falls | |
| Mist Falls R | ○ |
| Midtown Parkway | ○ |
| Midtown Parkway R | |
| Aviator Loop | ○ |
| Aviator Loop R | |
| Shadow Caves | |
| Shadow Caves R | ○ |
| Laketop Parkway | |
| Laketop Parkway R | |
| Surfside Resort | ○ |
| Surfside Resort R | |
| Lakeshore Drive | |
| Lakeshore Drive R | |
| Southbay Docks | |
| Southbay Docks R | |
| Island Circle | |
| Island Circle R | |
| Bayside Freeway | |
| Bayside Freeway R | |
| Airport Lap | ○ |
| Airport Lap R | |
| Downtown Rave City | |
| Downtown Rave City R | |
| Sunset Heights | ○ |
| Sunset Heights R | ○ |
| Crossbay Tunnel | ○ |
| Crossbay Tunnel R |
2011-02-15 :-(
_ 朝
0500 起床
0600 雪積もってるので徒歩
0830 出勤 || 隣の隣のひとの声がシナダ・ベニオ ( シナダ・ベニオ/スカーレットキス )のような感じである。
0930 シミュレーション
_ 午後
1500 実機
2012-02-15 :-(
_ cygwin が死んだ
たぶん rebaseall すればいいんだけど
% bundle exec rake spec
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
/usr/local/bin/ruby.exe -S rspec spec/acceptance/append_comment_spec.rb spec/acceptance/append_diary_spec.rb spec/acceptance/bugfix/encoding_error_spec.rb spec/acceptance/save_conf_comment_spec.rb spec/acceptance/save_conf_default_spec.rb spec/acceptance/save_conf_dnsbl_spec.rb spec/acceptance/save_conf_fil ter_spec.rb spec/acceptance/save_conf_plugin_spec.rb spec/acceptance/save_conf_referer_spec.rb spec/acceptance/save_conf_security_spec.rb spec/acceptance/ update_diary_spec.rb spec/acceptance/view_category_spec.rb spec/acceptance/view_comment_spec.rb spec/acceptance/view_diary_spec.rb spec/acceptance/view_re ferer_spec.rb spec/core/compatible_spec.rb spec/core/core_ext_spec.rb spec/core/style/emptdiary_style_spec.rb spec/core/style/etdiary_style_spec.rb spec/c ore/style/rd_style_spec.rb spec/core/style/tdiary_style_spec.rb spec/core/style/wiki_style_spec.rb spec/plugin/bq_spec.rb
0 [main] ruby 5544 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
0 [main] ruby 5924 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
1 [main] ruby 2288 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
1 [main] ruby 3412 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
1 [main] ruby 2140 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
0 [main] ruby 5308 child_info_fork::abort: address space needed by 'etc.so' (0x340000) is already occupied
/usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
返ってこない
_ [ruby][bundle]bundle install --path ~/.bundle するといろいろ怒られる
% uname -a NetBSD mogu.area51.gr.jp 5.99.58 NetBSD 5.99.58 (MYKERNEL) #0: Mon Dec 26 21:16:57 JST 2011 root@mogu.area51.gr.jp:/usr/obj/sys/arch/i386/compile/MYKERNEL i386
% ruby --version ruby 1.9.2p180 (2011-02-18 revision 30909) [i386-netbsdelf]
% gem --version 1.3.7
% bundle install --path ~/.bundle Fetching source index for http://rubygems.org/ Using rake (0.9.2.2) Using addressable (2.2.6) Using highline (1.6.11) Using net-ssh (2.3.0) Using net-scp (1.0.4) Using net-sftp (2.0.5) Using net-ssh-gateway (1.1.0) Using capistrano (2.9.0) Using capistrano_colors (0.5.5) Using mime-types (1.17.2) Using nokogiri (1.5.0) Using rack (1.4.1) Using rack-test (0.6.1) Using ffi (1.0.11) Using childprocess (0.3.0) Using multi_json (1.0.4) Using rubyzip (0.9.5) Using selenium-webdriver (2.17.0) Using xpath (0.1.4) Using capybara (1.1.2) Using net-http-digest_auth (1.2) Using net-http-persistent (1.9) Using webrobots (0.0.13) Using mechanize (2.0.1) Using capybara-mechanize (0.3.0.rc3) Using coffee-script-source (1.2.0) Using execjs (1.3.0) Using coffee-script (2.2.0) Using daemons (1.1.6) Using diff-lcs (1.1.3) Installing eventmachine (0.12.10) with native extensions /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:496:in `rescue in block in build_extensions': E RROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError) /usr/pkg/bin/ruby19 extconf.rb checking for rb_trap_immediate in ruby.h,rubysig.h... no checking for rb_thread_blocking_region()... yes checking for inotify_init() in sys/inotify.h... no checking for __NR_inotify_init in sys/syscall.h... no checking for writev() in sys/uio.h... yes checking for rb_thread_check_ints()... yes checking for rb_time_new()... yes checking for sys/event.h... yes checking for sys/queue.h... yes checking for main() in -lssl... yes checking for main() in -lcrypto... yes checking for openssl/ssl.h... yes checking for openssl/err.h... yes creating Makefile make c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -obinder.o -c binder.cpp c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -ocmain.o -c cmain.cpp c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -ocplusplus.o -c cplusplus.cpp c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oed.o -c ed.cpp c++ -I. -I/usr/pkg/include/ruby-1.9/i386-netbsdelf -I/usr/pkg/include/ruby-1.9/ruby/backward -I/usr/pkg/include/ruby-1.9 -I. -DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oem.o -c em.cpp em.cpp: In member function 'void EventMachine_t::_ReadLoopBreaker()': em.cpp:924: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'bool EventMachine_t::_RunTimers()': em.cpp:948: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToServer(const char*, int, const char*, int)': em.cpp:1089: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToUnixServer(const char*)': em.cpp:1218: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1221: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1237: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1243: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1249: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'int EventMachine_t::DetachFD(EventableDescriptor*)': em.cpp:1350: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t' em.cpp: In member function 'const long unsigned int EventMachine_t::CreateTcpServer(const char*, int)': em.cpp:1453: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1455: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1535: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'const long unsigned int EventMachine_t::OpenDatagramSocket(const char*, int)': em.cpp:1545: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1596: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'void EventMachine_t::ArmKqueueWriter(EventableDescriptor*)': em.cpp:1625: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t' em.cpp: In member function 'void EventMachine_t::ArmKqueueReader(EventableDescriptor*)': em.cpp:1647: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t' em.cpp: In member function 'const long unsigned int EventMachine_t::_OpenFileForWriting(const char*)': em.cpp:1773: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'const long unsigned int EventMachine_t::CreateUnixDomainServer(const char*)': em.cpp:1805: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1866: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp: In member function 'const long unsigned int EventMachine_t::Socketpair(char* const*)': em.cpp:1927: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1932: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1934: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1938: warning: converting to non-pointer type 'long unsigned int' from NULL em.cpp:1948: warning: converting to non-pointer type 'long unsigned int' from NULL *** Error code 1 Stop. make: stopped in /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10/ext Gem files will remain installed in /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10 for inspection. Results logged to /usr/pkg/lib/ruby/gems/1.9/gems/eventmachine-0.12.10/ext/gem_make.out
? ('A`)
ググる
pkgsrc にある....だと...?
% cd /usr/pkgsrc/devel/ruby-eventmachine/ % sudo make install clean clean-depends
まだ同じだった
一度アンインストール
% sudo gem uninstall bundler
pkgsrc のほうのをインストールしてみる。
% cd /usr/pkgsrc/misc/ruby-bundler/ % sudo make install clean clean-depends if /usr/sbin/pkg_info -K /var/db/pkg -qe "ruby18-bundler-[0-9]*"; then /usr/sbin/pkg_info -K /var/db/pkg -qr "ruby18-bundler-[0-9]*" > /usr/pkgsrc/ misc/ruby-bundler/work/.DLIST; else /usr/bin/touch /usr/pkgsrc/misc/ruby-bundler/work/.DLIST; fi ===> Deinstalling for ruby18-bundler-1.0.15
いや ruby18 ちゃうねん
@miwarin Ruby はインストールされてるバージョンは見ないで、RUBY_VERSION_DEFAULT で指定されてるやつを使いますので。192 か 193 か、お望みの方を指定すればよろしいかと。( @obache )
オス
% sudo make RUBY_VERSION_DEFAULT=192 install
とやったら 1.8 がインストールされた。
あら
% grep -r RUBY_VERSION_DEFAULT /usr/pkgsrc/lang/*
ruby/rubyversion.mk:# RUBY_VERSION_DEFAULT defines default version for Ruby related
ruby/rubyversion.mk:RUBY_VERSION_DEFAULT?= 1.8
ruby/rubyversion.mk:_RUBY_VERSION_DEFAULT= ${RUBY_VERSION_DEFAULT:S/.//}
ruby/rubyversion.mk:# Default value is set to ${RUBY_VERSION_DEFAULT}
ruby/rubyversion.mk:. if ${RUBY_VERSION_DEFAULT} == "1.8"
ruby/rubyversion.mk:. elif ${RUBY_VERSION_DEFAULT} == "1.9"
ruby/rubyversion.mk:MULTI+= RUBY_VERSION_REQD=${RUBY_VERSION_REQD:U${_RUBY_VERSION_DEFAULT}}
ruby/rubyversion.mk: RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}
ruby/rubyversion.mk: RUBY_VERSION_DEFAULT=${RUBY_VERSION_DEFAULT:Q}
1.9 ?
やってみる
% sudo make RUBY_VERSION_DEFAULT=1.9 install clean clean-depends
=> Bootstrap dependency digest>=20010302: found digest-20080510
=> Checksum SHA1 OK for bundler-1.0.15.gem
=> Checksum RMD160 OK for bundler-1.0.15.gem
===> Installing dependencies for ruby19-bundler-1.0.15
==========================================================================
The following variables will affect the build process of this package,
ruby19-bundler-1.0.15. Their current value is shown below:
* BDB185_DEFAULT = db1
* BDB_DEFAULT = db4
* SSLBASE = /usr
* SSLCERTS = /etc/openssl/certs
* SSLDIR = /etc/openssl
* SSLKEYS = /etc/openssl/private
Based on these variables, the following variables have been set:
* BDBBASE = /usr
* BDB_LIBS (defined, but empty)
* BDB_TYPE = db1
You may want to abort the process now with CTRL-C and change their value
before continuing. Be sure to run `/usr/bin/make clean' after
the changes.
==========================================================================
=> Build dependency checkperms>=1.1: found checkperms-1.11
=> Full dependency ruby19-base>=1.9.2: found ruby19-base-1.9.2pl180nb2
===> Overriding tools for ruby19-bundler-1.0.15
===> Extracting for ruby19-bundler-1.0.15
Unpacked gem: '/usr/pkgsrc/misc/ruby-bundler/work/bundler-1.0.15'
===> Patching for ruby19-bundler-1.0.15
===> Creating toolchain wrappers for ruby19-bundler-1.0.15
===> Configuring for ruby19-bundler-1.0.15
=> Checking for portability problems in extracted files
===> Building for ruby19-bundler-1.0.15
=> Removing backup files of patch before build
Successfully built RubyGem
Name: bundler
Version: 1.0.15
File: bundler-1.0.15.gem
=> Unwrapping files-to-be-installed.
INFO: [subst.mk:unwrap] Nothing changed in ./lib/bundler/man/bundle-config.
===> Installing for ruby19-bundler-1.0.15
=> Generating pre-install file lists
=> Installing gem into installation root
Successfully installed bundler-1.0.15
1 gem installed
Installing ri documentation for bundler-1.0.15...
Installing RDoc documentation for bundler-1.0.15...
=> Cleaning intermediate gem build files
=> gem install
=> Automatic manual page handling
=> Generating post-install file lists
=> Checking file-check results for ruby19-bundler-1.0.15
=> Checking for non-existent script interpreters in ruby19-bundler-1.0.15
=> Checking file permissions in ruby19-bundler-1.0.15
=> Checking for missing run-time search paths in ruby19-bundler-1.0.15
=> Checking for work-directory references in ruby19-bundler-1.0.15
===> Building binary package for ruby19-bundler-1.0.15
=> Creating binary package /usr/pkgsrc/packages/All/ruby19-bundler-1.0.15.tgz
===> Install binary package of ruby19-bundler-1.0.15
おk
eventmachine も ruby 1.9 でインストールしなおす
% cd /usr/pkgsrc/devel/ruby-eventmachine % sudo make RUBY_VERSION_DEFAULT=1.9 install clean clean-depends
bundle してみる
やはり同じエラー ('A`)
% bundle install --path ~/.bundle
THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DHAVE_OPENSSL_SSL_H -DHAVE_OPENSSL_ERR_H -DWITH_SSL -DHAVE_MAKE_PAIR -I/usr/include -fPIC -O2 -pthread -I/usr/include -fPIC -pipe -O2 -pthread -I/usr/include -oem.o -c em.cpp
em.cpp: In member function 'void EventMachine_t::_ReadLoopBreaker()':
em.cpp:924: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'bool EventMachine_t::_RunTimers()':
em.cpp:948: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToServer(const char*, int, const char*, int)':
em.cpp:1089: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::ConnectToUnixServer(const char*)':
em.cpp:1218: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1221: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1237: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1243: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1249: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'int EventMachine_t::DetachFD(EventableDescriptor*)':
em.cpp:1350: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateTcpServer(const char*, int)':
em.cpp:1453: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1455: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1535: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::OpenDatagramSocket(const char*, int)':
em.cpp:1545: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1596: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'void EventMachine_t::ArmKqueueWriter(EventableDescriptor*)':
em.cpp:1625: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'void EventMachine_t::ArmKqueueReader(EventableDescriptor*)':
em.cpp:1647: error: invalid conversion from 'EventableDescriptor*' to '__intptr_t'
em.cpp: In member function 'const long unsigned int EventMachine_t::_OpenFileForWriting(const char*)':
em.cpp:1773: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::CreateUnixDomainServer(const char*)':
em.cpp:1805: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1866: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp: In member function 'const long unsigned int EventMachine_t::Socketpair(char* const*)':
em.cpp:1927: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1932: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1934: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1938: warning: converting to non-pointer type 'long unsigned int' from NULL
em.cpp:1948: warning: converting to non-pointer type 'long unsigned int' from NULL
*** Error code 1
Stop.
make: stopped in /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10/ext
Gem files will remain installed in /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10 for inspection.
Results logged to /home/rin/.bundle/ruby/1.9/gems/eventmachine-0.12.10/ext/gem_make.out
from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:499:in `block in build_extensions'
from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:459:in `each'
from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:459:in `build_extensions'
from /usr/pkg/lib/ruby/1.9/rubygems/installer.rb:207:in `install'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/source.rb:101:in `block in install'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:78:in `preserve_paths'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/source.rb:91:in `install'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:58:in `block (2 levels) in run'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:93:in `with_build_args'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:57:in `block in run'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `block in each'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/spec_set.rb:12:in `each'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:49:in `run'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/installer.rb:8:in `install'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/cli.rb:222:in `install'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/task.rb:22:in `run'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor.rb:246:in `dispatch'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/lib/bundler/vendor/thor/base.rb:389:in `start'
from /usr/pkg/lib/ruby/gems/1.9/gems/bundler-1.0.15/bin/bundle:13:in `<top (required)>'
from /usr/pkg/bin/bundle:19:in `load'
from /usr/pkg/bin/bundle:19:in `<main>'
@miwarin あ、2011Q4 ですか。current では1.9という指定は廃止されてるので、192 を使うようにしておくのがいいようです。あと、コマンドラインで一発設定なら RUBY_VERSION_REQD に、でもいいですね。( @obache )
ぐふう
2013-02-15 :-(
2014-02-15 :-)
_ 夜
1700 ぐったり。部屋の那珂が温まらないのでオフトゥン.in
2100 飯。アジの開き
2200 おやつ。クラシックショコラ( ref. ちゃんと作れるスイーツ pp.26-27 ) 最近作ってなかった。
_ [Java][Ruby][マルチスレッド][デザインパターン]Java言語で学ぶデザインパターン入門マルチスレッド編 Guarded Suspension - 用意できるまで、待っててね
リクエストが put されるまで get はブロックする。待機する。
スピンロックなどとも言う。
# coding: utf-8
#
# 『増補改訂版Java言語で学ぶデザインパターン入門マルチスレッド編』 http://www.hyuki.com/dp/dp2.html
#
# Guarded Suspension - 用意できるまで、待っててね
#
require 'thread'
require 'monitor'
class Request
def initialize(name)
@name = name
end
def getName()
return @name
end
def to_s()
return "[ Request #{@name} ]"
end
end
class RequestQueue
def initialize()
@lock = Monitor.new()
@cond = @lock.new_cond
@queue ||= []
end
def getRequest()
@lock.synchronize {
while @queue.empty? == true
begin
@cond.wait()
rescue
end
end
return @queue.pop()
}
end
def putRequest(request)
@lock.synchronize {
@queue.push(request)
@cond.broadcast()
}
end
end
class ServerThread < Thread
def initialize(requestQueue, name, seed)
@requestQueeu = requestQueue
@random = Random.new(seed)
block = Proc.new {
0.upto(10) {|i|
request = requestQueue.getRequest()
puts "#{self} handles #{request}"
begin
sleep(random.rand(10))
rescue
end
}
}
super(&block)
end
end
class ClientThread < Thread
def initialize(requestQueue, name, seed)
@requestQueue = requestQueue
@random = Random.new(seed)
block = Proc.new {
0.upto(10) {|i|
request = Request.new("No. #{i}")
puts "#{self} requests #{request}"
@requestQueue.putRequest(request)
begin
sleep(random.rand(10))
rescue
end
}
}
super(&block)
end
end
def main(argv)
th ||= []
requestQueue = RequestQueue.new()
th << ServerThread.new(requestQueue, "Bobby", 6535897)
th << ClientThread.new(requestQueue, "Alice", 3141592)
th.each {|t| t.join() }
end
main(ARGV)
ruby GuardedSuspension.rb #<ClientThread:0x000000002fbde0> requests [ Request No. 0 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 1 ] #<ServerThread:0x00000002abd608> handles [ Request No. 0 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 2 ] #<ServerThread:0x00000002abd608> handles [ Request No. 1 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 3 ] #<ServerThread:0x00000002abd608> handles [ Request No. 2 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 4 ] #<ServerThread:0x00000002abd608> handles [ Request No. 3 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 5 ] #<ServerThread:0x00000002abd608> handles [ Request No. 4 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 6 ] #<ServerThread:0x00000002abd608> handles [ Request No. 5 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 7 ] #<ServerThread:0x00000002abd608> handles [ Request No. 6 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 8 ] #<ServerThread:0x00000002abd608> handles [ Request No. 7 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 9 ] #<ServerThread:0x00000002abd608> handles [ Request No. 8 ] #<ClientThread:0x000000002fbde0> requests [ Request No. 10 ] #<ServerThread:0x00000002abd608> handles [ Request No. 9 ] #<ServerThread:0x00000002abd608> handles [ Request No. 10 ]
ライセンス
Copyright (C) 2002,2006 Hiroshi Yuki. http://www.hyuki.com/dp/dp2.html hyuki@hyuki.com This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution.
参考
『増補改訂版Java言語で学ぶデザインパターン入門マルチスレッド編』
4797331623
2018-02-15 :-)
_ 送迎など
父を病院へ
_ インフラ勉強会 「FPGAアーキテクチャとソフトエラー起因の可用性低下」
discord でチャットしつつ発表者はボイスチャットでしゃべる という形式。いままで勉強会は開催されてたけど忘れてたり飯を食べてたりして、今回初めて参加してみた。といってもチャットですが。
インフラエンジニアの集いなのに何故FPGAなんだというのは置いておいて。古来よりソフトウェア界隈では「宇宙線によりバグが起きた」といったジョークがありますが、航空宇宙分野ではジョークで済まされないらしい。ふえええ と思いながら参加していました。
今後も低レイヤーの話題は出てきそうな感じでした。
2020-02-15 :-|
_ 体調不良
まだ咳と頭痛と頭痛がします。
_ [三越][艦これ]「艦これ」×「三越」コラボ 第六次作戦 ― 三越オンラインストア泊地 ― 【前段作戦】
通販は本日 16 時から。欲しいものは買えました。
- コーヒーカップ
- 赤ワイン
- 手摘み完熟梅原酒
- ゆであずき
- コンビーフ缶
_ [艦これ]艦これ 5-5
いままで中央下ルートしかやってなかったので上ルート行ってみました。出撃 5 回 1 撤退。節分任務のために 1 回ゲージ削ってあったので。
道中支援、決戦支援ともに不要でした。潜水艦が居ると S 勝利は厳しい。夕張改二特を入れてみるか。
中央下ルートは道中、決戦支援ともに出していたので手間がかかってましたが、上ルートは支援不要なぶん楽ですね。
5 回出撃して消費はこんな。
- 燃料 4000
- 弾薬 2500
- 鉄鋼 3000
- ボーキ 1200
- バケツ 12
_ 遊撃隊
そういや真面目にウォッチしてなかったんだけどダラダラとタイムラインを眺めていたら
なるほどね。
楽しい1日でしたぁ!
— 小林 亜実 (@kobayashiami112) February 15, 2020
わたしは楽しいことや好きなことを仕事にして生きている、この環境に改めて感謝!の日だなぁと思いましたっ
おやすみなさぁい( ˘ω˘ ) スヤァ... pic.twitter.com/KbgPPLHPxq
2022-02-15 :-)
_ ブリドカットセーラ恵美さんの誕生日に花を贈った
誕生日は 2/5 ですが。
花のセンスはとくに持ってないのでいつも花屋にお任せです。
遅くなってしまいましたが、誕生日にお花を送ってくださりありがとうございました!🥰🥰事務所から受け取りまして、うちで綺麗に咲いてます🥰
— ブリドカットセーラ恵美 (@SarahBridcutt) February 14, 2022
お花大好きなのでめちゃくちゃ嬉しいです!
3枚目の写真は嬉し過ぎて動いちゃってブレブレになったやつ(笑) pic.twitter.com/ErxyZCDICO
2023-02-15 :-(
2025-02-15 :-)
_ 日誌
部屋掃除
コーヒーを飲む。
買い物。
おひるはカレー機関。バレンタインデー前段。バレンタインデーのシーケンスは競争率が高いのだが運良く当選した。なおバレンタインデー中段は全部落選した。
艦娘遊撃隊は松、レンジャー。松のひとと多少会話するなど。艦これをプレイしているらしい。松(艦娘)の話題を振られて、レベル99のまま放置していることを返答したところ、松(遊撃隊) の眼前で松(艦娘) へ指輪を渡す流れとなった。
松(遊撃隊)の前で松(艦娘)に指輪を渡しました。 pic.twitter.com/SZNV1Kvojb
— Susumu Miwa (@miwarin) February 15, 2025
シールは全20種類らしい。19種類は入手できた。
帰り際にレンジャー(遊撃隊)からお菓子を貰った。「カレー機関の匂い」がする味だった。カレー機関へ行ったことがあるひとならこの感覚が分かるだろう。






























_ もと [ゆっくり休んでしっかり治してください。 おいらも含めて、周りでこじらせている人多い気がします。]
_ みわ [もとさん ぐったり休みました。うう。のどいて]