1. 拒绝平庸

    秘密武器

    创业公司要么赢得一切,要么彻底失败。

创业的时候,如果选择了错误的技术,竞争对手就会一举打败你。

选择技术时,不能考虑别人的做法,只能考虑最适合你的。

    软件快速开发

    对于市场来说,快速开发出产品是很重要的。

    选择编程语言

对于应用程序,应该选择更强大、效率也在可接受范围内的编程语言。

选择更强大的编程语言减少编程的工作量,减少所需要的开发人员数量。

2.书呆子的复仇

    选错编程语言的代价

衡量语言能力的最简单方法可能就是:看代码数量。

高级语言能够提供更强大抽象能力的语言,语言的编程能力越强大,写出来的程序就越短小,所需的开发时间越少。

在一个高度竞争的市场中,即使开发速度只相低两三倍,也足以使得你永远处在落后的位置。

    选择编程语言的诀窍

   (1)不同语言的编程能力不一样;

(2)大多数经理故意忽视第一点。

想在软件业获得成功,就使用最强大的语言,用它解决最难的问题,并且等待竞争对手做出自甘平庸的选择。

编程语言的所谓“业界最佳实践”,实际上不会让你变成最佳,只会让你变得很平常。

3. 梦寐以求的编程语言

    编程语言流行的秘诀

(1)专家级黑客的看法;

(2)强有力的广告宣传;

(3)有语言所依附的计算机系统;

(4)需要一个好的实现,而且这个实现必须是免费的;

(5)需要有一本介绍它的书;

(6)应该有在线文档;

    简洁性

    简洁使得语言更抽象。简洁性是静态类型语言的力所不及之处,单个的语法单位也应该很简短。

    可编程性

    编程语言必须能够帮助程序员做到想做的事。

一种真正优秀的编程语言应该既整洁又混乱。

“整洁”的意思是设计得很清楚,内核由数量不多的运算符构成,这些运算符易于理解,每一个都有很完整的独立用途。

“混乱”的意思是它允许黑客以自己的方式使用。

    一次性程序

编程语言必须很适合开发一次性程序。

一次性程序,就是指为了完成某些很简单的临时性任务而在很短时间内写出来的程序。

适合写一次性程序的语言必须很容易安装,有命令行界面,可以实时反馈运行结果。

    函数库

    未来编程语言的进步很大一部分与函数库有关,函数库将像语言内核一样精心设计。

优秀函数库的重要性将超过语言本身。

    时间考验

    程语言要想变得流行,需要经受住时间的考验。

发明新事物的人必须有耐心,要常年累月不断地做市场推广,直到人们开始接受这种发明。

    再设计

    最好的文字来自不停的修改,软件开发也是如此。

为了写出优秀软件,需要有乐观主义和怀疑倾向,对解决难题的可能性保持乐观,同时对当前解法的合理性保持怀疑。

小结

总结一下优秀的编程语言的特点:

(1)干净简练,抽象度高和互动性强;

(2)内核简洁强大,函数库高度独立;

(3)语言细节高度透明;

(4)容易安装,实时反馈运行结果;

(5)有大量优秀的范例可供学习;

(6)以层次的方式构建,较高的抽象层构建在较低的抽象层之上。

