学习Ruby on Rails

最近在学习Ruby on Rails,简称RoR。Ruby是一种编程语言,日本人发明的。Rails是Ruby的一个framework(框架),用来开发web程序的。Ruby原本一直不温不火的,主要在日本国内被使用。自从有了Rails这个东西之后,RoR这个套路就一下子火爆了起来,成了“快速开发”,“敏捷开发”理念的代表。

学了一小阵子之后,有了一些感性认识。最大的感受就是RoR开发确实很快,需要写的东西很少。。它的网站上有个挺著名的介绍视频,叫“Creating a weblog in 15 minutes”,就是在15分钟内建立一个blog系统,视频里面的哥们嘴巴和手指都动作得飞快,不过还是看得清楚的。可以看到RoR把流行的那些东西基本都包括近来了,MVC,ORM,Ajax之类都是内建支持的。值得注意的是那个Scaffold(脚手架)功能确实很发指。。。直接就把“增删改查”这几个功能一下子全做出来了,用Java那套写这些东西谋杀了我多少时间啊-_-

我觉得RoR里面有一个比较独特的理念很好,就是Convention over Configuration。用Java进行Web开发的时候总是要去面对大批的XML配置文件,即使有IDE帮忙自动生成,仍然是一件挺麻烦的事情。RoR里面基本都是有一个默认的配置的,你什么都不写,那么就会去按照convention来。比如一个controller的action执行之后就会默认跳转到相同名字的view去,在java里面都已经习惯写一些充满这类“废话”的XML了。再比如那个神奇的Scaffold。。。

Ruby是一种脚本语言,写起来很灵活,现在为止我看着Ruby代码还是觉得有点乱乱的,似乎怎么写都行的感觉,哈哈,脚本语言都这样。这样和RoR这种“敏捷”的想法比较贴合,可以尽可能的少写代码。

不知道Java Web开发世界里面会不会也出现按照这种理念开发出来的framework,呵呵。。。

Windows Live Writer

要说前几天那个Big Trip系列为什么写得那么快,恐怕很大程度上是因为我用了Windows Live Writer这个东西。虽然Live Space是非常的烂,不过这个writer刚用上感觉倒是挺好用的。用它的主要原因是在WordPress的写作网页下写有一些图片和链接的长点儿的文章还是不大爽,操作过程都需要等一些网页打开,感觉不是很流畅,用过的人相信也都有这种体会。

我觉得Windows Live Writer的几个好处有

1. 对WordPress有一些支持,可以load下来blog的外观,所以编辑的时候基本算是所见即所得。

2. 有一些插件挺方便的,比如这个Picasa Plugin,就使得插入PicasaWeb Album的图片变得很easy。还有制表之类的也比在网页上搞方便多了。

3. 它是客户端软件,所以不上网的时候也可以写写,上网的时候post出去就行了。

当然,最主要的好处还是它作为客户端软件,操作起来很快了,插入图片,在源码和网页模式之间切换都不用等待网页loading,写稍微长点儿的文章的时候就会爽多了。

不过也有些不好的地方了。。

1.  毕竟不是给WordPress定做的,也没法支持WP花样繁多的插件。像tags,related articles这些还是没法加,我都是等post上来之后再来网页上编辑一下。这问题也还能忍。

2. 这个软件基本上还是无视W3C的html标准的吧-_- 所以经常写好之后还得改源码。。这个要是不care那个标准的话就不用管了。

嗯,就这些。还是比较推荐的,装一个,有时候就用得上。

Live Space Mover 1.0 !

I finally updated this script to Version 1.0, which means it’s somewhat practical now :)

The most significant change of this version is to use fetch-export-import strategy instead of the old fetch-post one. In the earlier versions, MetaWeblog interface is used to send posts to WordPress, and an additional php file is required to transfer comments. This way suffered by some points:

  1. MetaWeblog interface doesn’t support proxy, or say, I don’t know how to support..
  2. Uploading an additional php file isn’t such a good idea, not possible sometimes
  3. User needs to provide user name, password, etc — a lot of parameters

Now the procedure becomes much intuitive. Just tell this script your live space address, it will fetch all stuff and save them as an XML file. Then use the import function of WordPress to upload and import this XML file. Much better and looks solid, right? :)

Wish more people use it, and dump the sh*t live space….

Twingly Screensaver

I wanted to look for a cool screen saver today, so I searched “screensaver” on del.icio.us and found this site owns the most links. I have to say sometimes del.icio.us is more efficient than google.

[flash http://www.youtube.com/watch?v=zgIT-hfgOXY]

Actually it should be called a “toy application” rather than “screensaver”, because it even has a window border… But it looks cool! Blogs updated all around the world are displayed by this small toy, with a slowly spinning earth model. I like it, when I need to work on other computer and leave my laptop alone aside :)