我的编程能力从什么时候开始突飞猛进

2020 年 10 月 10 日 计算机视觉life

点击上方“计算机视觉life”,选择“星标”

快速获得最新干货


作者:MutexLock

链接:https://www.zhihu.com/question/356351510/answer/114888572

整理:良许,仅作为学术分享,侵删

疫情原因回不去学校,作为一个马上毕业,即将入职腾讯的大四生,分享一下自己的学习历程吧。


本人在大学之前从未接触过编程,最开始的编程学习还是在高考完后,从书店买了本C Primer Plus,然后暑假开始啃,前前后后也就看了几十页。


大一上的时候,来到了华中师范大学,还没有转专业到计算机,一直在自学C语言和看一些计算机入门书籍(编码、计算机科学概论)。


当时也很迷茫,不知道以后道路如何,所以也学了一些杂七杂八的东西(前端 python啥的),所幸的是,当时坚持把C Primer Plus结结实实地精读了一遍,而且几乎练习题都做了,算是比较好的开端。


大一下,转专业到计算机了,开始自学数据结构,算法和C++,部分看完了 数据结构与算法分析,并且把书上的数据结构实现了一遍,记得当时五月份给自己的flag是看完C++ Primer,然后每天上课看,晚饭吃完后也跑去七号楼刷书,最后囫囵吞枣似的看完了大部分。


大一暑假,txr大佬给我说他面试通过了华科的联创团队Unique Studio,而且给我说他们团队都特别厉害,有些人在军训的时候就把C++ Primer给蹲着看完了,当时十分钦佩,幻想也能够进入贵团队。


于是打算在大二上的时候,去报名他们的秋招。所以,那个暑假在学校自学,呆了五十多天。最初,拿起一本APUE,看了一章后感觉看不懂又放下了。


然后,又拿起一本红色封面的算法第四版,这本书看完了,并且用C++把上面的算法都实现了一遍。另外,听知乎大佬说CSAPP是必看的神书,当时也懵懵懂懂地看了前面三章,做了lab。


为了学习 linux,还看了一本叫 linux 命令行大全的书。武汉的夏天很热,只能寂寞待在宿舍的我,打开了 LeetCode 的世界,写了一百多道题。


大二上,十月,忐忑迎来了联创的面试,前面两轮都过了,直到其特色的“熬夜测试”环节,因为实力不足+精力不足,测试败北,没有通过。


清晨七点,在回学校的公交车上思考自己不足,总结是知识体系仍然不够完全,而且深度也不够。后来这个学期有点“误入歧途”的意思,入了 Machine Learning 的坑,记得当时花了好几个月刷完西瓜书和吴恩达机器学习课程的讲义(真佩服当时的毅力,都是英文和公式推导),后来想了想,ML/DL这个东西有点玄学,于是毅然决定成为一名做工程的程序员。


总的来说,虽然这个学期的时间都投入到 ML 的学习中,没有学习工程方面的东西,只有用python写了一点好玩的爬虫,但是给了我以后坚定走工程方向的决心吧。


大二下,这个学期是打下计算机知识基础的关键时期。从知乎找了一系列书单,看完了CSAPP(做了lab,为了bomb lab还通宵了,强迫症想让自己把炸弹都拆了)、半本算法导论、effective C++、计算机网络系统方法(前三章)、部分TCP/IP详解等,做了一些项目,比如正则引擎(这个是参考了轮子哥的教程)等等,尝试写JSON库(未遂)。


其实,因为学校只是一个普通211,找到好工作的学长学姐先例很少,一直是没有信心自己能去大厂,直到当时了解到孟永康学长在春招收割了一系列offer后,才有了些许信心,相信自己如果能够像他那样努力,那么也能够找到好工作(感谢myk学长那时的鼓励和指导)。


所以,定下了一年把自己水平提升到能够在大三下春招的时候拿下大厂offer的目标。


大二暑假和大三上也一直为这个目标奋斗,补上了APUE、部分UNP、深度探索C++对象模型、STL源码剖析、操作系统概念、操作系统真象还原、Linux多线程服务端编程、部分C++ template、部分C++ Concurrency in Action等书籍。


然后,也一直没有放弃刷题,LeetCode写到了三百多道。同时也做了一些项目,跟着操作系统真象还原写的操作系统、简单的协程库,阅读了一些优秀的开源项目,SGI STL、muduo、libgo、libco等。


中途还对haskell产生过兴趣,打印了一本Learn Yourself Haskell For Great Good,看完后感觉坑太深,还是专注找工作吧,haskell对我一直都有很强的吸引力,但是这种也只能作为爱好吧。


另外,编译器也是有这种魔力,看了部分编译原理(龙书)、部分现代编译原理(虎书)和部分Engineering a Compiler,多次尝试写自己的编译器,多次未遂(不过现在有空了,在补上之前的烂尾项目)。当年的笔记哈哈:


部分学习笔记


时间到了12月份,9号楼某个自习室内,txr大佬一直鼓励我去投简历找实习,本来我一直畏畏缩缩,对自己不太有信心,被鼓励后想着投就投吧。当时投了字节跳动和momenta的实习,面试都比较顺利,于是在大三上就在字节跳动开始了愉快的实习,比自己的计划早了大半年。


当时为了准备面试,看了好多牛客网的面经,查漏补缺式地补齐自己的知识盲区。


