やっと終わった・・・。バイナリデータの取得はしたもののRuby本体のバージョンが違っていたのでレンタルサーバーの方でファイルのトランスレートが上手くいかんかった;;
どうやって移動したかって??
そりゃもう手で一日づつ入力しましたよ。ええ。
何でも大学と付近の社会人の人達で株式投資の勉強会が開催されるらしい。参加してみよう。
もう壊滅状態のようです。んー、何人くらいの人がアクセスしたんだろう?ベータバージョンの時は何も起きなかったのになぁ・・・。
ハードエラーだったりして・・・。HDのヘッドが飛んだとか・・・。
なんでレンタルサーバーを使うかというと、大学でサーバーを貸してくれないからなんですわ。長岡技術大学ですけど、なーんか難しいらしくて、研究室でサーバーを立ち上げようにも無理な場合もあるそうです。
まーじーかー,もはや新機種が発売するのかよ…。
ふむ。ゲーム会社のWebに著作物利用のガイドラインを置かないとダメな時代になったのかな。
そういや、モンスターハンターでも中のデータをいじって、イベント限定でしか手に入らない装備の画像を載せてるところがあったっけ。
UML実習の続き。個人ごとに作成していたイベントやユースケース図に基づいてグループごとに統合しながらクラス図の作成。
個人・グループ作業は今日でいったん中止して,来週からは教官が作成した簡易ショッピングサイトの仕様をUMLで記述して作成次第,JSPで作成。
OB会と名前はついてるものの,長岡技科大に来ているT高専な人の集まり。最近は面倒とかいう理由で消滅しかけていたけど,今年は編入学が一人と本格的にやばそう。話した内容はこんな感じ。
たわいもない話だけど,OB会も途切れることなく続けられたらいいな。
1時間半と長いのでgetasfstreamでローカルに保存してから鑑賞。
getasfstreamって色々あって公開停止されていたと思ったら、Streaming Forumにてひっそり再開されていた。ダウンロードには登録が必要。
10分通話したら電池がもりもり無くなる。ん〜、今の携帯にして1年たったからそろそろ買い替え時なのかなあ。
むーん、明日ははてなに行く予定なのに今日は微妙に忙しくてotsuneさんとかにコンタクトとる時間がなかった。いちおう予定としては渋谷駅ハチ公口の東急百貨店入り口近辺に19:30に集合ってことで。
その後、てきとうに一杯やる予定なんだけどどの店にすっかなあ。
MLに投げてみたところ、Implementing Creative Commons MetadataのようにMetadataとして埋め込んだ方がいいんじゃないの?という流れ。
やっぱりセマンティックな世界を考えるならそうだよなー。個人的にはRSSリーダーがほとんど対応してないので、苦肉の策として直接埋め込むことを考えたんだけど。この辺はライセンスを選択してCC対応のRDFを出力するように作るのが美しいかな。
というか、個人的にはRDFなんて再利用されてなんぼと思っているので、結構どうでもよかったり。自分が欲してないプラグインを作るってのはだめだね。反省。
# sohei [今日渋谷でどっか探して予約しときましょうか?]
su は「super user」の略なんだよ〜と教えていたら、横から「switch user」の略じゃね?と職場でつっこまれた。このことを twitter でつぶやいてみたら eto さんから「substitute userの略ではないか」とツッコミ。
さらにこんな議論があったことも教えてもらい、unix 文化は奥が深いなあって調べだしたら1時間経過していたのでやめる。
愚痴は後で書く
昨日、DSA で作った SSH 鍵だけど kmuto さんによると
Debian的推奨は今はRSAになってるです。developerじゃなくても何らかの形でたとえばAlioth内のプロジェクトとかかわるときにはDSA鍵だと撥ねられちゃう
ということらしいので、RSA で作り直した。
今まで Fastladder の script/crawler を起動するときはINSTALL.txt に書いてある通りに
$ RAILS_ENV=production script/crawler > /dev/null &
という感じで起動してたんだけど、 server と同じように -d オプションをつけるとデーモン化できることを今更知った。
INSTALL.txt の説明で、あえて -d つけてないのは何か意味があったりするんだろうか。とりあえず、動いているっぽいから -d の方を使うことにする。
tDiary の svn コミットメールの設定をしようと思ったけど、どこから行えばいいのかさっぱりわからず。sf.net の管理画面からではなく mailman からするのだろうか。誰か助けて!
一晩たってまとめてみた。
この二つはどうみても機能策定時の考慮不足だと思うなあ。iPhoto'09 で flickr でも管理をしている人はこの二つについて注意した方がいいです。
飛行機のチケットの支払いと宿の確保 done.
今日の参加者は8名といういつも通りの流れ。
前半はRubyKaigi2010の当落結果をうけて、何となくのイベント内容を検討したり、tDiaryのsteak対応をpushしたり。後半は3グループに分かれて
というのを熱く語っていたりしていた。終盤はCapybaraとSteakのProduction環境に突っ込んだ状態をネタにしたり何だり。
PivotalTrackerの良いところは改めてまとめた感じだけど、自分の中のまとめにも良い感じに役になったなあ。
kdmsnr さんに献本頂きましたありがとうございます。
この本が凄いのは(ウェブ)オペレーションエンジニアという名前を定義したところだと思う。オペレーションエンジニアとは本書の「1章キャリア」によれば
ギガビットスイッチを修理してデータベースを最適化して、スケーラビリティ要件に合わせたインフラ全体の設計が指示できる、そんなエンジニア
となっている。とても大変そうだ。そういえばソーシャルゲーム系で今求められている人材は1章に記載されているようなことが出来るエンジニアなのかもしれないね。
本書は最適化のテクニックの詳細が書かれているわけではない。"何とかパラメータを10にして…"というような内容ではなく、何を調べて何をすればいいのか、過去にこういう内容でシステムを落としてしまった、こういうことをしたほうが良いだろうというようなエッセイ集となっている。その内容も kdmsnr さんによるこの本に興味のある人が読みやすい言葉*1で書かれているのでとても読みやすいと感じた。
個人的に勉強になったのは6章の監視だった。最近、社内インフラの監視体制を見直すにあたって、何をすればいいのかわからないという状態からスタートだったのでとてもタイムリーだった。本書では3章で ganglia を使った事例が紹介されていたけど、6章では単にツールの使い方というだけではなくその一つ前の概念や目的についてしっかりと解説されていたのがとてもためになった。
本書では他にも運用チームと開発チームとのコミュニケーション形成のために必要なことやRDBやNoSQLなDBの解説、アジャイルなプロセスとウェブオペレーションの関わり(継続的デプロイなど)についても触れられている。また、最後にクックパッドのウェブオペレーションの現状についての解説は、実際のシステム構成やオペレーションエンジニアのキャリアについて知ることできたのでとても価値のある内容だった。
本書はウェブオペレーションに関わる人、つまりWebの世界に関わっているエンジニアならどれも前提知識として知っておくと自分のキャリア(ジョブではない)形成に必ずプラスになる本だと思う。
ウェブオペレーション ―サイト運用管理の実践テクニック (THEORY/IN/PRACTICE)
オライリージャパン
¥46
*1 エルシャダイやミサワ
LTで発表する @ume3_ さんと @tnmt さんの応援にペパボのインフラメンバーと @antipop さんとで行ってきた。
発表内容については、ライブで社内 IRC に流していたので特にメモってはいないんだけど、みんなちゃんとデータを集めてそれを活用しているなあということがわかった。自分の仕事でもこの辺をちゃんとやるというのがミッションの一つになってるんで、まずはカジュアルに www.hsbt.org のアクセスログを貯めたりするところから始めようと思います。
今年はシルク・ド・ソレイユは常設だったマイケル・ジャクソンのショーが移動公演になってくるという奴なので横浜アリーナまで行って見てきた。このショーはいつものシルク・ド・ソレイユに比べてアクション要素がだいぶ少ないので、マイケルの楽曲を元にしたショーと割り切って見た方がよさそう。いつもの移動公演に比べてちょっと値段が高めなのは楽曲使用料とか演奏を頑張っているからとかなのかなあ。
ただ、内容自体はだいぶ楽しめたので、この先の移動公演の会場近くの人は見に行くのをお勧め。
過去をふりかえるフェーズは終わったので、年末リリースに向けて動かない原因となる Ruby や gem の挙動を片っ端から直す業を開始した.
盛大に動かなくて死ぬポイントはbullet にあるような引数で同名の値/メソッドを渡した時の挙動の変更くらいなので、最初にrails/rails の 4-1-stable を指定すればこの問題は解決する。これは 4.1.2 で直るはずなので次に行く.
次に high_voltage が動かなくて何だろうなあと調べていったら、2.2.0 で "//" を含むパスを与えた時の Dir.glob
の挙動が変わっているのが原因だった.
% ruby -ve "p Dir.glob('.//app').any?"
ruby 2.1.2p102 (2014-05-16 revision 45956) [x86_64-darwin13.0]
true
% ruby -ve "p Dir.glob('.//app').any?"
ruby 2.2.0dev (2014-05-15 trunk 45954) [x86_64-darwin13]
false
なんすかこれ〜と n0kada さんに聞いてみたら、true になるけどという話なので trunk をビルドしなおしたら確かに true になっていた.
% ruby -ve "p Dir.glob('.//app').any?"
ruby 2.2.0dev (2014-05-18 trunk 46002) [x86_64-darwin13]
true
ここ数日変えている Dir.glob の余波でついでに 2.1 の挙動に戻っていたみたい。trunk まじ trunk.
他にも Time.stubs(:now).returns(foo)
みたいに Time.now を書き換えている箇所の奥底で time.rb が死んでいたけど、こいつはただのテストコードだったので Rails 4.1 の travel_to ヘルパーで書き直したら解決した。
これで 2.2.0 がいつ挙動変更してもすぐにトレースできるようになった。便利。
emacs をずっと使っていたけど、Atom どうなんということで Atom を 1 ヶ月くらい使ってまあまあ使えるようになってきた。プロジェクト単位ということで複数のディレクトリ(rails/rails とか ruby/ruby とか)をまたがって何かをする、という開発にはとても弱いのでこの辺は慣れでなんとかすることにした。
やったこと
これくらいで他は特にいじってないけど、Atom が emacs に見えてきたので大丈夫だと思う。後は起動速度さえなんとかなればなあ。
iPhone 5S のバッテリーがへたりすぎて 40% くらいからいきなり電源が切れたり、50 -> 1 -> 切れるというような挙動が頻発し始めたので、以前に購入したバッテリーケースを引っ張り出してだましだまし使い続けることにした。
バッテリーケースをつけると、イヤフォンジャックが使えなくて不便だったので、amazon でそれっぽいものを見つけて購入。正規版は断線してしまい、その当時は amazon でも代替品が見つからなかった記憶だったんだけど、買えたので良かった。ケーブルは断線対策かわりと頑丈な作りなのでいい感じ。Android が公式に Podcast に対応してくれれば音楽関連も Nexus 6 に寄せて iPhone でこういう頑張りもしなくてよくなるのになあ。
マンションについているクロゼットの棚が微妙にデッドスペースになっているものが多かったので、家具の HIRAYAMA という店で販売している天板を買って棚を増やすなどした。
http://www.rakuten.ne.jp/gold/kaguhirayama/
天板自体は、マンションの内装を手掛けた業者から使用した資材の型番は共有されていて、それを注文すればアレンジはできるんだけどいかんせん高くて厳しいということで、サイズを指定すればある程度カッティングして販売してくれるというやつの方が、コストをかけずにやりたいことができてよかった。
家に微妙な空間がある棚があるんだよな~という人は計測してから天板を買ってみるといいと思います。
昨日、Bundler 1.16.2 がリリースされて RubyGems 2.7.x で入れる予定の deprecated warnings が対応されたので、2.7.6 としてリリースする予定だった修正を含んだものを 2.7.7 としてリリースした。
https://blog.rubygems.org/2018/05/18/2.7.7-released.html
RubyKaigi でこの辺のリリースポリシーについては解説する予定だけど、2.7.6 はほんとに何も知らされないままリリースが行われていろいろキツかったので全部整備してからやっと今回のリリースという感じになる。
2.7.7 はすでに trunk にマージしたので Ruby 2.6.0-preview2 にはこのバージョンが含まれるはず。気合があれば RubyGems 3.0.0.beta1 を入れたいけど、そこまで行けるかな...がんばろう。
未来大×企業エンジニア 春のLT大会で発表してきた。この日は午前に少し時間があったので今日到着する同僚と合流してハセストに行って焼き鳥弁当を食べていた。
https://fun.connpass.com/event/127784/
同僚はキーボードの自作から始まって道具の手入れをしよう〜という話でした。
自分は「これだけは伝えたい技術」というテーマを伝えられて、会社として誘われた上で話すからには会社のことを話そう〜と思ったけど、そういや会社でプロダクションのコードは書いてないわ、という状態に少し後に気がついたので、OSS というか Ruby や RubyGems/Bundler などその他のいろいろを開発するときに気をつけている「自分以外はどう思ってソフトウェアを使ってるのか」という話をしてみた。発表資料はこちらです。
https://speakerdeck.com/hsbt/how-to-become-the-psychic
最後はお約束でドラを鳴らす感じできっかり10分という感じではなかったけどまあまあ伝わったかなー。学生の発表もどれも面白くてみんなすごいなあと感心してしまった(小学生並の感想)、企業からの登壇者も最近エンジニアになったばかりですという人でも、聴衆が新しいものが得られるような発表をしていて勉強になった。
この日は夜には家に戻りたかったので、懇親会はスキップして羽田行きの最終便に乗るために空港へ。お疲れ様でした。
bugs.ruby-lang.org で ruby-dev を選択してるけど ruby-dev に飛ばないのはなんで???というのを Ruby コミッタの中で話していて、日本語が ruby-core という英語のメーリングリストに流れるのは大変よくないので直した。
https://github.com/ruby/bugs.ruby-lang.org/commit/063c52dd8adecf17cb57d459d8824ff45ed815af
原因としては、Issue クラスに attr_accessor として生やしている lang が ActiveJob による非同期処理の時に当然のように揮発してしまって設定が引き継がれない、というのが問題だったので attr_accessor はやめて db にカラムを追加してちゃんと保存するようにした。
これ、「メール送信、attr_accessor」というつながりで、メール送信は Redmine のアップグレードで ActiveJob になったよなあ、ActiveJob を使うなら model は persistent にデータを保持しないとダメだよなあ、attr_accessor みたいなやり方だとデータが消えてしまってダメじゃんという順番に追っていけばそうだよね、という内容で見つけたのでした。もっとエスパー力を高めたい。
しっかり合戦らしい合戦と敵の描写をしつつ、初期シリーズにあったようなセンゴクっぽい話の流れだなあとだいぶ面白くてよかった。次号で小田原征伐は終わりみたいだけど、伊達政宗はちょい役で出して終わりかなあ。
この後の秀吉は厳しいことにしかならないけど、センゴクの描写はどうするんだろうというあたりで楽しみではある。
日曜美術館で放送していて知った東京都現代美術館で開催予定だったオラファー・エリアソンの特別展の図録を美術手帖 OIL で買って読んだ
インスタレーションを中心に、社会と自然について表現をしている展示が多いぽく、割と好みだったのでだいぶ良かった。この展覧会も残り一か月くらいだけど実際の展示は見に行けるかなあ。
今週もいつも通り Discord で開催。最近は割といつものメンバーが集まっている。
https://asakusarb.esa.io/posts/1037
ここ数日の Psych のアレコレと Rails サイドの影響の話を聞いたり回答したり、最近の求人とか転職の話をしていた。
それにしてもこの Psych 周りのやつ、ほんと急ぎすぎてると思うんだよなあ。
仕事でもお世話になっている Findy さんから、CTO/VPoE の対談イベントどうですか、というお誘いをもらったので参加します、と二つ返事をしたところ、メディアドゥの川田さんと VPoE 対談という内容になった。
https://findy.connpass.com/event/244705/
事前打ち合わせは軽く、という程度で本番に臨んだところ、CTO でありモデレータの佐藤さんがいい感じに話をまとめてくれたり、質問に変換してくれたりしていい感じに終わったような気がする。佐藤さん、毎週のようにイベントやってて本当にすごい。
昨年はイベントにはあまり出ないで粛々としていたんだけど、やってることをもうちょい発信していかないとな、ってなったのでぼちぼちと頑張ります。
水曜に続いて体温が 37℃超となったり、ロキソニンを飲んだら少し楽になったり、咳をゴホゴホいったり、落ち着いたりみたいな状態を繰り返していたので、2週間近く溜め込んでしまった郵送物開封やら自動車税の払込を楽天ペイでやるなど最低限の社会活動だけして後はゴロゴロ寝ていた。
ゴロゴロ寝るのはいいけど、眠り過ぎて眠れないとかそういう状況なのでマジで体調が悪くて睡眠を取ります、みたいな状態になってから初めて休息モードになるのが良くない気がする。ぐっすり寝るにも健康が必要...!
そもそも界隈で言う「アウトプット」という使われ方があまり好きではないのだけど、成果物とか学びを発信するという意味で使うとして、アウトプットは別に雑なら雑でいいのでとにかく発信することが重要だと思う。とりあえず注意すべきこととしては
の2つくらいだと思う。アウトプットなんて、明日の自分が読み返して便利じゃんくらいで十分であって、例えば嘘ではない間違いとかモダンではない方法などは勝手に淘汰されるので書く側の知ったことではない。まず自分が便利、そして自分以外の世界で誰か1人が便利、くらいでも大変良いアウトプットに思う。
ホームランを打てるようになったら打席に立つ、みたいなすべてが正しくて世界中の人に役に立つことを書けるようになってから書くつもりというパターンが一番よくない。質より量、ほんとこれ。
あと NG で書いた2つのうち、後者は本当に気をつけた方がよい。よく「〜を使って良いのは小学生まで」「〜はオワコン、これからは〜」という過激なことを書いて注目を集めようとしている人がいるけど、面白半分で書いたことでも書かれた側は一生とは言い過ぎかもだけど人は覚えているものなので、他の人が大事と思ってるものを面白半分で茶化して、将来的に良いことなど何一つとしてない(これはアウトプットに限らない)。技術力が無いからといって奇行に走ってはいけない。
そんなわけでみんなもっと雑に今日学んだこと、仕事でやったことをあちこちで発信していきましょう。
6月にすぐにポーランドに行くこともあって、この週の土日は早めに帰って家で過ごすことにしたので 8:00 にはシュッと那覇空港へ。
タクシーで、今年は本当に修学旅行生が沖縄に来てくれてありがたいという話があって、良かったですね〜とかコメントしていた。確かに昼飯を食べるために国際通りを歩いていると、どこを見ても修学旅行生しかいなくて、こんなにいるの、となったものなあ。
帰りの飛行機では引き続き積んである本を読んでいたけど、途中から軽く寝てしまった。
帰宅してから荷物開封の儀を終えて、RubyKaigi 2024 は一通り終わり。
今回は手作りの拭きガラスを買おうと、会期中の合間をみて国際通りの店を探してみると、いい感じのグラスはあるものの食洗機には使えませんというのが多くて、しょうがないので花器としても使えるものを適当にチョイスして買ってきた。
ちょうどうちのバラが満開に近かったので、剪定して飾るといい感じになった。大満足。
いやー、疲れた疲れた。と不在期間のあれこれを終えて、一息ついたあたりで祭り囃子が鳴り響きだして何だと思ったら浅草で三社祭があり、それに呼応して近所でも祭りが開催されていた。
今年は数年ぶりに、合同で神輿が何個も出るというやつらしく、賑わってはいたが休日に少しゆっくりさせてくれ〜というところに太鼓どんどんは中々厳しかった。
# kei [パソコン用語がサッパリわからん]
# な [あー、以前にトラブルが発生したせいだと聞いてます。>サーバー立ち上げの制限。わたしの修了後の話なんで詳細はよく知りま..]