导航:首页 > 程序命令 > 自学程序员有必要吗

自学程序员有必要吗

发布时间:2022-05-13 06:14:43

❶ 自学编程=做无用功

作者 | PRESSone

来源 | 怀左同学

先给你讲个故事,看看你有没有类似的经历。有一天,你去参加同学聚会,和老友们举杯畅谈,他们告诉你,不学编程就要 out 了,从全球趋势来看,编程这把火已经烧了很多年。英国早从 2014 年 9 月起,就规定 5-16 岁的学生都必须学习编程,苹果 CEO 库克表示全世界各地都应该开设编程课程。回到家中,你辗转反侧,觉得自己跟不上时代潮流,扼腕叹息:“廉颇老矣,尚能饭否?”焦虑之余,你开始疯狂搜索编程,网络、知乎、搜狗,你方唱罢我登场。一顿操作之后,你的嘴里念念有词:“Wow,会编程的人好酷,牛逼,都是大神。”感叹之余,你觉得不能纸上谈兵,临渊羡鱼,不如退而织网。

于是乎,你开始了自学编程之路。

听人说,算法是编程的核心,学好算法可以一招鲜,吃遍天。别人说在嘴里,你听在心里,马上买了一本《算法导论》,打算死磕算法。你没日没夜的攻读,‘算法基础’那一小章,你鼓捣了大半个月,还是云里来雾里去的。然而,心高气傲的你是不会屈服于‘算法基础’这只拦路虎的,你开始逛各种论坛,CSDN、博客园、简书、知乎都在你的常逛 list 上。你充分利用一切碎片时间,上地铁刷一下,吃饭时刷一下,睡前刷一下,刷得不亦乐乎,刷不完的果断收藏。

等到收藏超过100篇未读的时候,你终于发现收藏=永不再读,这让你沮丧。

更让你沮丧的是,你买的那本《算法导论》已经在书架上躺了好久。为了弄懂‘算法基础’,你把《算法导论》打入了冷宫。比这更残酷的是,从你信誓旦旦说要学编程以来,你连一行代码都没敲过,一个程序都没跑起来。你越来越焦虑,终于有一天,你彻底崩溃了,自怨自艾道:“老子骨子里就是个文科生,赶什么时髦?学什么编程?学来学去老是做无用功有意思吗?安安静静地写文章不好吗?”写文章的人不一定学不了编程,作家王小波就是中国早期程序员,曾经自己编了一套DOS下的独立输入法。真正阻止你学编程的也不是深奥的算法,而是你错误的学习方法。自学编程不等于做无用功,盲目、焦虑地自学才是。读到这里,你肯定满脸疑惑:“我到底哪里做错了?”

首先,自学的初衷不是焦虑、盲目,而是解决问题。

李小龙当年刚回香港,在《欢乐今宵》上节目,节目组请来了一名拳师,想考验他能不能推到对方。拳师也摆好架子等他来推,结果李小龙一拳打在对方脸上。李小龙想表达的是:在真实的实战中,没有人会等你摆好架势,只冲着你规定的地方打过来。学习也是同样的道理。在真实生活中,环境和知识都一直在动态变化中,你不可能像学校里一样,系统的学好、学完一门知识,然后坐在教室等着不超纲的考试。

大部分时间,生活会先给你一个考试,然后你根据问题,自己找出关键词,开始学习。所以,学习的起点不是某人在酒桌上蜻蜓点水的一句话,也不是某人在朋友圈晒的一本书、推荐的一篇微信文章、更不是这个行业的一个经典教材引发你的焦虑,而应该是你真实遇到的一个问题。遇到问题,动手写,犯错、改正,再犯错、再改正,这是学编程最重要的过程。其次,自学尤其是自学编程往往不是线性的。

我们从小到大在学校学习,都有一本教科书,往往按着预习、听讲、练习、复习的路径学习,所有的教材也如出一辙:每个章节所涉及的知识点之间,全都是线性关联,第一章学好了,才有基础学第二章。而社会的知识结构不仅不是这样的,而且几乎全都不是这样的。

工作中、生活里充满了各式各样的“提前引用”,即想要理解当前的知识点,需要依赖你未来才能理解的某个或某些知识点。如果还是按照校园时代的线性思维来学习的话,很有可能就像故事中的主人公一样,最终学不下去。拿编程来说,动不动啃《算法导论》的人,要不是有很深厚的数学基础,肯定吃不消。

