Ruby-1.9.1では、以下のように配列リテラルの中でHashを定義する事が出来るようになったのですね。

   1  [:foo, :bar => :baz]
   2  #=> [:foo, {:bar=>:baz}]

いままでも、

   1  [:foo => :bar]

のような形式であればOKだったのですが、配列リテラルの中に Hash以外の要素を含む場合には構文エラーが発生していました。

posted by Png genki on Fri 6 Feb 2009 at 18:31

今日は小ネタです。

Viewの背景画像をgroupTableViewBackgroundColorにする

iPhone Simulator.png

グループ テーブルの背景で使われている細かい縦縞の背景。なんだか単純な色よりはこちらの方がリッチな感じがするように思いますw

   1  	 self.view.backgroundColor = [UIColor groupTableViewBackgroundColor];

携帯に画像送付:SKPSMTPMessage

http://code.google.com/p/skpsmtpmessage/

メール送信にSKPSMTPMessageを使っていますが、画像添付した際、ThunderbirdやGmail、iPhoneのメールappでは画像がちゃんと見れるのに、au携帯では添付ファイル有りと認識されているのにもかかわらず、表示することができない現象が起きていました。

色々調べた結果、Base64エンコードの際に改行されていないのが問題かと行き着いたので、Base64Transcoder.m内の改行出力をしている行(126行目あたり等)でコメントアウトされているところを有効にしたところ、無事携帯でも画像が見れるようになりました! yay!

   1  //Base64Transcoder.m
   2  if (theOutIndex % 74 == 72)
   3  {	
   4  	outOutputData[theOutIndex++] = '\r';	
   5  	outOutputData[theOutIndex++] = '\n';	
   6  }

posted by Png satoko on Fri 6 Feb 2009 at 17:41

via http://dev.mysql.com/doc/refman/5.0/en/timestamp.html

自分用MySQLメモ:
デフォルト値を指定する場合、NOW()ではなくてCURRENT_TIMESTAMPというお話。

   1  CREATE TABLE items (
   2  	id INTEGER NOT NULL PRIMARY KEY,
   3  	title VARCHAR(255) NOT NULL DEFAULT('title'),
   4  	created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
   5  );

mysql.comより

CREATE TABLE t (
ts1 TIMESTAMP DEFAULT 0,
ts2 TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP);

http://dev.mysql.com/doc/refman/5.0/en/timestamp.html

posted by Png satoko on Fri 6 Feb 2009 at 10:17

従来のソフトウェア工学が決定的に間違っている点

従来のソフトウェア工学が決定的に間違っている点は、 ソフトウェアを作るソフトウェアに関する工学ではない事だと思う。

100倍の生産性を達成するためには、ひとつ階段を上にのぼる必要がある。

従来のソフトウェアエンジニア人事工学が決定的に間違っている点

「やらなきゃいけない」仕事が20%で、残りの80%が「やりたいしごと」。たとえ単純作業でも、残り80%にそれが属しているのであれば嬉々としてやってしまう。彼らからこれを取り上げてしまうと、残り20%も小さくなってしまう。好きなようにやらせておくのが吉である。

つまらないコードを生成するコードを書く事は、 つまらないコードを書く事自体と比べて何倍も面白い。

手でコードを書くプログラマと、コードにコードを書かせるメタプログラマでは、 規模が大きな仕事になるほど差が開いていくと思う。

「ソフトウェア工学」は矛盾語法か?

真のソフトウェア工学はまだ未来のものだ。一年とかけずに三千人以下でエンパイアステートビルを造り上げるようなものは、現在のソフトウェア工学に存在しない。(中略) 何十万もの奴隷を何十年も使い石に石を重ねてゆく様は、まさに今日ほとんどのソフトウェア開発で行われている事だ。

真のソフトウェア工学は、もう存在している。それは、 タワークレーンを使った高層ビル建築 に似ている。 メタプログラマーの仕事は、タワークレーンを組み立てるために小さなクレーンを動かす事だ。 それを実現するための道具はもう揃っていると思う。 それを使いこなしてる人もそれなりにいる。 では何が足りないのだろうか。

tc

それはなんと言っても、実績が足りない。というか無い。 例えば5人のメタプログラマーの会社が、500億円の案件を50億円で受注したというような事例は皆無だと思う。 経営者は、万が一プロジェクトが失敗に終わった時に、実績が無い事に手を出した事を責められる事になる。 しかしながら、これについては成功事例が生まれれば改善する可能性があると思う。 営利企業の経営者が、これほどの節約機会を見過ごすとは思えない。

という事で、システム経費を劇的に圧縮する方法をお探しの方は、 までご相談ください :-)

追記

  • 「真のソフトウェア工学」という名称使ったのは、引用元の「「ソフトウェア工学」は矛盾語法か?」の中で使われている名称をそのまま受けての事です。そういう学問が存在してるよ、という事を言いたかった訳ではないです。
posted by Png genki on Fri 6 Feb 2009 at 08:12

ss

Yay! I am looking forward to it very much!

Merbはmerb-action-argsが無くても動くのだけど、 あの格好良さを知ってしまうとね・・・。

posted by Png genki on Fri 6 Feb 2009 at 06:02
Contents
Ruby-1.9.1のHashリテラル
[iPhone] 今日の収穫:groupTableViewBackgroundColor, SKPSMTPMessageで携帯に画像送付
[MySQL] Create文ではNOW()ではなくてCURRENT_TIMESTAMP
真のソフトウェア工学はもう存在している
Merbist達のRuby-1.9は1.9.2から始まるらしい
Comments
瀧内元気: MacOS版は以下にあります * [genki/ViMouse](https://githu... '23-1
KingofSmack: Here also good reads for this mobile applicatio... '14-5
Spencer: You don't have to re-compile it, this version w... '14-4
staiano: Any chance we can get a recompile for 10.9? '14-1
dsjf: https://gist.github.com/6bf1bf2c3cbb5eb6e7a7 これ... '13-1
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