Quora 问答:为什么老师说我不适合编程?

关注「实验楼」,每天分享一个项目教程   

虽然我在编程课程里能拿到很高的分数(85-100),但我的教授却说我不适合编程,尽管他都承认我编码水平很不错了。我搞不懂,为什么我做得这么好了他却说这样的话?

正文共:2138 字 

预计阅读时间:6 分钟

问题:

虽然我在编程课程里能拿到很高的分数(85-100),但我的教授却说我不适合编程,尽管他都承认我编码水平很不错了。我搞不懂,为什么我做得这么好了他却说这样的话?(Despite getting very high marks in programming (85 - 100), my professor told me that programming is not for me. He has even commented that I am a great coder. Why would he say this if I have done so well?)

答:

我得站出来跟你说实话。因为就我所见,如今在软件开发这块,初学者和学生遇到的最大的问题就是这个问题:

你是否适合编程,这个事情跟你写出来的代码水平无关,也跟你能写代码的能力无关。

I’m gonna be up front and honest here, because this is the biggest problem I see with beginners/students coming into software development these days.

IT’S NOT ABOUT THE CODE, OR YOUR ABILITY TO WRITE IT.

我觉得很有可能,你的编码能力强,在教授眼里这是你的一个很突出的特点,但这恰好说明你在其他的软性技能方面非常欠缺。

一个好的开发者,光擅长写代码是不够的。我这里给出一些例子,这都是你以后还要学会的技能(顺序无关):

It’s very likely that while you might be very good at writing code, your professor spotted traits in your performance that would have meant you where no good at the soft skills.

A good software developer needs way more than just the ability to write good code. Here are some examples, of the skills you’ll need, in no particular order:

将问题分解,分而治之的能力;

以浅显易懂的方式,同非专业人士讨论技术话题的能力;

以常人所不能的、极端专注的逻辑思维方式进行思考的能力;

总揽全局、全盘思考、站在 1000 英尺高度理解问题的能力;

不但知道如何跟机器打交道,也要了解如何跟人打交道的能力;

在保持跟进单个解决方案的同时,时刻保持发散思维的能力;

审视众多可用的工具(不仅仅是代码)、并得出更好的解决方案的能力;

像有天赋一般的,立刻、快速的解决问题的能力;

在任何前提下都能判断、花多长时间能达成结论的能力;

在不同的地方、使用多种工具、同多个人一起,在团队中彼此协作的能力。

The ability to disassemble a given problem domain down into it’s individual parts.

The ability to communicate very technical subjects, in simple English like terminology to non technical people.

The ability to think in an insanely and focused logical way.

The ability to look at any given scenario for a 1000ft view point and understand a bigger picture as a whole.

The ability to understand communications principles, not just digital ones but human ones too.

The ability to think in parallel while still keeping track on a given single solution point.

The ability to look at the many tools (Not just code) you have and decide what’s better to use to build a solution.

An innate ability to problem solve, on your feet, and in a very short space of time.

The ability to judge how long it will take to reach a conclusion, based on any given premise.

The ability to use multiple tools, in multiple places, along side each other, and in teams with multiple people.

这还远远不够,我还能再列十条、再列五十条都行。

比起光写代码来,开发者的生涯所包含的内涵要多太多太多。这就是问题所在。

而很多初学者都是没办法意识到这个问题的。

软件开发是一条艰难的路,你走上这条路,就不会停止学习。

你现在学到的,仅仅是万里长征第一步。

I could go on for another 10. Heck, I could go on for another 50 if I needed to.

The point is, a software developers life is about far more than just slinging out some code.

Many beginners fail to realize this.

Software development is a very hard career, and you never truly stop learning.

What you’ve learned so far, is ONLY the BEGINNING.

当你走上这条路,你的余生都要花在不断的学习和发现上。

很多时候,你都必须在当前的问题上极其专注,哪怕让你痛苦不堪你也不能放弃。

初学者的热情很快就会被这种现实的困难消耗殆尽,很多人坚持不了几年就会放弃。

好的教授完全理解问题的所在,特别是有过从业经验,从事过一线开发的教授。

他懂得好的开发者需要哪些特质,以及不需要哪些特质。

You’ll spend the rest of your life, learning on the job, making new discoveries as you go along.

You’ll have very, very long periods where you have to concentrate and focus on what your doing, so hard that it almost hurts.

Burnout from this intense study & concentration is an all too real problem with beginners, and many don’t make it more than a couple of years before they give up.

A good professor knows ALL OF THIS, especially if he’s been in the industry and on the front lines himself.

He’ll know what makes a good developer, and what doesn’t.

我对我的学生也是经常给出类似告诫。我这么做绝无恶意,我只想告诉他们真相,让他们看清自己要面对的是什么。

而你要做的,就是向教授问清楚,他为什么觉得你不适合做开发。你要诚心诚意的去问。

他的回答可能会伤你自尊,但只有这样你才能知道自己哪些地方需要改进。

I routinely have to dish out similar advises to the students I teach, but I don’t do it with Malice, I do it because they need to hear the truth, and know what there going to walk into.

What you NEED TO DO, is ask your professor why he thinks you won’t make a good software developer, ask him to be 100% honest.

What he tells you might hurt, but the only way your going to know where you need to spend time improving is if he tells you.

我见过不少很棒的开发者,但是他们当中太多人也没有足够的毅力坐着花 18 个小时从头到尾来把问题嚼烂解决。

我也见过很笨的学生,因为觉得好玩就来“学电脑”。不少人没办法靠写代码为生,但他们只要对某事有兴趣,并且有机会钻进去,那么他们在问题面前,能展现出令人难以置信的执行力。

没人要贬低你或伤你的自尊,他们是帮你为面对将来的困难做准备。记住我的话:当你完成学业真正进入软件行业时,这些困难会像 20 吨的卡车一样砸在你头上!!!

I see amazing coders all the time, but a great many of them simply do not have the mental discipline to sit for 18 hours and chew through solving a problem presented to them, from start to finish.

I see loads of silly students, who come to do “computers” cause they think it’s a laugh, many of them couldn’t code to save their life, but give them something that interests them, and let them get stuck in, and their ability to hammer down on the task and see it through, is incredible.

No one is trying to belittle you or destroy your self confidence, their just trying to prepare you for what’s about to come, and mark my words, when you get out there into the real world, it’ll hit you head on, like a 20 ton truck!!!



  


点击进入【实验楼小程序】

随时随地,学习编程


译者:捏造的信仰

出处:segmentfault

链接:https://segmentfault.com/a/1190000014099544


推荐阅读:



评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值