文章目录

  • 00、写在前面
  • 01、双屏分屏
  • 02、手机静音
  • 03、只学一个
  • 04、学会沟通
  • 05、精力管理
  • 06、示例代码
  • 07、温故知新
  • 08、用快捷键
  • 09、语言基础
  • 10、代码错误

00、写在前面

最近有读者反映学习编程困难,想放弃,询问是不是真的有不适合编程的人?我结合最近自己的学习经历和思考以及最近在数据结构与算法的折磨下得出的一些心得。

唐代大臣魏徵的【谏太宗十思疏】中写道,“善始者实繁,克终者盖寡”。大概的意思是:如果有好多人同时做一件事情,善于开始去做的人是非常多的,但是能够把这件事做好的人就寥寥无几了。

这句千古名言可以说是非常经典了,用来形容学习编程的过程同样适合。在成为专家大佬甚至科学家之前,困难会一直伴随着你,有多少人放弃可想而知,所以才会有了另一句【行百里者半九十】。

在这篇文章里,给所有的编程者提供了 10 个真实有用的建议。

01、双屏分屏

如果经济条件负担得起的话,我真的建议搞一个双屏幕。


但是如果实在负担不起的话,分屏也是可以的,当然屏幕不能太小,,,

在大多数情况下,学习编程时最好把有两个并排的面板可以使用——一个给你的 Jupyter notebook 或者 vscode;而另一个则是 Google Chrome 浏览器。IDE用来编程编译运行查看代码结果,浏览器用来查看文档、CSDN、知乎或者 Stack Overflow 和一些教程博客等等。等你渐渐熟悉了这一切之后,越来越熟练时,你就会无法逃离这种专注于工作的感觉了,而且非常之方便(爽)。

PS:如果想用快捷键来切换分屏和全屏,可以看下面的两个动图:

  • Windows:

  • Mac:


02、手机静音

这么多年摸爬滚打,经过九年义务教育和考研的洗礼,我觉得成功一个决定性的因素就是【专注】。

让你的手机静音,尤其是你的微信。如果可以的话,把手机拿开,放到另一个屋子去;如果不可以的话,就把手机设置成静音而不是震动;如果在嘈杂的环境,就播放安静的纯音乐(钢琴曲之类的)或者使用降噪耳机;如果你不能容忍太过干净的环境的话,就可以放一些白噪声或者雨林等等。

你越能专注集中注意力,你就越能学得快,越能学的好。


03、只学一个

虽然越来越多的信息出现在互联网上,越来越多的付费课程,越来越多的博客,越来越多的专业,其中最为明显的就是【人工智能】。


你需要【英语】,【python】,【框架】,【理论】,【第三方库】,【显卡】,还得搞【竞赛】,【项目】,【论文】。

不要试图同时开多个科目,比如学习两个或者三个,这样时间就不只是变成1/2或者1/3,而是变成1/5甚至1/10,同时效率也会受到影响,因为人的大脑会存留记忆。同理, 不要分心于闪闪发光的诱人的但和你正在学习的东西不相关的东西,如果真的很感兴趣,就找个地方,保存一下 url,比如Chrome 的书签,

或者是插件 One Tab 都很好用。


04、学会沟通

在你学习编程的过程中,会试图封闭自己,什么都自己完成,你猜怎么着?

效率不高。

要学会使用社变相区和伙伴,比如,如果有一个朋友和你一起合作,你会学习得更快(同辈压力和更多沟通)。

当和他人合作时,个人程序的缺点就会暴露出来,所以你学会编写更有效的代码,因为有人在变相地监视你。可能最开始你会极度不适应,但是作为一个程序员,总有人在审查校验你的代码,所以习惯这些。


05、精力管理

其实如果你有过一阵子的经历,就应该知道程序员绝对是一个体力活,所以睡觉,保持体力是一件多么重要的事就不言而喻了。

大多数人在下午时间的效率都低,而上午时间大脑则处于最好的状态,之前看一个Facebook工程师说他们培训的时候也是这么教的,就是学会给今日的 to do list 做一个优先级序列,在上午先去做优先级高的任务,可见精力管理是多么重要。

