首页 > PHP头条 > 正文

三件事让你成为效率高的程序员

原创 2017-11-27 0 946
本篇文章是一名很有经验的资深程序员所发表的一篇关于编程开发的感悟,他会用他自身程序员的经验告诉我们开发效率很高的程序员要做到哪几件事。

我们许多人开始编程的时候都有特定的目的。比如,我开始编程的时候,是让我能在睡觉和在学校的时候自动玩那个文字版的MUD游戏。我那时候是个写脚本的13岁小孩,甚至不知道什么是编程。我可能有一个想法,然后就写代码并测试 - 全部靠我自己。

当我们为其他人开发软件时就变得很困难,因为我们常常缺乏相同类型的动机和兴奋感,而它们驱使我们追求自己的愿望。我们没有自己的想法,而是花几个小时在会议中尝试了解这些想法,然后我们大部分时间都在修改别人的代码 - 或者提交自己的代码。这导致一定程度的隔阂,进而降低了生产率。

要成为一名10倍效率的开发人员,你必须学会在这种环境中脱颖而出,甚至创立自己的公司来领导这项工作。

任何人都可以是一个10倍效率的开发人员,至少在每一天的某个时刻。我相信所有开发人员都应该专注于提高生产力和团队合作的三件事。

三件事

要成为一名10倍效率的开发人员,你需要几年的工作经验,无论使用哪种编程语言和工具集。你必须善于解决问题和编写代码;这是必须的。

重要的是你要明白,如何编写代码并不能让你成为10倍效率的开发人员,10倍效率的工程师,10倍效率的程序员,或其他任何你想要的名字。

你知道5W:“谁(Who),什么(What),在哪里(Where),为什么(Why),什么时候(When)”。虽然这些都适用于软件开发,我想关注那三个定义了10倍效率的开发人员的特点。这三项把普通开发人员与10倍效率的开发人员区别开来:

是什么(What)

为什么(Why)

什么时候(When)

知道做什么

在企业界,开发人员经常从事他们不太感兴趣和不理解的项目。对于大多数开发人员来说,这不是一个大问题,只要他们收到了很好的指令,并且也得到了明确的输出定义。

问题是开发人员通常没有得到足够的指令。相反,我们使用一种叫做 “敏捷开发” 的东西。我们收到一个记事帖,上面有几个字,并指望我们知道到底需要做什么。

软件开发就是沟通。开发人员需要知道我们在做什么,我们试图解决什么问题,以及到底需要什么样的结果。我们知道的越多,就可以更快的完成。最重要的是,知道工作的目的和什么会使工作成功是很关键的。

水平差的开发者会在一个项目的错误方向上花几个小时而不问任何问题。他们就是我所说的 负10倍效率的开发人员,因为他们一事无成,浪费了所有同事的时间。几乎每个人都遇到过这些开发人员,与他们一起工作会让人感到沮丧。你一定要小心,不要养成他们的习惯!

有些开发人员即使没有很多细节也能很好地工作。他们有大量的创造力,并提出正确的问题。这些独角兽可能是10倍效率的开发人员。他们知道如何解决问题,并经常提升整个团队的水平。

最重要的是,10倍效率的开发人员真的很擅长快速地确定需要完成什么和问什么问题。

理解为什么

也许软件开发的最大障碍就是理解为什么。如果你不明白你要解决的问题,那就很难解决了。

为什么我在睡觉和上学的时候把几个终端脚本放在一起玩MUD游戏?当然是我想在比赛中达到最高级别。我清楚地知道为什么,我尽我所能来实现目标。

同样的方法也适用于任何软件开发项目。了解他们所在的垂直行业和他们试图解决的问题将会使开发人员更有效率。了解为什么和理解垂直行业也有助于防止不必要的工作,腾出时间专注于那些会使产品或功能对用户更有价值的事情。

问题是知道为什么还不够。作为一个真正的10倍效率的开发人员,你必须对这个问题有热情,并从里到外地了解它。我相信,大多数10倍效率的开发人员本质上也是产品人,具有良好的产品愿景。

知道什么时候做什么

时间对于软件开发项目非常重要。确定项目任务的处理顺序看似容易,但却非常关键。你的工作可以帮助公司获取一个新客户或者或清理掉旧的技术债务?

作为开发团队,我们必须不断地选择我们要做什么和什么时候做。

所有软件开发工作项目都属于以下三类:

我们必须做的事情

我们需要做的事情

我们想要做的事情

我们必须为客户完成新功能。我们需要修复软件中的 bug。我们想减少些技术债务或开发一些酷的新产品功能。这些都需要平衡取舍。

我们应该同时开展所有三个维度的工作项目。我们不能把所有的时间都花在技术债务上,但也许我们应该花一小部分时间在这上面。

