2009-01-01から1年間の記事一覧

BP Study#20 Wicket for Beginers

株式会社ビープラウド 発表者はid:t_yano 本体はグラサン巫女で、会場に来ているのは式神(自称) Wicketの特徴 UIをコンポーネントベースで制御 フレームワーク上で作られるプログラムもオブジェクト指向になる オブジェクト指向 データと振る舞いのパッケー…

バージョン管理とか

Mercurial活用について 1月からMercurialを使い続けて↓の本の内容は大分身に付いてきた感じ。入門Mercurial Linux/Windows対応作者: 藤原克則出版社/メーカー: 秀和システム発売日: 2009/01/20メディア: 単行本購入: 10人 クリック: 220回この商品を含むブロ…

selectボックスの各オプションの値とテキストをタブ区切りでクリップボードに取得

jQueryを読み込んでFirebugでやる。 copy( $('select[name=hoge] option').map(function(i,n){ var $n = $(n); return $n.val() ? $n.val()+'\t'+$.trim($n.text()) : undefined; }) .get() .join('\n') );

Perlでハッシュの上書き

追記 これで良かった use strict; use warnings; use Data::Dumper; my %hash1 = (a=>1,b=>2,c=>3); print Dumper \%hash1; #$VAR1 = { # 'c' => 3, # 'a' => 1, # 'b' => 2 # }; my %hash2 = (b=>5,d=>6); print Dumper \%hash2; #$VAR1 = { # 'b' => 5, # …

formの各項目のnameとvalueを画面上に表示する

どんなの? ↓こんなの 前置き 人に説明するときの簡単な資料として使ったり、 印刷して横に置いて見ながらコード書いたりとか。 業務系システムの画面なんかだと項目がべらぼうに多いこともよくあるので、 普通のスクリーンショットに手でポチポチ書いていっ…

BP Study#19 Google Apps & Google App Engine

株式会社ビープラウド Google Apps 独自ドメインでGoogleのWebアプリを使える。 メール・カレンダー・ドキュメント・サイト・連絡先・ビデオ APIやサービスが結構充実している 細かい要求についてはAPIを叩いて各自実現すれば良いのでGoogleはそんなに実装し…

SoozyCon7

Django URLField(verify_exists=True)とするとHTTPリクエスト飛ばして存在確認するとかすげぇ Modelにかなり詳細な情報が入っているのでModelからFormが作れる Signal eventを発生させる 任意の箇所で発生させられる ORMのデータ変更とかも テンプレート テ…

hg serveで表示しているhg annotateの結果を強調表示するbookmarklet