生活很少教我们按部就班,它给我们的测试往往是超纲的,这就要求我们不断更新和迭代。互联网的发展给我们带来的最大启发就是迭代,从门户到搜索,从搜索到移动互联,从简单的网页交互,到如今热闹的小视频社交,技术和生态一直在更新和迭代。

同样,自学也是一个不断更新和迭代的过程。编程是一门活到老、学到老的手艺,有些很抽象的概念,一开始看不懂没关系,先脑子里有个大概的印象,然后依葫芦画瓢写几段代码,自己动手实践,写完之后再总结、归纳、整理、组织相关的知识点,实战经验多了,再回头来看最初的难点,你自然能够豁然开朗。

比如说 python 中的 return,很多初学 python 的人,对 return 疑惑不已,字面上是返回,那它到底返回什么,又返回到哪里呢?有人可能会给你解释:“return 语句就是将结果返回到调用的地方,并把程序控制权一起返回。”对于初学者来说,这个解释也不好理解。

没事,先实践起来。

拿下面这四行代码来说,你可以想象你开了一家工厂,雇佣工人来干活,这个工人(worker)在你的指导下,用a、b、 c 三个材料,装配出了 x 和 y 两个成品。但是程序里的装配和工厂不同,用过的材料不会消失。这样,这个工人手里就有了a、b、c、x、y五样物品。他怎么知道你要的是哪个呢?

所以 return 的作用就是,在这种时候告诉工人你到底想要什么东西,是一个iPhone 手机壳还是整台 iPhone。毫无疑问,return x 和 return y 是完全不一样的结果。return x 是当你让这个工人帮你干活时(调用函数),他最后会把产成品x交到你手上,而当你输入return y 的时候,干活的工人会把产成品 y 给你。

举个例子,worker(1,2,3),return x 的结果为1+2=3,return y 的结果为(1+2)*3=9。这样实践一下,你对于return是不是有了更深的理解?def worker(a, b, c): x = a + b y = x * c return y看完我的分析,蓦然回首,你是不是觉得道路明朗了许多,你肯定很想问:怎样自学才高效呢?在自学过程中,有个方法特别管用,就是用输出倒逼输入,你逛论坛、刷文章、看视频教程都没问题,关键是要有输出,光有输入可是不行的。而最好的输出就是实践,把自己听到的、看到的、读到的,转化为你独立编写的一个个程序,岂不妙哉?

文章开头故事里的主人公就陷入了盲目输入,却无输出的泥潭。他的输入表面上看上去渠道很多元化,然而这些输入并没有带来有效的输出。还有一个很多人都不知道的点,你的输入很有可能是制约你进步的紧箍咒。

输入也是有讲究的,盲目输入会带来信息超载。全世界每天有 4000 本书出版,超过 4 亿个字;纽约时报一天的文字量等于牛顿同时代的人一生的阅读量;一个专业领域,每天大概有有近4000篇文章正在产生。就算你火力全开,疯狂地输入相关知识,也还是难免有漏网之鱼。

而且,在茫茫的信息汪洋中,信息质量参差不齐,保不准你输入的就是一些边角料,反而让你裹足不前。这儿分享桥水(全球着名对冲基金)创始人瑞.达利欧在《原则》一书中阐述的观点:“正确的决策很多时候需要依赖可信度加权。”学习同样也需要可信度加权,不是所有的资料都全盘接收,而是有选择的相信,用老祖宗的话来说,要取其精华,弃其糟粕。信息爆炸时代,最重要的不是增加信息,而是筛选和删除信息。除此之外,要勇于跳出舒适区,刻意练习。

刻意练习这个概念由美国心理学家安德烈.艾莉克森博士提出,即有目的的学习,指的是把要学习的内容分成有针对性的小块,对每个小块进行重复练习。在武术训练中,非常强调分解练习。

首先你要把整套动作过一遍,看教练是怎么做的。然后把它分解为多个动作,每个动作分解为多个步骤,一个一个地练习。在这种训练中,动作一定要慢,只有慢下来才能感知动作的内部结构,注意到自己的错误。画家要采风、棋手要打谱、律师要学习案例、政客要读历史、科学家要看论文、马拉松运动员每周至少要累计150公里的跑量。

大部分的学习都不是一蹴而就的,往往是练习-反馈-练习-反馈-练习-反馈-学成。刻意练习的关键是随时获得有效的反馈。拿自学编程来说,这是一个很容易获得反馈的领域,当你写的程序跑不起来时,意味着你要 debug,你得把你写的代码分成一小段一小段,逐句检查,直到找出 bug。当然,鼓吹刻苦的鸡汤想必大家都喝腻了。事实是,很多人即使整天坐在书桌前埋头苦学,时长达到甚至远超学霸,实际效果却远远达不到学霸的水平。问题的关键在于你的思维和学习方法,在于你的学习时间是否得到了高效利用,是否能通过高效学习把知识转化为你真正的实力。

