Home

memo-space

SEQUENCEをリセットする

create table member (
  member_id sequence primary key,
  member_name text
);

みたいなテーブルがあって、そこから

 SELECT SETVAL('member_member_id_seq', SELECT MAX(member_id) FROM member);

という文字列を出力するSQL。何の目的で書いたかは忘れた。


select 'SELECT SETVAL(' ||
       quote_literal(c.relname) ||
       ', (SELECT MAX(' ||
       quote_ident(
      (select a.attname from pg_attribute a
        where a.attrelid = d.refobjid
          and a.attnum = d.refobjsubid)) ||
       ') FROM ' ||
       quote_ident(refc.relname) ||
       '));'
  from pg_depend d,
       pg_class c,
       pg_class refc
 where d.classid = (select oid from pg_class where relname = 'pg_class')
   and d.refclassid = d.classid
   and d.objid = c.oid
   and d.refobjid = refc.oid
   and c.relkind = 'S'
   and refc.relkind = 'r'

ハードディスクの中の人

bashのヒストリ検索

最近の今更覚えた知識。

bashってCtrl+rでヒストリのインクリメンタルサーチできるのか。readlineの機能なのでpsqlでも使えるじゃん。

pgpool failover command

ちょっと前に書いてほったらかしてあったんでさらしておく。

pgpool_failover_command.patch

pgpool.confに failover_command = 'hoge' と書いておくと、failover 発生時にそのコマンドを実行してくれるというものです。お約束として、ちゃんと検証してません。

DBの正規形は速度面でも有利?

DBの正規形は速度面でも有利? - DOA+コンソーシアムが測定を公開

そりゃそうだというか、まあケースバイケースなんだろうけど。非正規形にもいろいろあるので、本当にダメな非正規形は本当にダメです(縦に並べるべきデータを横に並べてるとか)。

正規形ってのは重複値の排除なわけで、それだけでデータ量を減らすことができる=>IOが減らせるって考え方もできます。

正規化したデータはチューニングでパフォーマンスが良くなる、というよりかは、本当にダメな非正規形のデータはチューニングのしようが無いという気もします。あと、正規化を崩すこと自身がチューニングの手段な場合もあるわけだけど、それってトリガを使ってどうこうとか、テーブル構造だけでは語れないと思います。

Einstein on Rails

Einstein on Rails

ねーよw

Java Seminar(を忘れる)

土曜日はJava Seminar in Sapporoだったのだがすっかり忘れてお買い物。途中でふと気付いたのはよかったんだけれど、Java Festaと勘違いしてすっかりコンベンションセンター方面でやってるもんだと思って、駅前から一旦家に引き返す。で、実は場所は北大だということに気付く。

北大でお約束のようにさんざん迷う。頼むから要所要所に地図をおいてくれ>北大。

で、到着するととりあえず爆睡(コラ)。最後の二つはまともに聞けました。Sunの川口さんの「定時退社のためのJava」すごく面白かったです。生産性を上げるためにIDEやツール、自動ビルドや自動テストを使いましょうという話。プレゼン上手いし。時間がかなり押してたので駆け足になってしまったのが残念。卓球台を導入すると生産性があがるらしいですよ。

何時に寝たのかわからんが日曜日は全く起きることができず。何も食わずに今まで寝てました。最近日曜はこんなパターンが多い。

11/14 追記:お名前間違えてました。あとこのセミナーの内容については、http://pcweb.mycom.co.jp/articles/2005/11/09/javaone4/にJavaOneの時の記事があります。

久しぶりにkitaraへ

ここを日記というのであれば、あまりに日常的なことを書かない日記ですが。たまにはこんなことも書いておこう。

久しぶりにkitaraへいってきた。札幌交響楽団第483回定期演奏会(A日程 夜公演)。ちなみに木曜日にはリハーサルが無料で公開されていたらしい。今度機会があったら見てみたい。

  • ムゾルグスキー/交響詩「はげ山の一夜」(原典版)
  • チャイコフスキー/ヴァイオリン協奏曲 ニ長調 Op.35
  • 休憩
  • バーンスタインl/シンフォニック・ダンス(「ウエストサイド・ストーリー」より)
  • バーンスタインl/管弦楽のためのディヴェルティメント

ぎりぎり開演に間に合い席につくと、マナーに関するアナウンス「、、、携帯電話の使用は禁止されております。マナーモードに設定のうえ、電源をお切りになるよう、、、」電源切るならマナーモードは関係無いんじゃないかと思いつつ、いやみなさんマナー良かったですよ。時々クラシックのコンサートで人の物音が気になっちゃうことがあるんだけど、今日は聴いてる方にも集中力を感じました。

そんな中、僕は前日も仕事で午前様だったのでヤバイなと思いつつ、やっぱりウトウトしてましたけどね。僕がクラシックを聴きにいく時はまあそんなもんです。空腹でお腹が鳴りだした時はヤヴァいなと思いましたが。

ウトウトしつつも、二曲目はすごく良かったです。ソリストのジョゼフ・リンさんは若くて男前。曲はオーケストラの楽しさを詰め込んだような華やかな曲。グっときました。

