首页
学习
活动
专区
圈层
工具
发布

成为最差前端开发的10个建议

为了进一步探讨这个主题,我几周前发出了一条推文,向开发人员询问一个简单的问题: 你对刚开始编程的人有什么建议,来帮助他们成为最差劲的开发人员?...在你做 任何事情 之前,首先得成为你们国家,或者最起码你周围圈子中最精通 JavaScript 的专家才行。否则的话,你怎么知道自己不会搞砸什么事情呢?你怎么知道自己写的代码不会被人嘲笑呢?...你的脑细胞有几万亿吗?我不这么认为。 8. 如果你听不懂某些内容,那是语言创建者的错,也是语言的根本缺陷,你应该编写自己的语言来解决这个问题 ?...不要期望任何人会给出有用的反馈意见,110%的情况下他们根本不知道自己在说什么。如果他们那么聪明,倒是他们自己来写啊,到头来还不是你在写嘛。 6. 不要学习 HTML,它已经过时了 ?...https://twitter.com/ksylor/status/1293571812861915137 我看到开发人员犯的最大错误之一,就是浪费时间和别人交流,而不是把时间节约下来编写代码。

57031

审阅“史上”最烂的代码

我们可以看到,该函数接收两个 string 类型的参数,最后返回一个布尔类型的值。...是的,所以函数执行结果返回 true”。 但是下面这个代码: if ("true" === "true") { return false; } 这根本没有任何道理呀。...当然,这只是一个小问题,但它表明开发人员并不真正关心和理解代码的工作方式,只是希望代码以某种方式工作。...高级开发人员应该提供某种形式的指导,以确保初级开发人员可以理解他们的错误,保证这样的错误代码不会在生产环境中使用。 我也可以确认,有些公司其实并不真正在乎开发人员编写的代码质量。 代码能解决问题吗?...代码是由初级开发人员编写的,甚至都没有高级开发人员的批准吗?——部署运行一下就知道结果了呀。 哎,Shit happens!