大三下,基本都是在实习,学习了很多工程实践上的东西,接触了go的技术栈,并且对devops和软件工程方面有了认知,包括代码管理、发布流程、微服务啥的。


然后实习的时候骑驴找马,找到了腾讯的暑期实习。因为这个时候没有了找工作的压力,所以开始学一些自己感兴趣的东西,包括Rust(至今水平还是不太行)、分布式系统(DDIA、MIT6.824等),零零散散学了点东西。


大三暑假,腾讯实习了两个月,开始学习kubernetes、各种中间件等实际业务用到的东西,这个时候就感觉拥有到扎实的计算机基础是最重要的东西。


最后,顺利拿到了腾讯转正和字节跳动的秋招offer,两家都给的比较高,选择了工作体验更喜欢的腾讯哈哈。


总的来说,学习计算机是需要积累的,花一两年时间啃下那些厚厚的经典书籍后,才能构建自己的知识体系,然后阅读大量优秀源码,做一些有趣的项目,编程能力就能突飞猛进啦。


现在回头来看,大学时光真是如此宝贵,这是人生中为数不多可以静心学习的一段时间,可以不用考虑任何其他事情,每天学习十多个小时。


部分藏书



  
  
    

书籍推荐

《IntelliJ IDEA入门与实战》适用于所有Java编程语言开发人员、IDEA爱好者以及所有计算机专业的学生等。



专辑:计算机视觉方向简介

专辑:视觉SLAM入门

专辑:最新SLAM/三维视觉论文/开源

专辑:三维视觉/SLAM公开课

专辑:深度相机原理及应用

专辑:手机双摄头技术解析与应用

专辑:相机标定

专辑:全景相机


从0到1学习SLAM,戳↓

视觉SLAM图文+视频+答疑+学习路线全规划!

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

投稿、合作也欢迎联系:simiter@126.com

扫描关注视频号,看最新技术落地及开源方案视频秀 ↓

登录查看更多
0

相关内容

CVPR 2022 将于2022年 6 月 21-24 日在美国的新奥尔良举行。CVPR是IEEE Conference on Computer Vision and Pattern Recognition的缩写,即IEEE国际计算机视觉与模式识别会议。该会议是由IEEE举办的计算机视觉和模式识别领域的顶级会议,会议的主要内容是计算机视觉与模式识别技术。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【2020新书】深度学习自然语言处理简明导论,69页pdf
专知会员服务
112+阅读 · 2020年11月7日
【干货书】Python 编程,480页pdf
专知会员服务
230+阅读 · 2020年8月14日
一图搞定ML!2020版机器学习技术路线图,35页ppt
专知会员服务
92+阅读 · 2020年7月28日
专知会员服务
159+阅读 · 2020年7月27日
打怪升级!2020机器学习工程师技术路线图
专知会员服务
96+阅读 · 2020年6月3日
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
139+阅读 · 2020年5月19日
已拿Offer!字节跳动算法面试经验
CVer
22+阅读 · 2020年7月3日
初入NLP领域的一些小建议
人工智能前沿讲习班
6+阅读 · 2019年3月16日
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
做机器学习和AI必备的42个数学知识点
AI前线
8+阅读 · 2018年12月6日
吃鸡手游竟然是Python写的?
机器学习算法与Python学习
6+阅读 · 2018年9月11日
从零开始一起学习SLAM | 学习SLAM到底需要学什么?
计算机视觉life
8+阅读 · 2018年9月9日
如何从零到一地开始机器学习 ?(附思维导图)
THU数据派
6+阅读 · 2018年4月17日
AI都干过什么让人细思极恐的事?
全球创新论坛
4+阅读 · 2017年9月15日
Arxiv
0+阅读 · 2020年12月2日
Arxiv
25+阅读 · 2018年8月19日
VIP会员
相关VIP内容
【2020新书】深度学习自然语言处理简明导论,69页pdf
专知会员服务
112+阅读 · 2020年11月7日
【干货书】Python 编程,480页pdf
专知会员服务
230+阅读 · 2020年8月14日
一图搞定ML!2020版机器学习技术路线图,35页ppt
专知会员服务
92+阅读 · 2020年7月28日
专知会员服务
159+阅读 · 2020年7月27日
打怪升级!2020机器学习工程师技术路线图
专知会员服务
96+阅读 · 2020年6月3日
【实用书】Python数据科学从零开始,330页pdf
专知会员服务
139+阅读 · 2020年5月19日
相关资讯
已拿Offer!字节跳动算法面试经验
CVer
22+阅读 · 2020年7月3日
初入NLP领域的一些小建议
人工智能前沿讲习班
6+阅读 · 2019年3月16日
年薪48万的程序员,他究竟做对了什么?
机器学习算法与Python学习
7+阅读 · 2018年12月28日
做机器学习和AI必备的42个数学知识点
AI前线
8+阅读 · 2018年12月6日
吃鸡手游竟然是Python写的?
机器学习算法与Python学习
6+阅读 · 2018年9月11日
从零开始一起学习SLAM | 学习SLAM到底需要学什么?
计算机视觉life
8+阅读 · 2018年9月9日
如何从零到一地开始机器学习 ?(附思维导图)
THU数据派
6+阅读 · 2018年4月17日
AI都干过什么让人细思极恐的事?
全球创新论坛
4+阅读 · 2017年9月15日
Top
微信扫码咨询专知VIP会员