2016年11月3日木曜日

Japan Product Manager Conference

の2日目に参加してきました。
http://pmconf.jp/

Product Management とは?という問いかけに各スピーカーの方が自分なりの答えを持ち、奮闘してらっしゃる様が見えた会だった。
また、PMとしてやってきたり考えてきたことの方向付けが出来てきた、ということがじわじわ分かってきたのは、このConferenceで他の方の話を伺って、スピーカーの方々のお話に多く出てくることが自分の体験ややろうとしていることと重複する(「そうそう、そうだよね」という感覚)と思えたからだ。例えば以下。

  • やらないことを決める
  • 自分がProductの責任を負うという気持ち
  • データは重要、でも、最後は"勘"
  • 自律的なチームを作る

明確に説明しづらく、何を学べば良いか、という問いにも答えにくい仕事であり、また会社によってやることも大きく異る。
もちろん会社によっては職責が明文化されていたりすることもあるだろうから、反射的に出来ることもあると思うが、自身は試行錯誤でやっていたことも多く、「果たしてこれで良いのだろうか?」という気持ちにもなる。
そしてTeamの中では多くの場合1人なので、客観的になりにくい。
そんな中で、このConferenceで少し「型」的なものを得られたのが大きかった。

運営の皆様、スピーカー及びお話させていただいた方々、貴重な機会を頂きありがとうございました。



2014年2月8日土曜日

Self Consultation

ということで。
インフルエンザにかかり、自宅療養を余儀なくされたので、体も気持ちも見直さないといけないよね、ということで3冊ほど読んでみる。
コンサルタントの現場力 / コンサルタントの仕事力 / コンサルタントの道具箱
#しかし、「~力」多いね・・・
最後の本はずっと前に読んでたのをまた引っ張り出してきた。
コンサルタントの方が書く文章はは所謂「熱い(体温+1℃)」というイメージな感じが多い中、やっぱりここはワインバーグ大先生、ちょっと力の抜けた感じの法則をうまく提示していらっしゃる。
無意識のうちに使っている道具もあったりしたけど、意識的に使ってそれぞれの道具をもっと使いこなせるようにしたいな、と思った。

BURSTS!

BURSTS! 久々に青木薫さん訳本。(監訳者だけど)
Albert-Laszlo Barabasiといえば、新ネットワーク思考で一世を風靡?した研究者で、今ほぼその世界が具現化されている。(誰がFacebookやLINEでこれくらい”繋がれる”ことをその当時(初版2002年、私が購入したのは2007年の模様)正確に予想していただろうか。)
こちらの本は「人間行動が予測可能になるだろうか?またそれは何かの法則にのっとっているのだろうか?」という疑問をなげかけている。残念ながら回答は出ていないのと、ストーリーをおいかけるのが(年代を行き来するのもあって)難しいので、若干の読みにくさはあるが、相変わらずこの研究者の知識と好奇心の反復量はすばらしい。

2014年1月20日月曜日

Condition of the professional

久々のドラッカー本。プロフェッショナルの条件
もはや知識労働者、というのも過去になろうとしているのかもと思う部分もあるが、どう生きたいか迷ったときに指針となる本。
*優先順位の決定:過去ではなく未来を。問題ではなく機会を。横並びではなく自らの方向性を。変革をもたらすものを。
*優れたコミュニケーションとは:ソフトの世界では特に、それは、「見えない」ものを対象にするから。間接的にしか「見えない」ものをどのように共通理解にするか。
*リーダーシップの本質:目標と優先順位、基準と、そしてそれを維持すること。
最後が一番難しい。

2014年1月17日金曜日

bitbucket over proxy

BitbucketへのProxy越えの方法。

0. 前準備
公開鍵-秘密鍵を作っておく。
たとえばこんな感じ。
GitHub : generating-ssh-keys
その後、公開鍵をbitbucketに登録しておく。

1. ssh接続のためのsshフォルダ作成
%homepath%\.ssh フォルダに config という名前でテキストファイルを作り、このテキストファイルに以下のとおり記述する。
ProxyCommand connect.exe -H myproxy.local:80 %h %p

Host bitbucket.org
  Hostname ssh.bitbucket.org
  Port 22

2. 接続時、sshを用いて接続する。

参考:
Windows OS の Git を使い HTTPS プロクシ経由の ssh で GitHub と Bitbucket に Push/Pull する設定

Wearable

記述自体は特に目新しいものはなかったように感じたが、サマリされているという意味で価値があった。
アンビエントインテリジェンス(環境知能)に流されず、自分の思考をどのくらい深めることができるか?流されがちな自分に自戒をこめて。
ウエアラブルは何を変えるのか

2014年1月12日日曜日

Android Resposive UI

