Techniques of the Visible


暗房,影像开始的摇篮…


影像空间是另一个世界,当你在看他们时他们也在看你,当你在笑他们时他们亦在笑你…




影像的世界是真实的反面,因此它总是颠倒的…


影像很乐意做的一件事就是记录特牛的人…


影像有时就像缺失的记忆,散落了一地…


石头上跳动的小人,是影像的进步或者回归…


影像是一种感知与互动,注意看那个老外和皮带扣的方向…


多媒体影像,记录不同城市、不同的生存状态…


尾声,鱼的合影~~~

— “影像生存”,感受2004上海双年展。

hifa football team match II


hifa football team
Originally uploaded by ericfish.

养成了每次踢完球无论输赢都要拍照留念的好习惯~~~


这次是第二场比赛,整容更加整齐,配合也愈加默契,目前我们一球未失(但也一球未进:),保持不败。


上次忘了介绍了,这个我公司的足球队,名字叫“HIFA”,每周六我们会参加一个叫“百亿光年”的俱乐部联赛。


后排没穿队服的那位是项目组的项目经理,也就是偶老大,踢前锋,很厉害。
另外这次换了个啦啦队mm,另外的一个项目助理^_*


):尝试用Flickr发照片,果然和Hello一样不能用中文,郁闷:(

乔迁之喜

终于把Blog搬到了新家,庆祝一下。

原来使用的免费空间停止服务了,在四处寻觅免费空间无果的情况下不得已也顺便找了一下付费空间,发现 http://www.512j.com 的付费空间还不错。

买了个¥50元自助型,一年50M PHP空间(可以自己切换成30M+10M mysql数据库),用招行的支付卡在线支付,很快很方便,比邮汇好太多了。

空间的速度很快,流量7.5G一个月(足足够了),可以绑定五个域名(10M一个),只是绑定的时间较长,我等了好久。

目前来看还是很稳定的,希望能继续保持,那偶就不用再饱尝颠簸流离之苦了。

拍月亮



今天中秋节,天空出乎意料的晴朗,明月当空,正好是拍月亮的好时机。
不过摄月也不是那么简单的事,一开始几乎张张是大饼装,一团白,反复研究了好久才总结出经验来。

上面这张也终于能拍出月亮上的脉络,环形山啊,阴影啊,使之有了立体感。

拍摄参数: F/8 1/320sec ISO-100

要点:
注意曝光,通常拍成大饼就是由于曝光过渡。
光圈要大,起码F5.6以上。
使用点测光,对着月亮最亮的部分测光。
快门速度在1/200-1/400s之间。
选择最小的感光值,ISO50或者ISO100。

Page Redirect in PHP

In order to redirect my new php&jsp supported host to my old site in another host, searched out 3 way to redirect in php code, they are:


一、用HTTP头信息


也就是用PHP的HEADER函数。PHP里的HEADER函数的作用就是向浏览器发出由HTTP协议规定的本来应该通过WEB服务器的控制指令,例如声明返回信息的类型(“Context-type: xxx/xxx”),页面的属性(“No cache”, “Expire”)等等。
用HTTP头信息重定向到另外一个页面的方法如下:
<?
if (isset($url))
{
Header(“HTTP/1.1 303 See Other”);
Header(“Location: $url”);
exit;
}
?>

注意一下,”Localtion:”后面有一个空格。


二、用HTML标记


用HTML标记,就是用META的REFRESH标记,举例如下:
<? if (!isset($url)) exit;?>
<HTML>
<HEAD>
<META HTTP-EQUIV=”REFRESH” CONTENT=”5; URL=<? echo $url;?>>
</HEAD>
<BODY>
</BODY>
</HTML>



三、用脚本来实现


举例如下:
<?
$url=”
http://www.phpuser.com“;
echo “<!–<SCRIPT LANGUAGE=”JavaScript”>”;
echo “location.href=’$url'”;
echo “</SCRIPT>–>”;
?>

周末和菠萝油王子

一个美好的周末是什么样子,不用加班,睡个懒觉,和朋友去踢场球,然后去馆子好好搓一顿,回家后放一张好碟到DVD光驱里,呵呵,就像今天这样子。

被放进去的那张碟叫做《麦兜:菠萝油王子》。。。

菠萝油王子:麦兜的续集,比上一部更有思想深度与内涵,不过看着看着我又睡着了,估计是片子的缓慢的镜头和柔柔的音乐,让人很容易的放松下来,好像被催眠了一样。

麦兜的老爸麦炳说:抖脚呢…好像可以让时间过得实在点。
其实呢…看碟也可以。

和电影一样用海子的一首诗来结束这个周末:

从明天起 做一个幸福的人
喂马 劈柴 周游世界

从明天起 关心粮食和蔬菜
我有一所房子 面朝大海 春暖花开

从明天起 和每一个亲人通信
告诉他们我的幸福

那幸福的闪电告诉我的
我将告诉每一个人

— 海子

用Drupal打造Blog

经过两天的潜心研究,终于承认 Drupal 是强大的,是无与伦比的,无论作为CMS或者仅仅是一个Blog程序。如果从仅作为Blog系统的横向比较,pLog和nucleus在功能和拓展性上是不能与drupal比的,mt已经是商业软件了(70刀,不便宜的),只有wordpress还有的一拼,davidnunez 把这个killer application 的 killer apps总结为:




  • Superior Software Architecture 优良的系统架构: Dramatically easy to tweak, modify, append… it makes sense and does very smart things (like systematic function naming) that allow for someone to drop in and spend minimal effort to get up to speed.



  • Open Source 开源代码: The community is wide-open for contributions back to the software (i.e. Very good developer community that uses (get this…) Drupal to communicate via forum, mailing list, cvs integration, and basic project management tools)



  • Everything and the kitchen sink… or not 涵盖所有你能想到的功能: The feature set is significantly large out of the box and is only getting larger by the day (literally… subscribe to the cvs rss  feed and you’ll see what I mean). However, Drupal doesn’t suffer from the overwhelming geek-glut of other content mangagement systems… I’m not entirely sure why this is, and I imagine my non-geek friends would loudly disagree. Nevertheless, this is a system that is being designed for actual human beings to use. God forbid! In fact, there is quite a bit of conversation (and consequently, development) around usability and “prettiness.”



  • Threaded Comments 线程注解



  • Everything’s a node 节点化页面: Everything, whether it be images in a Drupal image gallery, blog entries, or cookie recipes is treated as these things called “nodes”. All nodes share common features (like the ability to be categorized and commented on), but each type can have specialized attributes. Drupal gives me the ability to group, connect, and organize the nodes in any arbitrary way. Insanely powerful.



  • Taxonomies vs. Categories 以分类挑战种类: Wow. This is actually the feature that pulled me off of pMachine. Every node can have multiple categories from different “vocabularies”. These categories can have heirarchical (and/or peer) relationships to get a pretty sophisticated organizational scheme. So, for example, if you were building a Drupal site for your recipe collection, you could organize your nodes around any facets you’d like (ex. “breakfast, lunch, dinner” and “chicken, beef, pork”) and start doing things like “show me all the lunch soup recipes that I haven’t made in the last 7 months”)! The data is the killer application.



  • 补充一点:Drupal还有非常好的中文化,要感谢hiweed的中文化项目,而且drupal本身的locals模块就做得很好。