开发人员还必须知道何时在其代码中构建复杂的体系结构。我宁愿保持代码尽可能简单,直到不添加架构就会死的时候我才会添加架构。

开发者也必须知道什么时候避免追逐时髦的东西。他们倾向于使用新的工具和技术,但是这些东西可能只会减慢一个项目,而不是更快地完成它。

10倍效率的开发人员擅长于优先级排序,并了解何时将时间投入到架构中,而不是使用一坨意大利面条般的代码来实现某种工作。请记住,你的用户并不关心你的软件是如何工作的,也不管该架构有多花哨。他们只想它能解决问题。10倍效率的开发人员理解这一点。

掌握是什么(What),为什么(Why),什么时候(When)成为10倍效率的开发人员

现在让我们来谈谈成为10倍效率的开发人员的重要技能:掌握是什么(What),为什么(Why),什么时候(When)。

从为什么(Why)开始

成为10倍效率的开发人员的第一步是对你要解决的软件和问题变得充满热情。你需要从里到外完全理解它。这首先是要对你工作的公司及其使命充满激情。

不要因为别人告诉你要写一个按钮(button),然后你就只写一个按钮。努力在更高层次上去理解为什么(Why)。如果你持续关注为什么,你对你的团队和公司会有更大的价值。

做一个好的开发者和优秀的问题解决者,而不是最好的程序员

我会把自己描述成一个黑客开发者。我是那种能很快把一些丑陋的代码拼凑起来并解决几乎任何问题的人。我的代码很少是美丽的,但它能解决问题。这才是最重要的。

你不必编写完美的代码与单元测试来成为一个10倍效率的开发人员。你需要知道什么时候要做和什么时候不做这些事情。

一个10倍效率的开发人员擅长解决特定的问题,并通过代码满足业务需求。你能做的最聪明的事情就是在你把项目交给其他人(他们更善于最后敲定一些架构和其他一些细节)之前就知道它能走多远。

什么时候(When)在你的内心,或者不在

知道什么时候要建立一个复杂的架构,而不是拼凑一些东西,需要经验和你蜘蛛侠般的感官。你要么有这种感觉,要么你根本不知道。

我曾与一些最聪明的开发者共事过,他们总是很糟糕的优先考虑模式和架构,而不是功能和排期。他们总是过度实现或者一遍遍重构,争取 “完美的代码”,而不是 “可交付的代码”。

10倍效率的开发人员必须利用他们的经验和本能来知道什么时候要专注于架构和完美,什么时候就是把事情搞定。

 知道该做什么(What to Do)和该问什么(What to Ask)

许多软件开发归结于沟通技巧。可惜的是,在我们要工作的项目上许多注释和要求都不是很详细。一个10倍效率的开发人员知道如何阅读这些,应用他们知道的业务里的 “为什么”,并提出相关的问题。

最好的开发者知道在寻求帮助之前要在某件事情上花多少时间。他们也知道要问什么问题,以阐明需求来推进项目。

结论

我已经写了超过15年的代码。可以说我是一个10倍效率的开发人员,或者至少我能。我知道我擅长什么,当我做我擅长的事情时,我可以很快地完成大量的工作。

如果你想做一个新产品的原型,我就是你要找的人。如果你需要寻求Angular,React或其他一些 前端的帮助,我绝对不是你要找的家伙。在这些任务上我将是一个负10倍效率的开发人员。

10倍效率的开发人员不是一个神话。他们确实存在。他们很可能是开发经理、架构师、首席开发人员或公司创始人。如果他们不是的话,他们应该转变。我后来成为了公司的创始人,到现在为止都两次了。

当然,没有人能在每一天的每个时候都是一个10倍效率的开发人员。我们没有精力或专注力每天以这样的速度工作。我们不是机器人。

如果你理解软件开发的 “是什么(What),为什么(Why),什么时候(When)”,你就可以是一个更有效率和更好的团队成员–甚至是一个每天几个小时内的10倍效率的开发人员。这会有很大的不同。

以上就是他的分享,希望对大家有帮助。

相关推荐:

总结有关小程序开发的经验

成长中的程序员需要做的七件事

