ToDo:
http://mixi.jp/view_community.pl?id=275305
via http://www.jmuk.org/d/?path=2006/11/09#d09t02
(01:52)
1st tybalt89 56 Perl 10,000 (v2) 2nd kinaba 67 Perl 8,358 (v11)
来たみたいですね…
(02:20)
なんせまずオーバーラップのしかたからしてたぶん違う。
一番短いアレは
BITS 32 org 0 db 0x7f, "ELF" ; e_ident phdr: dd 1 ; p_type dd 0 ; p_offset dd 0 ; p_vaddr dw 2 ; e_type ; p_paddr dw 3 ; e_machine dd filesize ; e_version ; p_filesz dd filesize ; e_entry ; p_memsz dd phdr ; e_phoff ; p_flags dd 0 ; e_shoff ; p_align dd 0 ; e_flags dw 0 ; e_shsize dw 32 ; e_phentsize dw 1 ; e_phnum dw 0,0,0 filesize equ $ - $$
これが原形。 これはすごい綺麗に重なってるけど、 e_phoff と p_flags がうまくいかんのだよね。 パーミッションがあわん
(05:18)
i@u ~/wrk/binhacks> nasm tiny.asm i@u ~/wrk/binhacks> la tiny -rwxr-xr-x 1 i 64 2006-11-10 05:22 tiny* i@u ~/wrk/binhacks> ./tiny zsh: no such file or directory: ./tiny
(05:22)
i@u ~/wrk/binhacks> ./hello73 Hello world i@u ~/wrk/binhacks> la hello73 -rwxr-xr-x 1 i 70 2006-11-10 05:47 hello73*
(05:48)
愛が足りないですね…
i@u ~/wrk/binhacks> nasm hello73.asm i@u ~/wrk/binhacks> la hello73 -rwxr-xr-x 1 i 65 2006-11-10 07:16 hello73* i@u ~/wrk/binhacks> ./hello73 Hello world
(07:16)
繰り返しになるけどそもそも現行方針は64Bが打ち止めなわけで。
(07:23)
http://d.hatena.ne.jp/kikx/20061110#1163114535
irb(main):005:0> 52-6+14 => 60
どこに Hello, world!\n 入ってるねん。 あとまぁ 1B ずつずらすのは考えたんですけど、 前考えた時はどこにも入らんという結論だったのと、 今回はすぐ頭が痛くなって日和ってますた…
(14:23)
ヘッダの意味を勘違いしてるみたいだ。 有力候補は p_offset とか p_filesz 。
図をぱくらせてもらって考えてた。 s はでかい値だとダメで上の2つは 0 じゃないとダメだったはず…
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
ここから 2B は同じくダメ。
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
次の 1B もそう。あ、 p_offset もだめな気が。
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
次の 2B もそう。
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
これしばらく続く。
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
これもちょいと続くよ
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
しばらく続いて、
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
これも続いて、結局、
00 04 08 0C 10 14 18 1C 20 24 28 2C 30 7f 45 4c 46 ** ** ** ** ** ** ** ** ** ** ** ** 02 00 03 00 ** ** ** ** SS SS SS SS PP 00 00 00 ** ** ** ** ** ** ** ** ** ** 20 00 01 00 ** ** ** ** ** ** 01 00 00 00 oo oo oo oo VV VV VV VV ** ** ** ** ss ss 00 00 mm mm mm mm *7 ** ** ** ** ** ** **
これじゃあ64Bが限界。
まぁどっかに勘違いがあるなり
(15:01)
http://d.hatena.ne.jp/kikx/20061110#1163148475
どこが普通やねんと…!
にしてもどこで止まってるんだろう。 kernel オプションとかだとすると p_flags 以外で止まるか止まらんか差があるってのもアレだなぁ。 strace してやるとだいたいどこで止まったかは 予想がつくものですが。
うちだと
とかだった気がします。 いや全然覚えてないぞ…!
なんにせよそのサイズで ヘッダに命令埋めつくしたのはすごいです…
(17:58)
76B はどこでも動くんだけど。
i@u ~> uname -a Linux u 2.6.17-10-generic #2 SMP Fri Oct 13 18:45:35 UTC 2006 i686 GNU/Linux
これが作業環境。
i@u3 ~/t> uname -a Linux u3 2.6.7-1-386 #1 Thu Jul 8 05:08:04 EDT 2004 i686 GNU/Linux i@u3 ~/t> la hello73 -rwxr-xr-x 1 i 65 2006-11-10 18:01 hello73* i@u3 ~/t> ./hello73 zsh: killed ./hello73
ぎゃー 65B のヤツが動かない。 65B のヤツは p_filesz と p_memsz に侵食してるから、 そこの制約が厳しいんだろうなぁ。
i@u3 ~/t> la ./hello72 -rwxr-xr-x 1 i 72 2006-11-10 18:00 ./hello72* i@u3 ~/t> ./hello72 Hello world
侵食してない 72B はオッケ。
i@un ~/t> uname -a Linux un 2.6.15.4 #1 SMP Mon Feb 27 17:28:54 JST 2006 i686 i686 i386 GNU/Linux i@un ~/t> ./hello73 Hello world i@un ~/t> ./hello72 Hello world
どっちもオケ。しかし hello73 が 65B という罠がひどい。
cf.sf.jp にて。
shinh@cf-x86-linux:~/t$ uname -a Linux cf-x86-linux 2.4.29-blade #1 2005年 3月 22日 火曜日 18:17:12 JST i686 GNU/Linux shinh@cf-x86-linux:~/t$ ./hello73 Hello world shinh@cf-x86-linux:~/t$ ./hello72 Hello world
どっちも動く。俺の誕生日にカーネルビルドするとはやるな。
cf.sf.jp
shinh@cf-amd64-linux:~/t> uname -a Linux cf-amd64-linux 2.4.21-297-smp #1 SMP Sat Jul 23 00:45:13 UTC 2005 x86_64 x86_64 x86_64 GNU/Linux shinh@cf-amd64-linux:~/t> ./hello72 Hello world shinh@cf-amd64-linux:~/t> ./hello73 Hello world
Opteron のマシンらしいね
sf.net のシェルサーバ
[shinh@sc8-pr-shell1]~/t% uname -a Linux sc8-pr-shell1.sourceforge.net 2.6.17.6 #1 SMP Sat Jul 15 16:00:03 PDT 2006 i686 i686 i386 GNU/Linux [shinh@sc8-pr-shell1]~/t% ./hello72 Hello world [shinh@sc8-pr-shell1]~/t% ./hello73 Hello world
-bash-3.00$ uname -a Linux shell.cf.sourceforge.net 2.6.9-42.0.2.ELsmp #1 SMP Wed Aug 23 00:17:26 CDT 2006 i686 i686 i386 GNU/Linux -bash-3.00$ ./hello72 Hello world -bash-3.00$ ./hello73 Hello world
shinh@x86-linux1:~/t$ uname -a Linux x86-linux1 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux shinh@x86-linux1:~/t$ ./hello72 Hello world shinh@x86-linux1:~/t$ ./hello73 Hello world
shinh@x86-linux2:~/t$ uname -a Linux x86-linux2.cf.sourceforge.net 2.6.10-1.771_FC2smp #1 SMP Mon Mar 28 01:10:51 EST 2005 i686 i686 i386 GNU/Linux shinh@x86-linux2:~/t$ ./hello72 Hello world shinh@x86-linux2:~/t$ ./hello73 Hello world
shinh@amd64-linux1:~/t$ uname -a Linux amd64-linux1.sourceforge.net 2.6.9-1.667smp #1 SMP Tue Nov 2 15:09:11 EST 2004 x86_64 x86_64 x86_64 GNU/Linux shinh@amd64-linux1:~/t$ ./hello76 Segmentation fault shinh@amd64-linux1:~/t$ ./hello73 Hello world Segmentation fault shinh@amd64-linux1:~/t$ ./hello72
72Bの方が帰ってこないよ!
全部どっかしらで問題出てるし。 というか 65B のヤツ_だけ_が動く64bit環境ってなにがおきてるの。
ちなみにすげーてきとうにぶっこんだファイル
(18:20)
第一回くやしさまぎらわせ大会
プギャー
1st shinh 82 Ruby 10,000 (v32) 2nd kinaba 83 Perl 9,879 (v16) 3rd kik 83 Ruby 9,879 (v23)
プギャー
2nd primo 50 Ruby 9,200 (v23) 3rd shinh 50 Ruby 9,200 (v17) 4th queball 51 Ruby 9,019 (v3) 5th kik 51 Ruby 9,019 (v5) 6th mame 51 Ruby 9,019 (v2)
とか書くと瞬時に逆転されそうで怖いのであった
(18:40)
ということは、一定ポータブルって条件を入れたら、 64B の Hello world (!,無し) が最短になる可能性が高いんだろうか。 そのくらいの難易度の争いじゃないと 歯牙にもかからん予感…
Debian でコケてた 65B hello73 は、
i@u3 ~/t> readelf -l hello73 readelf: エラー: Unable to read in 0x4b9 bytes of section headers readelf: エラー: Unable to read in 0x972000 bytes of section headers Elf ファイルタイプは EXEC (実行可能ファイル) です エントリポイント 0x20002e 1 個のプログラムヘッダ、始点オフセット 32 Program Headers: タイプ オフセット 仮想Addr 物理Addr FileSiz MemSiz Flg Align LOAD 0x000000 0x00200000 0x04b90001 0x02000 0xd578d01 WE 0xeb9380cd
この MemSiz がでかすぎる模様。
というわけでぶっちゃけこんなのはすぐ調整できる つーか lea 入れかえるだけだった。
; hello65.asm BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident hello: db "Hello world", 0xa dw 2 ; e_type dw 3 ; e_machine exit: xor EBX, EBX ; e_version int 0x80 dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr _start: mov ECX, 0x00200004 add [ECX], AL lea EAX, [EDI+4] inc EBX lea EDX, [EDI+0xd] int 0x80 xchg EBX, EAX jmp exit
とりあえず今晩はこれを 64B にしよう。
(19:07)
うわさどおり短い問題だ。
i@u ~/wrk/golf> ./golf.rb queen.rb 173 test 1: SUCCESS! 0.000000 0.000000 0.016667 ( 0.017802) test 2: SUCCESS! 0.000000 0.000000 0.016667 ( 0.018432) test 3: SUCCESS! 0.000000 0.000000 0.033333 ( 0.016652) test 4: SUCCESS! 0.000000 0.000000 0.033333 ( 0.016837) 173
(22:58)
NASMも触れんとなぁ、ということで Hello world! 76B を移植。 さらにゴルフしよう
; hello76.asm BITS 32 org 0x00000000 db 0x7F, "ELF" ; e_ident db "Hello world!" dw 2 ; e_type dw 3 ; e_machine _start: mov byte [EDI+0x10], 0xa ; e_version ; set "\n" dd _start ; e_entry ; fall through! dd phdr - $$ ; e_phoff lea EDX, [ECX+0xd] ; e_shoff lea EAX, [ECX+0x4] ; e_flags mov ECX, EAX jmp short label1 ; e_ehsize dw 32 ; e_phentsize phdr: dd 1 ; e_phnum ; p_type ; e_shentsize dd 0 ; e_shnum ; p_offset ; e_shstrndx dd 0 ; p_vaddr label1: inc EBX ; p_paddr jmp short label2 db 0 dd 76 ; p_filesz dd 76 ; p_memsz db 0xff ; p_flags label2: int 0x80 xchg EBX, EAX xor EBX, EBX ; p_align int 0x80 filesize equ $ - $$
(05:37)
このアプローチは賢いなぁとは思ったけど、 "Hello world" のある位置が 0x00200000 とかになっちゃって、 これがうっとうしいんだよなぁ…
さっきの Hello world は EAX(writeシステムコール) と ECX(4Byte目にHello worldが置いてある) が 一致してる、とかそういうのが美しいんだけど
; hello.asm BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident db "Hello world", 0xa dw 2 ; e_type dw 3 ; e_machine ;_start: jmp short label1 ; e_version ; dw 0 dd 1 ; e_version dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr dw 0 ; e_shentsize dd filesize ; e_shnum ; p_filesz ; e_shstrndx dd filesize ; p_memsz ; db 0xff dd 5 ; p_flags dd 0x1000 ; p_align ; _start: xor eax, eax ; inc eax ; int 0x80 ;_start: mov byte [EDI+0x10], 0xa ; p_flags _start: mov ECX, 0x00200000 ; p_align lea EDX, [EDI+0xd] ; p_align lea EAX, [EDI+0x4] lea ECX, [ECX+0x4] inc EBX int 0x80 xchg EBX, EAX xor EBX, EBX int 0x80 filesize equ $ - $$
コメント無茶苦茶やな。
(06:14)
さっきのは 88B
うーん ! は無いしなんかなぁ。 x86 って文字列コピー命令とかあったと思うけど、 あのへん使うと完全に 76B にはならん気がするなぁ。
あと綺麗に重なりすぎてて fall through できないのも美しくないよなぁ。
(06:19)
; hello.asm BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident db "Hello world", 0xa dw 2 ; e_type dw 3 ; e_machine exit: xor EBX, EBX ; e_version int 0x80 dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr dw 0 ; e_shentsize dd filesize ; e_shnum ; p_filesz ; e_shstrndx dd filesize ; p_memsz _start: inc ECX shl ECX, 21 lea EDX, [EDI+0xd] lea EAX, [EDI+0x4] add ECX, EAX inc EBX int 0x80 xchg EBX, EAX jmp exit filesize equ $ - $$
とりあえず普通にやると exit 0 するコードはこんなとこかな
(06:42)
(06:48)
末尾の ! にこだわるとすると、 うーんうまく e_type, e_machine が fall through できなくて、
BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident _start: inc EBX mov ECX, hello lea EDX, [EDI+0xd] inc EAX jmp short label1 dw 2 ; e_type dw 3 ; e_machine label1: ; e_version inc EAX inc EAX jmp short label2 dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr dw 0 ; e_shentsize dd filesize ; e_shnum ; p_filesz ; e_shstrndx dd filesize ; p_memsz db 0xff label2: inc EAX int 0x80 hello: db "Hello world!", 0x0a filesize equ $ - $$
で 73B 。これはセグる。 exit させたきゃもう3B。さらに1Bで正常終了に。 まぁ 76B 越えると意味がない。
末尾の ! にこだわらないなら
BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident db "Hello world", 0xa dw 2 ; e_type dw 3 ; e_machine _start: ; e_version inc ECX inc EAX jmp short main dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr dw 0 ; e_shentsize dd filesize ; e_shnum ; p_filesz ; e_shstrndx dd filesize ; p_memsz main: shl ECX, 21 lea EDX, [EDI+0xd] lea EBX, [EDI+0x4] add ECX, EBX sys: xchg EBX, EAX int 0x80 jmp short sys filesize equ $ - $$
の 72B あたりが、 exit 13 になっちゃうけど、一応。
exit 0 にすると、 73B になった。
BITS 32 org 0x00200000 db 0x7F, "ELF" ; e_ident db "Hello world", 0xa dw 2 ; e_type dw 3 ; e_machine exit: xor EBX, EBX ; e_version int 0x80 dd _start ; e_entry dd phdr - $$ ; e_phoff phdr: dd 1 ; e_shoff ; p_type dd 0 ; e_flags ; p_offset dd $$ ; e_ehsize ; p_vaddr ; e_phentsize dw 1 ; e_phnum ; p_paddr dw 0 ; e_shentsize dd filesize ; e_shnum ; p_filesz ; e_shstrndx dd filesize ; p_memsz _start: lea EDX, [EDI+0xd] lea EAX, [EDI+0x4] mov ECX, 0x00200004 inc EBX int 0x80 xchg EBX, EAX jmp exit filesize equ $ - $$
いずれにせよもっと命令を ヘッダに紛れこませればもうちょい削れる気がする…
(08:44)
2634.jp でアクセスを、っていう広告があったわけだけど、 promise.jp でも行けるんなら それでいいんじゃ、みたいなことを思ったのですが。
うーん俺プロミス→promiseは変換できるけど、 プロミス→2634はちょっと変換できないんだよ。 うーん。 どっちが全日本人、というか 金借りる側の人層にはわかりやすいんだろう…
たぶん puromisu.jp を取るといいと思うんだ。 と思ったら取ってあった。 さすが
(16:38)
例えばこの空間のてっぺんに、 私はここ1週間は自殺する予定の無いことを明記します、 最終確認日(○月○日)みたいなのを 手軽に更新できるように置いておけば、 事故か殺人の時に自殺だと誤認される リスクが減るとか。
あまりにどうでもいいリスクだった…!
(16:40)
やるべきことを書き出すといいらしい
とかはどうでもいいとして、
mail のあれはやりたいけど まず Apache 2.2 が欲しいんだよな…
どうでもいいけど昨日の Hello は readelf は SEGV するのに 実行はできるんだよ。
あと Ubuntu はウブンツーじゃないよ。 ユバントゥーだよ。 昨日全く通じなかった俺が言うんだから間違いない
(18:25)
以下のようなことに使われる予定です!
なんでそんな個人的なチャンネルに「さそい」って書いたんだろう
IRCだと消せないわけだ
(19:43)
http://d.hatena.ne.jp/kikx/20061109#1163073252
うへー。 ていうか file コマンドの出力がやけに短いんだけど そういう file コマンドなのやら ELF ヘッダがおかしいのやら… でも ELF ヘッダの e_type と e_machine はいると思うし…
あとそもそも今のやりかただと 限界までコードとヘッダ混ぜても64Bなんだ…
うんつーことは overlap のしかたからして違うんか。
(23:56)
要するにスパムボットはリクエスト投げてみて、 成功してなかったら ちまたによくあるチェックボックスしてね☆系との イタチゴッコ用であるところのアレで 適当に値入れてみてるんかな。
暇潰しに。
よくわかる偏差値
受験のことはあまり覚えてない気味なんだけど、 偏差値という概念は大好きだったので覚えています。
ので負数は邪魔)
たしか 20 かけて100足したのに相当するのが IQ?
まぁ第一義どうでもいい(本当に心底どうでもいい)
(01:07)
偏差値はあんまり10000越えたりとかはしないと思う。 そうじゃないとドラゴンボールみたいになっちゃうよ
i@u ~/wrk/golf> cat heikin.rb s=t=0 d=$<.map{|v|s+=v.to_i} s/=@n=d.size d.map{|v|t+=(v-s)**2} d.map{|v|p 50+10*(v-s)/Math.sqrt(t/@n)} i@u ~/wrk/golf> ruby heikin.rb 20 30 40 47.2943310962553 55.4113378074894 66.2340134224682
どうしよう。まだ全然違うよ
(01:09)
(01:14)
すぐ追いつかれるだろうな
3rd shinh 50 Ruby 9,200 (v17) 4th queball 51 Ruby 9,019 (v3) 5th kik 51 Ruby 9,019 (v5) 6th mame 51 Ruby 9,019 (v2)
ヘタすると抜かれる気がする
(03:43)
17th niha 71 Ruby 9,154 (v5) 18th shinh 73 Ruby 8,904 (v11)
これでやるきあっぷ ('-')v
(04:52)
(14:24)
http://yowaken.dip.jp/tdiary/20061108.html#p01
これで落ちるのか勉強になるな。 明日から使っていけるテクニークだ
i@un ~> ruby -e '($...$.).map{|[][$.+=$.]|}' -e:1: [BUG] Segmentation fault ruby 1.8.4 (2005-12-24) [i386-linux] zsh: abort ruby -e '($...$.).map{|[][$.+=$.]|}'
これじゃ遠く及ばないなぁ。 3H26B
(17:56)
http://alohakun.blog7.fc2.com/blog-category-7.html
たしか竜が1巻の最初の方で言ってたセリフです。
三段論法から、すぐに
という結論が導けますね。 すばらしいことです
(03:16)
http://yaplog.jp/mjc/archive/46
「…無職です。親の遺産でくらしています」
らしい。
どうでもいいけどあの「働いたら負けだと思っている」 とか言ってた人も、とてもこう強気というか、 自信まんまんだったのがすばらしいのであって、 自己嫌悪などを伴うニートは あまりよろしくないように思います。 なかなか凡人にはマネできませんが。
ニートでありながらヤクザに説教を垂れるような、 そんな
(03:20)
(03:49)
なんか献本もう来てるんかな。 俺来てませんがなにか。
どうでもいいけど こう有名ブロガーのみなさまに配って 宣伝させる計画というのがありましたが、 有名ブロガーのみなさまにはどのくらいで オマエにやるぞって連絡がいってるのだろうか。 予約とかしちゃうとアレなわけで、 そのへん気になる。
と書いておけば、みたいな
(04:25)
(04:35)
i@u3 ~> sudo fdisk -l /dev/hda Disk /dev/hda: 20.0 GB, 20003880960 bytes 255 heads, 63 sectors/track, 2432 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 637 5116671 c W95 FAT32 (LBA) /dev/hda2 2047 2432 3100545 eb BeOS fs /dev/hda3 638 2046 11317792+ f W95 Ext'd (LBA) /dev/hda5 638 880 1951866 83 Linux /dev/hda6 881 892 96358+ 82 Linux swap / Solaris /dev/hda7 893 1622 5863693+ 83 Linux
WinMe と Be 消せば Xen 余裕で入るよね…
(04:51)
http://sourceforge.net/mailarchive/forum.php?thread_id=8936174&forum_id=298
(05:08)
面白そうだから欲しいなぁ…と思ったけど 破産が見えてる以上セーブ気味なんだよなぁという。
まぁ買っちゃってもいい気はする。うんきっといい。
というメソッドはどうだろう
(05:37)
(07:03)
1st kinaba 71 Ruby 10,000 (v8) 2nd flagitious 71 Ruby 10,000 (v15) 3rd terjek 71 Perl 10,000 (v5) 4th shinh 71 Ruby 10,000 (v14) 5th kik 72 Ruby 9,861 (v5) 6th niha 72 Ruby 9,861 (v24)
(08:08)
s 78 n はるか下 s 78 n 75 s 78 n 74 s 74 n 74 s 73 n 74 s 73 n 72 s 72 n 72 s 71 n 72 ←今ここ
スタ〜トはこのへん
http://shinh.skr.jp/m/?date=20061024#p01
(08:16)
1st kik 70 Ruby 10,000 (v8) 2nd kinaba 71 Ruby 9,859 (v8) 3rd flagitious 71 Ruby 9,859 (v15) 4th terjek 71 Perl 9,859 (v5) 5th shinh 71 Ruby 9,859 (v14)
なんですって
(12:43)
(12:44)
http://shinh.skr.jp/m/?date=20061107#p20
というかなんで k2 をこんなに遅く配置したんだろう。
1st kik 70 Ruby 10,000 (v8) 2nd kinaba 70 Perl 10,000 (v9)
まぁさすがは、 「ゴルフで高得点をおさめるにはどうすればいいでしょう!?」 という悩みに、 「名前を k で始まるように改名するといいよ」 と返されるだけのことはあるというか
(16:09)
ぱらぱら見たけど、 特に深い感慨も無いのであった。 索引長いなというか。 みんな好き勝手線引いてたからな。
一つ感慨深かったのは、 バイナリアンという単語が見えたことかな。 他でも書いたような気もするけど、 あれってたぶん僕発の造語なんだよね。
b2con の話で、他に候補いますかという質問に対して、
うーん、あまりお友達いないので、特にバイナリアンと なるとちょっと思いつかないですね…
となんとなく使った (2005/11/06 20:14) のが、 たぶん最初なんじゃないだろうかと。 その後なんか高林さんが 「バイナリアンと呼ぶらしいです」などと ML に流した後みんな普通に使ってたというような。 お、なんかちょうどだいたい1年前だね。
とまぁ、将来バイナリアンという単語が普及しまくって 子供の夢にクラスの3割くらいが ばいなリあんって書くくらいになったら 孫に自慢するため書いておいた。
個人的には語感のよくわからなさが わりと好きだったりします。 ところで Rubyist というのは 仮に Ruby マンセーだったとしても ちっとも名乗る気が起きないくらい かっこ悪い呼称な気がしてるんだけど、 まぁバイナリアンとかも ハタから見るとキモいかもしれない… というようなことを考えずに、 Rubyist の方が Rubyist を自称する、 そういう文化をなんとなく 気にいってないのかもしれない。
なんかしらの呼称を自称するのが そもそもあまり好きでないとか。 そうそう VIPPER ってのもきらい。
まぁなんにせよ尊称的な意味あいが強い感じだし、 お〜れ〜はバイナリア〜ンガ〜キだいしょ〜、 とか言う機会は無いだろう。
なんかだらだら書くということは感慨深いのだろー
(16:40)
ツッコミ欄よりここに書く敷居が低いのは、 Emacs でメール投げるだけっていうのが コメントのしかたを探すよりはるかに 僕にとってラクだからなんだけど、 まぁ作ってみよう
(16:56)
i@um ~/test/java> cat initializer.java public class initializer { public static initializer i = new initializer(); public initializer() { System.out.println("Hello world!"); } } i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/javac initializer.java i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/java initializer Hello world! Exception in thread "main" java.lang.NoSuchMethodError: main
おーホントだ。んで…
i@um ~/test/java> cat initializer.java public class initializer { public static initializer i = new initializer(); public initializer() { System.out.println("Hello world!"); System.exit(0); } } i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/javac initializer.java i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/java initializer Hello world!
おー
(21:48)
(22:02)
i@um ~/test/java> cat initializer.java class base { public static base i = new base(); public base() { System.out.println("Hello world @base!"); // System.exit(0); } } public class initializer extends base { public static initializer i = new initializer(); public initializer() { System.out.println("Hello world!"); // System.exit(0); } } i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/javac initializer.java i@um ~/test/java> /usr/java/j2sdk1.4.1_07/bin/java initializer Hello world @base! Hello world @base! Hello world! Exception in thread "main" java.lang.NoSuchMethodError: main
(22:05)
http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/shinichiro_h/20061107%231162835826
のノリがなかなか良ろしくてうれしかったです
(22:23)
1st shinh 82 Ruby 10,000 (v32) 2nd kinaba 83 Perl 9,879 (v16) 3rd kik 83 Ruby 9,879 (v23) 4th mame 83 Ruby 9,879 (v14)
(23:17)
_ あろは [全然有名じゃないしバイナリアンでもない僕のところにも献本話がきたぐらいなので、けっこう広範囲に話が行ってそうな気がし..]
_ shinh [わーいあろはさんがつれた。 「と書いておけば、みたいな」 は中が省略されていて省略された内容は、「もしあろはさん..]
_ kosaki [つまり、まとめると。 オイラに献本の話が来ているのは - shinh さんにkosakiは読者とは認めら..]
_ shinh [なんですってー。直接面識が無いのにこんなわけのわからない電波メモを見てるようなヒ…知識欲の旺盛な方が他にいらっしゃる..]
_ Gus [うほ、実験乙でございます。>java w/o main 実はやるの忘れてました。]
http://d.hatena.ne.jp/MDA/20061105/1162652671
途中の法律文体2Dシューの定義が全く意味が 腑に落ちなくてわらった。
よくわからんけど分類は1-Bにかなりよった2-Bかなぁ。 商業商品の成し遂げたことってのはやっぱすごいわけでのう
(00:58)
ずっとなんていうか、 Io とか C 式スレとか見て ぼんやり考えてたことに自分的ななんかがあったかもしれないような。
んーと S 式ってあって (func arg1 arg2 arg3) って形式は 色々便利っていうのはもちろんで、 これがまんま構文木な以上これ以上にシンプルな 形式はそうそう無いんかねということで まぁそれはいいとして。 でも僕は Io の形式っていうか、 構文木にすると (obj func (arg1 arg2 arg3)) てなるんじゃないかな、 こんな形式になんとなく魅力を感じてて、 数時間だけ Ruby で書いてみたりしたわけだけど、 まぁこれってややこしくしてるだけだよね これもS式に含まれるよねと言われればその通りで、 まぁそれでもわざわざ機能を限定する理由は、 えーなんだっけとか考えてたんだけど。
でなんだハッシュだハッシュ。 スコープとかオブジェクトしこーだとかは とにかくあれはハッシュなのでハッシュったらハッシュで。 Lua とか BeanShell がなんとかとか。 で、まぁ、リストで記述された、 ハッシュをいじることに特化した言語、 というふうに考えると、 Io 形式のメリットが見えてくるのかなぁとか 突然思ったのだけど。
まぁ頭悪いから作ってみないとわからん。
あと Proc#[] が今不意になんか。 まぁやってみる気が湧いてきた。
(01:14)
バカだから書きたいことを全部書き忘れている。
まぁ書かなくてもいいことだけど。
http://rainer.blog7.fc2.com/blog-entry-40.html
Cg を一瞬見たくらいしか 高レベルなシェーダを見た経験が無い 僕の感覚だけど、 3D 部をスクリプトで出すっていうのは、 かなり面白いんじゃないかなぁとぼんやり。 アセンブラのシェーダがあって それを高レベル化したけど その高レベル化って本当にほんの少しの高レベル化であって なんかかなりプリミティブだよなぁとか思って、 もうちょい抽象化進めても最適化できるコンパイラとかも 今のコンパイラの SIMD への頑張りぷりとか見て ちと厳しいのかなぁとか素人考えで思って、 んでほっといてハードウェアの方が 今のペースで進化しちゃえば とりあえず簡単に書けて結果が間違ってなきゃ 遅くてもいいおー的な スクリプト言語のノリはかなり需要が出そうな…みたいな。
うおー完全に素人考えの妄想だ。 あと元コメントとあんまり関係ない
(01:45)
SQL についてと逆のこと言ってないかと思った。
SQL もあれはアセンブラなんだ…というのは 何度かあちこちで言ってる気がするけど、 アセンブラなんだからコンパイラで作るべきであって スクリプト言語で O/R マッパーとかそれ何、 遅くね?みたいな。
どっちも最近湧いてきたアセンブラで、 それぞれの生まれてきた文化の違いから 違った方向から進化してるとか
性質もだーいぶちがうねー ^-^-^-^-^
(01:47)
manpages-dev とかそんなんにあったみたいです。 ばじゃい。 協賛: tekezo 師匠。
あとなんか auto-apt がすごいいいものだと理解。 FC の時は DVD マウントして rpm -qilp *.rpm > longinfo とかしてから longinfo を大切に保管してそれを見てパッケージ選んでたんだけど、 auto-apt は既に /var/cache/auto-apt とかにそれを置いてくれてる。
(14:34)
mircbot の色が見えるようになってたのはまぁいいんだけど、 その色が黒とかで全く見えなかったのでこのへん見て修正。
http://d.hatena.ne.jp/hirose31/20060824/1156400991
こんな約束がちゃんとあるんだなぁ。 RFCにはなってないんだろうな。
http://www.mirc.co.uk/help/color.txt
(23:45)
してなかった。 ひどかとね。
んでなんか、前のフォントの方が 14pt の場合は良かったんじゃないかなぁとか 思っちゃうのですが。
もうなんか節穴すぎてなんもわからん。 なんもわからんつーのは AA かかってるか否かもわからん。 Emacs のフォントも今変わったような一緒なような。 うーむむ…
(01:06)
なんかたぶん設定できた。 いやできてないけど飽きた。 とりあえず端末サイズが 12 でも 14 でも 日本語出ているのはおおいなる進化だ。 チンポから石が出る並の進化だと思う。
一応元ネタをはっておけば kids goo も許してくれるだろう。
たぶん絶対許してくれない。
んでなんか14のフォントがどう見ても Emacs と違うんだな。 なんか節穴で見ても違う。 ものごっつ違和感あるけどまぁいいか… なんせ Emacs でなんていうフォントが使われているのか わかっていないのだから…!
綺麗なフォントとか選んでる暇があったら 自分の目を慣らした方がはるかに速い。
なにしたっけ。
mlterm は --enable-optimize-redrawing はしない。 xcore を使う。 たぶん14はshinonomeで12はmplusになってる…と思う。知らん。
というわけで残った問題点
ぶっちゃけどれもフェータルだと思う。
(01:31)
よし 7x14 & K14 の SDL 用のフォントを作ろうじゃないか…
(01:45)
12pt のフォントも k12 というのになった。
DEC_SPECIAL = 10,mplus_j10r-iso;12,mplus_j12r-iso; ISO8859_1=14,7x14;10,mplus_j10r-iso;11,mplus_f10r;12,6x12;13,6x13;10,6x10;6,4x6 JISX0201_ROMAN=14,k14;10,mplus_j10r-jisx;12,k12; JISX0201_KATA=14,k14;10,mplus_j10r-jisx;12,k12; JISX0208_1983=14,k14;10,-mplus-gothic-medium-r-normal--10-100-75-75-c-100-jisx0208.1983-0;12,k12; JISX0208_1990=14,k14;10,mplus_j10r;12,k12;
まんぞく
(01:49)
pty 6 本もいらない。 inittab どこいったねん。
起動時に apache 動いてない。 起動時に cmigemo-server 動いてない。
cmigemo は rc.local に書いた。
inittab はんーどうも /etc/event.d か。
へー
i@u /etc/event.d> sudo mv tty5 /tmp i@u /etc/event.d> sudo mv tty6 /tmp
雑さには定評がある
(02:24)
http://yowaken.dip.jp/tdiary/20061105.html#p01
を見て俺も cipher ちょっと見るか…と思って見た瞬間に 1B 縮んだ。 なんかあんまり深く考えてもうまくいかん時はいかないような。
(03:24)
SDL_pad で SDL_joystick を乗っとろうと考えた。 なんかを preload させて、 SDL_joystick の関数を使う SDL_pad を使って SDL_joystick の関数を乗っとる、 の、は、できない。 なぜなら SDL_pad は乗っとった関数を呼んじゃうから。
えーとどうすっぺ。
(06:21)
(06:24)
woさんとスパムのたたかいが。 ここの経験上、ひらがな混じってなきゃ弾く、 は相当に強いフィルタになる。 で、はてなでこれやりたいよなぁという話。 いや簡単なんだけどね、 どうせなら他の人が利用できる形に できたらいいかなぁと思うものの、 それを考えるとちっとも手が動かない
(17:21)
から w コマンドが作れるとかびっくり〜
http://0xcc.net/blog/archives/000141.html
なんか Unix は本当にアーキテクチャ宇宙飛行士だのう。
RubyFS とかでやるとどうかね。 オブジェクトの更新時刻を覚えてるとか嬉しいのかって感じだが。
ファイルの更新時刻ってのは要するに 検索と make のためにある情報だろうたぶん。
まず検索だけど、障害が起きた→ 2日前くらいらしい→2日前以降に更新されたオブジェクト一覧を find で作成→えーとそれが何が嬉しいの? って感じでとっても役に立たなくていいかもしれない。
make の方は普通に Observer パターンみたいなのが 面白いかもしれないね。 update 通知いらないというのはなかなか。
ていうか /dev/input/event 監視デーモンは 前から作ろうと思って作ってないなぁ。
とりあえず /dev/input/event と言えば われらが Nunocky サマ。
http://www2s.biglobe.ne.jp/~nunokawa/wiki.cgi?page=%2Fdev%2Finput%2Fevent%A4%C7%CD%B7%A4%D6
(18:01)
http://d.hatena.ne.jp/ajiyoshi/20060502/p2
すごいところで議論があるんだなぁ。
EXEファイルより圧倒的にインストールの敷居が軽いから… って話かー。
ソース読めってよりは能力的な可能性と 配布元の信頼性の評価をーみたいな話、 だ、と、なんか EXE と一緒じゃないかなぁ。
(20:18)
http://rainer.blog7.fc2.com/blog-entry-40.html#comment
スクリプトと同じくコードとか作ったものの公開とかも 出すのはめんどくせーけど出しちゃえば 楽しかったりどうでもよかったりはするというような。
思いかえすにどうでもよいことが結構多いので どうでもいいかもしれない
とか書くと何が言いたいかわからんという
(20:21)
sawfish は自分では使ってなかったけど良いものだったような。
設定ファイルは Scheme 、ただしその設定は たいていは GUI で行える、という。
うーんやりたいことキューがそろそろ。
論文がやったほうがいいことでしかない理由は、 まぁ卒業しなくてもなんとかなるよね…というような。 ホントになんとかなるか試してみる略とか。
(03:06)
にある。その位置は /usr/share/aclocal/pkg.m4
あー
わかった。 aclocal 実行すればいいのか。 謎実行ファイル aclocal の謎が解けた気がした。
(21:45)
(22:10)
頭がいい人の問題、で片付けるのは ダメだというのはわかってるんだけど、 それだけどなんか違うものがあるんだよなぁ問題の質っていうか。
パスカルなんかは頭いい人問題だけどなんかできてるし。
(00:55)
インテルの街頭宣伝で、 Core Duo はスゲーっていうやつが結構面白かったんだけど、 なんか40%の性能向上に成功、って言ってた。
でなんか Mac サマは Core Duo で 4倍ということで、 つまりえーとPPCはどれだけ負けてたんでしょうね。
(01:12)
(15:21)
あーなんだったかー
思い出せそうなんだが
金だ金。
ああ思い出した。
ゴルフのアルゴリズムと小細工の関係と 仕事するか倹約するかって関係は似てて、 アルゴリズムを改変する方が ドカっと縮むのはわかっているけど 小細工が楽しくて走ってしまう…というのと、 仕事した方がドカっと金入るけど めんどいから倹約して生きるよ… っていうのが似てるようなという。
近視眼的な小細工/倹約の方が悪いと なりがちだけど、 楽しいからいいじゃん、 仕事つまらんからいいじゃん、と。 金だけが効用関数の変数じゃないのと同様に、 バイト数だけがゴルフの効用関数じゃないんじゃよ…
どうでもいいことを思い出した。
(00:13)
1冊も売れんもんなのだなぁと思ってたら 注文レポ〜ト見ると3冊注文入ってたのであった。
ついでによくわからん本が5冊経由で売れてるらしい。 へえ。
よくわからんけど11冊売れれば3.25%もらえるって理解でいいのか。 どうでもいいけどこの3.25%って数字は 5人で割った印税より多いわけだが、 なんかすごいなぁ。
(13:31)
アフィ同盟。
何人かで組んでみんな同じプロキシを使う。 アマゾンを使った場合、 自分のIDじゃないところに、適当にふられる。 適当に、っていうのはたくさんアマゾンを 利用している人ほど収益も増えるような感じで。
でもそれって使ったお金の3%還元でしか無いのよね。
(13:34)
http://d.hatena.ne.jp/Ozy/20061102#p1
俺のどんなんだっけ。
x,y=1,t,k,n;main(){ for(;scanf("%d",&n),~n;printf("%d\n",x)) for(;(k-n)%30000;k++)t=(x+y)%10000,x=y,y=t;}
ダメだこりゃ。普通に書いただけじゃんこれ。 そもそも main の中に変数無いとか ++ を他の計算に合成してないとか。
(13:37)
むしひめさまやってきた。
とりあえずマニアックで。ひとりめでアブノーマルじゃない方。 一面で全部死んだ。 ひさびさだ。 んで次にふたりめでアブノーマルの方でやった。 一面で全部死んだ。
悲しくなったので、オリジナルモードをやってみた。 今度は3面までいけた。 むしひめさまと違ってオリジナルが普通な感じなんだろか。 でもオリジナル弾速速いしなぁ。
(16:10)
(17:18)
Y コンビネータってそいう意味だったのかー
http://d.hatena.ne.jp/oto-oto-oto/20061010
普通に書いてあるじゃんー
http://www.loveruby.net/ja/misc/ycombinator.html
ついでに目に入ったのでコメント。
(17:26)
http://www.google.com/search?q=OpenGL%20redbook%2epdf&ie=euc-jp
via http://d.hatena.ne.jp/logion/20061102#p1
redbook って赤本じゃよねー。
赤本ぽい。
いい話だなぁ
(17:40)
http://ameblo.jp/programming/entry-10001721422.html
でっきるかな
2006年 11月 2日 木曜日 18:15:42 JST
(18:15)
以外はできてたぽい。
2006年 11月 2日 木曜日 18:21:56 JST
なんか今まであんまやらんかったけど topcoder 系やりたいなぁ。
(18:22)
> * Template instantiations can now accept alias parameters for local variables and nested functions.
ほえー
> * Implemented Signals and Slots.
ほえー
> * Implemented variadic template parameters
ほえー?
(18:36)
1st kinaba 83 Perl 10,000 (v16) 2nd kik 83 Ruby 10,000 (v23) 3rd mame 83 Ruby 10,000 (v14) 4th shinh 83 Ruby 10,000 (v31)
ホントにこれがマックス?
(19:29)
import std.stdio; import std.string; template T(alias a) { void f() { writefln(toString(a)); } } void main() { int i = 1; float f = 1.2; T!(i).f(); T!(f).f(); }
これは遊べるなあ
Toy 言語の座は Perl ごときにはやれんと思うのですよ
(22:54)
_ k.inaba [注文しました! 無難な表紙を見てたらだんだん盤面まで http://monokuro.tv/cache/data/2..]
_ shinh [その手がありましたかっ…全文みさくら語変換して売ったらいいんじゃないかとかそんな話もありました。 それはそうとそん..]
_ Gus [http://blog.proj.jp/ituki/20041128.html#p09 2004年11月の情報だそう..]
_ k.inaba [うあーすみません。あれだったら適当に消してください(微妙にマジレス)。"read.cgi"辺り単語レベルで嫌われてた..]
_ shinh [もうしわけありません。最新の研究によると k.inaba さんは無罪で、 kids goo に嫌われる理由は自業自得..]
普通に評判いいし。
んじゃ書くか。 つか清書を。
どうでもいいけど od --help 以外は本当に一切調べなかったんだけど。 よくわからんオプションだんだん覚えてきてるなぁ。
(16:12)
に JS でランダムで入れるって話だったので、 大昔に取得だけして全く使ってなかった ID を 登録してもらってみたのだった。
http://amazon.co.jp/o/ASIN/4873112885/shinhskrjp-22/ref=nosim
んーつまり shinhskrjp-22 を URL の後につければいいんですな。
まぁ記念パピコみたいなそんな。 なんかリンクたどった人の数とか見れるのは嬉しくはあるし。
これ20冊とか売れてやっと1500円もらえるとかそんなペースなんだよね。 どう見てもムリ。
(16:19)
らしい
http://koumokuten.iza.ne.jp/blog/entry/28329
いやえーとそうなんのか。
うーん全然わからんかった。
どうでもいいけどアソシエイトは売上げ増やすとかより アマゾンロックイン的なあれがすごそうなイメージがあって 好きくなれないのであった。
(16:29)
最新版野良ビルドとか
http://ftp.yz.yamagata-u.ac.jp/debian/pool/main/d/ddskk/
とか入れさせてもらうもだめぽい。
んーむ。もげもげ。
(23:28)
前 | 2024年 11月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ Jeucrjbg [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]