
权力的过渡充满了困难。不同的团队有不同的价值观、不同的经验、不同的专业知识、不同的优先级,这就导致了不同的工具和不同的方法。
人们很容易把网页设计看作一个端到端的过程,从研究开始,以指标结束。现实情况是,大多数设计人员和开发人员是在一个正在进行的过程中加入项目的。
这给我们留下了一个艰难的选择:我们是尝试用我们自己的工具集满足客户的期望,还是适应已经到位的工具和过程?
对于任何从不同的设计师/开发者/机构(D/D/ a)接手web项目的人来说,这里有一个实用的指南,可以帮助你成功地完成过渡。
第一步:找出问题所在
在99.99%的情况下,之前的客户-D/D/A关系会出现问题。
根据我的经验,这几乎与钱无关。大多数客户都愿意支付高于基本市场利率,如果他们相信他们的投资得到良好的回报。一个客户告诉你之前的D/D/A太贵了,他是在期待和你谈判费用。
快乐的客户不会货比三家
偶尔你会发现一个自由设计师已经被一家机构挖去了,而且再也找不到了。有时候,公司的发展超过了承兑交单,进入了承兑交单不支持的领域。但是这种情况是很少见的,快乐的客户——即使是适度满意的客户——也不会货比三家。如果他们跟你说话,一定有什么东西促使他们这么做。
承兑交单擅离职守是令人担忧的普遍现象。这在低端市场最为常见,因为涉案金额不太可能引发法律纠纷。通常情况下,一个不受欢迎的D/D/A会让客户对一个更好、更新的机会失去兴趣。
有时客户雇佣了一个新的经理,而新的经理引入了修改后的期望,这是以前的D/D/ a不能满足的。
最常见的情况是,之前的D/D/A犯了很多次错误,只要能及时纠正错误,理性的客户就会容忍,但每个人都有限度。
当你和之前的D/D/A对话时,要注意你是在从他们的口袋里掏钱。当然,之前的D/D/A可能会告诉你该怎么做,他们可能会完全忽视你,但大多数人在移交项目时会很务实,只要能确保他们的最终发票能及时支付给现在的前客户。
每个网站都有自己的特点,如果你能与之前的D/D/ a建立一个友好的关系,那么这个过渡将会大大减少坎坷。
谁控制域名?
在我看来,公司的域名应该一直由公司持有;它是一项重要的商业资产,应该像公司的银行账户一样小心谨慎。
不幸的是,有些公司把与网络有关的一切都外包出去。如果与之前的D/D/A的决裂是激烈的,那么保护域名可能是有问题的。
保护域名不是你的工作——你没有杠杆,客户有。你的工作就是让客户对你的域名印象深刻。
谁控制主机?
主持安排因项目而异。以前的D/D/A在他们自己的空间上托管客户的站点,这并不少见,也不是不合理的。如果是这种情况,请准备好快速将其迁移到您自己的服务器或专用空间。
如果您要迁移到一个新的空间,请特别注意电子邮件条款。接管一个项目通常意味着接管一个正在进行的项目,这通常意味着电子邮件帐户。
在任何情况下,您都需要完全访问主机空间。您当然需要FTP访问,也可能需要SSH访问。
除了托管,检查你的客户的网站是否使用了CDN,如果使用了,谁控制它。
后端源代码
一旦您拥有了对托管服务器的FTP访问权限,您就可以从服务器获取所有后端代码。
从服务器获取代码(而不是从以前的D/D/A接收文件)的好处是,您可以绝对确定您获得的是当前的(工作的)代码。
如果客户因为无法交付某项特定任务而中断了之前的D/D/A,那么您肯定不希望处理那些部分被修改过的文件。
新安装
如果您使用的是CMS之类的工具,那么最好在服务器上运行一个全新的安装程序,然后跨模板、插件进行复制,然后迁移数据库。
前端代码
当涉及到获取源代码时,前端代码比后端代码更有问题。
前端代码比后端代码问题更大
如果之前的D/D/A甚至有部分能力,那么web空间上的CSS和JavaScript就会缩小。缩小的CSS是不太有问题,可以unminified相当容易,但你不想要理清一个缩小的JavaScript文件——我曾经有过一个项目的开发人员已经缩小自己的代码在同一个文件中与他的所有依赖项,包括Vue和jQuery(是的,我知道)。
如果你发现之前的D/D/A使用了你不使用的技术——使用Less代替Sass,或者在TypeScript中编写脚本,那么处理前端源代码会有额外的维度。
取消缩小CSS和JavaScript
不缩小(或美化,或美化)代码相当容易。有一些在线工具可以帮助你,包括unminiify,在线CSS Unminifier, FreeFormatter, JS Minify unminiify等等。您还会发现许多代码编辑器的扩展,包括用于Sublime文本的HTML-CSS-JS美化,以及用于Atom的Atom美化。您将发现一些编辑器具有内置的功能。
警告:代码美化不会恢复注释,对于JavaScript,也不会使变量名变得清晰。美化代码不能替代原始的,未缩小的源代码的副本。
紧急措施
如果由于任何原因不可能取消缩小的源代码,或者更有可能的是,未缩小的JavaScript仍然看起来像缩小的代码——尽管格式化得很好——那么最后的办法是导入代码并在必要的地方覆盖它。
在这种情况下,首先要做的是向你的客户解释情况。确保他们理解这是一个临时补丁,你将在重建项目的部分时解决它。
然后,复制并粘贴旧的缩小代码到一个新的项目设置。对于CSS来说,这可能意味着创建一个传统。包括旧的CSS文件,并将其导入到您自己的Sass中。对于JavaScript,创建一个legacy.js文件,添加所有旧的JS,并导入它。
这将导致产生比需要的更大的文件集,您可能最终会在样式声明中使用!important[讨厌],并且会触发许多关于剩余代码的灯塔式警告。
然而,如果您的客户昨天有一长串他们想要的更改,那么这个肮脏的hack将为您提供一个工作站点,然后您可以随着时间的推移一点一点地重建该站点。
资产
资产通常意味着图像,而图像通常可以通过FTP获取。
偶尔——尽管现在图像文件很少包含文本——您将需要源文件来更改图像。
客户是否有,或者之前的D/D/A是否会转交,很大程度上取决于客户和之前的D/D/A之间的协议。
大多数企业都很清楚品牌资产的重要性,所以你可能会发现他们至少有一个他们的标志的副本;它是SVG还是JPG完全是另一回事。让他们记住为你找到那些文件的重要性。
第三方代码
很少有项目不依赖于第三方代码。第三方代码可能与定制源代码交织在一起,拆解它是一项耗时的工作。
很有可能之前的D/D/A使用了一个库或框架,考虑到它们的数量不断增加,它们使用的库或框架更有可能不是你喜欢的那个。
您是否选择分解代码并根据您自己的偏好替换之前的D/D/A依赖(通常在长期内更快),或者您是否选择使用您所得到的(通常在短期内更快),这完全取决于您。
根据我的经验,选择另一个CSS库并不困难;从一个JavaScript框架切换到另一个JavaScript框架是一项更大的工作,不仅涉及语法,还涉及核心概念。
当心构建环境
每个人都有自己做事的方式。有些D/D/As包含构建环境,有些则不包含。有些构建环境使用起来很简单,有些则不然。有些构建环境可以适应您的流程,有些则不能。
与采用库,甚至框架不同,采用新的构建过程很少是一个好主意
构建环境有很多——Gulp、Grunt和Webpack都很流行——而D/D/As对它们的看法就像对CMS一样固执己见。
为了代替原始文件,前面的D/D/A常常告诉您“只需运行这样或那样的CLI”命令,以使您的本地环境与它们的环境匹配。与采用库,甚至框架不同,采用新的构建过程很少是一个好主意,因为当您还没有赢得新客户的信任时,您正在把自己从专家降级为新手。
坚守阵地。他们的方法失败了,所以你才被请来。你你。
许可是谁?
任何付费的第三方代码都是许可的。经常检查谁持有这些许可证。除了合法要求外,更新、bug修复和某些情况下的支持通常都需要有效的许可。
常见的陷阱包括:字体许可(可能在之前的D/D/A的Creative Cloud, Fontstand, Monotype等帐户下授权);库存图像许可证(可能仅供以前的D/D/A使用);和插件(通常以包的形式批量授权给D/D/)。
发现客户使用未经许可的资产是令人沮丧的普遍现象。在不止一个场合,我不得不向客户解释使用盗版字体的潜在后果。
幸运的是,第三方供应商将许可证附加到指定域上的情况越来越普遍,这意味着您可以代表您的客户申请许可证。主要的供应商,如CMS和电子商务解决方案,通常有一个选项,让以前的开发人员发布许可证,并允许您声明它。
在许可的情况下,如果你不确定,不要害怕联系第三方供应商,一旦你的客户与他们之前的D/D/A协议断绝关系,你就可以询问他们是否有许可。
唯一比告诉他们他们需要购买一个他们认为已经付过钱的授权更快地破坏客户关系的是告诉他们他们被起诉侵犯版权。
保护你的客户,保护你自己,通过确保一切都是正确的许可。如果你能从以前的D/D/A中得到这样的书面答复,就去做吧。
谁负责研究和分析?
与从头开始构建不同,接管站点的一个主要好处是,您有一组可测量的特定于站点的数据来指导您的决策制定。
这只适用于你有数据的情况,所以要求添加到客户的分析账户。
之前的D/D/ a所进行的设计研究很有可能被之前的D/D/ a视为内部文件,而不是可交付成果。和你的客户核对一下:如果他们为研究付了钱(发票上有写明吗?),那么他们有权得到一份副本。
我们也有博客…
客户倾向于用“网站”这个词来概括所有的数字内容。
当你为一个网站负责时,你几乎总是被期望为客户使用的任何数字服务负责。这意味着,像Mailchimp这样的通讯服务,像Intercom这样的客户服务账户,以及227,000个他们在最初的简报中忘记提及的WordPress博客页面。
对于每一个额外的应用程序,微网站,博客和其他客户端拥有的东西,重复整个步骤2,除非客户明确告诉你不要这样做。
第三步:不能回头的地方
到目前为止,你还没有让客户在虚线上签字。这整个过程都是你尽职调查的一部分。
通过检查这些内容,您可以确定不可预见的问题和潜在的成本。您是否被捆绑在一个模糊的构建过程中?CMS是否需要重新授权?您需要重新创建所有的站点资产吗?
有些这样的对话很难进行,但现在正是进行这些对话的时候
如果有任何项目比预期的复杂的问题,与你的客户进行诚实的对话——他们会欣赏你的透明性,他们也会欣赏被告知的情况。如果一个客户不清楚自己付钱给你是为了什么,那他就不是你想要的客户。
有些对话是很难进行的,但现在是时候进行了,而不是三个月后。
这是不能回头的地方。从现在起,任何问题都不再是以前的承兑交单问题,而是你们的问题。
更改密码
对于你拥有的每一个服务,从通讯登录,到CMS登录,到FTP详细信息,修改密码。(一定要通知客户。)
建立一个暂存站点
您需要一个准备站点,以便您的新客户端可以预览您为他们所做的工作。
在对代码进行任何更改之前,立即设置staging站点。在这样做的过程中,你会很早就发现是否有文件丢失,或者文件存在问题。
成功地过渡一个项目
当客户委托一个网站从零开始,他们充满了期望。他们离开之前的承兑交单来找你,说明他们的经验没有达到他们的期望。
现在,您的客户对您的期望是现实的,甚至是悲观的。你有一个基准,可以客观地衡量你的工作。
当问题出现的时候(他们总是会出现的),永远不要责怪之前的承兑交单;在你开始工作之前,你的工作是评估游戏的状态。如果遗留资产存在问题,您应该尽早将其告知客户。
如果你从以前的D/D/A的错误中吸取教训,你就不会很快把项目交给别人。
