自由和开放源代码的软件,技能和过时的设备只能带您走远。 在某个时候,每个精疲力尽的程序员都将不得不花一些钱购买必要的计算机软件和硬件。
但是,为满足编程和开发需求而购买合适的工具并不等同于花钱买昂贵的软件,而您和您的团队可能会没有。 无论您是团队的一部分,还是自由职业者,或者是在寻找装备自己的企业,购买所需的软件和硬件都不应该是一件容易的事。
本文重点讨论您可以要求自己做出明智的购买决策以使软件和硬件保持在预算范围内的问题。
问题
人们(尤其是非技术经理,企业主和同事)将工具等同于过度投资或ski漏。 这些简单的方法来查看设备在工作场所中的作用会导致预算不足或工作中断修订的可怕漩涡。
这种想法的一个常见例子就是设备不足的专业人员普遍存在的问题。
假设您的年薪是$ 110,000。 如果您在进行一项需要比当前安装的内存更多的测试的过程中视若无睹,那么您很容易发现自己从事的工作可能会烧毁您的建筑物。
您将获得丰厚的报酬,以弄清楚如何使用已有的资产,对吗? 错误! 即使您或您的公司仅花费500美元来安装工作站,也并不意味着您都在省钱。
真相
在测试时单击“编译”并真正启动程序所花费的时间,对您获得的报酬来说是极大的生产力浪费。 这甚至不是你的错。
您的雇主不应期望您使硬件神奇地完成超出其物理能力的工作。 他们没有买工厂。 他们雇了一个程序员。
事实是,没有得到所需的设备比仅编写糟糕的代码更糟糕。 如果您没有合适的设备,那么您作为程序员的技能只会带您走远。
即使具有出色的编程能力,从长远来看,从一项任务转移到另一项任务也会花费太多时间。 这意味着您浪费了本来可以更快地实现目标的时间。
此外,考虑需要额外的时间来编写自己的程序来解决特定任务,这些任务可以通过现成的计算机软件自动执行。 这最终将对您的思想和身体造成伤害 。
这意味着您应该在设备上进行投资 ,而不是在只有十年的具有1 GB RAM的笔记本电脑上进行编程,因为它“很便宜”。
没有足够的编程优化可以弥补硬件不足的情况。 存在使任务高效的工具。 如果您在没有工具的情况下执行任务,则需要担心的是效率低下的问题。
但是,是什么阻止您或您所在的组织完全获得所需的东西呢?
提防杂物
那就对了。 查尔斯·狄更斯(Charles Dickens)的埃比尼泽(Ebenezer Scrooge)如今还活得很好,并且预算充裕,并希望程序员能够按照自己所提供的去做。 但是,作为杂技演员不一定限于没有技术背景的老板,经理和同事。
甚至您也可能是个傻瓜-阻止自己客观地思考完成工作所需的条件。
当您觉得自己可以花更少的钱做更多的事情时,您可能是个笨蛋。
成为scrooge的良好迹象包括故意依赖过时的设备,因为:
- 只是感觉使用正确(可能不正确)。
- 这是我们以前使用过的,并且在过去(现在不是)中工作得很好。
- 我懒得学习如何使用新东西。 (你为什么还要工作?)
有些人甚至以使用过时的设备执行复杂任务的能力而感到自豪。 虽然能够做到这一点绝对值得称赞,但是一遍又一遍地执行低效的任务几乎是不可持续的。
但是,升级到最新的计算机软件和设备真的是解决您的工作问题的最终解决方案吗?
和维鲁卡盐
另一方面,购买您可能不需要的过多硬件和软件也是一个合理的问题。 这将我们带到了另一端,Veruca盐。
![](https://i-blog.csdnimg.cn/blog_migrate/700b56975bd8fb49bdca0f56318e8b7c.png)
Veruca Salt是指房间里最亮的东西并要求“现在拥有它”的人。 就像吉恩·怀尔德(Gene Wilder)领导的电影《威利旺卡和巧克力工厂》(Willy Wonka and Chocolate Factory)中同名的被宠坏的孩子一样,这个人在寻求三A设备时也势不可挡。
正如我们想称呼这些人是尖端设备的拥护者一样,他们对最新技术的痴迷对完成工作同样危险。 过度使用硬件和软件比您想像的更多。 而且它的效果比享受顶级硬件带来的罪恶喜悦更隐蔽。
仅仅为了追求尖端而购买昂贵的设备很容易使预算膨胀。 肿的预算就像母牛一样,一旦它们太胖,他们就没有太大的移动空间。 这包括没有足够的空间来进行工作调整,这有可能在以后产生成本。
与scrooge一样,您可以轻松地成为团队或组织自己的Veruca Salt。 幸运的是,与那些杂技演员不同,弄清楚您是Veruca盐,更容易实现。 但这并不意味着您的工作场所中的其他人不是Veruca Salt。
现在您知道它们的存在,您如何避免这些不良财务人物的可笑讽刺画?
解决方案
就像现代医学一样,避免资金管理不善的最好方法是预防而不是治疗。 尽管在项目或工作的发展道路上仍可能纠正管理不善的预算,但是无法取代您在任何工作真正开始之前所获得的清晰度。
从经验来看,最好的起点始终是在每个项目或预算周期的开始,其中一个重要的问题是:
好的设备意味着什么?
定义好的设备
好的设备并不一定意味着一流的设备。 如果您可以毫无障碍地运行程序,代码,测试和编译,那么您将拥有不错的设备。
要点很简单:好的设备(包括计算机软件和硬件)正是完成任务所需要的。 不多不少。
为了确定不花费就不会遇到生产问题的时间点,您需要对要求进行限制。 这就是计划的来历。
制定计划
没有什么比清楚地明确定义您的目标以及如何实现该目标的方法更好地了解您需要的设备。
但是开发软件通常不是一个明确的过程。 冲刺和Scrum板之所以受欢迎是解决问题的有效途径,这正是原因。 但是在所有敏捷方法之下,仍然必须存在一个良好的可靠软件实施计划 。
计划可以由团队创建,而团队又可以由项目经理领导。 作为程序员,您有责任与项目经理尽可能清楚地准确地交流您的需求,他们可能不知道每个项目任务所需要的所有具体细节。
那为什么要计划呢? 因为计划包括您的流程,其中包括您需要完成的特定任务。 与这些任务相关的是正确执行它们所需的软件和硬件要求。
您如何真正区分实际需要和感觉需要? 这一部分既简单又简单,就像定义最终产品将是什么一样,复杂到理解一群投资者认为该产品将成为什么样的东西。
因此,请坐下并认真考虑您的工作。 通过问自己以下问题,尝试降低期望值:
- 您期望完成的最终产品是什么?
- 利益相关者对您的工作有什么期望?
- 您完成最终产品之前的任务是否需要专用设备(例如,特定的编译器或应用程序编程接口服务)?
当问自己这些问题时,不要为“假设”预算。 如果特定任务需要特定软件,则应包括该软件,但不要预算看似有吸引力但没有立即使用的东西。 这包括处于高度不确定性任务下的软件。
您应该做的是,一旦遇到问题需要更专业的工具,则预算中留出一些空间来升级到这些产品–如果您一开始就将全部预算都花在了闪亮的东西上,那么这种情况将是无法实现的。
这使我们进入下一部分:升级。
知道何时升级
![](https://i-blog.csdnimg.cn/blog_migrate/301b76e3dd92d67c41f57b9ceaefbba3.png)
获取最新软件对您的工作的危害不如从前。 正如John Sonmez所指出的那样,在最终发布修复程序之前,您不再有可能一次被几个月的无效更新所困扰。
如今,唯一的风险是当您仍未收回初始投资成本时,该软件将被新技术取代。 将来总会出现您的设备屈服于功能蠕变的情况,这就是为什么您在预算中留出空间进行最终升级的原因。 幸运的是,在线购买所需的软件从未如此简单。
如果您保持警惕,势必会以高昂的价格找到您需要的解决方案。 从商店购买现成的计算机软件来完成常见但耗时的任务并没有什么可耻的。 通过购买计算机软件而不是自己动手来支撑自己的实际职责,可以节省大量时间。
明确目标对您的成功至关重要
最后,将软件和硬件的预算控制在预算范围之内,这取决于您已经开发了多少软件技能。 您越能充分地说明为什么需要特定的东西,就越容易获得它-或至少知道您是否需要为实际上听取您需求的其他雇主工作!
此外,除非您自己经营企业,否则如果您无法正确说服人们您的需求,那么所有计划和定义都将毫无意义。 只是简单地将设备清单交给采购,而没有明确的解释,这是确保您的申请被拒绝的肯定方法。
最好的起点始终是牢记目标。 有了明确的目标,您总是可以放心地掌握基本知识以完成工作。
翻译自: https://www.javacodegeeks.com/2019/07/programmers-guide-keeping-computer-software-budget.html