600000007

プログラムと折り紙のブログです。

サプライズやってよと無茶振りされたら

嫁にサプライズやってと無茶振りされる日々を送っています。 その期待に応えるべく様々なサプライズをやりましたが、もうアイデアが枯渇したのでアドバイスください。 サプライズとは びっくりさせることです。 ただし期待されているのは恐怖を感じる驚きで…

裁判員やってみた

裁判員やってみました。ある日突然裁判員の候補者リストに入りましたと通知が来て、それも忘れた頃に裁判やるよと連絡があり、運良く選任されて7日間裁判所に通いつめました。なかなかに刺激的かつ勉強になる体験だったので、もし機会があれば是非やってみて…

障害切り分け

いつものように後輩へ障害対応方法を指南していたところ、ふと我に返り「そもそも自分はどうやって切り分けているのだろう?」という疑問が湧いてきました。 経験的にこれを確認したほうが良い、そっちは関係ないなどということは分かっているんですが、どう…

バックギャモン動画撮影

私の職場では、昼休みの度に同僚とバックギャモンをプレイしています。 参加者が増えるにつれ、トーナメントをやってみたり、レーティングをつけてみたりと徐々に遊び方も進化していったのですが、そうなると当然やりたくなるのが動画撮影ですよね。 プレイ…

JJUG CCC 2016 Fallとキャリア

JJUG CCC 2016 Fallに参加しました。 可能な限りセッションは見たのですが、特に印象的だったものについて。 トレンドとキャリア [CCC2016Fall]Be a great engineer! #jjug_ccc #ccc_a1 // Speaker Deck Javaエンジニアのキャリアを考えるパネルディスカッシ…

かっこわるいプルリク

JNAにプルリクをマージしてもらえました。 やったー。 長かったー。どれくらい長かったかというと、2ヶ月以上かかってます。 マージしてもらったプルリクをみるとオープンしたのは3日前なのですが、これはぐだぐだになったプルリクをクローズして作り直した…

Backgammon:エースポイントゲームの定理。

バックギャモンとは | 日本バックギャモン協会要するにエースポイントゲームに対してどんなに上手に対応したとしても、最悪の目が出てブロットができてしまうことがあるのはしょうがないよね、というお話です。 定理 エースポイントゲームでは、ブロットがで…

第9回Jenkins勉強会 Jenkins+Windows

第9回Jenkins勉強会 - connpassにてLTで登壇させて頂きました。slides.comCIツールは乱立していますが、Windowsに対応しているものって少ないですよね。ただこんな手間がかかる状況だとJenkinsおじさんを量産するのでは?という意見は反論できませんでした。…

JJUG CCC 後日談

社内にて 今回は初めて同僚をJJUG CCCに誘ってみました。 その結果、後輩が一人参加してくれて、会場を右往左往する姿を見ることができました。そして後日、週一で行っている社内勉強会にて実際に見たセッションを紹介することになりました。 私と後輩で交互…

Ant「ビルドできません」Travis「よし通れ」

色々順番を間違ってる気がしますが、人生初LTでした。 初LTはJJUGのビール片手にLT&納涼会でやりたいと思っていたので、実現して嬉しかったです。 運営の皆様お世話になりました。 Ant「ビルドできません」Travis「よし通れ」 from sakamoto_desu www.slides…

Macでssreflect

以下はssreflectをMacで動かそうとした悪戦苦闘の記録です。 最終的には、以下のような構成になりました。 Mac OS X 10.9.4 Emacs 24.3.1 ProofGeneral4.2 Coq8.4pl4 ssreflect1.5 CoqIDE or ProofGeneral Mac OS X 10.9では、CoqIDE8.4は起動できません。既…

プログラマーは定理証明支援系を勉強すべきか?

定理証明支援って何? 最近、定理証明支援に関連するニュースがいくつか飛び込んできました。あるときはOpenSSLのバグを見つけ、あるときは数学の問題を解決しています。 それらに共通する定理証明支援とは何かを簡単に説明します。定理証明支援の「定理」「…

JarファイルからManifestを読む

意外と手こずったのでメモ。 特定のJarのManifestを読む方法です。 単にMETA-INF/MANIFEST.MF をリソースとして読もうとするだけだと、classpathが通っている他のJarからも探してしまいうまく行きませんでした。 以下は呼び出しているクラスを保持しているJa…

Gradle初心者がはまったこと、悩んだ事。

ここ2週間程、プロジェクトのビルド環境を再整理していてGradleをがっつり触りました。 GradleもGroovyも初めてだったのですが、最初は慣れなくて苦労しました。 その代わりGradle脳になってしまえば非常に簡潔に分かりやすく書けて良いですね。素敵です。以…

オブジェクト指向のこころ

@sakamoto_desu この本おすすめですよ http://t.co/TOdRBCZF4A— ふ''れいす (@bleis) 2013, 5月 22あれから5ヶ月。やっと読み終わりました。 いやー、ちょっと間に色々やっていたもんで。結論から言うと、オブジェクト指向に対するもやもやがかなりすっきり…

