ハードウェアでもソフトウェアでもなくてピープルウェア。モノより人ですよ先生、てこと。
オフィス環境についての部分が一番印象に残ったのでそれについて。
よく見られる「開放型オフィス」では業務時間中に「本当の」仕事はできないと言っている。
集中している状態のことを心理学者はフロー(Flow)状態と呼ぶそうだけど、普通の状態からフロー状態に遷移するまでが15分、電話が入ったり話しかけられたりしてその状態から出てしまうのは一瞬だと。これを20回繰り返すと実質丸一日何もやってない事になるとのこと。
電話や相談がメインの仕事ならいいのかも知れないけど、ソフトウェア開発の現場ではそれらをメインとしているのは得てして少数派。
顔が見えるところにいないとコミュニケーションが云々て話があるが、それはまた別の話だよなぁ。
会社よりも喫茶店だとかファーストフード店だとかでカタカタやってる方が進捗がいいってのはよく聞く話で。
集中が必要な作業と、他の人との会話が必要な作業はサンドイッチにはできない。
順番では次は「デッドライン」ですが、あとがきでお勧めされてしまったので「ゆとりの法則」に脱線です。
すでに両方とも手元のAmazonロゴがついた段ボールの中に・・・。
[ref.] ソフトウェア開発の名著を読む。
いまさらながら自宅に無線LAN環境を導入した。
んが、拙者のX31では11a/b/g対応のはずなのにaでの接続ができないことが判明。
なんだ「世界標準11a」って!ハードウェア的に違うのかよ!
b/gはつながるからいいけど、なんか損した感じだ。
ともあれ、これでこたつでカタカタ環境ができた。
・・・いやぁーテトリス対戦は対人にかぎるね。
シーケンス操作関数
3 つのパラメータ形式の場合、is_called は true (真) もしくは false(偽) に設定されます。false (偽) に設定された場合、次の nextval が指定された正確な値を返し、シーケンスの進行は引き続く nextval から始まります。
setval()にて。3つめのパラメータの存在に気がついていなかった・・・。
たしかに、0は受け付けてくれないんだからこれがないと1から始められない。
=> SELECT setval('book_id_seq', 1, FALSE);
0にはリセットできない仕様だと勝手に思っていた自分が憎い。んなわけないだろ。
[Seasar-user:4488] Re: [S2Dao]バッチ更新insertでsequenceからid取得できない
はい、現行バージョンではその通りの動作をします。 バッチ更新でID自動採番が効かないのはS2Daoの仕様です。
0.5人日ほどハマった。顛末はこのメーリングリストでのやりとりのまま。
自分でグルグル回せばいいんだけど、そもそもnextval()のSQLを投げることはムダだよなぁ。
・・・って、そんなこと言ったらO/Rマッパーの採用自体考えろって話になるか。ご利用は計画的に。
ITmedia Biz.ID:キーボードを立てて作業スペースを確保する
業務でノートをとったり、もしくはお昼の弁当を広げたりと、キーボードの手前にちょっとした作業スペースがほしいことはよくある。
ちょうどひっくり返るキーボードに困っていた。自宅でだけど。
サンプルに使っているのがRealforce。たぶんこの人はいい人だ。
名前ベース・バーチャルホストWWWサーバの構築
SSL セキュアサーバではアクセス時に最初に SSL の認証シーケンスが走ります。しかし、その時点では Apache はアクセスしてきたホスト名が分からないため、証明書の交換は先頭のバーチャルホストのデータを元に行われます。従って、名前ベースのバーチャルホストでは、SSL は一つのバーチャルホストしか扱えません。
ってことを知らなくて、ハマった。確かにどのホスト名でアクセスしてもひとつめのドキュメントルートが表示されてた。
で、IPベースはというと・・・
Apache の IP ベースのバーチャルホストサポート – Apache HTTP サーバ
IP ベース という名前が示すように、サーバには IP ベースのバーチャルホストそれぞれにつき、別々の IP アドレスが 必要です。複数の物理コネクションを持っているマシンを用意するか、 最近のオペレーティングシステムでサポートされているバーチャル インタフェース (詳細はシステムの説明書を読んでください。たいていは “ip エイリアス” と呼ばれていて、設定には普通 “ifconfig” コマンドを 使います) を使うかで実現できます。
おーエイリアスでいいのか。こっちでいくか、外に出すものではないし。
コードを書いてるときに、ふと「こう書いてみたんだけどこれってよくありそうなことで、ほかの人はどうやって書くんだろう?」と思うことがある。
そんな気持ちを文字にしたときにそっと末尾に添えよう。
_ ∩
( ゚∀゚)彡 mdk!mdk!
⊂彡
ActionController::Components::InstanceMethods#render_component_as_string()のこと。(長いので以下rcas())
他のアクションをこれで呼んだのだけれど、application.rhtmlが適用されちゃったってのが事の発端。
レスポンスを埋め込むんだから当然レイアウトは適用されてほしくないわけで。
ActionController::Base#render()(以下r())は「:layout=>false」を受け取ってくれるのにrcas()は受け取ってくれない。
じゃぁどうするんだってググってみたら、呼び出される方のアクション内でr()を呼んでやればよいとのこと。試してみたら確かに適用されなくなった。(コードは読まなかったのかって突っ込みはひとまず勘弁を。)
・・・でここから。
r()を呼ぶのはいいが、アクション内でこれを呼んだ場合に、それ以降のインスタンス変数がビュー(ここではbar.rhtml)の中で使えなくなる。
続きを読む…
Hypertext Transfer Protocol — HTTP/1.1
the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user
HTTP/1.1でレスポンスコード
- 301 Moved Permanently
- 302 Found
- 307 Temporary Redirect
を受け取ったときにはリダイレクトする前にユーザに確認しないとダメだよというお話。
これでいつ街角でHTTP/1.1のリダイレクトについて質問されても答えられるよママン。