另一个小故事,Dinesh教授有一个,保持了几十年的习惯,就是(平均)每天只睡4个多小时,可以说是智力超群、体力超群、习惯超群。。。恐怖如斯,体力的竞争上老外明显要更强,中国人重视程度还是差一些,反正我自己是深有体会,加强中,每天跳跳绳也是好的。


06、示例代码

现在资源泛滥的时代,代码一抓一大把,GitHub或者博客,再或者书籍源代码,琳琅满目的。

现在摆在你面前的是一些代码,你能看得懂,是的,是能看得懂,但是你能写出来嘛?答案自然是。。。不能的,【光看不练假把式】,古人诚不欺我也~

亲手去把那些示例代码敲一遍吧,须知【好记性不如烂笔头】。


07、温故知新

相信大家第一想到应该是大名鼎鼎的艾宾浩斯记忆曲线。

其实新背的单词或者刚学的知识概念,从你学完的那一刻起就开始遗忘了,这就是所谓的【打开书马冬梅,合上书孙红雷】。

研究表明,如果不抓紧复习,最后就只能记得剩下的21%,所以要每隔一段时间,就重复一次,这是比死记硬背有效得多的。


08、用快捷键

常用快捷键的人效率确实要比别人高,比如PPT。


这里整理了一份快捷键,当然还有其他的快捷键,比如:

pycharm:

jupyter notebook:

网上一搜索一大堆,关键是学会熟练使用。


09、语言基础

在使用官方或者个人编写的程序库之前,要充分理解一门编程语言,比如python或者C++。


当你接触底层书写的时候,你会发现真的很无聊同时又很难,而直接调用属性和方法的类似乎又高级又容易。但是如果你不能很好地理解了编程语言,那么你就会陷入抽象泄露的情况之中,你无法搞清楚库在干什么,只是单纯地会调用,也就是江湖人称的调包侠。


10、代码错误

在绝大多数时候,作为一个程序员,你都是在寻找项目中的 Bug,否则你无法继续前进。

过程如下,首先读读错误信息,看看能不能看得懂:

  • 比如是不是代码打错了
  • 是不是旧版本资源

如果都不是,那么可以直接复制错误信息,去使用百度或者谷歌,再或者博客论坛之类的去查询你的错误,对网络资源进行筛选,以分清哪些是有效的。

再不行,可以 debug 查看输出结果,确定错误为止,一遍解决问题。

当然一些低级错误除外,主要是不熟悉导致的,比如C++的分号,Python的缩进。

如果有幸帮到你,请帮我点个【赞】,给个【关注】!如果能顺带【评论】给个鼓励,我将不胜感激。

如果想要更多的资源,欢迎关注 @我是管小亮,文字强迫症MAX~

回复【福利】即可获取我为你准备的大礼,包括C++,编程四大件,NLP,深度学习等等的资料。

想看更多文(段)章(子),欢迎关注微信公众号「程序员管小亮」~


学习python的同学,可以看一下这个课程!