やっぱりassertThatは良いよねという話

追記 2016/6/12 テスト結果のメッセージを読みやすくしたいだけなら、assertThatにreasonを書く方が楽ですね。stackoverflow.com @Test public void test() { File file = new File("/tmp/hoge"); assertThat(file.getAbsoluteFile() + " should exist", fil…

第19回折紙探偵団コンベンション

今年も折紙探偵団コンベンションに参加してきました。盛況でしたねー。 相変わらず老若男女国内外と様々な人達が参加していました。 折り紙のファン層って不思議ですね。今回は初めてユニット系や難易度が低めの教室に参加しました。 いや・・・その・・・久…

Java8のLambdaの型推論が実行時にならいと型が分からない理由(追記あり)

JJUGナイトセミナー「Inside Lambda」に参加してきました。 Java8のLambdaの概要と、実装方法についてのお話でした。 非常に面白かったのですが、その中でLambdaの型推論が実行時にならいと型が分からないという話があったのでまとめてみます。 Lambdaの型推…

他のMacのTime Machineバックアップからデータを復元する方法。

Mac

メインで使っていたMac Book Proに水をぶっかけてしまい、泣く泣くMac Book Airへデータを移行しました。 その際、iTunesやらiPhotoのデータを復旧するのに苦労したのでメモしておきます。この質問が参考になりました。 環境 旧Mac Book Pro OS X 10.7 外付…

Scala Conferenceスタッフやってみた(謝罪あり)

3/2(日)、Scala Conference in Japan 2013が開催されました。 私はスタッフとして準備に奔走していましたが、無事終了しほっとしております。 多くの方にご来場頂き、誠に感謝です。そんな中で、次はスタッフを手伝いたい!という声を多数聞いたので、参考…

macでデフォルトのcore出力設定を変える方法

mac

環境 OS X 10.8.2 Mountain Lion ulimit coreはデフォルトでは出力サイズが0になっているので出力されません。 出るようにするにはulimitコマンドを使います。 まずは現状の確認。 $ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) un…

後輩に教えたら喜ばれたキーバインドの話

ある日の事。 ぺこぺことキーボードを叩きながら後輩とペアプロしていたら、「その操作どうやるんですか?ショートカットとか覚えたいっす!かっこいいっす!」と情熱的な眼差しを向けられました。俺も昔、全く同じ事を思ったなあと回想しながら、さて何を教…

key-value形式のvalueを取得する正規表現

久々にややこしい正規表現を書いたのでメモ。 以下のような形式のテキストから、valueだけをぬきとります。 key="value"ただし、valueに' " ' を含めるために ' ¥ ' でエスケープされる可能性も考慮します。 こんな感じです。 key="value" key="va¥"lue" key…

case class B extends case class A はダメ?

case classを継承したcase classを書いていたらwarningがでました。 case class A (x:Int) case class B (override val x:Int) extends A(x)コンパイルは通るのですが・・・ [warn] there were 1 deprecation warnings; re-run with -deprecation for detail…

函数プログラミングの集い 2012 in Tokyo

函数プログラミングの集い 2012 in Tokyoに参加してきました。初めてのお茶の水女子大学でしたが、関数プログラマーっぽい人の後をつけていったら無事到着しました。 我ながら無駄な眼力です。 個人的に一番面白かったのは、@ksknacさんの「関数プログラミン…

照れくさいからお祝いメッセージを難読化&アスキーアートにしてみた

同僚が入籍しました。 お祝いメッセージを送りたいのですが真正面から伝えるのはなんだか照れくさいですよね。 ということで、お祝いメッセージを難読化してみました。 これなら照れくさくない! eval (%w( p r i n t f ( " %s ",[02* 0x0 2*0b1 0 *0 b 10 1…

第18回折紙探偵団コンベンション

第18回折紙探偵団コンベンションの3日目(8/12)に参加してきました。 時既に遅し実はコンベンションが開催されているのに気づいた時には既に2日目が始まっていました。 参加申し込みもとうの昔に締め切られていたのですが、定員までは引き続き募集しますとい…

素人がゼロからプライベート名刺をデザインしてみた

プライベート名刺が欲しい。 その決意から完成までを書き留めておきます。 モチベーション プログラムの勉強会に顔を出すようになって、プライベート用名刺が欲しくなりました。ある日のイベント後に突然名刺交換が始まったのですが、渡せるのは会社の名刺し…

Jenkins ユーザ・カンファレンス 2012 東京

帰宅してブログに書くまでがJenkinseユーザーカンファレンス!という事で書きます。Jenkins ユーザ・カンファレンス 2012 東京に参加してきました。 参加申し込み1000人超え。勢いありますねー。参加したセッションは全てさったホールです。 そして案の定知…

Scala by Example‎ > 演習9.1.1解答案

Scala by Example > 演習9.1.1の解答案です。 def isort(xs: List[Int]): List[Int] = xs match { case List() => List() case x :: xs1 => insert(x, isort(xs1)) } def insert(x: Int, xs: List[Int]): List[Int] = xs match { case List() => List(x) cas…