2013年4月20日土曜日

PyQt入門

PyQt入門として、
    http://www.slideshare.net/RansuiIso/pyqtgui
で作っているラーメンタイマーをちょっとだけ改造してみました。

勘所としては「シグナルとスロットをコネクトする」で、
これで自然と疎結合に開発できそうなので良いなという印象でした。

シグナルは「ボタンをクリックしたとき」のようなアクションのことで、
スロットは「この処理をする」というような処理部として理解をしています。

あとは開発するときに必要なコンポーネントを調べれば色々簡単に作れそうです。


やってみた改造は
 エディットに時間(分)を入力できるようにし、
 ボタンを押すとその時間がタイマーにセットされる
というものです。

エディットとボタンをそれぞれ

    line_edit = QtGui.QLineEdit()
    set_button = QtGui.QPushButton(BUTTON_LABEL)

と作り、

    widget. set_button.clicked.connect(widget.set_time)

としてボタンアクションでエディットの時間をセットするようにしました。

set_timeの中身は型判定とかとりあえず無視してこんなん。
(エディットとボタンとタイマーを同じクラスに置いています)

    self.count = int(self.line_edit.text()) * 6000
    self.update_display()



QtGui.QSoundとかが見つかるので、
3分経ったら音を出す、みたいなことも簡単にできるかも。



今やる人になる40の習慣

『今やる人になる40の習慣』
(林修 / 宝島社)

受験生の頃、「いつやるの?今でしょ!」で
おなじみの林先生の授業を受けていました。

大変頭は良いけれど、大変毒舌であるという印象の先生でした。

その彼がどんな文章を書いたのだろうという興味で本書を読んでみました。
彼流のプロフェッショナリズムが書いてありましたので気になった箇所のメモ。


・問題を5W1Hもしくは6W2Hの別の要素で置き換える

・日曜に次の一週間のシミュレーションを行う

・成果物は中途半端でもいいから速攻で提出してフィードバックを貰う

・自分のしたいけどしていないことを記録し、時間の使い方を考える

・努力はベクトル量である。正しい方向に努力することが大切

・やって当たり前、の水準を高く持つ(仕事の努力は努力ではない)

・歴史から「負けの法則」を学ぶ

・人をアイして、ウンを逃さず、エンを尊び、オンを忘れず


ちなみに、先生が授業中に言っていたことで思い出せるのは次のようなこと。

・徹底した相対論は不可知論に陥る危険性がある

・選択問題において真っ先に切れる選択肢をヤスダケイという

・デブはアイスコーヒーを三度楽しむ


紹介してもらった佐藤信夫の本はアタリだったなぁ


2013年4月7日日曜日

プロフェッショナルの条件


『プロフェッショナルの条件』
(P・F・ドラッカー / ダイヤモンド社)

本書は社会人1年目の頃に読んだのですが、
最近になって「そういえばどんなこと書いてあったっけ」と思い、
3年ぶりに読み返してみたので、気になった箇所や要点をメモしておきます。


◆ 時代の分析

・現代は知識(情報)中心の社会
・一通りの一般教養があれば良い時代は終わり。専門性が求められる

◆ 生産性の向上、成果をあげる

・いかに行うかではなく、何が目的か、なぜそれを行うかを考える
・生産性を向上させるには作業を分解し、分析し、再構築する
・人間の能力の飛躍的な向上を期待するのではなく、仕事の方法を改善する
・成果をあげることは一つの習慣である。習慣的な能力の集積である
・貢献に焦点を合わせ、結果に責任を持つ
 どのような貢献ができるかを自問する
  3つの領域における貢献:
   直接の成果、価値への取り組み、人材の育成
・人は、課された要求水準に適応する

◆ 自己成長
・何によって知られたいかを自問する
・自己変革のための6つのポイント:
  ビジョンをもち、努力を続ける
  仕事に真摯さを重視し、誇りを持ち、完全を求める
  継続学習
  自分の仕事を評価する
  記録した想定と結果を比較し、強み弱みを分析する
  新しい仕事が要求することを考える(前の仕事と同じやり方では行き詰まる)
・成長のプロセスを維持していくために:
 自分の成功要因を人に教える、働く場所を変える、現場に出る

◆ 適性
・自分に合った仕事の仕方で働く:
  理解の仕方、学び方
  チーム、個人
  緊張、安定
  意思決定者、補佐役

