这本书果然充满了离经叛道的言论,作者 Paul Graham 果然”骨骼清奇”

在这篇文章中作者说出了,黑客与画家,等等艺术家的共性,也说出了与科学家的区别。

记得黑客曾经也是我的梦,在我对计算机一无所知的时候,我也想着自己有着一日能成为黑客,那时自己并不知道黑客是什么,只知道,是很优秀的程序设计者,对计算机世界一无所知的人。直到后来入了ACM这个大坑,忘了曾经还有这个梦(:( ), 不过,ACM的标志告诉我,发现问题,解决问题。从此我也以此为学习之道,而不在想着要成为 xx员,xx师了,只是想着要去做些事情。啊~,言归正传

作者将黑客视为计算机另外一端的产物,他认为黑客是一种设计者,像画家一样的艺术家,所谓编程,其实不是一件技术活,而是一件艺术活。计算机在他们手里仅仅是一种表达媒介而已。

黑客通过实践学习编程,这一点在高校教育中几乎不存在,高校中教人编程是给你讲讲语法,然后去做做题目,甚至让学生能够在“纸”上写好了,再去编程,这导致很多学生,害怕去写,害怕出错,其实会想我自己的学习编程的结果,语法无非是和编译器打交道,编译器说你哪错了,你找出来就是一种学习,而真正有意思的是设计,因为对于同一个问题,或者说功能,的程序并没有标准的“解”,也就是可行解是很多的,而决定什么是好的这是一个艺术活。

黑客类比于创作者,另一个学习途径是通过范例。通过看优秀的源码,而我却很少看…可能我还不是一个创作者,仅仅满足于能够用自己的方式优雅的解决某个问题吧,我认为看源码是个很费事的事情。或许这是我应该去改变的,希望我学了软件工程之后能对此有更深的想法。

作者的另一个观点是优秀黑客与普通黑客的区别在于能不能“换位思考”, 也就是能不能将程序写的让用户能清晰的明白,某一方面就是添加好的注释,不过通常我哥人的习惯是很少去看注释,一个问题是英文写的注释太长,另一个原因是更希望通过样例来看懂。或许好的创作者还应该考虑到这个因素,将注释简单化,将设计通用化。

这里作者说的其实就是软件工程的设计,作者说的黑客和软件工程师的区别不就是黑客是创作者,而软件工程师是工人吗?

《黑客与画家》--2黑客与画家相关推荐

  1. 从画家到黑客:成功在于特立独行,不在于随波逐流

    黑客总是容易被蒙上一层神秘色彩,提到黑客,人们的第一反应几乎都是那类穿着帽衫.压低帽檐的书呆子,或是轻易入侵别人电脑的技术狂人.保罗·格雷厄姆所著的<黑客与画家>就是一本为黑客正名的书-- ...

  2. 【黑客浅析】像黑客一样思考

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:由云鼎实验室发表在云+社区 网络安全里经常说的一句话是未知攻焉知防,基本所有的安全人员也是一名黑客,在黑客攻击愈发普遍的今天,如何更好 ...

  3. 跟安全技术大师学习黑客攻防技术 ——《黑客攻防技术宝典:web实战篇》

    跟安全技术大师学习黑客攻防技术 --<黑客攻防技术宝典: web 实战篇> 随着网络技术的快速发展以及网络带宽的不断扩张, Web 应用程序几乎无处不在,渗透到社会的经济.文化.娱乐等各个 ...

  4. HackerOne 发布《2021年黑客报告》:黑客的动力、发展和未来

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 概要 去年,世界已向数字化优先的方向转变,要求安全团队快速调整.同时,不断演进的攻击面和复杂的数字化生态系统为网络安全团队带来新的挑战 ...

  5. 中国黑客档案:识别黑客犯罪的蛛丝马迹

    随着网络信息技术的发展,计算机网络逐渐成为人们生活和工作中不可或缺的组成部分,它改变了人们传统的工作习惯和生活节奏.在人们越来越依赖网络的 今天,伴随着计算机网络的日新月异,计算机网络犯罪也逐渐走进了 ...

  6. 黑客如何赚钱?黑客是怎么赚钱的

    黑客小曲(化名)对网络黑金的泛滥和"黑客"的沉沦颇感失望,近日他向记者谈及他所知道的内幕,揭开了网络地下黑金产业的冰山一角.  "赚黑钱的门道太多"  &quo ...

  7. 你关注黑客,我关注黑客思维!

    "勒索病毒"在全球大范围爆发,让我们对黑客群体产生了极大关注,但这却是人类的后知后觉-- 互联网把实体世界越来越"去中心化",然而互联网本身越来越趋" ...

  8. 黑客入门基础之黑客技术常用术语汇总

    俗话说的好,入乡随俗.既然打算入黑客之家,黑客的行话(即黑客术语,以理解为网络安全术语)还是得懂一些的,客官,继续往下看. 1.黑帽 为非法目的进行黑客攻击的人,通常是为了经济利益.他们进入安全网络以 ...

  9. 黑客专访:天才黑客Gabriel Bergel的黑客人生

    我们有幸能够采访到GabrielBergel(@gbergel),它是目前黑客圈内最具天赋的黑客之一.接下来,让我们一起来了解一下GabrielBergel吧! Gabriel Bergel简介 Ga ...

  10. 为什么黑客用python-为什么黑客都用Python

    python支持功能强大的黑客攻击模块,而且Python提供多种库,用于支持黑客攻击,Python提供了ctypes库, 借助它, 黑客可以访问Windows.OS X.Linux等系统提供 DLL与 ...

最新文章

  1. 脚本命令远程访问计算机,在远程电脑上执行任意命令 (利用 Autohotkey ahk http 服务器)...
  2. 逐鹿东南亚,Lazada增长飞轮再加速
  3. SQL语言之DQL语言学习(八)多表查询/链接查询 SQL92学习
  4. vim 的tabnew带来的惊喜-建立多标签
  5. 计算机网络基础与信息安全,大学计算机基础计算机网络基础与信息安全计算机网络概述教案.doc...
  6. 28、OSPF配置实验之负载均衡
  7. emcy协议_CANopen协议 -
  8. c语言用指针两个字母交换,c语言指针基础之用指针交换两个数(代码实例)
  9. [html] HTML5如何监听video的全屏和退出全屏?
  10. 图像去模糊代码 python_用Keras搭建GAN:图像去模糊中的应用(附代码)
  11. Spring Cloud Gateway (六) 自定义 Global Filter
  12. 实战CSS:模拟登录注册静态实现
  13. MagicKey - 魔兽世界工具(双开工具,类似按键精灵)
  14. 英语句式参考纯享版 - 定语从句
  15. 易到用车服务器修复了提现,易到用车提现最新消息 易到用车跑路了吗?
  16. Nature Biotechnol | 李家洋/余泓团队利用平铺删除策略打破性状连锁,突破水稻产量瓶颈...
  17. Dunnett-t 检验~新复极差法检验
  18. Unity多块屏幕显示设置以及分辨率设置
  19. 我的世界修改服务器头像,我的世界单机模式中怎么使用其他头像 单机模式怎么改头像...
  20. cygwin和mingw的比较

热门文章

  1. iOS开发图片控件(ImageView)绑定代码并显示一张图片
  2. 前端请柬框架_25佳漂亮的结婚邀请 婚礼请柬网站设计
  3. navi定义自定义速查表
  4. kde5与archlinux环境下配置libinput-gestures多手势操作
  5. CATIA软件最新版本的优势
  6. 编码芯片EV1527射频学习
  7. windows平台python3.x调用ffmpeg指南
  8. 过程参数检测及仪表课程设计-第二类标准节流装置设计命题
  9. 如何合成动态海报?手把手教你一键在线合成gif海报
  10. 安全驾驶-重视安全从我做起(一)