看看

哎,编程!!

本站旨在依靠学生团队打造一个较为专业的软件视频培训、交流、合作平台,结识更多的软件爱好者,揭开软件神秘面纱,一起为未来加油! 
 
PS:如果你觉得本站不错,请猛击右上角星星“推荐”哦!谢谢!! 
 
 
============================================================================== 
     /*  微信“求职是落点”,人人公众平台“中哥教面试”欢迎关注!*/ 
 
============================================================================== 

RSS 归档

2013互联网公司,年终奖有几何?---【网上都转爆了】

---互联网技术猎头储小浩

 

弄了一个礼拜,终于整理赶在2014年前搞清楚了各大互联网公司的年终奖,感谢积极的小伙伴们 提到年终奖貌似都很积极,个别不清楚的还去问了HR,不过毕竟不是所有信息都是通过HR了解到的,所以有个别不准的。见谅。

百度:百度offer上写得是14.6个月薪水,年中发0.6个月,年底发2个月,发稿前跟小伙伴确认了一下,年终奖是要算上公司绩效和个人绩效的,所以也不是固定的,不过上下浮动不大。话说2012年百度股票受到狙击,貌似有公司绩效都按0算了,后来有一部分人补上了,一部分没补,今年百度移动和搜索广告收入都不错,股价也稳步回升,相信不会再出现去年的情况。

阿里:去年阿里推出了一个月的集团奖励,我估计今年也差不多。按绩效最高的那一类年终奖达到9个月,所以薪水应该是16-21个月,没拿到16个月的貌似是混得比较惨,会被干掉的那种吧~话说今年阿里期权内部交易价好像跟去年差别不大,依然在25-30刀/股,内部对上市后暴富的期待貌似也没前两年那么热情高涨了。不过如果看机会,阿里肯定还是国内最好的选择之一,技术,薪水,氛围,都不错。

腾讯:北京的部门都是0-4个月年终奖,平均3个月,深圳的游戏部门和微信部门就不提了,必然是土豪,今年不同的项目组能发多少我们拭目以待,我会及时更新。

奇虎:12个月薪水,每个季度月薪*25%*个人绩效的季度奖,一年季度奖加一起是1个月薪水。年终奖是月薪*公司绩效*个人绩效。公司绩效点不知道有没有涉密,就不说了。反正一年整体薪水是14-16个月的薪水。就我自己的感觉,奇虎是喜欢高回报的无线研发和PHP工程师的的首选,BTW,今年奇虎校招应届硕士刚发出了16K的offer(前端职位)。

金山网络:14-18个月工资,具体怎么发放不清楚,貌似只拿到14个月的也是要被干掉的。金山网络今年张罗了不少人,进不去奇虎又想要高薪的很多都去了金山,加班很多,不比360轻松。

搜狐/网易:这两个公司的奖金体系很相似,没有年终奖,都是季度奖。季度奖每个部门还不一样,是按照效益来的,比较好的像汽车之类的部门季度奖相当于1-2个月月薪,这么看一年18个月薪水也不是梦想,乃们不要再黑搜狐网易薪水低了。

搜狐视频:年终奖相当于20%-30%的年薪,按季度发还是年底一起发我给忘了~

搜狗:没有年终奖~ 安啦,有季度奖。每个季度的季度奖最高相当于0.6个月薪水,这样每年最多是14.4个月薪水。

搜狐畅游:之前是很死板的12个月薪水,今年有调整,每个月多出两千的孝心奖(打到你父母卡里),全年14薪。多出了两个月年终奖怎么发放暂不清楚。

新浪:1-2个月年终奖,据传有人可以拿到3-4个月的年终奖,就我今天三月份联系2000名新浪工程师的记录来看,这样的年终奖不是给码农们准备的~

人人:季度奖,SABC打分,每个季度上限1.5个月薪水,下限…当然就是没有了~ 这样看一年最多18个月,最少12个月,不知道今年有没有人好意思拿18个月薪水的。

小米:入职发个手机(谁稀罕),今年是2-3个月年终奖,每个组奖金都不一样,不过也差不了多少。依然是每天10-11点下班,不过周六不上班了。

优酷土豆:12个月基本薪水,年中年底各有一次奖金,加一起2-3个月。另外还有一个项目奖金,如果项目评级到S,奖金相当于1.5个月月薪,前提是你加班时间得符合要求~

去哪儿:16个月薪水,新土豪,”三个人拿四个人的薪水干五个人的活”策略的坚定执行者。现在的工程师招聘说会看个人表现给期权,不过我已经见到没拿到RSU而离职的人了。晚上加班到很晚,上午十点公司没人~

五八:14.5个月薪水,年终奖1个月,还有1.5个月薪水哪儿来的我也不知道,HR很冷落我,估计是因为我长得丑~

高德:猎头的大腿,今天招了多少人HR都没算清楚。据说猎头服务费就花了小一千万,铺天盖地的做广告,薪水也不落人后。高德地图这个部门今年年终奖估计得超4个月薪水,其他部门全年年薪也都在15薪左右。

京东:每个月有1000*(0.8-1.2)的绩效,副经理以上级别2500*(0.8-1.2)的绩效。年终奖1-2个月,能拿到两个月的都是很厉害的人物了。

美团:美团喜欢用内部推荐的方式招聘,所以猎头洞悉的内部资讯也不多。只知道内部技术氛围不错,稳定度很好。年终奖1个月,每个季度的季度奖差不多是1/3的月薪。

Opera:15个月薪水,12个月工资+两个月季度奖+1个月年终奖。季度奖按2224的比例发放。

大街: 固定13薪,有季度奖,最多16个月薪水。话说大街网还是挺舍得给钱的,技术氛围没那么好,业务也不温不火,不过还是有很多人冲钱去了,隐约记得某风雨飘摇的公司跳去了一个11年本科毕业的java,给了16K,真是舍得花钱。

求职,你值得关注

为了紧跟形势,特别推出配套人人网公众平台(中哥教面试)和微信平台(求职是落点),对应素材脚本如下,欢迎关注

 


原创区:

1.       非你莫属的视频分析

2.       从招生的需求里面看你该怎么做

3.       从大学到职场系列,教你如何在大学铺垫,在职场喷发

 

资料共享区:

1.       求职的基本注意事项

2.       求职小技巧

3.       各个职业的介绍,相当于各个职业的述职报告(需要整合)

一些资料的分享(比如专家教你写好年终总结之类的)


微信二维码:(求职是落点)

求职,你值得关注

人人公众平台二维码:(中哥教面试)

求职,你值得关注

 

 

转:程序员练级之路 (作者:陈皓)

建议:

不要乱买书,不要乱追新技术新名词,基础的东西经过很长时间积累而且还会在未来至少10年通用。

回顾一下历史,看看历史上时间线上技术的发展,你才能明白明天会是什么样。

一定要动手,例子不管多么简单,建议至少自己手敲一遍看看是否理解了里头的细枝末节。

一定要学会思考,思考为什么要这样,而不是那样。还要举一反三地思考。

注:你也许会很奇怪为什么下面的东西很偏Unix/Linux,这是因为我觉得Windows下的编程可能会在未来很没有前途,原因如下:

 

 

 

现在的用户界面几乎被两个东西主宰了,1)Web,2)移动设备iOS或Android。Windows的图形界面不吃香了。

越来越多的企业在用成本低性能高的Linux和各种开源技术来构架其系统,Windows的成本太高了。

微软的东西变得太快了,很不持久,他们完全是在玩弄程序员。详情参见《Windows编程革命史》

所以,我个人认为以后的趋势是前端是Web+移动,后端是Linux+开源。开发这边基本上没Windows什么事。

 

启蒙入门

1、 学习一门脚本语言,例如Python/Ruby

 

可以让你摆脱对底层语言的恐惧感,脚本语言可以让你很快开发出能用得上的小程序。实践项目:

 

处理文本文件,或者csv (关键词 python csv, python open, python sys) 读一个本地文件,逐行处理(例如 word count,或者处理log)

遍历本地文件系统 (sys, os, path),例如写一个程序统计一个目录下所有文件大小并按各种条件排序并保存结果

跟数据库打交道 (python sqlite),写一个小脚本统计数据库里条目数量

学会用各种print之类简单粗暴的方式进行调试

学会用Google (phrase, domain, use reader to follow tech blogs)

为什么要学脚本语言,因为他们实在是太方便了,很多时候我们需要写点小工具或是脚本来帮我们解决问题,你就会发现正规的编程语言太难用了。

 

2、 用熟一种程序员的编辑器(不是IDE) 和一些基本工具

 

Vim / Emacs / Notepad++,学会如何配置代码补全,外观,外部命令等。

Source Insight (或 ctag)

使用这些东西不是为了Cool,而是这些编辑器在查看、修改代码/配置文章/日志会更快更有效率。

 

3、 熟悉Unix/Linux Shell和常见的命令行

 

如果你用windows,至少学会用虚拟机里的linux, vmware player是免费的,装个Ubuntu吧

一定要少用少用图形界面。

学会使用man来查看帮助

文件系统结构和基本操作 ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip …

学会使用一些文本操作命令 sed/awk/grep/tail/less/more …

学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd…

了解/etc目录下的各种配置文章,学会查看/var/log下的系统日志,以及/proc下的系统运行信息

了解正则表达式,使用正则表达式来查找文件。

对于程序员来说Unix/Linux比Windows简单多了。(参看我四年前CSDN的博文《其实Unix很简单》)学会使用Unix/Linux你会发现图形界面在某些时候实在是太难用了,相当地相当地降低工作效率。

 

4、 学习Web基础(HTML/CSS/JS) + 服务器端技术 (LAMP)

 

未来必然是Web的世界,学习WEB基础的最佳网站是W3School。

 

学习HTML基本语法

学习CSS如何选中HTML元素并应用一些基本样式(关键词:box model)

学会用  Firefox + Firebug 或 chrome 查看你觉得很炫的网页结构,并动态修改。

学习使用Javascript操纵HTML元件。理解DOM和动态网页(http://oreilly.com/catalog/9780596527402) 网上有免费的章节,足够用了。或参看 DOM 。

学会用  Firefox + Firebug 或 chrome 调试Javascript代码(设置断点,查看变量,性能,控制台等)

在一台机器上配置Apache 或 Nginx

学习PHP,让后台PHP和前台HTML进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。

把PHP连接本地或者远程数据库 MySQL(MySQL 和 SQL现学现用够了)

跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouster/cgi-bin/cs142-fall10/index.php ) 不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上

学习一个javascript库(例如jQuery 或 ExtJS)+  Ajax (异步读入一个服务器端图片或者数据库内容)+JSON数据格式。

HTTP: The Definitive Guide 读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy, gateway, browsers)

做个小网站(例如:一个小的留言板,支持用户登录,Cookie/Session,增、删、改、查,上传图片附件,分页显示)

买个域名,租个空间,做个自己的网站。

进阶加深

1、 C语言和操作系统调用

 

重新学C语言,理解指针和内存模型,用C语言实现一下各种经典的算法和数据结构。推荐《计算机程序设计艺术》、《算法导论》和《编程珠玑》。

学习(麻省理工免费课程)计算机科学和编程导论

学习(麻省理工免费课程)C语言内存管理

学习Unix/Linux系统调用(Unix高级环境编程),,了解系统层面的东西。

用这些系统知识操作一下文件系统,用户(实现一个可以拷贝目录树的小程序)

用fork/wait/waitpid写一个多进程的程序,用pthread写一个多线程带同步或互斥的程序。多进程多进程购票的程序。

用signal/kill/raise/alarm/pause/sigprocmask实现一个多进程间的信号量通信的程序。

学会使用gcc和gdb来编程和调试程序(参看我的《用gdb调试程序》)

学会使用makefile来编译程序。(参看我的《跟我一起写makefile》)

IPC和Socket的东西可以放到高级中来实践。

学习Windows SDK编程(Windows 程序设计 ,MFC程序设计)

写一个窗口,了解WinMain/WinProcedure,以及Windows的消息机制。

写一些程序来操作Windows SDK中的资源文件或是各种图形控件,以及作图的编程。

学习如何使用MSDN查看相关的SDK函数,各种WM_消息以及一些例程。

这本书中有很多例程,在实践中请不要照抄,试着自己写一个自己的例程。