以上就是你为什么该用Drupal而非MT的原因。


不过话说回来,两天前我还和 zephyr 一样有着换系统的想法,因为那时我的drupal(一个还没有被改造的系统)存在着一些作为Blog的比较致命的缺点:


用户评论的开放性不够,留言也需要注册,还要email发密码,很少有人会因为在Blog上留个言去完成那么多的步骤。


trackback模块不work(其实是好的,只是不太友好罢了:)


区块路径问题(4.4里的bug)


模版不多,改造困难(其实难度一般,只是改css较繁一些,我写过一篇相关文章


以上问题我会在Blog里写出我的解决方法。


所以如果你有点技术,喜欢自己动手改造Blog的乐趣,用 Drupal 绝对不会错的。

Drupal区块路径设置的BUG

Drupal区块路径设置,目的就要在不同的页面节点上显示不同的区块(block),在控制面板的区块设置里有一列名为PATH,就是它了。详见:Putting blocks with content in the sidebars

以前就研究过,未果,最近zephyr在drupal的官方论坛里问了这个问题,然后又去搜了一下,找到了这个:Block Paths and Path Aliases,证明了4.4.0版本在不使用clean url时,block path有BUG,killes@www.drop.org给出了这个patch:

Category: feature requests ? bug reports
Assigned to: Anonymous ? killes@www.drop.org
Status: active ? patch
Attachment: block.patch (922 bytes)

 

其实就是在block.module里找到并

 

删:      if ((($block[‘status’] && (!$user->uid || !$block[‘custom’])) || ($block[‘custom’] && $user->block[$block[‘module’]][$block[‘delta’]])) && (!$block[‘path’] || preg_match($block[‘path’], “/” . $_GET[“q”]))) {

 

添:      if ((($block[‘status’] && (!$user->uid || !$block[‘custom’])) || ($block[‘custom’] && $user->block[$block[‘module’]][$block[‘delta’]])) && (!$block[‘path’] || preg_match($block[‘path’], “/” . $_GET[“q”]) || preg_match($block[‘path’], str_replace(‘?q=’, ‘/’, request_uri())))) {

具体的表达式范例:

只在首页显示
<(/|index.php)$>

只在?q=blog下的节点显示
<^/blog>

只在首页和?q=blog节点显示
<^/blog|(/|index.php)$>

只在详细节点显示
<^/node/view>

其余同理,把节点名换下就可以了。

上面所述的表达式只针对drupal4.4版本,以前的版本略有不同,见Putting blocks with content in the sidebars ,have fun!