実行するとリビジョン番号を聞いてくるので、 数字を入れると、その次以降のリビジョン番号の行のみ強調表示する。 javascript:(function%20(options)%20{var%20s=document.createElement('script');var%20head=document.getElementsByTagName('head')[0];va…

ある要素内の文字列を置換する

var el = $('#id'); el.html(el.html().replace(/word/ig, "")); http://www.catswhocode.com/blog/8-awesome-jquery-tips-and-tricks この例酷すぎるでしょ。 置換対象の文字列がHTMLのタグ名に含まれるものならHTMLの構造が壊れるし、 属性の値と一致して…

Perlで二つの配列の積集合を取得

use strict; use Data::Dumper; my @array1 = (1,2,3,4,5); my @array2 = (2,4,5,6,7); my %in_array1 = (); @in_array1{@array1} = map {1;} @array1; print Dumper grep { $in_array1{$_}} @array2; #$VAR1 = 2; #$VAR2 = 4; #$VAR3 = 5; こんなんでよい?…

jQuery1.3への移行について

3 Quick Steps for a Painless Upgrade to jQuery 1.3 | Learning jQuery ブコメでメモしようとしたら長くなったので CSSセレクタでのXPath式属性指定が廃止された $('[@title=foo]');→$('[title=foo]'); カスタムセレクタの実装をJavaScriptコードの文字列…

.hgignoreをどうするか相談しようそうしような時のやり方について

管理したいディレクトリ上でhg initする 暫定版の.hgignoreを書く(参考:.何某ファイルを管理対象から除外する - 文殊堂) hg st > /home/hogehoge/hg_st.txt 管理対象になるファイルの一覧を出力する hg st -i -X logs > /home/hogehoge/hg_st_i.txt 管理対…

.何某ファイルを管理対象から除外する

リポジトリのトップがどれかのアカウントでのhomeだった場合には、 .bashrcとかいった.何某ファイルが大量にあって、 そういったファイルをhg cloneとかで一緒に持って行きたくないものです。 Mercurialでファイルを管理対象から除外するには.hgignoreに記述…

java-ja温泉費用おごるます

第1回チキチキ絶対に笑ってはいけないjava-ja 温泉 http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E5%8D%81%E4%B8%89%E5%9B%9E 開催期間:2009/04/17〜2009/04/19 学生とかの参加費用出します(2人まで) 条件 学生 社会人(新人) 2年目くらいまで 連絡方法…

業務システムとか

クソの役にも立たない言葉なので使うのやめようぜ というのは半分冗談だけど半分本音。 「業務システムでは実装なんて3割程度だから大して重要ではない」がSI業界が解決すべき問題を端的に示している - @katzchang.contexts このエントリ見てふと思ったんだ…

『技術者/プログラマのためのラムダ計算、論理、圏』セミナー#2

関数 プログラミング言語における戻り値を返すサブルーチンという狭い意味ではない 何らかの入力に対して何らかの出力をするものの総称 ルールに基づいて答えを返すならどのような計算機械でも関数と呼べる 関数の表現 値の表現と関数は違う 5 != 5という数…

『技術者/プログラマのためのラムダ計算、論理、圏』セミナー#1

告知:「技術者/プログラマのためのラムダ計算、論理、圏」セミナー - 檜山正幸のキマイラ飼育記 セミナー補足:報告記事とか後悔とか独り言とか - 檜山正幸のキマイラ飼育記 Diary?::2009-01-24 「ラムダ計算、論理、圏」セミナー(第1回)の報告+次回の…

jQueryでのDOM要素生成

$('') とすると、 (中略) 空の div タグを作って、その中に innerHTML で HTML 文字列を流し込んで DOM ノードを作成しているようだ。 http://d.hatena.ne.jp/nitoyon/20090219/object_jquery これ、1.3系では$('')とか$('')の場合は createElementでDOM要素…

属人性の排除とか(デブサミ2009&BPStudy#18編)

DevSumi2009 Hudson によるインクリメンタルな開発 - 文殊堂 継続的インテグレーションとか DevSumi2009 「レガシーコード」とはいったい!? 〜あなたも書いてるかもしれないレガシーコード〜 - 文殊堂 Edit&PrayをCover&Modifyにする為にテストコードを書き…

BP Study#18 Comet on MochiwebとGoogle App Engine

id:voluntas Comet on Mochiweb Erlang サーバ/データベースを書く為の言語 軽量プロセスを大量に作成可能 関数型というがかなり独特、しいていうならErlang型言語 言語自体の学習コストは低い フレームワークがついてくるがそっちの学習コストが高い 軽量プ…

BP Study#18 リーンソフトウェア開発

MOONGIFTの人 途中から参加 せつめー 毎日ビルド&テスト 決定は先に遅らせる 例えば、開発が始まるずっと前にフレームワーク等を決定してしまうと柔軟性がなくなる 状況の変化 あらかじめオプションを用意しておく(各特性を把握しておく) どこで判断するかは…

DevSumi2009 Webセキュリティ攻守攻防パネルディスカッション「Webアプリケーション/Ajaxセキュリティ徹底バトル」

XSSで何ができるか? cookie情報、formの送信内容を盗む、偽の情報を見せる 「信頼出来ないWebサイト」でのXSSはそもそも無意味 信頼してほしいならXSSくらい直せ イントラだったら関係ない? むしろイントラ内の方が盗みたい情報がいっぱいある JSONによる…

DevSumi2009 「レガシーコード」とはいったい!? 〜あなたも書いてるかもしれないレガシーコード〜

Working Effectively With Legacy Codeの日本語版がもう少しで出る。->あとで買う レガシーコード テストコードが書かれていないコード 基本用語 Edit&Pray 編集し、そして祈る 不安を抱きながらコードを変更 現在のソフトウェア開発の主流 Cover&Modify カ…

DevSumi2009 Hudson によるインクリメンタルな開発

CI(継続的インテグレーション)とは システムのインテグレーション作業を開発の初期段階から行う事 2000年にマーチン・ファウラーが論文を書いてるのでそんなに新しい訳じゃない CIのメリット 品質向上…ビルドやテストが通らないと言った不具合が先送りされに…

DevSumi2009 デベロッパーに贈る!M-V-VMパターンで造るWPFアプリケーション

GUIプログラミングについて興味があったので聞いた。 これをJavaScriptでのリッチUI作成に応用出来ないか考えたい。 MVCとM-V-VM MVCにおけるViewは出力だが、 M-V-VMにおけるViewは データの視覚化 ユーザの操作を受け取る M-V データバインディング 2つの…

DevSumi2009 株式会社はてなの開発戦略

Git 話を聞いている感じではほぼMercurialと同じだなー はてながgitに移行出来た理由 SVNリポジトリが壊れた Capistrano経由のsvn upデプロイができない 特定のリビジョンが完全にぶっ壊れていた 移行 Capistrano2.2でgit対応 git-svn ディレクトリ単位のコ…

DevSumi2009 ブラウザJavaScript高速化JITバトル最終決戦

JavaScriptのVMを実装する上でのポイント クラスがないのをなんとかする(JS固有の問題) ハッシュ表検索+配列アクセスは遅い 仮のClassを設定する。構造が同じなら同じClassとする。 実行時に仮Classにとってイレギュラーなプロパティに代入が行われた場合は…

2009年2月に購入した本

例によって随時更新 購入分 人月の神話―狼人間を撃つ銀の弾はない (Professional computing series (別巻3))作者: Jr.,フレデリック・P.ブルックス,Frederick Phillips,Jr. Brooks,滝沢徹,富沢昇,牧野祐子出版社/メーカー: ピアソンエデュケーション発売日: …

属人性の排除とか(プログラマ以外編)

ちょっと昔話 私が前の会社で新人の頃に最初に行かされた案件の話。 誰もが知っている大手SI屋が元請けで誰もが知っている家電メーカー相手にやっている2000人月の大規模プロジェクトで、 新人だった私には各テスト環境向けにビルドとデプロイをするだけの刺…

属人性の排除とか(プログラマ編)

最近喧々諤々やってる議論とは関係ないエントリを読んで凄く共感した。 プログラマーの誇りを見せ付けろ - レベルエンター山本大のブログ 読んだのはこのエントリなんだけど、 「属人性を排除出来てるからコードなんて新人に書かせれば良いのだ」と言いつつ…