Jeffrey Zhao's profileJeffrey's Own BoxPhotosBlogListsMore Tools Help

Blog


    March 21

    Atlas Researching

    It seems the Atals framework is not so hard to learn, extend and use. Based on the prototype mechanism of javascript, it's not so difficult to write a OOP program in javascript and I'm working on my own framework for binding UI with object to make a good UI easily, just like programming in high-level language's UI library. Perhaps it'll become a simple framework which is similar with JDK's UI part. The reason I write it is to prepre for building my own site based on javascript and give a great convenience to extend, like Micorsoft Gadget. Oh I am writing a small piece of it, too. O God, too much work! Well, never mind...they're my interested part at least.
    January 21

    Hunting

    1. Technology. Technology is the foundation of my work. Work is my foundation of my life.
    2. Plan. It won't enough for planning more. Examine my conscience, I haven't found a long term career plan to let me fill with satisfied.
    3. Experience. Someone told me I'm too strict with myself at this time, as a junior student. In my opinion, Ability = Experience * (Techonolgy)^0.5. Improving one's technology is much easier than experience.
    4. Pressure Handling. There're lot of pressures in my work and daily life. For now, I still feels a little exhausted  when pressure appears. Perhaps I need more progress until I can handle it without worry. 
    5. Communication Tech.
    6. Some kind of spirit.
    7. Management Tech.
    January 01

    阅读 - 2006年

    相关链接:2005年及以前

    书籍评分:
    阅读这样的书完全是在浪费精力。
    闲极无聊时可以用来消磨时间。
    部分内容值得一读,有一定收获。
    有较大收获,推荐阅读。
    如果你对这个领域感兴趣,强烈推荐,不可不读。

     
    Joel Spolsky
    Joel on Software
     95%
    打分:
    无责任书评:
     

     
      
    Steve McConnell
    Code Complete, 2nd Edition
     7%
    打分:
    无责任书评:
     

     
       
    Dino Esposito
    Introducing Microsoft ASP.NET 2.0
     95%
    打分:
    无责任书评:
      Dino Esposito是个著名的作家,他写的书我很喜欢。
      正如书名,这本书是一个Introduction,适合的是有相当ASP.NET 1.x基础的程序员,展示了ASP.NET 2.0的高级特性和之间的对比。部分内容有一定深度,个人认为,这是从仅仅为了“应用”的角度来看得出的结论。但是如果要更高效率地实现,就必须得了解了。但是这部分叙述不是很详细,因此比较难懂,需要好好琢磨。
      总的来说这本书是好书,值得一读,我是从MS Library借阅的。特别是这本书是比较早的ASP.NET 2.0的书,不过也因为如此,其所用的FCL和正式版也有一定差别。
      最后要说的是,书中部分内容有误,当时看得我云里雾里,查MSDN后终于确定了书中的内容是错误的,呵呵。
     

     
       
    Professional ASP.NET Web Services
     11%
    打分:
    无责任书评:
     

     
    Ryan Asleson, Nathaniel T.Schutta
    Foundations of Ajax
     85%
    打分:
    无责任书评:
     

     
    Effective C#: 50 Specific Ways to Improve Your C#
     90%
    打分:
    无责任书评:
     

     
      
    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
    Design Patterns: Elements of Reusable Object-Oriented Software
     90%
    打分:
    无责任书评:
     

     
    Microsoft Patterns & Practices
    Designing Data Tier Components and Passing Data Through Tiers
     95%
    打分:
    无责任书评:
     

     
    Microsoft Patterns & Practices
    Exception Management in .NET
     85%
    打分:
    无责任书评:
     

     
       
    Microsoft Patterns & Practices
    Application Architecture for .NET: Designing Application and Services
     60%
    打分:
    无责任书评: 
     

     
    Microsoft Patterns & Practices
    .NET Data Access Architecture Guide
     90%
    打分:
    无责任书评: 
     

     
    Microsoft Patterns & Practices
    Designing Application-Managed Authorization
     15%
    打分:
    无责任书评: 
     

     
      
    Steven Holzner
    Inside XSLT
     75%
    打分:
    无责任书评:
     
     

     
    Microsoft Patterns & Practices
    .NET Data Access Architecture Guide
     90%
    打分:
    无责任书评: 
     

     
    Microsoft Patterns & Practices
    Enterprise Solution Patterns Using Microsoft.NET
     68%
    打分:
    无责任书评: 
     

     
    Laurence Moroney
    Foundations of Atlas: Rapid Ajax Development with ASP.NET 2.0
     95%
    打分:
    无责任书评: 
     
     
     
     
     
     
     
     
     
     
     
    October 19

    欲求不满

      不很满意目前的状况,事业上的。
     
      不过说起来,我似乎从来没有满过,虽然似乎在别人看来还是不错的。随着自己各方面的提高,目标也越来越高。这是一直以来的状况。
     
      总得来说对于目标实现地还不错,但是就是不满足。
     
      我希望有更大的进展,我欲求不满。
     
      当然其他方面也不能疏忽。
     
    P.S.
    太多东西要学了,F**K
    October 13

    仔细想了一些事情

      又到了应该想想自己的时候了。
     
      一年四次,每季度初一次。用来确定一些和自己发展走向有一定关系的内容,也就会决定了我以后努力的方向和趋势。每次还要根据自己过去三个月的表现进行评价,并给自己下个季度做一个计划。
     
      不过有些事情不太方便在这里说了,前三个月总的来说并不是让我非常满意。似乎唯一值得一提的是加入了MSN CDC(先改名为MSN Technologies China)。对于自己的“成长”有些失望,没有利用好实习带来的对于业界理解的提高,可能也是由于期望太高的缘故。
     
      因此后三个月来看,更倾向于埋头对于自己能力的提高,而且要扎实,也要迅速。各方面。
     
      首先对于自己的不足和差距进行了一番思考。差距是通过比较得出的,我把自己和周围的人进行了一番对比,从各个方面:能力,技术,意识。也想通过这个来思考一下别人。
     
      思考的结果还是不方便透露,不过总的来说,自己和别人的差距还是蛮明显的。不过也发现了能力不行技术不行意识不行总是什么都不行的人,不过还是一个蛮挑衅的人,蛮会混。现在想想,不禁有种想笑的感觉。估计那个人现在要打喷嚏了。
     
      然后给自己定了一个目标,我有时候会突然因为看到了一个小小的希望而雄心勃勃起来,不过有时候这个也可能只是一条小小的裂缝,透出了一丝光线,我需要挖出一条道路出来。目标的实现在一年后,不过要从现在开始努力了。
     
      over。
    October 09

    身边一有闲钱就喜欢买书了……

    算了算最近买了近500元的书啊……不过似乎的确很久没有买了……
     
    Magazines:
    • Science & Vie (first issue)
    • National Geographic, Chinese Edition, July - Sep.
     
    Professional Books:
    • ASP.NET 2.0 Revealed, by Patrick A.Lorenz, Apress
    • Computer Networks, Fourth Edition (Paperback), by Andrew S. Tanenbaum, Pearson (Original Edition)
    • C++/C# Programmer's Guide for Windows 2000, by Ronald D. Reeves, PH PTR
    • Design Patterns C#, by Steven Metsker, Steven John Metsker, Addison Wesley/Pearson
    • Developing International Software, Second Edition, by Dr. International, Microsoft Press
    • Understanding The Linux Kernel, Second Edition, by Daniel P. Bovet, Marco Cesati, O'Reilly
     
    Others:
    • Google成功的七堂课, by 罗耀宗, 电子工业出版社
    • Jack: Straight from the Gut (Hardcover), by Jack Welch, John A. Byrne, Warner Business Book (Original Edition)
    • Winning, by Jack Welch, Suzy Welch, Warner Business Book
    • 他改变了中国, by Robert Lawrence Kuhn, 上海译文出版社
     

    阅读 - 2005年及以前

    相关链接:2006年

    书籍评分:
    阅读这样的书完全是在浪费精力。
    闲极无聊时可以用来消磨时间。
    部分内容值得一读,有一定收获。
    有较大收获,推荐阅读。
    如果你对这个领域感兴趣,强烈推荐,不可不读。

     
    Jeffrey Richter
    Applied Microsoft .Net Programming
     90%
    打分:
    无责任书评:
      这本书绝对是.Net Framework方面的圣经,Jeffrey Richter有条理地详细解释把.Net Framework的内容剖析地令人拍案叫绝。看了这本书,写.Net程序真的可谓得心应手。我见过不少写.Net程序的人,部分人的代码让我不忍卒看,使用.Net没有条理,没有理解.Net的编程方式,只是简单地把.Net当作一门编程语言来用。我不敢说写出漂亮和合理的代码的人都看过这本书,但是我遇到的所有写出乱七八糟代码的人,没有一个读过这本书。
      但是,这本不是一本讲.Net编程的书,它是从底层原理,运行机制方向来剖析.Net Framework的。它能带给你对于.Net Framework的深入理解,但是不会对你的技术水平有太大提高。而且它不适合入门。如果有人需要入门的书籍的话,我推荐《C# Primer》。这本书,只适合需要理解,而不是简单使用,甚至胡乱使用.Net Framework进行开发的人。
      还有一个很显著的特点就是,对于这本书,我并不推荐阅读原版,而是强烈推荐李建忠先生翻译的中文版。这是一本翻译地相当成功的书,而且李建忠先生的译注非常地完善和到位,发现了书中Richter的许多(真的很不少)错误,所有的改正也是在和Richter进行E-mail讨论后的结果,非常有价值。李建忠先生的学术态度让人敬佩,值得学习。
     

     
       
    Dino Esposito
    Applied XML Programming for Microsoft .Net
     10%
    打分:
    无责任书评:
     

     
       
    Marco Bellinaso, Kevin Hoffman
    ASP.NET Website Programming: Problem - Design - Solution, C# Edition
     36%
    打分:
    无责任书评:
     

     
       
    Don Box
    Essential .Net - Volume I: Common Language Runtime
     60%
    打分:
    无责任书评:
     

     
    Andrew Hunt, David Thomas
    Pragmatic Unit Testing (Pragmatic Programmers)
     95%
    打分:
    无责任书评:
     

     
       
    Martin Fowler
    Refactoring - Improving the Design of Existing Code
     91%
    打分:
    无责任书评:
     

     
    Patrick Lorenz, Patrick A. Lorenz, Apress
    ASP.NET 2.0 Revealed
     16%
    打分:
    无责任书评:
      事实上我不知道如何给这本书一个评分。
      这本书出版地很早,也因此,使用的Alpha版本的ASP.Net 2.0和最终的正式版有比较大的差别。它比较简单的覆盖了2.0中比较有特点的地方,但是非常地浅,不够深入,往往只能作为一个preview。但是,基于当时情况和这本书的用途,这又能怎么样呢?
     

     
       
    David Sceppa
    Microsoft ADO.NET (Core Reference)
     0%
    打分:
    无责任书评:
     

     
    Steven John Metsker
    Design Patterns in C#
     95%
    打分:
    无责任书评:
     

     
       
    Professional ASP.NET Web Services
     7%
    打分:
    无责任书评:
     

     
       
    Professional ADO.NET
     90%
    打分:
    无责任书评:

      
       
    Andrew Hunt, David Thomas
    The Pragmatic Programmer: From Journeyman to Master
     26%
    打分:
    无责任书评:
     

     
    李维
    面向对象开发实践之路: Practical Object-Oriented Development
     70%
    打分:
    无责任书评:
      李维老师我一直非常敬佩,但是这本书让我好生失望。
      这本书里最大的诟病就是它的代码命名规则,而且可想而知,贯穿于整本书。可能是因为这本书是以Delphi版为基础的,所以其中代码的命名规则和Delphi非常相似,比如类名以T开头等等。而且依照C#的命名规范,比如TPFMManager也是非常怪异的,应该为PfmManager。一些类似匈牙利命名法的私有变量,或参数,虽然并不是关键,但是也不是被C#所使用的。我对于命名规范非常严格,完全按照官方示例来写,比如Java的javadoc源码,MSDN等。使用的语言越多越需要入乡随俗。
      另外还有内容中,好比第四章的设计到底是否良够也颇令人费解。代码似乎跳进了两个Manager的框框,抽象出的父类的功能和意义似乎也不能很好的让人对这个设计信服(父类最后成为了子类的Composite)。一个显著的特征就是父类定义的方法有对子类没有意义(RegisterProcesser),同时,也有方法只对子类有意义,而父类完全没有作用(GetNextInstance)。这些方法结果是同时留空或这个永远不被子类实用,这样简单的重构不是一个很好的方式。
      不过这本书还是比较适合在别人的指导下学习,语言比较自然,易于理解(似乎有点罗嗦),内容也比较丰富,并不是简单的OO编程书,我猜想,可能它的Delphi版本更加优秀吧,毕竟这是李老师专长。
      另外,书中还有误导性的严重错误,比如书中P242,“由于TCandidate的构造函数声明为internal,因此只有位于相同命名空间中的TCandidateFactory类才能够调用它以建立TCandidate对象”。internal的访问级别是Assembly,.Net中没有namespace级别的修饰字。这应该是C#或是.Net程序员必备的基本概念。
      最后想说的是,这本书的技术层次定位应该在初学者,里面的不少观念还是令人称道的。
      总而言之,这本书并不推荐阅读。
     

      
       
    Christian Thilmany
    .NET Patterns: Architecture, Design, and Process
     13% 
    打分:
    无责任书评:
     

     
       
    Professional ASP.NET Server Controls: Building Custom Controls with C#
     90%  
    打分:
    无责任书评:
      这本书的评价在网上不高,在我做评价之前,先在网络上摘抄两条别人的评价。
    • Advance book but first 7 chapter were good.
    • Confusing more than helpful.
      前7章的内容是使用普通的编辑器编写Server Control,第8章开始讲的是如何对于VS.Net进行支持。第8章开始的确复杂,的确有点Confusing more than helpful。
      但是,从第8章开始才是让我真正获益的地方,我觉得。这本书比较详细地,虽然有点抽象地解释了Custom Attribute和Property Grid的配合使用,数个类数十个方法地使用复杂又巧妙地展现了一个解决方案,一个非常复杂确又完善地解决方案。
      这本书后几章阅读起来的确颇为头疼。不过如果有时间,我觉得我还是会去研究一下这个模式,即使不通过这本书。
     

     

    Dr.Dobb's Journal China No.1-8
     0%  
    打分:
    无责任书评:
     

     
       
    William C. Wake
    Refactoring Wookbook
     7%
    打分:
    无责任书评:
     

     
    Joel Spolsky
    Joel on Software
     85%
    打分:
    无责任书评:
     

     
       
    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
    Design Patterns: Elements of Reusable Object-Oriented Software
     35%
    打分:
    无责任书评:
     
     
     
     
     
     
     
     
    October 03

    从1号晚开始,夜以继日地扛下一本书。

    The Pragmatic Starter Kit中的第二册。
     
    现在决定把准备要看的或即将要看的数目列在space上,并标上进度,不时更新。
     
    但是对于所有的书,我最多只标上95%。因为我不认为我能对于某一本书有100%的掌握,也不太相信有人能够对某本书掌握到100%,不过话说回来,我觉得作者对于这本书掌握程度无限接近于100%。
     
    书应该是常读常新的,即使现在我几乎没有把一本书好好地看过第二遍,一本书被我看完后往往就成为了工具书,需要的时候进行查阅。
     
    我喜欢看书,它带给我用不消逝的满足感。
    September 26

    Desire of Knowleage

    1. Linux Kernel
    2. Digital Component Design
    3. 《Refactoring: Improving the Design of Existing Code》
    4. ASP.Net for Advanced Tech
    5. Web Service
    6. Remoting
    7. Essential of .Net
    8. XML Related
    9. COM+ & ATL? //forget it.
    10. VS 2005 & SQL-Server 2005
    11. Enterprise Pattern / Application Pattern
    12. Platform Invoke "The missing Win32 API"
    13. Advanced javascript tech
    Gosh! Desire of knowledge, improve my konwledge base.
    Learn forever...
    August 31

    [zz]Twelve Rules of Time

     

    Rules of Effective Time Management

    Maximizing the return, be that productivity, happiness, peace, or impact of time can be accomplished if you clearly understand the 12 Rules of Time.

     

    Rule 1 – Have Goals

    Being more efficient with your time is irrelevant if you do not know how you want to spend it. In managing time, it is the compass, not the clock that is more important. Know where you want to go and spend your time on the things that get you there.

     

    Many people spend energy trying to be more efficient without first doing the more important – setting goals. Like being lost driving to a city, it does not help to drive faster if you are not going in the right direction. Figure out what direction to go and go in that direction.

     

    It is from your list of goals that you can determine what is important to you.

     

    Rule 2 – Analyze how you spend your time

    It is always good to know how you spend your time now. This can be done by setting a timer every 15 minutes and writing down what you are doing. It can be done by blocking the day in 15-minute blocks and recording the activity you do.

     

    Once you have your time logs, examine them. How do they compare to your goals? Are you spending time where your priorities really are?

     

    Rule 3 – Have a To Do List

    This sounds too simple but is the basis of all time management systems. The “To Do List” can be electronic, on fancy paper, bound in a notebook or loose-leaf. The key is to have everything you want to do on one list. My To Do List might have a one line item on it such as, write annual report; this refers me to a much larger file or even a file box on that item.

     

    Rule 4 – Prioritize your To Do List

    Once you have the list – determine the important items and mark these items with a high lighter, red pen, or some other way to make them stand out.

     

    Rule 5 – Control Procrastination (to keep delaying something that must be done, often because it is unpleasant or boring)

    There are a number of tricks I use to break any procrastination I might have. I happen to like having a hard copy of my To Do List. I reprint it every few days as things have been added and dropped. It is at these times that I look for items that are high priority but not getting done.

     

    People often say I have great self-control. Some of it is self-control but a lot of it is environment control. I control my environment to eliminate things that I might use to procrastinate; for example, take games off your computer, sell your TV, get rid of the busy work jobs that you use to avoid the important tasks.

     

    One effective habit I have formed that has broken me through more procrastination is "do the worst things first". At the beginning of everyday, I do the one task that is causing me stress and that I am not getting done. Sometimes I just give it fifteen minutes on the theory that I can stand anything for fifteen minutes. Frequently it is this short thrust that breaks me through.

     

    If I still find myself procrastinating, I review my reasons for a goal. I strengthen the reasons why to give myself motivation to complete a task. Some people reward themselves (or punish) for completing a job.

     

    Rule 6 – Organize

    Organization and time management are linked. I find that I get important things done when I have all the tools I need to perform the job.

     

    The opposite of organization – disorganization - generally leads to busy work. If your desk is piled high – every piece of paper says "do me, do me". You might end up doing a lot but never getting to the important work.


    Rule 7 – Delegate

    One way to expand your time is to get others to help you with it. You might say you have no one who works for you. No problem – delegate to a peer, your superior, a supplier, or even a customer. The key in delegation is to look at what someone else can do significantly easier or faster than you.

     

    In some cases you will need to invest upfront to train someone, but frequently the long-term savings are worth the upfront time spent.

     

    Treat delegation like networking.  Who in your network would be best for the job?

     

    After delegation, remember to thank appropriately. You might think people would resent being delegated to, but exactly the opposite is true. People like to be asked; especially if it is something they are good at.


    Rule 8 – Master Efficiency tricks.

    The most powerful trick I have found is "the Power of while". What can you do while you drive? While you walk? While you clean? While you watch TV? I am a huge audiotape advocate and frequently listen to tapes while I am doing something else.

     

    Of course being a techno person, I love all the organization software out there that allows me to keep my contacts, To Do List, and appointments. I also use many of the gadgets like wireless email, cell phones and personal Digital Assistants. Good use of technology can save you time.


    Rule 9 – It is OK to say No

    Saying "No" can be the most powerful time tool you can master. Ask yourself when asked to do something – is it important? Does it help you with your goals? Is this something you would be better at than most other people? Now this does not mean that I always say no. If I say no, I am always polite and tactful and I try to suggest someone else who would do the job well.


    Rule 10 – Focus

    One hundred percent focus and concentration on one task at a time can be very powerful; eliminate distraction, focus on the task. When properly organized and prepared and when your energy and power are high, you can frequently complete a task in twenty percent of the time it would take to do it without high focus.


    Rule 11 – Build your efficiency bank

    High efficiency is not possible if you do not look after yourself; eat right, exercise, sleep well; drink moderately. All the things your mom told you were good for you are good for your efficiency.

     

    I believe that meditation also can be a great way of building your efficiency. It gives you the power to do more during the times you are being "productive."

     

    Rule 12 – Take care of yourself

    It is not possible to be "on" 100% of the time. Taking care of yourself refers to the time you need to spend looking after yourself to allow yourself to be efficient. Have a list of things you like to do. Find out what energizes you and spend time doing them. These things give you the power and energy to be productive when you return to work.

     

    Finally, if you read all this and feel overwhelmed by what you want to accomplish, you need to go back to Rule 1 and add peace (contentment) as one of your goals. Time management is not about adding stress; it is about giving you the time to be what you want to be.