项目进展到一定阶段,计划的意义就显出来了。

这是我关于 Project Babel 目前正在做和接下来打算做的具体内容,都写在这个 wiki 条目里。

Project Babel 是一个用 Python 语言写成的,运行在 Google App Engine 上的社区软件。我希望能够通过这个项目,产生一个对于创意工作者,中小公司及各种兴趣组而言足够好用的社区软件。同时通过将基础架构搭建于 Google App Engine 的云计算环境中,最大程度减少网站的维护工作量及安全担忧。

V2EX 社区即是使用最新开发版本的 Project Babel 搭建。

4:07, AUG 27 • Permalink
Future of Retina Display

如果 Retina Display 发展到下一代,那么分辨率将是 1280x1920,将可以完全覆盖 Full HD 显示区域(1920x1080),届时 Full HD 的视频播放和游戏想必会成为大卖点。

而那个时候,如果桌面 Mac 的分辨率还没有革命性的突破的话,或许开发者最好的选择就是外接第二个 Cinema Display 27 进行测试吧。

2:51, AUG 16 • Permalink
关于 iOS 上的 Killer App

究竟什么才是构成一个 killer app 的技术要素呢?

  • 程序能够充分使用各种用户觉得自然的手势,甚至发明出让用户觉得自然的手势。或者,当看到别人的 app 中有实现一个很好的手势时,能够迅速恰当地应用到自己的 app 中。
  • 精致但是不繁琐的设计,把握其中的度是最大的难点。争取只用图标就能抓住潜在用户的心。
  • 适当地集成一些 social media,但是绝对不能未经用户同意就以用户的名义发消息,更不能扰民。
  • 检查 deployment target 是否设置得足够低同时又可以满足程序运行要求,提交之前找至少 5 个不同国家的人进行充分测试,否则上线之后一个未发现未解决的 crash 会让你至少难受 7 天。如果一连几次提交都是为了解决悲剧的 crash,那么就应该停下来反省一下开发流程了。
  • 如果是新项目,那么从一开始就要为 Retina Display 的设计考虑,而不是先完成低清版本再补充高清。高清的支持可能需要低清 2 倍以上的设计时间。一个小提示:不要在放大状态调整 Photoshop 里矢量图形的边缘,会出现恶心的,同时难以修复的锯齿,应该在 100% 的视图里去做这件事。
  • 每天至少在 Xcode 里运行一次 CMD+SHIFT+A,确保一定要消除蓝色图标后的那个数字。

1:55, AUG 9 • Permalink

Project Babel 是一套运行在 Google App Engine 云计算平台上的开源社区软件,而 V2EX 网站即是该软件的第一个实际运行实例。

根据我之前的计划,2.4.0 将是 Project Babel 的第一个稳定版本,将提供完整的安装文档及 ZIP 格式的下载包。而目前 2.3.0 的源代码已经在 GitHub 公布,如果你希望尝鲜的话,现在已经可以 git clone。如果你希望用 Project Babel 在云计算平台上搭建自己的社区网站,而不是花费太多时间去折腾代码,那么我推荐你等待 2.4.0 正式版的发布。

所有的开发讨论可以在 V2EXBabel 节点找到,欢迎在那里反馈问题,讨论未来。

一套软件一旦开源,就不再属于特定的某个人了。特定的人或许可以在特定的历史时期推进软件的发展,而长远看来,却是靠原则,理念,环境和用户来驱动一切,我希望 Project Babel 也是如此。

2:19, AUG 2 • Permalink
V2EX Update 20100801

今天 V2EX 上了两个小的新功能,一是可以通过电子邮件找回密码,二是在搜索的时候可以列出相关节点

虽然都不是什么激动人心的酷功能,但是这类小功能,尤其是通过电子邮件找回密码,对于用户是非常有价值的。我用过很多个人编程爱好者做的网站,很多都没有这个功能。可以理解,因为完整的业务逻辑要实现起来很繁琐,同时要考虑到不能留有被滥用的漏洞。目前 V2EX 的限制是,用户不能在 24 小时内执行超过 2 次密码重设。

17:17, AUG 1 • Permalink
About 1.6.0 and Crashes

BC2Stats 1.6.0 arrived in App Store several days ago, and we're really exciting about it. We introduced a new feature called Next Events in this release, it can show you the shortest path to rank up. But what does that mean?

You probably already know that when you achieved certain amount of kills you can get a star for a weapon, and a bronze star gives you 500 points, silver 1000 points, gold 5000 points and platinum 10000 points. So Next Events can show you the least kills required for a weapon to get a star, and that's really fast way to rank up.

Several days after the release, we began to receive crash reports regarding this feature and we've figured out why: our upstream API BFBCS.com recently added a new weapon in their API outputs, and our app is not ready for that weapon because it lacks stars stats. That newly added weapon in API is called DEMOLITION, we guess it should mean the kills you achieved when you destroyed a building with C4, grenade or rockets. Since it lacks some necessary data for our app to calculate, then crashes happen. We'll support that weapon in future release, but for now, we're submitting an update to Apple for fixing the crashes caused by this unexpected change in API.

Thank you very much for your support and patience. The update should arrive in your iPhone in 5-7 days or even longer, because Apple has their mystery review process. If you can't wait, you can become our beta tester to get the update now.