浅谈php程序员的未来

  • 相关标签:高的 效率 成为
  • 本文原创发布php中文网 ,转载请注明出处,感谢您的尊重!
  • 独孤九贱(4)_PHP视频教程

    江湖传言:PHP是世界上最好的编程语言。真的是这样吗?这个梗究竟是从哪来的?学会本课程,你就会明白了。 PHP中文网出品的PHP入门系统教学视频,完全从初学者的角度出发,绝不玩虚的,一切以实用、有用...

    独孤九贱(5)_ThinkPHP5视频教程

    ThinkPHP是国内最流行的中文PHP开发框架,也是您Web项目的最佳选择。《php.cn独孤九贱(5)-ThinkPHP5视频教程》课程以ThinkPHP5最新版本为例,从最基本的框架常识开始,将...

    ThinkPHP5实战之[教学管理系统]

    本套教程,以一个真实的学校教学管理系统为案例,手把手教会您如何在一张白纸上,从零开始,一步一步的用ThinkPHP5框架快速开发出一个商业项目。

    PHP入门视频教程之一周学会PHP

    所有计算机语言的学习都要从基础开始,《PHP入门视频教程之一周学会PHP》不仅是PHP的基础部分更主要的是PHP语言的核心技术,是学习PHP必须掌握的内容,任何PHP项目的实现都离不开这部分的内容,通...

    独孤九贱(1)_HTML5视频教程

    《php.cn原创html5视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了HTML知识。 ...

    ThinkPHP5快速开发企业站点[全程实录]更新中...

    本课以最新版ThinkPHP5.0.10为基础进行开发,全程实录一个完整企业点,从后台到前台,从控制器到路由的全套完整教程,不论是你是新人,还是有一定开发经验的程序员,都可以从中学到实用的知识~~

    Thinkphp3.2.3个人博客开发

    ThinkPHP是一个快速、开源的轻量级国产PHP开发框架,是业内最流行的PHP框架之一。本课程以博客系统为例,讲述如何使用TP实战开发,从中学习Thinkphp的实践应用。模版下载地址:http:/...

    PHP实战天龙八部之仿爱奇艺电影网站

    本课程是php实战开发课程,以爱奇艺电影网站为蓝本从零开发一个自己的网站。目的是让大家了解真实项目的架构及开发过程

    独孤九贱(8)_php从零开始开发属于自己的php框架

    本课以一个极简的PHP开发框架为案例,向您展示了一个PHP框架应该具有的基本功能,以及具体的实现方法,让您快速对PHP开发框架的底层实现有一个清楚的认识,为以后学习其实的开发框架打下坚实的基础。

    独孤九贱(3)_JavaScript视频教程

    javascript是运行在浏览器上的脚本语言,连续多年,被评为全球最受欢迎的编程语言。是前端开发必备三大法器中,最具杀伤力。如果前端开发是降龙十八掌,好么javascript就是第18掌:亢龙有悔。...

    直播实录:PHP魔鬼训练营[从零开始制作个人博客]

    本站9月直播课已经结束,本套教程是直播实录,没有报上名或者漏听学员福利来了,赶紧看看吧,说不定这里就有你的菜

    2018前端入门_HTML5

    轻松明快,简洁生动,让你快速走入HTML5的世界,体会语义化开发的魅力

    JavaScript极速入门_玉女心经系列

    JavaScript能够称得上是史上使用最广泛的编程语言,也是前端开发必须掌握的三技能之一:描述网页内容的HTML、描述网页样式的CSS以及描述网页行为的JavaScript。本章节将帮助大家迅速掌握...

    PHP用户注册登录系统视频教程

    《php用户注册登录系统》主要介绍网站的登录注册功能,我们会从最简单的实现登录注册功能开始,增加验证码,cookie验证等,丰富网站的登录注册功能

    独孤九贱(7)_Bootstrap视频教程

    Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。为所有开发者、所有应用场景而设计,它让前端开发更快速、简单,所有开发者都能快速上手...

    PHP学生管理系统视频教程

    《PHP学生管理系统视频教程》主要给大家讲解了HTML,PHP,MySQL之间的相互协作,实现动态的网页显示和获取数据.

    独孤九贱(2)_CSS视频教程

    《php.cn独孤九贱(2)-css视频教程》课程特色:php中文网原创幽默段子系列课程,以恶搞,段子为主题风格的php视频教程!轻松的教学风格,简短的教学模式,让同学们在不知不觉中,学会了CSS知识...

    弹指间学会HTML视频教程

    《弹指间学会HTML视频教程》从最基本的概念开始讲起,步步深入,带领大家学习HTML,了解各种常用标签的意义以及基本用法,学习HTML知识为以后的学习打下基础

    独孤九贱(6)_jQuery视频教程

    jQuery是一个快速、简洁的JavaScript框架。设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的...

    最新微信小程序开发视频教程

    《最新微信小程序开发视频教程》本节课程是由微趋道录制,讲述了如何申请一个微信小程序,以及开发中需要使用哪些工具,和需要注意哪些等。

    • 小云云

      学生

    • 想不好签名了...
    • 5865篇
      文章总数
    • 946
      文章总浏览数

    头条

    推荐视频教程

  • javascript初级视频教程
  • jquery 基础视频教程
  • javascript三级联动视频教程
  • 独孤九贱(3)_JavaScript视频教程
  • 独孤九贱(6)_jQuery视频教程
  • 最新更新