小白如何入门编程

更新日期: 2019-12-22阅读: 1.8k标签: 编程

本人于2010年开始从事WEB领域相关开发岗位,先后从事过ASP#net、php、JAVA、前端、项目管理、技术总监等岗位。参与研发重构互联网产品60多项,领导负责项目12例。职业生涯算是中国互联网中生代开发者中比较常规的路线选择:初级工程师>中级工程师>高级工程师>全栈工程师>项目管理>技术团队管理,曾经也的在A/T等厂子工作过,也完成了基础的财富积累。总体来说不算成功,但也是实实在在享受到了互联网和资本带来的红利。

最近受到贸易风波的影响,很多朋友和网友都有向我询问过如何才能转行进入互联网行业发展,而问的最多的就是怎么才能成为一名developer(开发者) 从而进入这个看起来很美好的高薪圈子。所以今天我就把我成长经验和对于要不要成为开发者的看法梳理总结一下,希望能够帮到屏幕前有同样想法和疑惑的朋友。


为什么选择想要成为一名开发工程师?

每一位想要踏入这个行业成为一名开发者的朋友, 一定要问自己这个问题。 为什么想要成为一名开发者?

记得在07 08年的时候,大学最热门的专业是法律、土木、金融、贸易、财会这些方向。选择计算机科学、软件开发、信息工程这些专业的同学算不上是主流。我还记得选专业的时候曾被有一位亲戚关切的阻止过, 理由是: " 玩电脑, 开机关机这些还用去大学学习? 还是跟你表哥一起选土木“ 原话大概就是这样。

现在回想起来当时选择这条道路的原因有3条:

计算机互联网很神秘,有很多未知的领域可以探索,这很酷。让我很好奇。做开发的话应该不需要和别人应酬、喝酒。我讨厌酒局和繁琐的社交可以光明正大的拥有自己的电脑,玩游戏。(这是真的,那时候不像现在上大学人手一个笔记本。那时候还是买个台式机搬去了学校)

这两年我问过很多想转行的朋友和网友,大部分人都很坦然的表示只是因为薪资真的很高而已,很干脆也很纯粹,不论你内心的答案是什么,一定要有一个明确的目的,并且时刻提醒自己。


成为开发者我能得到什么?

不知道从什么时候开始,月薪过万已经成了一个普通刚毕业的年轻人所追求的目标。

一、实实在在的薪资

2010年我刚毕业的时候第一份工作工资是2500元,那时候在老家的地方政府作为一名体制外的php开发人员。属于放羊模式,有大量时间去研究新技术自己瞎折腾,也没人管我。一年之后开始北飘,在后续的几年里就是北京 上海来回折腾。2018 年底我突然发现,算上各种名目,自己的收入比最开始提升了将近20倍。是的,造成这种情况的原因除了自身的努力和积累,更多是因为在15年开始 大量资本涌入互联网。

二、自我成长的满足感

很多朋友都说他们的工作没什么技术含量,随便来个人学一两个月就能替代他们的工作,所以经常晚上会象征性的焦虑一下。做开发完全不用担心,因为有学不完的知识等着你,学到手的别人也没法从你脑子里偷走不是。在我看来很公平,不需要靠家庭背景,不需要拼关系,也不需要送礼、陪酒、刻意奉承。技术到位了只要不是特别没情商,基本都能获得和自己付出一样的回报。每一次自身技术实力的提升都能带给你正向的反馈,激励你继续提升自身实力。

三、能够及时洞察各种新风口

作为互联网开发人员,每天都会主动被动的接收到各种最新的互联网资讯。在这个信息爆炸的年代,你所处的圈子决定了你的信息来源和质量。开发者自己的圈子中充斥着大量的互联网资讯,你所参与的项目都需要你对其业务和整体流程有一定的了解。要是愿意观察和思考你可以比该业务线上的的大部分普通员工都了解他们的业务模式,如果有一定的志向,这些业务模式和行业信息都可以给你之后创业提供参考。


