惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
CXSECURITY Database RSS Feed - CXSecurity.com
Security Latest
Security Latest
V
Vulnerabilities – Threatpost
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
L
LINUX DO - 最新话题
N
News and Events Feed by Topic
P
Proofpoint News Feed
G
GRAHAM CLULEY
NISL@THU
NISL@THU
S
Securelist
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Schneier on Security
Schneier on Security
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Application and Cybersecurity Blog
Application and Cybersecurity Blog
T
Threat Research - Cisco Blogs
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tenable Blog
Google DeepMind News
Google DeepMind News
Hacker News - Newest:
Hacker News - Newest: "LLM"
Help Net Security
Help Net Security
C
CERT Recently Published Vulnerability Notes
T
The Exploit Database - CXSecurity.com
I
Intezer
阮一峰的网络日志
阮一峰的网络日志
AI
AI
PCI Perspectives
PCI Perspectives
Hacker News: Ask HN
Hacker News: Ask HN
aimingoo的专栏
aimingoo的专栏
宝玉的分享
宝玉的分享
博客园 - 【当耐特】
腾讯CDC
The Cloudflare Blog
Spread Privacy
Spread Privacy
Latest news
Latest news
有赞技术团队
有赞技术团队
D
Docker
Cyberwarzone
Cyberwarzone
L
LINUX DO - 热门话题
S
Secure Thoughts
Hugging Face - Blog
Hugging Face - Blog
K
Kaspersky official blog
M
MIT News - Artificial intelligence
N
News | PayPal Newsroom
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
SegmentFault 最新的问题
J
Java Code Geeks
S
Security Affairs
The Register - Security
The Register - Security
云风的 BLOG
云风的 BLOG
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

博客园 - oec2003

读《有效需求分析》 重读《打造 Facebook》 dotNet Core 3.1 使用 Aspose (部署 Docker) dotNET Core:编码规范 程序员是终身学习的职业,应该怎么学习? 一款用了就不想走的工具 dotNET:怎样处理程序中的异常(实战篇)? dotNET:怎样处理程序中的异常(理论篇)? Nginx:rewrite 的几个技巧 如何激发团队潜能? dotNET Core 3.X 使用 Autofac 来增强依赖注入 dotNET Core 3.X 依赖注入 读《鞋狗》 Jenkins 中以构建 Tag 来实现版本管理 dotNET Core 3.X 使用 Jwt 实现接口认证 dotNET Core 3.X 请求处理管道和中间件 dotNET Core 3.X 使用 Web API 程序员还有35岁的坎吗? 远程办公也可以高效
为什么这么忙,还依然做不好事情?
oec2003 · 2020-09-30 · via 博客园 - oec2003

一直都很喜欢《重来》系列,最近出了《重来3:跳出疯狂的忙碌》,第一时间在微信读书中阅读了,让我们印象比较深刻的就是「冷静」和「效率」,本文主要说说效率的问题。

书的作者是贾森·弗里德(Jason Fried)和戴维·海涅迈尔·汉森(David Heinemeier Hans-son),37signals 公司的创始人。他们推崇的一些理念和企业文化是很多国人所羡慕的,比如:

  • 认为每周工作 40 小时就足够了;
  • 不做不值得做的事情,不要让自己看起来非常的忙碌;
  • 在夏季享受 3 天长周末;
  • 推崇远程办公;
  • 反对工作狂,倡导公司管理者建立更为冷静、高效的企业文化;
  • 减少浪费,减少干扰和持续压力做事;
  • ...

在很多人看来这些做法是不可思议的,即使是这样,这家公司从创业开始起就是持续赢利的。说明即便是远程办公,即便是不用 996 ,他们也能进行高效的协作和产出。这种高效是我们需要思考和学习的。

由于一些原因,一个项目几经周折,最后由产品团队来进行收尾,我也参与了部分代码的编写和一些遗留 Bug 的解决。当然也少不了加班加点,最近项目告一段落,思考下来,很有感触。

业务的理解

