タグ

ブックマーク / kiwanami.hatenadiary.org (11)

  • Wanderlustと文字コード - 技術日記@kiwanami

    Wanderlustをもう5年以上使っているが、丸数字を含むメールで苦労していた。ローカルのファイルの読み書きは問題ないが、Wanderlust上では送信・受信でうまくいかない。 昔は Content-Type に charset=ISO-2022-JP って書いてありながら、iso-2022-jpの文字集合にない文字を使うようなメールは容赦なく切り捨てていた。添付ファイルの扱いも変だし、そんなうんこメー(ry 時は流れて、今や方眼紙Excelとメールに明け暮れるスーツな毎日。今時メールで丸数字や人名にハシゴ高が使えないメールソフトを使い続けるのは単に痛い人でしかない。というより、FromやToの欄にiso-2022-jp以外の文字集合の人(例えば(株)とか)がいるだけでアウトなので自分が辛い。 もう世間はGmailでUTF-8文を送っても問題が無くなり、しかも cp50220 という

    Wanderlustと文字コード - 技術日記@kiwanami
  • id-manager.el - 技術日記@kiwanami

    いい加減ちゃんとIDの管理をしようと思って、Emacsで動くID/Password管理ツールを作ってみました。gpgが入っていて、EasyPGやalpacaなどで自動的にファイルが暗号化される仕組みを前提にしています。UbuntuのEmacs23.1でしか試していませんが、ちょっと直せばMacWindowsEmacsでも動くと思います。 svn: http://svn.codecheck.in/lang/elisp/id-manager/trunk/id-manager.el 上のelispを適当なところにおいて、 (require 'id-manager) します。例によってanything前提で、 (global-set-key (kbd "M-7") 'id-manager) としておけば、M-7などで起動します。anythingで絞り込んでパスワードをコピーしたり、参照したり、

    id-manager.el - 技術日記@kiwanami
  • tenjin.web/5 MVC その後 - 技術日記@kiwanami

    id:brazilと設計やtenjin.webについて議論。 細かいところと大きなところ 設計レベルの話も重要だが、実装レベルの細かいところも重要。名前とかスコープとかインデントとかコメントとか。(参考:良いコ-ドへの道―普通のプログラマのためのステップアップガイド:連載|gihyo.jp … 技術評論社 by id:agt) そういう細かいところの積み重ねが、大きなプログラムで効いてくる。プロジェクトで実際に使うテクの大半が、細かいテク。大局的な設計の考え方も、実際にはその細かいテクの延長線上にある。 ペアプログラミングとか、グループで実装とか、コードレビューとか、細かいところもネタにしていきたい。 MVCは難しい 実装を進めていくと、どうしてもこんがらがる。VとCが融合するとでかくなるし、VとCを分けるとイベント通知やconnectが複雑になる。 GUI構築時と動作時のスコープが違うの

    tenjin.web/5 MVC その後 - 技術日記@kiwanami
  • tenjin.web/5 MVC やりました - 技術日記@kiwanami

    今回に限らず準備が大変なのですが、id:brazilに手伝ってもらって、なんとか面白い感じで出来ました。ありがとうございます。また、来ていただいた人もレベルが高く、いろいろと議論では参考になりました。ありがとうございました。 当日の資料は tenjin.web/5 MVC においてあります。実習時間のコードですが、ふじた先生のコードが参考になります。というか、短時間で普通に使える物が出来るところがさすがですね。 次回はまだ考え中ですが、ネタの議論もかねてそろそろOST3をやろうという話になっています。

    tenjin.web/5 MVC やりました - 技術日記@kiwanami
  • 2008-05-19

    4月のRubyist九州にて小ネタとして出したもの。以前のJSHashのすこし改良版。id:authorNariさん、遅くなってごめんなさい。 class BlankSlate instance_methods.each { |m| undef_method m unless m =~ /^__/ } end class JSHash < BlankSlate def initialize(org) @hash = org.inject({}) {|memo,i| k,v = i # SymbolはJSに合わせてStringに変換 memo[ (k.kind_of? Symbol) ? k.to_s : k ] = v memo } end def method_missing(sym, *args) name = sym.to_s if name =~ /=$/ name = name[

    2008-05-19
  • tenjin.web/2の資料・レポート - 技術日記@kiwanami

    書きました。 http://tenjin-web.jottit.com/workshop/greasemonkey

    tenjin.web/2の資料・レポート - 技術日記@kiwanami
  • tenjin.web/2 告知 - 技術日記@kiwanami

    毎回大変遅れてすみません。 tenjin.web/2 日程: 2008/05/03 (sat) 時間: 14:00 - 17:00程度 場所: 正晃テック 天神オフィス (福岡市中央区今泉1-13-17 向栄ビル2F) 予定人数:10人ぐらい 参加費:お茶代程度 内容 : GreaseMonkeyとJavaScript/DOM入門 目標 GreaseMonkeyで書き換えてみよう DOMの理解 intro GMとは〜GMの導入 GMを始める GMでの新規スクリプト、エディタ、書き方、デバッグ 書き換え、サイトの再構築 練習問題などで実践 GMで広がる新しい視点 XHR、保存領域 GM披露大会 自慢のGMコードを見せつけましょう 自作GreaseMonkey大会もやりたいと思いますので、何かネタがあるといいと思います。もちろんなくても大丈夫です。 人数把握の都合がありますので、参加ご希望の方

    tenjin.web/2 告知 - 技術日記@kiwanami
  • tenjin.web/2 - 技術日記@kiwanami

    tenjin.web/2 「GreaseMonkeyとJavaScript/DOM入門(仮称)」を今週末の 5/3(土) に行います。場所はまだ確定では無いですが、前回と同じ今泉の正晃テック天神オフィスで調整中です。 なかなか時期が伸び伸びになってしまいすみません。今回は何がなんでもします。

    tenjin.web/2 - 技術日記@kiwanami
  • Vistaとの決別 〜 Ubuntu 7.10 導入 - 技術日記@kiwanami

    結局、Vista上のNTEmacsの動きが納得行かなかったり(Wanderlustとかmigemoとか)、CygwinのzshがTabで補完をしようとすると5回に1回ぐらいの頻度で落ちたり、antやconfigureやmakeがいつの間にか途中で落ちて固まっているのを後で発見したり、その他もろもろのVistaの障害で仕事や思考が中断され続けるのに、とうとう我慢の限界を越えた。多分、直接的に印象が悪かったのは Vista ではなくて、CygwinやVista上で動くEmacs達なのかもしれないけれど、他にもいくつか動かないプログラムもあったし、「実は互換性が多少ある違うOSなんだよ」と言われるぐらいなら始めから違うOSにしてやれと、Ubuntuを入れることに決めた。メインマシンを完全にLinuxにするのは8年ぶりぐらい。 インストール インストール自体は前評判どおり、何のトラブルもなくすんな

    Vistaとの決別 〜 Ubuntu 7.10 導入 - 技術日記@kiwanami
  • JS Inspect - 技術日記@kiwanami

    JavaScriptでユニットテスト的なプログラムを書いていたのだけど、テスト結果の表示が面倒なので結果を配列やオブジェクトに詰めてFirebugのコンソールに表示していた。書く分にはテストを入れ子にしたり、自由に組み合わせて便利だったのだけども、テストの数が多くなり始めたらいい加減見づらくなってきた。これが分かりやすくレイアウトされるだけで、JUnit的な「グリーンのバーがどうの〜」という感じになるのではないかと考えた。 また、JSONを見やすくレイアウトして眺めたいとか、JSONのドキュメントを書くのにJSONを綺麗に可視化したいという欲求もあったので、例によって長い移動時間でRubyのinspectみたいな物を作ってみようと考えた。 以下ソース例。 $(function() { var simple1 = [ 11, 22, 33, 44 ]; var simple2 = { nam

    JS Inspect - 技術日記@kiwanami
    IMAKADO
    IMAKADO 2007/11/06
    補完あり、 jq -> jquery -> jQuery みたいに賢く補完する。 すごく便利
  • 2007-10-13 - 技術日記@kiwanami JavaScriptで b-tree

    導入 ある日突然、JavaScript上で高速に追加・削除が行えて爆速で最小値を検索できる入れ物が欲しくなった。 普通(JavaとかFORTRANとか)ならここで素直に b-tree の実装に入るのだけども、JavaScriptは例によって変態言語なので、実は面倒なことせずにArrayに普通に入れて、素直にソートとか線形探索したほうが速いのかもしれないという疑問を持った。 しかも「最近全然技術日記してない」という突込みが入り、ついカッとなってベンチマークをとってみた。*1 調べ方 以下の3つの入れ物を実装。適当な実装を探してみたが、あまりいいものが無かったので車輪の再実装。 BTree 素直にb-treeを実装。速度よりは読み書きしやすさ優先。スペック通りなら、追加・削除、値の探索が高速。 SortedList 配列を常にソートしておいてb-searchで値探索、spliceで追加・削除。

    2007-10-13 - 技術日記@kiwanami JavaScriptで b-tree
    IMAKADO
    IMAKADO 2007/10/14
    どこから突込みがはいったのかが気になる。 Rails以外なら何でも良かった。
  • 1