以下是对 Josh Collinsworth 精彩文章的回应,您可以在这里找到。
我决定通过引用他在文章中提出的每一条摘要引用来构建此内容,并以我的观点回应每一条引用。
因此,本文应被视为一系列表明个人观点的想法。在报告的 12 条引用中,我发现自己同意 ✅ 8,不同意 ❌ 3,并且对 没有意见? 1。
[TL;DR] 我总体上同意作者的意见和他的观点,尽管在某些情况下文章所创造的扭曲观点导致我不同意某些陈述。在我看来,对偏见的分析造成了作者对发展世界同样多的偏见。
✅ 我完全同意这个说法。
前端长期以来被认为是后端的“小兄弟”,这是一个错误。前端是最终用户看到并与之交互的应用程序的一部分,因此是产品成功的基础。它的重要性不可低估,但这种情况经常发生,我自己有时认为我作为前端开发人员的工作“不如”我在后端所做的事情。
为什么会出现这种情况?从我的角度来看,我相信这是因为在过去的十年中,前端开发的世界已经被框架和库入侵,这些框架和库使每个人的工作变得更简单、更容易访问。这导致解决了许多过去出现的问题,导致前端开发变得“更简单”。这导致前端开发人员的角色被贬低,他们通常被视为“代码猴子”。然而,简单并不意味着容易,前端开发人员经常被要求解决复杂的问题并做出重要的决定,正是因为他或她不再被期望解决框架已经解决的“简单”问题,而是以新颖和创新的方式丰富用户体验。
✅ 在这里,我也同意。
CSS 是 Web 开发领域中最被低估和贬值的语言之一。 CSS 是一种强大而复杂的语言,它允许您创建复杂而详细的用户界面。然而,与正常的代码编写方式相距甚远,其特定的语法和操作逻辑往往导致其难以掌握和使用。 CSS 是一门需要时间和奉献精神才能掌握的语言,CSS-in-JS 运动所发生的事情是一个明显的例子,说明社区如何试图通过创建一个不存在的问题来解决这个问题。新的语言,同时还为已经非常复杂的语言添加抽象。
✅ 我同意。
正如前面引用中提到的,我认为CSS的问题是由于它的操作逻辑和特定的语法造成的。问题在于,与 JavaScript 相比,它通常被视为一种“第二”语言,而实际上它本身就是一种语言,有其规则和特性,并且需要与编程相当的学习时间。 CSS是一门强大而复杂的语言,其作用不可低估。
✅ 我部分同意。
说实话,我认为这个主题比作者说的要明确得多。事实上,我经常发现自己不得不与那些认为前端与后端相比是“次要”工作的人争论,他们认为前端开发人员不应该是程序员,而应该是支持那些真正从事后端工作的人。当他们问我的角色是什么时,我总是回答全栈,因为在我的训练和成长中有各种各样不同的元素,硬币的两面对我来说都很重要。
我相信社区需要采取更多措施来消除这种心态。前端开发人员在各方面都是专业人士,他的工作是产品成功的基础。
前端开发人员需要在不断发展的工具的支持下解决复杂的问题(这大大增加了认知负荷),并做出直接影响用户体验的重要决策,这是成功产品的堡垒。
✅ 我同意。
缺乏对角色和责任的理解在我们的行业中起着根本作用。前端开发人员经常被视为“艺术家”、“创意人员”,他的工作被贬低,因为它不像后端开发人员那样“技术性”。这是两个方面的错误。
首先,决定应用程序设计的往往不是前端开发人员,而是设计师(UX、UI,随你怎么称呼)。前端开发人员需要将设计转化为代码,并以高效、高性能的方式进行。这需要技术技能和特定知识,这远远超出了简单地编写代码的范围。
其次,正如上面已经提到的,前端开发人员的职责通常远远超出了简单地编写代码。如果我修改后端应用程序中的代码,自动测试很可能会比我更早地注意到任何回归。如果我修改前端应用程序中的代码,很可能注意到任何回归的唯一方法是手动测试应用程序或等待最终客户的报告*。这使得前端开发人员的工作比人们想象的更加复杂和艰巨。更不用说大量的业务逻辑和状态管理——两者都迅速涌入前端——这使得该角色与业务越来越融合。
*注意:我很清楚端到端测试的存在,但它们的实现比传统的自动测试复杂得多,成本也高得多,而且由于其随机性和外部条件,它们的可靠性经常受到质疑。
?对此没有意见。
这里提到的是一个悖论,在我们的行业中,开发人员和工程师之间似乎存在差异,并且必须显示为更多东西。我对这个问题没有意见,但我同意现在标题和横幅的泛滥只会让我们每个人实际所做的事情变得更加混乱。
✅ 我同意。
正如本文前面已经提到的,我同意 CSS 和整个前端世界的错误贬值。此外,在文章的这一部分中,提到了我们行业中存在的沙文主义,虽然我从未直接认识到它,但我了解它的现实性和严重性。我们的行业仍然常常是对女性充满敌意的环境,我相信社区需要采取更多措施来消除这种心态。
✅ 我同意这句话的内在含义。
当今世界的复杂性使得前端开发者的角色比以往任何时候都更加复杂,当前端笑话和妙语变成偏见时,很容易陷入贬低前端工人工作价值的陷阱。
❌这个我不太同意。
尽管前端世界的发展确实(如前所述)导致了思想、工具和方法的激增,但闪亮对象综合症是一个真实且普遍的问题,尤其是在前端社区。这并不意味着你不应该有好奇心或适应能力,而是你经常陷入采用新技术的陷阱,而没有充分了解其利弊,也没有评估它们是否真的有必要。
✅ 完全同意。
确切地说,作为软件架构师(或技术主管,或负责架构的人员),必须让团队的每个成员参与架构选择 - 尽管拥有最终决定权并最终对他们负责 - 以及决策- 导致创建应用程序或其一部分的制作过程应该涉及团队的每个成员,包括前端开发人员。那些已经这样做了足够长时间的人可能能够发现其他人看不到的用户体验或设计中的差距,并且让他们参与决策过程可以带来更好的用户体验和成功的产品。
❌你可以清楚地看到随着帖子的发展,挫败感越来越大,但在这种情况下我只能不同意。
前端工具的营销——正如 Josh 所定义的那样——从来没有轻视或试图简化开发人员的挑战,除了一些罕见的例外。这些工具越来越多地致力于使前端开发人员的工作更简单、更高效,但绝不平庸,而且方向保持不变是正确的。我们的承诺永远不是让前端开发人员成为代码猴子,而是让他专注于真正重要的事情:创造成功的用户体验以及对业务和周围世界的影响。后端世界也是如此,工具的发展使开发人员能够专注于产品,而不是技术选择或配置问题。
最后,让我们记住,开发者关系的世界近年来已经以结构化的方式发展,一些公司的任何失误都不应该被视为常态。
❌在这里,唉,我也不同意乔希的观点。
前端是产品的基本组成部分,其重要性不可低估,但这并不意味着您必须沉迷于复杂性和抽象性。前端开发已经足够复杂,不需要超复杂的设计或深奥的架构,而且正如后端世界一样,标准化,如果在充分了解事实的情况下完成,可以让我们不增加不必要的认知负担并专注于其他方面产品的。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3