88530
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Docker 正在删除开源组织,强制其付费

    解决方法 Docker 的CTO 在 Twitter 上非正式地评论说[12],他们将关闭不付款的帐户,并且不允许任何其他人接管名称。我希望看到以书面形式发布,作为书面承诺。...它不需要将服务帐户或长期令牌作为 Secret 存储在 CI 中,因为它已经可以生成短期令牌来访问 ghcr.io。 想看一个完整的例子吗?...我们只能希望自年初以来几乎每天都发生故障的问题将得到解决。 GitHub 完美吗? 我从未预测过 Docker 自其重生以来的变化,从开源社区的宠儿,到每个开发人员的笔记本电脑,到今天的地步。...所有企业都需要以盈利和损失为基础进行工作。GitHub 如何伤害开源开发人员的一个典型例子是,当它取消所有通过 PayPal 支付的维护者赞助时。...这是在很短的时间内完成的,对我的开源工作造成了很大的打击。 还有其他免费为开源项目提供注册表的吗?我们都知道 GitLab 和 Quay 也提供免费托管。

    1.5K30

    最佳实践:怎样评估软件开发时间

    准备一份有着明确定义的规范的文档,每个人都拿它当作指南,因为它可以防止“我们不是说好了应用程序要有这一特性吗?”之类的情况。让我们面对现实吧,在计划阶段解决问题,比在产品完成时解决问题要便宜得多。...测试阶段 如果没有经过彻底的测试,任何产品都不能被认为是完整的。此外,软件解决方案必须从一开始就进行测试。为什么?因为解决潜在错误的成本会低不少,毕竟它们会更快被发现和修复。...也就是说,遵循“自下而上”的原则。 通常需要有两位专家参与时间估算: 开发人员。...如果每位开发人员选择的数字都相同,则意味着对所需工作量的估计是正确的。如有分歧,最终分数经过团队讨论确定下来。 这一步并不是单纯地以小时为单位估算软件开发时间。到目前为止我们只定义了故事点。...因此,需要花费 13 个小时的技术人员工时才能让用户在多个 Instagram 帐户之间切换。还要记得算上协调和管理流程的项目管理工时(例如 3 小时)。

    2.2K31

    我用Vue2写了五年,转Vue3后悔了吗?

    一个老Vue开发者的真实心路历程。说实话,2020年Vue3刚发布的时候,我是有点抵触的。用了五年Vue2,项目跑得好好的,组件库生态也成熟,干嘛要折腾?...这篇文章就是写给和当年的我一样的Vue2老用户的,聊聊Vue3到底改了什么,以及我为什么觉得值得升级。...用了这么久Vue2,其实也习惯了它的一些"小毛病"。但换到Vue3之后回头看,才发现这些问题确实挺膈应人的。...问题二:代码组织的"分裂"Vue2的选项式API把同一个功能的代码拆得七零八落。...我见过一个项目,一个组件引了8个mixin,出了bug根本不知道从哪找起。Vue3怎么解决这些问题的?解决方案一:Proxy响应式Vue3换成了Proxy来实现响应式。

    66120

    前端根本不需要构建!“技术邪教” Ruby on Rails 之父再出激进言论引争议

    “根据一位 Twitter 前员工的说法,他们决定脱离 Rails 是因为之前的架构设计不好,于是他们决定转向当时认为更好的 Java 微服务这边。但很长一段时间过去,工作并没有什么进展。...Twitter 的例子基本就是生产力黑暗时代的常态,人们认为工作在推进,但增量收益却极其有限。顺带一提,Airbnb 那边也有类似的情况,这已经成了一种趋势。...“HAML 为此而生,我们可以借此编写出纯 JS 代码而且无需任何构建。这让我非常兴奋,也是我们目前的主要开发方式。”...在推特上,DHH 还展示了公司主站的性能表现,他表示 HEY 主要应用运行的 JavaScript 代码没有经过构建。...“在 es6 以及 JS 世界中一系列基础进展的支持下,如今的前端代码已经做好了跨越复杂性之桥的准备。我知道,现在的方案仍然有点复杂,但从结果上看所有付出都绝对物有所值。”

    1.2K10

    To be or Not to be - Linux社区禁止一所美国大学提交代码事件

    那么,除了您和您的团队正在通过发送此类无意义的补丁继续在内核社区开发人员上进行实验之外,我应该怎么想?...可以看到您的提交根本不做任何事情,因此认为工具创建了它们,然后您认为它们是有效的“修复”,这完全是您的责任,而不是我们的责任。...科研的初衷自然是希望对大家都有益,但怎么才算“有益”,不能仅凭这三方中的任何一方之言;而且由于科研的专业性,使得科学试验在科研-社会-受试个人之间存在信息不平衡,因此就需要有个比较可靠的群体,能够对每一项试验进行审核...学校将调查该研究方法和批准该研究方法的过程,并采取适当的补救措施,该措施防止将来发生相似的问题。我们将尽快将调查的结果报告给社区。...评论——几点启发: 第一点 Linus Law 还有效么 多眼原则对安全漏洞还有效么,著名的 Linus Law 原则提到说,只要有足够多的眼睛,代码的 bug 自然而然的重现,但是现有的机制真的能够保证我们不引入有安全问题的代码吗

    85930

    架构必备「RESTful API」设计技巧经验总结

    也就是说,我不需要为了得到类似的功能和结果而花费精力自己去创建一个与众不同的东西,上面提到的海明威的话正是代码重用在文学上的例子。...但是,在某些语言(如Python)中返回一个空对象可能被认为是false,并且在开发人员调试程序的时候,这种情况并不容易发现。...还值得注意的是,存储在JWT有效载荷中的任何敏感信息并不安全,因为它只是一个经过base64编码的字符串。...attachments.js 助手函数的代码如下: ? MyComponent.js 如果你把获取附件属性这个功能委派给服务器来实现,并且只使用根级别的URL,这样不是更好吗? ?...有多种方法来实现分页: “From”参数 可以说这是最容易实现的,API接受一个from查询字符串参数,然后从这个偏移量开始返回有限数量的结果(通常返回20个结果)。

    2.7K30

    软件测试哲学:从单元测试到端到端测试的完整指南

    如果数据库没有启动并运行,那么测试既不会通过也不会失败——它根本不提供任何知识。这告诉我们所有测试至少有三个结果——通过、失败和未知。...单元测试将向此函数传递参数"0",并断言它返回数字"1"。它不会检查组件内部的代码行为——它只检查函数的保证是否得到满足。通常,单元测试测试一个类/模块中一个函数的一个行为。...确定性如果系统或其环境没有任何变化,那么测试的结果不应该改变。如果一个测试今天在我的系统上通过,但明天失败,即使我没有改变系统,那么这个测试是不可靠的。...如果你没有对字符串、网页大小等进行任何断言,那么你就不需要使字符串生成具有确定性。速度测试最重要的用途之一是开发人员在编辑代码时运行它们,以查看他们编写的新代码是否实际工作。...除了开发人员的代码编辑周期之外,还有其他原因需要快速测试。在极端情况下,如果测试只在需要结果之后才交付结果,那么慢速测试可能变得完全无用。

    18610

    马斯克向推特员工服软:放开远程办公,可每周坐班一次

    需通过他本人批准。 马老板日理万机,这基本是把“不允许”写在脸上了。 而在规定下来后,所有“幸存”员工需要在一周时间内考虑是否接受这一“硬核(hardcore)”管理。...这正如一位老员工在内部网络发帖所说: 我在推特工作已超11年。7月份的时候我在公司的终身雇员排名位列第27位,现在我是第15个了。 如今,这一切都超出了马斯克的预期。...他警告这些管理者:如果你谎报手下的工作能力和成果,无论他有没有被你批准远程办公,你都会被开除。 言外之意,居家办公可以,你得保证你手下的工作质量,“谁审批谁负责”。...可是为什么特斯拉和Space X就能让员工接受严苛的工作要求呢? 有观点认为: 主要是因为特斯拉和Space X的员工有目标支撑。...像个大疯子一样为他工作,所以你就能创造最渺茫的机会把他从一个完全是他自己造成的巨大财务漏洞中挖出来。 这换谁谁乐意? Ps. 最后,我们还捕捉到了一个脑洞大开的评论。

    38420

    开源情报收集:技术、自动化和可视化

    这不是一门精确的科学,搜索会产生死胡同(即返回的个人资料是针对其他已离开公司但在工作历史中提及的人),但它可以帮助您收集一些姓名和信息以帮助您入门。...然而,研究可能会产生一个更像公众或专业角色的实体,或者可能是一个完全捏造的身份。社交媒体资料不反映帐户背后的一个或多个人,因此不能从表面上看待这些信息。...为了提供可以找到的示例,此过程曾经确定组织开发人员使用的“内部” git 存储库。桶里装满了密码、公司源代码和其他敏感信息。...它之所以公开,是因为该公司错误地让“任何经过身份验证的 AWS 用户”可以访问它,认为这意味着他们经过身份验证的 AWS 用户,而不是任何 AWS 用户。...这是一个非常 基本的例子: 从一个根域分支出来的小型网络图。 大多数节点类型都在此图中表示。

    3.3K10

    NPM 7:这才算是真正的更新

    考虑下面的例子 有很多介绍工作区的文章,但它们提供的示例在我看来没什么用,所以这里我举一个例子,希望能对 Node.js 开发人员更有帮助。...你需要工作区吗? 好吧,如果你正在处理的是单个项目,或者是一些互不相关的项目,那么工作区可能对你来说并没什么用途。它们的需求可能会随时改变,结果让工作区带来的好处烟消云散。...如果该模块已经安装并且是正确的版本,则不要执行任何操作。 如果找不到该模块或版本存在冲突,则向开发人员显示一条消息,警告他们这一事实,此外什么也不做。...本质上来说,NPM 现在替开发人员完成了这部分工作,并帮助后者决定是否安装这一对等依赖项。考虑到依赖管理的工作也许会浪费一整天的时间,这绝对是一个非常有用的功能。 以前你遇到过这样的坑吗?...这两项特性尤其吸引了我的注意,我很快就去尝试它们了。当处理具有多个共享依赖项的大型组合项目时,工作区可以从根本上改善开发人员的体验。

    2.3K30

    让小型企业提高 20 倍效率的统一技术栈

    所有函数都遵循了完全相同的超级简单的代码风格,无论是在 Web 上、移动设备上,还是服务器上。我们很少抽象,并且在所有服务器和 App 中都使用相同的简单查询语法。...例如,一个使用 iOS 支票存款的团队成员会在 Android 用户发现之前发现因重构而遭到破坏的权限。这是我们在自动化测试基础上做的工作。...原来的服务器也从新的贷款服务器的改进中受益,获得了无阻塞帐户开户功能,删除了大量的死代码。 下面我将详细介绍下我们的技术栈。...两个客户端项目使用一个存储库,共享逻辑、实用函数、数学运算、权限等位于共享文件夹 /common 中。...与当前可用的其他任何解决方案,它能让我们在单位时间内为客户提供更多的价值。

    1.9K20

    别再错了,数字化转型与数据和应用程序无关,而与流程有关

    我指出了这一点,问他们为什么会有额外的字段来记录谁批准了什么以及何时批准了什么,许多额外的多行文本字段,以及许多标记为“状态”的字段。...工作流的当前状态已经给了你想要跟踪的状态?内置的注释维护了一个线程,每个人的免费注释记录都带有时间戳?” 还不止这些。对于那些似乎超出了范围的数据,还有额外的列。当我问“你真的需要这个字段吗?...它似乎与赞助没有任何关系”时,他们回答说:“我想不是,但我通常会在其他应用程序中为一个组织收集这些数据,而赞助商就是组织。”...它有助于让 UI 专家、数据库管理员等承担项目,而不是每个项目都需要有全栈开发人员。 问题是,很多人倾向于从数据层开始,然后从数据层开始构建。相反,如果我们从逻辑层开始呢?...5 高级用户经常犯类似的错误 高级用户,或者公民开发人员,如果你愿意的话,也会遭遇“我拥有一个锤子,所以一切都是钉子”的问题。

    52240

    Twitter的问题说明再好的软件也会腐化

    这几日,Twitter因为API改动导致登录故障的问题又上了热搜,虽然没有引起网站瘫痪,但任何体验上的问题都可能引起大量用户的不满,从而影响公司声誉。...这一理由,就和一个人说我因为太忙没时间洗澡一样的荒唐,可这确实软件行业悲哀的事实! 文末做一个调查,了解一下贵公司或你所在的团队要做代码评审吗?...虽然现在看不到结果,我想,做代码评审的比例应该不会太高。...它也能让更多的人理解新的代码——评审人和那些关注这个评审的人现在都能更好地为这些新代码提供技术支持。 此外,我希望,代码的作者们知道他们提交的代码会被仔细评审,从而更加认真地对待他们的工作。...一个成功秘诀,无疑就是长期不懈开展的代码评审。 03 持续测试 代码评审是静态的,还需要有效地手段了解软件运行的状态。除了提供必要的可观测性之外,建立完整的测试金字塔,形成持续测试,意义重大。

    51220

    使用Claude 3.7 Sonnet让联邦宇宙更易于访问

    虽然 Mastodon 满足了我的需求,但 Twitter 的大部分用户已经转向 Bluesky。目前这很好,但可能不会永远如此。...但这没关系,我现在有一个独立的 HTML/CSS/JS 结构,我可以在本地保存、测试和改进它,并轻松发布到任何普通的 Web 主机。我为它创建了一个 repo 并收工了。...我不确定为什么这个特殊的任务似乎难倒了最聪明的 LLM。是我提问的方式不对吗?这个任务有什么与常理相悖的地方吗?如果有人能解释它们失败的原因,我将洗耳恭听。 最后的清理和重构 抱怨这个限制感觉很荒谬。...值得注意的是,这些工具使我能够构建和完善这个小而有用的工具,比其他任何方式都更快更容易。...这并不是一个完全顺利的体验,但我很感激 AI 的帮助,它简化了任务并丰富了结果。毕竟,我们正坐在天空中的椅子上。偶尔出现的补丁文件小故障似乎是微不足道的代价。

    27500

    美国如果把根域名服务器封了,中国会从网络上消失?

    2 对此,我们需要害怕吗?我们需要什么样的反制措施? 不是专家,还真回答不了这个问题。 因为这需要了解DNS的工作原理,了解根域名的管理机制。...3、权威DNS是干什么的? 问我一个域名,我告诉你IP,如果我不知道,我告诉你谁可能知道,你再去问它。 4、什么是根域名服务器(简称根DNS)?...4 真的只有13台服务器吗? 和很多人想象的完全不一样,这13个根域名服务器,并不是只有13台物理的服务器。 这13个根,只是一个逻辑上的概念,每个根DNS,背后都有多台真正的物理服务器在工作!...主要原因是.iq域名的前任管理者于2002年被关进监狱,新任管理者(NCMC)于2005年才提出申请,而IANA当时还考虑征求新旧代理双方对新授权的一致认可,所以才出现了所谓的“申请和解析工作被终止”。...经过这番变乱,2004年10月,ICANN批准将.LY授予利比亚邮电总公司,.LY事件算是尘埃落定。 本文中提到的风险和应对,主要是我个人的分析,下面看看业内专家的说法。

    5.1K30

    TypeScript“杀疯了”!60% 到 70% YC 创企用它构建 AI Agent,赶超 Python 有戏?

    :它使用的 HTML 界面经过 30 年互联网发展的考验,天生就支持屏幕阅读器等辅助工具;而且它的类型系统能让代码编辑器提供超强的智能提示。...TypeScript 让开发者能快速获得跨平台开发能力:它使用的 HTML 界面经过 30 年互联网发展的考验,天生就支持屏幕阅读器等辅助工具;而且它的类型系统能让代码编辑器提供超强的智能提示。...我自己就深有体会:第一次创业时我们用 PHP 写前端,Python 写后端,结果两个工程师被迫分头干活,一个搞前端一个搞后端,光是协调沟通就浪费大量时间。...人们仍然将 Python 视为 AI 训练和开发工作流程的首选语言,因为 PyTorch 和 TensorFlow 等 ML 框架和库都是面向 Python 开发人员的,这种情况目前可能不会发生改变——...一位 Reddit 用户说道:“TypeScript 让我在编写每个函数和变量之前就明白了它们的实际用途……此外,它还能让我更轻松地理解对象结构,并更深入地了解某些对象。”

    65000

    Neuralink的脑机接口:「大师兄」和「二师兄」都不是对手,目标是破世界纪录!

    △ 「大师兄」Pager通过想象操纵杆的移动来打乒乓球,打中了就有奶昔喝 不管哪一个,每次Neuralink的脑机接口(BMI)都能让人「大受震撼」! ?...BMI要有一个良好记录设备,但也需要真正关注解码器的细节,因为它是一个「闭环系统」。要注意闭环问题才能真正提高性能。 我们的内部目标是,在BMI 的信息率方面打破世界纪录。...现在的设计是每根「线」 16 个通道,共有64 根「线」,可以将它们放置在皮质区域内的任何位置,共计 1,024 个通道。 这些「线」会放进一个微型设备,这个设备具有算法、脉冲检测、电池、遥测等功能。...Q:好像很多脉冲检测都在芯片上完成的,几年前我以为它是在外部设备上完成的,这是随着时间的推移而优化的吗? A:没错。我们有一种略有不同的脉冲检测方法。...训练时间可能会更长,因为我们不能告诉他们该做什么;我们必须向它们展示逐步变得复杂的事情。随便挑一个游戏:现在我们知道猴子可以玩乒乓,但是它们能玩水果忍者吗?

    80020

    Ask Apple 2022 中与 Core Data 有关的问答

    这是有意为之的吗?A:是的。 NSPersistentCloudKitContainer 在 iCloud 帐户和存储中的数据之间强制执行严格绑定。...A:在每个版本中添加一个新的托管对象模型会更安全,但是如果您从一个版本到另一个版本的更改经过充分测试以表明适用于轻量级迁移推断,那么单个托管对象模型就足够了。...NSExpression 的 BugQ:我应该如何看待 NSExpression 中的 CAST 函数?这是我应该积极使用的功能吗?...这似乎值得一个错误报告使用 NSExpressionDescription ,可以在 SQLite 中对记录进行一定的计算,并将计算结果通过 NSFetchRequestResult 进行返回。...如果我可以创建一个带有与此 @AppStorage 的值相关联的谓词的 @FetchRequest,则谓词将自动更新,并更新我的视图。目前我无法做到这一点,哪种解决方法能获得类似的结果?

    4.7K20
    领券