2008年07月31日

Super Agile Struts(SAStruts)

最近知って、少しずつ試しているのですが、ちょっと感動です。Ruby on Railsのインパクトに匹敵しているかもしれません。

とりあえず、動かすまでの時間がノーマルなStrutsとは比にならないほど短いです。XML地獄さよならです。

今週、来週をSAStruts週間として、色々と遊んでみようと思います。

コードなにがしの方に遊んだ足跡を残していきます。
posted by 台北猫々 at 21:28| Comment(0) | TrackBack(0) | 日記

2008年07月30日

FF3の新規タブボタンのアドオン

私の普段使っているブラウザはFireFox3なのですが、ちょっと不便だなぁと思っていたことがありました。それは、タブバーをダブルクリックして「新規タブを開く」という操作なんですが、タブをたくさん開いていくと、だんだんとクリックするスペースがなくなってきて、しまいには数ピクセルの隙間をダブルクリックしなければならなくなってしまうのですよね。
(これが、なかなかのストレス(хх。)

まあ、Ctrl+tすればいいのですが、マウスで操作を完結させたいときもあって、IE7みたいにタブバーに新規タブ開くボタンがあればいいのになぁと思っていました。

そしたらあるのですね、アドオンが。↓
New Tab Button on Tab Right
https://addons.mozilla.org/ja/firefox/addon/5338

早速インストールしましたら、ご機嫌な操作性です。
作成者の方に感謝。m(_ _)m
posted by 台北猫々 at 19:05| Comment(0) | TrackBack(0) | 日記

2008年07月29日

雨と夢のあとに1

死んでしまった後も、娘を守り続けた父親の物語です。
大切な人をずっと守りたいのに、もう自分には守ることができない。という悔恨、そして切なさをエロ神様・沢村一樹さんが熱演しています。

posted by 台北猫々 at 21:22| Comment(0) | TrackBack(0) | 本・DVD

2008年07月28日

う〜ん。

どうしたんだろう?
というのは、今日は急にGoogle経由でのアクセス数が増えました。
/(-_-)\

先週までは、平日で大体10〜20ぐらいだったのが、今日は、70以上あります。春頃は、100/日ぐらいあったのが、減ってしまってがっかりしたのが、元にもどったのかなぁという、希望的観測もできますが、たまたまかなぁ?
posted by 台北猫々 at 21:31| Comment(0) | TrackBack(0) | 日記

2008年07月27日

今日も

暑かったですねぇ。
引きこもって27時間テレビをずっとみていました。

途中で、さんまさんとダウンタウンの絡みを見れて、なんか新鮮で得した気分でした。あれだけ、がっつりと絡んだのは初めて見たかもしれません。


posted by 台北猫々 at 21:36| Comment(0) | TrackBack(0) | 日記

2008年07月26日

追加しました(StealthScannerクラス)

SYNスキャンなどのポートスキャンを行うLinux C++クラスを公開しました。ただし、レイヤー4(TCPヘッダ)を設定しているだけで、レイヤー2、3は、socketライブラリにおまかせなので、IPアドレスの詐称などは行えません。

TCP/IPの学習目的で作成しています。なので、もし使用される方がいれば、同様に学習目的でご使用下さいませ。

くれぐれも、ポートスキャンは自分の管理しているマシンへのみ行うようにして下さいね。外部のサーバをスキャンして、何か問題が発生しても、私は責任を負えません。

使い方はこんな感じです。

#include "StealthScanner.h"


int main(){
Socket::StartUp();

StealthScanner sock;
short res = sock.ScanPort("192.168.10.22", 80, TH_SYN);
printf("TCP control flags %04x, port is %s\n", res, (res == TH_SYN_ACK) ? "open" : "close");

Socket::CleanUp();
return 0;
}



公開URLはページの→側にもありますが、
http://winter-tail.sakura.ne.jp
です。
posted by 台北猫々 at 10:42| Comment(0) | TrackBack(0) | 日記

2008年07月25日

更新しました(RawSocketクラス)

ステルススキャンクラスの前準備です。。

2008.7.25 V1.0.3
・TCPヘッダ情報定義を追加
・ソリューションファイルをVisual C++ 2008へ変換しました。

公開URLはページの→側にもありますが、
http://winter-tail.sakura.ne.jp
です。
posted by 台北猫々 at 23:07| Comment(0) | TrackBack(0) | 日記

2008年07月24日

派遣は、バブルの呪いか?

バブル崩壊後の”空白の10年”は、それまで連綿と先輩から後輩へ受け継がれてきた人材育成というバトンのリレーを断ち切ってしまいました。

そして、一度無くしてしまったバトンを取り返す努力をせずに、財務が弱体化していた企業は、規制緩和によって目の前にぶら下った”派遣”という甘い罠に安易に引っかかってしまいました。

(今思うと、この罠はあまりにも巧妙だったといえます)

”派遣”のような非正規雇用労働者の導入は、労務費の節減を可能にしましたが、同時に人材へ投資するということを放棄することでもありました。”派遣”では支払った分の成果しかでませんが、投資をした人材からは、投資した分の数倍、数十倍の成果を得られるかもしれないのにです。

このような非戦略的・非戦術的・非長期的な、つまり、”いきあたりばったり”な対策を行って短期的な収益UPを得た代償は、人材不足による日本経済の弱体化です。

本来、正規社員として責任を負って仕事を行い、鍛えられ成長するべき若者が、”派遣”という形態で働くということは、日本における人的資源の浪費以外になにものでもありません。

人的資源を食いつぶして短期的な収益を得た各企業、そして”派遣”の規制緩和を推進した政府の罪は重いです。よって、その罪を自覚し、軌道修正を行う努力をするべきなのが、”今”なのだと私は思います。

そうして、健全な社会になったときこそ、バブルの呪縛から解放されたといえるでしょう。
posted by 台北猫々 at 19:39| Comment(0) | TrackBack(0) | コラムみたいな

2008年07月23日

更新しました(Socketクラス)

2008.7.22 V1.0.7

   Visual C++ 2008対応を行いました。
   ・#define AI_NUMERICSERV を削除
   ・#include <stdio.h> を追加
posted by 台北猫々 at 18:52| Comment(0) | TrackBack(0) | 日記

2008年07月22日

自マシンのIPアドレスを取得

Linux C/C++(ソースのコンパイルはg++で行っています)で、ネットワークデバイス名に対応するIPアドレスを取得する関数です。


#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <errno.h>
#include <linux/if.h>
#include <sys/ioctl.h>

const char* GetMyIpAddr(const char* device_name);

int main(){
const char* r = GetMyIpAddr("eth0");
printf("%s\n", r);
return 0;
}

/**
* 自マシンのIPアドレスを取得します。
* @param デバイス名(e.g. "eth0")
* @return 「数値とドット」記法のアドレス
*/

const char* GetMyIpAddr(const char* device_name) {
//指定したデバイス名のIPアドレスを取得します。
int s = socket(AF_INET, SOCK_STREAM, 0);

struct ifreq ifr;
ifr.ifr_addr.sa_family = AF_INET;
strcpy(ifr.ifr_name, device_name);
ioctl(s, SIOCGIFADDR, &ifr);
close(s);

struct sockaddr_in addr;
memcpy( &addr, &ifr.ifr_ifru.ifru_addr, sizeof(struct sockaddr_in) );
return inet_ntoa(addr.sin_addr);
}


posted by 台北猫々 at 20:58| Comment(1) | TrackBack(0) | 技術メモ(Linux C/C++)

2008年07月20日

豚タンとジャガイモと長ネギの炒め物

ベランダで育てていたタカノツメが実ったので、これを使った料理を創作してみました。さっぱりした野菜の甘みとタカノツメの辛味のコントラストが良い感じです。

【材料(2人前ぐらい)】
豚タン・・・100gぐらい
ジャガイモ・・・1個
長ネギ・・・1本
酒・・・15ccぐらい
塩コショウ
タカノツメ・・・2ふさ
にんにく・・・1片

【プロトコル】
(1)ジャガイモと長ネギを千切りにします。
(2)ジャガイモは水で余分なデンプンを洗います。
(3)フライパンにサラダ油をひいて、ジャガイモを炒めて火が通ったら、皿によけておきます。
(4)フライパンにサラダ油をひいて、にんにくとタカノツメを投入。
(5)豚タンを投入。炒めます。
(6)豚タンに火が通ったら、長ネギ投入。炒めます。
(7)酒を投入。
(8)さっき炒めたジャガイモを投入します。
(9)塩・コショウで調味します。
(10)出来上がりです。
posted by 台北猫々 at 23:43| Comment(0) | TrackBack(0) | 料理

2008年07月19日

Rubyで1970/1/1からの経過日数を求める

(y, m, d) = "2008/7/11".split(/\//)

target_sec = Time.mktime(y, m, d).to_i

oneday_sec = 24 * 60 * 60

pass_days = (target_sec / oneday_sec).ceil

p pass_days
posted by 台北猫々 at 23:50| Comment(0) | TrackBack(0) | 技術メモ(Ruby)

2008年07月18日

公開しました(SocketUtilクラス)。

新たに公開したのは、↓です。
■SocketUtilクラス(C/C++)Windows,Linux共用
ソケット関連のヘルパー的な処理を行います。

/**
* サービス名からポート番号を獲得する.
* @param char* lpszServ : サービス名
* @return ポート番号.
*/

static unsigned short GetServByName(char* lpszServ);

/**
* ネットワークバイトオーダでのインターネット
* ホストアドレスを「数値とドット」記法へ変換する。
* @param addr アドレス
* @return 「数値とドット」記法のアドレス
* @notice 非マルチスレッドセーフ
*/

static const char* N2A(unsigned int addr);

/**
* 自マシンのIPアドレスを取得します。
* @param デバイス名(e.g. "eth0")
* @return 「数値とドット」記法のアドレス
*/

static const char* GetMyIpAddr(const char* device_name);




公開URLはページの→側にもありますが、
http://winter-tail.sakura.ne.jp
です。
posted by 台北猫々 at 21:21| Comment(0) | TrackBack(0) | 日記

2008年07月17日

ヒット!

これはヒットです。
近所のスーパーにあったので、試しに買ってみたのですが、酸味と辛味があって、とてもアジアンテイストです。
ヘ(^ヘ^)(^ノ^)ノ ソレソレ♪

今日は、卵と玉ねぎのみじん切りとパクチーを入れたのですが、とてもヒットでした。
\(^-^)/

20080717-1.jpg
posted by 台北猫々 at 22:14| Comment(0) | TrackBack(0) | 今日フォト

2008年07月16日

ステルススキャンクラス

とりあえずWindowsは置いておいて、Linuxで動作するC++版のステルススキャンクラスを作成中です。

まあ、とりあえずはレイヤー4(トランスポート層:TCP)のヘッダ作成からしようかと。IPスプーフィングは別にできなくても良いですしね。

posted by 台北猫々 at 21:45| Comment(0) | TrackBack(0) | 日記

2008年07月15日

WindowsのWinSockでSYNスキャン

ってできるんでしょうか?
生ソケットでIPPROTP_IPを指定して、
setsockoptでIP_HDRINCLを設定しても、IPヘッダにIPPROTO_TCPを設定してsendtoで送信するとエラーコード10004で送信失敗します。

色々調べても、はっきりしないのですよね。IPPROTP_IPを指定できるということは、レイヤー3以降はコントロールできてもおかしくないのですがね・・・セキュリティ的に制限されている可能性もあるなぁ。

う〜ん悩み中です。
(~ヘ~;)ウーン

#というかwinpcapを使えば済むのでしょうね。
posted by 台北猫々 at 21:01| Comment(0) | TrackBack(0) | 日記

2008年07月13日

暑いですねぇ

なんか暑いので、家にひきこもってしまいました。
アンニュイな一日でした。
(↑ちょっと使ってみたかった猫
posted by 台北猫々 at 20:33| Comment(0) | TrackBack(0) | 日記

2008年07月12日

休日の楽しみ

といったら、これですね。朝一ビール(第三種ですが)。

20080712.JPG
posted by 台北猫々 at 09:46| Comment(0) | TrackBack(0) | 日記

2008年07月11日

正規表現で、渡された文字列に非半角数字があるか?のチェック(JavaScript編)



//渡された文字列に非半角数字があるか?
//JavaScriptの正規表現を使用して、渡された文字列に非半角数字があるかチェックします。
//JavaScript 正規表現 非半角数字
var str = "0123456789";
if (str.match(/[^0-9]/)) {
alert("文字列に非半角数字が存在する");
} else {
alert("文字列に非半角数字は存在しない");
}
//↓
//"文字列に非半角数字は存在しない"

posted by 台北猫々 at 23:04| Comment(0) | TrackBack(0) | 技術メモ(JavaScript)

2008年07月10日

ことの葉ひらひら その25

「自分に嘘をつかない人間は、最も扱いづらく、最も信頼できる人間です。」

by 台北猫々
posted by 台北猫々 at 22:21| Comment(0) | TrackBack(0) | ことの葉