免费获取策划方案多一份参考,总有益处

重庆网站开发公司

Website development company

案例694

重庆网站开发公司

当我开始编程的时候,我希望我知道的6件重要的事情

来源:派臣科技|时间:2020-12-08|浏览:

如果我在刚开始的时候就知道这些东西,我可能会在6年的程序员生涯中多成就300%。

编码并不仅仅是编码

你认为编程是关于什么的?

写代码?

编写好的代码?

不。

这只是事实的一部分。

编程不是编码,编程是用编码来解决问题。

终端客户并不关心您使用的技术、语言、框架或方法。他们只关心一件事,你的产品是否解决了他们的问题。

这就是为什么没有人关心谷歌搜索到底使用了什么技术。直到人们能找到相关的信息,他们才会使用它。

当我开始编程的时候,这是我希望知道的第一件事。

我会用更少的时间来编写“最好的代码”,用更多的时间来最好地解决客户的问题。

不要为了写代码而写代码,要用代码来解决客户的问题。

沟通技巧比编码技巧更重要

当我刚开始我的职业生涯时,缺乏社交技巧并不是我的主要问题。但当我升到更高的职位,升到中级、高级和领导职位时,我薄弱的软技能成了我的致命弱点。

当你和一群不同的人(工程师、设计师、经理)一起开发一个产品时,沟通是唯一能让你们成为一个“团队”并帮助你们有效开发产品的东西。

缺乏社交技能反而会减少产品开发时间和整体生产力。

下面是你可能面临的真实情况:

领导团队告诉你的产品经理,他们想要创建一个新的产品特性,并将其放到下一个产品版本中。这并不紧急,他们只是想尽快发布它(一如既往)。

产品经理在Zoom上给你打电话,告诉你需要构建什么,并问:“构建它需要多长时间?”

你做一个粗略的计算,然后告诉我,“我需要20个小时。”

产品经理对你的回答不满意。他希望尽快发布它,并向管理层表明他能够快速交付结果(这是一种非常常见的情况)。

所以他问你,“你能花10个小时来完成它吗?”下一个产品发布中我们真的需要这个功能!”

你知道如果你走捷径(没有测试,混乱的代码),你可以做到,但是你需要重构它,这将花费额外的30个小时。因为其他工程师会在你发布混乱的代码时处理它。重构之后,您需要将他们的代码与您的代码集成在一起。

接下来会发生什么呢?如果你的社交技能很差,你就无法说服产品经理你实际上需要20个小时来构建这个功能。

为什么?

从我的经验来看,产品经理通常都有很好的社交能力。所以,如果你不能说服他以后重构比现在花20个小时更糟糕,他会很容易地和你争论,让你相信“以后重构没问题”。整个团队将为重构损失额外的30个小时(我不计算之后修复不可预测的bug的时间)。

但如果你有良好的沟通技巧,你将能够说服他相反。

因此,提高你的社交技能和编码技能(在Slack上的群聊中发送表情包或其他东西)。

记住一个简单的事实:

人与人合作,而不是机器。

有规律的休息有助于更好地规划

4年来,我总是感到疲惫的工作后。不管怎样,我只能高效地工作几个小时。从那以后,我就没有多少精力了。直到我了解了番茄工作法

这很简单。工作25分钟,休息5分钟。

你的工作习惯变成:

8:00-8:25——工作

8:25-8:30——打破

8:30-8:55——工作

8:55-9:00——打破

我试了一个星期,我惊讶地发现自己变得如此专注、精力充沛和富有成效(番茄工作法背后的科学)

然后我进一步实施了52+17系统,我的工作效率提高了200%。

所以,如果你想发挥你的最大能力,就要有规律的休息。

10倍工程师是不存在的

在我职业生涯之初,我认为一个伟大的程序员应该是一个懂得大量编程语言、框架和方法的人。

我错了。

这种心态只会让我产生“骗子综合症”。我认为我不配得到我现在的职位,我的薪水,我是一个“骗子”。所以我开始在Twitter上关注每一个受欢迎的开发者,阅读每一条技术新闻和成千上万的开发者博客,只是为了让自己相信我配得上我所拥有的,并感觉更接近“伟大的开发者”这个头衔。

这是不健康的行为。

但它帮助我发现,我追随的很多人(我以为是10倍的工程师)实际上并不知道很多事情。他们可能知道如何做一些复杂的事情,这些事情需要很多不同领域的深刻知识,但同时他们不知道一些原始的事情。想知道如何设计高度可伸缩的数据库架构,但不知道如何用CSS垂直对齐元素。

非常感谢像Dan Abramov (Redux的创建者)这样的开发者,他们治愈了我的冒名者综合症,并向我展示了不知道一些事情也是可以的。

如果你知道如何学习,编程并不难

当我开始学习JavaScript时,它很难。因为我学错了方法。

多读理论,没有实践,没有常规,没有最终目标。混乱。

我以为这样学习很正常。直到我发现刻意练习。

这是一种有目的和系统的实践(学习)。

正常练习和刻意练习的区别在于刻意练习需要集中注意力,刻意练习的目的是为了提高成绩。

经过深思熟虑的练习,我开始注意到我学习JavaScript的速度有多快。我的知识开始坚持了很长一段时间,而不仅仅是5分钟后的教程。我创建了最终的目标,为什么我要学习JavaScript,并且明白我需要学习什么,不需要学习什么。

快速注:我创建一个JavaScript课程我用刻意练习结合现代JavaScript和实用的理论和大量的实际练习教你如何成为一个熟练的JavaScript开发人员与现代语言特性的知识。加入这里。

下面是你自己进行有意练习时需要的:

提供练习活动,旨在帮助你提高表现。

尽最大努力表现:不断地被带出你的舒适区。

明确的和具体的目标:不仅仅是“全面的改进”。

集中注意力:全神贯注,不分心。

做有意识的行动:没有自动驾驶仪。

及时回应反馈并修改策略。

当你开始学习一门新语言、新技术、新架构或其他任何东西时,请坚持这些规则,以便尽快取得重大成果。

没有“最好的编程语言”

世界上没有最好的东西。只有最好的东西。

就拿汽车。我们如何选择世界上最好的汽车?的速度吗?通过安全吗?什么标准?

这是不可能的。

我们只能在某一类别中选择最好的汽车。比如最安全的车。或者最好的越野车。

如果我们看得更深入一些,每个类别都解决了一些问题。

为例。

问题:我们有孩子,我们每天带他们去学校,我们希望我们的孩子在去学校的路上安全。

解决办法:买最安全的车。

问题:我们每个周末都去露营,所以我们需要一些交通工具,可以很容易地把我们带到那些很难到达的地方。

解决方案:买最好的越野车。

编程语言也是如此。有些语言和工具在解决某些问题上比其他的更好。

如果我们想建立一个互动的网站,我们选择JavaScript。

如果我们想使用ML/AI,我们选择Python。

记住,没有最好的编程语言,只有最好的编程语言……

所以先从一个问题开始,然后选择一种语言来解决它。

最后……

如果你喜欢这篇文章,请与你的朋友分享,并在Twitter上关注我。

另外,我每周都会发一份“3-2-1”时事通讯,里面有3条科技新闻,2篇文章和1条建议。

留言

返回顶部

君
重庆网站建设重庆网站开发公司当我开始编程的时候,我希望我知道的6件重要的事情