编程很容易是怎样的体验?

神译局是36氪旗下编译团队 , 关注科技、商业、职场、生活等领域 , 重点介绍国外的新技术、新观点、新风向 。
编者按:编程的资源、课程很容易免费获得 , 这是其他学科无法比拟的 。但很容易接触 , 并不意味着学起来就很容易 。编程是创造力和科技的组合 , 而创造力从来不容易获得 。本文来自编译 。
编程很容易是怎样的体验?
文章图片

文章图片

大多数编程的初学者 , 都看到过这样的信息:“编程很容易 , 每个人都可以学会” , 并附带一些威胁性的信息 , 表示编程不应该有守门人 。我在这里要告诉你 , 这不是真的 。编程是很难的 , 编程不是每个人都能做的 , 就目前而言 , 每个人也许都能做 , 但大多数人绝对不应该做 。大多数反驳都不假思索却又空洞、浅薄 , 他们认为编程就不应该有门槛 。但现在 , 我成了守门人 。编程是无障碍的
愚蠢的人说 , 编程很容易 , 每个人都可以做 , 实际上说的是编程领域的可及性 。如果能连上互联网 , 那么获取资源、学习编程就相当容易 。没有其他科学像计算机科学有那么多资源 , 而且大部分都是公开的——计算机科学在互联网上蓬勃发展 , 虽然一些地方有门槛 , 但大部分内容都可以免费获得 , 计算机科学也在这种可及性上茁壮成长 。你可以下载编译器、编辑器、集成开发环境 , 甚至你可以访问文档 , 与人讨论问题等等 。这是一个大社区 , 它的受欢迎和开放程度是人类历史上任何其他科学都无法比拟的 。
确实 , 你不需要知道很多 , 一些东西在你接触编程领域的前30分钟就能了解 。编程的可及性是其他科学无法比拟的 。
但是 , 仅仅因为一个人可以很容易地获得一些东西 , 并不意味着它就很容易 。仅仅因为我可以在煎蛋中加入三种东西 , 并不意味着我就是顶级厨师 。我可以做几道菜 , 但我从未说过烹饪很容易——烹饪是艰苦的工作 , 需要对细节的耐心 , 需要大量的知识和经验 。
编程是创造力和硬科学的奇特结合;没有人说过创造力是“容易的” 。有些事情对有些人来说很容易 , 另外一些事情则不然 。有些编程很容易
毫无疑问:有一些事情是容易的 。有些事情你可以做 , 例如可能只需要花一天时间 , 你就能做一个博客应用程序的骨架 。在学习HTML的前几个小时里 , 人们可以(在指导下)做出一个专业的网页 。在StackOverflow上提出问题并找到解决方案很容易 , 人们还可以很容易地将解决方案复制并粘贴到他们的网页中 。
有一大堆针对初学者的教程——甚至是针对完全零基础的初学者 , 其中的一些就是由初学者创建的 。对于初学者来说 , 编程是一个非常受欢迎的地方 , 初学者走在非常肥沃的土地上 。
然而 , “容易”是因人而异的 。我觉得非常困难的事情 , 别人却可能觉得非常容易 。我觉得很容易的事情 , 别人却感到不知所措 。对一个人来说 , 什么是容易的没有共识 , 但对每个人来说 , 都有容易的事情 , 这取决于他们遵循的学习路径 。大多数编程都很难
事实是这样的:如果一个人开始做任何比简单的网页或简单的demo程序更复杂的事情 , 就会变得很困难 , 而且碎片越多 , 任务就越复杂 , 越令人难以承受 。而这正是每个“编程很容易”的鼓吹者没有说明的情况 。解决编程难题是很难的 。
事实上 , 如果处理得当 , 大多数编程的事情都很难 , 即使是那些可能看起来很简单的事情 。这是因为有复杂的部件 , 你必须把它们放在一起并使它们能正常运作 。而最难的部分是一个人必须从头开始写这些复杂的部分 。事情看起来很容易 , 有5年、10年、20年经验的人做的事情对他们自己来说很容易 , 因为他们以前做过很多次 , 因为他们犯过所有可能的错误 , 或者思考过这些问题 , 并确保他们不会落入这些陷阱中 。