《黑客与画家》读书笔记(六)相关推荐

  1. 《互联网信贷风险与大数据》读书笔记(六)

    第一节 巴塞尔新资本协议 1975年9月,巴塞尔委员会出台了第一个巴塞尔协议并在1983年5月进行细化,主要包括两个观点: 任何银行的国外机构都不能逃避监管 母国和东道国应共同承担的职责 旧资本协议在 ...

  2. 《互联网信贷风险与大数据》读书笔记(三)

    第一节 信贷工厂 信贷工厂的起源 起源于淡马锡,信贷工厂模式通过设计标准化产品和流程,实现流水线式的信贷作业过程,并强调全流程的风险管理.发端于中小企业贷款领域,适用于批量化作业的各类信用贷款领域. ...

  3. 《互联网信贷风险与大数据》读书笔记(一)

    工作切入互联网金融这一块已经好几个月了,关于互联网金融信贷这一块也是一个慢慢熟悉的过程,最近翻看<互联网信贷风险与大数据>这本书,把书中感觉有价值的信息记录于此,以备查看. 个人信贷的创新 ...

  4. 《互联网信贷风险与大数据》读书笔记(二)

    2.1 理解风险 2.1.1 什么是风险 收益的不确定性即风险,金融业即经营风险而获利的行业.经济领域的风险:结果对预期或目标的偏离. 一般更关注的风险是可能带来损失的"风险",即 ...

  5. java互联网架构,大数据学习笔记1--------Python入门个人笔记,仅记录个人觉得需要记得东西)

    目录 一.基础概念 二.流程控制 三.列表.字典.元组.集合.字符串 四.函数 五.异常 六.类和对象 七.封装,继承,多态 八.模块和包 九.文件读写 一.基础概念 print输出函数 # 将数据输 ...

  6. 大数据读书笔记(1)

    1. 数据分片与路由 抽象模型为两级映射关系,第一级映射是key-partition映射,第二级映射是partition-machine映射. 数据分片有哈希分片和范围分片: 哈希分片只支持点查询,如 ...

  7. 大数据读书笔记(2)-流式计算

    早期和当前的"流式计算"系统分别称为"连续查询处理类"和"可扩展数据流平台类"计算系统. 流式计算系统的特点: 1)低延迟 2)极佳的系统容 ...

  8. 【大数据入门笔记系列】第六节 分布式计算框架MapReduce的工作流程

    [大数据入门笔记系列]第六节 分布式计算框架MapReduce的工作流程 前言 MapReduce分布式运算 MapReduceApplication MapTask ReduceTask split ...

  9. 大数据开发笔记(六):Flume基础学习

      ✨大数据开发笔记推荐: 大数据开发面试知识点总结_GoAI的博客-CSDN博客_大数据开发面试​本文详细介绍大数据hadoop生态圈各部分知识,包括不限于hdfs.yarn.mapreduce.h ...

  10. 大数据读书汇--获奖名单公布(已完成)

    第六届中国云计算大会(大数据读书汇) 读书汇介绍 第六届中国云计算大会于2014年5月20-23日在北京国家会议中心拉开帷幕.本次大会立足实践,以国际化的视野,帮助与会者了解全球云计算技术的发展趋势: ...

最新文章

  1. 8大趋势已现,未来传感器将彻底改变你的生活!
  2. Android listview 的应用
  3. Online Learning场景下实时新闻热点机器学习训练实践
  4. 【ABAP】ALV可编辑数据更新
  5. 基于Google测试框架实现自己的测试框架
  6. 判断远程图片是否存在,否则替换成默认图片
  7. 快速学习C语言的途径,让你少走弯路!
  8. node.js Promise简单介绍
  9. STM32工作笔记0066---待机唤醒实验-设备低功耗-M3H
  10. 项目遇到OpenSessionInViewFilter的默认sessionFactoryBeanName的问题
  11. 一款网盘软件应该具备哪些功能?
  12. file watchers怎么默认打开_python默认字典defaultdict进阶
  13. spring5.0学习笔记9
  14. 税控盘开票助手Excel导入或ERP导入开票明细接口使用说明(使用手册)
  15. luajit lua文件加密工具
  16. Micro-expression recognition with supervised contrastive learning基于对比监督学习的微表情识别
  17. 如何有效的避免图片侵权(100%避免网站图片侵权)
  18. [视频架构] Docker 全家桶 (上)
  19. YAML详解 是什么
  20. docker pull报错:Timeout exceeded while awaiting headers解决思路

热门文章

  1. 计算机科学引论2021中文,计算机科学引论(2021英文精编版)
  2. centos下安装anaconda、scikit-learn、opencv、pytorch 和torchvision(文件在Windows下载好linux版本,使用xshll传到linux)
  3. python滑块验证码
  4. Android实战:CoolWeather酷欧天气(加强版数据接口)代码详解(上)
  5. js内置对象Date
  6. Phishing钓鱼邮件平台搭建
  7. 巨细!小姐姐告诉你关于 BeautifulSoup 的一切(上)!
  8. ESD静电二极管|静电保护器件
  9. 【Git】如何实现部分提交
  10. 关于linux移植碰到Resetting CPU ...的问题