[心得]怎么样赶超计算机科班生

前言

每次换互联网的工作,如果不是计算机专业毕业,即使你来自名校,对方心里还是打鼓啊,毕竟隔行隔山。你需要自己打好基础。丑话说前头,不要相信有什么南山捷径,你需要的是实干,马上行动,勤能补拙是良训,一分辛劳一分才。
我这边博文结合自己的体会,综合知乎的一个话题:http://www.zhihu.com/question/21405835展开。

认知

首先,不要被科班不科班的搞晕,就像外校考清华一样,你考进去了,那就是考进去了,清华的很多土著,如果成绩末流,一起考场pk,胜负未定也。清华本科土著很多不就是当年高考这么杀进来的么。早几年前,大家都是泥腿子出来的呢。

其次,不要被现状所困扰,你现在是应届生,是搞测试的,是文科生,这些都不要紧,你得有梦想,并且坚决执行,用行动和结果来激励自己。

其次,计算机有很多方向。但有很基础的东西,比如编码,算法,数据结构,这些是非常基础的东西,花时间练习是必须的。这个地方绝对不要犯懒。

最后,好记性不如烂笔头,多年的经验积累,一定要往外输出分享,这个也很重要。工作之后,这点更是会有深刻体会。

实干

先看科班的核心课程:
数据结构和算法
操作系统Tanenbaum
数据库系统
分布式系统
TCP/IP详解

再看一些方向,比如最近热门的人工智能。传统的那些分支,比如状态空间搜索,约束问题,推理,规划,知识表达,已经非常冷门了,所以反过来那些热门的分支都出去自立门户了,比如机器学习,自然语言处理,计算机视觉,机器人。

程序语言分3部分:
1. 语法学:编译原理,不过像关于《计算理论》(包括《形式语言与自动机》)<Introduction to the Theory of Computation> (Michael Sipser)不用去看了。美国大学CS特别强调‘计算理论’相关的课程,做学术的话这些东西可能会用到,但是干程序员的话这些东西基本上不会用到。
2. 语用学: 语用学其实就是比较和总结各种各样程序语言的共性和区别。<Programming Language Pragmatics> (Michael l. Scott)。除了C/C++和Java外,值得推荐的还有用于脚本的Python,用于网页的PHP和用于动态效果的Javascript。
3. 语义学:计算机程序的构造和解释》(<Structure and Interpretation of Computer Programs>),这部分不用浪费时间。

系统工程
高级Unix环境编程APUE
操作系统<Modern Operating Systems> (Andrew S. Tanenbaum and David J. Wetherall)
计算机网络<Computer Networks> (Andrew S. Tanenbaum and David J. Wetherall)
UNP:unix网络编程
CSAPP:深入理解计算机系统
数据库系统概念:<Database System Concepts> (Abraham Silberschatz et al.)
软件工程:<Software Engineering: A Practitioner's Approach> (Roger Pressman and Bruce Maxim)

Lucida(巩朋)是Google员工,他有一个程序员必读书单:
http://link.zhihu.com/?target=http%3A//lucida.me/blog/developer-reading-list/

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值