むー、UTF-8コードをeucとかに変換するにはどうすればいいんだろう…。あー、もう午前4時だよ。プログラムを作り始めると時間がすぐ無くなる脳。。。
寝る前にいつものように日記チェックをしてたらがまたやってくれました。
勘弁してくれって…。何で深夜の4時に野郎一人で大笑いせなあかんのですか。
kitaさん最高です。
馬鹿笑いして思い出した。UTF-8を扱うならUconvか。今の鯖に入ってないから、今作成中のプラグインはお蔵入りか。日記を書く時に結構使えると思ったのになぁ。
そんなわけでプラグインを作ってみました。sidebarにあるようにSlashdot.orgから最新ニュースの一覧を持ってきて表示するだけです。引数で表示数も変えられるようにしたつもり。RDFとかRSSならどうにでも流用できると思うのでもうちょいいじってみます。むー、Uconv周りがどうにかなれば実用性がもう少しはアップすると思うのだが…。
テストしてくれる方はslashdot.rbからどうぞ。
追記:.rbがCGIとしてしか動かないようなので拡張子をtxtに変えています。センス無いな…。
追記:timeoutの設定や呼び出すたびにSlashdot.orgにアクセスしてしまうので、ほとんど使い物にならないような気がしてきた…。
tDiaryのHEADにTest_NYEARがマージされたようです。長年日記機能はマジでお勧めです。
買いましたよ 少林サッカー デラックス版 [DVD](チャウ・シンチー)を。この週末は笑いっぱなしですわ。ヴィッキー・チャオ最高。
調子にのってもう一つプラグインを作ってみました。Security Akademeiaから最新ニュースの一覧を持ってきて表示します。テストしてくれる方はakademeia.rbからどうぞ。
しっかし、日記を開くたびにアクセスするというのはネットワークによろしくないな。キャッシュディレクトリにタイムスタンプ確認のデータファイルとかを作成するとかで対処できるだろうか。あとUTF-8も処理できるようにしたい。。。セパレータの変更とかはrecent_comment.rbあたりを眺めればすぐに解決できそうだな。
むー、日記を開く時のレスポンスの重さはどうにかしないといかんな…。
とりあえず、RDFやRSSは共通仕様の物が多いのでニュースサイトごとにプラグインを作るのはやめて取得したいサイトを引数から指定してニュースを取得するheadline.rbとして作り直しました。
キャッシュ機能を実装していないので日記の表示速度が環境によっては激遅になる可能性があります。使い方とかについては中身に書いてあります。
会社の忘年会には不参加、所属チームの忘年会には参加、若手組(?)の忘年会には参加。
実家のADSLモデム内蔵ルータが故障しているらしぃ。うーん、電話越しじゃどうにもこうにもこうにも症状がわからない。なんか聞く感じではADSLの状態をしめすランプが異常点灯しているので故障の可能性が大と判断。
速やかに保証書と一緒に故障センターに送ってもらうことにする…。
Googleソフトウェアの詰め合わせ。Gmail Notifierはどこからダウンロードするのかも探さないと見つからなかったので、こうやってまとめてもらえると助かる。
ドルマゲス2回目が倒せないのでレポートでも書くか…。
とりあえず、何となくぼんやりしている物をカテゴライズして論じるのは釣り芸・煽り芸では手っ取り早い手段。
で、ma.laさんの話題に触れている人達の多くが「かとゆー見ているようなネットジャンキー」と「インターネット=Yahooな人達」を「一般人」でくくって、「RSSリーダーやSBMを使っているだけの人」と「ma.laさんのようにあっと驚くようなプロダクトを作り出す人」を「geek」としてくくっているんだけど、それは無理がありすぎじゃないのと思う。どうせやるなら、Early Adopterとかその辺のカテゴライズ方法で論じろと。
というか、この話は別に対立軸を作るというわけでもなんでもなくて、ニュースサイトを作る・見るくらいのネットジャンキーなんだから、よりネットジャンキーになれるように・他のネットジャンキーの幸せのために、RSSリーダーやSBMを使えよ!って話だと思うんだけど違うの?
まあ、マニアやジャンキーは行為そのものに時間を費やすのが至福の時だろうから(目的と手段の逆転)、どうでもいいと言えばどうでもいいや。
えーマジCVS!!CVSが許されるのは小学生までだよねとも言われる昨今ですが、自分もTeXで書いてる論文、雑多なプログラム管理は全てSubversionで管理してます。
研究室でも論文の版管理しろと言われて、ファイルに日付やらver1.0とか2.0とかつけて共有フォルダに入れないとだめなんですが、ハードコピーして名前で管理するなんてやってらんない。TortoiseSVNだと、xdocdiffと組み合わせればdoc,xlsやpdfも差分管理できるようになるのがいい感じ。
というわけで、研究室でSubversion使ってない人は使うようにしましょう。
Webショッピングサイトの仕様を決定して、UML作成。グループ単位での実習だったので、TAはいつもどおりぼーっとしていた。
以下の変更を加えてコミットしました。
明日の朝にはanonymous cvsまで出回ると思います。
製品のやつとまったく違って、フィールドからそのまま戦闘モードに切り替わるタイプと、専用のフィールドに移動するタイプの二つ。これ、製品版とはまったく違うものだけどこれはこれでいい味出てるなー。
ちなみにP3Fesは未だに手付かずです。一日が32時間くらいあればプレイするのに!
TSUTAYAの開店と同時に買ってきた。予想ではそこそこ人がいるような気がしていたんだけど、Wii Fit を買い求める人は皆無。んで、彼女が家に来るのを待ってからだらだら開封してプレイ。以下感想。
と、いう感じで家で気軽に運動をするにはもってこいのゲームとなってる。あとバランスゲームはWiiスポーツののりで楽しめるのもプラス評価。
ノート PC に Win とか Mac な環境を持っていないので、旅行中の充電をするための AC アダプタと、買ったときに張った保護フィルムの中に糸くずが入っていることがやたらと気になりだしたので、張り直し用の保護フィルムを購入。
ところで、iPod touch にも shuffle のように Dock がついてくるものだと思っていたんだけど、別売りなんだねえ。みんな買ってたりするんだろうか、それとも自作?
Elecom iPod用AC充電器(ホワイト) AVD-ACAD1NWH
エレコム
(no price)
ELECOM iPod 2nd touch/フルサイズ液晶保護フィルム AVD-PFFA2TCR
エレコム
(no price)
今年も早いもので残り一ヶ月。
ちゃんとした振り返りは良かった探しリースやその辺でやるとして、今年はひたすら何かしらの病院に行ってたような気がするなあ。歯医者はまだ継続中だし。来年はもう少し抑えられるといいのだけど。
Amazonでちゃんと発売日到着。
なんか朝の上野ヨドバシでは300人とかそういうレベルで並んでいるのを見かけたけど、ゲームでこれだけの行列になるのってMHシリーズくらいなのだなあ。というか、並ばせてニュースになったところで誰も幸せにならないのでとっととDL販売に移行してくれればいいのにね。
一足早いクリスマス的なボーナス的な何かとして妻と二人で買ってしまった。
通常価格38500円のところが楽天のとあるショップで32500円というあり得ない値段で並んでいるのを見かけたので即決して二日ほどで到着した。これ、次の日には同じショップからはバーミックス関連が全て消えていたので何となく値付けを間違えたのかなあ。取り消しのような動きも無いので格安で特をしたと思うことにする。
さっそく、夕食にカボチャとタマネギのポタージュを(妻が)作ってみたけど、お手軽に作れてなおかつ皮とかその辺も全部加工できるのでだいぶ良い感じ。次はミートソースとかその辺かなあ。
数十GB のファイルを SSH 越しにダウンロードする必要があってどうやった物かなあと調べてみたら rsync でできるらしい。
rsync -aP src dist
-P オプションは"--partial --progress"をまとめたもので、これを付けると途中で中断しても、続きをよしなにやってくれるみたい。便利-。
夏くらいからしばらく backbone.js と Rails 3.1 で何かを作っていたんだけど、一段落してきたので使っていた JavaScript のライブラリ達を紹介しておく。
省略
JavaScript の ActiveSupport みたいな奴
クライアントサイドMVCっぽいものを実現するライブラリ
Object.toJSON() できるようになる
wycats 先生が作ったテンプレートライブラリ、mustache の拡張。
フロントエンドで request を投げる前に validation を実行して input の右側に警告を出したりできる
マウスオーバーでtooltip を表示できる
ajax でファイルのアップロードを簡単に実行する
ajax 利用時のくるくるを JS だけで作成できる
今年の初めに比べたらだいぶ書けるようにはなったけどサーバーサイドに至ってはさっぱりわからないし、コールバックまみれを上手くデザインできるようになるにはまだまだ勉強が必要だのう。
やっと整頓した... → フランス旅行 - a set on Flickr
フランスに旅行する時のご参考にどうぞ。ルーヴル美術館はホントオススメです。
tDiary で GFM 記法と Twitter のオートリンクを良い感じに使うことができる tdiary-style-gfm の 0.1.1 をリリースした。このバージョンでは 0.1.0 の時に発生していたプラグイン呼び出しの記法を破壊してしまう不具合が修正されている。 @yhara ++
使うには tDiary-4.0.2 以降で Gemfile または Gemfile.local に gem 'tdiary-style-gfm'
と書いて bundle install ないし、bundle update すると使えるようになります。ご活用ください。
妻ともども、DoCoMo のガラケーと softbank の iPhone をずーっと二台持ちしていたけど、DoCoMo で iPhone という状態に二人とも契約を変更したので、softbank の回線二つを解約してしまった。2年目の節目の年とか考えていると、トータルで損をするのでとにかく解約することにした。
anker の USB 充電アダプタが便利すぎるのですっかりファンになってしまい、手元のガジェットあれこれを anker 製品にリプレイスしている。
B00OPVTAKQ
今使っているのは cheero の 10400mAh モデルなんだけど、anker の第2世代のやつは 16000 mAh でサイズも同じか細さだと細いくらいというやつなので取り替え。
Anker 5台同時 充電ステーション - Anker 40W 5ポート USB急速充電器のために
-
¥4,300
新発売の充電箱も買ってみた。これたかが箱で 2800 円は高いだろ~と思ったけど、実際の品はだいぶ重厚でしっかりと床や机において、タブレットを立てかけても倒れない重さで中々良く出来ていると思う。我が家は妻も iPhone, iPad mini を持っていて、自分も iPhone, kindle fire HDX, iPad という感じなので、この箱くらいの置き場所があるのは調度良かった。
micro USB ケーブルもガジェットについてきたやつをそれとなく使っていたけど、この機会に新調した。ちゃんと計測したわけではないけど、ケーブルが他のそれより太いので充電は早いんじゃないかな(適当)
バタバタしていてすっかり忘れていたけど、PS Store で HD レンタルして見た。
基本的にコミックに忠実に描写しつつシャアが着々と復讐の準備を整えていく様子が描かれているのが良かった。1-2 話はジブリっぽいなあという印象があったけど、この作品はそうでもなかったのは戦場が多かったからかなあ。
引っ越しお約束の収納ケースの形が合わなくて今まで使っていたものが使えない、という状況になったのでクローゼットの大きさを図ってぎりぎりになるように Fits のケースを大量に買った。これ一つは2000円前後だけどアレもこれもと買いだすと結構な値段になってつらい...
天馬 衣装ケース フィッツケース クローゼット用 L-30 カプチーノ 幅30×奥行53×高さ30cm
天馬(Tenma)
¥2,952
5 年ぶりのメジャーバージョンアップとなる Psych 3.0.0 をリリースした。メジャーバージョンアップらしく、syck のために残していたコードをガッと消したりしている。
https://github.com/ruby/psych/releases/tag/v3.0.0
ChangeLog や History というものを更新しなくなってからの状態で引き継いだので、改めてどうやっていくかというのを検討中なのですがとりあえず psych リポジトリの releases で省力でやる感じにしました。
手伝ってくれる人がいたら声かけてください。
Pepabo Managers Advent Calendar 2018 1日目の記事です。
@hsbt が勤務先であるペパボで最近やっているマネジメントについて紹介します。昨年は執行役員CPO兼業務プロセス革新室室長として、主に社内の情報システムやワークフローのアップデートについて携わってきましたが、今年度は技術部長としてペパボの技術者組織を率いる=エンジニアリングマネジメントを担当しています。
エンジニアリングマネジメントと、ただのマネジメントではなくわざわざ「エンジニアリング」と頭につけているからには、それ特有の何かしらの特徴があると考えています。一つにはエンジニアは専門職であるということがあると思います。その専門職集団をマネジメントすることで成果を出すためにペパボでは以下のような事項を @hsbt は執行しています。
1つ目のエンジニアの評価の基準をどのように定め、どのような期間で行うのかということを決めるというのは想像しやすいと思います。なお、ペパボではエンジニアの評価の基準となる「技術力」を以下のように定義しています。
技術力の定義は個人や組織で定義は様々なものがあると思いますが、単に作り上げる=プログラミング能力が優れているというだけではなく、メンテナンス性の高いコードを書くこと、書いたコードが社内外の人々やモノを動かすことなどを総合的に勘案して「技術力」と定義しているのはわかりやすいと思います。この技術力の評価に基づいて半期に一度職位制度による等級として上位のエンジニアを任命したり、報酬としての給与の更新を行っています。また、評価だけではなく、新卒・中途の両方の採用においても、合否の基準や観点を定めたり、採用のフローを更新したりしています。
2つ目のエンジニアとしての行動・判断基準の醸成については、ペパボのエンジニアとしてどのような行動を是として、どのような行動を非とするかということの方向性を定め、それを評価制度に組み込むことで組織としての行動のスピードを上げるということをしています。
わかりやすい基準の一例としてはペパボの価値基準である「みんなと仲良くすること」「ファンを増やすこと」「アウトプットすること」などがありますが、それら以外にも様々なエンジニアの価値基準があります。
例えば、「Nice Try」という考え方があります。これは常に「失敗するということは仕事をしているということ、2回目は起こさないように改善を重ねてまた挑戦すれば良い」と @hsbt は言い続けており、ペパボの社内では何かに失敗した時に誰もが「Nice Try」と声をかけて挑戦することを恐れないという文化が作られています。@hsbt はなかなかこのようなコンセプチュアルなモノを考えるのは苦手なのですが、@antipop が得意なので 0→1は乗っかることで 1→100にするということを主に担当しています。(他にも価値基準としては "速" とか色々あります)
3つ目、最後のエンジニア自身が先の二つを行うというのは、制度や価値基準をバックオフィスの部門であったり、社外から決められて採用するのではなく、エンジニアである @hsbt やペパボのエンジニア自身が考えて、実行して、いい場合は継続、よくない場合はアップデートをするということを繰り返すということです。
ペパボのエンジニアは2018/12の時点で約90名ほどいます。この人数を @antipop と @hsbt の二人だけで全て評価したり、価値基準を作って全員の方向性を決めていくというのはなかなか大変なため、CTL(チーフテクニカルリード)を事業部ごとに設置したり、今年はCTLを補佐するTL(テクニカルリード)を設置したりすることで、トップダウンによるマネジメントだけではなく、ボトムアップによるマネジメントも実行できるようにしました。(実際に CTL/TL から @antipop や @hsbt にもたくさん意見が来ます)
このCTL/TLのメンバーと共に、先に述べた3つの事項を継続的に執行しているというのが @hsbt がペパボで行っているエンジニアリングマネジメントです。プロダクトマネジメントに加えて、エンジニアリングマネジメントが重要と言われる昨今ですが、「マネジメント」と言っても何をすればいいのかわからないという方の参考になれば幸いです。
2日目に頑張って外に出すぎたのでこの日は ICONSIAM で軽く買い物してからひたすらホテルでゴロゴロしていた。
ICONSIAM、6階から先はまだ工事中だから待ってね、という状態でオープンしていて勢いしかなかった。全部できた頃にもう一度きたいなあ。この後は Apple Store によって「人多いねー」って話したりしてホテルに戻った。タイ、iPhone 使ってる人が東南アジアにしては多い気がする。
午後過ぎに昼食ついでのアフタヌーンティーを食べてからプールで泳いでひたすら寝たり、思い出したようにアドベントカレンダーのエントリを書いたりしていた。まだまだ遊び方が中途半端な気がするなー。もっとリセットをちゃんとできるようにしたい。
鹿児島 Ruby 会議も終わったので、妻と合流して一年お疲れさんの鹿児島旅行を開始した。レンタカーで鹿児島空港まで迎えに行ってから、前から行ってみようと思っていた蒲生の楠へ。日本一、と謳ってるだけあって今にも顔が浮き出て話しだしそうなくらいの雰囲気を持っているのがよかった。
蒲生の楠の後はひたすら南下をして一日目の宿の指宿の白水館へ。途中の広場で産業祭りというのをやっていたので寄ってみたら、トヨタの水素燃料カーの MIRAI が展示されていたので、実際に乗ってみるなどして遊んでいた。相当高級感があるのはいいんだけど、鹿児島には今度最初の水素ステーションができます、みたいな普及具合だと厳しいよなあ。都内でも二桁くらいしかないのもさらに厳しい。
白水館、2回目なんだけど1回目に来た時と同じ部屋だったらしく WiFi が勝手につながって最初困惑してしまった。後、PS4 を繋いでデスストランディングをプレイしようと思ったんだけど、TV が古いのか全く映らなくて「うーん」感が高まってしまった。日本のホテル、WiFi もなんだけど TV もしょぼいのが多くて、ガッカリすることが多い。
到着してから砂蒸し風呂に埋まったり、鹿児島料理を食べ尽くしてから就寝。温泉自体はかなり満足。
今回はちょっとだけ無料枠が復活した SpatialChat に集まって開催していた。discord は discord で良いんだけど、Spatial の方も使い勝手は良いので新鮮な気持ちだった。
https://asakusarb.esa.io/posts/1015
今日は Ruby 3.0 の Ractor について https://gist.github.com/k-tsj/afa6595ecdcaa5daed870ed23b4ca525 を眺めてふむふむ話したり、default gems の依存関係の整頓をやっていた。標準添付ライブラリを眺めているとよく使われるライブラリとかそういう傾向が見えてきて面白い。
Kindle Unlimited で読んだ。性風俗のいびつな現場ともオーバーラップするテーマと内容だったけど、同じような低い収入であっても地方でなんかうまいことやってそれなりに幸福と感じながら暮らしているという話もあったりして「うーむ」となる内容だった。
それにしても、家賃を滞納している女性が、夜逃げのような形だったので、筆者がアドバイスとしてまずは住民票を移して公的機関に助けを求めたらどうか、という話に「住所がバレて家賃を払えと言われる、警察に捕まる」とかメチャクチャな考えに陥っていて、支援というのはこうも難しいものかと感じてしまった。
読み終わると暗い気持ちになること間違いなしなので、おすすめではないけど社会的包含などに興味ある人は読むと良さそうです。
発売していたので読んだ。よせばいいのに最貧困女子からの流れでまんま紹介されているような描写があって、さらにダウナーな気持ちになってしまった。
九条の大罪、面白いんだけど、ウシジマくんの比ではないくらいコマが飛びまくっていて、途中に起きたことを埋めるのがやや大変。
https://github.com/ruby/snap.ruby と https://snapcraft.io/ruby で細々とメンテをしている Ruby の snap パッケージに 2.7.7, 3.0.5, 3.1.3 を追加してリリースしておいた。
最初、remote-build でビルドしてみると --with-baseruby
が無いことで落ちたりして謎だったけど、その辺は雑に apt パッケージを追加して解消したりしておいた。この辺も、細々メンテでしかないので、リリース後のバイナリ更新業をまとめて自動化、みたいな枠組みで頑張ろう。
自動配信されていていたのでシュッと読んだ。
とはいえ、コミックDaysのアフタヌーンのサブスクリプションに登録しているので毎号は見ていて内容は全部知っている内容だった。この辺のやつ、コミックで改めて買って保存しておく意味をちょっと考えてしまう。
犬飼教授、ラスボス感あるけどこの時点で出てきてもうひと段落みたいなストーリーだったので、この先どう繋げていくのかは気になる。実家旅行編はクラスメイトの個性を深掘りする感じかなあ。
11月中旬にやる予定だった Ruby の開発者会議の延長線があったので参加してきた。
https://bugs.ruby-lang.org/issues/19074
特にアジェンダなどは持ち込んでなかったので、あれこれ話しているのを聞きながら、Ruby 3.2.0 までにやらねば〜ということを思い出してはコメントしたりしつつ https://bugs.ruby-lang.org/issues/19074 の作業を進めていた。
残り 1ヶ月を切っていてなかなかタイトになってきたけど、積み残しているのを整頓したりせねば〜。
Ruby を使いたいのだが、プライバシーポリシーがないソフトウェアを使うことができない、という組織があるらしく、なるほど、となったので作った。
ページの最後に書いてあるとおり PHP が用意しているものをベースに軽く変えた内容になっている。他の言語はどうかな〜と調べてみると
どこも Foundation であったり、Google であったりとガチすぎて無理、となったので PHP のポリシーと同じ程度のやつにしようという流れにしたという経緯。
Ruby の JSON ライブラリである json gem について PR や issues をざーっと眺めて自分が理解できる範囲のものはガチャガチャマージして 2.7.0 としてリリースした。
https://github.com/flori/json/releases/tag/v2.7.0
releases を引っ張ってみると前回のリリースが1年前のこの時期ということもあって、もっと細かくリリースしておけばよかったと反省したりした。もっともっと雑にリリースして雑に直す、というようにしていかねば。
# こ〜りん [このあたりが参考になるんでは? > UTF-8 to euc http://fuji.sakura.ne.jp/~y..]
# しばた [ありがとうございます。しかしいかんせんUconvが手に入らず…。telnetも使えないので自分でインストールすること..]
# Nyan2 [愛生会病院を笑うなよぅ(つД`)]
# koyasu [うちは plugin/ の下については .htaccess で .rb を CGI として実行しないように設定してま..]