タグ

ブックマーク / blog.kengo-toda.jp (15)

  • 最近見かける新しいライセンスについて - Kengo's blog

    Elastic社のブログをきっかけに、最近見かける新しいライセンスについて個人的に調べてみた。私は専門家ではないので要注意。公開情報も隅々まで追えているわけではないし。 なお一部ライセンスはOpen Source Initiative (OSI)による承認を受けていないので、ここではオープンソースライセンスではなく単に「ライセンス」と書くことにする。 新しいライセンスが誕生している背景 従来のオープンソースライセンスが再頒布以外の利用をあまり想定していなかった。 Open-core modelないし完全オープンソース戦略を採る企業が自衛策を必要とした。 既存のライセンスが難解なため、理解しやすいライセンスが求められた。 OSS活動を収入に繋げるためのモデルが試行錯誤されている。 新しいライセンスを導入しているプロジェクト(一例) プロジェクト ライセンス Elastic SSPLと独自ライ

    最近見かける新しいライセンスについて - Kengo's blog
    ikeike443
    ikeike443 2021/01/21
  • 7年働いた時点での私の仕事の極意 - Kengo's blog

    最重要 実行に重きを置く やらないで後悔するよりも、やって反省する。 反省は成長を産み生産的だが、後悔は精神の無駄な消費。 時間は有限で貴重な資源だが、たぶん今の段階では行動する前に得るものや結果を予測するのは難しい。 正しい反省の方法とは何か、考え続けること。 「正しく反省するために、何を記録しておくべきか」実行前に明らかにしておくこと。 反省の結果は組織的な何かに落としこむ。組織構造、戦略、静的解析、自動テスト、教育など。意識しないでも巨人の肩に乗れる状況を作ることが、組織の成長につながる。 Done is Better Than Perfect ただし、思考停止の言い訳にしないこと。詰めの甘さを擁護する言葉ではない。詰めの甘さは立場や考え方が違うひと3人くらいに意見を求めればだいたい炙り出せる。 長期的視野を持ちつつ、それに引っ張られない。進展を作ること、現状を少しずつ変えることを意

    7年働いた時点での私の仕事の極意 - Kengo's blog
    ikeike443
    ikeike443 2015/03/23
  • 複数の公用語がある国で店舗がどう工夫しているか - Kengo's blog

    シンガポールは英語中国語・マレー語・タミル語の4つの公用語があります。しかし、だからといって全ての表示が4ヶ国語で行われているわけではありません。シンガポール人が話せる中国語と、シンガポール人の一部と海外からの労働者が話せる英語の、2言語を中心とした表記が行われています。 ただ英語がうまくない人も(シンガポール人・海外労働者ともに)存在するため、そうした人を配慮した案内になっていることが多いです。 MRT駅など、公共の場について MRT駅のホームでは駅名が4ヶ国語で書かれています。また路線図も4ヶ国表記です。道案内表示などは英語中国語の2言語で表記されています。飲禁止・ドリアン持ち込み禁止といった禁止事項は英語表記です。 ICカードチャージ用マシンは4ヶ国語に対応しており、手続き開始時に言語を選べるようになっています。これは銀行用ATMでも同じです。バス内部の広告も4ヶ国語で書かれて

    複数の公用語がある国で店舗がどう工夫しているか - Kengo's blog
    ikeike443
    ikeike443 2014/05/26
    ドリアン持ち込み禁止
  • OSSコントリビュータとしての私の歴史 - Kengo's blog

    来週木曜日、@ikeike443 さんに教えていただいた以下のイベントに参加します。 Developers Summit 2014:【13-E-1】OSSコミッタ大集合 で、話す前に考えをまとめとかなきゃーということでこの14年弱で起こったことや感じたことをまとめておきます。 フリーソフトウェア作者時代(2000〜) 高校入学祝としてWindows MEを買ってもらったことがすべての始まりです。BASICなどいくつかの言語を渡り歩いてからHSP 2.5に出会い、ソフトウェアの作成を趣味として楽しんでいました。ただこの時期はライセンスやOSSについてはほぼ関心がなく、なんか書いてF5押すとなんか動く!ということ自体を楽しんでいました。 ソースを公開するよりも前に、ウェブサイト上での実行ファイルの公開やBBSでの回答(「eller site:hsp.tv」でググると157件ヒットする)、Wik

    OSSコントリビュータとしての私の歴史 - Kengo's blog
    ikeike443
    ikeike443 2014/02/09
  • 私は何がやりたいのか、あるいは何がやりたくないのかという話 - Kengo's blog

    最近「で、君は何をしたいの?」という問いをいただきます。やりたいことややりたくないことは社会人としての6年間で変化があったので、これを期にまとめておきます。 学生時にやりたかったこと 学生時代に今の会社を選んだ理由は3つあります。 ユーザ数が多く、得られるフィードバックの質と量が期待できた 製品を持ち、それが社会に与える影響が大きいと思えた 経営陣が提唱する理屈・哲学に納得・共感できた 学生時代にほそぼそとフリーソフトウェアの開発と公開を行っていた経験から、フィードバックこそがソフトウェアを向上させるという考えを持っていました。エンタープライズかつ独立系を選んだ理由はまさにこれで、他社に比べて多少技術に劣る*1としても日で最も良いフィードバックを得る会社を選んだという自負がありました。 3もまた重要で、経営陣の言うことの多くは確かに重要かつ差別化要因になると思えました。それらを身につける

    私は何がやりたいのか、あるいは何がやりたくないのかという話 - Kengo's blog
    ikeike443
    ikeike443 2014/02/02
  • 「それ、Guavaでできるよ」系の話 - Kengo's blog

    Javaってこれがめんどうだよねー」「あ、それGuavaでマシになりますよ」というやりとりが多い気がするので代表例をいくつか書いてみる。気になった方は公式ドキュメントをぜひ。 便利系Map 2キー使って1要素を特定するMap 複数の値を持ちうるMap 完全に同じ挙動というわけではない点に注意。 Set版もある。 キーでだけでなく値でも検索できるMap Mapの実装を作るのが面倒 ForwardingMapのサブクラスを作る……というのも良いが、そもそもMapをなぜ実装しなければならないかを確認したほうが良い。 例えば突っ込むキーや値を制限したいならMapConstraintsを使う。キャッシュのために特殊なMapを作りたいなら、MapMakerやcacheパッケージを見てみる。 コレクションをいい感じにゴニョゴニョ FluentIterableとIteratorsとIterablesをひ

    「それ、Guavaでできるよ」系の話 - Kengo's blog
    ikeike443
    ikeike443 2013/12/09
  • スキル差の存在を前提としたJava開発の私の理想 - Kengo's blog

    スキルの低い人が生産性における問題ならその人を何とかするのが根解決だよねと話したら、人に強要することなんてできないじゃないですかーという反応をいただいた。 これはすごく的を射たもので、チームを引っ張ってモノづくりをするうえで・チームを引っ張らせてモノづくりをするうえで重要な着眼点になると思っている。 個人の尊厳や主体性は最大限尊重すべきだし、様々な発想を持ち込めること(多様性)こそがチーム結成の価値の1つでもある。もしも開発プロセスやそのツールをガチガチに固めてしまうことで自由なチャレンジができなくなるのだとしたら、それは価値ある生産物を主体的・継続的に提供する能力の低下につながるだろう。そもそも変わりゆく環境の中で、1つのプロセスがずっと最適である保証も無いのだ。 では、どうするべきなのか。基的には以下の原則を守ることだと思っている。 チーム全員が同じ方向を向こうとすること 気づきの

    スキル差の存在を前提としたJava開発の私の理想 - Kengo's blog
    ikeike443
    ikeike443 2013/10/21
  • ウェブサービス系OSSの浸透を期待して開発環境を配布するまで - Kengo's blog

    あるいはVagrantでplayframework 2.0系ウェブサービスの環境を立ち上げるまで。 PARTAKEの開発者がいまいち増えずチケットばかりが積み重なるのは、サービスという粒度が大きすぎて環境を作るのが面倒なことも一因だと思っています。ここを手助けできないか試してみました。結果、 VagrantでUbuntuを起動して chef-soloでJDKやPlay!やPostgresをインストールして VirtualBoxの共有フォルダを使ってソースコードをホストとゲストで共有する のすべてがvagrant upコマンドひとつでできるようになりました。「セットアップが面倒」という問題はだいぶ解消できたと思います。インストールの時間が結構長いですし、Twitter APIを使うためのトークン取得が必要なので、完全解決では無いのが残念ですが……。 もちろん従来通りissueの追加やissu

    ウェブサービス系OSSの浸透を期待して開発環境を配布するまで - Kengo's blog
    ikeike443
    ikeike443 2013/04/09
    #play_ja
  • 2013年の抱負(LLVM勉強します) - Kengo's blog

    ikeike443
    ikeike443 2013/02/12
  • jenkins-regression-report-plugin released - Kengo's blog

    Today I released jenkins-regression-report-plugin at GitHub. It helps you to import CI into running project. GitHubでjenkins-regression-report-pluginをリリースしました。主に既存プロジェクトにCIを導入するケースを想定したものです。 eller86/jenkins-regression-report-plugin · GitHub At the jenkinsci-ja mailing list, I asked how to check regression test cases. Because sometimes running project has a lot of red test cases, so finding enbugs i

    jenkins-regression-report-plugin released - Kengo's blog
    ikeike443
    ikeike443 2012/06/10
    #jenkinsja
  • Jenkinsプラグイン実装初心者が参考にしたリンク集 - Kengo's blog

    未だにJenkins実践入門を読めていないeller86です。入手は来月半ばになるでしょうか。Jenkinsの基的な使い方は知っているつもりですが、プラグインの実装方法などちょっと突っ込んだ内容も載っているようなので楽しみです。 さてここ2日間ほどJenkinsプラグインの実装方法をキャッチアップしていましたので、その際参考になったリンクを紹介いたします……といっても公式Wikiがほとんどなんですが。ドキュメントが充実しているのはOSSにとって現実化しにくい理想のひとつだと思うので、ただただ感心するのみです。 ざっくり導入 こちらのスライドが参考になりました。 Jenkins勉強会 in 札幌 第二部 検索エンジン Googleなどで検索するよりも、公式Wikiの検索を使うほうが精度の高い情報を得られるようです。基英語です。 どの拡張ポイントを使えばいいか 公式Wikiに拡張ポイントの

    Jenkinsプラグイン実装初心者が参考にしたリンク集 - Kengo's blog
  • Guavaをざっくり紹介 - ellerの日記

    Guava librariesをご存知でしょうか?Googleが開発・使用しているコアライブラリです。OSSであり簡単に入手できます。 http://code.google.com/p/guava-libraries/ このライブラリは結構多機能で、海外の著名プロダクトでもよく見かけるのですが、日のネットでの知名度はいまいち高くない気がします。もともとの名前(Google Collections)はそこそこ知名度があったと思うのですが、この差はなぜでしょうか?私の観測範囲が狭いだけかもしれませんけども……。 自分が使ってみて思った「へーこんなことができるんだー」をまとめてみますので、共感するところがあればぜひ検証してみてはいかがでしょうか。 何が嬉しいの? Guavaはできることを増やすライブラリではなく、普段やっていることを短く書くためのライブラリです。Apache commonsなど

    Guavaをざっくり紹介 - ellerの日記
  • JavaScriptはいつの間にこんなにでっかくなっちゃったんだろう - Kengo's blog

    はてなブログのニュースに大歓喜しているeller86です。ダイアリーはあちこちガタが来ているように見える(私見)ので、ゼロから書きなおしたというのがとてもプラスに見えています。そのうちバックグラウンドについての技術解説も出るでしょうし、いろいろと楽しみです。 さてここ数日、AMDなどの「JavaScriptのモジュール化」についていくつか眺めていました。なんというか、JavaScriptがこうなるなんて10年前にonclick="hogehoge()"とか書いてた*1頃には想像できなかったなぁという感じです。 Why Web Modules? Why AMD? substack/node-browserify · GitHub Modules - CommonJS Spec Wiki Writing Modular JavaScript With AMD, CommonJS & ES Ha

    JavaScriptはいつの間にこんなにでっかくなっちゃったんだろう - Kengo's blog
    ikeike443
    ikeike443 2011/11/08
  • ASMで実行時にメソッド定義を書き換える - Kengo's blog

    今さらながらJavaクラスに対する動的なweavingを試してみました。DIコンテナやフレームワークに任せることが一般的になった領域であり技術が直接役に立つことはないでしょうが、JVMやクラスファイルに対する理解を深めるきっかけにもなると考えたためです。 JavaでバイトコードをいじるためのライブラリにはAspectJやjavassistが有名ですが、今回はPMDが使用しているASMを選択しました。他のライブラリに比べ、軽快さやライブラリの小ささで優れているようです。 ライブラリの入手 ASMウェブサイトから最新のzipを入手して解凍します。今回はバージョン3.3を使用しました。 zipに含まれているjarにはいくつか種類がありますが、特に理由がなければ全部入りのasm-all-3.3.jarを使えばいいでしょう。これをCLASSPATHに追加してやれば準備完了です。依存するライブラリなど

    ASMで実行時にメソッド定義を書き換える - Kengo's blog
  • GoogleのJava基礎ライブラリguava librariesというものがあるらしい - Kengo's blog

    Google Collections Libraryを使おうと思ってGoogle Codeにアクセスしたら、開発が継続されていないことに気づきました。どうやらGuavaというプロダクトにマージされたようです。 This project has evolved into Guava! http://code.google.com/p/google-collections/ Guavaは1年前に0.5としてリリースされたものが初めらしいですが、今日までその存在を知りませんでした。今検索しても日語の情報は@ITの記事しかヒットしないようで、まだメジャーではないようです。個人的には1年経ってもバージョンが0.1しか変化していない点に不安を覚えていますが、ActivityがHighなので個人利用には問題ないでしょう。 なお、機能の概要は公式PDFに載っています。また2つほどクラスを試してみましたの

    GoogleのJava基礎ライブラリguava librariesというものがあるらしい - Kengo's blog
  • 1