不用太多于精通这些东西,因为GUI正在被Web取代,主要是了解一下Windows 图形界面的编程。@virushuo 说:“ 我觉得GUI确实不那么热门了,但充分理解GUI工作原理是很重要的。包括移动设备开发,如果没有基础知识仍然很吃力。或者说移动设备开发必须理解GUI工作,或者在win那边学,或者在mac/iOS上学”。

2、学习Java

 

Java 的学习主要是看经典的Core Java 《Java 核心技术编程》和《Java编程思想》(有两卷,我仅链了第一卷,足够了,因为Java的图形界面了解就可以了)

学习JDK,学会查阅Java API Doc http://download.oracle.com/javase/6/docs/api/

了解一下Java这种虚拟机语言和C和Python语言在编译和执行上的差别。从C、Java、Python思考一下“跨平台”这种技术。

学会使用IDE Eclipse,使用Eclipse 编译,调试和开发Java程序。

建一个Tomcat的网站,尝试一下JSP/Servlet/JDBC/MySQL的Web开发。把前面所说的那个PHP的小项目试着用JSP和Servlet实现一下。

3、Web的安全与架构

 

学习HTML5,网上有很多很多教程,以前酷壳也介绍过很多,我在这里就不罗列了。

学习Web开发的安全问题(参考新浪微博被攻击的这个事,以及Ruby的这篇文章)

学习HTTP Server的rewrite机制,Nginx的反向代理机制,fast-cgi(如:PHP-FPM)

学习Web的静态页面缓存技术。

学习Web的异步工作流处理,数据Cache,数据分区,负载均衡,水平扩展的构架。

实践任务:

使用HTML5的canvas 制作一些Web动画。

尝试在前面开发过的那个Web应用中进行SQL注入,JS注入,以及XSS攻击。

把前面开发过的那个Web应用改成构造在Nginx + PHP-FPM + 静态页面缓存的网站

4、学习关系型数据库

 

你可以安装MSSQLServer或MySQL来学习数据库。

学习教科书里数据库设计的那几个范式,1NF,2NF,3NF,……

学习数据库的存过,触发器,视图,建索引,游标等。

学习SQL语句,明白表连接的各种概念(参看《SQL  Join的图示》)

学习如何优化数据库查询(参看《MySQL的优化》)

实践任务:设计一个论坛的数据库,至少满足3NF,使用SQL语句查询本周,本月的最新文章,评论最多的文章,最活跃用户。

5、一些开发工具

 

学会使用SVN或Git来管理程序版本。

学会使用JUnit来对Java进行单元测试。

学习C语言和Java语言的coding standard 或 coding guideline。(我N年前写过一篇关C语言非常简单的文章——《编程修养》,这样的东西你可以上网查一下,一大堆)。

推荐阅读《代码大全》《重构》《代码整洁之道》

高级深入

1、C++ / Java 和面向对象

 

我个人以为学好C++,Java也就是举手之劳。但是C++的学习曲线相当的陡。不过,我觉得C++是最需要学好的语言了。参看两篇趣文“C++学习信心图” 和“21天学好C++”

 

学习(麻省理工免费课程)C++面向对象编程

读我的 “如何学好C++”中所推荐的那些书至少两遍以上(如果你对C++的理解能够深入到像我所写的《C++虚函数表解析》或是《C++对象内存存局(上)(下)》,或是《C/C++返回内部静态成员的陷阱》那就非常不错了)

然后反思为什么C++要干成这样,Java则不是?你一定要学会对比C++和Java的不同。比如,Java中的初始化,垃圾回收,接口,异常,虚函数,等等。

实践任务:

用C++实现一个BigInt,支持128位的整形的加减乘除的操作。

用C++封装一个数据结构的容量,比如hash table。

用C++封装并实现一个智能指针(一定要使用模板)。

《设计模式》必需一读,两遍以上,思考一下,这23个模式的应用场景。主要是两点:1)钟爱组合而不是继承,2)钟爱接口而不是实现。(也推荐《深入浅出设计模式》)

实践任务:

使用工厂模式实现一个内存池。

使用策略模式制做一个类其可以把文本文件进行左对齐,右对齐和中对齐。

使用命令模式实现一个命令行计算器,并支持undo和redo。

使用修饰模式实现一个酒店的房间价格订价策略——旺季,服务,VIP、旅行团、等影响价格的因素。

学习STL的用法和其设计概念  - 容器,算法,迭代器,函数子。如果可能,请读一下其源码。

实践任务:尝试使用面向对象、STL,设计模式、和WindowsSDK图形编程的各种技能

做一个贪吃蛇或是俄罗斯方块的游戏。支持不同的级别和难度。

做一个文件浏览器,可以浏览目录下的文件,并可以对不同的文件有不同的操作,文本文件可以打开编辑,执行文件则执行之,mp3或avi文件可以播放,图片文件可以展示图片。

学习C++的一些类库的设计,如: MFC(看看候捷老师的《深入浅出MFC》) ,Boost, ACE,  CPPUnit,STL (STL可能会太难了,但是如果你能了解其中的设计模式和设计那就太好了,如果你能深入到我写的《STL string类的写时拷贝技术》那就非常不错了,ACE需要很强在的系统知识,参见后面的“加强对系统的了解”)

Java是真正的面向对象的语言,Java的设计模式多得不能再多,也是用来学习面向对象的设计模式的最佳语言了(参看Java中的设计模式)。

推荐阅读《Effective Java》 and 《Java解惑》

学习Java的框架,Java的框架也是多,如Spring, Hibernate,Struts 等等,主要是学习Java的设计,如IoC等。

Java的技术也是烂多,重点学习J2EE架构以及JMS, RMI, 等消息传递和远程调用的技术。

学习使用Java做Web Service (官方教程在这里)

实践任务: 尝试在Spring或Hibernate框架下构建一个有网络的Web Service的远程调用程序,并可以在两个Service中通过JMS传递消息。

C++和Java都不是能在短时间内能学好的,C++玩是的深,Java玩的是广,我建议两者选一个。我个人的学习经历是:

 

深究C++(我深究C/C++了十来年了)

学习Java的各种设计模式。

2、加强系统了解

 

重要阅读下面的几本书:

 

《Unix编程艺术》了解Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验。你一定会有一种醍醐灌顶的感觉。

《Unix网络编程卷1,套接字》这是一本看完你就明白网络编程的书。重要注意TCP、UDP,以及多路复用的系统调用select/poll/epoll的差别。

《TCP/IP详解 卷1:协议》- 这是一本看完后你就可以当网络黑客的书。了解以太网的的运作原理,了解TCP/IP的协议,运作原理以及如何TCP的调优。

实践任务:

理解什么是阻塞(同步IO),非阻塞(异步IO),多路复用(select, poll, epoll)的IO技术。

写一个网络聊天程序,有聊天服务器和多个聊天客户端(服务端用UDP对部分或所有的的聊天客户端进Multicast或Broadcast)。

写一个简易的HTTP服务器。

《Unix网络编程卷2,进程间通信》信号量,管道,共享内存,消息等各种IPC…… 这些技术好像有点老掉牙了,不过还是值得了解。

实践任务:

主要实践各种IPC进程序通信的方法。

尝试写一个管道程序,父子进程通过管道交换数据。

尝试写一个共享内存的程序,两个进程通过共享内存交换一个C的结构体数组。

学习《Windows核心编程》一书。把CreateProcess,Windows线程、线程调度、线程同步(Event,  信号量,互斥量)、异步I/O,内存管理,DLL,这几大块搞精通。

实践任务:使用CreateProcess启动一个记事本或IE,并监控该程序的运行。把前面写过的那个简易的HTTP服务用线程池实现一下。写一个DLL的钩子程序监控指定窗口的关闭事件,或是记录某个窗口的按键。

有了多线程、多进程通信,TCP/IP,套接字,C++和设计模式的基本,你可以研究一下ACE了。使用ACE重写上述的聊天程序和HTTP服务器(带线程池)

实践任务:通过以上的所有知识,尝试

写一个服务端给客户端传大文件,要求把100M的带宽用到80%以上。(注意,磁盘I/O和网络I/O可能会很有问题,想一想怎么解决,另外,请注意网络传输最大单元MTU)

了解BT下载的工作原理,用多进程的方式模拟BT下载的原理。

3、系统架构

 

负载均衡。HASH式的,纯动态式的。(可以到Google学术里搜一些关于负载均衡的文章读读)

多层分布式系统 – 客户端服务结点层、计算结点层、数据cache层,数据层。J2EE是经典的多层结构。

CDN系统 – 就近访问,内容边缘化。

P2P式系统,研究一下BT和电驴的算法。比如:DHT算法。

服务器备份,双机备份系统(Live-Standby和Live-Live系统),两台机器如何通过心跳监测对方?集群主结点备份。

虚拟化技术,使用这个技术,可以把操作系统当应用程序一下切换或重新配置和部署。

学习Thrift,二进制的高性能的通讯中间件,支持数据(对象)序列化和多种类型的RPC服务。

学习Hadoop。Hadoop框架中最核心的设计就是:MapReduce和HDFS。MapReduce的思想是由Google的一篇论文所提及而被广为流传的,简单的一句话解释MapReduce就是“任务的分解与结果的汇总”。HDFS是Hadoop分布式文件系统(Hadoop Distributed File System)的缩写,为分布式计算存储提供了底层支持。

了解NoSQL数据库(有人说可能是一个过渡炒作的技术),不过因为超大规模以及高并发的纯动态型网站日渐成为主流,而SNS类网站在数据存取过程中有着实时性等刚性需求,这使得目前NoSQL数据库慢慢成了人们所关注的焦点,并大有成为取代关系型数据库而成为未来主流数据存储模式的趋势。当前NoSQL数据库很多,大部分都是开源的,其中比较知名的有:MemcacheDB、Redis、Tokyo Cabinet(升级版为Kyoto Cabinet)、Flare、MongoDB、CouchDB、Cassandra、Voldemort等。

写了那么多,回顾一下,觉得自己相当的有成就感。希望大家不要吓着,我自己这十来年也在不断地学习,今天我也在学习中,人生本来就是一个不断学习和练级的过程。不过,一定有漏的,也有不对的,还希望大家补充和更正。(我会根据大家的反馈随时更新此文)欢迎大家通过我的微博(@左耳朵耗子)和twitter(@haoel)和我交流。

 

—– 更新  2011/07/19 —–

 

1)有朋友奇怪为什么我在这篇文章开头说了web+移动,却没有在后面提到iOS/Android的前端开发。因为我心里有一种感觉,移动设备上的UI最终也会被Javascript取代。大家可以用iPhone或Android看看google+,你就会明白了。

 

2)有朋友说我这里的东西太多了,不能为了学习而学习,我非常同意。我在文章的前面也说了要思考。另外,千万不要以为我说的这些东西是一些新的技术,这份攻略里95%以上的全是基础。而且都是久经考验的基础技术。即是可以让你一通百通的技术,也是可以让你找到一份不错工作的技术。

 

3)有朋友说学这些东西学完都40了,还不如想想怎么去挣钱。我想告诉大家,一是我今年还没有40岁,二是学无止境啊,三是我不觉得挣钱有多难,难的是怎么让你值那么多钱?无论是打工还是创业,是什么东西让你自己的价值,让你公司的价值更值钱?别的地方我不敢说,对于互联网或IT公司来说,技术实力绝对是其中之一。

 

4)有朋友说技术都是工具,不应该如此痴迷这句话没有错,有时候我们需要更多的是抬起头来看看技术以外的事情,或者是说我们在作技术的时候不去思考为什么会有这个技术,为什么不是别的,问题不在于技术,问题在于我们死读书,读死书,成了技术的书呆子。

 

5) 对于NoSQL,最近比较火,但我对其有点保守,所以,我只是说了解就可以。对于Hadoop,我觉得其在分布式系统上有巨大的潜力,所以需要学习。 对于关系型数据库,的确是很重要的东西,这点是我的疏忽,在原文里补充。

 

 

 

前言

你是否觉得自己从学校毕业的时候只做过小玩具一样的程序?走入职场后哪怕没有什么经验也可以把以下这些课外练习走一遍(朋友的抱怨:学校课程总是从理论出发,作业项目都看不出有什么实际作用,不如从工作中的需求出发)

 

建议:

 

不要乱买书,不要乱追新技术新名词,基础的东西经过很长时间积累而且还会在未来至少10年通用。

