2009-09-17

为什么我想买TextMate但是没买呢?

下午01:30:42 yayv: TextMate有哪些功能是Editplus没有的呢?
下午01:31:05 tiny: 跟texamate比的话ed就算没什么功能的
下午01:31:10 tiny: 模板啊,自动完成啊
下午01:31:13 tiny: 这些都要体会
下午01:31:20 tiny: 你必须有mac才行
下午01:31:30 tiny: 然后你下个测试版用就知道了
下午01:32:09 yayv: 你这个回答..., 等于我没问...
下午01:32:36 tiny: 实际上是这样的
下午01:32:42 tiny: 你说功能就那么简单
下午01:32:51 tiny: 但是好用这个不是简单可以说清除的
下午01:32:54 yayv: 你连1-3个你喜欢的功能都说不出来,凭什么说他好呢,哪怕是都有的功能他做的更好
下午01:33:31 tiny: 呵呵
下午01:33:54 yayv: ..., 还是没得到结果...
下午01:34:08 tiny: 我用着觉得你,你不一定啊
下午01:34:37 yayv: 我不在乎是不是我能用上,我只在乎为什么其他人觉得他好用
下午01:35:12 tiny: 就是好用
下午01:35:18 tiny: 我给你个最简单的例子吧
下午01:35:24 yayv: 好
下午01:35:26 yayv: 就等这个呢
下午01:35:26 tiny: 代码完成,现在ide都可以做吧
下午01:35:31 yayv: 对
下午01:35:35 tiny: vc,vb什么样子你知道的
下午01:35:40 yayv: 对
下午01:35:41 tiny: delphi看着是一样的
下午01:35:47 yayv: autocomplete
下午01:35:53 tiny: 但是往往要编译一下h,pas之类的
下午01:35:57 tiny: 会慢一点
下午01:36:03 tiny: 功能%一样,对吧?
下午01:36:14 tiny: 100%
下午01:36:20 tiny: xcode也有代码完成
下午01:36:32 tiny: 但是不是按点以后出现
下午01:36:37 tiny: 因为他不是c++
下午01:36:52 tiny: 他是Objective-C,他的语法是[对象 方法];
下午01:37:23 tiny: 他的完成是 你写 pr,他就给你输出一个pr正常字体,int灰色
下午01:37:38 tiny: 你觉得对,你就按tab,这样print就出来了
下午01:38:09 yayv: 输入 fo, 有 for foreac 多种选择的时候呢?
下午01:38:39 tiny: 你觉得不对,你可以按esc,出现一个下拉框可以选择
下午01:38:50 tiny: 或者你可以完全不理会,直接继续输入
下午01:38:51 yayv: 哦
下午01:38:57 tiny: pri的时候多半就不会错了
下午01:39:07 tiny: 而且貌似带有上下文的学习,所以错误的几率很低
下午01:39:10 yayv: 类似emacs的补全括号的感觉
下午01:39:15 tiny: 我昨天看到人说这个不好
下午01:39:24 tiny: 那就是完全按照vc的思路去说的
下午01:39:31 yayv: 无所谓谁说不好,我只在乎谁觉得好
下午01:39:40 tiny: 我觉得很好,为什么呢,因为我现在已经完全不记得他的存在了
下午01:39:42 yayv: 任何功能,都会有一大堆的人说不好
下午01:39:54 tiny: 就是给你讲的时候,我要去操作一下,才能给你描述对
下午01:40:04 tiny: 不然该按什么我都记不住
下午01:40:17 tiny: 但是我写代码的时候,肯定不会打错
下午01:40:20 yayv: 恩,明白,就像VI的很多命令,习惯之后就想用筷子那么简单
下午01:40:28 tiny: 我把这个叫做自然
下午01:40:40 tiny: 如果你完全不知道这个东西,你不理会他,不用他的好处
下午01:40:47 tiny: 它也完全不会干扰你
下午01:40:58 tiny: 不像delphi,他比较突出
下午01:41:07 tiny: 因为慢,你会暂时不能响应
下午01:41:15 tiny: textmate就有点这个感觉
下午01:41:23 tiny: 你让我跟你说他哪里好用,很难说
下午01:41:28 yayv: delphi还好,还算快,JB 这类的贼慢
下午01:41:39 tiny: bcb更慢
下午01:41:44 tiny: 我主要用bcb多点
下午01:41:45 yayv: 明白,要的就是你上面这些描述

我用满了TextMate的试用期,感觉很不错,有一个PHP网站的全部代码都是在里面写的,虽然我对TextMate的整体了解还不够多,很多有用的特性都不知道,但是用这很顺手,这点很重要。功能有时候并不重要,尤其是大多数功能,都是所有竞争产品都具备的的时候,我们才回到的起点,好用,最重要的还是回到好用和顺手。
我们应该使用金钱可以买到的最好的工具,那么我为什么没买TextMate呢?我有个毛病花钱的事情总是说老婆不让,对不起老婆大人了。有些事情是请示过老婆大人的,人家斩钉截铁不让的,有些事情老婆大人没有指示,我只是说老婆大人不让,来避免我自己花钱太过大手大脚,这属于自我审查,不是老婆大人的问题。TextMate还是有点贵,等我Adsense这轮漫长的100美金(这轮都快1年多了吧)到帐了,我再买吧。



2009-09-16

Joel Test:写好代码的12个步骤

刚才看到了篇《The Joel Test: 12 Steps to Better Code》,感觉很靠谱,分享给大家:

The Joel Test
  1. Do you use source control?
  2. Can you make a build in one step?
  3. Do you make daily builds?
  4. Do you have a bug database?
  5. Do you fix bugs before writing new code?
  6. Do you have an up-to-date schedule?
  7. Do you have a spec?
  8. Do programmers have quiet working conditions?
  9. Do you use the best tools money can buy?
  10. Do you have testers?
  11. Do new candidates write code during their interview?
  12. Do you do hallway usability testing?

其中的第9条,狠狠的击中了我,Robin同志多次告诫我买一个Textmate(约$59),我就是舍不得买,怕被老婆骂:上个月信用卡账单,美元怎么那么多啊?。

按照第9条的逻辑,不考虑硬件因素的话(考虑硬件的话,我是很想买Mac Pro的,$3299,8核,那不是机器,那是真正的野兽啊),我唯一出钱购买的开发工具就是IDP(iPhone Developer Program)了。

Joe Test这12条标题简译如下:

  1. 是否使用源码控制软件?
  2. 是否可以一步构建一个build?
  3. 是否进行daily build?
  4. 是否有bug数据库?
  5. 是否在修改bug后,才开始写新代码?
  6. 是否及时更新了你的时间表?
  7. 是否有详细的设计规格说明书?
  8. 程序员是否有个安静的工作环境?
  9. 是否在使用金钱可以买到的最好的工具?
  10. 有没有测试人员?
  11. 面试的时候是否要求求职者写代码?
  12. 是否利用陌生人进行可用性测试(直译为走廊过客可行性测试)?
看完体会一下,自己或着自己的公司项目,是否满足这些条件呢?我有很多没做到的。然后最重要的是把原文读一遍,我不翻译原文是有原因的,因为,在中国,显然应该加上第13条:

  13. 是否能看懂英文?