﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-canonical-随笔分类-杂感</title><link>http://www.blogjava.net/canonical/category/4852.html</link><description /><language>zh-cn</language><lastBuildDate>Mon, 24 Dec 2007 03:17:25 GMT</lastBuildDate><pubDate>Mon, 24 Dec 2007 03:17:25 GMT</pubDate><ttl>60</ttl><item><title>关于学习</title><link>http://www.blogjava.net/canonical/archive/2007/12/24/169904.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sun, 23 Dec 2007 17:10:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/12/24/169904.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/169904.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/12/24/169904.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/169904.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/169904.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 我平时Kill Time的主要方式是阅读各类学术书籍。但是学习本身只是了解前人的发现，间或锻炼一下自己的思维能力，对自己的工作和生活并没有什么直接的助益。学习本身无论如何深入，多半也只是采用前人的话语复现前人思考的历程。在我们通过独立的思考获得直观的体验之前，在我们将所学到的知识应用到书本之外的场景之前，我们所学习的知识只是考试的工具，只是可供欣赏的对象，却不能成为我们思考中活跃的因素，无法参与我们思维的进程。别人只能给你思想的引子，并不能给你真正的思想。只有自己找到了所学知识的超出书本的非显然的应用，只有独立建立了不同概念之间未曾阐明的联系，我们才能真正获得对于真理的体悟。无论我们自己的发现是如何的微不足道，无论它是否只是重复发现了劣质的轮子，它唯一的意义只在于它是我们独立思考的结果，是我们自己的创造。即使它是卑微的，是重复的，它对我们的理解的作用仍然是任何外在的教诲都无法比拟的。<br />
<br />
&nbsp;&nbsp;&nbsp; 现代社会中创造所需的成本已经被空前降低了。想想百年前的天才们，他们缺少信息来源，只能一页页翻查文献，反复誊写文稿来保存知识，大量的时间被花费在了与思考完全无关的事情上。同时，他们所处的时代存在着更多的不确知性，他们的思考所能够凭依的事实更少，做出错误判断的可能性与今天相比也更大。即使Bill Gates这样的挣钱能手在1981年也能放出"640k ought to be enough for anybody"的厥词，显示出我们在预测未来的时候是何等的乏力。当我们今天站在人类文明的巅峰，拥有前人无法想象的工具，并不断制造着从未经历过的实践的时候，我们理应拥有超越历史上任何天才的，更加宽广的眼界。<br />
<br />
&nbsp;&nbsp;&nbsp; 现代社会中的创造看似简单了，但从另一个方面看，却又是大大的复杂化了。前人的成就成为了难以逾越的丰碑，而为了进入科学殿堂，我们需要的准备工作也变得异常的繁复。这里有科学内在的规律，但也有人为制造的障碍，而这其中最主要的是数学障碍。只要想一想，针对软件工程，经济运行，企业管理，每个参与其中的实践者都可以提出一些自己的意见，但是如果涉及到数学，为什么大多数人只有三缄其口了？现代抽象数学取得了辉煌的成就，但是它也可能毁掉了更多学生创造的激情。宏伟精深的大厦让人敬畏，却无法激发我们任何直观的共鸣。甚至Arnold这样的数学大师也坦承读不懂当代数学家们的著述：因为他们从不说&#8220;彼嘉洗了手&#8221;，而只是写道：存在一个t1&lt;0，使得t1在自然的映射t1-&gt;彼嘉(t1)之下的像属于脏手组成的集合，并且还存在一个t2，t1&lt;t2&lt;=0，使得t2在上面提到的映射之下的像属于前一句中定义的集合的补集。当Bourbaki学派致力于在课本上消灭所有图示的时候，理性达到了非理性的彼岸。<br />
<br />
&nbsp;&nbsp;&nbsp; 有时我在想为什么现在的程序员似乎对于程序的理解能力降低了。排除教学水平的降低和个人努力的不足之外，是否是因为现在需要学习的内容过多，以至于丧失了自我思考的勇气？在C的时代，每个程序员对于程序的理解都是直接的，原始的，对程序结构的把握都是充满自信的。当新的概念不断涌现的时候，人们总是说，Object不过是..., Component不过是..., AOP不过是..., ORM不过是..., IoC不过是.... 这体现了人们试图把新的概念融入自己原有知识体系的一种努力。虽然仔细考究起来，这里的理解很多时候都是似是而非的，未必掌握了新技术真正创新的思想方向，但是这里的思考总是独立进行的，总是对我们的理解和工作有所助益的。而新一代的程序员生活在Object, Pattern等概念已经无需饶舌来证明自己的时代，他们是否在思想中独自评估过所有概念的意义，是否建立了概念和实现之间直观的联系，是否在统一的思维世界中为所有的概念找到了合适的坐标？这一切，我不得而知。<br />
&nbsp;&nbsp; &nbsp;<br />
推荐：Arnold 论数学教育 <a href="http://www.ieee.org.cn/dispbbs.asp?boardID=64&amp;ID=25892">http://www.ieee.org.cn/dispbbs.asp?boardID=64&amp;ID=25892</a><br />
<br />
<img src ="http://www.blogjava.net/canonical/aggbug/169904.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-12-24 01:10 <a href="http://www.blogjava.net/canonical/archive/2007/12/24/169904.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>哲学与情感</title><link>http://www.blogjava.net/canonical/archive/2007/12/09/166452.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sun, 09 Dec 2007 07:33:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/12/09/166452.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/166452.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/12/09/166452.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/166452.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/166452.html</trackback:ping><description><![CDATA[&nbsp;&nbsp; 因为在认识上物质和意识的两分，传统上哲学便分为唯物和唯心两大流派。唯物主义因为非哲学的缘故在国内占据主导地位。但在哲学上却从未平息过思想的纷争。胡塞尔的现象学试图重新回归形而上学，摒弃物质和意识的二元论，将它们统一到现象这个一元概念之中。我个人的思想基本是唯物主义的（毕竟少年时受过太多官方的教育），但是对我们目前所掌握的所有知识却持有温和的怀疑。<br />
&nbsp;&nbsp; <br />
&nbsp;&nbsp; 当一个非哲学家说到&#8220;客观规律是客观存在的&#8221;的时候，这是以他者的态度，从上帝的第三只眼看世界。但是我们此时此刻却存在于此一世界，因而不可避免的要卷入这滚滚红尘当中。为什么我们在应用分析和综合方法之后，能够通过螺旋式上升的路径逼近终极的真理？这就如同说一个迭代总会收敛，而且必然收敛在正确的结果之上。我们所认识到的一切为什么不能是为了应用方便而不自觉采用的机会主义的产物？所有可能的哲学都是我们在此生有限的存在中所无法证实或证伪的。当我开始质疑为什么我们不能是离(我们在有限时空范围内认为的)本质愈近，离真实愈远的时候，这不过是用一种无意义置换了另一种无意义，但是一个人的观点却因为他的情感的注入而对他显出不同。我们如何才能有勇气，有力量，有方法在有限的时空中创造出变化？<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; 人类千年的智慧传承到我们这些普通的接受者手中的时候，它们都不可避免的陈腐了，庸俗了。当我们在说到这些真理的时候，我们的喉舌已经脱离和思想的联系。这些永真的话语在唇齿间跳动的时候甚至不能在我们的思想中激起微小的涟漪，它们不过是鹦鹉学舌。<br />
<br />
&nbsp;&nbsp;&nbsp; 道是无情却有情。有人说我们对规律的揭示是分析，实验和直觉的产物。可是直觉是什么？这里的逻辑类似于&#8220;如果A则B,否则其他一切情况则X"。所谓的直觉是一切非直觉的补集，实际上涵盖了我们所有丰富的情感历程和生存体验。理性却需要非理性来拯救。我们的行为总是受到情感的驱使。例如我在blog上写下一篇关于函数式语言的文章，一些技术爱好者纷纷发表议论，这是否是理智推演的结果？来的时候一腔热情，去的时候是否真的带走了什么事实？这样的事情每时每刻都在我们的世界中发生。我现在并不喜欢"XX之道"的提法，其实所论与道无关，只是利用了传统上对于道的敬畏，绑架了我们真挚的情感，却没有带来任何真实的体验。多情使得我们成为被忽悠的对象。<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; 活着，用海德格尔的话说，一个字&#8220;烦&#8221;，用萨特的话说，两个字&#8220;恶心&#8221;，用普罗大众的话说，三个字&#8220;不想死&#8221;。但如何去活？中国人将个人的命运化入了家国的绵延，按李泽厚的话说，实现了心理学和伦理学的统一，在生的途中实现对情感的构建和塑造，这并不是单纯的个人生命体验，也不是宗教中神秘性的情感迷狂或心灵净化。<br />
<br />
<br />
<img src ="http://www.blogjava.net/canonical/aggbug/166452.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-12-09 15:33 <a href="http://www.blogjava.net/canonical/archive/2007/12/09/166452.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>怎样才能成为技术高手</title><link>http://www.blogjava.net/canonical/archive/2007/12/08/166190.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Fri, 07 Dec 2007 19:14:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/12/08/166190.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/166190.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/12/08/166190.html#Feedback</comments><slash:comments>20</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/166190.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/166190.html</trackback:ping><description><![CDATA[有一位网友,今年大二,询问我怎样才能成为技术高手. 我并不确定如何定义所谓的技术高手, 但是既然问到我, 便列举一下可能相关的事实.<br />
<br />
首先请明确以下事实：<br />
A. 挣钱能力和技术能力相关，但不成正比。<br />
B. 他人的信任与信赖和技术能力无关。<br />
C. 泡妞能力和技术能力可能负相关，请谨慎面对。<br />
<br />
&nbsp;&nbsp; 没有人知道未来是什么样子. 也没有人能够保证自己永远都是技术大潮中的弄潮儿. 如果你只是担心知识的老化, 担心能否长期的保有一份工作. 那么只需要不失去别人的信任，越来越熟练的做好本职工作就可以了。任何工作中当时用到的知识永远都只是很少的部分，只要别人给你机会重新学习，你的人生经验就会是你最宝贵的财富。<br />
<br />
&nbsp;&nbsp; 大二的小孩不要每天尽整些没用的东西。认真学好自己的专业课。做软件开发并不需要什么高深的知识，但是接受知识传承，得到全面教育的时机却是一去不回的。<br />
<br />
&nbsp;&nbsp; 不要怕学得多，更不要自以为学得多。我在学校的时候，横扫图书馆的哥们并不少。<br />
<br />
&nbsp;&nbsp;&nbsp; 读了书并不意味着懂得了道理。用自己的语言能否讲述学过的内容？能否用个简图勾勒Unix内核的结构？学过一门语言到底它有什么不同，能否勾勒发展的脉络？你学过的东西并不是你的东西. 你既无法消费它,也无法贩卖它. 在书本以外你是否真的意识到这些知识的存在性? 最重要的问题是, 你创造的东西在哪里？<br />
<br />
&nbsp;&nbsp;&nbsp; 读书开始的时候半知半解是正常的。这就如同张无忌背七伤拳经，总有一天你会懂得，只是需要不时的去回味。数学典籍中经常有这样的说法，本书内容是封闭的，只需要某某领域知识，但是掌握它需要数学成熟性。成熟是需要时间的。<br />
<br />
&nbsp;&nbsp;&nbsp; 读书不是以数量取胜。一个领域中类似的书只要细读一本，完整的读下来，读的时候多方参照，做简短的笔记。读一些原始的文献，读大师的原著。尽量选用英文的经典教材。懂一点学科的历史，知道什么是文化。了解一些学术界的八卦，吹牛的时候多一些谈资。<br />
&nbsp;&nbsp;&nbsp; &nbsp;<br />
&nbsp;&nbsp;&nbsp; 学习任何一个领域都需要深入, 需要掌握大量的相关细节, 因为只有这样才能够不再被细节问题所干扰, 而集中精力于真正的思想核心. &nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp; 拳不离手，曲不离口。连Knuth老兄都在勤奋的敲程序，所以请不要找借口, 先编上十几二十万行代码再说话。编写而不是抄写。<br />
<br />
&nbsp;&nbsp; 天下没有免费的午餐。不付出相应的成本，无法得到相应的回报。学习没有捷径，只有方法。只是方法正确并不能保证你走到终点，毅力，机缘都是不可或缺的。你是否能够1天10小时以上持续地考虑同一个问题，是否能够保持同样的注意力坚持到每本书的最后一页, 是否一年365天对新鲜事物总是保有一份天真的好奇。<br />
<br />
&nbsp;&nbsp; 在工作中除了抽象的思想和具体的技术知识之外，还有大量小的trick. 例如调用equals的时候把常量放在前方if(MY_CONST.equals(myVar)).<br />
&nbsp;一般不可能通过书本学习掌握所有这些技巧，只能在编程的实践中观察总结，更多的时候是要你主动思考，重新去发现这些方法。一个人的工作效率很大程度上是受其工作习惯所制约的，你是否在随时随地的改进自己的工作？<br />
<br />
&nbsp;&nbsp;&nbsp; 怎样才能做技术高手？这个问题我并不知道答案。公司里所需要的也不是技术高手，而是能够解决问题的人。不过如何培养合格的程序员，在公司内部也有两种看法。adun说要给他们指明职业发展的方向，关心他们遇到的困惑。这是P大的浪漫主义情怀。X罗说要给他们可以完成但是不易完成的任务，等待大浪淘沙后的结果。这是T大的现实主义精神。<br />
<br />
&nbsp;&nbsp;&nbsp; 开源是不可阻挡的历史洪流，我们只能改变自己的思维方式，调整自己的行为目标来适应它。<br />
<br />
&nbsp;&nbsp;&nbsp; 面对未来的挑战，Alan Kay有一句名言：The best way to predict the future is to invent it。如果你不知道该怎么创造，那就先从捏造开始练习吧----事物之间总是可以建立关联的。
<img src ="http://www.blogjava.net/canonical/aggbug/166190.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-12-08 03:14 <a href="http://www.blogjava.net/canonical/archive/2007/12/08/166190.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于[认识的悖论]的一些说明</title><link>http://www.blogjava.net/canonical/archive/2007/12/06/165888.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Thu, 06 Dec 2007 13:02:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/12/06/165888.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/165888.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/12/06/165888.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/165888.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/165888.html</trackback:ping><description><![CDATA[关于哲学的问题是很有意思的，因为它是引起最多思想冲突的地方。原本[关于认识的悖论]这篇blog是我在重温维特根斯坦之后反思自己的哲学观念所写下的一些文字。我在具体的推理中是明晰的，但是在哲学思想方面一直是混乱的，所以估计对旁人而言它确实没有什么可读性。不过如果有人感兴趣愿意讨论一下, 我想说明一下我在哲学方面的几个观点：<br />
<br />
1. 哲学于我而言是严密的逻辑论证，还是浪漫的情感诉求？<br />
2. 我不认为认识的终极指向所谓的规律, 因为即使我们掌握了所有的规律（包括规律的规律？），仍然解决不了规律为何存在的问题。<br />
3. 当我们自以为对XX的认识越来越清晰，越来越深入的时候，是否已经偏离了XX？ 偏执的认识可以激发强烈的情感，聚集思维的资源，引导我们穿越未知。但是新的联系怎样从出人意料的地方生长出来？<br />
4. 维特根斯坦晚年创建了分析哲学的日常语言学派。有人说他变成了星宿派，有人说他发现了新大陆。但是无论如何，自然语言作为人类所创造的思维工具，对人们思维的潜在影响是难以估量的。在人造语言中，借助罗素的类型论我们似乎可以回避问题，但是并无法终极解决逻辑系统的循环依赖。波利亚在数学家中曾经做过一个有趣的调查，询问著名的数学家在思考的时候是否会依赖自然语言，回答各异，但很少有人说严格按照公式进行推理。以我个人而言，思考时更多的是某种似曾经历的意象，而很少是严格的逻辑表述。创造的依据是否是事件之间难以言传的微妙联系，抑或是原始的创造力只是源于错误的巧合？<br />
5. 西方哲学从笛卡尔开始，从本体论转向了认识论。但是是否现在我们已经认清了自己的所在？矛盾的产生是事物内在的真实存在的特点，还是因为认识层面的割裂而人为造成？有多少冲突是因为没有发现协调方式而造成？分析和综合之后我们能够达到什么？螺旋式上升的比喻让我感到有些眩晕。<br />
6. 东方的思维方式不是分析法的，也很难说是归纳法的。这种所谓的整体论难道只是披着神秘外衣的巫术？现在学术界流行的是以西方的思维工具来重新诠释一切观念，我的思想中到底受到各方观点何种影响？难道故老相传的东西都只成了被研究的客体，成了手术台上待解剖的木乃伊？<br />
7.从我们的词汇表中抹去那些词语之后我们将无言以对？例如规律两字。<br />
<br />
以上所论的一切都是无价值的，因为其实我只是想问自己一个问题：明天我的灵感在哪里，如何回答。<br />
<img src ="http://www.blogjava.net/canonical/aggbug/165888.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-12-06 21:02 <a href="http://www.blogjava.net/canonical/archive/2007/12/06/165888.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>架构师此在何为</title><link>http://www.blogjava.net/canonical/archive/2007/11/18/161456.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sun, 18 Nov 2007 13:50:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/11/18/161456.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/161456.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/11/18/161456.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/161456.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/161456.html</trackback:ping><description><![CDATA[&nbsp;&nbsp; 由于各个公司的领域，规模，人员配备等差异很大，形形色色的公司中顶着架构师头衔的诸般人等所从事工作的内容以及所承担的责任也是大相径庭。务虚者有之，务实者也有之, 难以一概而论。甚至关于架构一词的具体含义在不同语境下也是很难达成共识的。然而作为架构师，他应该做什么，能够做什么，却是我在自己的职业生涯中需要加以回答的问题。<br />
&nbsp;&nbsp;&nbsp; 软件公司中的工作大致分为销售，技术，财务，打杂这几类。架构师所从事的工作大致上属于技术这一摊，应该是一种高度专业化的技术工作。在我看来，一般所谓架构师的工作主要是负责设计规范整个软件项目/产品/产品线的整体结构，他所摆弄的是各种相关的技术元素。虽然作为公司的技术利益的代表者，架构师会在某种程度上参与到公司的商业活动中（在某些巨型公司中，架构师甚至可以通过标准规范对整个产业结构施加影响），但是他更多的是接收商业需求将其转化为技术约束，而很少是商业目标的制定者。业务架构方面的设计更理想的是由业务专家进行，这个工作多半只需要技术的常识，而不需要对于技术本身的深刻洞察。在另一方面，虽然架构师对于技术实现所需的技术/人力等资源需求会提出自己的估算和建议，但是他一般并不具备相应的手段和责任来具体管理整个实现过程。因此在我看来架构师的管理职责并不是很大。当然，有些架构师会更加接近商业和管理而远离技术，将他们称之为"资深架构师"可能更加合适。在某些大型系统的建设过程中，总体设计人员可以只负责收集各个子系统的技术要求，汇总后制定整体技术规范，所起的作用类似于协调人员，在这种情况下倒是对技术要求较低而对管理素质要求较高了。<br />
&nbsp;&nbsp;&nbsp; 关于架构的一个有趣的事实是，技术架构本身其实很少存在设计问题。大部分问题只在于业务问题如何分解到既定的技术架构上，一般的技术架构也只是现有技术元素的简单组合而已。所谓的架构设计工作并不是在真正的系统全景下进行，它往往是基于已有经验所作的短暂延伸，是对业内其他类似结构的复制变形。我们所面临的大量问题是选型问题，不是创造性问题，而是选择性问题。架构师最富技巧性的工作不是现在确定什么，做出选择，而是确定现在可以不确定什么，可以将哪些选择延迟。<br />
&nbsp;&nbsp;&nbsp; 在一般人看来，架构师对于系统成败必然起着关键性作用，否则他们凭什么属于&#8220;活少钱多&#8221;的那伙人呢。但真实情况是，商业上的成败很少是由技术架构直接决定的。因为技术开放和快速传播等原因造成了技术的趋同性，在技术层面上，大多数公司很难依靠技术形成差异化优势。竞争优势主要来源于业务理解和与用户的接触性，来自于历史形成的业务格局。而在中国这样一个营销制导的商业世界中，架构师的工作更难说是在构造某种与众不同的东西。只有少数大公司依靠把握标准才形成技术的话语权，大部分人不过是在技术的大潮中随波逐流罢了。&#8220;不求有功，但求无过&#8221;应该是架构师基本的工作精神。技术失败最常见的原因除了不够专业以外（在中国，&#8220;专业&#8221;的标准也许是不同的），就是过于自信，试图去创造些新的结构，或者试图全面应用某种不熟悉的技术。架构建设应该是一个逐步改进的过程，不要激进盲动。<br />
&nbsp;&nbsp;&nbsp; 国内的架构师多数是从高级程序员发展而来，在工作期间多半是学习掌握外部知识，以掌握知识的细节程度和广度为优先。因为总是在别人搭好的平台上活动，即使是参与过众多大型系统的建设，对于系统整体结构一般也没有提炼出自己的认识观点。而有些大学设置了专业，宣传培养架构师，但是实际上缺乏系统的实践训练，学生所学到的多半是高举高打的套路，在实战中的表现往往更差。掌握技术细节和自主的整体性思考对于架构师而言都是不可或缺的。<br />
&nbsp;&nbsp;&nbsp; 虽然创新的技术未必是商业中核心的元素，但是真正的创造性仍然是每一个设计师的希冀。作为一名实践者，我们都在某种程度上期望超越所经历的偶然，达到某种普遍的真理，在外部的物质世界中留下自己的精神烙印。在这种意义下，架构师的工作便不是简单的技术背景或者技术理解可以涵盖的了。我相信，在业务层和基础技术设施之间存在着物理性的厚重的通用技术层，其中存在着大量的结构规律等待我们的探索，这也正是Witrix平台一直努力的方向。<br />
<br />
<br />
<img src ="http://www.blogjava.net/canonical/aggbug/161456.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-11-18 21:50 <a href="http://www.blogjava.net/canonical/archive/2007/11/18/161456.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>认识的悖论</title><link>http://www.blogjava.net/canonical/archive/2007/11/04/158132.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sun, 04 Nov 2007 14:33:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/11/04/158132.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/158132.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/11/04/158132.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/158132.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/158132.html</trackback:ping><description><![CDATA[&nbsp;&nbsp; 我们总认为认识的最高境界是认识到事物的本质。但是越明晰的认识意味着越明晰的区分，而区分意味着认识到事物的独特性，割裂了它与普遍事实之间的联系。我们是否会说这一本质和那一本质是本质上不同的？本质最根本的意义在于内在的规律，在于内在的协调而不是和普遍事物的对立。我们对本质的认识是如何成为可能的？现代语言哲学发掘的一个基础事实是我们的语言中涉及到抽象事物的部分存在含混性和自我证明的逻辑循环。在抽象的概念上我们很难达到共识, 而这恰恰是通常我们认为所谓本质所寄居的地方. 语言文字是人类所创造的思维的工具，我们对它们的存在早已习以为常。只有研究词源的时候, 我们才能清楚地意识到人们的思维和世界的现象之间的巨大鸿沟. 通过千百年的文化积淀和不断的自我强化, 我们才形成了共同的民族心理结构, 看到同样的文字的时候才能激发我们类似的情感, 才能引起类似的意向，但是具体的过程仍然是不可言说的. <br />
&nbsp;&nbsp;&nbsp; 辩证法的两端都能够成为我们认识的对象，因此我们会感到矛盾对立的存在. 但是随着我们认识方向的转移, 很多矛盾可能被弱化,被消解. 在本世纪初, 相对论和量子论无论在理智或者情感上都是如此让人难以接受, 但是新一代的学生接受起来已经自然了很多. 现在我们只需要盲目的遵守规则,而不再需要去寻求自我证明的解释. 在现代物理的框架下, 惯性不是物质本身的属性, 它来自物质之外. 万有引力不是物质之间的额外的相互作用,而是时空扭曲后造成的内蕴约束. 但是在局部情况下, 并不妨碍我们建立一个形式系统使得这个属性内在化。在很多时候只有偏执的认识才能引导我们穿越未知. <br />
&nbsp;&nbsp;&nbsp; 中国人的认识论是整体性的，但却不是公理化的.传统上我们说微言大义，总试图从真切的细节处领悟超越的真理. 这是和分析法不同的认识的途径, 但也很难说它是归纳法. 思维中的意象是符号化的, 但是也是具体的，拥有自己的形象，并具有某种潜在的活动性。<br />
<img src ="http://www.blogjava.net/canonical/aggbug/158132.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-11-04 22:33 <a href="http://www.blogjava.net/canonical/archive/2007/11/04/158132.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于读书的闲话</title><link>http://www.blogjava.net/canonical/archive/2007/10/29/156784.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Mon, 29 Oct 2007 13:59:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/10/29/156784.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/156784.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/10/29/156784.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/156784.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/156784.html</trackback:ping><description><![CDATA[&nbsp;&nbsp; 读书在传统意义上是走向精英阶层的一条路径，这种功利目的一直深刻在我们的心中。学校也是按照培养高于平均水平之上的人才而设定的。只是在如今这个人人都是大学生的时代，大学生早已不是什么&#8220;天之骄子&#8221;。缺乏可以用于创造或者交换的技能和资源，知识阶层的相对贬值也在情理之中。依然持有着自己应该高于普通生活水平的错觉，非要在面子上有所交待，负担高于平均水准的车/房，很多时候只是徒增烦恼而已。<br />
&nbsp;&nbsp; 读书是获取知识的主要途径，即使在影音世界空前繁荣的今天，它仍然是不可替代的。不知是学生的问题，老师的问题，抑或是整个教育机制的问题，现在接触到的很多人既没有从学校学习到必要的知识，也没有掌握基本的学习方法。很多人津津乐道的是某某很聪明，没见他用功也取得好成绩，某某很能来事，没干多久就挣了大钱之类的传闻。不劳而获可以是一种希望，却很难成为发生在自己身上的现实。我见过的聪明人很多，但是真正能做出一些自己的东西的人，都具备某种专注的能力，都要在某个方向上做出一般人难以达到的持久的努力，所付出的成本往往是不为人所知的。<br />
&nbsp;&nbsp; 学习没有捷径，但却是有方法的。有效的阅读需要在一定的时间内完成，在最短的时间内获得整体的阶段性的认识。太厚或者太过艰难的书会耗尽我们的耐心。循序渐进，举一反三，温故知新是平凡的真理。读书一定要做笔记, 否则所获得的印像很快就会因为没有物质凭依而消逝. 笔记不是抄书，而是从自己的视角重新整理并组织，一般最多两三页纸而已。不要纠缠在文字细节上, 而要努力把握其中的一种图景. 物理中非常强调物理图象的重要, 这些图象未必是仿真的, 未必是要把事实世界中的事情复原，它们更多的是符号性的, 所指向的是一种感觉。有些人总是纠缠在什么是OOA, 什么是OOD这样的概念区分上，但是多数时候这些区分都是毫无意义的。我们需要脱离纸面上的图形和文字，想象它们的真实，这绝不是UML那种已经定义了的符号, 而是与世界上更多事物可以发生共鸣的某种形式. 我们所需要的是利剑迎面击来的那一刹那间对它最直接的感受. 思考问题的时候是现在这种感觉和曾经想过或者曾经看过的其他问题的相似, 而不涉及到任何文字上严谨的表述. 很多书上都列出很多条规则, 但是谁能保证这些规则是完备的, 如何才能从唯一的规则实现逐步的分化, 将它们演变出来. 能不能采用自己的语言复述, 能不能找出一个特定的视角重建这些概念的关联. 当把信息抽离到少数符号的时候, 通过空间形象思维我们有可能把握这一点. 空间优于时间, 实际上对于时间的感受我们是通过空间运动来定义的. <br />
&nbsp;&nbsp; 现在的世界与百年之前已经是有着本质的区别，知识成为公开市场上兜售甚至免费公开的东西。在前所未有的开放中，人人都具有了创造的可能，所谓的创意早已成为我们惯常的生活，以至于一阶变化已经无法称其为真正的创造了。但另一方面，真正的思想仍然具有本质的稀缺性。原创的思想往往来自于少数人，其他人往往是在某一方向上进行衍生。现在很多人已经习惯了快餐式的文化消费，却不知更应该去阅读大师的原著而不是经过别人蒸馏后的转述。原创的思想在文字中跃动，它所关注的不仅是眼前的事实，而是整个世界和当前事实之间的关联，试图为它寻求到真正存在的价值。<br />
&nbsp;&nbsp; 读书是一件有趣的事情，但是将一切都归结于某种感官的快乐，无疑是一种过分浅薄的观念。读书之乐趣未必是真的愉悦的感受。<br />
读书不能使你更加富有,也不一定能带给你安宁, 不一定对你的工作生活有什么帮助. 它只是Kill Time的一种方式而已. 只是相对于电视影像的强制倾销, 游戏竞技的自我沉迷, 它比较适中的维持了一定的自主性和外部性的平衡. 我常说, 读书只是使你明白自己生活在怎样的一个时代, 自己不是一个蒙昧的原始人. 不清楚相对论, 不知道量子力学, 不了解基因技术, 只是很遗憾的在二十一世纪走过. <br />
&nbsp; 读书也是读书人在社会上得以自持的一种方式，因为毕竟我们还可以说：拽什么拽，没文化，不稀的理你。<br />
<br />
<img src ="http://www.blogjava.net/canonical/aggbug/156784.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-10-29 21:59 <a href="http://www.blogjava.net/canonical/archive/2007/10/29/156784.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于物理</title><link>http://www.blogjava.net/canonical/archive/2007/10/07/150918.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sun, 07 Oct 2007 13:38:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2007/10/07/150918.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/150918.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2007/10/07/150918.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/150918.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/150918.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 虽然现代物理的标准表述采纳了严密的数学语言，物理学和数学的精神还是有着深刻区别的。数学的目标在于在既定的范围内把有限规则的推理推进到极致。物理学格物以致知，我们所了解到的永远只是这个世界变化的部分。当一种物理机制位于我们的视野之外时，物理学将选择直接无视它。因此物理学对数学是按需使用的，是有限理性的，总要受到所谓物理直观的制约。再完美的物理模型也不过是在不完全信息下建立的一种完备的数学模型。当我们沿着一条推理的链条越走越远的时候，一种本能的怀疑便会油然而生。<br />
<img src ="http://www.blogjava.net/canonical/aggbug/150918.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2007-10-07 21:38 <a href="http://www.blogjava.net/canonical/archive/2007/10/07/150918.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>客户引导</title><link>http://www.blogjava.net/canonical/archive/2006/06/10/51887.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Sat, 10 Jun 2006 12:24:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2006/06/10/51887.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/51887.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2006/06/10/51887.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/51887.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/51887.html</trackback:ping><description><![CDATA[
		<h4>  在国内做项目，客户需求控制总是个令人头痛的问题。很多时候问题在于用户并不知道确定自己需要什么，他只是就着目前系统的状况提出一些他可以设想到的情形, 但最终他可能并不真的使用这些功能，或者他的想法会发生其他的变化。所以如何引导客户走到我们所谓的"正确"方向上来是一个非常重要而复杂的问题。<br />  昨天一个同事就此事做了个有趣的比喻。客户的需求是吃饱饭，你给他一个馒头，他和你争论馒头是大点好还是小点好。但是如果你给客户一个包子，情况就完全不同了，客户关注的重点肯定是包子是什么馅，猪肉三鲜还是韭菜鸡蛋。。。很多人还有忌口的。从此没完没了。</h4>