回顾一下历史,看看历史上时间线上技术的发展,你才能明白明天会是什么样。

一定要动手,例子不管多么简单,建议至少自己手敲一遍看看是否理解了里头的细枝末节。

一定要学会思考,思考为什么要这样,而不是那样。还要举一反三地思考。

注:你也许会很奇怪为什么下面的东西很偏Unix/Linux,这是因为我觉得Windows下的编程可能会在未来很没有前途,原因如下:

 

 

 

现在的用户界面几乎被两个东西主宰了,1)Web,2)移动设备iOS或Android。Windows的图形界面不吃香了。

越来越多的企业在用成本低性能高的Linux和各种开源技术来构架其系统,Windows的成本太高了。

微软的东西变得太快了,很不持久,他们完全是在玩弄程序员。详情参见《Windows编程革命史》

所以,我个人认为以后的趋势是前端是Web+移动,后端是Linux+开源。开发这边基本上没Windows什么事。

 

启蒙入门

1、 学习一门脚本语言,例如Python/Ruby

 

可以让你摆脱对底层语言的恐惧感,脚本语言可以让你很快开发出能用得上的小程序。实践项目:

 

处理文本文件,或者csv (关键词 python csv, python open, python sys) 读一个本地文件,逐行处理(例如 word count,或者处理log)

遍历本地文件系统 (sys, os, path),例如写一个程序统计一个目录下所有文件大小并按各种条件排序并保存结果

跟数据库打交道 (python sqlite),写一个小脚本统计数据库里条目数量

学会用各种print之类简单粗暴的方式进行调试

学会用Google (phrase, domain, use reader to follow tech blogs)

为什么要学脚本语言,因为他们实在是太方便了,很多时候我们需要写点小工具或是脚本来帮我们解决问题,你就会发现正规的编程语言太难用了。

 

2、 用熟一种程序员的编辑器(不是IDE) 和一些基本工具

 

Vim / Emacs / Notepad++,学会如何配置代码补全,外观,外部命令等。

Source Insight (或 ctag)

使用这些东西不是为了Cool,而是这些编辑器在查看、修改代码/配置文章/日志会更快更有效率。

 

3、 熟悉Unix/Linux Shell和常见的命令行

 

如果你用windows,至少学会用虚拟机里的linux, vmware player是免费的,装个Ubuntu吧

一定要少用少用图形界面。

学会使用man来查看帮助

文件系统结构和基本操作 ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip …

学会使用一些文本操作命令 sed/awk/grep/tail/less/more …

学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd…

了解/etc目录下的各种配置文章,学会查看/var/log下的系统日志,以及/proc下的系统运行信息

了解正则表达式,使用正则表达式来查找文件。

对于程序员来说Unix/Linux比Windows简单多了。(参看我四年前CSDN的博文《其实Unix很简单》)学会使用Unix/Linux你会发现图形界面在某些时候实在是太难用了,相当地相当地降低工作效率。

 

4、 学习Web基础(HTML/CSS/JS) + 服务器端技术 (LAMP)

 

未来必然是Web的世界,学习WEB基础的最佳网站是W3School。

 

学习HTML基本语法

学习CSS如何选中HTML元素并应用一些基本样式(关键词:box model)

学会用  Firefox + Firebug 或 chrome 查看你觉得很炫的网页结构,并动态修改。

学习使用Javascript操纵HTML元件。理解DOM和动态网页(http://oreilly.com/catalog/9780596527402) 网上有免费的章节,足够用了。或参看 DOM 。

学会用  Firefox + Firebug 或 chrome 调试Javascript代码(设置断点,查看变量,性能,控制台等)

在一台机器上配置Apache 或 Nginx

学习PHP,让后台PHP和前台HTML进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。

把PHP连接本地或者远程数据库 MySQL(MySQL 和 SQL现学现用够了)

跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouster/cgi-bin/cs142-fall10/index.php ) 不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上

学习一个javascript库(例如jQuery 或 ExtJS)+  Ajax (异步读入一个服务器端图片或者数据库内容)+JSON数据格式。

HTTP: The Definitive Guide 读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy, gateway, browsers)

做个小网站(例如:一个小的留言板,支持用户登录,Cookie/Session,增、删、改、查,上传图片附件,分页显示)

买个域名,租个空间,做个自己的网站。

进阶加深

1、 C语言和操作系统调用

 

重新学C语言,理解指针和内存模型,用C语言实现一下各种经典的算法和数据结构。推荐《计算机程序设计艺术》、《算法导论》和《编程珠玑》。

学习(麻省理工免费课程)计算机科学和编程导论

学习(麻省理工免费课程)C语言内存管理

学习Unix/Linux系统调用(Unix高级环境编程),,了解系统层面的东西。

用这些系统知识操作一下文件系统,用户(实现一个可以拷贝目录树的小程序)

用fork/wait/waitpid写一个多进程的程序,用pthread写一个多线程带同步或互斥的程序。多进程多进程购票的程序。

用signal/kill/raise/alarm/pause/sigprocmask实现一个多进程间的信号量通信的程序。

学会使用gcc和gdb来编程和调试程序(参看我的《用gdb调试程序》)

学会使用makefile来编译程序。(参看我的《跟我一起写makefile》)

IPC和Socket的东西可以放到高级中来实践。

学习Windows SDK编程(Windows 程序设计 ,MFC程序设计)

写一个窗口,了解WinMain/WinProcedure,以及Windows的消息机制。

写一些程序来操作Windows SDK中的资源文件或是各种图形控件,以及作图的编程。

学习如何使用MSDN查看相关的SDK函数,各种WM_消息以及一些例程。

这本书中有很多例程,在实践中请不要照抄,试着自己写一个自己的例程。

不用太多于精通这些东西,因为GUI正在被Web取代,主要是了解一下Windows 图形界面的编程。@virushuo 说:“ 我觉得GUI确实不那么热门了,但充分理解GUI工作原理是很重要的。包括移动设备开发,如果没有基础知识仍然很吃力。或者说移动设备开发必须理解GUI工作,或者在win那边学,或者在mac/iOS上学”。

2、学习Java

 

Java 的学习主要是看经典的Core Java 《Java 核心技术编程》和《Java编程思想》(有两卷,我仅链了第一卷,足够了,因为Java的图形界面了解就可以了)

学习JDK,学会查阅Java API Doc http://download.oracle.com/javase/6/docs/api/

了解一下Java这种虚拟机语言和C和Python语言在编译和执行上的差别。从C、Java、Python思考一下“跨平台”这种技术。

学会使用IDE Eclipse,使用Eclipse 编译,调试和开发Java程序。

建一个Tomcat的网站,尝试一下JSP/Servlet/JDBC/MySQL的Web开发。把前面所说的那个PHP的小项目试着用JSP和Servlet实现一下。

3、Web的安全与架构

 

学习HTML5,网上有很多很多教程,以前酷壳也介绍过很多,我在这里就不罗列了。

学习Web开发的安全问题(参考新浪微博被攻击的这个事,以及Ruby的这篇文章)

学习HTTP Server的rewrite机制,Nginx的反向代理机制,fast-cgi(如:PHP-FPM)

学习Web的静态页面缓存技术。

学习Web的异步工作流处理,数据Cache,数据分区,负载均衡,水平扩展的构架。

实践任务:

使用HTML5的canvas 制作一些Web动画。

尝试在前面开发过的那个Web应用中进行SQL注入,JS注入,以及XSS攻击。

把前面开发过的那个Web应用改成构造在Nginx + PHP-FPM + 静态页面缓存的网站

4、学习关系型数据库

 

你可以安装MSSQLServer或MySQL来学习数据库。

学习教科书里数据库设计的那几个范式,1NF,2NF,3NF,……

学习数据库的存过,触发器,视图,建索引,游标等。

学习SQL语句,明白表连接的各种概念(参看《SQL  Join的图示》)

学习如何优化数据库查询(参看《MySQL的优化》)

实践任务:设计一个论坛的数据库,至少满足3NF,使用SQL语句查询本周,本月的最新文章,评论最多的文章,最活跃用户。

5、一些开发工具

 

学会使用SVN或Git来管理程序版本。

学会使用JUnit来对Java进行单元测试。

学习C语言和Java语言的coding standard 或 coding guideline。(我N年前写过一篇关C语言非常简单的文章——《编程修养》,这样的东西你可以上网查一下,一大堆)。

推荐阅读《代码大全》《重构》《代码整洁之道》

高级深入

1、C++ / Java 和面向对象

 

我个人以为学好C++,Java也就是举手之劳。但是C++的学习曲线相当的陡。不过,我觉得C++是最需要学好的语言了。参看两篇趣文“C++学习信心图” 和“21天学好C++”

 

学习(麻省理工免费课程)C++面向对象编程

读我的 “如何学好C++”中所推荐的那些书至少两遍以上(如果你对C++的理解能够深入到像我所写的《C++虚函数表解析》或是《C++对象内存存局(上)(下)》,或是《C/C++返回内部静态成员的陷阱》那就非常不错了)

然后反思为什么C++要干成这样,Java则不是?你一定要学会对比C++和Java的不同。比如,Java中的初始化,垃圾回收,接口,异常,虚函数,等等。

实践任务:

用C++实现一个BigInt,支持128位的整形的加减乘除的操作。

用C++封装一个数据结构的容量,比如hash table。

用C++封装并实现一个智能指针(一定要使用模板)。

《设计模式》必需一读,两遍以上,思考一下,这23个模式的应用场景。主要是两点:1)钟爱组合而不是继承,2)钟爱接口而不是实现。(也推荐《深入浅出设计模式》)

实践任务:

使用工厂模式实现一个内存池。

使用策略模式制做一个类其可以把文本文件进行左对齐,右对齐和中对齐。

使用命令模式实现一个命令行计算器,并支持undo和redo。

使用修饰模式实现一个酒店的房间价格订价策略——旺季,服务,VIP、旅行团、等影响价格的因素。

学习STL的用法和其设计概念  - 容器,算法,迭代器,函数子。如果可能,请读一下其源码。

实践任务:尝试使用面向对象、STL,设计模式、和WindowsSDK图形编程的各种技能

做一个贪吃蛇或是俄罗斯方块的游戏。支持不同的级别和难度。

做一个文件浏览器,可以浏览目录下的文件,并可以对不同的文件有不同的操作,文本文件可以打开编辑,执行文件则执行之,mp3或avi文件可以播放,图片文件可以展示图片。

学习C++的一些类库的设计,如: MFC(看看候捷老师的《深入浅出MFC》) ,Boost, ACE,  CPPUnit,STL (STL可能会太难了,但是如果你能了解其中的设计模式和设计那就太好了,如果你能深入到我写的《STL string类的写时拷贝技术》那就非常不错了,ACE需要很强在的系统知识,参见后面的“加强对系统的了解”)

Java是真正的面向对象的语言,Java的设计模式多得不能再多,也是用来学习面向对象的设计模式的最佳语言了(参看Java中的设计模式)。

推荐阅读《Effective Java》 and 《Java解惑》

学习Java的框架,Java的框架也是多,如Spring, Hibernate,Struts 等等,主要是学习Java的设计,如IoC等。

Java的技术也是烂多,重点学习J2EE架构以及JMS, RMI, 等消息传递和远程调用的技术。

学习使用Java做Web Service (官方教程在这里)

实践任务: 尝试在Spring或Hibernate框架下构建一个有网络的Web Service的远程调用程序,并可以在两个Service中通过JMS传递消息。

C++和Java都不是能在短时间内能学好的,C++玩是的深,Java玩的是广,我建议两者选一个。我个人的学习经历是:

 

深究C++(我深究C/C++了十来年了)

学习Java的各种设计模式。

2、加强系统了解

 

重要阅读下面的几本书:

 

《Unix编程艺术》了解Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验。你一定会有一种醍醐灌顶的感觉。

《Unix网络编程卷1,套接字》这是一本看完你就明白网络编程的书。重要注意TCP、UDP,以及多路复用的系统调用select/poll/epoll的差别。

《TCP/IP详解 卷1:协议》- 这是一本看完后你就可以当网络黑客的书。了解以太网的的运作原理,了解TCP/IP的协议,运作原理以及如何TCP的调优。

实践任务:

理解什么是阻塞(同步IO),非阻塞(异步IO),多路复用(select, poll, epoll)的IO技术。

