0

    一个IBM程序员的高(tou)效(lan)法则

    2023.04.14 | admin | 141次围观

    B. 继续敲代码,晚点再说。

    选 A,你可能会跟妹子断断续续聊一下午,白天写 bug,晚上加班改 bug;选 B,如果忘记回复妹子,你可能会继续单身。简直难以抉择嘛对不对!所以说,单身不是程序员的第一生产力,单身且无心仪对象才是,符合这种条件的程序员比较容易达到四大皆空的状态,可以专心致志地与代码愉快玩耍。

    • 使用鼠标。 程序员对外套也许没有追求,对外设却有一份特殊感情。他们对青轴、茶轴键盘如数家珍,也知道哪家的鼠标手感最佳。但需要意识到的是qq空间打不开 应用程序错误,一款昂贵的鼠标可能会让你在玩游戏的时候如虎添翼,但是对于编程工作来说,它并不是那么必要的物件。Sebastian 是一名键盘流程序员,并且他也鼓励其他程序员这么干,理由很简单——在键盘上打字、使用应用程序提供的快捷键,比起用鼠标单个单个点,不是高效得多?如果你熟悉了代码定位和文档操作的快捷键,脱离鼠标编程是完全可以实现的。所以从某种方面来说,鼠标的发明降低了程序员的生产效率。

    当然,除了本身的原因以外,影响程序员工作效率的还有一些外部因素。

    比如,工作环境。每一个合格的牧场老板都知道,要想奶牛产出优质的牛奶就要给他们提供一个优美的环境,这样一来,奶牛心情舒畅,吃草更香,产出的牛奶也就更多也更香了。奶牛况且如此,更何况是人?没有良好的工作环境qq空间打不开 应用程序错误,程序员怎么能专注于生产代码呢?鉴于很多程序员都会自带心爱的键鼠套装,我们就以另一与程序员身体接触时间最长的配套设备来举例子,对,就是椅子。虽然有的程序员站着写代码,有的程序员蹲着写代码,但大多数程序员还是坐着写代码的,一把好椅子不管对程序员的腰还是程序员的臀而言,意义都十分重大。虽不奢求公司给配 6800 一把的高端座椅,但坐着 9.9 包邮的椅子,还想我写出价值 999W 的程序?哼。

    是人都不喜欢开会,程序员也不例外。需求会、分享会、讨论会、周会、项目会……偏偏程序员要开的会那么多,时间还那么长,也看不太出这些会议对日常工作有什么积极影响。开一个会的时间,我能写 1000 行代码了好吗!频繁开会妥妥就是效率杀手!

    就这样,在内部因素和外部因素的双重夹击下,你一步步地变成了一名 0.5 倍速程序员……

    做一个会偷懒的高效开发者

    如上所述,很多 0.5 倍速程序员的出现并不是因为他们在上班时间摸鱼了(当然部分确实是),也不是因为懒惰,而是因为他们没有找到提高编程效率的正确方法和心态。

    德国以效率著称, Sebastian 恰好就来自德国。他擅长用工具来节省自己的时间和精力。回顾一下自己手头的工作,你是不是也花费了大量的时间来执行重复的任务?为什么不尽可能多地采用自动化的方式和一些小工具来解放自己?

    Automator:Automator 是 macOS 附带的小工具,只要通过点击、拖拽等操作就可以将一系列动作组合成一个工作流程,从而帮助你自动化完成一些复杂的工作。

    Alfred:Alfred 是 macOS 上的一个多功能生产力应用程序,强大的工作流机制是它的主要优势之一。你可以通过热键、关键字、文本扩展等功能提高效率。搜索 Mac 和网络,并通过自定义操作来控制 Mac 来提高生产力。

    Command line: 它非常讨人喜欢,原因有二,一是编写脚本自动执行频繁的工作比使用鼠标或图形菜单反复执行某些任务更有效率,程序员的生活因此变得更加轻松和快捷。二是使用命令行能让你看起来更专业更 geek 更容易把妹。温馨提示:远离 rm -rf / ,珍爱生命。

    Vim:Vim 虽然是一个很早期的编辑器,但是现在仍在流行着,谁叫它方便呢?它的大多数命令是一个字母,程序员在使用它的时候手指无需离开主键,而在其他编辑器中,你还得使用鼠标,停止键入、寻找鼠标、查看屏幕、寻找光标,这一整套动作活脱脱就是上下文切换。不过,VIM 最大的缺点是学习曲线太陡峭,比较劝退。

    Paw: 一站式 HTTP/REST 服务测试工具。Paw 具有功能齐全的可视化编辑器和 HTTP 工具集,可以让 Web 开发者模拟发送各种 HTTP 请求、测试和迭代自己的 API 或探索新的 API,测试响应数据。另外,Paw 能多人协作,同步 API 测试配置,进行无冲突的更改并获取实时更新。

    Dash: 一个好用的 API 文档浏览器和代码段管理器。程序员经常查看各种 API 文档,Dash 可以帮你从繁琐的搜索中解脱,它基本覆盖了所有主流和非主流语言、框架和库的文档。你还可以生成自己的文档集、请求文档集或从第三方来源下载文档集。

    aText :aText 是一个文本扩展应用程序,通过将缩写词替换为我们定义的常用短语来加快键入速度,使用它你可以节省更多时间用于更重要的工作。aText 体验很不错,谁用谁知道。

    实用的小工具太多了,这里就不一一列举了。

    另外,生活习惯的良好与否也会影响程序员的工作效率,其中一条就是多喝热水。程序员爱咖啡是出了名的,IT 圈流传着“喝的是咖啡,产的是代码”这样的段子,但咖啡不比白水来得健康,过量摄入会对身体造成负担。佐治亚理工学院最新研究表明,脱水会对人体的基本功能产生巨大的负面影响,造成认知能力受损等问题。定时喝水可以帮助程序员避免脱水工作,注意力更加集中,记忆力也更好。而且,刚接完需求的你不正好需要一杯水来压压惊吗?所以,为什么不用 geek 的方式提醒自己喝水呢?

    /remind me "It's time to drink some water!" at 9 am every day
    /remind me "It's time to drink some water!" at 11 am every day
    /remind me "It's time to drink some water!" at 13 pm every day
    /remind me "It's time to drink some water!" at 15 pm every day
    /remind me "It's time to drink some water!" at 17 pm every day

    从“Hello World!”到 Hello World!

    因为编程效率的提升,Sebastian 可以腾出很多时间来做一些别的事情。

    比如写写技术博客,发发 newsletter 或者 Twitter,这些非工作性质的事情给他带来了许多掌声和关注者。但 Sebastian 表示,获得外界认可并不是他的初衷。在他的眼里,输出技术观点是学习的最佳方式,因为这会迫使你更加深入地了解和梳理你的经验,通常这些经验只存在你的脑子里,它们是杂乱无章的。

    他经常在各种技术会议上演讲,他认为这对程序员来说也是一项非常重要的技能,一部分原因同上,另一部分原因是可以帮助程序员提高交流能力和表达能力,很多开发人员非常擅长实现复杂的解决方案,但却不能很好地解释它们,这一点在国内的程序员身上的表现尤其明显。可是,一个不善言辞的程序员怎么能在跟产品经理,业务分析师,QA 的 battle 中占据上风呢?怎么能顺利走向技术领导的位置呢?

    Sebastian 还会组织 JOnsen 和 jSpirit 这样的小型非会议。与大型会议不同,非会议的过程类似于开放空间技术,组织工作要少得多。当然,还是有一些麻烦的后勤问题,但是能够与全球各地的 Java 开发人员建立联系,邀请他们参加这些看起来不那么正规的非会议,碰撞出新的想法,所耗费的精力和时间都是值得的。Sebastian 非常喜欢这种形式,相较于在常规会议上发言,它不侧重于专业人士和嘉宾,更加轻松,这是一种很好的平衡。

    由于他在 Java 社区和 Java 生态中的贡献,Sebastian 被确认为 Java Champion,Oracle Developer Champion 和 JavaOne Rockstar。这里科普一下上面 3 个奖项:Java Champion 是为了嘉奖那些为推动 Java 社区进步作出卓越贡献的人。许多获得这一荣誉的人热衷于在博客、视频或者各种技术会议中分享自己的 Java 使用心得。Oracle Developer Champions 现在换了个名字,叫做 Groundbreaker Ambassadors,这个奖项和 Java Champion 相似,是 Oracle 给予推广了自家技术的外部人员的荣誉。而 JavaOne Rockstar 是为了表彰那些在技术会议中获得与会者高度评价的演讲,2016 年,Sebastian 连续两次获得这一殊荣。

    因为“hello world”,Sebastian 能够跟世界打招呼——Hello world!当他不从事编程工作时,他会乘飞机或摩托车环游世界。到目前为止,Sebastian 已经去过 47 个国家,而且这个数目还在增加,他甚至记不清自己游玩过的城市有多少了,那是一个难以计算的数字。

    在旅途中,他经常经历有趣的故事。

    “自从我开始旅行以来,才发现一年的时光可以这么丰富,一年的回忆可以包括这么多的地方、故事和冒险。就我个人而言,这是一笔不错的额外奖励。而我在路上学到的另一件事是,每一个地方,每一个城市,每一个国家都是美丽和有趣的,都有自己的方式。我试图在我旅行到的每一个地方都找到一些令人惊讶和喜欢的东西。我喜欢再次回到一些地方,沉下心来享受这个地方的独特性。你可以在任何地方遇见有趣的人,只要你心胸开阔,对他们的个性、习俗和故事真正感兴趣。”

    “总的来说,编程让我收获了精彩的人生,我对程序员这个身份的选择十分满意。”

    最后,Sebastian 做了一个总结。他认为,一般来说,高效地工作是有意义的,但同时也要合理地使用节省下来的时间。如果一个人更有效率的话,他肯定可以享受更多的时间。

    采访嘉宾:Sebastian Daschner 是 IBM 的 Java 开发技术推广工程师,同时也是一名顾问、作者和培训师。他是《架构现代 Java EE 应用程序》一书的作者。Sebastian 正在参与开源项目标准化进程,例如 JCP 或 Eclipse 基金会, 帮助形成企业级 Java 的未来标准,并在各种开源项目上进行写作。由于他在 Java 社区和 Java 生态中的贡献,他被确认为 Java Champion,Oracle Developer Champion 和 JavaOne Rockstar。除了 Java,Sebastian 也是云原生技术和与各种企业软件相关东西的重用户。他通常会在个人博客、newsletter 和 Twitter(@daschners)上宣传计算机科学实践。Sebastian 启动了 JOnsen 和 jSpirit 会议,这些会议连接了全球范围内的 Java 开发人员。

    在 QCon 上海 2019 的演讲中,Sebastian 将以 Java 编程为例,分享一些普遍适用的原则,遵循这些原则将使您作为一个软件开发人员更加有效,并最终使您的工作更加愉快。

    QCon 日程目前已上线,这里还能探索 Scala 和反应式架构、冷门但独特的 Pony、使用 .NET Core + Senparc.Weixin 快速开发微信小程序互动应用、Go 工程项目实践,点击「阅读原文」或识别二维码来 QCon 上海 2019 看各个互联网公司一系列经历实战考验的实践。大会 报名倒计时,团购享优惠,有任何问题欢迎联系票务小姐姐 Ring:17310043226(微信同号)

    点个在看少个 bug

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论