程序员敲不出代码,怎么破

作为程序员,你有没有敲不动代码的时候?

 

重重复复地CURD,产品没完没了地提没任何营养的需求,测试又在提第1024个真实用户压根不会碰Bug……

 

你觉得你的代码没有灵魂,你的青春只换来一堆代码垃圾。

 

没意思,这样的程序人生真没意思。你是否有过这样沮丧、丧失敲代码的激情的时刻呢?

 

笔者采访了几位不同码龄层的程序员,发现大部分人均有敲不动代码的疲软时分,他们又是如何咬牙克服的呢?一起来看看吧。

 

01

瓶颈期:激情难觅

 

有一回我刚结束半年紧张高压的封闭开发,正想休几天假时,领导让我带人去做一个全新的大项目。

于是我马不停歇地带着几个新人重新进入一场新的战斗,一边和产品讨论新需求一边代码开发,每天熬到凌晨后才下班,花了两个多月总算把原型做出来了。

我身心疲惫,原型验收时却没有上一个项目完成的快感。

那阵子我完全没有心情写代码,新需求出来的时候也没有心情去讨论,陷入职业低迷期。

后来我逼着自己去查原因:原来新项目的大部分业务代码是重复的,只是流程更完善了,做出来的产品市场上早就有了,我们仅是解决了一些痒点,技术上也没有更进一步去追求,所以我并没有丝毫成就感。

现在回头看那段黑暗经历,我发现没激情其实是一种焦虑,或者说是遇到职业瓶颈。原因有两个:程序员都把工作都看得很重要,如果突然达到瓶颈期又没有一个别的依托,就很容易丧失激情。第二个原因是由于生活压力,大部分码农不满足于当前的现状又无能为力,只是行尸走肉地上班敲代码。

 

02

没激情也硬敲

 

有一次我中午在公司一边吃着很难吃的外卖,一边修着很Low的Bug时,突然怀疑人生来:我为啥要每天在这个城市过着这种没啥意思的生活?吃着贼难吃的地沟油、承受着一个人生活的孤单、改着并不想改的Bug?然后想提想了第N次的离职申请。

不过低头看看自己手机上的账单和房租,我又回到现实了。当初自己选择程序员这行,除了喜欢敲代码外,更多的动力是能多挣钱呀。毕竟在这个社会里,男生被社会定义就是挣钱养家糊口,而敲代码便是我的谋生方式,我无法选择逃离它,没有激情也得敲呀。加油吧,没啥可矫情的。

 

 

03

没有激情?辞职!

 

写代码没有激情不外乎遇到这几种情况:因为代码太简单了,例如是简单的增删改查,我就边听歌或者听美剧边写;如果代码繁琐的话,我会尝试思考怎么改进架构或者提高效率,这样思考后又恢复写代码的激情和动力了。

有时候遇到逻辑复杂的代码,捋不好想不清楚,不知道从何入手。这时候我会先不写,找个地方把逻辑想明白捋顺了再回来写。还有的是因为自己的技术局限,例如代码写得逻辑不清、耦合严重、不会重构、不知道怎么写出清晰的代码,导致没有激情的话,我下班后赶紧学习,第二天立刻用上,效果立竿见影,成就感又回来了。

最后,由于自己的技术储备和工作岗位要求差得实在远,或者和自己心里的标准差得老远,导致没有激情的话,就辞职专心回家学习了。

而作为一个失去激情写代码的程序媛,我已经裸辞在家“学习”半年了。

 

 

04

编程 依旧激情满满

 

虽然写了10年代码,可我一直对代码很有激情。记得有一回,需要用C++做一个同时兼容IE、Firefox、Chrome的插件,我联系了所有认识的C++工程师,都没有人做过。

像我们做MIS系统的,用户的要求就是圣旨,我一个做Java的只好硬着头皮试着去实现。大概花了一周的时间,每天只睡3个小时,每天不用闹钟就会醒来。后来头发白了一小撮才做出来了,等项目完成后,我吃了点东西,倒头猛睡了十几个小时。

 

 

NO.1 测试不同的解决方案,直到感觉重复

在你研究或询问其他开发人员(=浪费他们的时间)之前,你应该尝试使用你现有的知识和思维来制定每一个可能的解决方案。

显而易见的是,太多的程序员是从询问他人开始的,自己甚至都不曾静下心来分析问题本身。不要成为这样的讨厌鬼,尽可能不要浪费别人的时间。

先投身于工作,然后再寻求帮助。

 

NO.2 在线查找开源代码

当你投入于工作,却没有什么成果的时候,那么下一步你可以尝试开源代码。许多编程人员构建软件,是出于创造解决方案并在线发布以供大家使用的乐趣。有些人发布的代码曾被它们的程序员使用于商业项目。

GitHub 是寻找开源代码的两个主要地方之一。另一个是 StackOverflow。

这些网站的解决方案是采用可重用代码的形式,方便你在项目中实现。

谨记,使用其他人开发的代码总是有风险的。它可能会以你意想不到的方式改变程序的行为。备份原始代码,这是常识。

 

NO.3 向更有经验的程序员询问

你有没有碰到过这样的情况,向其他人求助却发现你甚至不知道自己在问什么?

在询问任何人之前,你得准备好一些你无法通过网络信息搜索解答的问题。

明确的问题,才能有明确的解决方案。如果是你自己都描述得云里雾里的问题——那么你只会得到一个云里雾里的回答(并且可能会惹恼他人)。

如果你周围没有任何开发者可以询问,那么也可以在线查找。你可以在StackOverflow或MSDN社交论坛上询问,或查找特别针对于你所用技术的Slack频道。

 

NO.4 如果一切都失败,那就潇洒放手

不要一心钻在死胡同里,实在不行,那就去干点别的事——睡觉,吃东西,等等。

 

我要告诉你的是,当你最轻松的时候,往往正是解决办法灵机一现的时候,这不是我胡编乱造的,而是有科学的证明。此时你的大脑工作在“发散思维”的模式下,而不是在“集中注意力”的模式下——你可以在这篇文章中了解之间的差异。

 

总的来说,这个理念就是要你忘记手头的问题,让你的意识心灵沉浸到其他的事情中。此时,你的潜意识则开始连接要点,朝着顿悟的方向前行。

END

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值