Submitted by
snailium on 2008年3月29日 4:08:43
闲来无事,打算上几个 Live Space 和 Qzone 打发一下时间。打开 QQ,看到 315 个好友。Oh, my god! MSN 上也有 179 个好友。我开始问我自己一个问题,你究竟上哪搞了这么多的人?
这已经是历史问题了……
我的 MSN 前一阵运行不正常的时候,我已经清理过一次好友。现在剩下的 179 人中,有 56 个是连我自己都不知道身份的“网友”。而 QQ 中这个数字更多,达到 118 个。除去那些不认识的, MSN 中的好友很多都是出国之后的同学,分组也都注明了 CIC、UO、Carleton;QQ 中的好友很多都是从附中论坛认识的。那些不认识的,貌似是当年游荡在各动漫论坛的后遗症。
那些所谓的“网友”最让人头疼。删掉的话,没准是以前关系不错的朋友或同学,只不过改了个名字我不认识就放到“网友”里面了。不删的话,实在是浪费带宽、浪费内存、浪费资源。
实在没有办法,把“网友”组折叠起来,闭上眼睛当作没看见……
Submitted by
snailium on 2008年3月25日 0:23:34
终于下定决心写点什么了。这几天奋笔疾书(“奋键疾输”才对)写完了前三章内容,看着1/5的完成度自己很有成就感。
长这么大第一次写一口气写这么多方块字啊。(中国人的悲哀 = =)
联系了几个 SMC 的工作人员,都比较有兴趣回来继续做新片。呵呵,这意思就是说,编剧老人家,你就赶快把剧本写出来吧,大家都等着呢。
拜托大家,我知道大家等着着急,急也要慢慢来啊,俗话说慢工出细活。去年的错误今年不会再犯,但是这个预告还是个没有准头的预告。
HDAV 计划搁置,IS 准备中。5月底第一稿,8月份开机。明年8月份全片完成。人员安排:本人编剧,Rick 导演。照例,蓝色蒲公英出品。预告完毕。
Submitted by
snailium on 2008年3月24日 22:17:07
天神星士兵甲:这是什么?士兵乙:是黑魔王的说明书!
看完这段我已经笑得喘不过气了!
牛奶@咖啡又出新歌了。下来听了听,比较喜欢《快乐星猫》。闲来上网搜搜,原来国内又出了个动画片,叫做《快乐星猫》。而《快乐星猫》就是《快乐星猫》的片头曲(@ @)。反正无聊,从官网下了几集看看。
貌似官方的定位是 5~12 岁之间观看,12+有爱为可接受候补。估计我已经过了有爱的年龄,怎么看怎么觉得搞笑。
杂乱的音效,十分不标准的台普配音(据说某位主角是刘纯燕配的),唯独能一好遮百丑的也就只有 3D 效果了。这次的 3D 的确做得不错,剧情也控制在 5~12 可接受范围之内,但是这个音效咋就这么差呢?貌似我还听见了星际争霸神族选定农民时的声音(估计是我幻听了)。一开始的配音还以为是《鲨鱼黑帮》,大力猫的出现我给当成了《猫的报恩》(没办法,学得太像了)。还有那个“欧应万”,我怎么听都像是“All-in-one”。(难道这就是传说中的九十八和1?抑或是“Owing-won”?)
星猫为什么叫星猫,估计因为制作单位叫 Star Q 吧。创意没问题,策划没问题,就是制作的时候怎么说也要注意一些吧。比如说片头,一开始的剪辑根本对不上片头曲,后半部分还行。人物表情和动作都做得不错,但是配音总要标准普通话吧,拿个四川的台普出来,这不是误导少年儿童么。情节这样就可以了,正义战胜邪恶,天经地义,千万不要搞什么革命出来啊。话说这次周边很成功,据说毛绒玩具已经热卖了。音像制品啥的就不要搞了吧,如果想搞的话多弄点广播剧出来还差不多。
呵呵,说了这么多乱七八糟的,该总结一下了。总而言之,这次的制作综合起来还不错,但绝对不能成为“巨作”。国产动画还有很大的成长空间。想要把动画产业做成熟,慢慢努力吧。(表说我站着说话不腰疼,这几天某人正在连续熬夜写剧本中)
最后,要说回牛奶@咖啡了。个人觉得《快乐星猫》这首歌十分适合 Kiki 的路线,整张专辑里只有这首歌把 Kiki 的声线完全表达出来了。(旁边那位表丢砖~)当然,从《燃烧吧!小宇宙》开始,本人就觉得 Kiki 适合走可爱的小女生路线。千万不要学范晓萱和金莎,非要“变成熟”。
力挺牛奶@咖啡。快乐星猫,燃烧吧!小宇宙!
Submitted by
snailium on 2008年3月23日 23:59:21
今天闲来无聊,上 Google 搜了一下自己的名字,竟然有 5030 条。翻了 10 页,只找到一个关于 snailium 的,而且还是别人的转载。
这么多跟我重名的,竟然一半以上都是女的,89年的。还有一个很有名的貌似是沈阳新东方的老师。
郁闷。看来我只是大海中的一粒沙(不要提醒我,我知道我说错了)。
不过有一点值得欣慰的是,前十页里面没有一条是通缉令(什么思想 = =)。
我还是改搜 snailium 吧……
P.S.倒是搜我弟弟名字的时候,在第 10 页看到他本人了。果然我已经算火星了。
Submitted by
snailium on 2008年3月16日 20:41:04
| 100 系列(信息) |
| 100 |
Continue(客户端可以继续发送未发完的请求) |
| 101 |
Switch Protocals(服务端/客户端所使用的协议不一致) |
| 200 系列(成功) |
| 200 |
OK(成功) |
| 201 |
Created(已按请求创建新资源) |
| 202 |
Accepted(请求已被接受) |
| 203 |
Non-Authoritative Information(从第三方获取的信息) |
| 204 |
No Content(服务端没有可返回的数据) |
| 205 |
Reset Content(客户端需重置请求内容) |
| 206 |
Partial Content(服务端返回部分数据) |
| 300 系列(重定向) |
| 300 |
Multiple Choices(多个资源可用) |
| 301 |
Moved Permanently(资源已被移动) |
| 302 |
Found(临时在其他地址找到相应资源) |
| 303 |
See Other(在其他地址找到相应资源) |
| 304 |
Not Modified |
| 305 |
Use Proxy |
| 306 |
(Unused) |
| 307 |
Temporary Redirect |
| 400 系列(错误) |
| 400 |
Bad Request |
| 401 |
Unauthorized |
| 402 |
Payment Required |
| 403 |
Forbidden |
| 404 |
Not Found |
| 405 |
Method Not Allowed |
| 406 |
Not Acceptable |
| 407 |
Proxy Authentication Required |
| 408 |
Request Timeout |
| 409 |
Conflict |
| 410 |
Gone |
| 411 |
Length Required |
| 412 |
Precondition Failed |
| 413 |
Request Entity Too Large |
| 414 |
Request-URI Too Long |
| 415 |
Unsupported Media Type |
| 416 |
Requested Range Not Satisfiable |
| 417 |
Expectation Failed |
| 500 系列(服务器错误) |
| 500 |
Server Internal Error |
| 501 |
Not Implemented |
| 502 |
Bad Gateway |
| 503 |
Service Unavailable |
| 504 |
Gateway Timeout |
| 505 |
HTTP Version Not Supported |
参考资料:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Submitted by
snailium on 2008年3月16日 20:15:28
开始还满怀信心的打算拿 Perl 写一个文件上传管理程序,可是在写完了登陆部分之后就泄气了。原因很简单,服务器不支持 CGI::Session,而我又不想花时间去研究 Perl Cookie。
login.cgi
- use strict;
-
- use DBI;
- use CGI;
- use Digest::MD5 qw(md5_hex);
-
- my $cgi = new CGI;
- my $user_name = $cgi->param('username');
- my $user_pass = $cgi->param('password');
- $user_name =~ s/(?:\012\015|\012|\015)//g;
- $user_pass =~ s/(?:\012\015|\012|\015)//g;
- $user_pass = md5_hex($user_pass);
- my $user_login = 0
-
- require "config.pm"
-
- our $db_host;
- our $db_use;
- our $db_user;
- our $db_pass;
- our $db_table;
-
- my $db_conn = DBI->connect("DBI:mysql:database=$db_use;host=$db_host","$db_user","$db_pass", {'RaiseError' => 1});
- print "Location: /error-503\n\n" unless $db_conn;
-
- my $sql = $db_conn->prepare("SELECT username FROM `$db_table` WHERE user_password='$user_pass'");
- $sql->execute() or print "Location: /error-503\n\n";
-
- while(my @result = $sql->fetchrow_array()) {
- if($user_name eq $result[0]) {
-
- $user_login = 1
- last;
- }
- }
-
- $db_conn->disconnect();
-
- print "Location: /error-401\n\n" unless $user_login;
-
- print "Content-type: text/plain\n\nYes !";
-
- exit(0);
其中登陆部分采用了《突发奇想,小改动解决安全问题》其中的方法。
看来要重操 PHP 旧业了……
Submitted by
snailium on 2008年3月11日 22:20:17
这几天一直在琢磨用 Perl CGI 架设网站,正好在网上看到了一篇关于 CGI 安全的文章,里面提到了数据库注入和远程执行等等安全问题。也就是说,比较安全的方法是屏蔽一系列特殊字符(比如说,管道“|”、引号“" '”、斜线“/”等等)。今天偶然间突发奇想,如果换一种思路,不需要过滤特殊字符也能做到脚本安全。
具体方法如下。(假设:用户名与密码存在 user 表中,密码用 md5 加密)
Pseudo-code
- $username = http_get("username");
- $password = http_get("password");
-
- $password = md5($password);
-
- $mysql->connect();
- $rows = $mysql->query("SELECT username FROM `user` WHERE password='$password'");
-
- while($r = $rows->next()) {
- if($r->username == $username) login_success();
- }
- die("Username/password incorrect!");
由于 md5 hash 不包括任何特殊字符,所以这段脚本对数据库无害。
优点总结:由于传递给数据库的字符串当中不包括任何特殊字符,因此没有任何注入危险。
缺点总结:一般来说,用户数据表都是拿用户名做索引,所以按密码查询效率相对低一些。但是考虑到用户登录的频繁程度,这个缺点就无所谓了。
Submitted by
snailium on 2008年3月3日 23:22:18

终于看完了第12集。整个片子的压抑气氛跟《Elfan Lied》相比有过之而无不及。从11集开始的气氛骤降压得人喘不过气,12集的结局更是雪上加霜。如果我的内心像世界一样,12集过后我也会拿起刀。
回头重观整部动画,世界在我心中的印象大大改变。如果说在片子开头我喜欢的是柔弱的言叶(事实上在出国前的确是这样),那么到最后,占据着内心的却是世界(就像现在这样)。
回想2004年热火朝天的《君が望む永遠》,当时我还是遥的坚定拥护者,水月结局曾让我失落过一个时间。现在看看,比起这会儿把三个 Bad Ending 捏在一起,至少那会儿还是个 Good Ending。呵呵,如果真的要个 Good Ending 的话,恐怕就是刹那或者光的天下了。
总之,在这穷乡僻壤,很久没见到这么震撼人心的片子了(虽然是动画)。就让我跟世界同在吧,我才不要人渣诚的终结……

Submitted by
snailium on 2008年3月1日 21:23:55
Linux BusyBox 果真是个强大的东西。只要想做,什么都能做出来。正好最近正愁 My Book 的服务总是莫名其妙的挂掉,搞的在单位都无法访问文件。操起简单的 vi,开始制作 Bash Watchdog。(之所以没用 Perl,是考虑到 Perl 在预编译的时候比较耗费系统资源)
经过三个小时的现学现卖,雏形版的 Bash Watchdog - swatchdog 出炉。
/usr/sbin/swatchdog
- #! /bin/bash
- #
- # Watchdog for system service
- #
-
- while [ 0 ]
- do
- for PROC
- do
- PID=`ps -aef | grep -v grep | grep -v swatchdog | grep "$PROC"`
- if [ -z "$PID" ] ; then
- TIME=`date "+%Y-%m-%d %H:%M:%S %Z"`
- echo "[$TIME] $PROC is not found, rebooting..." >> /etc/swatchdog/reboot.log
- reboot
- exit 1;
- fi
- done
- sleep 600
- done
-
- exit 0;
原理很简单,无限循环,检查命令行传入的进程是否存在。如果不存在则重启。
使用也很简单。
Command
- swatchdog cvm transmission amuled
自动侦测 cvm(mionet)、transmission 和 amuled。
Submitted by
snailium on 2008年3月1日 2:42:35
意外的惊喜!感谢实习单位里的一位姐姐,每个人都拿到了一套 Tundra 的芯片。当然,这些芯片基本上都是 RMA 回来的,已经不能工作了。但至少可以作为个人收藏(毕竟是我的第一份工作)。
废话少说,上照片!

从上到下依次是:
Tsi106, Tsi340, Tsi350, Tsi574, Tsi578
Tsi107, Tsi400, QSpan, Tsi576, Tsi564
Tsi108, Tsi109, 未知芯片(应该是Tsi107), Tsi107芯片基板