For existing beta testers, you can download our latest fix from below links:

http://commondatastorage.googleapis.com/bc2stats/OLIVIDA_DEV.mobileprovision
http://commondatastorage.googleapis.com/bc2stats/BC2Stats.ipa

How to use: Please download the 2 files, drag them into iTunes and sync. If your iPhone/iPod says error regarding provisioning profile, you can safely delete all provisioning profiles on your iPhone/iPod (It can be found under Settings › General › Profiles), and install the app again from iTunes.

20:34, JUL 30 • Permalink
通过 WebDAV 用 MobileMe 来作为网站的头像服务器

MobileMe 是一个 $99 一年的网络服务,提供 20G 存储空间及每月 200G 的带宽流量。按照苹果的设计本意,这些存储空间和带宽足够用于支持用户用 iLife 所创建的高清格式家庭视频的分享。但是实际上能够像这样子用 MobileMe 的用户实在是太少,大部分人只是把它当作一个邮箱和网盘而已。

不过,MobileMe 的 iDisk 组件,其实是可以作为一个类似 S3 的云存储来使用的,并且很容易通过简单的编程来进行文件增删——iDisk 支持完整的 WebDAV。

最近,我将 V2EX 的头像系统,改用了 MobileMe 来提供服务。实践证明,在 App Engine 上,通过 WebDAV 来向 iDisk 上传数据是完全可行的,而且性能极好。但是有一些限制——App Engine 不支持 WebDAV 的 OPTIONS,PROPFIND 和 MKCOL 请求方法,唯一支持的有意义的是 PUT 和 DELETE,也就是说,你无法通过 App Engine 在 iDisk 上创建目录。因此目录必须提前用其他方式创建好。但是除此而外,一切都非常好用。

欢迎注册 V2EX 并试试我们的新的头像上传功能。

4:55, JUL 28 • Permalink
Cloud Future

Google 推出了 App Engine,Microsoft 有 Windows Azure,而最近 Rackspace 和 NASA 则宣布了 OpenStack 项目,这些平台和 Rackspace Cloud 这样的 VPS 服务不一样的地方在于,他们都引入了一整套的全新 API 及更高级的抽象,简单来说,在这些平台上部署的应用,都是全新开发的。

而我相信在未来,这些平台将会取代目前的传统 hosting。因为这些平台可以带来:

  • 更高的可靠性,单一应用由数千台服务器支持。
  • 更简单的部署,用户不需要关心哪些文件是更改了的,也不需要去服务器上胆战心惊地执行 SQL ALTER。在 Google App Engine Launcher 里,部署已经简化到单击那个蓝色的 Deploy 按钮,然后等待至多几分钟,所有的新业务逻辑就上线了,包括新的数据存储结构。
  • 更合理但是有可能利润率更高的收费,对于简单应用,用户可能会比以前付更少的钱甚至不付钱,而对于复杂应用,一个应用消耗过多的资源却不会影响到云里的其他应用的性能。并且这些额外的复杂度也成为了云服务提供商的利润来源。

小企业和个人会首先成为这样的新平台的用户和受益者,因为对于他们来说,这个新平台更可靠,更简单,甚至更省钱。而为了让应用能够在这个新平台上运行,以往在 LAMP 世界里已经实现过的应用将会需要全部重新实现一次,于是就会有全新的云博客,云记事本,云论坛,云相册……我相信这个其中会蕴含无数的好机会,而这也是 Project Babel 2Project Picky 的意义。

4:21, JUL 27 • Permalink

这是我一直想要的东西,能够在一个页面上速查所有 Twitter API 的 URL,请求方式,参数及是否需要验证。

目前这个页面还没有能够 100% 覆盖所有的 Twitter API,不过接下来我会每天更新的。

2:45, JUL 26 • Permalink
V2EX Update 20100723

在 Google App Engine 上实现了 Twitter 的 OAuth 方式的帐号关联,现在你可以选择将你在 V2EX 上的发贴和回复自动同步到 Twitter。同时也可以使用 V2EX 内置的 Twitter 客户端来发推和看推。

7:02, JUL 23 • Permalink

Rackspace 和 NASA 发起并支持的开源云计算项目。

目前一部分代码已经可以从 Launchpad 上下载到,不过根据文档,目前如果想要在自己的机器上安装这个东西,步骤还是不简单的。

从目前所透露出的信息来看,这个东西应该是在 Ubuntu 或 Debian 上进行主要开发和测试,目前主要支持的编程语言是 Python,用到了 Tornado 框架,一个由 FriendFeed 和 Facebook 贡献的开源 web 框架,某些方面非常类似 Google App Engine。而在数据存储方面,OpenStack 应该会提供一个类似 datastore 的对象数据库。

根据计划,OpenStack 会在今年 10 月中旬提供第一个发布版本。国内是否会有公司第一时间跟进并在国内提供这样的基于开源软件的云计算服务呢?

0:18, JUL 20 • Permalink

V2EX 现在有了为桌面浏览器而设计的全新样式,欢迎访问。

上线时的初代样式本是为移动设备所设计,因此现在若是使用 iPhone 或 Android 访问时,将依然可以看到 mobile 样式。

另外,V2EX 现在有了一个小小的新功能——Notes,这是一个简单可靠的云端记事本。

19:31, JUL 16 • Permalink