写一个网络聊天程序,有聊天服务器和多个聊天客户端(服务端用UDP对部分或所有的的聊天客户端进Multicast或Broadcast)。

写一个简易的HTTP服务器。

《Unix网络编程卷2,进程间通信》信号量,管道,共享内存,消息等各种IPC…… 这些技术好像有点老掉牙了,不过还是值得了解。

实践任务:

主要实践各种IPC进程序通信的方法。

尝试写一个管道程序,父子进程通过管道交换数据。

尝试写一个共享内存的程序,两个进程通过共享内存交换一个C的结构体数组。

学习《Windows核心编程》一书。把CreateProcess,Windows线程、线程调度、线程同步(Event,  信号量,互斥量)、异步I/O,内存管理,DLL,这几大块搞精通。

实践任务:使用CreateProcess启动一个记事本或IE,并监控该程序的运行。把前面写过的那个简易的HTTP服务用线程池实现一下。写一个DLL的钩子程序监控指定窗口的关闭事件,或是记录某个窗口的按键。

有了多线程、多进程通信,TCP/IP,套接字,C++和设计模式的基本,你可以研究一下ACE了。使用ACE重写上述的聊天程序和HTTP服务器(带线程池)

实践任务:通过以上的所有知识,尝试

写一个服务端给客户端传大文件,要求把100M的带宽用到80%以上。(注意,磁盘I/O和网络I/O可能会很有问题,想一想怎么解决,另外,请注意网络传输最大单元MTU)

了解BT下载的工作原理,用多进程的方式模拟BT下载的原理。

3、系统架构

 

负载均衡。HASH式的,纯动态式的。(可以到Google学术里搜一些关于负载均衡的文章读读)

多层分布式系统 – 客户端服务结点层、计算结点层、数据cache层,数据层。J2EE是经典的多层结构。

CDN系统 – 就近访问,内容边缘化。

P2P式系统,研究一下BT和电驴的算法。比如:DHT算法。

服务器备份,双机备份系统(Live-Standby和Live-Live系统),两台机器如何通过心跳监测对方?集群主结点备份。

虚拟化技术,使用这个技术,可以把操作系统当应用程序一下切换或重新配置和部署。

学习Thrift,二进制的高性能的通讯中间件,支持数据(对象)序列化和多种类型的RPC服务。

学习Hadoop。Hadoop框架中最核心的设计就是:MapReduce和HDFS。MapReduce的思想是由Google的一篇论文所提及而被广为流传的,简单的一句话解释MapReduce就是“任务的分解与结果的汇总”。HDFS是Hadoop分布式文件系统(Hadoop Distributed File System)的缩写,为分布式计算存储提供了底层支持。

了解NoSQL数据库(有人说可能是一个过渡炒作的技术),不过因为超大规模以及高并发的纯动态型网站日渐成为主流,而SNS类网站在数据存取过程中有着实时性等刚性需求,这使得目前NoSQL数据库慢慢成了人们所关注的焦点,并大有成为取代关系型数据库而成为未来主流数据存储模式的趋势。当前NoSQL数据库很多,大部分都是开源的,其中比较知名的有:MemcacheDB、Redis、Tokyo Cabinet(升级版为Kyoto Cabinet)、Flare、MongoDB、CouchDB、Cassandra、Voldemort等。

写了那么多,回顾一下,觉得自己相当的有成就感。希望大家不要吓着,我自己这十来年也在不断地学习,今天我也在学习中,人生本来就是一个不断学习和练级的过程。不过,一定有漏的,也有不对的,还希望大家补充和更正。(我会根据大家的反馈随时更新此文)欢迎大家通过我的微博(@左耳朵耗子)和twitter(@haoel)和我交流。

 

—– 更新  2011/07/19 —–

 

1)有朋友奇怪为什么我在这篇文章开头说了web+移动,却没有在后面提到iOS/Android的前端开发。因为我心里有一种感觉,移动设备上的UI最终也会被Javascript取代。大家可以用iPhone或Android看看google+,你就会明白了。

 

2)有朋友说我这里的东西太多了,不能为了学习而学习,我非常同意。我在文章的前面也说了要思考。另外,千万不要以为我说的这些东西是一些新的技术,这份攻略里95%以上的全是基础。而且都是久经考验的基础技术。即是可以让你一通百通的技术,也是可以让你找到一份不错工作的技术。

 

3)有朋友说学这些东西学完都40了,还不如想想怎么去挣钱。我想告诉大家,一是我今年还没有40岁,二是学无止境啊,三是我不觉得挣钱有多难,难的是怎么让你值那么多钱?无论是打工还是创业,是什么东西让你自己的价值,让你公司的价值更值钱?别的地方我不敢说,对于互联网或IT公司来说,技术实力绝对是其中之一。

 

4)有朋友说技术都是工具,不应该如此痴迷这句话没有错,有时候我们需要更多的是抬起头来看看技术以外的事情,或者是说我们在作技术的时候不去思考为什么会有这个技术,为什么不是别的,问题不在于技术,问题在于我们死读书,读死书,成了技术的书呆子。

 

5) 对于NoSQL,最近比较火,但我对其有点保守,所以,我只是说了解就可以。对于Hadoop,我觉得其在分布式系统上有巨大的潜力,所以需要学习。 对于关系型数据库,的确是很重要的东西,这点是我的疏忽,在原文里补充。

书库网站资源 来自:豆瓣 风归时

1.http://onlinebooks.library.upenn.edu  

喜欢读英文书的朋友差不多都知道这个在线书库,该书库几乎每天都有新书增加进来,目前其所拥有的在线免费图书已超过2万本,内容涉及众多领域,阅读格式也 多种多样。最好的是,你可以通过每本书所提供的链接,还能顺藤摸瓜地找到其他很多非常有价值的在线书库和丰富多彩的内容。本文所提供的其他一些书库就是本 人通过这一书库的线索找到的。  

 

2.http://quod.lib.umich.edu/m/moa/  

Making of America(MOA)是研究美国从南北战争到重建时期社会、历史、文化的极佳的网上资源,当然其收藏内容远不止于此,欧洲各国的历史以及著名作家的经 典著作也非常之多,比如英国湖畔派诗人的全集、休谟的英国史(6卷本)、基佐的法国文明史(8卷本)等等,而且所有图书皆为图形格式或PDF格式,并且都 是扫描输入的,原汁原味。遗憾的是,出于版权保护的考虑,所收图书的作者差不多都是已故距今至少70年以上的。其中很多书都有极高的收藏价值。遗憾之处是 其PDF格式不能整本下载。  

 

3.http://posner.library.cmu.edu/Posner/  

这里还要向大家极力推荐Posner先生的这个个人藏书网站,书籍的数量虽然不是很多,但每本差不多都是善本,甚至可能有孤本。比如他所收藏的莎士比亚戏 剧集居然是第一个剧团演出本!吉本的《罗马帝国兴衰史》好像也是第一版的。所有图书皆为原书扫描输入,保留了这些善本书的全貌,非常值得藏书家收藏!缺点 也跟MOA一样,不能整本下载。 个人非常推荐!~  

 

4.http://www.archive.org/details/texts  

Internet Archive也是一个不错的在线书库,其中的百万书库项目(Million Book Project)号称到2005年底要将百万册图书数字化,不过到目前为止该书库好像只有1万多本书,但这样的成绩也很不错啦。其中的很多书都有 DjVu、PDF版,也有不少好书,值得一看。  

 

5.http://www.bartleby.com/  

Bartleby.com敢号称自己是“Great Books Online”当然有其理由,因为光它的“哈佛经典丛书”就多达100卷,哪位读者要是能将其读完,我看成为大师级人物应该不成问题。此外还有很多极有价 值的百科全书和词典,比如哥伦比亚百科全书(第六版)、美国文化遗产词典、名人名言词典等,所有的辞汇还都带发音,相当不错。  

 

6.http://etext.lib.virginia.edu/  

这是美国弗吉尼亚大学的电子图书中心,你要是只看其书库分类目录,你肯定会怦然心动,感觉这个中心简直是一个宝库,然而遗憾的是,其中很多的东东只限于该校师生访问,并不对外。但是其对外的部分也算不错了,值得好好淘一淘。  

 

7.http://selfknowledge.com/index.shtml  

这个经典作家书库收集的作家和书籍颇为不少,但大多以文学为主。值得一提的是它配有百科辞典功能,每本书中的很多词汇都可链接到辞书中,读者可听到该词的正规发音以及释义,有些书还有真人阅读片断,实为外语学习的好帮手。  

 

8.http://socserv.mcmaster.ca/econ/ugcm/3ll3/  

McMaster大学的经济思想史书库,所收集的经济学家著作相当齐全,实为研究经济学的不可多得的好网站。当然,其藏书也并非全跟经济学有关,比如也亚里士多德、孟德斯纠、伯克等人的著作。  

 

9.http://oll.libertyfund.org/Home3/index.php  

这是自由基金会组织建立的在线书库,经常更新,而且差不多都是经典著作,涵盖了社会政治、哲学、经济、历史等多领域的著作,很多著作还是扫描输入的PDF 版,比如吉本的12卷本《罗马帝国兴衰史》就是原书复印的,而且可以全书下载。此外像格拉斯哥版的亚当·斯密全集据说也是斯密最好的版本。 这里也推荐~  

 

10.http://texts.cdlib.org/ucpress/  

加州大学的这个学者文库相当不错,很多书都是非常新的著作,制作也相当不错。遗憾的是也分成了对内和对外两类,好在对外的数百本书也都是不错的专著,值得好好读。其中关于中国社会、历史、经济、文化方面的书也不少,其中有一本论述达赖喇嘛的书,很值得一读。  

 

11.http://www.perseus.tufts.edu/  

帕修斯数字图书馆是研究西方古典著作的最佳网站,几乎所有目前遗存的古希腊和古罗马经典都能在此找到,很多书都有希腊文、拉丁文原本以及英文译本,而且有 希腊文和拉丁文词汇研究工具,原文著作中的几乎每一个词都可以点击察看其英文词意以及使用频率等。除此之外,该图书馆还有英国文艺复兴时期书库,有莎士比 亚和马洛的全部戏剧。 但现在外网似乎已经登不上去。  

 

12.http://www.promo.net/pg/  

古登堡项目可以说是目前全球最大的免费在线图书网站,有很多书库,包括上面的一些书库都收藏有古登堡的图书。虽然其中的大多数书籍都是TXT格式的,但也 有一部分书制作还算不错,比如爱德蒙·伯克的12卷本全集、带有著名画家达利插图的但丁《神曲》等,此外还有一些图书的音频资料。缺点是这个网站经常会上 不去。 不知道什么时候又不能上,我在学校里的网络限制还好些,很多在外网被封禁的网站都能顺利浏览。  

 

13.http://www.blackmask.com/  

这个网站收藏的图书比较多,每本书也有很多格式,我个人推荐使用微软的Reader格式。不过该网站的搜索功能不怎么样,其他方面还算不错。  

 

 

 

15.http://www.marxists.org/reference/subject/philosophy/index.htm  

这是一个哲学书库,虽然只有文本格式,但所收藏的书籍多为哲学史上的名著,从古代到当代都有,相当的丰富  

 

16. http://www.woyouxian.com/index/20index.html  

國内相當不錯的閲讀網站,雖然書少了點,但很不錯。大多是文學名著  

 

17.http://www.literature.org/  

也是一個很不錯的在綫閲讀網站。主要都是文學方面的作品。  

 

18.http://www.asiaing.com  

亞洲進行時。比较不錯的一個電子書下載網站,大部分都是PDF格式的,質量很高速度也很快。但是圖書數量有限,而且有些書只提供一些章節預讀,但對於一個正規的網路來説已經很不錯了~裏面的原版PDF真的做的挺好的  

 

19.http://www.en8848.com.cn  

一个比较不错的英文小说阅读网,很多国内流行的畅销书的PDF版都能在里面找到,而且质量通常都不错。  

 

 

20.http://library.nu/  

各学科均有涉猎,藏书量大,正在挖掘中~  

最新线报!又活了!复活万岁!  

 

 

21.http://www.ncbi.nlm.nih.gov/pubmed  

由美国国家医学图书馆和国立卫生研究院建立一个医学学术资料网站。生物医学文献超过2100万,包括论文参考文献,生命科学期刊,在线图书。  

 

 

