/LearningCsTutorial

一些关于计算机学习的指导

大学计算机系学习指导

导言

这个project目的是帮助大学生解决学习方面的问题.同时也是我自己的一个总结. 或许你是刚刚进入计算机领域的小白,上课的时候总会感到很多困惑,在机测时看着大神早早离开的背影,而自己却毫无思路,完成实验的过程中总是磕磕绊绊,或许你已经进入了计算机的大门,但是面对繁多的方向和课程却不知道如何学习,或许你是即将面临找工作的学生,想要进入BAT(百度,腾讯,阿里)甚至FLAG(Facebook,LinkedIn,Amazon,Google),微软,却不知道如何准备面试,那么这个教程就是为你准备的,这边会给你相应的指导以及一些优秀资源的推荐.但是要注意的是,这边并不会给你详细内容介绍,这边只是提供提高效率的工具和方法,比较好的学习路径和方向,以及一些优秀的资源。

菜鸟篇(面向大一童鞋)

来看这一篇的人我想大多都是刚刚进入大学的大一学生,我想大学前很多人都告诉你们高三好好努力,上了大学就可以随便玩了,这就是屁话,大学是你从学生走向社会/学术的中间桥梁,只有在这里对自身进行足够的锻炼,才能够在进入社会后具有足够的实力. 你们刚刚来到大学,对一切都充满了好奇,想要参加各种各样的活动,想要开黑打游戏,刷剧,想要谈恋爱,这个世界很大,你还想到处去看看,ok这些都没问题,但是你得明白既然你选择了计算机那么技术就是你的立身之本.关于大学生生活的指南我推荐几本书,你们可以选择购买实体书或者电子书,如果经济上有问题的话可以搜索书名+pdf的方式找到免费的电子书,如果经济上允许请尽量购买正版书籍或电子书.

关于如何养成良好的学习习惯,我推荐coursera的课程Learn How to learn 如果懒的上课,这有两个notes可以借鉴,note1, notes2, 下面是我的一点心得:

  • 指定详细的学习计划,通过手机软件来防止自己走神,提高学习效率,我推荐使用OFFTIME
  • 不要因为一些小事就打断自己的学习计划,比如天冷了不想学习什么的,这样子很容易半途而废

下面进入正题,讲解学习计算机的方法和相应的资源.

  1. GFW和翻墙

   计算机行业是个迅速发展,高速进步的行业,所以学校里交的东西往往和业界流行先进的方法和理念有些许差距,但是互联网能够尽可能的消除这之间的差距,所以我们要善于利用这个工具,但是能因为一些特殊原因我们不得不面对GFW,这使得互联网帮助我们学习的能力大打折扣,解决这个问题的方法是采用VPN或者自己搭建shadowsocks服务器,如果你比较懒的话,就直接选择付费的VPN,如果你是一个爱动手的童鞋,那么下面的教程是为你准备的:shadowsocks搭建教程, 上面的地址已经被墙了, 新地址,一个比较简单的介绍,基本使用够了.

  1. 值得关注的网站

    下面推荐的网站都是你在将来的计算机生涯中都需要频繁使用到的:

    • github 全球最大的同性交友网站,咳咳,正经点,只是个玩笑,这个网站是全球最大的开源项目托管网站,在这边你可以见识到各种强大神奇的项目和各路大神,比如今年google做的alphaGo就有个开源版本betaGo托管在github上.下面这个教程进入github的世界.
    • stackoverflow 全球最大的编程问答网站.
    • 知乎 技术性不如上面两个,但是可以用来装逼啊
    • 更多
  2. 基础能力训练

    刚刚接触编程的同学往往都会感觉找不到思路,机试的时候无比痛苦,这是因为我们缺少一门入门的导论以及缺少相应的锻炼,下面推荐一些mooc课程和练习网站.

    • 如果你英文好那么standford的这门公开课很适合你ICS
    • 如果你你英文比较渣,那么记住后面的日子一定要努力把这块填上,听和读为首要,说为其次,网易公开课上翻译过的M的这门课适合你编程方法学,这门课程采用java教学,哈佛大学的这门课计算机科学导论采用c语言,两门课选择一个.    * 不会编程,编程的时候完全没有思路怎么办?要解决这个问题,一是要学会编程思维方式,二是要勤加练习,上面推荐的两门课在一定程度上可以锻炼你的编程思维,其次你需要每天锻炼自己的编程,想要在机试时让其他人只能望着你那潇洒的背影,那么这两个网站(中文和英文)适合你,计蒜客,codecademy,如果这两个网站已经不能满足你了,那么codevs,topcoder更适合你,每天不需要花太多时间1-2小时即可,请尽力坚持,记住21天就可以形成一个习惯.

待续

进阶篇

待续

就业篇