◆ 時間管理
・時間を記録し、やらなくても良い作業を削り、まとまった時間を作る
・成果をあげる人は、最も重要なことから始め、しかも一度に一つのことしかしない
・優先順位をつける
 真に意味あることは何か。もっとも重要なことは何か

◆ 意思決定

・重要な意思決定に集中する。本質的な問題を考える
・決定の目的は何か(必要条件は何か)
・何が正しいかを考える
・決定を行動に移す(行動まで最初から考えておく)
 誰がこの決定を知らなければならないか
 いかなる行動が必要か
 誰が行動をとるか
 行動すべき人間が行動するためには、その行動はいかなるものでなければならないか
・フィードバックを行う
・決定が満場一致の場合は危険(他の選択肢がない)
・決定が本当に必要かを考える

◆ コミュニケーション

・コミュニケーションの4つの原理
 聞く者がいなければコミュニケーションは成立しない
 人は聞きたいものだけを聞こうとする
 コミュニケーションは受け手に何かを要求する
 コミュニケーションと情報は別物である

◆ リーダーシップ

・リーダーシップは資質ではなく仕事
 リーダーシップの基礎:組織の使命を考え抜き、定義し、確立すること
 リーダー:目標を定め、優先順位を決め、基準を定め、それを維持する者
・リーダーシップは賢さに支えられるものではない、一貫性に支えられるものである

◆ イノベーション

・イノベーションのための7つの機会を分析する:
  予期せぬこと、ギャップ、ニーズ、構造の変化、入り口の変化、認識の変化、新知識の獲得
・成功したイノベーションは驚くほど単純。一つのことに集中する
・小さくスタートする。具体的なことから始める
・イノベーターはリスク志向ではなく機会志向






2013年4月3日水曜日

MacへPyQtをインストール


mac(OS X)にPyQtをインストールしたのでメモ。

windowsはインストーラ一発で簡単ですが、macは何ステップかあります。
Qt、SIP、PyQtの順で入れる必要がある模様です。
また、C++コンパイラが必要なため、xcodeをインストールしておくと良いみたいです。

 参考記事:
  http://d.hatena.ne.jp/Kyky/20110411/1302514189

Qtはここからダウンロード。
インストーラに従って入れました。
 qt-users.jp/index.html

SIPというライブラリが必要らしいのでここから。
 http://www.riverbankcomputing.co.uk/software/sip/download

コマンドは64bitなので次のように。
(最初32itだと思い込んでいたのでPyQtインストール時にエラーになりました)

 解凍したSIPのディレクトリへcd
 python configure.py --arch x86_64
 make
 make install

PyQtはここから。
 http://www.riverbankcomputing.co.uk/software/pyqt/download

コマンド
 解凍したPyQtのディレクトリへcd
 python configure.py
 make
 make install

適当に起動確認。
例:windowの表示

   import sys
 from PyQt4 import QtGui

 QtGui.QApplication(sys.argv)
 window = QtGui.QWidget()
 window.show()

話す技術・聞く技術

『話す技術・聞く技術』
(ダグラス・ストーン 他著 / 日本経済新聞出版社)


◆ 感想

 会話の例が豊富で、説明している内容がとてもわかりやすいです。
 12章に載っている例は、それまでの話のまとめになっています。



◆ 3つの会話

 最初の方で、会話上の問題を次の3つの観点で分析しています。

  ・何があったかをめぐる会話
  ・感情をめぐる会話
  ・アイデンティティをめぐる会話

 その上で、良い会話は「学ぼうとする会話」であると言っています。


◆ 自分も問題に加担している

 会話で問題が発生したとき、
 その原因は会話をしている双方にあると言っています。

 喧嘩両成敗です。

 これは本書では「加担」という言葉で訳されています。

◆ テクニック
 
 テクニック的なエッセンスは大体目次の通りです。

  ・相手が言っていることの意図を決めつけないこと
  ・相手に責任を押し付けようとしないこと
  ・自分にも原因があるのではないかと考えてみること
  ・感情を出すのを恐れないこと
  ・自分にはいろんな面があることを認めること
  ・相手に興味を持つこと

◆ まとめ


 本書で一貫して語られている主張というのは、つまり、

 「ちょっとは相手のことも考えなよ」

 ということだと思います。


 みんながちょっとずつ優しくなれば、
 みんながちょっとずつ生きやすくなるのかな、と思ったり。