`
乱蓬头199303
  • 浏览: 81189 次
文章分类
社区版块
存档分类
最新评论

自学的程序员如何找到好工作?

阅读更多

摘要: 2016 年有位年轻的程序员在 Quora 上提问求助: 我今年 17 岁,从 14 岁开始编程。我主要关注 Java 语言,并在 AP 计算机科学这门课上拿了 5 分。我相当精通 Java(比如语法、主要类、GUI/JFrame 等),HTML5 和 CSS3 也不错。

2016 年有位年轻的程序员在 Quora 上提问求助:

我今年 17 岁,从 14 岁开始编程。我主要关注 Java 语言,并在 AP 计算机科学这门课上拿了 5 分。我相当精通 Java(比如语法、主要类、GUI/JFrame 等),HTML5 和 CSS3 也不错。我感觉自己缺乏很多有用的技能,来帮助我在人才市场上推销自己(比如数据库的工作原理,以及我应该使用哪些工具),我很好奇其他人是如何学习这些东西的。我打算去大学拿一个软件开发的学位,但我开始感到有点沮丧,觉得读大学的目的就是为了工作。现在有哪些我应该上的课程,或者应该做的事情吗?


image

 

下面是 Brain Knapp 的回答分享︰

我认为你的看法错了。你觉得你需要上课,让别人来教你,告诉你答案。从根本上讲,自学的程序员能够做不一样的事情。

自学的程序员和自学的吉他手有很多共同点。我不知道你是否玩过吉他,所以我将向你解释如何自学吉他。

首先,这一切的开始是由于某人与某个吉他手产生了共鸣。大多数突然想要自学吉他的人,是想要成为另一个吉他手。之后,他们下定决心——“我也可以成为一个吉他手 ”,于是去了当地的乐器店,买了一把二手吉他(因为二手吉他更便宜,但也很酷)。

接下来可能会有两种情况,要不买一本“吉他入门”或类似的书籍开始自学,要不打开 YouTube,开始学习如何弹奏自己喜爱的歌。那些尝试学习弹奏喜欢的歌的自学者,往往学得更好。

当年轻的吉他手主动地学习某首歌时,他们往往需要观看视频、打印曲谱、练习和弦等等。然后,根据拿到的视频和曲谱,他们会坐下来尝试重新演绎歌曲。

经过数小时的练习,不断重复和弦、独奏、节拍等,他们将能够以自己的形式表演那首歌。它不再是原来那首歌,但也够酷。

然后,他们会拿起另一首歌,重复这个过程。一路走来,他们不断学习节拍、技术以及其他的东西,甚至都没有意识到学习的内容。在知道专业名词和理论前,他们已经懂得如何操作。

最终,弹吉他变成了一种“直觉”,学习一首新歌也变得习以为常且不再痛苦。吉他的“语言”变得像你我说话那样容易。

这一切的发生,背后是数千小时的艰苦练习。即使每天只练习一小时,也需要耗费数年。

那么,这和自学的程序员有什么关系呢?

事实上,真正成就自学的程序员的,就是他们会自己创建东西,很多东西。要成为一个具有卓越技能的出色程序员,你必须创建东西,写代码。

上课学习理论知识固然是好的,但很多教授不能跳出条条框框的束缚,以自己的方式编程。就算他们努力尝试,也做不出别人愿意用的应用程序。

这并不是说他们不了解教授的知识,而是说,作为一名教授,他们掌握的技能是研究和理论性理解,而不是写代码和为客户提供价值。

你看到区别了吗?

我合作过的最好的程序员,他们的工作方式就是做东西,做很多东西,并且几乎一直这样。

例如,现在几乎每个人都使用 WordPress。在 WordPress 出现很久之前,我就用 PHP 和 MySQL 创建了 3 到 5 个不同的内容管理系统。我写过游戏、移动应用程序、框架,还有 SAAS 应用程序。

没人付钱让我做这些事情。我做这些事纯粹是出于好玩、学习或好奇的目的。

我已经好几年都没有上过课了,即使上了,我也不觉得这会对我的事业有任何帮助。然而,如果我决定坐下来,从头开始创建我自己的计算机语言或操作系统,我打赌我一定能在过程中学到很多有趣的东西。

是的,我可以带着那些想法上课,但在创建东西,犯下错误,以及真正“体会到”这一切的经历中,相比读一本书或听一次讲座,我能收获更多。

​​​​​​​

原文链接

分享到:
评论

相关推荐

    Java自学程序员必备+计算机基础+操作系统,组成原理,数据结构+自学必备,内功提升

    本文将结合所给的文件信息,探讨一名Java自学程序员在提升自我能力时,必须要掌握的计算机基础知识。 计算机基础是任何程序员都应该具备的硬核技能,它包括操作系统、数据结构、计算机组成原理和计算机网络等多个...

    程序员的个人发展

    编程教育虽然重要,但个人的自学能力和实际工作经验更加关键。因此,程序员应该积极培养多元化的兴趣爱好,提升演讲与表达能力,建立广泛的人际关系网络,并且培养自己对未来的远见卓识。 总结而言,程序员的个人...

    程序员最后可能的出路

    作为拥有技术背景的营销人员,程序员能更好地与技术人员沟通,并理解复杂的产品特性,从而更有效地进行市场推广。此外,相较于程序员的角色,IT营销人员在薪水方面有较大的上升空间,并且相对稳定。但是,程序员需要...

    程序员求职专用简历模板

    这两份专门为程序员设计的简历模板——"简历模板二(明快).doc" 和 "简历模板一(简约).docx",提供了很好的参考,旨在帮助新手程序员更好地展示自己的技能和经验。 首先,简历的基本结构应包括以下几个部分: 1...

    菜鸟级SQL21天自学通+程序员羊皮卷

    《菜鸟级SQL21天自学通》是一本专门为SQL初学者设计的学习指南,它涵盖了从基础到进阶的SQL知识体系,旨在帮助读者在21...同时,《程序员羊皮卷》将帮助他们理解程序员的世界,更好地适应和发展于这个快速变化的领域。

    程序员的人生该将如何规划

    因此,合理安排工作时间,找到适合自己的放松方式,保持良好的心态,对于程序员来说同样重要。 #### 职业发展路径的选择 对于大多数程序员来说,未来的职业发展路径主要有两条:一条是技术路线,即专注于技术研究...

    作为一个程序员的最基本要求

    以下是对成为一名好的程序员所必需的关键要素的详细解释: 首先,扎实的基础知识是程序员的基石。这包括理解计算机科学的基本概念,如数据结构、算法、计算机网络和操作系统原理。对于初学者,学习C语言是建立基础...

    黑马程序员 大事件案例程序

    另外黑马还为这个项目提供了在线接口文档,并且将后端服务器也上线发布了,真是自学小伙伴的福音啊。最后,再次给黑马程序员和刘老师点个赞。 说明--ShowDoc https://www.showdoc.com.cn/escook?...

    非C程序员C++入门自学教程

    《非C程序员C++入门自学教程》是一本专为非C语言背景的初学者设计的C++学习资源,旨在帮助读者快速掌握C++的基础知识。C++是一种强大的、通用的编程语言,它在系统编程、游戏开发、软件工程等多个领域都有广泛的应用...

    程序员成长路线图:从入门到优秀.pdf

    文章提到了几种不同的程序员类型,包括那些自学成才的程序员,他们在资源匮乏的环境下依然能够迅速成长起来,并且成为团队中的佼佼者。 #### 二、成为程序员的标准 关于什么样的人可以被称为程序员,文章中给出了...

    程序员面试逻辑题

    根据提供的文件信息,本文将围绕“程序员面试逻辑题”这一主题进行深入探讨,解析与程序员面试相关的逻辑题目及其重要性,帮助求职者更好地准备面试。 ### 知识点一:理解程序员面试逻辑题的重要性 在程序员招聘...

    C++ 入门--非C程序员自学教程

    本教程旨在帮助非C程序员快速理解和掌握C++的基础知识。 首先,我们要理解C++的由来。C++是在C语言的基础上发展起来的,它增加了类和对象的概念,引入了面向对象编程(OOP)的理念,同时也包含了泛型编程(模板)和...

    Android程序员转正工作总结.doc

    为了能更好地适应工作并解决实际问题,我制定了一份详细的学习和成长计划。在未来的日子里,我将持续深入学习新的技术知识,提高我的编程技能,优化工作效率,同时也会努力克服急躁情绪,增强与同事之间的沟通和协作...

    java程序员自我介绍

    ### Java程序员自我介绍的关键知识点 #### 一、个人背景与教育经历 对于一名Java程序员而言,在...通过以上五个方面的详细阐述,可以帮助一名Java程序员在面试中更好地展现自己的综合能力,提高获得心仪工作的机会。

    6z种方法零基础程序员如何自学编程【育儿知识】.doc

    最好是奔着一个小项目而学习编程,当您把作品做出来了,就有成就感,同时基本上具备找工作的能力,直接找个初级的开发岗位,再进阶,您的自学之路功与名都有了。 5、反复练习:编程是一门手艺 编程是一门手艺,...

    程序员转正PPT模板

    3. **未来开展工作的计划和态度**:对未来工作的规划和期望,包括如何提升自己、如何更好地完成工作任务等。 ### 二、关键技能与经验分享 #### 1. 技术栈与项目经历 - **中央登陆系统**:这是指单点登录(Single ...

    程序员简历模板非常好看

    在撰写程序员的简历时,美观...总结,一个好的程序员简历应包含全面的个人信息、教育背景、技能、项目经验和自我评价,同时注意排版清晰,视觉效果吸引人。这样的简历将大大提高你在竞争激烈的IT职场中脱颖而出的机会。

    IT程序员面试简历

    7. **自我评价**:简短地总结自己的优点和特质,强调与IT行业和程序员角色相关的特性,如问题解决能力、团队合作精神、自学能力强等。 8. **格式与设计**:简历的排版要清晰、整洁,字体和字号要统一,避免过多的...

Global site tag (gtag.js) - Google Analytics