博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
程序员获取编程灵感的 10 种方式
阅读量:7039 次
发布时间:2019-06-28

本文共 1819 字,大约阅读时间需要 6 分钟。

有时我会陷入读着编程书但编不了程的陷阱。我不能总是找到一个可工作的有趣项目,即使我知道有大量的机会。如果你有相同的问题,这里的一些提示可能会有所帮助。

1.与其他程序员聊天

这是最好的灵感来源,因为,他们会有一些你想不到的点子。即使是一些程序员朋友、一个编程小组或甚至是一个会议都行。将所有这些想法混合起来肯定会给你一个新的视角。

2.和非程序员一起聊天

首先,在那些让你觉得快乐或挑战思维的人身边,会让人健康,无论他们是否会写代码。第二,他们可以从用户的角度给你灵感。什么会让他们对计算机感到失望?你能想出解决方案吗?

3.有一个专用的工作区

如果不可能有一个专门的空间,那么至少确保工作时能够安静,以便于你可以专注于计算机,而不受干扰。让这个地方成为你的“革命根据地”。确保椅子舒适,可以支撑背部。手边备好水。不要一整天坐着不动——保持健康。

4.有良好的开发环境

上一个方法提示的软件版本。我不在乎你使用哪个编辑器(虽然我推荐vim),但确保你使用一个可以给你一些力量和灵活性的编辑器。总是使用源代码控制——尤其我建议你学习git,因为它会教你概念。始终备份工作。所有这一切将防止你在你不使用它们时可能会遭遇的极度灰心丧气,从而失去工作。

5.秉持开放的态度

阅读你尊敬的程序员的Twitter Feed和博客。(如果你想的话,可以看看我的twitter feed——大多是程序员。)RSS阅读器,例如Ruby Inside或者老式的Planets,都可以是很好的新闻来源,因为它们会添加突出的新程序员,而不必你去搜索。选择一些你通常不会阅读的主题的博客,并订阅它们。

是的,这可以让你陷入阅读代码而不写代码的陷阱,但进入更大的编码生态系统对你是有益的,是激发思绪的源头。

6.阅读优秀的代码

想想你喜欢的一些软件,然后看看软件的源代码。有什么问题?你如何从中学习,或者更好的是,你可以怎么改善这个软件?有很多好代码的源,但GitHub必然是最好的之一。GitHub博客上的GitHub Rebase系列列出了一些值得注意的新项目,如果你想要了解更多细节的话。

7.学习一门新的语言

这是一个经常被提到的经典建议。我建议学习一些以下类别中提到的东西:

中级:C,C ++

面向对象:Ruby,Python,Java,C#

Functional:Scheme,Haskell,Erlang

Shell:Bash,Zsh,awk,sed

基于Set:SQL

你所知道的语言越多,你就越需要用任意的语言来思考问题。你能以更多的方式思考,你就越容易找到有趣的方法来解决问题,因此找到一个激动人心的项目。(当然,不要局限于这个列表。)

8.学习好的技巧

而不是一种特定的语言,从书中学习好的通用技术,如《The Pragmatic Programmer》,《Structure and Interpretation of Computer Programs》,和《The Little Schemer》。(最后两本特别关于Scheme,但非常好,很值得一读。)

9.找一个娱乐项目

有一个娱乐项目是很令人愉快的,当你在其他项目上受到挫折时,你就可以转而去搞搞娱乐项目。不管是什么样的娱乐项目,只要你有即可。不要感到被迫分享它或使它成为某种成功——它只是帮助你解决问题的玩意儿。

10.写一个游戏

很多人认为编写游戏是在浪费时间,因为很少有独立游戏在商业上是可行的,但如果你是玩家,那么还是写一个吧。它是治疗性的,有很多深刻的概念会在你在工作的时候自然而然地浮现在你脑中。我就写了一些小游戏,几乎所有都没有发布过;它们是试验,也是宝贵的经验财富。如果你不知道怎么起头,那么试试Roguelike。

11.采取暴力方法

我知道,题目说是10个方法,但是这一条是在你真的有了灵感之后的奖励提示。看看你的编程书籍,RSS订阅,twitter,Stack Overflow或任何其他编程信息的源。找到两个不相关的主题,甚至你只觉得略有趣味。现在找到方法来连接两者。即使有点模糊。

例如,就随机的,我选择了解析器和…无障碍环境。你可以了解它们,然后编写一个HTML解析器,并特别关注无障碍因素。截至今天,我没有看到太多关于这个主题的代码,所以这可能是一件好事。(这里有一个开源的无障碍测试器,我找到的一个例子,但一个是不够的。)

本文来自开源中国社区 [

转载地址:http://jqial.baihongyu.com/

你可能感兴趣的文章
Linux下排查JVM的CPU偏高问题
查看>>
Alamofire4.x开源代码分析(二)请求参数和编码
查看>>
Android设计模式系列(10)--SDK源码之原型模式
查看>>
Eclipse中开启java的assert选项
查看>>
Centos7部署springboot.jar项目
查看>>
内存溢出与内存泄露
查看>>
对象的共享
查看>>
MD5算法加密实例
查看>>
【转】内联图片的优缺点
查看>>
tabs扩展:按照标签页ID进行检索
查看>>
JVM的常用参数
查看>>
python的tuple知识点
查看>>
Linux常用命令集
查看>>
Linux挂载LVM分区的方法【转】
查看>>
究竟是win7好用还是win8.1好用
查看>>
spring DAO模块支持jdbc
查看>>
一、vim插件NERD_tree.vim
查看>>
10个非常好用的 Laravel 辅助函数
查看>>
Android启动速度优化-总会遇到的不痛不痒的坎~
查看>>
android 应用层如何连接rild
查看>>