2008年8月9日星期六
2008年8月8日星期五
开幕式观感
1. 最后这个火点得太拽,主角连个正脸都没给,更主要的,看了半天也没弄明白那是个夸父追日还是嫦娥奔月。
2. 作为世界上人口最多的国家,发挥自己的优势,利用人海战术,开场的击缶和活字表演确实震撼!一些场景很有想象力,给人留下深刻印象,比如远远走来的烟火大脚,人与科技共同完成的巨幅画卷,平地升起的巨大星球(居然还是演唱主题曲的舞台)等等。
3. 某些方面,导演水平有待商榷。比如镜头的切换,总是感觉很别扭,该有宏大场景的地方弄得小里小气,该由长镜头表现的烟火弄得很突兀,该表现细节的地方没有 重点(居然还有一个将近10秒钟不知道是谁的脚的镜头)。总之,和煞费苦心的策划与表演相比,摄像导演得太一般了。
4. 最失败的就是那个假象的借助全场观众手势放飞白鸽的环节,领导也好,观众也好,中国人也好,老外也好,都在闷热中坐了五七八个小时了,没有强制的要求,有几个愿意劳什子连续不断的做那么拽的手势,用脚趾头想也该意料到。
5. 运动员入场时,观众的欢呼声很能听出些趣味,印象比较深刻的有中华台北(欢呼声仅次于东道主),韩国(也许是我听错了,但分明有嘘声在内),伊拉克(同情弱者?),美国(为啥没见到戴口罩的^_^)和中华人民共和国(东道主)。
6. 不记得从前的奥运会是否有人墙把运动员隔离开了,篱笆墙们从运动员入场蹦跶到结束,这大热天的,谁家姑娘谁不心疼啊。
7. 大腕云集,胡总带领下的中央领导们自不必提,布什普京盖茨一干人等也都扎在人堆里冒着白毛汗,让在家喝着啤酒吹着凉风的我们看起来很爽。江伯伯出镜率蛮高的,可怜了身旁那位年事已高的前任国母了。
8. 之前看过一些评论,说开幕式表演很张很艺谋,整体来看,确有此感。不过个人认为这不是什么坏事,原本想象开幕式表演中会有很多迎合世界各国口味的元素,实 际上并没有。感觉上,基本上体现了具有张艺谋特色的中国风格,张艺谋的未必是最好的,但只有民族的才是世界的,在这样一个向全世界展示的舞台上,只有把那 些我们自己看起来老生常谈甚至土的掉渣的东西拿出来,才有价值。
9. 不能完全否定东道主的服装设计,至少全场一眼就能分辨出身着红黄服装的中国运动员来。“西红柿炒鸡蛋”,之前听过很多人这样评论,总觉得是鸡蛋里挑骨头, 太夸张。看了以后才明白,没有比这更准确的形容了:)。我们有一个很大的问题,就是总是想方设法给事物赋予太多的象征意义,队服为什么一定要和国旗的颜色 一致?表演为什么一定要2008个人?开幕式为什么一定要安排在2008-08-08 08:08?为什么要选“五个”福娃做吉祥物?有谁能清楚的说出每个福娃头上那堆奇形怪状的东西都象征着什么来着?
天公也算作美,热是热点,至少没有出现传说中的中到大雨;这么大型的仪式,或多或少有点不尽如人意的地方也都可以理解。无论如何,北京奥运会的开幕式算是圆满结束了,跟着操了好几年心的全国人们也都可以松口气了。接下来,回到正题上,看比赛吧。
2008年7月30日星期三
给自频道找找茬
keso 很生气,因为“自频道版权问题”,北城更关注对“博客热情”的影响,还有讨论自频道成为“超级网络媒体代理商”可能性的,还有加问号的“新媒体自掘坟墓的 又一力作”,讨论的角度很多,我看多数是因为魏武挥介绍自频道的blog写的挺张扬。咱草根没资格也没兴趣参糊大佬们的口水仗,不过既然惹得咱花时间去体 验了,不挑挑毛病找找茬心里难受。
1. 不管定位多玄乎,说到天,自频道不过就是一个带编辑功能的rss聚合而已。
2. 既然首先是个rss阅读器,就得经得起比较和推敲,不要以为加个编辑功能再放上广告就是“新媒体商业”了,还是先别太看得起自己,至少基本功能和用户体验 上先和流行的rss reader看齐吧。反正我的使用体验是,不论从哪一点来看(内容输出、feed的组织和管理、阅读体验、收藏、标识、推荐等等)都比不上任何一个主流的 rss阅读器(google reader, 鲜果,抓虾)。
3. 列举几点感觉不好的体验:
* 所谓内容就是item的正文摘要,基本上没有能全文阅读的(除了那些原本就是输出几十字摘要的feed),就这样还放个“展开阅读”和“缩进文章”的开关,挺搞笑。
* 对item的编辑,居然也是“所见即所得”的,也就是只能编辑刚刚看到的摘要(还带着省略号的),我试来试去,最后发现真要编辑就只能回到原文处copy全文再paste过来,貌似很高级的操作哦。
* 看得出来为了显示摘要,程序做过一些处理,因为“摘要”居然不只是正文的开始的百八十字,不过显然处理得不到位,凡是经过处理的原文的格式信息全丢了,乱糟糟一大片,没人会有耐心去分辨。
* 像feedburner这种被墙封了的源,通通都是验证失败。拜托,你是做数据采集的,稍微有点专业手段好不好。鲜果抓虾从来没有这样的问题。
* 还是源的抓取,太慢了,慢也不要紧,我等你去抓的时候至少给我个提示吧,害得我傻了吧唧的以为输入有误,折腾了半天,不知道自己做错了什么,这种用户体验也太业余了。还是先向别人学习一下再说吧。
* 所谓“版权问题”根本是没法保证的,原始feed里一些重要信息很多没有显示出来,我可不是瞎说,专门拿rss文件对照的,比如digg的rss,作者、 分类、评论计数等信息都有,显示出来都没了,可能是因为digg的rss输出有自定义标签吧,不过这不是不显示原文作者的理由。
* 几乎每个原始feed都有pubDate的,不过在自频道里,所有的输出都是按"分享时间"来排序的,还大喇喇的在每个feed上方标识出时间和日期,我今天导入的feed,所有item的时间都是今天,而且没有地方能修改排序,看着真难受啊。
* 基本上这是我用过的最差的rss阅读器之一。如果算上编辑和分享功能,就是我用过的最差的带编辑功能的rss阅读器了。
* 我看到“自频道”旁边的“beta”字样了,可gmail也一直是beta。这种beta做个startup不会有人说什么,不过blogbus好歹也算 有点口碑的BSP了,何况“自频道”还炒得这么凶,这种水平的产品拿出来宣传实在有点脸红。你让我来做我可能做得还不如你好,可我是草根,我也没吹牛。
4. blogbus是BSP,作为provider,它应该是内容的生产者,优势在于已有的blog平台、用户和口碑。而“自频道”基于rss聚合,本质上,它是rss的消费者。虽然都是针对rss,但并不是一码事。就好像你是一个汽车生产商,但并不意味着你一定就是一个好的车手。
5. 如果真的要做一个自媒体,现有的主流的在线rss reader更有优势,比如鲜果和抓虾,几乎用不着大动干戈,给每个item提供一个edit功能就完全可以了,可以借shared items功能输出经过用户编辑过的rss,阅读就在现有的reader或任何其他地方(只要不是现在的自频道)。或者,假想一下,给热文之类提供 wiki功能,用户共同编辑热文(如果有必要的话)再输出,这样既避免内容重复,又保证原文质量,如果再加上一些人工分类编辑的功能,那才叫真正的新媒体 自频道。
6. rss(包括众多衍生者)被发明出来的本意是提供一种开放的数据结构,将信息结构化的,便于在internent上传递,便于信息“忠实”地在生产者(如 blog)和消费者(如rss reader)之间传递。我觉得“忠实”很重要,就像正规的电子文档都用pdf,因为pdf的内容一般来说是不容易被修改的。当然这是一种防君子不妨小人 的约定俗成的办法,如果有人改动了原始pdf公文的内容并再次分发,就叫“篡改”。我理解rss也是同样的意思,原样传播是正常的,你当然可以去编辑和修 改然后重新发布,不过在我看来,这就是篡改,是没有公信力的。别人没这么做并不是别人不能,大概是不屑吧。
7. 假设如其所愿,“自频道”各方面都就绪了,结果可能就像很多人预料的那样,“突破了自动抄袭的技术壁垒”,“成为垃圾站的温床”,可以预料到的是:大量重复的、雷同的内容层出不穷,有价值的信息被埋没在更多的垃圾里,这是对用户耐心的考验,而且几乎注定要失败的。
8. 按“自频道”宣传的本意,不过是要给人们提供一种批量的自动导入和编辑内容的方法,如果人们愿意花点时间(比如去适应“自频道”糟糕的用户体验的时间),利用现有的互联网工具,谁都可以创造出更方便的“自频道”。比如:
* 使用yahoo pipes(或ms的popfly或google mashup等mashup工具)去处理rss源,都是很cool的东西,不必被流程图模样的block吓到,它做成那样就是为了给不懂编程的人来用的, 只要习惯了他们的用法,获取rss源的途径几乎是没有限制的,处理rss源的方法也几乎是无限制的,有限制的只是想象力。
* 使用任何一个online rss reader订阅自己制作的rss源,或者在igoogle,netvibes上展示你的源。定制的源可随时根据需要去修改,或者根据不同需要制作任意数量的源。
* 如果真的需要编辑rss内容(为什么?),如果恰好懂一点编程,去google app engine上申请一个app,做个导入rss的接口,做个list和form,或发挥想象力做更多的事情。
* 这些都是随便提提,可选择的方法远比这些多。对于自频道的假想用户,上述都是可以自己做到的,不需要花一分钱,需要的可能只是花点时间去了解和学习一下,DIY的感觉比被人忽悠好得多。
2008年7月17日星期四
Deploy Ruby On Rails App on Heroku - A Simple Guide for Windows User
Ruby on rails is popular due to its practical methodology, framework and tools, rather than an extensive acceptance by web hostings(like php). If you've tried to deploy a ror application on one of most of popular web hostings (those promised to provide 1500+G space, 3000+G/mo file transfer), you may agree with me, because they always limit you so much. Of course you can buy a dedicated server, but how about just publish a toy project before pay anything? Heroku is a good choice.
As an online service, heroku did some wonderful things, for example, an irb, an ror editor, an rails console, a gem manager, and so on. The point is, they are all run in browser, even without any rich client support (I believe it will be practically used if is implemented in a rich client). You can check these features at http://heroku.com/features.
An important feature is about "work locally". For linux user, all the necessary tools are native. For Windows user, a few additional resource are required. Here's a simple guide for Windows user.
Heroku supports two ways to transfer source code between local and server,
* A simple way is "import/export", "import" means upload a compressed source code package in .tar.gz, it's easy on linux. For Windows user, a convenient approach is to use 7z. For example, your app folder is "myapp", compress it into "myapp.tar" using 7z, then compress "myapp.tar" into "myapp.tar.gz" using 7z. Upload "myapp.tar.7z" to an existed app on heroku, done! "export" means download a .tar.gz package from heroku, uncompress it, work locally.
* The other approach is more practical. using Git and a "heroku" gem for source control.
** Git is yet another source control tool, a substitute for SVN in ror world.
** GitHub is a Git repository, Rails itself and many other ror source are currently hosted there.
** "heroku" gem is a tool which helps to manage source code hosted in github, including source control and publish source code on heroku.
** Git is native in linux, for Windows user, there are two options: Cygwin and msysGit, the former is a comphensive linux simulator on Windows. The latter is an unofficial Git implementation on Windows.
** Download either of them (they are similar if you just need Git), and install. For Cygwin, remember to select git manually.
** msysGit provide a GUI interface for Windows user, Actually, I don't think it is better than its bash shell interface. So, even as a Windows user, you'd better to know a little about bash shell.
** Open msysGit bash shell from start menu, like this:
** Register an account at github.com, the "Free" one is ok, remember the email you used (e.g. name@example.com).
** Generate a ssh-key. In the opened msysGit bash shell, input following command:
ssh-keygen -C name@example.com -t rsa
In the following steps, it will ask to provide path and passphrase, use default by pressing enter (or change them if you know what you are doing).
** Get your SSH Public Key. Input following command in shell:
cat .ssh/id_rsa.pub
The SSH Public Key (lines of strange charactors) will display in the shell, copy them (how? just like what you did in a Windows cmd shell), and paste into Github account (go to https://github.com/account, login if necessary, there's a textbox titled with "SSH Public Key"), then click "Update Keys".
** The last thing is to get "heroku" gem: "gem install heroku"
** Everything is prepared, go to see heroku's demo, or follow the next simple steps to start to develop and deploy a ror app on heroku:
- Open msysGit shell, input "heroku list". which lists all your existed rails apps on heroku;
- Input "heroku create myapp", it helps to create skeleton of a ror app named "myapp" (I guess it run "rails myapp" for you on heroku server), you can access http://myapp.heroku.com directly (of course you should make sure "myapp" is not an existed app name on heroku), a ror welcome page is waiting for you.
- input "heroku clone myapp", make a clone of "myapp" for local development. First time, it will ask your email and password which you've used to register in Github. (BTW, in msysGit shell, change directory to the location you want to put your local app. It looks like "cd /d/apps/", which equals to "cd d:/apps" in windows cmd shell. Interesting to both linux or windows user:) )
- if everything ok, you could edit your rails app with your favorite editor or IDE. (I tried Netbeans and e-texteditor, both ok.)
- Make some changes to your local app, (for example, generate a scoffold, or modify routes mapping in config/routes.rb, these will take effect after you push them to heroku), run server and test it locally. If everything ok, check in (and publish) your local source code to heroku (Github) by following commands:
- 'git add .', adds the current content of new or modified files to the index, note you should in your rails app folder;
- 'git commit -m "comments about this checkin" ' , stores the current contents of the index in a new commit along with a log message from the user describing the changes;
- 'git push', updates remote refs using local refs, while sending objects necessary to complete the given refs;
- ok, now try to access your rails app on heroku by accessing http://myapp.heroku.com,all the local changes work. 'git push' does some great things: check in source code, publish updated source code on heroku, rake db:migrate (if there's migration), restart rails server (let the changes to routes.rb takes effect), maybe include other necessary work. Great!
- Git is similar to SVN,except above options, you can do checkout, diff, merge, mv, rm and so on. Check helps as you need.
- In fact, all the above command can be used in Windows cmd shell if you setup msysGit as need. And all these commands can be used in Cygwin either.
As a ruby on rails fan, you really should take a tour through heroku, there are so many interesting features except "work locally". After deployment environment getting done as above, you are ready to publish your toy project to the world.
2008年7月13日星期日
How many things to learn?
I was/am a MS tech fan due to my job and intrerest. For a long time, I was eager to learn everything about .net. For examples:
* There are more than 200 tech books on my bookshelf, Wrox, O’Reilly and others. My wife named Wrox area as “red-light district”, and O’Reilly area as “Zoo”;
* I collected webcasts and ebooks as possible as I can find. and burn them into DVD;
* There are hundreds of feeds in my rss reader, I subscribed all the popular blogs about .net, from MSDN to Scottgu, from Codeplex to Rob Conery;
* I browse Codeplex “tag by tag”, download all the pop projects;
Unfortunately, my interest was not just about this. I was interesting in OO/P/AD, design pattern, TDD, refectoring, UML/RUP, project management, agile project, enterprise framework, networking, web design, database,java, c++, python, javascript, even ERP for a while. Recently, the terrible interest spreads to ruby, ruby on rails, then linux server when I decide to deploy my toy project, then virtualization when I decide to setup my own vps of linux…
Sounds great, right? The truth is…
* half of books on my bookshelf were not touched,
* webcasts were reviewed when they were just downloaded, but never be opened after burned,
* there are always 5000+ unread feeds in my rss reader, sometime I will mark them as “read”, but the number came back soon;
* reading source code is good, but the projects which were really carefully researched are not much.
As everyone can guess, I may be an expert on “how many things do you know?”, but not an expert of each of the listed parts, although my interest has taken most of my free time :( . Sound despressed.
Write this because I read a blog “Do you have the time to learn everything“. I agree with some of its points. It’s definitely impossible to learn everything, people should has a limited learning list with prioritization, people should learn to make choice first. I know this from beginning, but when I start to be interesting in something, I feel this is the most important. what a fool!
Life is limited, knowledge is not. But if learning is as fun as playing game or watching TV, just do it.
That’s the words to comfort myself.
2008年7月10日星期四
wubi...
As a layman in linux world, it’s glad to know there is such a greate tool for linux installation from Windows, i mean Wubi.
Wubi is not the Chinese input method.
Wubi is an officially supported Ubuntu installer for Windows users that can bring you to the Linux world with a single click. Wubi allows you to install and uninstall Ubuntu as any other Windows application, in a simple and safe way. Are you curious about Linux and Ubuntu? Trying them out has never been easier!
I tried to use PC without Windows for a few weeks at home. Frankly, it’s not a good experience for me. Ubuntu is actually better to use than other linux distribution. But in my experience, “better to use” means it is similar to Windows than others. if it’s true, why not use Windows (we have paid for OEM).
Linux should do more to contest PC desktop. When I use linux at home, I am not a software developer, and not a linux fan, I am just a computer user who likes to try different things. In most time, I read, watch, listen, write. I don’t care if it can run on different hardware platforms, I don’t like install software from source(even by apt/rpm/yum), I don’t like that I have to learn much and try more to make a BT client work, I don’t like to take half an hour to search, download, make, install and reboot to just watch an “amazing” desktop 3D effect, and so on… At last, I believe most of people in most of time could agree with me. Of course, I like linux as a server, free and powerful, but not on my desktop at home.
Linux need to be modest. do something like wubi (it’s said fedora 10 will add a similar feature), attract more people to like to try. For linux desktop, there is a huge space to improve.