タグ

2015年5月9日のブックマーク (10件)

  • エンジニアから非エンジニアに歩み寄る方が捗る - Konifar's WIP

    エンジニアのメンバーと話していると、 なんだかもどかしい気持ちになることがあります。 なんか話が噛み合わないというか、すごく他責な言い方をすると 「もっと開発のこと理解してほしいなぁ」と感じてしまう時があるんですよね。例えば、難易度の高い修正をさらっとできそうな感じで話されたりとか、逆に超簡単なのに難しいと思って遠慮されてたとか。そういう認識の違いから来るもどかしさです。 最近、このもどかしさを解消するには エンジニアから非エンジニアに歩み寄る方がいいなぁと思い始めたので、考えをまとめてみます。 相手の立場に立って考え直す このもどかしさ何とかならないかなぁと考えていた時に、 SHIROBAKO 17話『私どこにいるんでしょうか…』を見ました。 anicobin.ldblog.jp この回では、新人制作の佐藤さんがアニメーターの遠藤さんにちょっとキツいスケジュールの仕事をお願いし行くシー

    エンジニアから非エンジニアに歩み寄る方が捗る - Konifar's WIP
    progd
    progd 2015/05/09
    ITエンジニアが特殊なわけじゃなくて専門分野それぞれで同じようなことあるんだと思う、経営者にいきなり「経営わからない?それくらい自分で試行錯誤してキャッチアップしてよ」とか言われたらどうしようもない
  • MySQL Connector/J (JDBC ドライバ)の罠まとめ - ~saiya/hatenablog

    MySQL JDBC ドライバ(MySQL Connector/J)、JavaMySQL といえばまずコレだが、これまた地味に罠が多い(そして多くの人が踏んで苦しむ)のでまとめてみた。 (2015/03/19) こちら のコメント欄でご指摘ただいた wait_timeout の件について記事修正いたしました。 Summary 以下、いずれもプログラム設計時に理解しておかないと、開発中は大丈夫そうでも実用した途端に苦しまされれてしかも設計から治す羽目になる要注意な罠である: SELECT 結果は全部メモリに載ってしまう (デフォルト設定で) 大量 SELECT する場合は FetchSize, ResultSetType を要設定 利用時には制約があるので、設計段階から考慮しなければならない (後述) idle 時間の「合計で」コネクションが切られる 前回のクエリ処理から一定時間以上経

    MySQL Connector/J (JDBC ドライバ)の罠まとめ - ~saiya/hatenablog
    progd
    progd 2015/05/09
  • Javaでのnullチェックのパフォーマンス - きしだのHatena

    Javaでのプログラムでは、Optionalが入ったとはいえ、nullとのつきあいは依然として重要です。 そんな中で、nullが入ってると困る処理を書くときには、nullチェックを行うほうが安全です。 そのとき、どのようにnullチェックを行うかというのが問題になります。 Java7からは、Objects.requiredNonNullというメソッドが導入されたので、このメソッドを使って、以降の処理でnullじゃないことを保証するということができます。 けど、このrequiredNonNullが遅いんじゃないかという話があるので、どう遅いのか調べてみました。 requireNonNullと同様に、値がnullだったらNullPointerExceptionを吐いて、null以外だったら素通りするという書き方のひとつに、getClassメソッドを呼び出すというものがあるので、これと比べてみま

    Javaでのnullチェックのパフォーマンス - きしだのHatena
    progd
    progd 2015/05/09
  • 品質におけるコメントの役割。あるいは、レビューとコメント - きしだのHatena

    昨日のエントリでも書いたきょんくんとの会話なんだけど、なんとなく、コメントとテストは同じように扱えるんではないかという認識のもとで話がすすんでた。もちろん、コメント書けばテスト書かなくていいとかそういうのではなくて。 テストは、書きやすい対象と書きにくい対象がある。関数的に計算を行うコードの場合はテストが書きやすい。一方で、関数的ではなく副作用のあるコードはテストが書きにくい。データベースを扱ったり通信したりUIがあったり。 そして、そのようなテストを書きにくいときに、コメントはテストのように品質のために使えるんではないか。 で、問題は、どのように品質のために使うかということなんだけど、コードレビューのときの指針として使えばいいんじゃないかなと思った。 コードレビューのとき、コードだけを見ていると、名前付けとかコードの順番とか条件文の使い方とか、体裁的なものだけのレビューになりがち。そこで

    品質におけるコメントの役割。あるいは、レビューとコメント - きしだのHatena
    progd
    progd 2015/05/09
  • コードに対してコメントを書くと実装に関するコメントになる - きしだのHatena

    おととい、渋谷JVMというイベントがあって登壇させてもらったんですが、そのあとビール飲んでるときに、ぼくが「コード書く前にコメントだけ書くのいいよね」と言ったあとの返答としてきょんくん(kyon_mm)が言った言葉。 全体としては 「コード先に書いてそのコードに対してテストを書くと実装に対するテストになるし、コードを先に書いてそのコードに対してコメントを書くと実装に対するコメントになる」 という感じ。 ここに至るまでの話もおもしろかったんだけど、ここでは、コメントについて書いてみます。 まず、実装に対するコメントってどういうのかというと、こういうの。 id = findId(name); if(id == -1){ // idが-1だったとき登録 register(name); } いやそれはコード見ればわかるから、ってやつですね。 これは、こうやるとより適切です。 id = findId

    コードに対してコメントを書くと実装に関するコメントになる - きしだのHatena
    progd
    progd 2015/05/09
  • 会社員になってJJUG CCCのスポンサーセッションで発表してきた - きしだのHatena

    2月1日からLINE Fukuoka株式会社というところで会社員をやっております。 ということで、JJUG CCC 2015 Springのスポンサーをやらせてもらって、スポンサーセッションで登壇してきました。 だれも教えてくれないJavaの世界。 あと、ぼくが会社員になったわけ。 from なおき きしだ ※4/15 15:41追記 P37の「近所の定屋」は今週値上げして490円になりました 内容としては、Javaエンジニア養成読の記事をベースに、Java歴史について、技術トレンドや経済的な情勢、そしてハードウェアの事情から捉えてみて、いろいろな流れのなかで影響を受けてきたことを示しつつ、コミュニティがどう変遷してきたか、個人的にこの先をどう考えて動いてたかってのを、ふんわりと説明したかった感じです。 ということで、タイトルにある「誰も教えてくれないJavaの世界」というのは、そう

    会社員になってJJUG CCCのスポンサーセッションで発表してきた - きしだのHatena
    progd
    progd 2015/05/09
  • NeoBundleのプラグイン管理をTOMLに任せてvimrcをスッキリさせる

    NeoBundleがTOML1 parserを導入して、TOMLファイルにプラグイン管理を任せられるようになった。 Add TOML parser · Shougo/neobundle.vim@75e836f 設定ファイルのサンプル vimrcの設定は、ドキュメントとShougo氏のvimrc2を参考にすると、neobundle#begin〜neobundle#endの間を以下のように書けば良さそうだ。 call neobundle#begin(expand('~/.vim/bundle/')) if neobundle#has_cache() " キャッシュから高速に起動 NeoBundleLoadCache else NeoBundleFetch 'Shougo/neobundle.vim' " TOMLファイルを指定 call neobundle#load_toml('~/.vim/

    progd
    progd 2015/05/09
  • 新・ももんが流NeoBundle管理術(あたらしい) - かなりすごいブログ

    Vim Advent Calendar 2012、361日目の記事になります。 全世界3000億人の美少女Vimmerのみなさん、こんにちは。 さて、今回は、おなじみのプラグインマネージャNeoBundleに最近追加されたneobundle#tap・neobundle#untapや、丁度日追加されたautoloadのon_sourceオプションを活用した、新・ももんが流NeoBundle管理術をお伝えしていきたいと思います。 最近追加されたneobundle#tap・neobundle#untapについてこれは、私の以前の記事「ももんが流NeoBundle管理術」にてご紹介したs:bundle_tap関数やs:bundle_untap関数などを、NeoBundle作者であるShougoさんがオフィシャルな機能として実装してくださったものです。 NeoBundle付属の関数となったことで若

    新・ももんが流NeoBundle管理術(あたらしい) - かなりすごいブログ
    progd
    progd 2015/05/09
  • 行為のレベルを下げると上手くいく - 山下泰平の趣味の方法

    人間は高度さに憧れてしまう。私もついつい程度の高さを目指してしまう場合があるんだけど、これは疲れる。 だからレベルを下げていく。 レベルを下げるといっても素手で熱々パスタい、火傷したことがきっかけで火に怯えるよう感じの下り方は危険だと思う。普通の知能ある人は熱々パスタはフォークでべます。レベルを下げるのは自分の知能ではなくて行為の水準で、なんで行為の水準を下げるとよいのかというと楽だからです。 他の人は知らないが、私の生活は苦しく厳しい。毎日がもうギリギリでマジ余裕ないし誰か助けてくださいお願いします。だから生活に生活以外のものが入る余地などない。もちろんパッケージ化された趣味なんか始める余裕はない。 しかしながら私には生活がある。私だけでなくて、人間というのは絶対に生活をしているだから生活の一部を趣味にすると、無理がなくて良い。生活を趣味にして趣味の価値を出すというのは難しくて上級

    progd
    progd 2015/05/09
  • How to fix broken submodule config in git?

    progd
    progd 2015/05/09