编程开发中最浪费时间和资源的7个错误

2024-02-02 15:32

本文主要是介绍编程开发中最浪费时间和资源的7个错误,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



编程开发中最浪费时间和资源的7个错误

我在当地几家公司担任过项目经理,项目主要关于一些用PHP制作的中小型网页。在那段历程中,我见识了很多公司常常会犯这样或那样的错误,既浪费时间又浪费资源。下面我具体谈谈在这些错误中最不可饶恕的7个:

1.不问客户究竟想要什么

一般而言,在签署合同阶段都会有一份关于原始需求的标准性文件。而我们常常会犯的最大的错误之一就是想当然地认为,这就是客户的想法。我的建议是,和客户那边所有的核心员工开个咨询会议,确保客户所有的需求都能成竹在胸。

后期如果想要添加关键功能到几乎已经完成的产品中将需要支付大量额外成本,而这原本是可以避免的。

我记得有一次,只是因为在初期阶段没有考虑一项功能而已,我们的团队就不得不重新设计数据库模型。往事不堪回首啊。

2.没有全局性的章程

早前我在一家小公司工作的时候,因为资源有限,我们的老板总是催我们尽早写代码。通常我们不得不一签好合同就立马开工(有时候甚至更早)。我们常常对客户需求懵懵懂懂一知半解,不过即使我们知道客户究竟想要什么,我们的老板也不会让我们腾出时间为程序员和设计师写需求说明。正因如此,重写代码成了家常便饭。因为没有全局性的章程,所以项目经理给出的解决方案往往没有包括所有的需求功能。

3.不写文档

我还在读大学的时候,就常常听别人说“写文档很重要”。事实也是如此,这一点不言而喻,我就不多说了。但是,假设你突然分配到一个时间紧迫、人员和成本有限,甚至管理层还不同意额外支付加班费用的项目,不写文档这个错误绝对会给你当头一棒:如果在项目进行过程中发生人员更迭或者后期添加人员跟进项目,这都将会耗费公司大量的成本。

从另一个人手里接手源代码而没有任何文档,再也没有比这个更让人吐血的了。

这种情况不仅仅是发生在开发人员身上。我曾经做过一个项目,客户的需求总是变来变去以致于最后的需求说明和原始版本大相径庭,除了都是Web应用,我找不出其他相同之处。虽然我们的讨论一丝不漏地保存于邮件之中,并且也有了最后的产品也照着客户要求做出来了,但是要是我想知道具体什么时候我们做了什么这样的细节,就无从着手了,这变成了一个不可能的任务。所以,在文档中跟踪项目的流程和变化这一点也很重要,它将防止混乱和计费错误。

4.团队中的沟通问题

小公司经常会聘请一些兼职程序员来做项目。此时如果还包括远程工作人员,那么一个合适的沟通渠道就显得更为重要。我曾经不止一遍地向员工强调,沟通是成功合作的关键。有的程序员落后于原定进度时,不告知其他人,从而导致团队相关人员只能坐等他出结果,方可继续工作,这中间浪费的资源可想可知了。

5.工作流程不起作用或者就不设置工作流程

如果你曾经参与过有很多开发人员携手合作的项目,那么对于制定一个良好的工作流程是成功的关键这一说法的重要性就不会质疑。但是在很多小项目中,管理层往往会认为设置工作流程是没有必要的,然后团队效率的低下会让这些家伙自酿苦果:耗费大量的资金和资源。此外,设置以下的规章流程也很重要:内部的沟通、职责和任务的归属、紧急情况响应等等。

举个例子,有一个非常实用的任务管理工具,Trello。它不但能跟踪任务,还可以定义处理程序(如根据说明准备应用软件贯穿于整个编码和测试产品过程)。如果需要使用聊天工具(Hipchat、Slack等),Trello还提供相关整合工具。如此一来,只需要一个交流渠道,就能传递所有信息,这将大大减少浪费在团队沟通中的成本。

6.不做源代码管理

有一种大错特错的观点是源代码管理是没有必要的。事实上,即便我们只有一两个开发人员,如果不使用源代码控制系统,我们很可能会深陷麻烦之中。

还是我的亲身经历,在一个项目中,我们开发的一个版本既能用于开发新功能也能修正补丁,但是我们没有运用版本控制。所以,当某一个开发人员需要更新产品时,他得先做一个手动备份的还原点。这是一个非常重要的应用,每天的访问量成千上万。所以有一次在发现bug、发布修正补丁之后,却发现这个补丁中竟然有未完成的工作,这是一场悲剧,这导致了数据灾难, 严重影响了公司声誉。

没有适宜的源代码管理就像是在玩火——从字面上看就是:你在烧钱!

7.权力过于集中、无替代人员

谈谈我曾经的一份工作,那个老板人非常和善、活力十足、喜欢亲力亲为。他深信,所有邮件都必须由他亲自批复。不得不坦言,就因为权力过于集中,所有流程都需要从他那边走,使之成为了企业最薄弱的环节。而且,一旦有紧急情况发生,甚至没有临时替代人员。

很明显,这位“可敬又可笑“的老板成为了项目的瓶颈。我们总是在等待他处理消息。的确,这对于掌控下属,督促他们好好工作很有好处,但是作为一个领导者,也应该学会信任下属、权力下放。

可以分而治之。掌控所有事是不可能的,特别是在像开发软件项目这类大工程中。

上述这些错误亦有其共同之处:就是犯错误的人缺乏高瞻远瞩的战略性眼光。如果我们不能将时间投入到正确的事情上去,虽然能立马看到削减开支的效果,并对此沾沾自喜,但是不可忽略的是,最后我们所能创造的利润也减少了。做任何事情都应该都大局出发。正确的处事原则有助于建立良好的习惯,而良好的习惯则能让我们圆满地完成任务。这才是一个公司和它的员工真正发展成长之道。否则,一家企业终将只会落得昙花一现的结局。

这篇关于编程开发中最浪费时间和资源的7个错误的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/671172

相关文章

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

C++中RAII资源获取即初始化

《C++中RAII资源获取即初始化》RAII通过构造/析构自动管理资源生命周期,确保安全释放,本文就来介绍一下C++中的RAII技术及其应用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、核心原理与机制二、标准库中的RAII实现三、自定义RAII类设计原则四、常见应用场景1. 内存管理2. 文件操

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件