タグ

ブックマーク / blog.satotaichi.info (8)

  • デスマサバイバルガイド | さにあらず

    はじめに#僕がよく知っている業界は SI だが、これに限らずソフトウェア開発の現場には、過酷な現場…いわゆるデスマーチが多いと言われている。 一方で、そのような過酷な現場を渡り歩き生き残ることでしか、良いプログラマになる方法は無いと言った考え方もある。僕の個人的な経験則からすると、この理屈はある程度合っていると思う反面で、合っていて欲しくないという気持ちは強い。 高い技術力をもつプログラマの全てがデスマ職人という訳ではない。 デスマーチに巻き込まれたと気が付いた時の妥当で基的な戦術は撤退戦だ。何か理由をつけて逃げ出すのが望ましい。つまり、休職なり退職なり、異動なりして、その職場から離れるのが望ましい、出社拒否も良い。しかしながら、何か様々な理由があって、そこから逃げ出せないことはあるだろう。 僕はもう長い事デスマーチに関わることなく生きられているが、徐々に忘れつつあるので、若いころに獲得

    デスマサバイバルガイド | さにあらず
    gfx
    gfx 2017/10/12
    やばい…
  • ci-yarn-upgradeというツールを作った | さにあらず

    yarnpkg を導入しているプロジェクトにライブラリの更新をプルリクエストとして通知してくれるツール ci-yarn-upgrade をリリースしました。 GitHub に置いといたんで、皆さまよしなに使って下さい。 https://github.com/taichi/ci-yarn-upgrade三か月ほど前に gfx がリリースしたci-npm-updateというツールがあったのをみんな覚えているでしょうか? npm dependencies を更新して GitHub Compare View のリンク付きで PR するツールを定期実行するCI でプルリク作ってくれる SaaS は結構色々あるのによくやるなぁ等と思ってみていた訳です。 尚、ライブラリの変更を PR でくれるサービスで僕が知っているのは以下の通りです。今現在 yarnpkg に対応しているサービスは無い。 https:

    ci-yarn-upgradeというツールを作った | さにあらず
    gfx
    gfx 2016/11/17
  • Kotlinに対する雑感 | さにあらず

    1.0.0 がリリースされました。やりましたね。 僕の観測範囲内に見えることが増えてきたので、興味位で少しずつ触っています。 まず、ブラウザだけで試せるチュートリアルが大変素晴らしいので、Kotlin が肌に合うかどうか確認するといいですよ。 Kotlin Koansjs で実装されたエディタなのにシンタックスハイライトだけでなく、入力補完がガンガン効くので凄く良い。 僕の理解#大体 3 日くらいかけて言語仕様やマニュアルの類を読みながらチュートリアルをこなした結果、 Kotlin は 安全な次世代の Groovy であるという理解に到達しました。 僕が Groovy に対して持っていた不満は、大体以下の通り。 ランタイムがデカ過ぎるgroovy-all-2.4.6-indy.jar が 6.5Mバイトコードエンハンス等の危険な黒魔術がカジュアルに動く型がありそうで、実は殆どない型があま

    Kotlinに対する雑感 | さにあらず
    gfx
    gfx 2016/02/24
  • Java用JSONパーザのベンチマークをした話 | さにあらず

    このたび JSON パーザのベンチマークを書きましたので、どうぞご査収下さい。 taichi/json-benchmarks Java8 がインストール済みの環境で、当該リポジトリを clone して と実行する事で追試できます。 結果について#jackson-databind が最速なので殆どの皆様におかれましては安心して下さい。 特に驚きに値するような事は何も起きていません。 僕のマシンで実行した結果はこちらです。(エビデンスが無いとの指摘を受け追記しました。) Json benchmark results結構な長文になってしまいましたので、マニアな皆様だけが続きを読んで下さい。 課題設定について#まず、おおまかな課題設定について説明します。 JMH を使った格的なベンチマークを書くJava 用 JSON パーザのショーケースを作る事で使い易いものを明らかにする結局どのパーザが速いの

    Java用JSONパーザのベンチマークをした話 | さにあらず
    gfx
    gfx 2015/08/20
  • 「Javaの鉱脈」でFlatBuffersの記事を書きました | さにあらず

    WEB+DB PRESS の Vol.86 で、オブジェクトシリアライゼーションの記事を書いたので是非読んでくださし。 2015/4/23 発売ですので、既に購入頂いてる方も多いと思います。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 https://gihyo.jp/dp/ebook/2015/978-4-7741-7350-4今回の記事における対象読者について#Java プログラマとしてそれなりに技術力が付いてくると気になるのがロギングで、そこは分かってる。ってエンジニアの皆様に向けて、じゃあシリアライゼーションどうよ?と言うのが今回の主題となっております。 記事の内容について#データベースとの I/O とかネットワーク I/O とかが遅すぎるので、シリアライゼーションフォーマットの変更による速度の改善なんつーものは、大体が妄想の類なんですけども、い

    「Javaの鉱脈」でFlatBuffersの記事を書きました | さにあらず
    gfx
    gfx 2015/04/27
    “バイナリプロトコル使いこなしてるのみるとカッコよく見えるかもしれねぇけど、テキストベースプロトコルであるところのJSONにしとけーって気持ちで一杯です”
  • JavaのTimSortがバグってる件について | さにあらず

    Python で実装され、その後 Java にも移植されたソートアルゴリズムである TimSort が盛大にバグっていることが発見されました。 このバグがどのようにして発生するのかについては、以下のドキュメントを精査して下さい。 TimSort fails with ArrayIndexOutOfBoundsException on worst case long arraysOpenJDK’s java.utils.Collection.sort() is broken: The good, the bad and the worst caseどんなことが起こるのか#通常の利用では想定しえない場所でArrayIndexOutOfBoundsExceptionが発生します。 例えば、以下のようなスタックトレースになります。 Exception in thread "main" java.l

    JavaのTimSortがバグってる件について | さにあらず
    gfx
    gfx 2015/02/26
  • 「Javaの鉱脈」でJVMオプションの記事を書きました | さにあらず

    WEB+DB PRESS の Vol.82 に、かなり気合いの入った JVM オプションの記事を書いたので、是非読んで頂きたい。 2014/8/23 発売ですので、既に購入頂いてる方も多いと思います。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 WEB+DB PRESS Vol.82@Gihyo Digital Publishing今回の記事における対象読者について#今回の記事は、ターゲットとして Java に余り時間をコミットしていないけども便利なので JVM 上で動くアプリケーションをウッカリ運用している人をイメージしながら書きました。 例えば、OSS ものだと Hadoop や ZooKeeper、Lucene や Solr、商用製品だと Stash とか JIRA とか confluence とかそういうものですね。 僕の観測範囲だと、PHP

    「Javaの鉱脈」でJVMオプションの記事を書きました | さにあらず
    gfx
    gfx 2014/08/26
  • go言語のテスティングフレームワークについて — さにあらず

    長いので結論だけ先に。 BDD風味に違和感が無いなら、Ginkgoがオススメ。 もっと軽くてシンプルなのが良いなら、Testifyがオススメ。 テスト対象となるコード 公式のHow to Write Go CodeからYour first libraryにあるコードを持ってきます。 package go_testing // Sqrt returns an approximation to the square root of x. func Sqrt(x float64) float64 { z := 1.0 for i := 0; i < 1000; i++ { z -= (z*z - x) / (2 * z) } return z } 標準で組込まれているテスト用ライブラリについて testing.* 実用性は確かにあって必要なものは揃ってる感あるのだけど、僕にはいくばくかの辛みがあ

  • 1