阅读更多

3顶
1踩

非技术
你已经对着电脑n个小时了。不知道该写什么代码,或者一种摔键盘的冲动正在你的胸中酝酿。

咖啡一杯接着一杯。不敢再喝了,因为搞不好要有副作用了,心跳加速,身体不由自主地颤抖,出冷汗,但还是无法产出任何代码。

所有重新发现编程趣味的努力都徒劳无功,因为你的最后一点能量都用来驱逐大脑中正在攻城略地的话:
引用
“我写不出代码了!”


编程的本质是棘手

即使是最优秀的程序员也会遭遇无法解决的软件工程问题。碰到这样的问题,并不一定意味着你缺乏技能或知识。

编程不是一项容易的工作,我们可以通过采取非正统的方法来保持你想要的生产力水平,并确保提交高质量的代码。

如果我在一个问题上花了几个小时,却仍然找不到解决方案的话,最后我会觉得这是浪费了时间。我不是胡言乱语——我只是觉得“没有人能够百死不悔”。

没有愤怒和悲伤。因为我已经尝试过所有方向,只是都走不通而已。失去希望,于是开始想辞职不干。我觉得自己应该换工作,去做做调酒师或其他,至少研究和测试在啤酒中加点什么不会耗去我数个小时的时间。

这些都是我在不敲代码时的想法。我开始怀疑生活,怀疑编码,怀疑人生。

有成效不?好吧,我从来没听任何专家说过“辞职和萎靡不振”可以造就伟大的代码,所以可能并没有成效。

这就提出了一个问题:我们该如何避免这种没有成效的状态?

重新发现问题,重新发现你的生产力

可能你已经行进在这条路上了。那么此时你只要继续就可以了,我可能没有什么新的东西可以告诉你的。

如果你是新手,那么可能你还不知道如何重新发现生产力。

下面我要分享的内容将有助于你在编程时以一种健康的方式保持生产力,不至于筋疲力竭。主要包括:
  • 测试不同的解决方案,直到感觉重复
  • 在线寻找开源解决方案
  • 向更有经验的程序员询问
  • 如果一切都失败,那就潇洒放手
1 – 测试不同的解决方案,直到感觉重复

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

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

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

2 – 在线查找开源代码

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

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

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

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

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

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

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

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

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

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

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

你觉得这是在逃避工作?那就错了。

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

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

我们可以做些什么以便于帮助大脑在发散思维的模式下工作呢?放轻松就好了:
  • 散步(古代哲学家非常习惯于在走路时演讲,因为他们意识到走路有助于思考)
  • 清理办公室或住所(完成后给自己一个奖励)
  • 与朋友约会,和杯咖啡,聊聊八卦(如果你过于关注问题的话,那么建议和不能提供帮助的非编码人员交谈)
总结

我在编程和生活两者之间保持了一种健康的平衡。

无论你是为了兴趣爱好、钱还是改变世界的宏图伟业而选择编程——编程都不应该是你唯一痴迷的东西,否则你会走火入魔。

最后再说一句,如果你绞尽脑汁,却仍然无法解决问题,那么不妨先放一放。通过潜意识的运作,搞不好突破性的想法就会灵光乍现。
  • 大小: 375.3 KB
  • 大小: 459.2 KB
来自: codeceo
3
1
评论 共 3 条 请登录后发表评论
3 楼 华家小谁 2017-10-04 02:44
写不出来

抽根烟压压惊,继续写

