タグ

ブックマーク / blog.livedoor.jp/lalha (10)

  • シリコンバレー企業の「フォーカスする」文化 : 小野和俊のブログ

    先週は久しぶりにシリコンバレーに行ってきた。 訪問先は大きく2つあり、ひとつはシリコンバレーで勢いのある企業。 もうひとつはシリコンバレーで活躍する日エンジニアだった。 ・先月ニューヨーク証券取引所に上場したZendesk ・企業向けオンラインストレージを提供しIPO申請中のBox ・YCombinator出身のAllan氏率いるインキュベーターRun Way ・「日を代表するビッグデータ技術者集団が米国で起業」のTreasure Data ・「10年連続10万行の男」の石黒さんのIP Infusion 日エンジニアとしては ・Twitterの川さん ・Twitterの中川さん ・Facebookの松信さん ・Treasure Dataの太田さん ・IP Infusion石黒さん にお会いしてきた。 訪問の際のディスカッションの詳細はNDAもあり書けないのだが、全体を通じて印象

    シリコンバレー企業の「フォーカスする」文化 : 小野和俊のブログ
  • コードレビューについて : 小野和俊のブログ

    伊藤直也さんが「些末なコードレビュー」というエントリを書いて話題になっている。このエントリで伊藤さんはコードレビューの話と、はてなJavaScriptの話と2つの話題に触れている。前者のコードレビューについてはアプレッソでは8年ほど前から「コードレビューを通っていないコードはコミット不可」というルールですべてのソースコードに対してコードレビューを必須にしてきた関係で私も思うところがあるので、エントリを書いてみようと思う。 伊藤さんが例示しているように、インデントやreturnの省略などの話は好みの問題であり、議論してもソフトウェアの改善につながらない。なのでコードレビューでこうした宗教論争が起こるようなら、コーディング規約を見直すべきだ。「無駄に悩んだり議論したりすることを減らす」ことはコーディング規約の主たる効果のひとつだと言える。 コードレビューに慣れないチームが、何の考えもナシにコ

    コードレビューについて : 小野和俊のブログ
  • 人生のパフォーマンスチューニング : 小野和俊のブログ

    プログラマーはソフトウェアを開発する際、無駄な処理や非効率的な処理を極力排除しようとする。この意味においてプログラマーは処理の効率化の専門家であると言える。ならば私たちプログラマーはソフトウェアだけでなく、自分自身の人生についてもパフォーマンスチューニングできるはずだ。 プログラムでしばしばパフォーマンスのボトルネックになるのは、「ループの中の処理」だ。例えば10万行10列のデータを1列ずつ処理していくようなループ処理の中身を1ミリ秒速くすれば、全体で約16分の速度向上が見込める。 人生においても、実行頻度の高い処理はパフォーマンスチューニングの効果を得やすい。 例えば職種を問わず毎日2回ずつ実行される処理として、通勤がある。通勤のチューニングにより、営業日が月に20日だとして、もし通勤を片道30分短縮できれば、月20時間の時間を得ることができる。具体例として私の場合、「通勤を徒歩10分以

    人生のパフォーマンスチューニング : 小野和俊のブログ
    atsushifx
    atsushifx 2013/12/13
  • ガード節を用いた if-then-else 文の置き換え : 小野和俊のブログ

    昨日 if-then-else 文の順序に関するエントリを書いたところ、いくつか「レアケースは先に切って return する」というブクマコメントがあり、確かにこの点も考慮すべき重要な点なので前のエントリの補完的な意味も含めてエントリを書く。 if (よくあるケース/正常なケース) { // 処理 } else if (比較的特殊なケース) { // 処理 } else if (さらに特殊なケース) { // 処理 } else { // 処理 } しかしもしこれがメソッド/関数で、次のように後続の処理がないものだった場合を考えてみる(後続の処理がある場合には先のエントリに書いた検討を行う)。 public void method() { if (よくあるケース/正常なケース) { // 通常の処理 } else if (特殊なケース1) { // 特殊な処理1 } else if (特殊

    ガード節を用いた if-then-else 文の置き換え : 小野和俊のブログ
    atsushifx
    atsushifx 2013/01/12
  • UX/UIデザインガイドライン : 小野和俊のブログ

    このところ、アプレッソの中でも、MIJS製品技術委員会でも、自分たちのソフトウェアのUX/UIをブラッシュアップしていくためにどんなことができるのかをディスカッションしている。 UX/UIデザインガイドラインとして各社の推奨する指針をまとめたものがWebで公開されているので、プログラマーであれデザイナーであれ、ソフトウェアの画面設計に何らかの形で携わるのであれば、基礎知識として主要なものには目を通し、プログラマーがデザインパターンの用語で手短にコミュニケーションが取れるのと同じように、「ここは○○ガイドラインの△△パターンを使うのはどうかな?」というような会話ができるようにしていきたいと思っている。 ■ Apple ・アップル ヒューマンインターフェースガイドライン ・iOSヒューマンインターフェースガイドライン(PDF) ・iPadヒューマンインターフェースガイドライン(PDF) ■ M

    UX/UIデザインガイドライン : 小野和俊のブログ
    atsushifx
    atsushifx 2012/04/13
  • DataSpiderにおけるコンポーネント間のインタラクションの設計と実装 : 小野和俊のブログ

    先日、ソースコードのメンテナビリティについてのエントリを書きましたが、dankogaiさんから「で、具体的にどんなコード書いてるの?」という指摘がありました。 返信エントリでは、「DataSpiderはオープンソースではないのでソースコードをそのまま出すことはできない」と書いたのですが、よく考えたら、一部エッセンスを抜き出してサンプルコードとして紹介することはできるので、最近私が書いたコードの中で、メンテナビリティに関係するコードを紹介したいと思います。 ※ ソースコードの行数が正しく表示されない場合にはブラウザの幅を広げると正しく表示されます。なお、ソースコードの構成をシンプルにするため今回のサンプルではViewModelは使用していません。 目次 ・コンポーネント間のインタラクションの管理 ・最も原始的な実装方法: コンポーネントの相互参照 ・Mediatorパターン ・Role Ob

    DataSpiderにおけるコンポーネント間のインタラクションの設計と実装 : 小野和俊のブログ
    atsushifx
    atsushifx 2012/01/30
    なるほど、デザインパターンも進化するわけね。こういった新しいパターンのカタログも欲しいな
  • 小野和俊のブログ:メンテナビリティの高いソースコードを目指して

    ソフトウェアを中長期にわたってメンテナンスしていく場合、メンテナンスしやすいコードと、メンテナンスしにくいコードとの間には、同じ機能を実現していたとしても、その価値には雲泥の差があります。 メンテナンスの容易さを示す言葉として、メンテナビリティ(Maintainability)という言葉がありますが、私自身、アプレッソでDataSpiderを11年間開発・メンテナンスしていく中で、「この人の書いたコードは当にわかりやすいし無駄がない」とメンテナビリティの高いソースコードに感心させられることもあれば、「急いでいたとはいえ、このソースコードはリファクタリングしないと・・・」と、メンテナビリティの低いコードがソフトウェアに混入してしまったことを嘆くこともありました。 このエントリでは、一のソフトウェアを11年間開発・メンテナンスしてきた経験から、ソフトウェアのメンテナビリティについて考察して

    小野和俊のブログ:メンテナビリティの高いソースコードを目指して
    atsushifx
    atsushifx 2012/01/25
  • 小野和俊のブログ:バランス感覚を身に付けると、コミュニケーションの角と同時に能力の角も取れることがある

    分裂勘違い君劇場 - 優秀な人材に変身するキッカケに出会うか、未熟なまま老いていくかで述べられている内容について。 intelligent ではあるが wise ではないために今一アテにできない、という人にはいくつもの心当たりがあって、そういう人とうまく仕事をしていくことができなかった頃のもどかしさが蘇って来るようで、古傷に指を入れてこじ開けられるようで読み進めるのが辛かった。 一方で考えなければならないのは、物事を大きく変えるような提案というのは、実は往々にして、intelligent だけれども wise ではない人たちから出て来ている、ということである。 wise ではない人の意見は、第一印象として、マネージャや周囲の人たちから見てムッとする意見であることが多い。そのネガティブな反応の内訳は、ただでさえやることが山積みなのに新しい方法の導入を提案することに対する反発であったり、誰も問

    小野和俊のブログ:バランス感覚を身に付けると、コミュニケーションの角と同時に能力の角も取れることがある
    atsushifx
    atsushifx 2011/12/12
    wiseというより世慣れるといったほうがとおりがいいような。自分としてはこういったwiseはいらないというか捨てたい、壁になる
  • 人を萎縮させるやり方はその人の価値を下げる : 小野和俊のブログ

    はてなの近藤さんのブログの「怒る必要などない」というエントリーで、京都ではてなと同じビルに入っていた歯医者さんの引退飲み会に参加して、引退する彼の「怒る必要などない」という話を聞いたことが紹介されている。 先生が30代の頃は毎日スタッフのミスをメモし、診察時間が終わるとそのスタッフを怒っていたそうです。ところがある時、「怒る必要などない」ということを悟り、対等な人間として接するように変わったそうです。それから入ったスタッフの方の多くは、10年以上も勤務され続けたそうです。怒るのは自分の自信のなさの現れである、と仰っていました。 私個人としては、社内で人のことを「○○君」と呼ぶことにも抵抗があるタイプの人間で、「上司が部下を○○君と呼んだりしてるけど、もし立場が逆転したらどうするつもりなの?」と素朴に思ったりしてしまうわけだが、取引先や社内の関係者に対して、冷静な言葉を保てず、怒ったり威圧す

    人を萎縮させるやり方はその人の価値を下げる : 小野和俊のブログ
    atsushifx
    atsushifx 2011/03/01
  • 小野和俊のブログ:総務省「事業計画作成とベンチャー経営の手引き」がすごい件

    ベンチャー支援をしている知人から、総務省のプロジェクトでこんなんつくりましたということで、「事業計画作成とベンチャー経営の手引き」という資料が送られてきたのだが、これが無料で配布されている資料とは思えないほどの非常に充実した内容で、いつか会社を始めるかもしれないと思っている人にはきっと役に立つだろうと思ったのでブログで紹介したいと思う。 冒頭に下記のように宣言されているだけあって、その内容は実に生々しい。 説得力ある合理的な事業計画」をどう作成し、日々の経営にどう活かすのか、相談相手の少ないベンチャー経営者の参考にしていただくこと、指針を少しでもご提供することを意図している。こういった努力の結果、日から急成長ベンチャーが1社でも多く生み出されることを強く祈願したい。 P.5 総務省 ICTベンチャー向け事業計画作成支援コースの意義 より 事業計画作成について詳しく記された書籍は10年来多

    小野和俊のブログ:総務省「事業計画作成とベンチャー経営の手引き」がすごい件
    atsushifx
    atsushifx 2008/04/17
    ベンチャー経営のための実践的な手引書
  • 1