只是如果你注意力涣散,身在书桌前,神游天地间;如果你好不容易学完了,转眼又忘得一干二净;如果你写了很多代码却不会举一反三,同一个知识点换了个问法又被难住了;如果你对于你所学习的领域缺乏好奇心和探索精神,只是当一天和尚,敲一天钟,没有刻意练习。那么,花费再多的时间,又有什么成效呢?

扪心自问一下,你上一次坐下来长时间专注于学习,是什么时候呢?

似乎这件事变得越来越难以做到,因为我们的生活已经有太多的干扰:必须要点的微博、朋友圈点赞、支付宝蚂蚁森林收能量……诱惑源源不断,切割了我们在学习上的很多可能性。我们接受了太多无效输入,自然也不会产生高效的输出。读到这,你可能又要问我了:“该怎么办才好呢?”比起一味地延长学习时间,更‘刻意’地学习更重要。

学习从来都不是一个阶段的事,更不是一件轻松的事,但是我们可以优化我们的学习路径,比如给自己创造一个干扰项少的学习环境。拿自学编程来说,你需要的就是一台电脑。在学习的时候,你最好离手机远一点,并关掉电脑版微信、QQ和一些乱七八糟的应用。不过,自学之路从来都不是轻松的,这也才显得它的专业性和独特性。愿你学成归来,已然成了一名大神!

❷ 自学编程可以吗,难度大不大啊

现在提到学习,大部分小伙伴会优先考虑自学,相信在座的程序员们,也曾多多少少自学过编程吧,那什么原因导致会优先考虑自学呢?通过调查,得出了以下结论:

在校学生:通过各种渠道了解到IT行业薪资高、前景好,所以选择先了解
工作人员:想转行或想丰富自己的技能

其他:觉得薪资比其他行业要高或纯粹对编程感兴趣

选择自学的原因还有很多,也可以评论区告诉小编你的自学编程原因哦,在这里希望给一些正在自学或想要自学编程的小伙伴一些建议,希望能帮助在座的各位成功避一些坑。

01
盲目追求热门的编程语言

不管是刚入门的还是有一定基础的小伙伴,都避免不了这个问题,认为当下最热门的肯定就是最好的,不流行的说明过时了,就没必要学习了,其实这个观点是×的,给大家看下近几年流行的编程语言,每年都大有不同:

2019年热门编程语言排行榜如下:

2020年热门编程语言排行榜如下:

2021年热门编程语言排行榜如下:

细心的小伙伴会发现,每年的TOP1都不一样,如果按最热门的编程语言学习的话,你学的过来么?所以还是建议大家,精通一门主语言就可以了,如果后期想提升自己的能力,可以选择其他语言进行辅助,毕竟学习这玩意,会的多机会就自然大。

02
·资料不少,就是不看自学最重要的是什么?那肯定是资料啊,不少同学收集了很多视频、资料,所以流行的那句话是啥来着?“收藏了等于学会了”是吧?有的同学甚至都不记得自己收藏过哪些了,在各位的收藏夹里都落灰了,能学会那真是母猪都会上树了!!!
·只看不上手
自学的小伙伴会在各种技术论坛、博客看一些视频或文章,但请大家明知一点,看了不等于会了(旁白:小编也想看了就会),所以要干什么?赶紧敲起来吧!

03 还不会走路,就要学跑步
看标题大概也能猜到,基础还没打牢,就去学习难度系数高的技术,最后没学会,觉得难就索性放弃了。

这里劝告大家,精进的前提,是基础已经掌握得差不多了,养成一定的学习思维后,再精进就没那么困难了。

04 学习方法有问题
现在发展速度越来越快,说“不学习就会被淘汰”也不是吓人的,很多小伙伴学的不少,等级还是提升的不大,那就证明学习方法存在一定问题。
好记性不如烂笔头,其实我们很多东西是记不住的,只能依靠笨方法:做笔记。在日常学习中将一些重、难点记下来,后期多多去看,一定要避免再次出现这个问题。

❸ 我想自学编程,好学吗