22.http://www.gutenberg.org/  

古登堡项目,提供了超过38000名免费电子图书,包括有声读物CD、DVD等,可以下载到电脑上及其他便携设备,还可以在kindle,epub,html和txt之间进行选择,着实是下载外文读物的好去处~  

 

23.http://www.jstor.org/  

如果你是在找学术资料,这里真的很不错。有各种学术期刊,还有图片、信件等等。  

 

这里有些也主要是经典著作的小语种网站,内容主要涉及历史、文学、艺术:  

 

14.http://gallica.bnf.fr/  

这是全球互联网上大概最齐全的法语图书资源库了,也是希拉克总统希望挑战撒克逊语言在互联网上统治地位的一个阵地。对法语爱好者来说这真是不可多得的宝库,其中有巴尔扎克全集、波德莱尔全集……,还有很多中世纪的法语书籍和图形资料,原版扫描,非常宝贵。 (有部分资料是收费的)  

 

24.http://un2sg4.unige.ch/athena/html/athome.html (法语、瑞士语、荷兰语、德语、英语等) 

 

25.http://www.fh-augsburg.de/~harsch/a_index.html (拉丁语,希腊语,法语,德语,意大利语,印度语,西班牙语,葡萄牙语,波兰语和俄语。好吧,我大部分都看不懂。。。主要是拉丁文。)  

 

26.http://www.lib.virginia.edu/wess/etexts.html(泰罗尼亚语,丹麦语,荷语,法语,加利西亚语,德语,希腊语,爱尔兰语,挪威语,葡萄牙语,西班牙语和瑞典语。) 

开发者眼中的用户【转】

开发者眼中的用户【转】
来自煎蛋

30秒让你明白什么叫做“云”!拿云来装x的二货们,受死吧!!

说白了,所谓“云技术”就是坐在服务器机房总控制室

里面,利用虚拟化技术,把运行中的应用程序不中断地

搬来搬去,使其如同漂浮在云雾之中,让服务器负载得

以均衡,或是,让一批服务器暂时性的休眠,必要时再

唤醒,达到节电的目的。这就与人工智能扯上关系了。

转载自:

http://www.jifang360.com/news/20111211/n020732259.html

(转自北邮人)offer档次排名,2014最新版。

我眼中的IT界offer。。。。。。 

个人观点,不喜勿喷。 

综合考虑发展,薪水,环境,压力。 

  

第0档:美国互联网总部special offer(15万刀起薪) 

  

第一档: 

股份制银行总行,证券公司,基金公司IT部门(民生,中信,兴业,浦发,南方基金,中信证券等等)加班多,累,但是25万+户口编制,能学习金融业务it流程。 

  

第二档: 

国内网游公司,中央金融机构IT部门(网易游戏,巨人,中国银联总部,中国结算,央行it,同业拆借中心)35万无编制,20万有编制(体面) 

  

第三档: 

硅谷互联网外企普通offer或美国投资机构,(美国10万刀,或者中国20万人民币)yahoo,微软(美国or中国),hulu,worldquant,msci量化,摩根大通量化。30万左右,不加班,前景广阔。 

  

第四档: 

四大行总行IT部门(建农工交),中央企业总部it部门(国家电网,中石油,中国移动等)普通城市银行(宁波,上海银行),农商行IT部门。工资15万+户口编制+工作相对轻松。 

  

第五档:互联网小公司或创业型公司,比如搜狗,有道,美团,去哪儿,各种页游小公司,外资小咨询公司,待遇20万+,发展快,技术能力增长快,学习东西多,存在感强,而且有一夜暴富的可能。 

  

第六档:思科(正在裁员),摩根IT部门,vmware,微策略,亚马逊(核心技术部门)等外企it。工资20万左右,工作轻松,前途一般,随时裁员。 

  

第七档:BAT。工资20万左右,加班多,无户口编制,上升空间没有小微型互联网大,而且由于企业大,工作螺丝刀化,没有股票。百度现在上升空间很小,阿里一年招一千多人 以后升职空间参考百度,而且在杭州的话,不能通过跳槽来升职涨工资(在杭州跳哪去?)。 

  

第八档:中型互联网,人人,京东,网易,sina,奇虎360。工资17万左右。发展前景还可以,无编制户口。 

  

第九档: 

信用卡中心,华为,中国银行软开(非总行编制),招商银行软开等外包银行软开,中科院下属公司,运营商普通岗位。10万,但是工作稳定。 

  

第九.五档: 

IT咨询公司,凯捷,埃森哲,四大会所it(普华it,德勤)。年薪8万左右,加班,裁员,但是能学到东西。 

  

第十档:花旗软件,汇丰it广州,渣打it天津,甲骨文,emc,爱立信(正在疯狂裁员),诺基亚,待遇10万左右,轻松,前途一般,没什么发展,随时裁员。 

  

第十一档: 

日韩台外企,三星,htc,sony,nec,xxx株式会社。待遇10万左右,加班,裁员。

人人源地址:http://blog.renren.com/blog/383581453/918600065

实习——你图的是什么?【转自人人职场】

首先说两个个例。一个是反面教材,就是我本人的大学经历。我在一个很不错的大学读中文系,中文是这个学校最好的几个专业之一,但想当然,也是最不好就业的专业之一。我在四年里几乎没有想过找工作的事情,大一大二两年拚命修完了90%的学分,做了一阵子学生干部,大三大四两年基本全都用来看动画片了。到了大四,我对什么时候开始找工作也没有概念,结果错过了大规模的招聘期。因此拿到的offer自己都不满意,最后选择了考研。

另一个例子是我同寝室的同学,她在中文系读了四年之后进了四大,做起了审计。现在四大已经一点都不热门了,不过在当年,尤其是对一个中文系本科毕业生来说,也算是一个很好的选择了。

我们在大一下半学期,有一个机会可以选修第二专业。当时我选了法律,她选了会计。直到毕业以前,我都挺无法理解她为什么要选择读会计专业的,那个时候觉得,学法律是学一门知识,学会计是学一门手艺,在大学里学这个挺没劲的。后来才知道,在企业里工作,有商科背景,对于任何职位来说,都是很有帮助的。这个姐姐在大三开始,通过师姐的介绍,先是在电台做实习编辑。然后又通过亲戚的介绍,在一家日企的会计部做实习。在这两份实习结束后,以上面两个实习为基础,她很容易地又拿到一家时尚杂志和一家大型外企财务部的实习职位。现在看来,这几项实习工作都是非常好的选择。在电台和杂志的实习经历,加上她的专业背景,为以后从事媒体工作打下了基础。而财务部的实习工作,无疑是她进四大的一个铺垫。

写这两个例子,说明的问题很简单。一个规划好的大学生涯,和一个缺少目标的大学生涯,是完全不同的。我觉得,从大二末大三初开始,就应该有一个比较初步的规划;经过一两次实习,就会对自己未来的职业目标有更清楚的认识,到时可以做出具体的调整和设定。

有写人到找工作的时候会问“简历应该怎么写?” 其实重要的不是简历怎么写,而是简历上写了什么。而简历上能写些什么,你的成绩在班级里的排名,你从事了哪些校园活动,你有怎样的实习经历,这些在你写简历的时候已经成为了不可改变的事实。所以,做规划,要趁早。  

大家最初对工作的事情还很模糊的时候, 可以开始上网了。实习版,找工作版等等。精华区里会有历届学生实习和找工作的心得体会。这些是一手资料。虽然不完整,不准确,但很直观。

信息包括:

1>哪些企业会大规模招聘应届毕业生。像联合利华等人员流动性特别强的公司,每年都会招聘大量的应届毕业生。再比如四大,大家为什么经常提到它们,因为它们招聘应届生的比例很高。而有一些知名公司,它们只做少量的校园招聘,大量的职位是通过社会招聘(针对有工作经验的人)填补的。它们虽然也在校园招聘季做大规模的广告和宣讲,在学校里树立自己的品牌,但招收的数量其实有限。有一些公司在全国几个城市做宣讲,但可能只招1~2名应届毕业生。

2>招聘季什么时候开始?前几年的招聘主要从9/10月份开始,10月到第二年的1月是高峰(大概的数据)。但近几年的趋势是,大企业从暑假前就开始招“暑期实习生”,再从其中选择正式录用的人。这些“暑期实习生”表现好的就会留用,也就是说,在暑期前应聘到“暑期实习生”,是未来留用这家公司的必要非充分条件。

因此,想要在好的外企找到好的工作,从大三下班学期的4/5月就要开始注意招聘信息了。的确,在大四下班学期开学以后,还有一些公司会招聘。但错过了大型企业的招聘高峰,其实就错过了应届毕业生招工作的黄金阶段。一些比较小型的企业不太喜欢高不成低不就的应届毕业生。大型企业通常比较看重学生的潜力,至于工作能力,公司会提供培训来弥补。但小型企业通常希望你上手就能干活,同时怀疑高校毕业生是否能长期安于现状,所以录用比例反而不高。

3>各公司/各岗位招聘的必要条件是什么?最看重的素质是什么?像进入中资银行,一个必要条件是当地户口,这几乎是公开的要求。像四大,比较重视学校的品牌,而不太重视专业。像一些咨询公司,因为门槛比较高,所以它们连一般公司不太看重的专业成绩都看得很重,可能只要年级前几名的学生。再比如人力资源/行政这一类职位,明显偏爱女生,因为专业限制不高,所以实习经历/学生活动经历等其他指标就特别重要。销售类职位,最好有产品相关的专业背景。而且最重要的是,对人的性格方面很有要求。内向性格的人,可能过不了面试关。技术类职位,除非是技术支持类的,公司可能会偏向于招聘研究生。这些东西从学长学姐的经验贴里都可以总结出一些。

接下来说一点找实习的体会。一份好的实习,有意义的实习是非常有帮助的。功利性地说,它是未来找工作的一个铺垫;此外,对于一个没有走上工作岗位的学生来说,实习也可以帮助自己开阔眼界,认识business world,提高待人接物的能力,重新修订自己的职业目标等等等等。

当然,起步可能是比较困难的。很少有好的公司愿意录用简历一篇空白的大三学生做实习生。它们在挑选实习生的时候,已经在用那些有相关实习背景的学生了。就我身边的例子来看,第一份实习工作多半是通过同学、学长学姐、老师、亲戚朋友介绍的。所以,不要胆怯,先通过自己的关系网络找到自己的第一份实习工作吧。

对第一份实习的要求:我觉得第一次实习的时候,追求在工作岗位上实现自我什么的是完全不切实际的。因此,工作再琐碎,再乏味,先把它做起来。在可能的条件下,对实习工作可以有以下几个要求:

1>优先选择自己喜欢的工作岗位这一点有不言而喻的重要性。以我身边的一个同学为例,她第一份实习在亲戚的介绍下做了PR的工作,接下来她再找实习工作的时候,只要是PR相关的工作,她都能轻易得到;相反,其他任何类型的工作,她连面试机会都没有得到过。所以她找正式工作的时候也只能找PR相关的工作。虽然这个岗位跟她的专业一点关系都没有。也就是说,第一份实习很可能决定一生(危言耸听……)。

2>工作单位尽可能比较正规,各部门齐全.首先,你可以在一个正规的公司里体会到公司健全的管理模式,成熟的工作方式等等;其次,如果你不喜欢自己现在的实习岗位,未来也不打算再从事相关职业的话,你可以在部门齐全的公司里看看,有哪些其他岗位是自己喜欢的,适合的。

3>个人觉得,发传单,做家教,肯德基麦当劳这一类工作都可以不必去做。当然,它们体现了你精力旺盛,乐于实践,吃苦耐劳等美好品德,还能赚到钱。但它们对你了解企业的运行,一个岗位是做什么样的工作,企业需要一个什么样的员工,等等,帮助都不大。  (家教无用论仅对找工作而言,还有我是不是太绝对了点啊……)

接下来,一份正式的实习。在第一份甚至前几份实习工作的基础上,找到一份正式的实习就比较容易了。你经过几次实习,可能是短暂的实习之后,你可能比较清楚自己到底想做什么工作了。其实每一种工作可能都没有自己想像中那么美好,但你一定已经比以前更清醒了。

我所说“正式的实习”有以下几个要求:

1>公司提供正式的实习岗位我觉得有一些工作不可以称之为实习,而只是兼职工作。也就是说,不是internship,而是parttime job。在兼职的岗位上,公司就是把你当成廉价劳动力,它要求你做的工作,都是简单的重复劳动,不会提高你的能力与价值。而有些公司会长期的,大量的招聘实习生。在这样的实习岗位上,你可以获得比较高价值的工作,获得一些培训(虽然可能是非正规的),上司会给你一些反馈和评价,你可以深入了解这个岗位的工作内容,发展前景等等等等。这样的公司其实挺多的,因为很多公司的人员结构都快变成倒金字塔了,就是经理级员工很多,但没有底层的正式员工,真正在底层办事的,都是实习生。(不清楚为什么,可能是为了节省成本)在这样的公司,你可能被当成一个真正有用的人使用,尤其当你遇到一个好上司的时候,会获得非常大的提升。

2>比较长的实习期非正式的实习可能是1个月,甚至是几天。我就在一个公司的市场部做过10天实习,工作内容就是打电话。短期的实习不可能教会你很多东西,一来,很多东西要靠时间来领悟,二来,有些工作短期内不能上手,如果你没有稳定性的话,公司不愿意花时间来coach你,因此,如果一个实习设定的就是短期,它的工作内容必定非常单一。比较合适的实习期可能是3-6个月。

3>合适的岗位综合上述两点,你投入那么多时间和精力的一份实习,几乎必然就是你未来职业的起点了,所以慎重地选择吧。

找实习的方式, 还是那几种:

1>招聘网站和高校BBS;高校BBS上的信息其实是非常有用的,因为各大公司很可能在高校有联系人,会第一时间贴出招聘信息的。但请注意时效,这个职位一经贴出,可能在几天内就找到合适的人了。所以请经常关注招聘信息,坚持不懈地投简历。上面说过,我在本科阶段是很懒惰的,从来不上学校的JOB版和Parttime版。但事后想起来,如果你在找工作阶段都如此懒散的话,其实必然适应不了外企高节奏的工作方式和巨大的工作压力的。

2>请同学和学姐学长介绍这种途经的成功率非常高。当一个同学或者学姐学长结束实习的时候,可能会像公司推荐继任者,因为公司也想省时省力地找到合适的人选,所以多半就直接录用被推荐的人选了。当时,推荐的人选也必然是各方面素质都很好的人。同学或者学姐学长也不太愿意推荐一个不好的继任者,而给自己实习过的公司留下不好的印象。所以,“推荐”只是同等条件下优先录取的道路而已。

通过实习可以获得的:

1>工作能力的提高工作能力的提高不意味着你多学会几种EXCEL技巧,打字变快了等等,而是体现在一些非常抽象的层面上。像我在实习中,日常的工作确实就是处理表格,整理档案,负责联络等等很琐碎的事情,但是几个月下来,还是很有收获的。比如,我以前说话语速很快,我的上司说这样会让对方觉得,你对说话的内容没有把握,而且没办法很好的记住你说话的内容。所以我降低了说话的速度,而且谈吐看起来沉稳了一点:P 而且你用压迫的语气说话,还是用商量的语气说话,办事效果完全不同。这在有很多社会经验的人看来完全是不值一提的,但对于没走上过社会的学生来说,第一次走进办公室的时候,你可能会觉得自己跟周围环境格格不入,直到几个月后,才会通过各方面的改变融入整个环境。再比如,学会适时跟上司汇报工作进度。再比如,合理安排工作的priority。等等等等,都可以看做是工作能力的提升。

2>提升责任心在一份正式的实习里,你要为你的工作负责。虽然比正式员工承担的责任小的多,但还是经常有你不认识的人,跑到你的上司那里去challenge你的工作成果。这些都压迫着你把事情做到最好。 3>更了解你未来的工作这一点是非常重要的。在一个比较长期稳定的实习里,你可以充分了解到你这一类工作的工作职责和人才需求。而且,你可以通过方方面面了解得到,你这个岗位在不同行业,不同公司里的状况,这对未来找工作的时候很有帮助。  

怎么看招聘广告: 可以说,直到实习以后,我才了解到招聘的时候,我们都会看到的招聘广告中的“职位说明”的重要意义。

Job responsibility就是这个职位的工作职责。你如果看到这个工作内容里有你一点都不认识的单词或者缩写(比如一些工科类,IT类,财务金融类的术语),极端地说,我觉得完全没必要投这个职位了。因为这说明我对这个职位的工作内容在哪个领域都不知道。当然,如果你知道这个单词或者缩写的意义,只是自己目前还不太熟练或者不太在行,这倒可以以后弥补,起码工作是属于哪个领域自己是清楚的。

Requirements是这个职位的招聘需求。一般一个职位会写明要求的学历、专业、工作经验、学习成绩、特殊技能等等。还会有一些抽象素质,或者说soft skill的要求。首先,每一个标准都不是绝对的。也就是说,当公司急需用人又实在招不到人的时候,可能会降低标准。就像大学录取分数线出来之后,也有招不到人的学校降分录取的。其次,在能招到人的基础上,绝对会优先招用所有条件都符合的人。这一句不是废话啦。事实上,Requirements里的每一个要求基本都是有用处的。请不要把“能在工作压力下工作”,“喜欢挑战性的工作”,“诚实,有责任心”,“踏实认真”,“能适应经常出差的工作”等等当成废话。一个工作写明了“喜欢挑战性的工作”,那么如果你的简历上从来没有过学生工作经历和实习经历,在学校里碌碌无为地混了几年,就体现出你不适合这个工作。一个工作写明了“能适应经常出差的工作”,那么如果你是女孩子,又计划在短期内结婚生子的话,也请不要轻易尝试。一个工作如果写明了“诚实,有责任心”,而你工作了几天之后,也许又感到厌倦了,那么请与公司好好交接工作,并安心工作到它们找到接替你的人。否则又怎么体现出你的责任心?所以,请注意招聘广告上的所有相关信息,招到最适合你的实习和工作。

几个误区:

1>越好的公司薪水越高。其实不是这样的。我也不太清楚为什么一些知名公司薪水反而不太高。

可能有以下几个原因:

一,公司的品牌效应放在那里,你只要在这个公司工作过,身价就会倍增,所以薪水不多也削尖了脑袋要进取工作。所以这个公司给的薪水不高。

二,可能的工资排位:资讯>IT>快消品>其他行业。(垄断行业不算在内)因为资讯/IT类企业,人力资本是公司最重要的资本,公司的价值完全取决于员工的脑力劳动,所以工资收入最高。而一些重工业企业,固定成本占的比例很高,人的劳动只是产品增值的一部分,所以工资相应不高。(请不要用马经反驳我,我不懂经济的说……)

2>越好的公司越喜欢名校毕业,越喜欢尖子学生。当然,同等条件下,公司当然喜欢用名校毕业生。但是,我们第一点提到,有些知名公司给的薪水反而不高,所以在有些比较看重薪水的生不太愿意去这种公司。有些公司会降低一些对学校的要求,或者到中部西部等地区的名校去招聘。另外,一个好公司里也有不太好的职位。比如一家大型化学企业,它也会需要很多IT人才,但这些IT岗位必然没有IT公司里的IT岗位有前途。所以它可能也不会招一流学校的一流学生,因为招了也留不住人,最后很可能给了offer,反而被学生拒掉。所以不是名校的学生,如果其他素质都非常好的话,不是没有机会的。还有一种情况,公司委托招聘网站进行校园招聘的简历筛选。那可能就比较惨。因为招聘网站可能会用一些关键字来筛选简历。它如果把“学校”的字段设成“复旦”“交大”的话,那就一点希望也没有了。而人工看简历的公司,虽然也看重学校,但没那么绝对。

3>成绩不重要有很多公司招聘的时候有最低GPA要求的,还有一些BT公司要求你成绩非常非常好。所以,在学校里,学习是基本的!必需的!首要的!要好好珍惜在学校里读书的时光啊……(后悔莫及的感叹……)

4>实习经历越多越好我觉得,这也是错误的想法。有意义的实习,1、2次足矣。没有意义的实习,再多也体现不出价值。而且,很多学生的简历上,做过sales实习,做过marketing实习,又做过admin实习,反正看起来是个全能型的。这种学生,如果是本科生还可以考虑。如果是研究生,只能说明他到了研究生阶段居然还不知道自己想要干什么,实在堪忧。此外,如果每个实习都只做1、2个月,可能会被质疑没有稳定性和责任感。

5>这个职位条件太高,不敢尝试像前面说到的,很多条件都是可以降低的。有时候公司最最最看重的不是学校知名度,不是实习经历,不是专业……那它看重什么?!看重你一个星期可以来公司上几天班,可以持续上班几个月。只要这个条件满足了,一切都可以商量。当然,也有反过来的情况,公司对专业背景的需求非常高,比如它要招工科和商科复合专业背景的人,这种人很难找到,所以其他标准都可适当放宽。

6>外企都喜欢性格aggressive的学生听说四大的确喜欢比较aggressive的学生。但是其他的公司就要看公司不同的背景了。有些公司反而喜欢性格比较平和比较保守的人。有些岗位需要实习生脚踏实地地干些细致的工作,所以也不可能找特别扎眼的人来做。它们又不是找领导,要你那么aggressive干什么呢?

美国顶尖大学的学生怎么读书的?

原载于知乎,来一起看看美帝的大学是如何学习的。 

原文链接

很多人都说,美国顶尖大学的学生,读书量惊人地大,每周是数百页,文科学生的阅读量尤其地大。我的问题是,他们如何保证在阅读速度很快的情况下达到很好的阅读效果呢?另外,他们的阅读,是不是辅有什么读书笔记之类的作业? 

Princeton University EE/AeroE sophomore  

 

我说一下我个人的吧。 

作为一个选课经常作死的工科生,表示基本啥课都上过,基本啥玩意都要读,但读不同东西的时候的细致程度是完全不同的。 

下面举几个例子,都是我在Princeton大一上过的课 

 

一门关于二战武器发展史的历史seminar,每周150-200页东西,但由于本人对这段历史本来就有不小的了解,而且这种阅读基本上也就是让你能参与课堂讨论的地步,没人会问你第一批被选做核弹试验场的日本城市中除了广岛长崎那两个悲剧,其他的都是怎么被剔除的。再加上历史文献读起来本来就有故事书的感觉,因此这种阅读也就是标准的scanning。。扫过去,知道大概内容和历史走向,知道主要人物和事件,就完事了,平均每页不会超过1分钟的,而且可以在晚上开始打哈欠的时候读都无所谓。 

 

一门neuroscience相关的writing seminar,但是奇葩的教授竟然让我们去读弗洛伊德的Ego and Id,还有笛卡尔的Meditation....然后还要发现其中的联系或者矛盾然后写论文!!!!!有一周那本区区40页的Meditation 我是读了前面忘了后面,看懂了每一句话但就是不知道在讲啥。。40页读了我前后8个多小时 有木有啊!!!!读到下一周读弗洛伊德的那本神书的时候我都觉得好理解多了啊- -。。。但由于要写论文,还要有不少的引用,所以只能硬着头皮读,然后外加自己做mind map,还要求助sparks notes这种给gist的神网站。。这门课创造了我到Princeton以后阅读效率最低的记录。 但后来正经写neuroscience paper的时候,我差不多在web of science里搜了100多篇论文,然后基本看标题和abstract就直接忽略了3/4,然后看结论再忽略到剩下里的2/3,余下的看的时候也先无视data analysis=。=...只有到决定引用的时候才通篇阅读。 

 

一门EE里模电的课: 

老师进度神快,每周差不多cover教科书上100页的样子,如果不预先读的话上课基本听天书。。当然理工科的教材在看的时候大家也都会慢慢的知道哪些是要认真看的(比如模型,理论公式,较为复杂的例子),哪些翻过去就行了(比如数学推导的过程我都是只看第一行的式子和最后的结果的-。-)。。这个和国内大学应该差别不大。 

 

一门航空Dynamics的课: 

老师进度神快,教材是老师自己编的,基本课上听天书,不上课看教材的话虽然不能说看不懂,但肯定会看到自我怀疑智商,对于这种东西,我们的对策基本是上完课再看书。。。= = 

 