想要学开发我需要具备什么?

天赋能够决定你的上限,后天的努力决定你的下限。

一、 能够忍受孤独并且坐得住

做开发是一个需要静下心来的事情,不论你是学习、coding、思考业务梳理逻辑、debug、review,这些都需要静下心来长时间的思考和专注的行动。当然,有的朋友说自己就是坐不住,干什么都静不下心来,性格就是这样,还能做这行吗?其实也是可以的,因为可以通过后天的有意注意的克制、练习来进行修正和提高的。我小时候老师都说有多动症,也都是自己一点点修正过来的。

二、对计算机/编程/互联网感兴趣

在这些年的通过观察和总结发现,圈子里能真正把这份工作坚持做下来,并且越做越好的朋友,大部分内心深处都是对编程这件事本身有兴趣的。当然,还没有接触和了解这方面的话,兴趣也就无从说起,因为兴趣是需要对这件事有认知,然后通过一次次的正向反馈积累起来的。刚开始只需要有好奇心就可以,就是有最基本的求知欲就是可以的。毕竟正式工作之后如果一点兴趣都没有,那每天都是非常煎熬的,因为实际的业务开发并不是一件非常好玩的事情。

三、有一个良好的心态来应对困难

其实学习编程本身并不难,只不过很朋友把这个过程想的过于美好,并没有做好心理准备。学习的过程中会遇到很多的困难和打击,放平心态去面对它们。因为困难是一时的,办法总比困难多,能够让你蜕变成为大神的也正是这些困难和障碍。后面会列举几个最现实也是最常见的困难给各位朋友参考。


学习开发会遇到哪些困难?

只有流过血的手指才能弹奏出世间的绝唱 ---泰戈尔

学习目标和知识体系的建立 编程领域的分类非常多,从硬件到软件,从工业到互联网,从底层语言到高级语言。对于大部分没有基础的朋友来说,选择编程的门类和学习方向是第一步。
这里也是比较推荐新手朋友选择当今最常见WEB领域开发,其中大概可以分为:前端开发、后端开发、自动化运维、数据库开发这几类,当中以前端开发最易于上手和学习,选定了方向的同学也会苦恼于学习资料选择性太多,不知道如何选择适合自己的,也没有太多精力去依次辨别内容和质量,导致在犹豫中消磨了学习热情。学习方法不对 看能看得懂,自己写就写不出来。 这个可以说是很多朋友最头疼的问题,跟着教学看的时候都能理解,但是自己开始写代码的时候就无从下手,导致很多朋友感觉自己不是学编程的料,从而放弃。其实这个问题的根本在于练习上。
“学习” 是两部分(学 + 习),有好的视频指导固然是解决了知识来源的困难,但是如何把知识变成自己的,只有通过结合实际情况,用丰富的案例和实战来练习来消化和吸收。所以合理的案例和高强度的练习是非常重要的,甚至比课程视频要重要。因为只有在实践的过程中,你才能真正知道它是谁,它是做什么的,它怎么用。
学习方法这里还有很多方面就不扩展来讲,我会把联系方式放到结尾,欢迎各位朋友找我探讨交流。遇到问题没有办法解决 一杯茶,一包烟,一个bug卡一天。对于职业开发者来说,bug是一个老朋友,虽然会苦恼,但也可以凭借自己的技术积累和科学的debug流程进行排查,再不济也可以和圈子里的同事,朋友进行交流。但是对于新手来说既没有技术积累,也没有友好的圈子帮助。
经常遇到bug就是去百度,但是自己没有经验,所以百度的关键词也不准确,最终很多人都会被一个小问题劝退,放弃学习。你如果遇到困难想要寻求帮助,可以联系我或者发私信。惰性和现实问题 这应该是最现实的一个问题了,前面3个问题其实找到对应的渠道和方法都可以克服,但是这个问题只能靠自己去面对了。学习编程是一个漫长的过程,中间又有那么多的障碍和困难,但是我告诉你,只要你认真的坚持下来就已经打败了90%的人了。因为每年学习编程的人有上百万,但最后坚持下来的甚至不到10%。如果你认为结果值得付出,那就时刻提醒自己为何选择这条道路。之前有一位面试者让我记忆深刻,专科毕业学的是酒店管理,毕业后一直在饭店端盘子。电话面试阶段发现基本功和技术能力都不错,我问他为什么选择成为一名开发者。“我不想再每天都是吃剩饭,不想和8个人挤在一个15平米的宿舍,不想被别人刁难侮辱。我必须改变,没有关系没有背景,学技术是最好的选择。“ 他说的很实在,也能想象为什么他能够如此努力,因为如果有了这种执念,没有什么困难能打到他了。