2ヶ月ほどかけてやっと読了。
Smashing Android UI レスポンシブUIとデザインパターン
前半はプラットフォームの機能とUIコンポーネントのおさらい。
後半ははやり?のレスポンシブUIと、Androidデザインパターン。
私は2.3ぐらいで知識がとまっているので、最新情報が網羅的に把握できたのでありがたい。
(とはいえ、Developers/Designサイトは並行して読む必要あり。)

個人的には、レスポンシブUIの部分よりも、最後のデザインパターンのところや、UIのサンプルコンテンツは役に立ちそう。
以下デザインパターンまとめ。
  • User Actionデザインパターン:
Action Bar(上部アプリアイコン+操作アイコン)Google+/Gmailなどで採用
Quick Actions(長おししたときのドロップダウンメニューなど)Evernote
Action Drawer (したからスライドさせて表示させる)
Pull-to-Referesh(ドラッグさせてUpdate)Twitter
Swipe-to-Dismiss(ドラッグさせて消す) Google 
  • Navigation & Layout デザインパターン:
Stacked Gallaries(複数のソースごとにドラッグ操作)Pulse
Dashboard(アプリのランディング画面) Flipboard
Workspace(タブつきUI)Google Play, Facebook
Split View(Tabletでのアウトライン+本文)Google Mail
Expand-in-context(説明文などの拡張領域)Google play
Side-navigation(横からSwipeさせて出てくる画面) Evernote
  • Dataデザインパターン
Dynamic List(表示の後よみ)Facebook
Image Placeholder(画像)
Non Forced(Login前のナビゲーション)Catch、Any.Do
Drag-to-Reorder Handle(リストの順番変更)Any.Do

アプリも1,2年前に比べてどんどん進化してきている。

2014年1月2日木曜日

リスク管理

超有名な本。
熊とワルツを
途中まで読んで放置していたので再読。
会社でやっているプロセスも基本的なところを抑えているんだけど、下記のあたりが課題か。

  • 継続的なリスク発見プロセス
  • 移行指標の定量化

こういった本は実務を経験して並行しないと、読んでも頭に入ってこない。

2014年1月1日水曜日

あけましておめでとうございます