<img src ="http://www.blogjava.net/canonical/aggbug/51887.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2006-06-10 20:24 <a href="http://www.blogjava.net/canonical/archive/2006/06/10/51887.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]是否？细节决定成败</title><link>http://www.blogjava.net/canonical/archive/2006/01/23/29056.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Mon, 23 Jan 2006 15:05:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2006/01/23/29056.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/29056.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2006/01/23/29056.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/29056.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/29056.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 最近听到不少人总是叨念着"细节决定成败"这句话，颇像是每天清晨必修的那句"all money go my home"一样。决定成败的因素很多，为什么细节能够成为压倒一切的关键。<br>
&nbsp;&nbsp;&nbsp;
拿产品来说吧，产品的细节处很重要，可能客户的取舍在毫厘之间。但这是否是事实之全部。其实客户需要的是满足自己的价值目标，他真的那么在意主要目标之外
的细节（甚至是刻意造作的细节）吗。制造细节的目的只是为了制造与同类产品的不同，这是市场进入完全竞争状况的标志。只是有意思的是，凡是中国人涌入的领
域，很快就能造成完全竞争的局面。就像我们小区里的煎饼摊，今天刚开张，明天周围马上冒出两家一样的，你两元一份，我两元一份加一个鸡蛋，他两元一份加一
个鸡蛋再送一碗豆浆。很快，经过一场血拼，几家都难以维系，最终撤摊了事，于是小区内就再也没煎饼卖了。再过些时日，有人支起一个状元饼的炉子，于是一段
新的血战征程又开始了。最大的利益永远源于创造。当然，创造是需要成本的，现在财大气粗的主多半没有创造的激情，而被创造力冲昏头脑的家伙却多半在社会的
底层挣扎。</p>
<p>&nbsp;&nbsp;&nbsp;
项目的细节处也很重要，也许见了领导少哈一个腰，过节的时候少送了一份礼，就将项目引至黑暗的深渊。为什么世界是如此的不稳定，要受到细节的摆布。在国
内，操作多不规范，因为利益关系，两两联系，因人而异的情况很多，缺乏一种外在的制度性的保障，而个人的好恶却能在现有的体系中不断放大。结果做人优先于
做事。</p>
&nbsp;&nbsp;&nbsp;
对软件程序来说，细节会决定程序的生死，一个不经意的指针异常就能让整个系统崩溃。但程序员也不总是战战兢兢，如履薄冰。一种职业的素养可以消解细节的危
险。当我们养成良好的编程习惯之后，对这样的细节多半就视而不见了。更理想的方法是引入一种封装机制，例如智能指针使得我们再也不用考虑AddRef和
Release的精确配对了。而java引入的则是新的世界，野指针这个细节在新世界中被消灭了，我们也不需要这方面的什么个人素质了。细节处千变万化，
无一定之规。也许我们最需要的不要应对细节的技巧，而是能够屏蔽和规范细节的规则。细节不是我们的目标,
一组统一简明的游戏规则才决定着所有博弈参与者的成败。<img src ="http://www.blogjava.net/canonical/aggbug/29056.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2006-01-23 23:05 <a href="http://www.blogjava.net/canonical/archive/2006/01/23/29056.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]敏捷随想</title><link>http://www.blogjava.net/canonical/archive/2005/12/28/25805.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Wed, 28 Dec 2005 15:15:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2005/12/28/25805.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/25805.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2005/12/28/25805.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/25805.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/25805.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;
敏捷(Agile)开发的灵魂是演化（evolution）,其具体的过程表现为迭代(iteration)，迭代的每一步就是重构
(refactor)，而单元测试(unit test)与持续集成(continuous
integration)模拟了程序生存的环境（约束），是merciless
refactoring的技术保障。从数学上我们知道迭代总有个收敛问题。一些重型方法将变化（无论是正方向还是反方向的）等价于风险，而倾向于消除开发
中的不确定性，其中的迭代是趋于迅速收敛的。敏捷的迭代是开放式的，强调拥抱变化。敏捷编程排斥过度设计，除了过度设计会增加成本之外，另一个原因就是过
度设计会阻碍重构，阻碍变化。敏捷的目标不是僵化的稳定性而是灵活的适应性。当然敏捷迭代本身并不能保证系统持久的适应性，即使是自然界中的迭代和演化，
失败的案例也是比比皆是。大量的生物物种在经历了历史的辉煌之后最终仍然难免被岁月所埋葬。<br>
&nbsp;&nbsp;&nbsp;
在哲学上，一个悖论式说法是有存在于无中，或者说简单才能更复杂。杯子是空的，所以能包容万物。现在什么都没做，将来才能根据需要决定如何去做。所谓鱼与
熊掌不可兼得，一旦做出了选择，可能意味着必须放弃将来进行其他选择的机会。简单的目的不仅仅是为了最快的完成当前的任务，而且要为将来保留变化的可能。
过分强调目的性，我想是违背了演化的本质。高手过招，最忌把招数用老。我们所要做的是尽量推迟决定的时刻，并切实的保证自己随时拥有选择的权利。<br>
&nbsp;&nbsp;&nbsp;
多样性是在演化中生存的关键。但多样性不是后天的。生物学的实验证实，物种的变异并不是环境变化后发生的，而是始终存在着并隐藏着，环境仅仅起了检选和倍
增的作用。适应性的系统总要允许一定的灰色地带，有时do something for nothing.<img src ="http://www.blogjava.net/canonical/aggbug/25805.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2005-12-28 23:15 <a href="http://www.blogjava.net/canonical/archive/2005/12/28/25805.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]守，破，离</title><link>http://www.blogjava.net/canonical/archive/2005/12/12/23562.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Mon, 12 Dec 2005 14:24:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2005/12/12/23562.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/23562.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2005/12/12/23562.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/23562.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/23562.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 守破离(Shu Ha Ri)是日本剑道(Kendo)的哲学。<a href="http://c2.com/cgi/wiki?ShuHaRi">http://c2.com/cgi/wiki?ShuHaRi</a>&nbsp; （日本人很善于推销自己传统的思想，而中国的传统却似乎在盲目自卑和盲目自大两个极端之间徘徊）<br>&nbsp;&nbsp;&nbsp;
守是模仿（Imitate），遵循，是无我的过程。在日本的传统心性中，守的阶段需要完全开放心志，全盘接受导师的教导。此时应该学习唯一的真理，知道唯
一正确的方法，分清对与错。通过长期不辍的练习，将对规则的记忆固化在自己的身体中。初学者看似是自由的，但也是不明智的(unwisely)，我们总是
倾向于采用错误的方式。<br>
&nbsp;&nbsp;&nbsp; beginners are very hard to fight... they don't do
anything you expect them to do. They move freely, and randomly. Only by
returning to very fundamental principles, can one uncover the faults
(unwisdom) in their actions and defeat them. 简言之，就是没有结构。</p>
<p>&nbsp;&nbsp;&nbsp; 破是变(diverge)，是自我意识逐渐增强,心智逐渐收缩的过程。Just 'winning' is not enough, you must win well. 这个阶段我们需要区分出好与坏而不仅仅是两分的对与错。<br>
&nbsp;&nbsp;&nbsp; 离是返朴归真, 是忘我的过程。最终我们得到行为和思想上的自由(freedom)。离看似是随机的，但实际上是混沌的(chaos)。<br>
&nbsp;&nbsp;&nbsp; It's being good irrespective of whether you are right or wrong.看似打破常规，举手投足却都遵循着道(Tao)，这是持续而自由的创造。<br>
&nbsp;&nbsp;&nbsp;
传统上守破离这三个递进的阶段是在导师监护下完成的，导师决定你是否进入下一阶段。而在没有导师的情况下，我们需要增加一个步骤：检验(Test)，即我
们需要缩短每个阶段的时间，对我们的修行成果进行检验，通过迭代循环来自我实现阶段跨越。(<a href="http://www.aikidofaq.com/essays/tin/shuhari.html">http://www.aikidofaq.com/essays/tin/shuhari.html</a> 提到Test, 大概是这篇文章在agile社区流传的原因之一吧，呵呵)。<br>
&nbsp;&nbsp;&nbsp;&nbsp; 我们无法跨越守的阶段。敏捷编程绝不意味着没有design pattern。没有良好的基本功，一切都是空谈。</p>
&nbsp;&nbsp;
破，首先是破除权威。小的时候我们喜欢引用大师，喜欢谈论他们的轶事，现在也是引用，但却经常略带狡黠的歪曲他们的原意。大学以后应该少去阅读大部头的
书，读薄的书，并把书读薄。真正的思想并不是很多，当大量的细节都成为背景知识以后，我们需要进行思考的内容并不是很多。避免重复书中的原话，因为那是别
人的思想。广为涉猎，多做比较。换个角度看一看，或通过类比，尽力建立事物之间的关联，同中求异，异中求同。我以物理学的观点来看待软件，这是我采取的破
的方式。<img src ="http://www.blogjava.net/canonical/aggbug/23562.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2005-12-12 22:24 <a href="http://www.blogjava.net/canonical/archive/2005/12/12/23562.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>人的外化</title><link>http://www.blogjava.net/canonical/archive/2005/11/29/21870.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Tue, 29 Nov 2005 14:22:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2005/11/29/21870.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/21870.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2005/11/29/21870.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/21870.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/21870.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; naked的人现在已经无法在自然界中生存了，
我们需要依赖外在的衣服，房屋等才能维持基本的生存条件。曾几何时，那些曾经属于我们身体的一部分的功能已经逐渐被解离到外部对象中，只有思想似乎还要依
赖个人自身的能力。很多研究正努力把人的思维过程也外化了（思维导图MindMap就是一种很有趣的简易方式)，也许有一天我们会走到离开工具就无法思
考，无法判断的境地<font style="color: rgb(0, 0, 0);" size="2">。</font><br>
<img src ="http://www.blogjava.net/canonical/aggbug/21870.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2005-11-29 22:22 <a href="http://www.blogjava.net/canonical/archive/2005/11/29/21870.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[导入]关于过程控制</title><link>http://www.blogjava.net/canonical/archive/2005/11/22/21012.html</link><dc:creator>canonical</dc:creator><author>canonical</author><pubDate>Tue, 22 Nov 2005 09:58:00 GMT</pubDate><guid>http://www.blogjava.net/canonical/archive/2005/11/22/21012.html</guid><wfw:comment>http://www.blogjava.net/canonical/comments/21012.html</wfw:comment><comments>http://www.blogjava.net/canonical/archive/2005/11/22/21012.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/canonical/comments/commentRss/21012.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/canonical/services/trackbacks/21012.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp; 过程控制的要点是哪些？我从以下几点来考虑这个问题。<br>
&nbsp;第一点是测量，衍生出定义，标识，记录，评判等。测量需要在具有分歧的变化之处进行（与其它过程的交连之处）。<br>
&nbsp;
第二点是预测，预测不准的原因一般是信息不足或者是非线性。确定性系统中可以产生貌似随机的混沌现象。物理学中混沌控制的基本要点是缩短控制间隔，尽量利
用确定性的信息，而且间隔减小之后，多半可以部分恢复线性。此外，控制所需的信息也并不需要是整个动力学过程的全部信息，只需要是某个动力学切面上的信息
即可。</p>
<p>&nbsp;第三点是控制点的选择，控制点分为时点（时机)和位点(对象)。有时需要在系统中制造出某个瓶颈来便于施加控制。</p>
<p>&nbsp;第四点是执行，控制的基本策略分为负反馈和正反馈，这就需要信息的传递（交流）。正反馈策略在非线性系统控制中其实非常重要（饱和）。</p>
<p>&nbsp;第五点是协调（组织），控制的整体结构具有周期结构（节奏），网状结构（交互），层次结构（抽象）等。</p>
<p>&nbsp;第六点是变化，有序的动态结构变化称为演化（持续改进），而演化最重要的是方向，或者说是目标，或者说是价值。</p>
<p>&nbsp;第七点是学习，改进是学习特别是从错误中学习的结果。传统制造业的控制因为流程非常固化，其实并不注重学习。</p>
<p>&nbsp;越来越复杂的系统最终只有一个词能够描述:生态。</p>
<img src ="http://www.blogjava.net/canonical/aggbug/21012.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/canonical/" target="_blank">canonical</a> 2005-11-22 17:58 <a href="http://www.blogjava.net/canonical/archive/2005/11/22/21012.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>