想要 24 小时自学编程,那是不可能的,先自学 10000 小时再说!

【网络】Ikuai中如何添加/更换虚拟机(图文) Ikuai 添加虚拟机教程 阅读详情

 

为何每个人都如此匆忙?

走进任意一家书店,你会看到如何在24小时内自学 Java,以及在几天或几小时内教授 C、SQL、Ruby、算法等无穷无尽的书籍变种。亚马逊高级搜索以下关键词[title: teach, yourself, hours, since: 2000,会发现有512本这样的书。在前十名中,有九本是编程书籍(另一本是关于记账的)。类似的结果来自于将 "teach yourself"替换为"learn"或将"hours"替换为"days"。

结论是,要么人们都急于学习编程,要么编程在某种程度上比其他任何东西都更容易学习。Felleisen 等人在他们的“How to Design Programs”一书中对此趋势表示赞同,“糟糕的编程很容易。即使是傻瓜,人们也可以在21天内学会它。”Abtruse Goose 漫画对此也有他们的理解。

                                                      

我们来分析一下诸如24小时自学 C++ 这样的标题意味着什么:

自学:24小时不足以写一些有意义的程序,更不用说从中汲取经验或者教训。这个时间也不足以跟有经验的程序员一起工作并理解处于 C++ 的环境是一种怎样的感受。简单地说,就是因为时间不足,学不到多少东西。因此,这种书只会谈及肤浅的表面,不会带来深刻的理解。正如 Alexander Pope 所说,学点皮毛是件很危险的事情。

C++:24小时内你可能会学到一些 C++ 语法(如果你已经会其它语言的话),但是不能学到如何应用这门语言。简而言之,如果你是一名 Basic 程序员,你可以学会用 C++ 语法以 Basic 风格编写程序,但你不会了解 C++ 为什么好(或坏)。所以这有什么意义呢?Alan Perlis 曾说:“如果一门语言不能引发你对编程的思考,就不值得去学。”一个可能的观点是,你必须学一点 C++(或者更可能是像 JavaScript 或 Processing 的语言),因为你可能需要与现有工具进行交互以完成某项特定的任务。但是这样一来,你学的不是如何编程,而是如何完成任务。

24小时: 很不幸,这是远远不够的,下面我们将详述。

                                     

十年内自学编程

研究员 (Bloom (1985), Bryan & Harter (1899), Hayes (1989), Simmon & Chase (1973)) 已经证实,在包括国际象棋、音乐制作、电报操作、绘画、钢琴表演、游泳、羽毛球、神经心理学以及拓扑研究在内的各种领域中构建专业知识体系需要大约十年的时间。

关键是审慎的实践:不仅仅是一次又一次地重复,而是用一项超出你现有能力的任务来挑战自己,尝试它,分析你在执行它时的表现,并纠正任何错误。然后重复一遍再重复一遍。似乎没有真正的捷径:即使莫扎特4岁时是一位音乐神童,他在开始制作世界级音乐之前还花了13年时间。

在另一时代中,甲壳虫乐队似乎在一系列#1热门歌曲和1964年的 Ed Sullivan 现场秀中亮相。但自1957年以来他们一直在利物浦和 Hamburg 小型俱乐部演唱,虽然他们有早期粉丝,但他们的第一次重大成功,Sgt. Peppers,于1967年发布。

马尔科姆·格拉德维尔推广了这一思想,尽管他更关注10,000个小时而不是10年。

亨利·卡蒂埃-布列松则有其他的标准:“最糟糕的是你前10,000张照片”(他没想到数码相机的出现致使某些人在一周之内就能达成目标)。

“真正的专业知识需要你用一生来了解”,塞缪尔·约翰逊说到,“任何学科的卓越成就依靠毕生劳作,靠金钱买不来。”

乔叟则抱怨道:“生之有崖,学而无涯。”

希波克拉底因这条摘要 "ars longa, vita brevis"而著名,这是引文“Ars longa, vita brevis, occasio praeceps, experimentum periculosum, iudicium difficile”的一部分,在英语中则说 "Life is short, [the] craft long, opportunity fleeting, experiment treacherous, judgment difficult."(译者注:生命短暂,技艺长远,机会易逝,实验诡谲,判断困难的意思,希波克拉底用拉丁文写的)

当然,答案不唯一:假设所有技能(例如:编程,下象棋,玩跳棋还有演奏音乐)都需要完全相同的时间掌握那是不合理的,并非所有人都花费相同时间。像安德斯·爱立信教授所言,“在大多数领域中,才华横溢者也需时间成就不朽伟业。10,000这个数给我们每周仅工作10至20个小时,有些人辩称大天才还需要达到最高水准。”

                                      

所以你想成为一名程序员

这是我在编程方面获得成功的秘诀:

对编程感兴趣,因为它很有趣而完成一些编程工作。确保它能对你保持足够的兴趣,以便你愿意在未来投入十年/10,000小时。

编码。最好的学习方式是边学边做。更具技术性地描述下,“特定领域中个人的最高绩效水平并不是作为增加经验的功能而自动实现的,但即使是经验丰富的个体因刻意努力改进是可以提高绩效水平的。”(p. 366)和“最有效的学习需要一个定义明确的任务,对特定的个体有适当的难度级别、信息反馈,以及重复和纠正错误的机会。” (第20-21页)“实践中的认知:日常生活中的思想,数学和文化”(Cognition in Practice)一书中是对这一观点的一个有趣的引用。

跟其他程序员交谈,或阅读其他人的程序。这比其他任何书籍或课程都管用。

如果对学校有兴趣,你可以读4年大学(或再读几年研究生)。这样你就可以找那些有学历门槛的工作,而且学校可以让你对这个领域有更深的认识。当然,如果你不喜欢学校,那么也可以通过自学或工作来达到相同的效果。无论如何,单单看书肯定是不够的。“单凭计算机课无法让一个人变成一个编程专家,就像单纯研究刷子和颜料无法造就一个画家一样。”《新黑客字典》的作者 Eric Raymond 这样说。我曾经有个员工,虽然只有高中学历,但非常厉害,写了很多很棒的软件,还有自己的新闻组,甚至还靠股票期权买下了自己的夜总会。

跟其他程序员一起做项目。在一些项目里,你可能是最牛的;在另一些项目里,你可能是最弱的。在那些你最牛的项目里,你可以训练你的领导能力,用你的眼界来激发大家。在那些你最弱的项目里,你可以学学那些大牛是怎么做的,也可以学学那些大牛不想做的东西(因为大牛让你替他们做)

接手其他程序员的项目。理解其他人写的程序。看看理解和修复其他人的程序会有多难。这样你就可以想想怎么优化自己的设计,可以让别人接手时简单一些,再简单一些。

至少要学那么六七门编程语言。其中至少要有一门是强调类抽象的(比如 Java 和 C++),一门是强调函数抽象的(比如 Lisp、ML 或 Haskell),一门是支持语法抽象的(比如 Lisp),一门是支持声明式规范的(比如 Prolog 和 C++ 模板),一门是强调并行性的(比如 Clojure 和 Go)。

记住,“计算机科学”中是有一个“计算机”的。你得知道你的计算机执行一条指令需要多久,从内存取一个词需要多久(缓存命中要多久,不命中要多久),从磁盘读连续的字要多久,磁盘寻道要多久。

加入到语言的标准化过程中。大到加入 ANSI C++ 委员会,小到确定你们公司里是用2个空格缩进还是4个空格缩进。通过这些过程,你可以了解其他人对语言里某些东西的喜好,这种喜好到底有多深刻,甚至为什么有这种喜好。

还要有尽快从语言标准化工作中抽身而出的决断力。

想要在程序员生涯内有更高的成就的话,C/C++就是一个既可以强化思维能力,又可以打好编程基础的编程语言,你想要做软件开发,成为核心程序员的话,可以选择学好C/C++。如果感觉自学C/C++编程有困难的话可以湫湫扫下方二维码。这里是编程爱好者的聚集地,欢迎初学和进阶中的小伙伴。希望你也能凭自己的努力,成为下一个优秀的程序员。

 

duilib入门基础一 容器之 BOX、VBOX、HBOX布局及其子控件align排列方式 序 容器 duilib有以下主要布局容器 Box(自由布局容器) VBox(垂直布局容器) HBox(水平布局容器) TabBox(多标签布局容器) TileBox(格子布局容器) ChildBox(子布局容器) ScrollableBox(可滚动容器) 一、Box容器布局 Box容器及其扩展VBox HBox是其中最常用的容器。 相对Box来说,HBox, VBox更好理解些 1.1 VBox HBox VBox下的各个控件垂... 阅读详情

相关推荐

GPU微架构演进分析--从SIMT到Scalar-Vector-Tensor计算的混合配比与调度

GPU架构经历了从专用计算模块到统一可编程处理器的演进。传统GPU面临专用电路配比难题,Nvidia Tesla架构通过引入可编程多线程处理器实现图形与计算的统一。Fermi架构进一步向计算倾斜,随后的架构陆续加入Tensor Core等专用单元。AI时代促成了从图形处理主导向AI计算的转变,形成了Scalar+Vector+Tensor的混合计算范式。SIMT调度重要性降低,CUDA面临新挑战,RISC-V等架构可能带来新机遇。

ChipCamp的博客---https://chipcamp.blog.youkuaiyun.com/ 917

10天算法学习记录

前言:每天大概有8个小时的学习时间,之前看书也看了10天左右,基本的算法都知道一些,但是需要刷题来练习,这里记录我的leetcode刷题之旅。 今天晚上,就练习动态规划: 因为是第一次接触动态规划,真的,就做过背包类型的题,说说今天的收获吧。 通过例题来展示 一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步...

syh666233的博客 922

Colab虚拟环境配置全攻略:从安装到实战应用

本文详细介绍了在Google Colab中配置Python虚拟环境的完整流程与实战技巧。通过安装Anaconda、创建独立环境、解决常见错误及结合深度学习项目应用,帮助用户有效管理依赖、避免冲突,并利用环境持久化策略提升在Colab中的开发效率与项目可复现性。

weixin_29204121的博客 342

数据结构和算法学多久_重新学习数据结构和算法

数据结构和算法学多久 为什么? 我记得在我第一次参加计算机科学算法课程时 伊丽莎白市州立大学(ECSU)认为:“我得到了什么 我自己变成了?!”。 材料令人生畏,而且(大部分时间)我感到 不称职。 除了这些感觉,每个学生还必须 利用学到的算法提出他们编码问题的解决方案 那学期。 这包括记录其Big-O符号,而我们 老师正在对我们的材料和我们说的次数评分 “嗯”(谢谢Rook教授...

编程故事的地方 2411

Altium Designer 超详细入门教程

本文是一份Altium Designer新手入门教程,详细介绍了从软件基础到PCB制版的全流程。主要内容包括:软件界面介绍与工程创建方法;原理图设计中的元件放置、电气连线、标注添加等操作;PCB设计的布局布线、铺铜和DRC检查;Gerber和钻孔文件的导出方法。教程还提供了分类整理的实用快捷键表和新手避坑指南,强调原理图编译和DRC检查的重要性。通过本教程,新手可以快速掌握AD基本操作,完成简单电路板的设计与制版文件导出。

学习中...... 847

智能车图像处理20-进阶篇12--正入十字补线1

这篇文章主要讲述基本的正入十字补线方法。

taiyuezyh的博客 6950

自学编程到底需要多长时间?

最近,很多小伙伴私信问我,自学编程到底需要多长时间? 我想说的是,到底需要多长受很多因素影响,无法用一个确定的时间段来进行评估。 第一、学习目的 首先你应该明确知道,自学编程你的目的在于什么?仅仅为了兴趣,还是想把他变为一技之长,成为自己谋生的技能。 如果仅仅是为了兴趣,你只需要利用空余时间即可;但如果想要作为以后工作的方向,在前期则需要投入大量的时间进行学习编程,在从事相关工作以后...

weixin_45249120的博客 2万+

麒麟服务器操作系统QT系列软件工具手册

对Qt提供的开发工具进行了一系列的优化之后,在日常的修复bug和维护框架的过程中,桌面研发对Qt的基础软件库也进行了部分优化工作,包括qtbase、qtwayland、qtscript、qt4-x11等Qt基础组件,涉及的Qt框架版本主要涉及到5.9和5.12两个版本。qt 的翻译,是由 ts 文件生成 qm 文件然后进行翻译,国产操作系统上qt 的翻译是由单独的qttranslations包中进行维护,其次部分汉化问题也是qt组件维护工作的一部分,qt的翻译机制如图4-7所示。

太极淘的博客 544

自学编程被吓唬,程序员:英语和数学不会,你是在学编框吗

一切都要从Python这门编程语言说起…… 去年教育部考试中心发布了“关于全国计算机等级(NCRE)体系调整”的通知,决定自2018年3月起,在计算机二级考试加入了“Python语言程序员设计”科目; 早些消息,浙江省将信息技术教材编程语言从vb更换为了Python; 北京、山东也确定要把Python编程基础纳入信息技术课程和高考内容体系,就连小学生,也开始接触Python语言了。 编...

Python_1_3的博客 1372

基于STM32设计的ECG+PPG人体参数测量系统(华为云IOT)(217)

该系统的核心是基于STM32F103RCT6微控制器,这是一种高性能、低功耗的嵌入式处理器,适用于各种复杂的控制和数据处理任务。系统利用先进的传感器技术,如光电传感器PulseSensor模块来准确测量人体脉搏血氧饱和度及心率(PPG),同时采用AD8232生物电信号采集模块捕捉并处理人体的心电图信号(ECG),从而全面反映用户的心脏活动状态。

1万+

【Zephyr存储专题】06_存储块设备驱动开发(Nand Flash)

本文介绍了基于Zephyr系统的NAND Flash驱动实现方案,重点阐述了Flash驱动模型的核心架构和关键API设计。

zero的博客 1805

自学编程 10000 小时

为何每个人都如此匆忙? 走进任意一家书店,你会看到 如何在24小时内自学 Java ,以及在几天或几小时内教授 C、SQL、Ruby、算法等无穷无尽的书籍变种。亚马逊高级搜索以下关键词[ title: teach, yourself, hours, since: 2000 ,会发现有512本这样的书。在前十名中,有九本是编程书籍(另一本是关于记账的)。类似的结果来自于将 “teach yours...

大前端 310

YOLOv11低照度增强主干网络PE-YOLO:原理与完整实现教程

编码器部分# 解码器部分self.dec_conv2 = nn.Conv2d(512, 128, 3, padding=1) # 跳跃连接self.dec_conv3 = nn.Conv2d(256, 64, 3, padding=1) # 跳跃连接self.dec_conv4 = nn.Conv2d(128, 32, 3, padding=1) # 跳跃连接# 编码路径# 解码路径(带跳跃连接)

FJN110的博客 728

通过看书自学编程能成功吗?十年时间自学编程,给你一个答案!

Felleisen 等人在他们的书《How to Design Programs》中提到,「糟糕的编程很容易,即便是白痴都可以在 21 天内学会」时,请对这一观点表示赞同。 让我们来分析一下在 24 小时内学会 C++意味着什么: 自学:24 小时内,你将没有时间写几个重要的程序,并从成功和失败中吸取教训。你将没有时间和一个有经验的程序员一起工作,并理解在 C++环境中编程会是什么样子。简而言之,你将没有时间去学习多少东西。所以这本书只能说是肤浅的熟悉,而不是深刻的理解。正如 Alexander P

致力于C语言C++知识分享! 811

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

我的 10 年自学编程之路

作者 | 码农网–小峰翻译 声明 | 本文是 码农网–小峰翻译 原创,已获授权发布,未经原作者允许请勿转载 为什么每个人都这样匆忙? 走进任何一家书店,你都能看到诸如《24小时自学Java》这样的书,可能书名中的 Java 会变成 C、SQL、Ruby、算法等,然后 24 小时会变成 n 天或 n 小时。在亚马逊高级搜索[title: teach, yourself, hou

code小生 972

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

自学编程之思想

为什么每个人都这样匆忙? 走进任何一家书店,你都能看到诸如《24小时自学Java》这样的书,可能书名中的Java会变成C、SQL、Ruby、算法等,然后24小时会变成n天或n小时。在亚马逊高级搜索[title: teach, yourself, hours, since: 2000 ,你会发现有512种这样的书籍。排在前10位的,9个是编程类的书(还有一个是关于财务会计的)。还有多种变化,例

petpig0312的博客 373

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

自学编程,十年磨一剑

黄小非译注:本文作者Peter Norvig目前任职于Google,其职位是研究主管(Director of Research). Peter Norvig是享誉世界的计算机科学家和人工智能专家。他是AAAI 和 ACM 的会员,是业界内经典书籍《Artificial Intelli...

chuangong2592的博客 317

十年自学编程

十年自学编程 彼得·诺维格 为什么大家都这么着急? 走进任何一家书店,你就会知道怎么做24小时自学Java除了提供无休止的变化之外,还提供在几天或几小时内教授C、 SQL、Ruby、算法等。亚马逊高级搜索[标题:自学,自2000年起,小时数找到了512本这样的书。其他十本书中,编程类书籍占上风。类似的结果来自于用“学习”代替“自学”,或者用“天”代替“小时” 结论是,要么人们急于学习编程,要么编程比其他任何东西都容易得多。费莱森等等。在他们的书中对这种趋势表示赞同如何设计程序,当他们说“糟糕的编程很容易。白

wanghanqing_的博客 304

十年自学编程成才(编程小白必看)

文章目录1. 前言2. 十年自学编程成才2.1 为什么每个人都是匆匆忙忙的?2.2 十年时间学习编程(刻意练习)2.3 程序员成功之路3. 扬帆起航 1. 前言   我是herosunly,从985院校硕士毕业,现担任算法研究员一职。优快云博客专家,2020年博客之星TOP。曾获得阿里云天池比赛第一名等Top名次,拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法行业就业。   最近有几个初入编程的同学咨询我如何学好编程。其中和有个同学的对话,让我对新

herosunly的博客 2万+

AI编程|2小时开发 10000 用户量的小程序

希望大家支持一下俺的两个小程序:偶然去水印 和发圈防折神器

m0_53539063的博客 699

编码 10000 个小时后,开发者悟了:“不要急于发布!”

【优快云 编者按】在软件开发的道路上,时间是最好的老师。根据“一万小时定律”,要成为某个领域的专家,通常需要大约一万小时的刻意练习。本文作者身为一名程序员,也经历了一万小时的编程,最终悟出了一个道理:慢即是快,重视架构设计和代码质量,确保每一行代码都经得起时间的考验。作者 | Sotiris Kourouklis 翻译 | 郑丽媛出品 | 优快云(ID:优快云news)我已经做了...

优快云资讯 1018

“自学一门编程语言,我认为需要 10 年”

【优快云 编者按】学习编程真的可以“速成”吗?本文作者认为:想要真正掌握一门编程语言,至少需要 10 年。原文链接:https://norvig.com/21-days.html#bh作者 |Peter Norvig翻译 | 郑丽媛出品 | 优快云(ID:优快云news)我不理解,为什么现在每个人看起来都这么着急?随便走进一家书店,你都能看到“如何在 24 小时内自学 Java”、“教你 ...

优快云资讯 1131

会python_20小时学会Python,可能吗?

美国自学专家乔希•考夫曼在TED上的演讲《关键20小时快速学习任何技能》,我看了多遍,很受启发。比如演讲中说的10000小时定律,我也曾阅读过相关书籍,可惜没有阅读完,因为被10000小时给吓到了。天哪!人生能有多少个10000小时呀,如演讲中所说,真的要实现10000小时需要5年的工作时长。毫无疑问,我们可能很大程度上如考夫曼所说,误解了10000小时,那是要达到专家的级别呀。而我们日常生活中如...

weixin_39819974的博客 170

10000小时定律

《异类》:“人们眼中的天才之所以卓越非凡,并非天资超人一等,而是付出了持续不断的努力。只要经过1万小时的锤炼,任何人都能从平凡变成超凡。”上天是公平的,每个人每天都有24个小时,8个小时工作,8个小时睡觉,剩下的8个小时是你的自由时间,你可能需要4 个小时用于陪伴家人,个人社交,交通通勤等等,而你每天可以用于检验这个定律的时间大概只有4个小时。那么,你成为一个领域的专家需要大概7年的时间。然而,...

weixin_44172730的博客 247
上一篇: 学编程的日子里,很多人因迷茫放弃了编程,那我们应该怎么做呢?
下一篇: 全球最厉害的 14 位程序员,你知道几位呢?最厉害的研究出了它!
CodingPs
博客等级 码龄7年 182粉丝 253原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值