2014年早速読んだ本(?
GNU開発ツール
Cプログラムを書いて、Buildしたときに裏でGNU開発ツールが何をやっているか?を記載した本。
普段、IDE開発しているとこの辺なんて気にも留めないけど、1つづつパズルを解くように丁寧に疑問を解きほぐしていく筆者の力量がすごい。
#プログラマではなく、お医者さん。
改めて勉強せねば、と思った新年でした。とほほ。

2013年11月4日月曜日

Leap Motion & Camera Remote API連携

ちょっと前にLeap Motionを試したので、その応用編でGesture Shutterに挑戦。
付属のAndroid Sample Code を PC向けに修正したくらい。
Gestureの受付はleap.jsを利用。
JS - Java間はJava WebSocketライブラリのtyrus利用。

モバイル連携はもっとやれることありそうなんだなー

以下のAPI使いました
超参考にしたのはこちら

2013年5月19日日曜日

Animation-listの動作

androidでアニメーションさせたい場合は、res/animにxmlを作成すれば良いのだが、Tweenとanimation-listでは起動時から再生したい場合、呼び出すタイミングが違うので注意。

tweenの方は、親のActivityのOnCreateのタイミングでloadAnimationを呼んでもOK
animation-listで実行する場合は、OnCreateでstartを呼んでも実行されない。
で、どこで呼ぶかというと、ActivityのOnWindowChangedで呼ぶ。

参考リンク:以下の最後の方に記載してある。
2D Graphics

drawImageの罠

HTML5で画像表示をしようとして失敗したので記しておく。


画像イメージを普通に表示させるような、
context.drawImage(img, dx, dy);
の場合は問題ないのだが、
クリッピングして表示するケースでは、元画像サイズが小さいと反応してくれない。
context.drawImage(img, dx, dy,dw,dh,sx,sy,sw,sh);
のケース。
元画像のdx,dy,dw,dhが、元画像内に収まる値に変更してあげる必要がある。

ちなみに、元画像サイズの取得はこちら↓
 JavaScript で画像本来のサイズ(幅, 高さ)を取得する

2013年4月21日日曜日

Paperclipライブラリ


railsの画像Upload用ライブラリをつかってみる。
  • paperclip インストール
gemファイルに追記

#Rails file upload library
gem "paperclip", "~> 3.0"

その後

bundle install

  • ImageMagick インストール
aptitude install imagemagick

で、imagemagickのpathをpaperclipに覚えさせる。
今は開発用環境なので、

config/development/environment.rb

で、最後に

Paperclip.options[:command_path] = "ImageMagickのインストールPath"

としてやる

  • Model修正
class Photo < ActiveRecord::Base
  attr_accessible :received, :shooting, :title
  attr_accessible :picture
  has_attached_file :picture, :styles => { :medium => "300x300>", :thumb => "100x100>"} 
end

  • マイグレーションファイル修正 (db/migrate/初回migration日時_create_photos.rb)
class Photo < ActiveRecord::Base
class CreatePhotos < ActiveRecord::Migration
  def change
    create_table :photos do |t|
      t.datetime :shooting
      t.datetime :received
      t.string :title
      t.attachment :picture   #Add

      t.timestamps
    end
  end
end

bundle exec rake db:migrate

で、あたらしく項目を追加してあげる。

また、

rails generate paperclip Model名 (ファイルattachする)フィールド名

で、1テーブルへのファイルattouch/detouchができるようにする。


  • Viewの変更
デフォルトFormに追加
  
<%= f.label :picture %>
<%= f.file_field :picture %>

エントリの方

<%= image_tag @photo.picture.url(:thumb) %>




2013年4月11日木曜日

Rails立ち上げではまったこと

Ubuntu 12.10にRuby on railsをしてインストールしようとしてはまったので、メモ。
  • ruby
以下からソース持ってきてbuild
ダウンロードフォルダに行って、
./configure
make
sudo make install

  • Rails
gem install rails

  • SQLite
以下からソース持ってきてbuild
http://www.sqlite.org/releaselog/3_7_16_1.html
ダウンロードフォルダに行って、
./configure
make
sudo make install

  • SQLite用ドライバ
gem install sqlite3


で、railsの新規アプリを作り
rails new railsapp

Webrick(軽量HTTPサーバ)を起動しようとする
rails server

と、エラー。
どうもうまくbundleされてきていないらしい。

解決法。

openssl 諸々を
sudo apt-get install xxxx
で入れる。

railsの新規アプリ内のフォルダに入って、Gemfileを編集
gem 'therubyracer'
を最後に書く

sudo aptitude install  build-essential g++
でg++をインストール。

その後
sudo bundle install

で、Webrick起動。

2011年3月27日日曜日

2011年2月28日月曜日

JSONデータへのアクセス方法

JSON形式でデータを持ってくる時の使い方:

                JSONObject jO = new JSONObject(rtn);
                JSONObject jO2 = jO.getJSONObject("response");
                JSONArray    jA = jO2.getJSONArray("groups");
                JSONObject jO3 = jA.getJSONObject(0);
                JSONArray jA2 =  jO3.getJSONArray("items");


これは、Foursquareのvenues/search APIでデータを持ってくる時の指定の仕方。
※ 階層は一個一個掘らないといけない (途中抜かしでnameを指定してもダメ)
無精をしてはいけない。

Tips: AndroidでJSONを使おう

2011年2月24日木曜日

複数packageを1apkとして提供する方法

複数packageを1apkとして提供する場合は、Manifestファイルの書き方が肝。
<manifest ....
  package = com.aaa >
  ....
   <activity android:name=".bbb.cccActivity" .... />
   <activity android:name=".ddd.eeeActivity" .... />
</manifest>

のように書いてやる。
そうするとリソースが見つからないエラーが消える。

メインパッケージ以外のクラスファイルをManifest.xmlへ記述する方法

2011年2月7日月曜日

外部Strageへの書き込み

sdcardへの書き込みではまっていたので記録を残しておく。


            FileOutputStream fileOutputStream = null;
            try {
                fileOutputStream = new FileOutputStream("/sdcard/" + dataName);
                fileOutputStream.write(data);
            } catch (Exception e) {
                cameraRelease();
            } finally {
                if (fileOutputStream != null) {
                    fileOutputStream.close();
                }
            }


で、NullPointerでおっこっていたのだが(2.1ではおけ)
2.2からは、uses-permissionに、WRITE_EXTERNAL_STRAGE を指定しなければなりません。
トホホ・・・

2011年1月14日金曜日

Animation-listの動作

androidでアニメーションさせたい場合は、res/animにxmlを作成すれば良いのだが、Tweenとanimation-listでは起動時から再生したい場合、呼び出すタイミングが違うので注意。

tweenの方は、親のActivityのOnCreateのタイミングでloadAnimationを呼んでもOK
animation-listで実行する場合は、OnCreateでstartを呼んでも実行されない。
で、どこで呼ぶかというと、ActivityのOnWindowChangedで呼ぶ。

参考リンク:以下の最後の方に記載してある。
2D Graphics

2011年1月13日木曜日

Android applicationからTitleを消したい

manifestのandroid:themeに参照するリソースを設定。
resourceはres/values/styles.xml
の中の値を渡している。
resource側では、
    <style name="Theme" parent="android:Theme">
        <item name="android:windowNoTitle">true</item>
     </style>
と指定してやればOK。

参考リンク:
http://developer.android.com/guide/topics/ui/themes.html

ついでに、Homeアプリ(HOMEを押した時に選択肢が出るように)にするためには、MainのActivityにintent filterで、category.HOMEを指定してあげましょう。