10个提升效率的编程好习惯相关推荐

  1. 10 个提升效率的Linux小技巧

    您是否曾经惊讶于看到某人在 UNIX 中非常快速地工作,触发命令并快速地执行操作?是的,我碰到过几次,并且我一直都在向那些超级巨星开发者学习.在本文中,我想分享一些 UNIX 命令实践,这些实践是我在 ...

  2. 菜鸟学习笔记:Java提升篇10(网络2——UDP编程、TCPSocket通信、聊天室案例)

    菜鸟学习笔记:Java提升篇10(网络2--UDP编程.TCPSocket通信) UDP编程 TCP编程(Socket通信) 单个客户端的连接 多个客户端的连接(聊天室案例) UDP编程 在上一篇中讲 ...

  3. 被字节跳动T4级大佬鄙视了:让你10倍提升认知效率,就这3个方法!

    来源| 技术领导力(ID:jishulingdaoli) 国庆长假前,老K跟一位字节跳动T4级的大佬吃饭,聊到技术人如何快速提升认知的问题.我说,很简单啊,努力到无能为力,拼搏到感动自己......话 ...

  4. excel android 公式,两个超实用的Excel万能公式,瞬间提升你10倍工作效率!

    相信大家在平时的工作中,都会经常有用到公式的需要,但是下面这些公式你用过吗,今天小编就带大家一起看看吧! 1. SUM函数 这个函数不仅在我们学习的过程中会用到,即便到了工作后,也经常需要对各种数据进 ...

  5. 10个提升PPT幻灯片制作效率的方法

    PPT是职场当中几乎每个人都有机会接触的工具,做PPT做的时间久了,要是你一直都在重复某些操作,但却没想办法提升效率. 这就不能怪别人都早早下班,而你还在苦逼苦逼地做着PPT了. 今天本文给大家总结了 ...

  6. 【视频学习】12堂快速阅读课,10倍提升阅读效率

    12堂快速阅读课,10倍提升阅读效率 视频下载链接:https://download.csdn.net/download/qq_36749728/19827075 先导课-阅读缓慢的普通人,也能实现& ...

  7. 提升10倍写作效率,这5个写作工具,文笔不好的人别错过

    记得刚出来上班的时候,我的写作效率很低,经常没有思路,也找不到选题.甚至一两个小时过去了,仍然不知道如何动笔,经常写了删,删了又写.工欲善其事,必先利其器.在写作过程中,需要一些工具,解决我们的写作问 ...

  8. 程序员必备利器:8 款“珍藏已久”的程序开发利器,瞬间提升效率

    上班摸鱼,感觉今天的天气适合做好物分享,所以,就来给大家介绍8款我珍藏已久的开发者利器!记得点个收藏哟~ FocusFox 互联网是一个令人分心的地方,每天,我们会访问,接触各种各样的网站. 当你想把 ...

  9. 8种提升程序猿编程能力的方法+编程思维四个核心:分解、抽象、模式识别和算法

    8种提升程序猿编程能力的方法 对于程序员来说,提高自己的编程能力,算是给自己定的职业发展目标之一,不过定一个成为编程大神的目标很容易,具体做起来可能就不是一件简单的事了.首先,既然决定"我要 ...

  10. VScode提升效率技巧教程

    VScode提升效率技巧教程 前言 一.快捷键 1. CTRL + P 2. CTRL + T 3. F12 4. CTRL + F 5. CTRL + J 6. ALT + ⬅/➡ 7. ALT + ...

最新文章

  1. 知识图谱的前世今生:为什么我们需要知识图谱?
  2. 硬盘知识大杂烩(四)
  3. [TJOI2019]甲苯先生的滚榜——非旋转treap
  4. hibernate----N-1(一)
  5. bzoj4383(拓扑排序)
  6. wxWidgets:wxCondition类用法
  7. Springsecurity搭建自定义登录页面
  8. 3-32,3-33Pytorch与autograd中的几个重要概念
  9. 区块链开发入门书籍和文档
  10. UVA11150 Cola【数学】
  11. 微软官方的《Power BI权威指南》译版发售
  12. 一个屌丝程序猿的人生(九)
  13. svn 回退到指定版本无法提交_svn回滚到指定版本
  14. OpenCV车牌识别
  15. Emmagee工具的使用以及csv数据分析
  16. OpenPose:实时多人2D姿态估计
  17. office 论文 页码_word如何设置毕业论文页码
  18. Eureka入口之DiscoveryClient
  19. 公司注册地址要注意,小心被拉“黑”,征信受影响
  20. sentinel 1A数据升降轨道

热门文章

  1. wordpress图文安装教程 非常详细
  2. jQuery.Revealing图片展示插件
  3. delphi显示jpg、png、gif图片
  4. 盘点番茄汁有益于身体的N多好处
  5. ESP32 文件存储 spiffs
  6. RQ配置使用Redis Cluster
  7. 十进制转换成十六进制
  8. 学英语《每日一歌》之Traveling Light
  9. The JAVA_HOME environment variable is not defined correctly(亲测有效)
  10. RecyclerView实现广告轮播图(一)