一门电子元件入门(以实验为主的课),每周去实验室前要读差不多50页的相关文档,其中有具体飞实验步骤,注意事项,每次做的东西的理论原理,实验参数的计算推导,之后数据处理的要求等等。。这些只能慢慢的自习的读,但有时候能和lab partner各看一半,然后互相给对方讲。 

 

 

(通常我一学期是学4-5门课,工科和文科混搭) 

 

具体阅读方法,只能说因人而异,但有一个原则是遵循的:对于不同的文档,都只去关注必须关注的信息。一页letter size single spacing读的不到一分钟的玩意,正常人肯定不可能记住所有的细节,所以知道去记住什么,往往比阅读速度本身重要。 

 

我个人有时候会耍小聪明利用自己善于短时(基本两周之后就忘)大量记忆优势,用快速扫过的方式去读量很大,但对细节要求不高的东西,比如历史文献,比如政治科学中的案例等等;但这种方式当面对难以理解的东西,比如上面说的哲学著作的时候,基本没用,这种时候常常会读个十页,然后把其中的内容关键词稍微整理一下,方便梳理脉络;如果真的阅读量大到难以接受,我们会和学同一门课的同学一起读,然后读完互相给对方概况一下。。当然这种做法是有风险的,一定要找靠谱的partner才行。 

-----------------------------------------------------我是第二个小朋友的分割线----------------------------------------------------- 

本来我是不想来凑热闹的,但是考虑到标签里面有一个IVY联盟,作为S同仁,私以为不出来黑一下IVY,尤其是某H大,貌似有点对不起观众。虽然H大和我们是一起黑Y大的战友,但是这个时候出来卖队友是能够陶冶情操,舒缓心情,替H隔壁MIT基友出气的最佳活动。 

好吧,我的答案分两部分,一个是列一些tips,一个是我的情况。 

tips: 

1,某些人把美国大学的辛苦程度给神话了,比如著名的“哈佛凌晨三点图书馆”那个帖子,但是实际上我找H大的校友确认过,基本上哈佛图书馆凌晨三点不会有人。客观点说,一线美国大学的学习量,拿国内T大来对比,(个人观感) 

S,P,M,CAL这类学校的工作量和节奏大概略高于T大。 

H,UP,UCHI大概等同于T大的节奏。 

BROWN,BEKELEY,这一档大概稍微轻松于T大。 

纽约某C大就是随便玩,当然这是我故意黑他的。。。 

 

2,拖延症和抱佛脚,临近deadline才想起做事这种事情是全球通病,五道口TP两校和一线985广泛存在,一线美国大学也广泛存在。虽然整天party,整天爆游戏过于夸张,但是临近考试才想起看书,临近打分才想起project,临近交作业才开始慢慢写或者干脆拖这件事情基本上是这个年代学生的共性。 

 

3,我个人认为亚洲学生和中国学生在以上情况不能例外,其实就一线美国学校来说,亚洲人看起来努力实际上是因为亚洲人在理工科的比例很高,即使是文科也是愿意选择研究性比较强的那类。而美国来说,几个理工科牛校相对来说都卡得很紧,压力蛮大,故而有这种印象。实际上,这一代中国学生和一线学习的本土学生“融合”得非常国际化,尤其是商学院,特别看得出来。。 

 

4,我一直认为很多人对于阅读有一个误解——阅读必须是一种学习任务。但是真的么?抛开吐槽,美国本土学生的阅读习惯,尤其是wasp们,还是不错的。但是他们的阅读方式大部分是“略读”,其实阅读习惯相当零碎,而且读书笔记这种明显都是学霸干的事情。他们的方式是,大略地读一篇书,然后约几个同道者出来一起扯淡。这种阅读方式是否科学,我个人并不知道,但是有一点我比较认同——阅读从来不是一个应该被过于“严肃化”的事情。。举个比较好玩的例子,某人常年大量阅读20世纪初的哲学作品,尤其是和认知论相关的东西。如果按照比较中国的逻辑,这家伙肯定一学神。但是呢,事实上这家伙把这类书当小说读,而且经常属于拖延作业那一类型的人士。。 

 

5,文科学生的阅读量实际上是两个极端,一类是大规模涉猎各类书籍。另一类是完全不读书的,尤其是本来对阅读量要求很大的“政治”类,学科实际上后一类人的比例很大,当然master阶段的“法律类”,前一类人大一些,除却这类学科神奇的”生源“,还有一部分原因就是本土精英扎堆的美国文科,在国内被传得过神了。 

 

6,不要提牛人这个东西,牛人的世界和普通人的世界是不同的,虽然美国一线大学和国内TP等校牛人比较集中,比例很高,但是他们的生活也说明不了共生态。 

 

(TIPS暂时更新到这里,题主还有什么要问的,可以补充到问题里面) 

 

第二部分我们来看看我个人的阅读习惯,和身边一些人的阅读习惯。 

 

第一,对于文史类,我的建议是大信息筛选+课堂讨论+小组讨论(比如直接在HALL里面)。尤其不要过分精读。 

为什么呢?美国的历史类文集都有一个特点,如果在美国上过AP课程的都知道,美国历史这门AP课程从来就是一个坑——因为信息饱和度太大,且完全没有章法,大量的原文引述。而实际上美国大部分历史类书籍,甚至包括政论书籍都有大量的”原资料“引述,甚至有些无脑引用。虽然这类书籍做参照资料相对不错,但是对于”票友型“的人来说,实际上是个灾难。而我个人经验就是用筛选有用信息的方法来做初次阅读,包括国内理工科出身的历史爱好者都喜欢这样,直接筛选”最主要信息“,所有的叙述性东西跳过,直接摘取”干货“。然后呢,如何把这段历史补充的有血有肉,不要单纯靠阅读来完成,而是尽可能去靠”讨论“来完成。。 

 

第二,理工科教材。这个对于广大的理工科学生来说比较重要,我个人的建议是: 

先找结论性的东西,再来返还到过程之中。。 

因为凡是比较好的大学,无论国内外,老师上课都有个特点——那就是一节课的信息量非常得大。基础课都还好,专业课尤其如此。虽说未必他们都是PPT一路按着走,但是一节课几十个知识点的授课量还是很常见的。所以说,即使你课前做过预习,其实你的消化速度恐怕仍然会根本上节奏,我的建议是,先理解结论性的东西,因为这些是点,容易抓住,其次在返还到过程中去,再去形成知识面。那么这个“返还”的过程就是自习的过程,也是思考的过程。 

 

第三,数学,哲学类,和基础科学类。。 

这一块,我个人的建议是:精读,但是分块状规划,不求一次吞下,分开读完。但是也不要随手拿起来就读,放下来就睡。建议是完整看完“一节”作为基本的阅读单元。并且同时需要花大量的时间来自习补充性资料和前沿资料,以及“思考”。。 

这样做的愿意很简单,其信息量大,跨度大,而且需要大量的思维工作,你才能真正读进去。过于零碎的阅读,你很难将一个问题系统化的理解;但是过于大量的阅读,你会感到工作量大,苦闷,兴趣降低。。 

 

第四,关于“快消息”类,诸如时政话题,新闻等等。。 

这个我个人建议,只需要读一下主要的信息点就够了,这个没什么好说了。主要是,注意有一些独立思考的态度,以及“求实”的态度,不要什么捕风捉影的时期都去跟风,也不要将一些未经证实的东西拿来当“事实”处理。 

 

第五,关于半专业半兴趣类的书籍,经济类,以及军事类。 

实际上经济和军事都是相当专业的领域。但是他们都有一个特点就是,受众异常之广泛,票友众多,所以我们把他拿出来单独说一下。这个我的建议还是依照兴趣为主,以看书,看资料为基本,因为这两个领域虽然玩票居多,但是涉及到的东西非常之广,所以基本的知识积累是需要。其次,在提高方面,我个人还是觉得应该以交流为主。。 

 

总之呢,阅读重要的注意三个东西,一个是信息的量,一个是信息的消化能力,以及信息的排列特性。。根据阅读的读物和自己的情况来,从这三个角度来取得一个平衡,这样有利于阅读。。。

好了,积蓄力量,喜闻乐见的黑哈佛,黑耶鲁哥伦比亚的时间到鸟。 

不好意思这杯茶喝得有点久,本来觉得在最后更新这个彩蛋有偏题的嫌疑,但是我还是更新一下吧。我个人其实不想黑C大,因为知乎上第一个认识的人就是@崔飘扬 ,虽然在farm里面,黑C大貌似成了蛮多人喜爱的余兴节目,不过我不带恶意,纯属好玩地来黑一下吧。希望各位不要生气。。让我来承受一切罪孽吧(请自行脑补扫地僧的表情和口吻) 

 

关于C大:说到C大就不得不说道纽约,众所周知纽约是著名的逼都,起装逼程度比其时尚程度要夸张得多,某牌子的几百块的烂雨靴,在其他地方少人问津,但是在纽约却一个季度卖脱销几次。而且纽约有一个习惯在于,曼岛的人将曼哈顿成为town,而且对人说起必说自己来自曼哈顿而不说来自纽约,而对于他们来说曼哈顿才是真的城市,但是事实上曼哈顿除了高楼多点,基础设施水平还不如苏南一个县城,地铁挖得像煤窑一样,每次去地铁都不敢穿白衣服,因为总有一种妄想症让我觉得出来会惹上一声煤灰。但是这只是初级的装13,高级一点的,为了表示自己文艺,会说自己来自西村,为了表示自己时尚,说自己来自chelsea。。但是这些逼格在C大面前弱爆了,本科学生聚会,谈到留美生活,一般来说提及自己念书的地方,一般都会说哪一个city,按此逻辑,C大的童鞋一般应该说自己来自NYC,但是呢他们会说自己来自“columbia”,绝壁不说自己来自纽约。某中国孩子学到这招以后,对他家长辈这么说以后,他家长辈眼泪瞬间迸发:“儿啊,你怎么跑到拉丁美洲去上学啦,那饭吃得饱不?你看你都瘦了。”然后还有一个特色,就是哥大比UCHI还要喜欢强调自己是美国诺贝尔奖最多的学校,然后千凑万借,把各种有的没有的,稍稍有点关系都算上,跟小年轻婚礼发喜帖一样,恨不得把在C大上过一次公厕的路人教授都给拉进来,终于凑到90几个了,耶,顺手把剑桥也给秒杀了。。。 

 

关于S大:自己黑自己一下算了,S大特点很多,我只从我周边出发来黑一下,对于理科相关来说,就是“原教旨主义”,特别是数学。举个比较极端的例子:某人知道我找了个统计有关的PAR-JOB,然后他睁着恐惧的眼神,用阉人歌手的腔调指责我:“你怎么能跟商业这种下贱行当扯在一起,简直有辱斯文,你不配。。。”然后后面喷了一大串。。不仅如此,凡是有认识的学理科的好友进硅谷可能搞统计,可能搞开发,此人会仰天大叹,“你居然会想到去硅谷这种地方,这和良家妇女卖身有什么区别。”这个人的存在,让我宛若觉得这学校集体得了神经病。当然,这是非常极端的例子,但是S大对于基础学科原教旨主义的崇高感和使命感是非常突出的。 

其次就是伪文艺范儿,实际上对于S这个理工院校而言,很奇怪的是浪漫主义的氛围相当浓厚,甚至浓厚得有点扯,大有为赋新诗强说愁的意思。举个好玩的例子,某人是民国黑,也是民国粉,黑到什么程度呢?他把人家整编74师黑成“整编起来气死人的师”,但是他还是很喜欢去翻民国的一些东西,所以胡佛研究院某处是他常去的地方。。有一次从地下(那个房间在地下)出来,走了几步,看到胡佛塔,深切吟诗,把胡佛塔比作包容万象的象牙明珠啊!我就随口吐槽,“神马象牙明珠,明明像一根justin bieber的缩写”。。。。 

还有一次,和一群人去南方某州一老绅士家做客,大家都知道,南方老绅士喜欢玩养马,所以在他老家置办了一座带养马场的庄园。。一同校同乡的妹子望着斑驳的山坡感叹一句:“美到窒息的斑驳雕塑。”,然后,我默默得走到她身边,靠近她,让我的气息穿过她的秀发,轻轻说了句:“那是一山坡的马粪。”。。。。。 

 

