`
icheng
  • 浏览: 826432 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

【转】提高工作效率的方法

 
阅读更多

本文来自于 killman.liu 的博客 坪溪笔谈 ,原文链接在:http://blog.feihoo.com/2010/04/work-effcient-thoughts.html

因为个人看了后很有感触,在这里向大家推荐。

提高工作效率的方法

最近一段时间以来,效率相当地高。 纵观前些年的工作效率中,少有这么利落快速而且不加班的。 回顾这几年,我工作效率的提高主要有下面的几个方面。

一、集中目标

专注目标。 凡是工作效率高的时间段里,工作目标都很明确。每天一上班,心里就想明白了今天要干什么,每天下班时,想想今天都实现了什么,有什么目标还没有实现。尽管每天早上来了先看看股票新闻,中午饭后看看股票新闻,偶尔下午还打个盹什么的,但工作的时候确实格外专注,丝毫也不会走神。

分离与当前无关的任务/问题。
专注目标不是那么容易做到的。印象中以前工作中经常会碰到的问题是工作中遇到的问题。一方面可能得益于基本功的增强,最近虽然也遇到了一些问题,但是都能够通过简单阅读或查找文档,或浏览问题相关的库的源码解决; 另一方面,遇到的问题我总是避繁就简,首先倾向于寻找简单可用可靠的方案,并将心中的疑虑记录下来,集中成一个列表,工作之外翻翻书,系统思考和学习,而不会因为这个问题而叉开思路对相关的内容研究一番。总之,专注当前的任务,把新问题记录下来,回头再专心攻克。

例如我第一次用ibatis,遇到了一些表可以用集合和映射来加强Pojo的OO功能,但是我并不熟悉ibatis的这些特性,并且使用简单的方案也是可行的,于是就直接使用简便方案(在我看来,ibatis主要是将SQL集中起来管理、简化SQL操纵,对OO不感冒)。

工作列表。 不论是开发还是设计,一个文本格式的位于源代码存储系统下的待办工作列表与IDE中的TODO项一起构成了专注目标的重要工具。工作目标分解是基本工作步骤,记录工作中产生的新的问题(任务),这样,子问题越来越多,项目中要干的事情越来越丰富。经常性地调整当前工作任务列表,根据重要性对这些任务进行划分。每天都干掉一些问题,经常想着那些最重要的问题。

简单但有迹可寻的设计材料。 在思考和工作的过程中,一方面,项目的过程通常比较长,另一方面经验相对丰富的人手头总是有多个事情在并行进行。当时间太长记不清出了或者是切换任务时,经常要查看此前的代码和设计,易于修改以及有历史记录的设计材料对于保持设计思路的完整十分有意义。(设计材料还应该包括重要的图)

正式准确可以依靠的需求文档。 这一条无论怎么说都不过分,遇到需求不确定的地方,就去查需求文档。如果没有,就请能够回答的人来回答,委托给他,先去做别的。细想在上一家公司,经常要承担多种角色,甚至连需求也经常没人给一个最终决策,设计开发的时候在模棱两可的需求之间做决定,很烦心。对于一个设计/开发人员而言,需求人员在需求问题方面就是绝对的权威。如果有些建议,可以建议,但一切均以需求/产品人员为准。

单元测试。 另一有助于集中精力编码的就是单元测试。单元测试让我集中精力实现当前的功能,需要依赖的其他功能,我总是先生成一个接口,让当前的功能通过测试后再专心去实现该接口。一天下来,一个一个的测试点亮了绿色,一个一个的接口被实现,整天都是十分惬意的。单元测试的另外一个收益就是放心地去重构吧,放心地去做新的特性吧。

二、简化问题的能力

无论是在广义的工作方法/工作态度上,还是在针对具体问题的设计/实现上,我认为最重要的个人能力就是化繁为简了。化繁为简是所有工作方法/软件设计的核心。将那些可以砍掉的工作砍掉(最多做个记录),做到尽可能地经济,尽可能地简单。

从工作方法和态度上来讲,真正需要去做的工作才值得去做,大力砍掉那些不应该在当前工作中处理的事情。例如不必要的优化,不必要的扩展性,不必要的性能,不必要的功能,可以不要的技术,不必要的流程,不必要的文档,统统砍掉,一切可以没有的全都不能有

工作中也可能遇到非关键的难题,通常绕过它们,使用更简单的方案就是了。纠缠于这些不重要的难题,最容易浪费时间。例如,eclipse忽然坏掉了,最好的方法是重装一个; 又如以前我经常自己建一个持续集成服务器,现在我直接养成每次写完代码手工跑一遍的习惯(前提是够用)。简化你的工作!简化!

从设计/实现来讲,最好的方案就是最简单直接、一眼就能看懂的方案。记得刚到一个新的环境,有一个统计任务,既要用到数据库也要用缓存,我做了精细的设计来保证最终一致性,状态流程都很完整,并且使用线程池来并发运行分批处理,最后再合并。虽然控制得很完美很精细,但是流程和结构都很复杂。上头根据此前的项目经验给出了一个更简单的例子,直接将各个任务划分为多个线程,分开存储,到了该统计的时候,冻结数据在所有的分区上做统计。状态砍掉一半,流程缩减一半。

事实上,作为简单直接的一个附带效应,最简单直接的方式,通常性能也最好。

简化问题的能力,是一个人的核心能力。

三、基本功

基本功的内容十分复杂。首先,对整个计算机体系的理解,对操作系统/虚拟机/数据库本质的理解,对语言基础类和库的理解,我觉得是核心基本功

第二项基本功,就是学习能力 。 通过快速阅读核心文档理解核心思想,然后其他的东西总是能从文档中查到就行。细枝末节的东西,即学即用,学过就忘可也。

第三项基本功,就是文档、资料的搜索和收集

要想在工作中如行云流水,另外一个方面就是避开暂时还不熟悉的技术和工具,不熟悉的东西很难用好,更难用顺畅。尤其是那些纠结复杂、华而不实的技术,不要去碰。这属于简化能力的范畴。

四、工具

选择工具的核心标准,就是简单朴素可信赖

文本格式的设计,加上易于修改的图。 我喜欢用一个简单的文本格式来记录设计,随时修改,随时查阅。而附上几幅简单直接的图,经常能够更简单直接地表达更多的内容。

简单的可信赖的工具。我曾经将很长的时间用来构建Maven的环境上,用Maven管理依赖,尤其是跟Eclipse协作时,经常出现诡异。现在我用ant,或者只用Maven,maven不与eclipse纠缠在一起。如果一个工具出几次诡异现象,那就干脆丢掉它。

版本管理工具。 不仅仅源码要由版本管理,整个项目过程的所有知识,全部用版本管理系统管理起来,集中存放。现在我用subversion和git。

分享到:
评论

相关推荐

    利用VBA提高工作效率

    因此,对于在工作中需要经常使用Office 套装软件的用户,学用VBA 有助于使工作自动化,提高工作效率。另外,由于VBA 可以直接应用Office套装软件的各项强大功能,所以对于程序设计人员的程序设计和开发更加方便快捷...

    太阳能真空集热管热转换效率的计算分析

    采用真空集热管收集太阳能是利用这一新型洁净能源有效技术方法之一,如何提高真空管热转换效率依然是该技术领域一个重要的问题。本文在真空集热管工作原理简要分析的基础上,建立了一个集热管热在平衡状态下的稳态传导...

    Python自动化办公实战课,为希望提升工作效率的职场人士设计的Python办公自动化教程

    这套资源是专为希望提升工作效率的职场人士设计的Python办公自动化教程。它从Python的基础语法讲起,逐步引导学习者掌握变量、数据类型、控制语句等核心概念,并通过实际案例深入讲解如何应用Python处理日常工作中的...

    提高轻负载时效率,降低IC消耗电流的几种方法

    提高效率的方法在于降低损耗。如图3所示,作为发生损耗的问题,可以列举IC的消耗电流、驱动器晶体管导通电阻产生的热损耗,线圈的串联连接而产生的损耗等重大原因。  图3 降压DC/DC转换器的主要能量...

    基于AutoCAD的矿图转换监控模拟图方法探讨

    针对目前安全监控和人员定位系统模拟图在图形转换和使用过程中面临的巷道二次绘制以及手动进行设备重复布点问题...实现了传感器的自动布点以及图元编号和设备的关联,大大减轻了模拟图后期的维护工作量,提高了工作效率。

    quinn:pyspark方法可提高开发人员的工作效率

    Pyspark助手方法可最大程度地提高开发人员的生产力。 Quinn验证DataFrames,扩展核心类,定义DataFrame转换,并提供SQL函数。 设置 奎因(Quinn)已 ,可以使用以下命令进行安装: pip install quinn Pyspark核心...

    铭美图片多功能批量转换软件v1.0免费安装版

    可以将你电脑上的图片快速进行各种修改及处理操作,支持格式、色彩、尺寸、添加水印、添加边框等30多个修改项目,可以一键批量添加图片并修改,有效提高工作效率。 铭美图片多功能批量转换软件使用方法 1、解压...

    清华山维数据转换方法及在数字地形图生产与建库中的应用

    文中以广州市花都区1:500地形地籍调查为例,充分分析了MDB格式数据建库标准,利用清华山维模板控制技术结合VBS二次开发了数据转换程序,实现了地形图制图数据自动化、批量化转换为GIS建库数据,有效提高了工作效率。

    采煤工作面数码摄影地质编录技术研究

    针对目前采煤工作面手工编录方法在效率和精度等方面存在的问题,提出了一种基于近景摄影...实际应用表明,与现有手工方法相比,利用此方法提高了工作面地质编录的工作效率、完整性、准确性,并有利于提升管理的自动化水平。

    一个关于五分制转换的程序源代码

    在长期的工作中,他发现,采用传统的转换方法,效率较低,耗费他大量的时间和精力,所以他想改变他的工作方法,以提高工作效率。细心的他发现,一个班级中学生成绩分布有一定的规律:一般情况下,中等成绩者最多,...

    Macro文件制作方法

    Macro工具(或图标或快捷键)制作完成,建议将自己习惯的一些操作作成自定义工具,以提高工作效率。但是请注意,设置快捷键时,不要和默认的快捷键干涉,也不要去修改默认的快捷键。这样有利于其他同事使用该电脑。 ...

    用数码相机把书上的字快速弄到电脑上转换成文档

    在工作中,我常常在想,要是能把纸上有用的文字快速输入到电脑中,不用打字录入便可以大大提高工作效率该有多好呀!随着科技的发展, 这个问题在不断的解决,例如,现在市场上的扫描仪就带有OCR软件,可以把扫描的...

    使用R语言图片转PDF-批量-快速编程方法的实现

    本教程将覆盖图像处理基础、R语言中的PDF操作函数、以及如何优化处理流程以提高效率。 适合人群:本教程适合具有基本R语言编程技能的个人,特别是那些需要在数据分析和报告中处理和展示图像的研究人员、数据分析师...

    将照片上的字快速转换为可编辑文档.doc

    在工作中,我常常在想,要是能把纸上有用的文字快速输入到电脑中,不用打字录入便可以大大提高工作效率该有多好呀!随着科技的发展, 这个问题在不断的解决,例如,现在市场上的扫描仪就带有OCR软件,可以把扫描的...

    将Pytorch模型从CPU转换成GPU的实现方法

    大家知道,在深度学习中使用GPU来对模型进行训练是可以通过并行化其计算来提高运行效率,这里就不多谈了。 最近申请到了实验室的服务器来跑程序,成功将我简陋的程序改成了“高大上”GPU版本。 看到网上总体来说少了...

    任务分解 单元测试 小步快走,提高开发效率常用的几种方法

    如何提高开发效率?熊节原创,2800字,强烈安利给工作8年以下的程序员:我是IT界“过气网红”熊节,03年我翻译了《重构》,10年2次改版,卖了80多万本。后来我进ThoughtWorks,做到总监咨询师,主导了华为、中兴的...

    论文研究 - 基于树和基于令牌的方法相结合的代码克隆检测方法

    本文提出了这两种方法的组合,以提高检测代码克隆的效率和准确性。 首先,将通过基于令牌的快速而轻量级的方法来提取一些代码克隆的候选对象。 然后,将使用可找到各种代码克隆的基于树的方法来更精确地检查选定的...

    复杂环境下坐标旋转测量控制点的方法

    在矿山井巷、地铁和其他隐蔽狭窄的施工环境中,工程测量精度和作业效率都会受到影响。提出控制点和短边导线测量的新模式,介绍观测...该法的特点是布点灵活,精度可靠,择便设置测站,可提高控制点和导线测量的工作效率。

    Vin电极工具For 野火4.0共享版

    Vin电极工具拆电极和出图纸都是在一套模具的装配下完成的,不用每个工件都要建个装配来拆电极增加不必要工作量, 集合多种电极设计方法,提供...一个工程图文件出完全部电极图纸,用PROE直接打印,提高工作效率,这点最爽!

Global site tag (gtag.js) - Google Analytics