Leopard PATH setting is quite different from Tiger. Configuring PATH on Tiger, we used to either modify the /etc/path or user path configuration. With Leopard, system-wide path configuration is managed by /etc/profile. The file loads a path_helper script. So what the script does? The path_helper constructs the system environment PATH in this order: Reads the local user [...]
Continue reading...Friday, June 20, 2008
如果一个用户用非Grade-A浏览器浏览网页的时候, 大多会看到一些广告说”本网站只支持, IE7″, 或者”请升级您的浏览器”。 作为开发人员, 我们是不是要告诉用户”There is a better browser for you.” 当然,一个浏览者用的是IE6, 我们也需要告诉他们IE7已经发布了,”快点更新吧”。 当然还有其他的选择, 比如Firefox 3, Opera 9.5, Safari 3.1. 作为一个网络开发人员, 我们用很多的经历只是要确保IE6能够运行我们设计的网络程序。 而且还要写一些CSS hacks保证页面的结构和其他的浏览器保持一致。 这样就好像我们在开发一个现在的网络应用程序, 又要考虑到8年前的祖先级别的机器也能运行。 记得前一阵子看了MS下一个IE小组项目经理的留言,不得不让我大笑。他们说到了向后支持的功能,他们要保证IE的backward capability。 如果是一个优秀的老产品, 作为开发人员应当保证向后兼容性, 但是如果一个完全错误百出,开发问题严重的产品, 难道我们还要去支持? 如果开发一个简单页面的网络程序, 我们并不用担心会有兼容问题。 特别是这几年, 新颖的Web2.0/3.0程序日益见涨, 比如 MobileMe, 280 Slides, Yahoo! Mail,等等, 可以说要考虑到IE6, 就好像要一个486运行Vista, 所以干脆就让用户更新计算机吧。 这样问题都解决了。 苹果最近在WWDC上更新了.Mac的服务, 升级到MobileME. 有趣的是作为一个这样大型的网站, MobileMe不兼容IE6. 不过我也怀疑, 如果是苹果的用户,又有多少人会用IE的产品(也不是没有可能). 也许他们会用Sarfari/Firefox在Maxoxs上, 到Windows上使用IE7或者Sarfari for Windows. MobileMe是用SproutCore写的. SproutCore是一个Ajax famework, [...]
Continue reading...Monday, May 5, 2008
昨天半夜买了Apple ADC member subscription,最便宜的$99的。 虽然可以用jailbreak的iPhone和pwe,让写的程序在iPhone上运行,发布的时候,编译好的程序是带有xcode developer id的。主要因为当iphone 2.0发布的时候,iTune shop可以发布自己写的程序的,Steve Jobs说为了防止程序人员发布代有恶意代码的程序,所有的发布软件都有开发人员的信息。 我用的是Xcode 3.1, 带有iPhone SDK的。网上很少能找到3.1的教学,从3.1开发工具有一些改变。Xcode, UIBuilder结合是一种很神奇的开发感受。在过去的一年里面我一直都在用Visual Studio 2003开发.net 2.0/3.x的程序,相比下来,Xcode上手不容易,但是generated code给开发人员的感觉是很干净的, 有UI设计的文件.xib(Xcode 3.0之前是.nib文件),OO架构的 interface (.h)和implementation(.m)。看过Visual Studio的designer.cs文件,如果这个文件出错,想找出问题来可不容易,而且即使没有对UI的文件有改变,VS还是会把代码位置移动一下,当你commit文件到CVS/SVN服务器上的时候一定要小心。 学OO-C不难,用习惯了VS2003,Eclipse和NetBeans要是IDE没有code completion写起程序来就会很麻烦,特别是 对初学者,有一个列表的instanse methods是很有帮助的开始。记得我在开始学PHP + symfony的时候,为了找一个理想的IDE花了很长时间,测试了6种支持多操作系统的IDE, 最后还是选了Zend Studio Eclipse。好在Xcode有不错的code completion功能,需要一些小小的customization, 比如说我设定F5为显示completion list。在UI的部分给我的感觉是MVC,一致都在把UI和Controller用鼠标拖移的方式连接,然后model和business logic那部分当然要自己写。
Continue reading...Tuesday, April 29, 2008
虽然刚刚发布的NetBeans 6.1被发现了很多的Bugs, 值得称赞的不仅仅是性能上的优化,还有很多新的功能。 值得提到的是: 支持 Spring Framework 支持 JavaScript 最新的MySQL Explore. 好像MS SQL management studio一样,注册数据库,创建table, 等等基本的数据库造作。 Javadoc Code Completion. 编辑文档更加简单了。 窗口支持透明化。 当然需要graphic card支持的。 官方有详细的Release note, 这里就不想细说了。 这里下载NetBeans 6.1. 个人觉得JavaScript Debugger和Code completion 是比较有用的工具。
Continue reading...Tuesday, April 15, 2008
研究过PHP下的Symfony, 再看Ruby on Rail的时候, 发现两者都有不少的相似性. 首先他们都用到MVC的架构设计整个项目, 作为Web Application来说, 这样可以将class library, layout view, handler清清楚楚的分开,有助于多人开发,和日常维护。 如果比较过两者library的结构,他们也有相近之处。 从创建项目到编辑项目设置等等。 比如, 创建项目时, 他们都会创建一系列的文件夹和默认文件, 然后可以自己创建module, 都有位置防止plugins。做数据库的时候,也可以用.xml 或者.yml导出 Sql store procedures. 那到底哪个比较好一些。 这里有一边文章对比一些MVC frameworks的性能, 不足的是, Bench mark只不过是一个参照, 完全不能说明其他的情况, 比如error handling的性能, 每个framework都有各自的优化设置, symfony deployment的时候就有优化的设置. 在Google doc上到有一片比较全面的文章比较Rail和Django, 对与一个新的项目选择framework有一定的帮助.
Continue reading...
Saturday, August 9, 2008
0 Comments