编程难学是因为代码量巨打合格,程序员代码量需要达到1万号,而优秀的程序员代码量通常保守10万行。编程学会了以后发展是非常好的,编程从现在以及随后起,十年前都是一个非常有前景的行业,除非到了市场非常饱和,程序员遍地都是的情况,但目前显然不是。从任何一个公司招聘人员情况上看,互联网行业都算是比较火爆的行业,招录程序猿的不在少数,公司不一般,水平要高很多。抱着真心想了解这个领域的心态去学习,去钻研,才有可能走下去,时时反省,检查,将知识体系化。保持好心态,不要过分注重结果,学习是一个长期的过程,不要过分注重眼前的收益效果。

❹ 一个27岁没文凭,想去努力自学编程,有机会成为程序员吗

27岁没有文凭,除了自学入门做程序员之外,还有哪些路可以走呢?

我想了一下,可以开店、做自媒体、学一门其他的手艺、做苦力(服务员、建筑工、外卖员、快递员)、滴滴司机等等。但是大家看一下就会发现,这些选项里面,要么天花板非常低,要么做成的难度很大。

但如果深度思考一下,进一步可以发现即使去掉没有学历这个条件,把有文凭加进去,想要有所成就,能够在大城市里立足同样举步维艰。这一点相信也不用我多说,大家了解一下每年的毕业生就业情况就了解了。

这说明了什么呢?

说明了一个很简单大家都知道的道理,想要往上走,突破当前的层次,获得更好的生活,更高的收入,这本身就是一件困难的事情,和有没有文凭其实关系不大。没有文凭做程序员是困难的,有文凭的程序员也海了去了,其中能够进入BAT拿到高收入的又有多少?能够转行管理,年薪百万的呢?又要少得多,能够财富自由的呢?更是凤毛麟角。所以从某种程度上来说,对他来说自学成为程序员至少不是一个差的选项,虽然它并不容易。

追梦的路上总是艰难,我个人的看法是,前路漫漫困难重重,但至少不该裹足不前。虽然未必能够如愿抵达,未必能够得偿所愿,但能进一步是一步,每前进一步总有一步的欣喜,也多少会见到一些新的风景。就像我做公众号,其实我也没有把握一定能够坐拥几十万粉丝,真的成为自媒体大佬,但能写一篇文章,能多坚持一天,总要离目标近一点。这样一点点积累下去,说不定有朝一日蓦然回首的时候,发现已经达成所愿了。

我不知道读者里有多少这样前路迷茫需要鼓舞的人,希望今天这篇文章能够给你们一点鼓励和力量,勇敢地出发,朝着自己梦想的地方前进。你也可以点赞关注我,与我一起前进。

❺ 自学编程到底能不能找到工作

能找到工作。说到培训班我觉得培训班是速成,的确培训班能学到东西,前提是你跟得上培训班的进度,实际情况是大部分人跟不上那个进度 因为大部分人连基础都没有,培训班也有培训班的好处,有老师,便是最大的好处。可以让你少走弯路。

我大学自己学了很多,从单片机到Linux应用等等,都学过,然后大四头脑一热,花了七八千报了网络班,后来才发现,什么用也没用,都是讲的基础知识。

好处:

并不是说培训班就一无是处,他有人带,真的能少走很多弯路。

所以,如果周围有人愿意带你,或者有一定的底子,那么去培训班是没有必要的。而且培训班的费用不少。

并不是对口专业出来的就是科班程序员,有好多大学啥也不会,也是快毕业才去学的,是伪科班。

此外,科班程序员和培训班出来的是有区别的,同样用代码实现一个功能,科班的自己能很快有思路,构造整个功能的框架,可能培训班出来的需要别人指点 ,或者思考很久,同样一个api。

科班的知道在哪些情况下使用它比较好,哪些情况要注意,培训班出来的只知道它能干嘛。毕竟科班的踩过的坑多,培训班是速成。

❻ 自学程序员需要多长时间

自学程序员需要半年的时间。

程序员职业要求:

一般的程序员都有四年的在专业领域的学习,需要一个在程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的。

大约有20%的人在这一领域的计算机科学和工程学拥有更高的学位。还有很小一部分程序员是自学的,尽管一些专业性的学校或者综合大学可以提供,但是也需要一些别的途径来提供相关的人才。尽管学历是比较重要的,但是公司经常把重点放在应聘者的工作经验上,很多刚从大学毕业的大学生虽然有引人注目的学位证书,但是他们找不到工作是因为他们缺乏经验。

(6)自学程序员有必要吗扩展阅读:

程序员岗位职责

1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。

2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。

3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。

4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。

5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。

6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。

7、负责相关技术文档的拟订。

8、负责对业务领域内的技术发展动态进行分析研究。

