在台上是没穿鞋子演讲的,比想像的胖一点,尤其是肚子,呵呵。:-)
Dave像爱自己的孩子一样爱着Ruby。
而且和他的孩子一样,Ruby也被说为进入了思春期(青春期)。
交友关系也变了,而且还开始和别人约会,包括:
IronRuby,JRuby,Rubinius,Gaden’s Point 等。
另外还讲了些关于Ruby的危机:
1.对社区的破坏。
2.大公司的分割。(Ruby不是sun的Ruby,也不是微软的Ruby)
3.不同的意见的冲突(好的,坏的,如何区分)
4.爆发性的增长。(预计近2,3年之内)
最重要的QA
Q.很早就使用Ruby的人抱怨Rails太复杂了。Dave怎么看?
A.这是个很好的问题,因为自己在Rails社区里的感受不太好,3个星期之前已经脱离Rails社区了,以后主要集中于Pure Ruby。
Ruby社区还没有变划(变质?)。Rails成长的太快,real busy ,没时间让它变得nice,3周前还说[we want rails to be nice],2天后180度的变了。
不过,还想给Rails一个机会。
(上面可能说的有点不完整)
关于Dave是否脱离Rails,我也不敢肯定,但是那天确实说了感到Unhappy,想集中于Pure Ruby。
再说他们公司还要搞Rails培训和出书呢。
可以看这里,记得比较详细,英文不少。
http://jp.rubyist.net/RubyKaigi2007/Log0610-S5.html
1.主要话题
YARV, JRuby, Rails, 企业开发
未来会很好,druby很重要(不少项目用到了,估计到企业级别的应用更是),Jruby会很火
2.关键字:[A-Z]DD
MDD不是模型驱动开发,这里的M是mascot(吉祥物)的意思。
很多演讲者或者项目都添加了一些卡通的吉祥物。
演讲的时候主席台上是有两个投影仪,一个是显示幻灯,一个是显示IRC,带了电脑的可以登录到IRC在线交流,大会中的爆笑话题多数是从IRC里出来的。 日本人喜欢漫画,还有游戏,从这次大会就可以看出来。很多话题都是和游戏有关的,PS3,wii,FamilyCon等。还有一些演讲就是用wii的遥控器来控制的。
3.NoRuby,NoLife
发的书包上是这么写的。 总觉得有点夸张,如果说with Ruby,more Lift比较合适。

