Olen onnellinen.

あしたもどこかで NullPointerException。資格試験とかシステム開発の記録だったりなかったり。

書評:SEのための交渉術

読書週間デス。

今日はこちら。
SEのための交渉術。

随所の会話例がなかなかに面白い。
拾い読みなのであんまり詳しくはわからん。


[理論で基礎固め、事例で実践力アップ! SEのための必勝スキルシリーズ]Win-Winで信頼を勝ち取る! SEのための交渉術 (SEのための必勝スキルシリーズ)
[理論で基礎固め、事例で実践力アップ! SEのための必勝スキルシリーズ]Win-Winで信頼を勝ち取る! SEのための交渉術 (SEのための必勝スキルシリーズ)

このエントリーを含むはてなブックマーク | 

書評:仕事のとれるSE-設計力、技術力、推進力でSEは決まる

SE一般書といったところ。

机上の空論になっておらず、大分現場に即している内容だと思う。
心構えやモデリングについても触れられてる良書だと思うのだが、タイトルが「仕事のとれるSE」なので、損をしてる気がする。こういうタイトルの方が売れるってことなのかな。


仕事のとれるSE-設計力、技術力、推進力でSEは決まる
仕事のとれるSE-設計力、技術力、推進力でSEは決まる

このエントリーを含むはてなブックマーク | 

書評:SEのためのコーチング技術

イラストも豊富で読みやすいコーチング本。
一時期流行ったよねコーチング。

結局現場なんて文化もピンキリだし、いかにその文化を把握できるかが重要になってきます。
ここに書いてあることがそのまま使えることはまず無いと思うけど、まあ応用してうまく部下と付き合えば良いのではないでしょうか。

部下がいなくても上司と良好な関係を築きたい人は読んでおくと良いかもです。

SEのためのコーチング技術
SEのためのコーチング技術

このエントリーを含むはてなブックマーク | 

PHP:SimpleXMLでXMLを扱う

■ PHP で XML
XML の標準 API として DOM や SAX があるわけですが、PHP では SimpleXML という API も使えます。
これは階層構造のデータにその名の通りシンプルにアクセスできます。また、DOM と相互変換が可能なので双方うまいこと使い分けると幸せになれるでしょう。

  1.  <?php
  2.   // SimpleXML を使う。
  3.   print '<h2>SimpleXML</h2>';
  4.   $books = simplexml_load_file('data/xml_hoge.xml');
  5.   print '<table border="1">';
  6.   foreach ($books->book as $book) {
  7.      print "<tr><td>$book->title</td><td>$book->author</td></tr>";
  8.   }
  9.   print "</table>";
  10.   echo "<hr />";
  11.  
  12.   // SimpleXML → Dom
  13.   $dom = dom_import_simplexml($books);
  14.  
  15.   // Dom を使う。
  16.   print '<h2>DOM</h2>';
  17.   $books = $dom->childNodes;
  18.   print '<table border="1">';
  19.   foreach ($books as $book) {
  20.      if (@$book->nodeName == 'book') {
  21.       $content = $book->childNodes;
  22.       foreach ($content as $elem) {
  23.          if (@$elem->nodeName == 'author') {
  24.           $author = $elem->nodeValue;
  25.          }
  26.          if (@$elem->nodeName == 'title') {
  27.           $title = $elem->nodeValue;
  28.          }
  29.       }
  30.       print "<tr><td>$title</td><td>$author</td></tr>";
  31.      }
  32.   }
  33.   print "</table>";




[ThinkIT] Part5:PHP5のXMLサポート(1) (1/2)

と、SimpleXML は素晴らしいのですが、残念ながら PHP4 では使えません。そこで簡易的に XML を使えるライブラリを探しました。
これ↓
Keith Devens .com - PHP XML Library

使い方は非常に簡単です。

  1.  <?php
  2.  $xml = file_get_contents("xml_hoge.xml");
  3.  $data = XML_unserialize($xml);




$data は配列になっているので階層を辿っていけば目的のデータを取得できます。

このエントリーを含むはてなブックマーク | 

PEAR::DB 今さら

  1.  <?php
  2.   $con =& DB::connect($dsn, array('persistent' => true));


persistentオプションをコネクト時に渡すと永続的な接続になります。
例えば、MySQLだとmysql_pconnect関数が呼ばれるようになる、と。

  1.  <?php
  2.   $connect_function = $persistent ? 'mysql_pconnect' : 'mysql_connect';


とはいえ、何でもpersistentにすればよいのかというとそうではありませんので注意。

PHP: 持続的データベース接続 - Manual

このエントリーを含むはてなブックマーク | 

書評:変人力

筆者は阪大→松下→ハーバードでMBAのキャリアを持ち、日本HPの社長時代にヘッドハンティングされ、ダイエーの社長に就任するあたりから始まる。
この時点で引いてしまうのはボクのやっかみだろうか。

ダイエー再生のエピソードが延々と語られるのだが、まったく共感することもできないのはあまりにもバックグラウンドが異なるからだと思う。
タイトルである変人力は終盤にちらっとまとめられてる程度。一言でいうと変人力=エモーショナル力なんだとか。もはや意味不明 ?(゜_。)? タイトルに期待して読むと微妙に思われる。

こんなキャリアに憧れる、学生が読めばよいんじゃないカナ。