我是海牙,一只来自北方的咸鱼,希望我的分享能够帮助到你。关注我的公众号: WEB技术战线 ,里面有更多的学习资料、技术资讯,心得分享。  


链接: https://fly63.com/article/detial/6985

程序员的笔记,编程写软件学到的 7 件事

如果你真的做出了一些东西,在面对那些令人眼花缭乱的理论知识,或是和你相似甚至比你做的更糟糕的人时大可不必谦虚。在一天结束之时,正是那些在战壕中的开发者——构建、测试和开发了代码的人,真正做了事情。

自学编程的六个技巧总结

这些事情可以帮助新手在他们漫长的旅程中学习编程。我知道我还有更多东西需要学习,并将继续学习如何永远地学习。最重要的事情说三遍,请继续,不要放弃,不要放弃,不要放弃。

谈谈Javascript异步代码优化

Javascript代码异步执行的场景,比如ajax的调用、定时器的使用等,在这样的场景下也经常会出现这样那样匪夷所思的bug或者糟糕的代码片段,那么处理好你的Javascript异步代码成为了异步编程至关重要的前提

编程到底难在哪里?

以买苹果为例说明程序员如何解决问题。程序员需要对问题进行透彻的分析,理清其涉及的所有细节,预测可能发生的所有意外与非意外的情况,列出解决方案的所有步骤,以及对解决方案进行尽量全面的测试。而这些正是我认为编程难的地方。

Blockly - 来自Google的可视化编程工具

Google Blockly 是一款基于Web的、开源的、可视化程序编辑器。你可以通过拖拽块的形式快速构建程序,而这些所拖拽的每个块就是组成程序的基本单元。可视化编程完成

我真是受够编程了

成为伟大的程序员,需要付出许多编程之外的努力。我们的大脑是有限的,每天要应付的问题复杂到足以让人精神崩溃。当工作不顺利时,多少都会有些冒名顶替症候群的感觉。

前端的编程软件哪些比较好用?

推荐8款最好用的前端开发工具供美工或者前端开发人员使用,当然若你是NB的全栈工程师也可以下载使用。Web前端开发最常见的编程软件有以下几种: 在前端开发中,有一个非常好用的工具,Visual Studio Code,简称VS code

如何保持学习编程的动力

学编程现在看起来挺简单,因为网上有丰富的各种资源。然而当你实际去学的时候就发现,还是很难!对我来说也一样。但从某天起,我决定认认真真学编程一年。后来又过了一年,又过了一年又一年……我好像有点感悟。

编程小技巧

命名最好遵循驼峰法和下划线法,并且要清楚的表达变量的意思。相对于驼峰法而言,我更喜欢下划线法。下划线法可以更清楚的看出这个变量表示的意思。比如aBigGreenBanana和一个a_big_green_banana。

CSS并不是真正的编程语言

每隔几个月就会出现一篇文章表明:CSS并不是真正的编程语言。以编程语言的标准来说,CSS过于困难。使用这门语言会很有创造性:事实确实如此,CSS不同于传统的编程,且具有缺陷,同任何标准化编程语言相比

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!