JRuby的开发者穿的T恤后面则是include java,不过不是他们演讲那天穿的。Sun发的是一块戒指形状的糖。
4.Mac 电脑
很多人都是用的Mac的电脑,不愧是资本主意国家啊(笑)。
非常炫的效果,害得我也想买一个,不过没钱。
5.From Java To Ruby
这本书在很多人的演讲中出现了。
6.演讲(presentation )手法很强
ppt只是最基本的,还有很多用rabbit的,当然还有人专门发表了一小段关于如何presentation 的,幻灯片能左右上下有选择等的移动,贴近人的思维,使听者更容易理解。也有拿wii的遥控器的。
还有一个干脆自己一句话都没说,在幻灯片上画了两个人物来对话,听众都变观众了。
最酷的还是RubyCocoa这个项目的介绍,也许是Mac酷吧。平锅健儿的也非常有意思,是通过自己在桌子上摆放卡片,描画等,直接通过摄像机将自己的动作投影到屏幕上的。具体的内容可以见稍后的文章,关于平锅的。
.更多,后面补充。
7.爱驱动
matz和dave都提到了爱,或者love。你呢。
更多信息可以参考(部分英文)
http://jp.rubyist.net/RubyKaigi2007/
和http://jp.rubyist.net/RubyKaigi2007/Program-EN.html
日本名字叫日本Ruby会议,总感觉这个名字有点怪。
地点秋叶原旁边,新御茶的水,人数400以上,女性10人以上。据说今年的RailsConf的1400人中没有女的参加(?真的)。
其中使用Rails工作的大概1/3。
使用MacBook的有近一半。
早上提前20分钟就到了,9:30进场,10点开始。开始的时候matz还没到。
每个座位上都放了一个手提袋,里面有一些赞助公司的小礼物,宣传小册子等。Sun的是一块糖。
第一个是sasada,yarv的作者,现在还是东大的大学院生(中国的研究生)
比较简单介绍了一下,技术细节没讲太多,涉及到的有concurrency,fiber等。
另外澄清了一个谣言,就是去年有人说他要去的公司是sun。
第二个安定版ruby的现状和将来。演讲者的名字Googlepinyin还打不出来
主要说了1.8.5和1.8.6的现状,主要是bug修正等
估计到了1.8.7和1.8.8之后就不会再继续开发了。
第三个出场的是青木郎峰,写了不少书,包括RHG,Haskell 编程
主要是manual刷新计划。
第一第二阶段已经完了,
本来预计今年8.31第三阶段完成的,但是目前这个最后阶段进度只有2%,照这个速度,要到2050年才能完成。
第四个
今天见到Charles Nutter 和 Thomas Enebo了。他么确认了jruby1.0 release了 。现场一片掌声。
他们两个还演示了一下2个例子
1.jruby
jirb,jruby的irb,具备了自动完成功能,就是linux下的输入一部分命令然后按tab键的自动完成。
演示了在ruby中使用swing的frame,button和awt的actionlistener
还有演示了java的thread的例子。
2.jruby on rails
一个使用jdbc的web例子。
而且能打包成war文件,放在j2ee服务器上(这点比较强)。
上午结束。
下午1点开始是matz的主题演讲,当时真想上去握握手。
主题是2007年的Ruby和将来
Ruby开始,1993,2。
1.9.1 2007的圣诞节。
2.0,不好说,估计真的要
然后是企业对Ruby支持,包括sun(JRuby),ms(IronRuby),Thoughworks(24小时技术支持,雇佣xruby的中国人开发者)
据说twitter的负荷达到11000 req/sec
剩下的有时间再写。
http://dist.codehaus.org/jruby/
最新的当地时间7号。
虽然还没宣布,不过好像可以下载了。
C:\jruby-1.0.0RC3\bin>jruby.bat -version
ruby 1.8.5 (2007-06-02 rev 3812) [x86-jruby1.0.0RC3]
C:\jruby-1.0.0RC3\bin>cd ../../jruby-1.0
C:\jruby-1.0>cd bin
C:\jruby-1.0\bin>jruby.bat -version
ruby 1.8.5 (2007-06-07 rev 3841) [x86-jruby1.0]
Linux下,用户login之后可以设置一些环境变量等,TACL也可以。
比如logon之后,会有如下信息:
(Invoking $SYSTEM.SYSTEM.TACLLOCL)
(Invoking $DATA11.RYUHIN.TACLCSTM)
其中TACLCSTM文件,是一个TACL宏文件,默认的时候(刚创建)是这样的
?TACL MACRO
== TACL created this file for your protection.
而system下的TACLLOCL应该是共有的吧(猜测)。
定制内容
首先建立一个脚本mymacro,内容如下:
- ?SECTION TYPE MACRO
- [#IF [#EMPTY %*%]
- |THEN|
- #OUTPUT "** ERROR ** ex) COPY FILE1"
- |ELSE|
- #OUTPUT FUP COPY %*%
- FUP COPY %*%
- ]
-
- ?SECTION VI MACRO
- [#IF [#EMPTY %*%]
- |THEN|
- EDIT
- |ELSE|
- EDIT %*%
- ]
-
- ?SECTION LS ALIAS
- FILES
-
- ?SECTION LL ALIAS
- FILEINFO
-
- ?SECTION H ALIAS
- HISTORY
-
- ?SECTION RM MACRO
- [#IF [#EMPTY %*%]
- |THEN|
- #OUTPUT no file to be deleted
- |ELSE|
- PURGE /CONFIRM/ %*%
- ]
?SECTION RM MACRO开头的部分是宏,可以写代码,处理参数等。
?SECTION LL ALIAS是别名,可能功能比较简单。
但If then else的写法比较诡异。
然后修改TACLCSTM文件,把这个mymacro文件load进去:
- ?TACL MACRO
- == TACL created this file for your protection.
-
- load/keep 1/mymacro
新开一个term 来logon
- (Invoking $DATA11.RYUHIN.TACLCSTM)
-
- Loaded from $DATA11.RYUHIN.MYMACRO:
-
- TYPE VI LS LL H RM
从显示的上面最后两行可以看出,定义的宏之类的被load进来了,可以使用了。
- $DATA11 RYUHIN 3> ls
-
- $DATA11.RYUHIN
-
- CONFIG DEFAULT EST FILE6U FUPCSTM INFILE
- TACLCSTM TEST
TACLCSTM在每个用户的home下,就是who命令结果中的Saved volume属性。
子域名labs.nanshapo.com,用ssh登录到系统。
[rollo]$ pwd
/home/liubin/labs.nanshapo.com
[rollo]$ rails front
/usr/bin/rails:17:Warning: require_gem is obsolete. Use gem instead.
create
create app/controllers
create app/helpers
.....................
create log/server.log
create log/production.log
create log/development.log
create log/test.log
[rollo]$
[rollo]$ cp front/public/.htaccess ./
[rollo]$ vi .htaccess
对.htaccess只有两个小小的修正:
RewriteRule ^(.*)$ front/public/dispatch.fcgi [QSA,L]
即将cgi改为fcgi,同时加入路径front/public/等。
创建一个控制器和2个简单的action
[rollo]$ ruby script/generate controller Main index test
exists app/controllers/
exists app/helpers/
create app/views/main
exists test/functional/
create app/controllers/main_controller.rb
create test/functional/main_controller_test.rb
create app/helpers/main_helper.rb
create app/views/main/index.rhtml
create app/views/main/test.rhtml
[rollo]$
修改router
[rollo]$ vi config/routes.rb
在适当的地方加入(或者将那个注释掉的改一下)
map.connect '',:controller=>"main"
这时候看了一下http://labs.nanshapo.com/
显示如下
Main#index
Find me in app/views/main/index.rhtml
再看看test action
http://labs.nanshapo.com/Main/test
显示
Main#test
Find me in app/views/main/test.rhtml
修改一下程序
- class MainController < ApplicationController
-
- def index
- @cip = request.remote_ip
- end
-
- def test
- @refer = headers["Referer"]
- end
- end
- #index.rhtml
- hello <%=@cip%>
- <br>
- <%=url_for :action=>"test"%>
- <br>
- <%= link_to "Go to test", :action => "test" %>
不过link_to和url_for产生的url都是/front/public/main/test 。明天看看怎么改吧。
One of my favorite business model suggestions for entrepreneurs is, find an old UNIX command that hasn’t yet been implemented on the web, and fix that. talk and finger became ICQ, LISTSERV became Yahoo! Groups, ls became (the original) Yahoo!, find and grep became Google, rn became Bloglines, pine became Gmail, mount is becoming S3, and bash is becoming Yahoo! Pipes. I didn’t get until tonight that Twitter is wall for the web. I love that.
转自newsmth
有机会要用HP的NonStop Server himalaya了,也许只有两个月,有点短。
这个系统(硬件,OS)应该是原来日本的一个公司tandem做的(几个从HP跳出来的人创立的公司),后来这个公司被康柏收购了,再后来康柏又被惠普收购了。
NSK:NonStop Kernel的意思吧。
今天主要是在远程来访问主机,不过透过机房的玻璃见到了主机,但是没进去。
客户端(windows)先装上了outside view32这个软件,应该页是个终端模拟的软件,可见其公司主页http://www.crystalpoint.com/
稍微设置了一下,就可以连接目标主机了。
Open session ,打开到一台主机的连接(这里是telnet协议)
连上之后,显示如下信息:
- WELCOME TO sk1-1 [PORT $ZTC00 #23 WINDOW $ZTN00.#PT7BDZU]
- TELSERV - T9553G06 - (24FEB2006) - (IPMAEF)
-
-
- Available Services:
-
- PPMENU PP521 PPDCM OSS TACL EXIT
- Enter Choice>
- ?>
选择TACL(Tandem Advanced Command Language)
- Enter Choice> tacl
- TACL 1>
Logon
- TACL 1> logon GROUP1.USER1
- Password:
- Last Logon: 05 JUN 2007, 11:27
- Last Unsuccessful Attempt: * NONE *
- TACL (T9205D46 - 24MAY2006), Operating System G06, Release G06.28.00
- (C)1985 Tandem (C)2005 Hewlett-Packard Development Company, L.P.
- CPU 1, process has no backup
- June 5, 2007 13:12:00
- (Invoking $SYSTEM.SYSTEM.TACLLOCL)
- (Invoking $DATA11.USER1.TACLCSTM)
- Current volume is $DATA11.USER1
- $DATA11 USER1 1>
-
-
- $DATA11 USER1 1> help
- This is the Tandem Advanced Command Language, TACL. Although TACL has many
- features not found in COMINT, you will find that all COMINT commands
- will also work with TACL.
-
- The following are examples of commands you can try:
-
- COMPUTE Do simple arithmetic
- EDIT Run the Tandem editor program
- FILES List the files in this subvolume
- HISTORY Find out previous commands you have typed
- LOGOFF End this terminal session
- PASSWORD Change your logon password
- PURGE Delete a file
- RUN Begin execution of a program
- STATUS *,TERM Find out what is running on this terminal
- STATUS *,USER Find out what is running that you have started
- TIME Get the current time
- WHO Display user information about this terminal session
-
- There are many more possible commands which are listed in the TACL Programming
- Guide and TACL Reference Manual.
-
- $DATA11 USER1 2> who
- Home terminal: $ZTN00.#PT7BDZU
- TACL process: \SK1.$Y3BJ
- Primary CPU: 1 (NSR-W)
- Default Segment File: $DATA11.#0003347
- Pages allocated: 8 Pages Maximum: 1024
- Bytes Used: 11352 (0%) Bytes Maximum: 2097152
- Current volume: $DATA11.USER1
- Saved volume: $DATA11.USER1
- Userid: 96,5 Username: GROUP1.USER1 Security: "NNNU"
- Logon name: GROUP1.USER1
- $DATA11 USER1 3> files
-
- $DATA11.USER1
-
- TACLCSTM
- $DATA11 USER1 4>
-
-
- $DATA11 USER1 7> fileinfo
-
- $DATA11.USER1
-
- CODE EOF LAST MODIFIED OWNER RWEP PExt SExt
- EST 101 4106 05JUN2007 16:11 96,5 NNNU 6 6
fileinfo命令结果中Code列的101是文本文件的意思
今天学到的命令:logon,logoff,files,fileinfo,volume,edit(里面命令不少,只用了几个最简单的)
files类似ls,fileinfo类似ls -l
volume 后面跟volume.sub_volume,类似于cd。
volume就类似文件夹似的。
edit比较复杂,是个编辑器,里面的命令有很多,只记了几个。
日本叫脱北,就是逃离北朝鲜吧。4人是一家,老两口(男50多,女60多,均无职)和两个儿子(一个渔民,一个学生)。
从朝鲜到日本900多公里,共用了4天多。
船长7米多,宽不足一米,木造,非常简陋,有一个发动机,中国制造。
男主人会一点日语和中国话,身上还带着人民币。
据说还带着毒药,如果被抓了打算一死。
人被逼急了真的会冒险的。