❼ 一个 27 岁没文凭,想去努力自学编程,有机会成为程序员吗

一个 27 岁没文凭,想去努力自学编程,有机会成为程序员吗?其实还是有机会的,但是会更加辛苦。

程序员是一个很火的职业,但是确实需要一定的技能才能当程序员的,而且程序员的工作也是相当辛苦的。已经27岁了,又没有文凭,想要自学编程,其实本身就是一件困难的事情。编程想要学好,英语数学都不能太差,有了英语和数学的基础之后,编程也不是好学的。不过并不代表27就无法自学编程。然而自学编程之后面临着一个问题,你能学到多精,你的工资待遇就有多好,但是一个没有文凭的人,想要自学编程,又能学到什么程度呢?

一个 27 岁,又没文凭的人,想要自学编程,是有机会成为程序员的,但是成为了程序员,并不代表你就能靠着这一技能赚到很多钱。而且有适合努力是不够的,天赋兴趣这些也都很重要,可以尝试去学习,看看自己是否真的感兴趣能坚持。

❽ 程序员能自学吗

如果有一定的基础,对编程、代码有很强烈的兴趣,并且有较强的自学能力,这样是可以自学的。因为这个专业的实践性和逻辑性特别强,不付出一定的时间和精力是学不好的。如果真的很想当一名程序员,报班培训是一个不错的选择。

(8)自学程序员有必要吗扩展阅读:

程序员职业要求:

一般的程序员都有四年的在专业领域的学习,需要一个在程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的。

大约有20%的人在这一领域的计算机科学和工程学拥有更高的学位。还有很小一部分程序员是自学的,尽管一些专业性的学校或者综合大学可以提供,但是也需要一些别的途径来提供相关的人才。尽管学历是比较重要的,但是公司经常把重点放在应聘者的工作经验上,很多刚从大学毕业的大学生虽然有引人注目的学位证书,但是他们找不到工作是因为他们缺乏经验。一个程序员虽然没有正规的学历,但是如果一个人拥有程序设计的深厚知识背景或者丰富的工作经验的话,那么他的机会要比有学历的应届毕业生大得多。所以要尽量抓住有用的工作和实习机会,这样的话在毕业后你就会发现,多实习让你有更多的经验,在找工作的时候就有更多的机会。

对于职业程序员,另外一个重要的方面就是,程序员需要不断提升自己的业务技术,他的技术必须一直保持在一个较高的水平,并且要不断发展,程序员也要寻找贸易的机会,要参加研讨会,在周刊上发表文章和接受职业教育,这些使程序员在自己的领域中分级或者不断并排前进。

参考资料:

程序员-网络

❾ 想转行做程序员,可以自学吗

如果想要从自己现在的工作转行去另外一个工作的时候,首先你要做一个准备,就是未来你的工作短期内不可能让你拥有很大一部分资金来生活。所以你要做的事先储备3至6个月的生活费,那么你才可以有更多的精力去进行跳槽。

其实我觉得有学习能力是最棒的,你可以接受当下的一种境况,然后去选择更好的来让自己提升工作能力和经济能力,然后自己的生活更加的幸福。

❿ 自学程序员要多久,如何找工作

这要看你自己的自学能力和自制能力,如果自学以及自制能力是非常强的话,差不多一年的时间可以找的到工作吧,最重要的还是要看你自身的情况。不过我但是自学的时候自学了大半年的时间,然后就学不动了,因为太难了。每一个知识点都要自己去攻克也没有人带所以说是非常难的,不过后来我就在蛙课网上进行跟着视频教程学习,而且还有完整的学习路线图,非常不错,如果你想自学的话你可以去蛙课网上看一下。

阅读全文

与自学程序员有必要吗相关的资料

热点内容
php的输出命令 浏览:264
在家怎么制作解压小玩具 浏览:99
javascript源码辅助阅读 浏览:384
pythonui开发工具 浏览:595
adr指标源码 浏览:217
程序员转架构管理 浏览:958
企业服务器为什么不能被拷贝 浏览:119
用c编程实现txt搜索 浏览:854
JAVA小数随机数 浏览:336
app加拿大pc怎么操控的 浏览:698
光影app苹果怎么下载不了 浏览:971
php会员注册代码 浏览:511
csgo如何用128tick服务器 浏览:571
百度网度怎么解压 浏览:946
windowsopencv源码 浏览:946
origin平滑算法 浏览:875
unity程序员简历 浏览:63
单片机ifelse 浏览:696
如何理解php面向对象 浏览:96
macword转pdf 浏览:848