源码解析 http://www.iocoder.cn?iteye
2 楼 zhuxianxin0118 2017-09-30 13:52
我是为了钱而编程,所以钱才是我走火入魔的心肝宝贝
1 楼 Nuole 2017-09-30 10:00
;'uuuuuuuuuuuuuuuuuu
引用
[u][b][/buuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu[poiuytgrferdsfrfeferdweddwsd][/u]

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 为什么我们程序员写不出好代码? - 文章 - 伯乐在线1

    1.开会 2.回复所有的电子邮件 3.衡量生产能力 5.“以后再修复”思维模式即“技术债务” 6.非程序员经理 7.程序员经理 8.技术过硬但有些强势的程序员

  • 当一个程序员写不出代码了,该怎么办?

    所有重新发现编程趣味的努力都徒劳无功,因为你的最后一点能量都用来驱逐大脑中正在攻城略地的话:“我写不出代码了!”编程的本质是棘手即使是最优秀的程序员也会遭遇无法解决的软件工程问题。碰到这样的问题,并不

  • 当程序员写不出代码了,该怎么办?

    你已经对着电脑 n 个小时了。敲键盘正成为一种负担,你在想,键盘是否就像西西弗斯推着的那块巨石...“我写不出代码了!” 小编也是一名从事了6年java开发的全栈工程师,花了近一个月整理了一份较适合18年学习的ja...

  • c语言学完写不出程序怎么办,C语言学完写不出程序怎么办?

    相信很多学完以及正在学一门编程语言的同学,都可能会有这样的经历和问题,在学完一门课程比如C语言之后,当我们提起一个知识点(如三目运算符,指针、水仙花数、二维数组、位运算)的时候很熟悉又很陌生,熟悉的是...

  • 知道当一个程序员写不出代码了,该怎么办?

    “我写不出代码了”! 编程的本质是棘手 即使是最优秀的程序员也会遭遇无法解决的软件工程问题。碰到这样的问题,并不一定意味着你缺乏技能或知识。 编程不是一项容易的工作,我们可以通过采取非正统的方法来保持你...

  • 当一个程序员写不出代码了,需要做些什么呢?

    导读 ...所有重新发现编程趣味的努力都徒劳无功,因为你的最后一点能量都用来驱逐大脑中正在攻城略地的话:“我写不出代码来。” 编程的本质是棘手 即使是最优秀的程序员也会遭遇无法

  • 技术面试老是有劲使不出,该怎么办?

    其实不管是经验不足的初级开发,还是面临更高要求的资深开发,在面试上都会有一样的困扰:如何在掌握的知识有限的情况下,完成好一场高质量的面试呢?本文最适合以下几种情况的同学参考:知识面有限的初学者希望首次...

  • (五)改掉这些坏习惯,还怕写不出精简的代码?

    鲁迅说:嬉笑怒骂里充满了无奈和妥协。小猿说:先生说的不对,在程序员的世界里,编写代码处处充满了无奈和妥协。Code Review 是一场苦涩但有意思的修行。(一)改掉这些坏习惯,还怕写...

  • (四)改掉这些坏习惯,还怕写不出健壮的代码?

    Code Review 是一场苦涩但有意思的修行。(一)改掉这些坏习惯,还怕写不出健壮的代码?(二)改掉这些坏习惯,还怕写不出优雅的代码?(三)改掉这些坏习惯,还怕写不出优雅的代码?书接...

  • (六)改掉这些坏习惯,还怕写不出精简的代码?

    鲁迅说:嬉笑怒骂里充满了无奈和妥协。小猿说:先生说的不对,在程序员的世界里,编写代码处处充满了无奈和妥协。(一)改掉这些坏习惯,还怕写不出健壮的代码?(二)改掉这些坏习惯,还怕写不出优...

  • 自学了很久Python却还是写不出项目怎么办?

    没事,看前辈教你几招!

  • (三)改掉这些坏习惯,还怕写不出优雅的代码?

    Code Review 是一场苦涩但有意思的修行。书接上篇,本次一起继续探讨一下,该如何写出优雅的代码?1编码时:搞的复杂并不好坏习惯一:多余的 if/else。反例:类似上面这种写...

  • (二)改掉这些坏习惯,还怕写不出优雅的代码?

    Code Review 是一场苦涩但有意思的修行。上期分享,通过示例剖析编码中一些经常触犯的性能点,以及编码时常犯的一些小毛病,来告诉新手程序员如何写出健壮的代码。咱们书接上篇,本次一起...

  • wdaaaaaaaaaafwawfw

    wdaaaaaaaaaafwawfw

  • scratch少儿编程逻辑思维游戏源码-十字鸭子.zip

    scratch少儿编程逻辑思维游戏源码-十字鸭子.zip

  • Android移动应用开发_ViewFlow自定义控件CircleFlowIndicator指示器网络图片加载缓存自动循环滚动手势滑动交互_横向循环平滑滚动广告条Banne.zip

    Android移动应用开发_ViewFlow自定义控件CircleFlowIndicator指示器网络图片加载缓存自动循环滚动手势滑动交互_横向循环平滑滚动广告条Banne

  • 前端开发_基于jQuery和EasyUI框架_企业级Web应用UI组件库与后台管理系统模板_提供GPL开源版本和商业授权版本的双重授权模式_适用于快速构建响应式管理后台和复杂数据可.zip

    前端开发_基于jQuery和EasyUI框架_企业级Web应用UI组件库与后台管理系统模板_提供GPL开源版本和商业授权版本的双重授权模式_适用于快速构建响应式管理后台和复杂数据可

  • C++编程实例100篇.zip

    《C++编程实例100篇》是一本深入实践、极具价值的编程教程,它针对C++编程语言提供了丰富的实例,旨在帮助读者更好地理解和掌握C++的各项特性与编程技巧。这本书的经典之处在于它将理论与实践相结合,通过100个精心设计的编程实例,覆盖了C++的各个核心领域,包括基础语法、面向对象编程、模板、异常处理、STL(标准模板库)等。 我们来探讨C++的基础语法。C++是C语言的增强版,它保留了C语言的高效性和灵活性,并引入了类、对象和继承等面向对象编程概念。基础语法包括变量声明、数据类型、运算符、控制结构(如if语句、for循环、while循环)、函数的定义和调用等。在实例中,你可能会遇到如何编写简单的程序,如计算两个数的和,或者实现一个简单的猜数字游戏。 C++的面向对象编程是其一大特色。通过类和对象,你可以构建复杂的软件系统。类是对象的蓝图,它定义了对象的属性和行为。实例化一个类,就是创建一个具体的对象。继承允许你创建新的类,这些类从现有的类派生,共享其属性和方法,同时可以添加新的功能。多态性是面向对象的另一个关键特性,它使得不同类型的对象可以对同一消息作出不同的响应。这些概念在实例中会以各种形式展现,例如设计一个图形界面的类层次,或实现一个简单的模拟游戏。 接下来是模板,C++的模板功能让代码更加通用,可以处理不同类型的数据。模板分为函数模板和类模板,前者可以创建泛型函数,后者可以创建泛型类。通过模板,你可以编写出高效且灵活的代码,比如实现一个通用的排序算法。 异常处理是C++中用于处理程序运行时错误的机制。当程序出现异常情况时,可以抛出一个异常,然后在适当的点捕获并处理这个异常。这使得代码能够优雅地处理错误,而不是让程序崩溃。实例中可能会有涉及文件操作或网络通信时可能出现的异常处理示例。

  • scratch少儿编程逻辑思维游戏源码-忍者无限跑者.zip

    scratch少儿编程逻辑思维游戏源码-忍者无限跑者.zip

  • 少儿编程scratch项目源代码文件案例素材-战斗机游戏.zip

    少儿编程scratch项目源代码文件案例素材-战斗机游戏.zip

Global site tag (gtag.js) - Google Analytics