关于CALTECH:本来没想吐槽CALTECH的,但是@韩乔宇 点名来玩那就对不起了。对于caltech来说,给我的印象就是低调和专注。我心中想象的念CALTECH的女生,都是一身飘逸的白衣加上散乱而不失优雅的长发,飘然地路过狭小校园的每一寸林荫,白莲花一般如果在生活中,我碰到了这样的女生,我一定会小跑(反方向),然后拼尽气力狂喊一身:“救命啊,有鬼啊,贞子(feng,jie)移民来美国啦。。。。话说,最近某被MITBBS扒皮的某位女子,靠玩从一张床玩到另一张床的游戏(据说),拿到CALTECH的终身教职,让这个纯洁的学校难道撒了一地狗血。。。。 

 

关于H大,其实H大可黑的地方不多,虽然肯尼迪学院每届学生的名单都是八卦的焦点,其八卦程度让其他学院瞬间丧失存在感,如果你想认识或者交往全世界的权贵二代,直接按着学生名单找就是了。。H大和UCB一样都是非常崇尚新自由主义的地方,如果哪个学校出现,”学生社团聚众大尺度社交,且抽大麻还high死几个人,场面混乱不堪入目“这种狗血的事情,出现在其他地方我会深切地一惊,但是在H大,我一点都不会觉得惊讶,这简直小事情。social传统的开放,让校友精神非常浓烈,无论创业还是做事,即使你不混final club。哈佛学生的标签就足够为你带来很多伙伴,但是呢,正是如此,兄弟之间反目这种看八点档肥皂剧都看不到的情节,却常有出现,而且往往沸沸扬扬。

你最拼命的时候是什么样子?

1.读医学院的,曾经在一个上10门专业课的学期里,同时考了GRE,新TOEFL,再加上平时的上课&见习。 话说医学院是没有选课的,学校按照你读哪个学期就给你安排好这学期所有的课,基本从早到晚排满,你自由选择课只有2种情况,一个是晚上的选修课,一个是你 要重修以前的课。所以,那学期按医学院正常的安排是10门专业课。 为了考GRE,前后总共只用了一个月左右,那个月基本逃了所有能逃的课在家复习,自己都认为不可能做到。每天晚上看到3,4点,早上9点左右起床,下午 1-2点睡觉,除了吃饭睡觉其余时间都在背GRE单词和做题。7-10天出门一次,每次出门1小时多就是逛联华大卖场,买好吃的。。。记得有一次出门正好 看见邻居去遛狗,我心里超好笑地自嘲,哎,狗真是好悠闲,每天都有时间出门逛街,我却一个多礼拜才有空有心思出门一次觅食。。。从大二上考完六级此没再碰 过英文的我,多年后,就靠这一个月的拼命,考出了个不错的GRE成绩,然后也算是给最后申请上好学校打了个好基础吧~~~考完GRE以后,就开始马不停蹄 地考掉了剩下的8门医学考试。刚考完就开始医院实习,然后又一边考了新TOEFL,又一边自己准备了所有的graduate school申请。所有过程都在那年里的半年之内完成。如今边读研还在准备更重要的美国医生执照考试,相比之下,当年的GRE+10门课显然已经是过去时 小菜一碟~人生其实就是这样一步步走上来,付出总有回报,回头去看,抓住机会,努力过,就不会后悔。加油吧 

 

 

 

2.大四的时候,泡了一个月图书馆,早上八点去,晚上六点回,考过了软件设计师,又这么泡了一个月,考过六级,那一年还得了一等奖学金,算是我学习生涯中比较充实的一段,高考都没这样……  

   工作之后,有一个项目临危受命,完全没有经验,花了十天左右的时候,从策划到设计到物料生产直到会议统筹执行结束,每天只睡四五个小时,其余时间全部主 场工作,协调供应商,设计师,公司,客户还有客户的五大事业部,期间还换了三个供应商,客户场地还变了三次,五大事业部还勾心斗角,还好最后圆满开完了四 百多人的订货会。结束后,回到家洗完澡差点晕倒在浴室里,睡了好几天人还是飘着的,一周瘦了六斤…… 

 

 

 

3. 从小到大,我哥哥说我都是娇生惯养长大的,我IQ还行,EQ不行,所以上学那会没怎么努力成绩也还不错,高中也不是很努力,不过成绩还不错,现在想想很后 悔,如果那时努力一点,估计全国重点应该没问题。 我想说的是我大学毕业第二份工作,可能对很多人来说简直是小巫见大巫,,甚至不值一提,但是我会记得。 我第二份工作是做销售,因为那会觉得销售工资高,更重要的是觉得自己适合做。我们公司是跑项目的,因为产品高端,所以一般都跑大型项目,国企、银行、外企 什么的,这些项目一般都在城市郊区或者开发区,每个公司之间的距离都很远,路上没有小吃店,没有商场、没有洗手间,每个公司之间都是高高的栅栏。  

    记得有一次去码头那边找项目,早上很早起来,坐公交到开发区,到底了没有公交了,因为那边公司都有厂车,没什么别的店。没有别的交通工具,太阳很晒,从早 上走到中午,那会我还大姨妈,哈哈,去找项目,远远的看见有在建工程了就要过去,然后找负责人谈我们产品的事,码头很长,就这么走,没有任何交通工具,不 时的有来往的拖集装箱的卡车,很大灰尘,我记得很清楚,那会去中交三航局,在我前面进去的是一辆奥迪A6,上海的牌照,下来两三个西装革履的人,回头朝我 看看,就进工地了。估计是在想这个小丫头到这边来干嘛,然后我就进去找人问项目地点了。  

    下午又走回公交底站,转了很多趟车回市区。大约到家下午6点。一天不吃不喝,因为天气热,人也没什么胃口,只喝水,晚上到家吃一顿,在网上找项目资料,完 了睡觉,第二天继续。那段时间我瘦了很多,压力也很大,每天都想很多事情。但是回头看看,真的学到了很多东西,社会真的很现实。 

 

 

 

4. 我是在毕业后,本来是学计算机的,结果找了一个证券公司的工作,隔行如隔山,真是啥都不懂啊,股票基金都傻傻分不清楚,更别提什么期货期权权证。。。公司 下的规定,必须一个月内考下证券从业资格证,考不下来就全铺盖闪人。好几本书呢啊!!!最后,在公司旁我租的房子里,整整宅了十多天,连吃泡面都觉得好浪 费时间,每天火腿肠加沙琪玛,后来连嘘嘘都是火腿肠的味道,严重缺乏营养和维生素,每天起床来头晕眼花,手指头全是肉刺,牙龈每时每刻都在流血。。。每天 两点睡觉,七点起来,除了睡觉,眼睛没有离开书。。。肩膀也肿了,想捶又够不到,就拿雨伞狠狠地敲~~~~~~不过后来我还是顺利的完成了这个艰难的任 务。。。  

  PS:非常感谢TY里的那个考试必过神位。。呵呵~~~出成绩前我每天都去虔诚祈福~~后来终于以公司第一高分过啦~~~~~还愿之~~~~~~ 

 

 

 

5.大学的时候减肥,每天至少1500米吧,外加不怎么吃东西,坚持了两三个月吧,减掉35斤吧。  

   然后考研,每天6点差10分起床,接近凌晨1点睡觉坚持了8个月,暑假的时候上海刮台风,学校的树连根拔起来好几颗,水漫到和图书馆的台阶齐平,我穿拖鞋去图书馆看书,整个图书馆只有4个人,就是我所在的考研小团队~,呵呵,最后大家的成绩可以说是惊人的高了。  

   然后考CFA,准备时间不充分,考前5天统共睡了10个小时,飘去考场,再飘回来,回来以后鞋都没脱睡了16个小时  

   这是我最拼的几次了,接下来又要考CPA了,学习和考试简直是无止尽的。。。。。。真挺郁闷的。。。。 

 

 

 

6. 广告行业大概是所有辛苦中最不把辛苦当事儿的工作。说说自己吧。2006年来西安,四年间在这个人生地不熟的地方,从月薪迈入了年薪。曾经和其他公司竟 稿,整整一个月零八天,没在天亮的时候离开过公司。也曾经为了拿出一个项目的年度策略方案,40个小时不睡觉,拿出一份漂亮的方案。至于通宵,加班,连续 几个月无休息这些事,已经习惯了。累到极点的时候,独自开车在半夜三点的二环上,疯狂掉泪。然后第二天继续在三个小时的睡眠后,打起精神处理各种事务。  

  职场上,不会有人因为是女生而怜惜你,女生当面对更多的压力时,各方面的不认可,更需要用实力证明自己。  

  拼命只是一个过程,只要朝着那个方向走下去,目标坚定,咬牙忍耐种种琐碎不足,工作不会辜负你。  

  只是更珍惜难得的休息时间,玩命工作之后玩命玩,才觉得这是人生的意义。  

  我是我,非此非彼,努力的意义在于实现自己生而为人的价值。  

  想走到更高的平台,必然要付出更多的汗水,这是真理。  

  未来的路那么长,和所有不愿意荒废光阴的人,一起努力! 

 

 7. 我还是学生,在日本,最拼命的是每天不停的打工,连续15天每天超过12个小时,人都是晕的。这一年天天吃蛋炒饭,没有营养可言,前几天考试估计都挂了,唯一值得自豪的是我是凭自己的能力养活 自己,不出卖肉体,不出卖祖国, 

 

8.我们大二时英语四六级可以同时报,我全报了并且要求自己必须全部通过。丝毫没有懈怠和一丝丝侥幸心理,完全进入备考状态,然后就在同一天,上午考四级下午考六级,全部通过。当时就自己一个人是那样的,特自豪。  

  考研,长期的持久战加突击战,绝不放松神经,任何有干扰我的一律pass过去,一心只有备考,然后通过。  

  考研期间还要保证课业,但平时时间全放在考研上,于是,在期末考试前三个小时,搞定一整个学期的课程,通过,并拿了二等奖学金。当时太惊讶人的潜能了。  

  本科毕业设计,通宵到凌晨四点,和室友一看窗外,惊呼天怎么亮了呢,于是爬上去睡觉,还没三四小时又爬起来继续搞设计,计算、画图,一整天不出门,如果有人去食堂,会带回来一寝室人的干粮,又轮回到凌晨四点睡觉,三四小时起床,再轮回。。。。毕业答辩时候,高分通过。  

   读研究生期间,导师安排去外地一个工地,当时我已经报名了一个注册考试,天天忙得要死没时间看书,但又是逼着自己要求必过,遂每天往死里挤出一点时间, 拼命看书,一个月左右,大概19门课。然后无论如何都要请假回来,考试,一天考了8小时,通过。当时想,真是什么都是自己争取的。  

  研究生毕业,开始工作,原来每个工程都催的要死。最赶的时候,从拿到建筑条件到出最终的结构施工图,包括建模计算和画图,就一个礼拜,疯的了,通宵出图了。当时想的是,我设计的楼别盖倒了就好。  

  接下来要准备另一场注册考试了,希望自己仍然有足够的力量,加油! 

 

 

 

9. 考SAT的时候……那时候还在学校上课,每天晚上一两点睡,第二天再六点爬起来去班里上课,一个月做掉了一千多页的书,顺便干掉了GRE红宝,每天唯一看 的课外读物就是china daily,考完后一周看见英语就想吐,至今没有再背过一个单词……现在弄美国历史,一周一本全英文的教材,可能也是我阅读速度比较快~能真正为自己的理 想奋斗就是快乐的事。 

 

 

 

10. 我最拼命的时候就是考研吧,本来是没什么定力的人,在电脑上玩扫雷都能玩一下午,常常学到一半就会找各种理由玩一会,上厕所啊,喝水啊,然后顺便看个电视 到吃饭时间,后来觉得自己这样不行了,刚好又到了冬天,拿个毯子脚下踩个热水袋,然后把脚给捆起来,这样每一次要行动都很麻烦,终于要考试的时候兴高采烈 的,觉得终于可以看到结果了,然后还好,顺利通过……  

  然后就是读研的时候,好像忽然慢慢清醒,没有像同志们这样连着干很长时间,但是读研期间每天8:30到实验室,晚上10点回去,认真干活,倒是一直都很充实……  

  现在工作了,偶尔需要加班,但是不敢长时间拼,晚上睡觉时间超过12点连着一个星期以上就会头疼,怕得什么病,所以也不怎么敢拼命做事,身体第一,其它的都是浮云……


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值