zoukankan      html  css  js  c++  java
  • 第二周读书笔记——《黑客与画家》

    《黑客与画家》
     

    我想这本书在说的就是 软件工程是需要创造力的。

    这需要探索、创造的精神,也需要热爱和投入。
    “黑客伦理”的一个推论是,黑客不服从管教,具有叛逆精神。
    文艺复兴时期的代表人物阿尔伯蒂有一句名言:“任何一种艺术,不管是否重要,如果你想要在该领域出类拔萃,就必须全身心投入。”
    黑客与画家的共同之处在于他们都是创造者。与作曲家、建筑师、作家一样,黑客和画家都是试图创作出优秀的作品,他们本质上都不是在做研究,虽然在创作过程中,他们可能会发现一些新技术。
    创造优美事物的方式往往不是从头做起,而是在现有成果的基础上做一些小小的调整,或者将已有的观点用比较新的方式组合起来。这种类型的工作很难用研究性论文表述。
    有一事情是可以从画家身上借鉴的,那就是应该如何学习编程。画家学习绘画的方法主要是动手去画,黑客学习编程的方法理应如此。大多数黑客不是通过大学课程学会编程,他们从实践中学习。
    也许对黑客来说,也要像画家一样:定期地重头开始,而不要长年累月地在一个项目上不断工作,并且试图把所有的最新想法都以修订版的形式包括进去。
    创作者另一个学习的途径是通过范例。对画家来说,博物馆就是美术技巧的图书馆。同样地,黑客也可以通过观看优秀的程序学会编程。并且还有一个可以借鉴绘画的地方:一幅画是逐步完成的,通常一开始是一张草图,然后再逐步填入细节。有时,原先的构想看起来是错的,就必须动手修改,对于编程,我们不能期望先有一个完美的规格设计,再动手编程。
    黑客就像画家一暗影,工作起来是有心理周期的,我想这对所有工作都有借鉴意义。为了做出优秀的工作,必须把这种心理周期考虑在内。只有这样,你才能根据不同的事情找出不同的应对方法。
    就像绘画一阿姨那个,大多数软件是为人类用户准备的,所以黑客必须像画家一样,时刻考虑到用户的人性需要,这样才能做出伟大的产品。你必须能够站在用户的角度思考问题,也就是说你必须学会换位思考。
    代码应该写的便于阅读,并不是让你塞进去很多注释,“程序写出来是为了让人看懂它的语法,附带告诉计算机如何执行。”
    设计是很重要的,好设计是简单的设计,是永不过时的设计,是解决主要问题的设计,是启发性设计。
    对于启发性设计,在建筑学和设计学中,这条原则意味着,一幢建筑或一个物品应该允许按照你自己的愿望来使用,


    还有一些比较无关的话:自由自考比畅所欲言更重要。在思想和言论之间划一条明确的界限。人们喜欢讨论的许多问题实际上都是很复杂的,马上说出你的想法对你并没有什么好处。如果自己就是潮水的一部分,怎么能看见潮流的方向呢?你只能永远保持质疑。
    大饼谬论:许多人从小就认定世界上的财富总额是固定不变的。但你如果打算创业,那么不管你是否意识到了,你都是在着手推翻这种大饼谬论。这里令人混淆的地方就是金钱有其抽象含义的一面。金钱不是财富,而只是我们用来转移财富所有权的东西。就像自己修车,相当于创造了财富。
    要致富有两个关键点:可测量性和可放大性。你的职位产生的业绩应该是可测量的,此外你做出的决定能够产生巨大的效应。小团体=可测量性。高科技=可放大性。
    技术是有杠杆效应的,技术对生产效率的提高不是线性的,而可能是多项式形态,技术引起了收入差距的扩大,但似乎能缩小其他差距,如生活水平。
    相互激励比天赋更重要。
     
  • 相关阅读:
    Android中使用HttpURLConnection实现GET POST JSON数据与下载图片
    BZOJ 1293 SCOI2009 生日礼物 堆
    Git小玩
    VM tools安装错误The path "" is not a valid path to the xx generic kernel headers.
    css hover对其包括的元素进行样式设置
    C#高级编程---暂停计划
    如何配置和使用Tomcat访问日志
    关于性能测试应该知道的一些事(转载)
    Linux 平台如何查看某个进程的线程数?
    《让LoadRunner走下神坛》
  • 原文地址:https://www.cnblogs.com/HelenL/p/8604277.html
Copyright © 2011-2022 走看看