変人力―人と組織を動かす次世代型リーダーの条件
変人力―人と組織を動かす次世代型リーダーの条件

このエントリーを含むはてなブックマーク | 

「転職しなくても、人生は続く」

転職徒然草−転職支援のリクルートエージェント

めっちゃ面白い。
会社では開きにくいのですが、ぜひ。

以前、エージェントさんにお世話になっているときに、「あれ、だれが書いてるんですか?」って聞いたくらいお気に入り。


▼ 秀逸な記事

大胆不敵:転職徒然草−転職支援のリクルートエージェント

娘に言えない仕事:転職徒然草−転職支援のリクルートエージェント

文系嫌い:転職徒然草−転職支援のリクルートエージェント

宝くじに当たったら:転職徒然草−転職支援のリクルートエージェント


あ、別に転職ススメてるわけじゃないですよ(^▽^)

このエントリーを含むはてなブックマーク | 

書評:Write Great Code vol.1

この本を読んで、何を感じるか。それがとても大事。

いわゆる情報工学の基礎的な部分を網羅している。
最近ではそれほどこれらの知識を直接的に使う機会も少ないのだが、やはり基礎を知っているヤツは違う。

ちょっと話がずれるけど、Cをしっかり学んだヤツはプログラミングセンスが抜群だと思う。
新人さんなんかでもJavaやPHP(だけ)をやってたってヤツよりも、Cしかやったことありませんってヤツのほうが、JavaやPHPをやらせたときにコードの信頼性が高いと思う。統計的にだけど。

夏休みになにか基礎からやりたいって人は読んでみると良いかもです。訳者が結構ビッグネームなのもポイント。


Write Great Code〈Vol.1〉ハードウェアを知り、ソフトウェアを書く
Write Great Code〈Vol.1〉ハードウェアを知り、ソフトウェアを書く

このエントリーを含むはてなブックマーク | 

因果応報

えらい人が言ってました。

情報を発信しているところに情報は集まるんだって。
だからボクは常に情報を発信し続けているのです。

そんなボクに送られてきた最近の情報。


清酒おねてぃシリーズ



ふーん。

このエントリーを含むはてなブックマーク | 

だから理系ってイヤね

川崎市立図書館のシステムがリニューアルされました。
それなりの仕事をしていると思いますね(偉そう

認証周りがちょっと気になったりしますけど、検索とか高速です。今までひどくて使っていなかった方も使ってみてはいかがでしょうか。


そんなわけで数冊借りてきました。

・ 英和対照で読むディルバートの法則
・ SEのホンネ話−会社じゃ言えない−
・ LPICレベル2−Linux教科書−
・ 絹靴下殺人事件
・ シシリーは消えた
・ Write Great Code Vol.1


司書さん「レベル2ですけど、大丈夫ですか?」

バ、バレテルー Σ(゚□゚*)

このエントリーを含むはてなブックマーク | 

PEAR::Logメモ

ロギングクラスです。ファイルだけでなく、メールやら DB にも出力できる素敵なライブラリです。

■ 前提
PEARはインストール済み

■ インストールする
pear コマンドでサクッといきます。

pear install --alldeps Log


完了したら確認っす。

C:\dev>pear list
INSTALLED PACKAGES, CHANNEL PEAR.PHP.NET:
=========================================
PACKAGE VERSION STATE
DB 1.7.11 stable
Log 1.9.11 stable
(その他は略)


以上、簡単だねb

■ 使ってみる
とりあえずファイルにログを出力してみます。

  1.  <?php
  2.  $conf = array('timeFormat' => '%x %X');
  3.  $log = Log::singleton('file', 'C:\temp\app.log', 'test', $conf, PEAR_LOG_INFO);
  4.  $log->log(__METHOD__ . '開始', PEAR_LOG_INFO);


こんな感じ。


■ ログレベル
ログレベルの指定は8段階あり、クリティカルな順に

  1. PEAR_LOG_EMERG
  2. PEAR_LOG_ALERT
  3. PEAR_LOG_CRIT
  4. PEAR_LOG_ERR
  5. PEAR_LOG_WARNING
  6. PEAR_LOG_NOTICE
  7. PEAR_LOG_INFO
  8. PEAR_LOG_DEBUG


オブジェクト取得時に指定した以上のレベルのログが出力されます。つまり、

  1.  <?php
  2.  $log = Log::singleton('file', 'C:\temp\app.log', 'test', $conf, PEAR_LOG_INFO);
  3.  
  4.  $log->log(__METHOD__ . '開始', PEAR_LOG_INFO); // 出力される
  5.  $log->log(__METHOD__ . '開始', PEAR_LOG_ERR); // 出力される
  6.  
  7.  $log->log(__METHOD__ . '開始', PEAR_LOG_DEBUG); // 出力されない
  8.  $log->debug(__METHOD__ . '開始'); // 出力されない(上と同じ意味)



ってことです。最後のエラーレベル名の関数はすべてのエラーレベルについてそれぞれ用意されています。ちなみに実装はエイリアス。

  1.  <?php
  2.  function debug($message)
  3.  {
  4.   return $this->log($message, PEAR_LOG_DEBUG);
  5.  }


てことは log 関数を使った方が早いかもね、どうなのよ?(マロン風

このエントリーを含むはてなブックマーク | 
Copyright © 2008 hydra404 all rights reserved.