当前位置:首页 > 甜言蜜语 > 正文

技工父亲教会我的5堂课

发布时间:2021-02-26

技工父亲教会我的5堂课

技工父亲教会我的5堂课

我的父亲是一位工程师——是机械工程师,不是软件工程师。在他成为机械工程师之前,他也做过技工和木工。他很聪明,同时在建筑和维修方面也很有天赋(只要不触及到电气便可,不过那就是另外一回事了)。他乃至在60岁时仍然能做围墙、工棚和甲板之类的工作。

当我和我的兄弟还小的时候,他就开始让我们接触一些他工作用的工具,因此,当我们发现需要修复或制作一些东西时,我们有能力做好它。好吧,虽然他在我身上的教育几近失败,但一路走来,我还是学到了很多重要的东西,而且,不管你信不信,这些我学到的东西,在我成为一位优秀的开发者和企业家的路上,让我受益很多。

下面就是我从他那里学到的知识。

第一课:三思而后行

砍柴是一个一次性的工作。只要树木被砍掉,它就不可能再保持原样。因此,很重要的一件事就是,确保你每次的删除操作是无误的。乃至即便你肯定你的做法是正确的,也请你不管如何再做一次评估。重新检查你的评估,确保它正确无误,这样你就能够避免犯一些本可以规避掉的毛病,付出的代价也要小的多。

开发产品也是一样的道理。如果事前不丈量书架要占用的空间的大小,你怎能做出与之大小相合适的书架?如果事前不知道用户的需要,你又何必去开发一个无用的产品?

这个道理已提过很屡次了,我在这里略过。但有个不被常常提及的事情是,你的产品是一组功能的集合体,就像书架是一堆货架的集合体一样。每个功能都应当被认真对待,仔细评估,以确保它适用于受众人群。重要的是不单单在项目开始就搜集反馈,在全部项目的开发阶段,我们都要重视反馈,而不是等到结束了,才想起还有一些不错的创意没有实现。

第二课:粉刷一座建造好的凉亭会很困难

有一次,几个工人在家里修凉亭,他们在凉亭建好后才开始粉刷。爸爸看到后指出,如果这些工人能在这些木头放在地面上就开始粉刷的话,他们就可以节俭1/10的时间,而且效果也会更好。粉刷以后只需做一些连接工作,就能够很快的建造起这座凉亭。粉刷已建造好的凉亭不但又慢又不方便,而且还可能致使出现一些不容易刷到的地方,最糟的是,如果不幸的话,还会把这一切弄得一团糟。

在产品的开发进程中,很容易忘记设计和UI(User Interface用户界面的简称),但这些很重要。以用户为中心的设计就是在设计页面时,以服务用户为第一要务,然后再开发相应的利用来支持这一设计。而以软件开发为优先并把设计放到最后,你将做更多的工作,产品也会存在潜伏的缺点。UX(User Experience用户测试)应当是一个延续不断的进程,不是某个可以随便抛弃的东西。

第三课:让你的项目和工作空间始终保持整洁

在一个杂乱的环境中工作一定会让你的项目结果变得一团糟。如果碎木屑到处都是,你就不可能粉刷好;如果你的工具都满覆油污,你就不可能把拆散的发动机零件再组装到一起;如果你用完工具后不搜集整理好,你可能永久都找不到你想要的螺丝刀。任何一个机修工都会告知你工作在一个整洁的环境中有多么重要。糟的不止是你将花更多的时间用于寻觅放错位置的工具,还会致使更多的损失。

每个开发者的代码中都可能会有一些bug。很多开发者都知道“代码债务”这个名词,它实际上只是从开发者的角度来看待这一块工作混乱的区域。如果你在源头埋下隐患,所酿成的后果不单单是更难发现bug,而且在将来会更容易造成更多的混乱。终究你将不能不清算它们(特别是在你开始你自己的工作前,你将不能不去清算其他人留下的这些bug!)。

想必每个开发者都知道修改他人代码时那种恐怖的感觉,并会心识到他们留下了一堆麻烦等着你去解决。现在花一点时间去整理你的工作空间,将来你会节俭更多的时间。

第四课:始终使用正确的工具(而且在你的工具上别吝啬)

搞砸工作的一个主要缘由就是使用了不恰当的工具。这虽然不言而喻,但很多人就是意识不到这一点。用错了工具后的下场通常是一个灾害。别心疼钱,工作一展开就应当找到适合的工具。

工具选用不当虽然通常都是管理层犯下的毛病,但我们开发者也要为此事负责。毫无疑问,一个用了6年的笔记本运行起来肯定会很慢。即使为一款文本编辑器花了10美元,但却选用了最蹩脚的一款,也不会有助你的工作。节省的这几块钱不会帮你赢得客户的心。最糟的是,利用盗版软件帮你赚钱,这是完全毛病的做法。

今天你可能觉得你节省了一些,但在以后的运营中一定会花掉你更多的钱。找出最合适你项目的开发工具,然后花一些钱(除非它是开源的!)。当项目开始后,节俭会特别具有挑战性。除非你需要,否则别乱花钱,但如果有些工具需要花钱才能使用,那就要选最好的。

第五课:如果方法都不见效,那末去找一个更大的锤子

有时候你卡住了,这意味着你碰到了困难。有时候不管你多么用力,都没法将螺栓拧入螺孔中。有时候不管你多么用力敲打,钉子都不会被敲入。这时候候你仅仅需要一把更大、更适合的锤子。

作为BugHerd的开创人之一,我过去常碰到一些本该寻求帮助的情况。(
)但我挣扎着,我通读手册,看视频录相并参阅博客文章。然后我苏醒了,并意想到不管我做甚么,肯定有其他人在这方面做得比我好。

目前,我们有2位精通JS的同事,他们做的工作,比我们任什么时候候做的都要好。有很多为远程团队协作而准备的优秀的工具,因此,不要找借口说没有适合的同事和你一起工作。有时候,你仅仅需要接受现实,并找到相应的解决办法。

作为一个活跃在专业开发设计社区里的创业者,我常感到像活在培养皿里。偶尔停下来,视察一些较为传统的行业,看看我们能从那些做出出色贡献的先辈那里学到甚么,这也是一个不错的做法。不管我们认为我们有多聪明,也不论他们有哪方面的优点,我们总是能从这些先辈这里学到很多。