特别讨厌编程_我讨厌编程,您也应该这样做。

特别讨厌编程

在调试这件事三天后,我发现这是一个额外的时间。.( Matthew HenryUnsplash上

暑假在这里。 占我朋友群很大一部分的高中生很高兴。 在最初的几周左右,每个人都乐于无所事事。 然后,每个人都开始再次抱怨。

您会发现,精疲力尽最终克服了大多数这些学生。 在学年里,一切都那么无聊和压力,以至于几乎每个人都对它感到厌倦,结果感到不安。 但是一旦假期临近,他们认为事情会开始好转,他们很快就会感到无聊。 我称这种现象为“没有内在目的”。

我姐姐陷入空心生活就是这种现象的典型例子。 在进行了几次毫无结果的项目后,她跌破了谷底:长达一个星期的时间,内容涉及YouTube,移动游戏和社交媒体上的化妆教程。 在此期间结束时,她对自己的苦难变得更加直言不讳,我不得不提供帮助。 这就是本文的技术之处。

她想做一些机械的事情,不需要持续的创意投入。 她以前的学识渊博,小说写作,大部分时间都需要有意识的脑力劳动,因此她经常精疲力尽。 在快速搜索“ 2018年有价值的学习技能”之后,我建议她做一些编程工作。 我之所以建议这样做,是因为可以肯定地说,这是一项非常有价值的技能,我也这样做,如果遇到困难,可以帮助她。 在编写代码的第一天(在撰写本文时),情况就很好了。 参与度很高,生活中的总体满足感似乎更好。

所以您可能想知道:标题是什么?

事实是,我写的代码不多。

我正在基于构想管理平台构建软件业务,但是我写的代码并不多。 Tian Ooi是首席工程师。 当我这样做的代码,这是因为有一些极端情况下(最后期限,病假等)。 即使那样,我仍然讨厌大约两天后的编程。

我讨厌它,因为完成的大多数编程对我来说都是机器人。 我公司工程师的日常工作涉及许多流行的,广受欢迎的技术,例如React Native,MongoDB和Ruby on Rails,所以这就像我们在编写任何汇编代码或(禁止上帝使用)Java一样。 只是编程不是我现在想要的。

大多数编程的重点是遵循由少数几个真正聪明的人创建的众所周知的食谱。

编程的目的通常很明确,到达那里的过程也很明确。 您需要完成一系列工作,并使代码达到令人满意的程度。 问题是,在没有任何警告的情况下,在使代码执行此操作的整个过程中,有两千万个错误。 从我的经验,不是可以搞砸了搞砸的每一件事情。 但事情应该只是工作最终会搞砸了,而不是造成比预期更多的问题。

编程是乏味的。 不,这他妈的乏味。 这使代码无法发挥创意,因为即使是常规的通用代码也几乎无法工作。 尚未达到您没有明确目标就可以开始编写代码的地步。 您无法使用代码进行探索,只能使用它进行构建。 在油画中,这就像只能画出您已经头脑清楚的一幅画一样。 就像必须预先计划和计算每滴色彩,并且在画布上进行的每一次随机笔划都会导致整个画布着火。

您编写的大多数代码是:垃圾桶。 ( 史蒂夫·约翰逊Steve Johnson)的 《不飞溅》
由于大多数代码不够完整,没有巨大的明确意图就无法存在。

编程很难实现创造力,因为编程中很难实现随机性。 有明确定义的方法可以完成工作,并且在基本级别上很好。 问题在于,大多数编码环境被设计为仅接受预定义工作流的有限子集。 因此,在编程时,您必须遵循完成这些事情的几种方法,否则您的便便无法使用。 这对编程体验有两个重要影响:

首先,冒险超出那些设定的工作流的能力几乎是不可能的,或者如此令人不快,以至于您甚至不尝试。 这就是为什么以新的语言或框架形式不断制作新的工作流的原因。 是的,到目前为止,所有已完成的编程都可以用二进制编写。 不这样做的唯一原因是因为没有足够的人如此疯狂。

其次,当实际上确实需要进行不同的高级操作时,它们也必须遵循这几种固定的方式,这给编程它们的经验带来了极大的困难。 这听起来像是对第一点的重述,但是我想在这里强调一下经验 。 在这种情况下,编程可以真正地,普遍地,客观地令人讨厌。

每个阅读者都必须理解这一点,我认为一些不熟悉技术库的读者可能很难理解这种痛苦的性质。 因此,我想出一个比喻:假设您要在六个小时的时间内将五十个西瓜从A点移到30英里外的B点。 您有一辆卡车,可以轻松一次将所有五十个西瓜放入其中。

听起来很简单,对吧? 只需将西瓜装到卡车上,然后开车到B点即可。六个小时的时间就足够了,对吗? 好吧,根据我们正在谈论的是哪种类型的编程,这种情况对于程序员可能会发挥出几种不同的方式。

如果您是C开发人员,那么您就已经不知所措,因为您忘记了导入任何内容。 另外,您的卡车上到处都是垃圾,因此无法使用。 如果您是Java语言开发人员,则可以开始将西瓜加载到卡车上,但是在中途,您对79个npm软件包中的6个的循环依赖关系将使它停滞不前。 如果您是系统开发人员,甚至还没有卡车,那么您可以选择从一些西瓜中收获种子,慢跑30英里,然后在B点种植种子,希望您能长大最终那里有30个西瓜。 如果您是Ruby on Rails的开发人员,那么卡车实际上是自动驾驶的,因此您要做的就是装载所有西瓜。 但是在此过程中,您错误地使用了ActiveRecord方法,现在您所有的西瓜实际上都是鳄梨。 但好的一面是,您还有24本关于如何制作鳄梨的不同食谱。

看到? 真是令人发指。 说真的

Dmitry BayerUnsplash上的照片

编程太不自然且不直观,无法发挥创意。

我并不是说当前的编程技术很糟糕。 代码负责各种不可思议的现代事物,例如喷气式飞机,计算机,股票市场,甚至很快,甚至有智慧的情报。 我只是想请您停止调试gradle错误一分钟,然后想象一下,如果我们能够像用笔在纸上画图一样容易地进行编码,那将有可能实现。 如果我们可以使我们的应用程序像用几句话描述一样容易,该怎么办? 如果我们可以使用已经可以物理表达的关系为机械臂创建逻辑该怎么办? 如果我们可以编写非常安全的代码以致可以随机尝试发现新事物怎么办?

通过编码,可以提供巨大的功能,如果更令人愉快,它们将更易于访问,可预测且更有效。 如果您不相信我,请尝试学习编写代码。 您的第一个月将是令人欣喜若狂的高潮,您会觉得自己可以控制整个星系。 但是,只要您尝试使用代码进行任何实际操作,例如将软件产品投放市场,您就会明白我的意思。 硅谷科技公司的生活如此紧张是有原因的。 工程师在依赖该技术的竞争性公司中获得如此高的薪水是有原因的。

我们如何使编码再次变得出色?

从个人角度来看,如果您消除了编码活动中的所有压力(如截止日期或具体目标),而只专注于学习经验,则您可能会很开心。 但是,您应该知道,该行业由每周连续六天连续十二个小时进行编码的人员主导。 在极少数情况下,大约十二岁的孩子在经过两个月的周末编码训练后想到了具有自我意识的人工智能,但是请相信我,这并不容易。

从更大的角度来看,我们程序员是应该承担责任的人:

我们应该编写代码的唯一原因是确保明天减少编写代码。

我们应该制造一些工具,使人们能够使用代码来做某事,并使代码起作用。 或者至少,我们应该使远程实现的可能性比10%的时间更为频繁。 我们应该想出一种创新的方法,将简单的项目要求和限制转换为安全,可扩展的代码,而不是发明越来越抽象的方法来表示信息和代码之间的关系。

我们应该使编码更容易,更强大。 当我们这样做时,我们将释放更多人的创造力。 当我们使代码更具有自我功能时,我们将进行许多工作,从而更加愉快。 更重要的是,我们可以继续生活。 我们已经浪费了足够的时间。

来吧,人们。 编码是种痛苦。 经常在屁股上感到痛苦。 你知道这是真的。 现在该调试这种情况,并专注于我们制造的产品的影响,而不是如何制造它。

翻译自: https://hackernoon.com/i-hate-programming-and-you-should-too-454b1cf6886d

特别讨厌编程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值