技术人的目标是要实现业务,所以要充分理解业务,再厉害的技术也是为了实现业务目标,否则就没有价值。理解业务才能做好规划和设计,才能以高效率的方式去编码,才能减少反复。

道理谁都明白,但一做起来,很容易只管技术细节,包括一些高级开发人员也是如此,最直观的体现就是:开发完功能,但不知道功能是干嘛用的。脱离了客户真实的使用场景去思考和验证,所有的点都完成了,面不一定是完成的。

我认为不管是哪个级别的开发人员,都应该对业务有深刻的理解,才能事半功倍。

没有哪个项目是不”急“的,越急越容易乱,越急越容易采用看起来很方便的方式去行事,因为梳理业务需要花时间、代码的架构设计需要花时间、前后端的规范定义需要花时间,最终就是钝刀子砍柴,又累又慢。

持续下去就会变成一种进退两难的境地,想重头进行梳理和调整,又怕”浪费“更多的时间,维持现状只会做更多的无用功。

所以,一旦发现有这种”急“的征兆,就一定要先冷静下来,做好规划和设计,再动手也不迟。很多时候”急“只是我们为自己偷懒找的一个借口而已,相比较分析、规划、设计、直接写代码是相对容易的事情。

自我验证

开发人员通常都非常的自信,会很干脆的回答:问题搞定,绝对没有问题;这次真的没问题了。话音未落,测试就已经发现业务走不通或者其他的关联点又坏掉了。

代码写完就等于功能做完了,这是一个很大的误区,一种情况是业务不了解,不知道怎么验证;另一种情况是想着反正有测试,提交代码让测试进行验证。我对测试的理解是:

  • 测试只能证明 Bug 存在,不能证明 Bug 不存在;
  • 测试是最后一道屏障,而不是发现 Bug 的机器;

每个人都应该对最终结果负责,有责任和义务对自己的代码按照业务的角度去进行自测和验证。盲目以为快速提交代码就是效率高,殊不知,不停地反复,会造成多方资源的浪费,效率低下。

执行力

任何事情再怎么分解,都需要团队协作去完成,说团队的执行力不行,原因一定不是团队成员,而是团队 Leader ,目标是不是分解的很清楚,比如说:张三,你下楼去买点水果上来,只要张三有钱、能走路、知道水果摊在哪,就能去执行。所以,只要满足下面两点,就不存在执行力的问题:

  • 目标需要清晰
  • 分解的目标有能力做到

目标清晰体现在双方的理解可以达成一致,所以需要尽可能的细化,越是宏观的,抽象的,不同的人理解就会不一样,理解不一致造成的反复是低效的一个很重要的原因,所以这一点非常重要。

有能力做到,需要 Leader 对成员有足够的了解,能够根据轻重缓急合理地分配任务。能让每个人既能胜任,又有所挑战,是一件挺难的事。

干扰

最后说说干扰,在《重来3》中也提到上班时反而没法完成工作,

问问人们在必须完成工作的时候会去哪儿,你极少能听到这个答案:办公室。没错。当你必须把工作做完的时候,你极少会去办公室。如果必须去的话,也是在清晨、深夜或周末的时候。只要>是没别人在的时候就行。而在这种时候,它甚至已经不算是“办公室”了,只是一个无人打扰的安>静空间。

常见的一些干扰:

  • 嘈杂的办公室环境;
  • 手机各种 App 的消息;
  • 同事的咨询;
  • 各种工作群的消息。

曾经一段时间,我大部分的工作是下班后完成的,一天下来,回想一下,好像非常的忙,但又感觉什么事都没做。当然面对上面的一些干扰,也有一些解决方法:

  • 买一个降噪耳机;
  • 手机调成静音,但更重要的是自己要克制,不能习惯性地去看看;
  • 沉淀文档,让一些常见问题,可以通过查阅文档的方式找到答案,固定时间解答同事的问题;
  • 阶段性地查看群消息。

总结

作为一个技术人,要想办法去”偷懒“,正确地去”偷懒“,找到”偷懒“的途径和方法,这个过程是困难的,需要不断地思考、总结、实践,等真正学会了”偷懒“,也就高效了。