リンさんのヴァイオリンによるアンコールの後(曲はイザイのソナタ?すいません覚えてません)、休憩をはさんで後半はバーンスタイン。こっちはチャイコフスキーとは違う楽しさ。なんかやたら楽器多いんですけど、、、パーカスが6人もいるし、ハープだピアノだ、ピアノの横にあったアレがチェレスタ?「こんぺいとうの踊り」のアレかな。パーカス大暴れ。「マンボ!」と叫ぶオケ。跳ねる指揮者。こういう曲は指揮者が一番楽しそうに見える。

あーそうそうそういえば

TODO item -- Improve psql's handling of multi-line queries

そもそもコレ、TODOにあったなんて知らなかったし。みんなが幸せになれるんならそれでいいじゃない。8.2で取り込まれるでしょう。

初雪

結構いい勢いで振りました。でも例年よりは遅いそうで。

寒候期現象の平年値

これを見ると倶知安恐るべしって感じです。10月5日〜5月21日まで霜かよ。

記法重要(3)

やっと続きを書きますが。

ちょっと前の平鍋さんのblogはユースケース重要!(not 図、but 記述)だった。「○○重要」は名フレーズだと思う。 用法としては、○○は軽視されがちだけれど、○○にはちょっと聞いただけではわからないような、体験してみて初めてわかるような力がある。ということを主張したい場合に使うのがよさそう。

僕が記法について言いたいこともそういったことだけれど、僕がいわんとしている「記法」についていまいち上手く定義できていない(し、まだ定義したくないんだと思う)。なのでこんなにダラダラと書いているわけだ。

こんなことを思うようになった経緯みたいなのを思い出しつつダラダラ書きます。

例えばWebアプリケーションだと、テンプレートエンジンを使って見た目とロジックを分割するというのはよくある手法だ。これは1つのことを表現するのに2つの記法を使っている。それゆえ敬遠されることもある。あと、最近流行のフレームワークとか、DIとかも、ソースファイルから情報を抜き出してxmlファイルにしているので似ていると思うわけです。

アノテーションだとかXDocletとか(すいません。このへん実は全然理解せずに書いてますが)なんかは、、、1つのソースに複数の記法を使って、で、そこから複数の成果物を作ったりする場合もあるのかな。

とにかく最近、そういう「別の記法」を使うとうケースをよく見掛けるなと思うわけです。

で、そういうのは別の記法を使うがゆえに敬遠されたりもするわけです。なんでいちいち新しいのを覚えなきゃなんないんだよ、と。出来ることは同じなのに。と。

でも僕は最近、その「別の記法」には使ってみなければわからない力があるんじゃないかなと思っているわけです。だからといって記法が氾濫するのを良しと思っているわけではなくて、そういう可能性があるからこそ、「別の記法」の設計は注意深く行なわなければならないんじゃないか、と。だから、機能が同じであっても記法がダメなものはダメ。その記法の善し悪しに関してはこれから考えていきたいと思っています。

プログラミングを学ぶ別の方法

進研ゼミとか公文式とか駅前留学とか、そういうところから何か学ぶ方法についてのアイディアをもってこれないもんか。

本買ってググってMLで質問して、、、っていうのが向かない人も当然いるわけで。

おっとこれも買わなきゃね

NetBeansでJavaの本がでますヽ( ̄▽ ̄)ノ

656ページって、、、100ページそこそこで死ぬかと思ったのに(書く方の立場としてね)。

普段から人に教えてる人だし、独自の切り口という匂いがプンプンしますね。

PHPは簡単か?

yohgakiさんのblog、 なか見!検索 - Amazonでも中身が見れる より。エントリの本質的なところじゃないところですが。

「はじめてのPHP言語プログラミング入門」はプログラミング初心者には不評、プログラミング経験者には好評、と評価がはっきり分かれる本なので、、、

そうかぁ。あの本初心者には不評ですかぁ、、、まあ申しわけないが僕もきちんと読んではいないのだけれど、パラリと見た瞬間からこの本は間違いなく良書だと思った(なんで会社では買ってもらいました)。改訂を重ね、年月を経るごとに評価されるロングセラーになってほしいなぁと思っている。

で、ふと思ったのは、この本が初心者に不評ということは、実はPHPという言語そのものが初心者にとっては難しい言語なんじゃないかな、ということだ。

というのはちょっと言いすぎかもしれないけれど、PHPという言語は、既存のほかの言語の概念やら構文やらを惜しげもなく取り込んだ(?)という特徴がある。 このことは、他に2〜3の言語をすでにマスターしている人にとってはすごく習得のハードルを低くしているんだけど、そうでない人にとっては(前者の人が思っているほどには)簡単ではないのかもしれない。 (たぶんこんな関数が用意されているハズだ!という洞察力を要求されるし)。

まあまず「初心者」「はじめての」がPHPにおけるそれを指すか、プログラミングそのものにおけるそれを指すか、というのもあって、PHPにおいては後者のパターンが多いのかな。

プログラミングそのものの初心者にとって易しい言語ってなんだろう、という視点で考えるとほとんどの言語はダメなような気がする。もういっそアセンブラあたりかもしれなしw

Home

Search
Feeds
Profile
石田@苫小牧市と名乗りつつ札幌の某社に勤務するプログラマ
書いた本
Links

Page Top