乔磊,谁知道你玩不玩贴吧,【求助】我只想去捷克玩说

新浪博客首页_新浪网
点击太频繁了,休息一下啦
新浪博友,欢迎您!
登录后,可看到更多精彩内容
下次自动登录
&&&&&&&&&&&&
作者昵称:BLOG地址:
文章标题:文章链接:
文章大类:
情感时尚美容
生活记录栏目
健康休闲栏目
文章小类:
城市·招商乔磊是傻逼【建湖县实验初中吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:8,628贴子:
乔磊是傻逼收藏
)逼,自己想!!!
路过路过路过路过路过路过路过路过路过路过
登录百度帐号乔磊老师怎么样【徐州一中吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:13,245贴子:
乔磊老师怎么样收藏
乔磊老师怎么样
很好!相当好!
曾经带我们4班时有一段话很有名:你不学你就听不懂,你听不懂你就不会,你们要想当分母我也不拦你
自然相当好
哇塞·肯定是嫉妒贺老师的帖子吧
回复:3楼分读第三声
贺老师指着自己的帖子和学生们的留言,对乔老师说:你有吗?你有吗?
楼上你说得太对了
老乔,顶!顶!顶!我们的班主任………
老乔,永远支持!!!!!!!
拖堂是肯定的,哪个老师不拖堂。为老乔鼓掌
隔壁拖堂,必化学课无疑...
老贺以前这样评价老乔:一个老师一节课拖堂不罕见,罕见的是每节课都拖堂……
更罕见的是老贺都站在窗外“深情”遥望老乔时(下一节是语文课),老乔回眸一笑,继续拖堂。
老乔挺好的啊
贺薇名言:“一节课拖堂不稀奇,难得的是节节课拖堂~!
老乔每次要在语文课前拖堂是为了让老贺看到自己上课的雄姿,让老贺知道:我天天晚上备课到那么晚,不陪老婆睡觉,还是有用滴!
谁知道贺薇有BABY了没?
看不透这个人。
这话说得,﹎ ┈ ┈ .o┈ ﹎&& ﹎.. ○﹎┈﹎ ●&& ○ .﹎ ﹎o▂▃▅▆┈ ┈ /█\/▓\ ﹎ ┈ ﹎﹎ ┈ ﹎ ▅▆▇█████▇▆▅▃▂┈﹎
言归正传,乔老师,我们支持顶您!
乔老大最棒了!!!!
登录百度帐号之前写了点东西,只写了一部分,名字就叫《上帝的编程语言》。&br&&br&上帝是个程序员&br&&br&上帝写代码只用了字符串&br&char chr1=“TAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCCTAACCCTAACCCTAACCCTAACCCTAACCT..............................&;&br&&a href=&//link.zhihu.com/?target=http%3A//www.ncbi.nlm.nih.gov/nuccore/& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://www.&/span&&span class=&visible&&ncbi.nlm.nih.gov/nuccor&/span&&span class=&invisible&&e/&/span&&span class=&ellipsis&&&/span&&/a&&br&&br&而生物学家用了好几个世纪在理解这段代码的真实含义,有点类似反汇编的过程。偶尔发现上帝的代码的一个功能,比如端粒的TACCC的功能,就可以发一篇nature science 什么的。但是上帝写的代码太乱了,生物学家到现在也没彻底搞懂。所以当别人说你写的代码太烂的时候,一定是你水平不够,不信你看上帝写的代码那么烂,这些人还研究的这么开心。&br&&br&chr1变量的前边的重复序列TAACCC就是端粒,端粒会在细胞分裂过程中越来越短,分裂几十次后,细胞就会凋亡。&br&&br&这段代码: &br&chr1 = chr[6*random():];&br&&br&这里有没有bug呢,有呢,上帝喜欢随机,这是上帝最大的bug。&br&&br&上帝最开始不是用AGTC这四个字符写代码的,而是用氨基酸,氨基酸有点像上帝的显示器,当然了这只是上帝输出设备中最小的元素,整个宇宙都是上帝的输出系统。&br&&br&上帝每天用氨基酸在屏幕上打像素点,打的太累,觉得重复工作太多,还不好保存结果,就想着减轻自己的工作,于是用AGTC去操纵蛋白质,这样能避免重复劳作。于是他开始写代码了。&br&&br&DNA 就是上帝的硬盘,可以持久化保存上帝的代码和数据,RNA就是上帝的内存不稳定,但是可以直接硬盘数据保持联系,然后指导氨基酸在显示器上画东西。这个过程被生物学家叫做central dogma 中心法则,在计算机领域叫冯诺依曼体系。&br&&br&上帝最开始写程序也是从简单到复杂的,不是一下子就写出windows linux 这么复杂的系统的,他最开始写的程序就是dos 这级别的。&br&&br&比如病毒和细菌什么的。&br&&br&当然一旦写完代码,bug一定很多,毕竟上帝写完代码都是不维护的,任其自生自灭的,而且还实现了遗传学算法,让这些代码自己进化。&br&&br&最经典的bug就是噬菌体可以跑到细菌里边,搞死细菌。&br&&br&未完待续。
之前写了点东西,只写了一部分,名字就叫《上帝的编程语言》。 上帝是个程序员 上帝写代码只用了字符串 char chr1=“TAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCTAACCCAACCCTAACCCTAACCCTAAC…
竟然没有人提哈利波特版本的,哈迷表示不服!&br&先贴原址 &a href=&//link.zhihu.com/?target=http%3A//heeris.id.au/2014/if-programming-languages-were-harry-potter-characters/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&If Programming Languages Were Harry Potter Characters&/a&&br&&br&C: 伏地魔 &br&&blockquote&C is… Voldemort, the dark lord of languages.&/blockquote&Fortran:邓布利多&br&Java: 乌姆里奇&br&C++: 斯内普&br&&blockquote&C++ is the hated, the wretched, the unreadable… Severus Snape.&/blockquote&Ada: 麦格教授&br&Bash:海格&br&Windows Batch File:费尔奇&br&Intercal: 卢娜&br&JavaScript:金妮&br&PHP:马尔福 &br&Haskell: 赫敏&br&&blockquote&Haskell is Hermione Granger, rolling her eyes at you discovering list comprehensions.&/blockquote&Perl: 罗恩&br&Python: 哈利&br&Rust: 纳威&br&&br&没错, 答主就是这么偏心 :P ,原博主真的是神描述啊。
竟然没有人提哈利波特版本的,哈迷表示不服! 先贴原址
C: 伏地魔 C is… Voldemort, the dark lord of languages.Fortran:邓布利多 Java: 乌姆里奇 C++: 斯内普 C++ is the hated, the wretched…
“入门”是良好的动机,但是可能作用缓慢。如果你手里或者脑子里有一个项目,那么实践起来你会被目标驱动,而不会像学习模块一样慢慢学习。&br&&br&另外如果说知识体系里的每一个知识点是图里的点,依赖关系是边的话,那么这个图一定不是一个有向无环图。因为学习A的经验可以帮助你学习B。因此,你不需要学习怎么样“入门”,因为这样的“入门”点根本不存在!你需要学习的是怎么样做一个比较大的东西,在这个过程中,你会很快地学会需要学会的东西的。当然,你可以争论说需要先懂python,不然怎么学会python做爬虫呢?但是事实上,你完全可以在做这个爬虫的过程中学习python :D&br&&br&看到前面很多答案都讲的“术”——用什么软件怎么爬,那我就讲讲“道”和“术”吧——爬虫怎么工作以及怎么在python实现。&br&&br&先长话短说summarize一下:&br&你需要学习&br&&ol&&li&基本的爬虫工作原理&/li&&li&基本的http抓取工具,scrapy&/li&&li&Bloom Filter: &a href=&//link.zhihu.com/?target=http%3A//billmill.org/bloomfilter-tutorial/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Bloom Filters by Example&/a&&/li&&li&如果需要大规模网页抓取,你需要学习分布式爬虫的概念。其实没那么玄乎,你只要学会怎样维护一个所有集群机器能够有效分享的分布式队列就好。最简单的实现是python-rq: &a href=&//link.zhihu.com/?target=https%3A//github.com/nvie/rq& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&https://&/span&&span class=&visible&&github.com/nvie/rq&/span&&span class=&invisible&&&/span&&/a&&/li&&li&rq和Scrapy的结合:&a href=&//link.zhihu.com/?target=https%3A//github.com/darkrho/scrapy-redis& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&darkrho/scrapy-redis · GitHub&/a&&/li&&li&后续处理,网页析取(&a href=&//link.zhihu.com/?target=https%3A//github.com/grangier/python-goose& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&grangier/python-goose · GitHub&/a&),存储(Mongodb)&/li&&/ol&&br&以下是短话长说:&br&&br&说说当初写的一个集群爬下整个豆瓣的经验吧。&br&&br&1)首先你要明白爬虫怎样工作。&br&想象你是一只蜘蛛,现在你被放到了互联“网”上。那么,你需要把所有的网页都看一遍。怎么办呢?没问题呀,你就随便从某个地方开始,比如说人民日报的首页,这个叫initial pages,用$表示吧。&br&&br&在人民日报的首页,你看到那个页面引向的各种链接。于是你很开心地从爬到了“国内新闻”那个页面。太好了,这样你就已经爬完了俩页面(首页和国内新闻)!暂且不用管爬下来的页面怎么处理的,你就想象你把这个页面完完整整抄成了个html放到了你身上。&br&&br&突然你发现, 在国内新闻这个页面上,有一个链接链回“首页”。作为一只聪明的蜘蛛,你肯定知道你不用爬回去的吧,因为你已经看过了啊。所以,你需要用你的脑子,存下你已经看过的页面地址。这样,每次看到一个可能需要爬的新链接,你就先查查你脑子里是不是已经去过这个页面地址。如果去过,那就别去了。&br&&br&好的,理论上如果所有的页面可以从initial page达到的话,那么可以证明你一定可以爬完所有的网页。&br&&br&那么在python里怎么实现呢?&br&很简单&br&&div class=&highlight&&&pre&&code class=&language-python&&&span class=&kn&&import&/span& &span class=&nn&&Queue&/span&
&span class=&n&&initial_page&/span& &span class=&o&&=&/span& &span class=&s&&&http://www.renminribao.com&&/span&
&span class=&n&&url_queue&/span& &span class=&o&&=&/span& &span class=&n&&Queue&/span&&span class=&o&&.&/span&&span class=&n&&Queue&/span&&span class=&p&&()&/span&
&span class=&n&&seen&/span& &span class=&o&&=&/span& &span class=&nb&&set&/span&&span class=&p&&()&/span&
&span class=&n&&seen&/span&&span class=&o&&.&/span&&span class=&n&&insert&/span&&span class=&p&&(&/span&&span class=&n&&initial_page&/span&&span class=&p&&)&/span&
&span class=&n&&url_queue&/span&&span class=&o&&.&/span&&span class=&n&&put&/span&&span class=&p&&(&/span&&span class=&n&&initial_page&/span&&span class=&p&&)&/span&
&span class=&k&&while&/span&&span class=&p&&(&/span&&span class=&bp&&True&/span&&span class=&p&&):&/span& &span class=&c&&#一直进行直到海枯石烂&/span&
&span class=&k&&if&/span& &span class=&n&&url_queue&/span&&span class=&o&&.&/span&&span class=&n&&size&/span&&span class=&p&&()&/span&&span class=&o&&&&/span&&span class=&mi&&0&/span&&span class=&p&&:&/span&
&span class=&n&&current_url&/span& &span class=&o&&=&/span& &span class=&n&&url_queue&/span&&span class=&o&&.&/span&&span class=&n&&get&/span&&span class=&p&&()&/span&
&span class=&c&&#拿出队例中第一个的url&/span&
&span class=&n&&store&/span&&span class=&p&&(&/span&&span class=&n&&current_url&/span&&span class=&p&&)&/span&
&span class=&c&&#把这个url代表的网页存储好&/span&
&span class=&k&&for&/span& &span class=&n&&next_url&/span& &span class=&ow&&in&/span& &span class=&n&&extract_urls&/span&&span class=&p&&(&/span&&span class=&n&&current_url&/span&&span class=&p&&):&/span& &span class=&c&&#提取把这个url里链向的url&/span&
&span class=&k&&if&/span& &span class=&n&&next_url&/span& &span class=&ow&&not&/span& &span class=&ow&&in&/span& &span class=&n&&seen&/span&&span class=&p&&:&/span&
&span class=&n&&seen&/span&&span class=&o&&.&/span&&span class=&n&&put&/span&&span class=&p&&(&/span&&span class=&n&&next_url&/span&&span class=&p&&)&/span&
&span class=&n&&url_queue&/span&&span class=&o&&.&/span&&span class=&n&&put&/span&&span class=&p&&(&/span&&span class=&n&&next_url&/span&&span class=&p&&)&/span&
&span class=&k&&else&/span&&span class=&p&&:&/span&
&span class=&k&&break&/span&
&/code&&/pre&&/div&写得已经很伪代码了。&br&&br&所有的爬虫的backbone都在这里,下面分析一下为什么爬虫事实上是个非常复杂的东西——搜索引擎公司通常有一整个团队来维护和开发。&br&&br&2)效率&br&如果你直接加工一下上面的代码直接运行的话,你需要一整年才能爬下整个豆瓣的内容。更别说Google这样的搜索引擎需要爬下全网的内容了。&br&&br&问题出在哪呢?需要爬的网页实在太多太多了,而上面的代码太慢太慢了。设想全网有N个网站,那么分析一下判重的复杂度就是N*log(N),因为所有网页要遍历一次,而每次判重用set的话需要log(N)的复杂度。OK,OK,我知道python的set实现是hash——不过这样还是太慢了,至少内存使用效率不高。&br&&br&通常的判重做法是怎样呢?&b&Bloom Filter&/b&. 简单讲它仍然是一种hash的方法,但是它的特点是,它可以使用固定的内存(不随url的数量而增长)以O(1)的效率判定url是否已经在set中。可惜天下没有白吃的午餐,它的唯一问题在于,如果这个url不在set中,BF可以100%确定这个url没有看过。但是如果这个url在set中,它会告诉你:这个url应该已经出现过,不过我有2%的不确定性。注意这里的不确定性在你分配的内存足够大的时候,可以变得很小很少。一个简单的教程:&a href=&//link.zhihu.com/?target=http%3A//billmill.org/bloomfilter-tutorial/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Bloom Filters by Example&/a&&br&&br&注意到这个特点,url如果被看过,那么可能以小概率重复看一看(没关系,多看看不会累死)。但是如果没被看过,一定会被看一下(这个很重要,不然我们就要漏掉一些网页了!)。 [IMPORTANT: 此段有问题,请暂时略过]&br&&br&&br&好,现在已经接近处理判重最快的方法了。另外一个瓶颈——你只有一台机器。不管你的带宽有多大,只要你的机器下载网页的速度是瓶颈的话,那么你只有加快这个速度。用一台机子不够的话——用很多台吧!当然,我们假设每台机子都已经进了最大的效率——使用多线程(python的话,多进程吧)。&br&&br&3)集群化抓取&br&爬取豆瓣的时候,我总共用了100多台机器昼夜不停地运行了一个月。想象如果只用一台机子你就得运行100个月了...&br&&br&那么,假设你现在有100台机器可以用,怎么用python实现一个分布式的爬取算法呢?&br&&br&我们把这100台中的99台运算能力较小的机器叫作slave,另外一台较大的机器叫作master,那么回顾上面代码中的url_queue,如果我们能把这个queue放到这台master机器上,所有的slave都可以通过网络跟master联通,每当一个slave完成下载一个网页,就向master请求一个新的网页来抓取。而每次slave新抓到一个网页,就把这个网页上所有的链接送到master的queue里去。同样,bloom filter也放到master上,但是现在master只发送确定没有被访问过的url给slave。Bloom Filter放到master的内存里,而被访问过的url放到运行在master上的Redis里,这样保证所有操作都是O(1)。(至少平摊是O(1),Redis的访问效率见:&a href=&//link.zhihu.com/?target=http%3A//redis.io/commands/linsert& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&LINSERT – Redis&/a&)&br&&br&&br&考虑如何用python实现:&br&在各台slave上装好scrapy,那么各台机子就变成了一台有抓取能力的slave,在master上装好Redis和rq用作分布式队列。&br&&br&&br&代码于是写成&br&&div class=&highlight&&&pre&&code class=&language-text&&#slave.py
current_url = request_from_master()
to_send = []
for next_url in extract_urls(current_url):
to_send.append(next_url)
store(current_url);
send_to_master(to_send)
#master.py
distributed_queue = DistributedQueue()
bf = BloomFilter()
initial_pages = &www.renmingribao.com&
while(True):
if request == 'GET':
if distributed_queue.size()&0:
send(distributed_queue.get())
elif request == 'POST':
bf.put(request.url)
&/code&&/pre&&/div&&br&&br&好的,其实你能想到,有人已经给你写好了你需要的:&a href=&//link.zhihu.com/?target=https%3A//github.com/darkrho/scrapy-redis& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&darkrho/scrapy-redis · GitHub&/a&&br&&br&4)展望及后处理&br&虽然上面用很多“简单”,但是真正要实现一个商业规模可用的爬虫并不是一件容易的事。上面的代码用来爬一个整体的网站几乎没有太大的问题。&br&&br&但是如果附加上你需要这些后续处理,比如&br&&ol&&li&有效地存储(数据库应该怎样安排)&br&&/li&&li&有效地判重(这里指网页判重,咱可不想把人民日报和抄袭它的大民日报都爬一遍)&br&&/li&&li&有效地信息抽取(比如怎么样抽取出网页上所有的地址抽取出来,“朝阳区奋进路中华道”),搜索引擎通常不需要存储所有的信息,比如图片我存来干嘛...&br&&/li&&li&及时更新(预测这个网页多久会更新一次)&br&&/li&&/ol&&br&如你所想,这里每一个点都可以供很多研究者十数年的研究。虽然如此,&br&“路漫漫其修远兮,吾将上下而求索”。&br&&br&所以,不要问怎么入门,直接上路就好了:)
“入门”是良好的动机,但是可能作用缓慢。如果你手里或者脑子里有一个项目,那么实践起来你会被目标驱动,而不会像学习模块一样慢慢学习。 另外如果说知识体系里的每一个知识点是图里的点,依赖关系是边的话,那么这个图一定不是一个有向无环图。因为学习A…
&p&作者:&a href=&https://www.zhihu.com/people/fd7c571a0ada1a72e42e8d& class=&internal&&@萧井陌&/a&, &a href=&https://www.zhihu.com/people/d2facf05b31ad4& class=&internal&&@Badger&/a&&/p&&ul&&li&自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0&/li&&li&&a href=&https://link.zhihu.com/?target=http%3A//cocode.cc/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CoCode&/a&:一个让大家学习、成长、相聚并获得乐趣的技术社区&/li&&li&答疑邮箱: xiao. (&a href=&https://www.zhihu.com/people/fd7c571a0ada1a72e42e8d& class=&internal&&@萧井陌&/a&&/li&&li&编程入门指南学习群:&a href=&https://link.zhihu.com/?target=https%3A//jq.qq.com/%3F_wv%3DD4AoJu1a& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&&/a&&/li&&/ul&&p&---&/p&&br&&p&日 v1.5 更新&/p&&p&日 v1.4 更新&/p&&p&日 v1.3 更新&/p&&p&日 v1.2 更新&/p&&p&日 v1.1 更新&/p&&p&日 v1.0 更新&/p&&p&---&/p&&br&&p&文章结构:&/p&&ul&&li&o 前言&/li&&li&o 心态调整&/li&&ul&&li&o 确定目标&/li&&li&o 不要浮躁&/li&&li&o 培养兴趣&/li&&li&o 开始学习&/li&&li&o 令人警醒的故事&/li&&li&o 警醒后的反思&/li&&li&o 启蒙&/li&&li&o 入门&/li&&ul&&li&? 计算机系统基础&/li&&li&? 数据结构与算法基础&/li&&li&? 编程语言基础&/li&&li&? 其他&/li&&/ul&&li&o 小结&/li&&li&o 后记&/li&&/ul&&br&&ul&&li&o 附录&/li&&li&o @萧井陌 的编程类回答汇总&/li&&li&o ...&/li&&/ul&&/ul&&p&---&/p&&br&&p&&b&前言&/b&&/p&&p&如今编程成为了一个越来越重要的「技能」:作为设计师,懂一些编程可能会帮你更好地理解自己的工作内容;作为创业者,技术创始人的身份则会让你的很多工作显得更容易。而作为刚想入门的新手,面对眼前海量的信息,或许根本不知道从哪里开始;入门轻松度过初级材料的学习后,发现学习越来越困难,陡峭的学习曲线又让你望而却步;你知道如何在页面上打印输出一些文本行,但是你不知道何时该进行一个真正的有用的项目;你不清楚自己还有哪些不知道的东西,你甚至搞不清下一步该学什么。&/p&&p&这篇文章的内容对此不仅会有一些方向性的建议,还会包含一个&b&基础核心向&/b&的编程入门导引。当然,Step by Step 的路线是不现实的,并且每个人都会有自己的特点,所以给出的这个编程入门导引更多的是为了引发读者的思考,最终帮助你形成适用于自己的学习路线。&/p&&p&但要注意:这篇文章是写给那些真心想学编程的人看的——那些憋着一股狠劲儿,一定要做出个什么真东西,不学好不罢休的人;而不是那些「听说编程好玩」的人,在我看来,这种人永远都入不了编程的门,更别提做出个像样的东西来了。&/p&&p&---&/p&&p&「Disclaimer」: 虽然整篇文章的基调都是所谓的「Strong Opinions, Weakly Held」,但读者还是应该像怀疑身边所有东西那样 怀疑我们所写内容的准确性。若有任何相关疑问欢迎在知乎或技术社区 &a href=&https://link.zhihu.com/?target=http%3A//cocode.cc/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CoCode&/a& 公开讨论。&/p&&br&&p&&b&心态调整&/b&&/p&&p&&b&确定目标&/b&&/p&&p&在你学习编程之前思考一下你的目标,当你有最终目标时道路会更加的清晰。那么,你想要写什么?网站?游戏? iOS 或者 Android 应用?或是你是想自动化完成一些乏味的任务让你有更多的时间看窗外的风景?也许你只是想更具有就业竞争力找个好工作。所有的这些都是有价值的目标,这些目标都是你编程学习推动力的一部分,没有推动力的人,是无法在略显枯燥的漫长学习之旅中走远的。&/p&&p&这段视频也许能给你启发:&a href=&https://link.zhihu.com/?target=http%3A//v.youku.com/v_show/id_XNTIzNzE2NzQ4.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&What Most Schools Don't Teach&/a&&/p&&p&&b&不要浮躁&/b&&/p&&p&Bad programming is easy. Even Dummies can learn it in 21 days. Good programming requires thought, but everyone can do it and everyone can experience the extreme satisfaction that comes with it.&/p&&p&不管是在线下还是线上的书店,满目都是《21天学通 X》这种速成书目,它们都承诺在很短一段时间内就让你能够学会相关技术。Matthias Felleisen 在他的著作 &a href=&https://link.zhihu.com/?target=http%3A//www.ccs.neu.edu/home/matthi& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&How to Design Programs&/a& 一书中明确指出了这种「速成」的趋势并予以了以上的讽刺。&/p&&p&所谓的「捷径」或者说「&a href=&https://link.zhihu.com/?target=http%3A//en.wikipedia.org/wiki/No_Silver_Bullet& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&银弹&/a&」是不存在的,智者说过,精通某个东西需要10年或10000个小时,也就是汉语中的「十年磨一剑」,所以不用着急,功不唐捐。&/p&&p&&b&培养兴趣&/b&&/p&&p&Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.&/p&&p&– &a href=&https://link.zhihu.com/?target=http%3A//en.wikipedia.org/wiki/Linus_Torvalds& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Linus Torvalds&/a&&/p&&p&沉醉于编程,编程更是为了兴趣。兴趣是推动力的不竭源泉,保持这种充满兴趣的感觉,以便于你能将其投入到你的10年/10000小时的编程时间中。编程很有趣,那是探索的喜悦。那是创造的喜悦。看到自己亲手完成的作品显示在屏幕上很有趣。有人为你的代码而惊叹很有趣。有人在公共场合称赞你的产品、邻居使用你的产品、以及在媒体上讨论你的产品很有趣。编程应该十分有趣,若并非如此,就找出导致编程无趣的问题,然后解决之。&/p&&br&&p&&b&开始学习&/b&&/p&&p&&b&令人警醒的故事&/b&&/p&&p&刚上初中时我便开始了编程学习,很不幸,我读完了好几本当时普遍存在的诸如《21天精通C++》这类的垃圾书,当时读完也无大碍,甚至还能写点小程序。但是软件出故障了我不知道为什么,稍显庞大的编程问题无从下手,碰到现有的库做不到的事也只能两手一摊。虽然我每天不停地编码,但我发现自己的编程能力却是提高的如此缓慢,对于「迭代」与「递归」的概念只有极其有限的了解,可以说只是把计算机当成了计算器来使用。&/p&&p&进入大学后,我主修了物理学,最初的一段时间里我一直在记忆背诵那些物理公式,却不理解她们是如何得出的,她们之间有什么联系,亦或是她们的意义。我不停地学习如何计算解答一些常见的物理问题,却对在这些 How 背后的 Why 一无所知。&/p&&p&而在我尝试做一些基于物理行为的电脑游戏时我再次遇到了之前的的困难:面对新问题时无从下手,面对新问题时的恐惧不断累积滋生,我开始主动逃避,不去真正地理解,而是幻想能通过Google搜索复制粘贴代码解决问题。幸运的是,大二时的一堂课完全改变了我的学习方法。那是第一次我有了「开天眼」的感觉,我痛苦地意识到,我对一些学科只有少的可怜的真正的理解,包括我主修的物理与辅修的计算机科学。&/p&&p&关于那堂课:那时我们刚刚学习完电学和狭义相对论的内容,教授在黑板上写下了这两个主题,并画了一根线将他们连了起来。「假设我们有一个电子沿导线以相对论级别的速度移动…」,一开始教授只是写下了那些我们所熟悉的电学与狭义相对论的常见公式,但在数个黑板的代数推导后,磁场的公式神奇的出现了。虽然几年前我早已知道这个公式,但那时我根本不知道这些现象间的有着这样潜在的联系。磁与电之间的差别只是「观察角度」的问题,我猛然醒悟,此后我不再仅仅追求怎么做 (How),我开始问为什么 (why),开始回过头来,拾起那些最基础的部分,学习那些我之前我本该好好学的知识。这个回头的过程是痛苦的,希望你们能就此警醒,永远不要做这种傻事。&/p&&p&&b&警醒后的反思&/b&&/p&&figure&&img data-rawheight=&326& src=&https://pic4.zhimg.com/c158c3a0fc25db6ce30774_b.jpg& data-rawwidth=&600& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic4.zhimg.com/c158c3a0fc25db6ce30774_r.jpg&&&/figure&&br&&p&这幅图取自 Douglas Hofstadter 的著作 &a href=&https://link.zhihu.com/?target=http%3A//en.wikipedia.org/wiki/G& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&G?del, Escher, Bach&/a&。图中的每一个字母都由其他更小的字母组成。在最高层级,我们看的是 &MU&,M 这个字母由三个 HOLISM (&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E6%%25E5%%25E8%25A7%2580& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&整全观&/a&)构成,U则是由一个 REDUCTIONISM (&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%5BF%5E5%2525& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&还原论&/a&)构成,前者的每一个字母都包含后者的后者整个词,反之亦然。而在最低层级,你会发现最小的字母又是由重复的 &MU& 组成的。&/p&&p&每一层次的抽象都蕴含着信息,如果你只是幼稚地单一运用整体论在最高层级观察,或运用还原论观察最低层级,你所得到的只有 &MU& (在一些地区的方言中 mu 意味着什么都没有)。问题来了,怎样才能尽可能多的获取每个层级的信息?或者换句话说,该怎样学习复杂领域(诸如编程)包含的众多知识?&/p&&p&教育与学习过程中普遍存在一个关键问题:初学者们的目标经常过于倾向&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E6%%25E5%%25E8%25A7%2580& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&整全观&/a&而忽略了基础,举个常见的例子,学生们非常想做一个机器人,却对背后的&/p&&p&理解物理模型 → 理解电子工程基础 → 理解伺服系统与传感器 → 让机器人动起来&/p&&p&这一过程完全提不起兴趣。&/p&&p&在这里对于初学者有两个大坑:&/p&&ol&&li&1 如果初学者们只与预先构建好的「发动机和组件」接触(没有理解和思考它们构造的原理),这会严重限制他们在将来构建这些东西的能力,并且在诊断解决问题时无从下手。&/li&&li&2 第二个坑没有第一个那么明显:幼稚的「整体论」方法有些时候会显得很有效,这有一定的隐蔽性与误导性,但是一两年过后(也许没那么长),当你在学习路上走远时,再想回过头来「补足基础」会有巨大的心理障碍,你得抛弃之前自己狭隘的观念,耐心地缓步前进,这比你初学时学习基础知识困难得多。&/li&&/ol&&p&但也不能矫枉过正,陷入还原论的大坑,初学时便一心试图做宏大的理论,这样不仅有一切流于理论的危险,枯燥和乏味还会让你失去推动力。这种情况经常发生在计算机科班生身上。&/p&&p&为了更好理解,可以将学习编程类比为学习厨艺:你为了烧得一手好菜买了一些关于菜谱的书,如果你只是想为家人做菜,这会是一个不错的主意,你重复菜谱上的步骤也能做出不赖的菜肴,但是如果你有更大的野心,真的想在朋友面前露一手,做一些独一无二的美味佳肴,甚至成为「大厨」,你必须理解这些菜谱背后大师的想法,理解其中的理论,而不仅仅是一味地实践。但是如果你每天唯一的工作就是阅读那些厚重的理论书籍,因为缺乏实践,你只会成为一个糟糕的厨子,甚至永远成为不了厨子,因为看了几天书后你就因为枯燥放弃了厨艺的学习。&/p&&p&总之,编程是连接理论与实践的纽带,是&a href=&https://link.zhihu.com/?target=http%3A//zh.wikip& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&计算机科学&/a&与计算机应用技术相交融的领域。正确的编程学习方法应该是:通过自顶而下的探索与项目实践,获得编程直觉与推动力;从自底向上的打基础过程中,获得最重要的通用方法并巩固编程思想的理解。&/p&&p&作为初学者,应以后者为主,前者为辅。&/p&&p&&b&启蒙&/b&&/p&&p&「学编程应该学哪门语言?」这经常是初学者问的第一个问题,但这是一个错误的问题,你最先考虑的问题应该是「哪些东西构成了编程学习的基础」?&/p&&p&编程知识的金字塔底部有三个关键的部分:&/p&&ol&&li&o 算法思想:例如怎样找出一组数中最大的那个数?首先你得有一个 maxSoFar 变量,之后对于每个数…&/li&&li&o 语法:我怎样用某种编程语言表达这些算法,让计算机能够理解。&/li&&li&o 系统基础:为什么 while(1) 时线程永远无法结束?为什么 int *foo() { int x = 0; return &x; } 是不可行的?&/li&&/ol&&p&启蒙阶段的初学者若选择C语言作为第一门语言会很困难并且枯燥,这是因为他们被迫要同时学习这三个部分,在能做出东西前要花费很多时间。&/p&&p&因此,为了尽量最小化「语法」与「系统基础」这两部分,建议使用 Python 作为学习的第一门语言,虽然 Python 对初学者很友好,但这并不意味着它只是一个「玩具」,在大型项目中你也能见到它强大而灵活的身影。熟悉 Python 后,学习 C 语言是便是一个不错的选择了:学习 C 语言会帮助你以靠近底层的视角思考问题,并且在后期帮助你理解操作系统层级的一些原理。&/p&&p&下面给出了一个可供参考的启蒙阶段导引,完成后你会在头脑中构建起一个整体框架,帮助你进行自顶向下的探索。下面的材料没有先后顺序,如果卡壳的话可以考虑换另一份材料。&/p&&ol&&li&o 完成 &a href=&%22&&MIT 6.00.1x&/a& (&a href=&https://link.zhihu.com/?target=http%3A//www.xuetangx.com/courses/course-v1%3AMITx%2B6_00_1x%2Bsp/about& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&麻省理工:计算机科学和 Python 编程导论&/a&)。虽然该课程的教学语言为 Python,但作为一门优秀的导论课,它强调学习计算机科学领域里的重要概念和范式,而不仅仅是教你特定的语言。如果你不是科班生,这能让你在自学时开阔眼界;课程内容:计算概念,Python 编程语言,一些简单的数据结构与算法,测试与调试。&/li&&li&o 完成 &a href=&https://link.zhihu.com/?target=https%3A//www.edx.org/course/introduction-computer-science-harvardx-cs50x& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Harvard CS50x&/a& (&a href=&https://link.zhihu.com/?target=http%3A//v.163.com/special/opencourse/cs50.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&哈佛大学:计算机科学&/a&)。同样是导论课,但这门课与MIT的导论课互补。教学语言涉及 C, PHP, JavaScript + SQL, HTML + CSS,内容的广度与深度十分合理,还能够了解到最新的一些科技成果,可以很好激发学习计算机的兴趣。支线任务:阅读《&a href=&https://link.zhihu.com/?target=https%3A//book.douban.com/subject//& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&编码&/a&》&/li&&li&o 完成 &a href=&https://link.zhihu.com/?target=http%3A//www.liaoxuefeng.com/wiki/958fa6d3a2e542c000& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Python 教程&/a&。&/li&&/ol&&br&&p&&b&入门&/b&&/p&&p&结束启蒙阶段后,初学者积累了一定的代码量,对编程也有了一定的了解。这时你可能想去学一门具体的技术,诸如 Web 开发, Android 开发,iOS 开发什么的,你可以去尝试做一些尽可能简单的东西,给自己一些正反馈,补充自己的推动力。但记住别深入,这些技术有无数的细节,将来会有时间去学习;同样的,这时候也别过于深入特定的框架和语言,现在是学习&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E8%25AE%25A1%25E7%25AE%& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&计算机科学&/a&通用基础知识的时候,不要试图去抄近路直接学你现在想学的东西,这是注定会失败的。&/p&&p&那么入门阶段具体该做些什么呢?这时候你需要做的是反思自己曾经写过的程序,去思考程序为什么 (Why) 要这样设计?,思考怎样 (How) 写出更好的程序?试图去探寻理解编程的本质:利用计算机解决问题。&/p&&p&设想 :&/p&&p&X = 用于思考解决方案的时间,即「解决问题」 部分&/p&&p&Y = 用于实现代码的时间,即「利用计算机」部分」&/p&&p&编程能力 = F(X, Y) (X&Y)&/p&&p&要想提高编程能力,就得优化 X,Y 与函数 F(X, Y),很少有书的内容能同时着重集中在这三点上,但有一本书做到了——&a href=&https://link.zhihu.com/?target=https%3A//github.com/sarabander/sicp-pdf& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Structure and Interpretation of Computer Programs&/a& (SICP)《&a href=&https://link.zhihu.com/?target=https%3A//book.douban.com/subject/1148282/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&计算机程序的构造和解释&/a&》,它为你指明了这三个变量的方向。在阅读 SICP 之前,你也许能通过调用几个函数解决一个简单问题。但阅读完 SICP 之后,你会学会如何将问题抽象并且分解,从而处理更复杂更庞大的问题,这是编程能力巨大的飞跃,这会在本质上改变你思考问题以及用代码解决问题的方式。此外,SICP 的教学语言为 Scheme,可以让你初步了解&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E5%2587%25BD%25E6%%25E7%25A8%258B%25E5%25BC%258F%25E8%25AA%259E%25E8%25A8%2580& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&函数式编程&/a&。更重要的是,他的语法十分简单,你可以很快学会它,从而把更多的时间用于学习书中的编程思想以及复杂问题的解决之道上。&/p&&p&&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E5%25BD%25BC%25E5%25BE%25B7%25C2%25B7%25E8%25AB%25BE%25E7%25B1%25B3%25E6%25A0%25BC& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Peter Norvig&/a& 曾经写过一篇非常精彩的 SICP &a href=&https://link.zhihu.com/?target=http%3A//www.amazon.com/review/R403HR4VL71K8/ref%3Dcm_cr_rdp_perm& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&书评&/a&,其中有这样一段:&/p&&p&To use an analogy, if SICP were about automobiles, it would be for the person who wants to know how cars work, how they are built, and how one might design fuel-efficient, safe, reliable vehicles for the 21st century. The people who hate SICP are the ones who just want to know how to drive their car on the highway, just like everyone else.&/p&&p&如果你是文中的前者,阅读SICP将成为你衔接启蒙与入门阶段的关键点&/p&&p&虽然SICP是一本「入门书」,但对于初学者还是有一定的难度,以下是一些十分有用的辅助资源:&/p&&ol&&li&o &a href=&https://link.zhihu.com/?target=https%3A//www.udacity.com/course/cs212& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Udacity CS212 Design of Computer Program&/a&:由上文提到的Google 研究主管 Peter Norvig 主讲,教学语言为 Python,内容有一定难度。&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//www.ccs.neu.edu/home/matthias/HtDP2e/Draft/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&How to Design Programs, Second Edition&/a&:HtDP 的起点比SICP低,书中的内容循循善诱,对初学者很友好,如果觉得完成SICP过于困难,可以考虑先读一读 HtDP。&/li&&li&o &a href=&%22ht&&UC Berkeley SICP 授课视频&/a&以及 SICP 的两位作者给 Hewlett-Packard 公司员工培训时的录像(&a href=&https://link.zhihu.com/?target=https%3A//github.com/DeathKing/Learning-SICP/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&中文化项目&/a&)&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//composingprograms.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Composing Programs&/a&:一个继承了SICP思想但使用Python作为教学语言的编程导论(其中包含了一些小项目)&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//sicp.readthedocs.org/en/latest/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&SICP 解题集&/a&:对于书后的习题,作为初学者应尽力并量力完成。&/li&&/ol&&p&完成了这部分学习后,你会逐步建立起一个自己的程序设计模型,你的脑子里不再是一团乱麻,你会意识到记住库和语法并不会教你如何解决编程问题,接下来要学些什么,在你心里也会明朗了很多。这时候才是真正开始进行项目实践,补充推动力的好时机。关于项目实践:对于入门阶段的初学者,参与开源项目还为时过早,这时候应该开始一些简单的项目,诸如搭建一个网站并维护它,或是编写一个小游戏再不断进行扩展,如果你自己的想法不明确,推荐你关注 &a href=&http://zhuanlan.zhihu.com/alchemelon& class=&internal&&炼瓜研究所 &/a&,或者从 &a href=&https://link.zhihu.com/?target=https%3A//github.com/karan/Projects/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Mega Project List&/a& 中选取自己喜欢的项目。&/p&&p&如果你觉得 SICP 就是搞不定,也不要强迫自己,先跳过,继续走常规路线:开始读 &a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/1998341/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The Elements of Computing Systems&/a& 吧,它会教会你从最基本的 Nand 门开始构建计算机,直到俄罗斯方块在你的计算机上顺利运行。 &a href=&https://link.zhihu.com/?target=http%3A//www.nand2tetris.org/course.php& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&具体内容&/a&不多说了,这本书会贯穿你的整个编程入门阶段,你入门阶段的目标就是坚持完成这本书的所有项目(包括一个&b&最简的&/b&编译器与操作系统)。&/p&&p&&b&为了完全搞定这本书,为了继续打好根基。为了将来的厚积薄发,在下面这几个方面你还要做足功课(注意:下面的内容没有绝对意义上的先后顺序):&/b&&/p&&br&&p&&b&计算机系统基础&/b&&/p&&p&有了之前程序设计的基础后,想更加深入地把握计算机科学的脉络,不妨看看这本书:&a href=&https://link.zhihu.com/?target=http%3A//csapp.cs.cmu.edu/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Computer Systems: A Programmer's Perspective, 3/E&/a&《&a href=&%22http:&&深入理解计算机系统&/a&》。这里点名批评这本书的中译名,其实根本谈不上什么深入啦,这本书只是 &a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E5%258D%25A1%25E5%E5%259F%25BA%25E6%25A2%%259A%%25A4%25A7%25E5%25AD%25A6& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CMU&/a& 的「&a href=&https://link.zhihu.com/?target=https%3A//www.cs.cmu.edu/%7E213/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&计算机系统导论&/a&」的教材而已。CMU的计算机科学专业相对较偏软件,该书就是从一个程序员的视角观察计算机系统,以「程序在计算机中如何执行」为主线,全面阐述计算机系统内部实现的诸多细节。&/p&&p&如果你看书觉得有些枯燥的话,可以跟一门 Coursera 上的 MOOC: &a href=&https://link.zhihu.com/?target=https%3A//www.coursera.org/course/hwswinterface& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The Hardware/Software Interface&/a&,这门课的内容是 CSAPP 的一个子集,但是最经典的&a href=&https://link.zhihu.com/?target=http%3A//csapp& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&实验部分&/a&都移植过来了。同时,可以看看 &a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/1139336/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The C Programming Language&/a&,回顾一下C语言的知识。&/p&&p&完成这本书后,你会具备坚实的系统基础,也具有了学习操作系统,编译器,计算机网络等内容的先决条件。当学习更高级的系统内容时,翻阅一下此书的相应章节,同时编程实现其中的例子,一定会对书本上的理论具有更加感性的认识,真正做到经手的代码,从上层设计到底层实现都了然于胸,并能在脑中回放数据在网络-&内存-&缓存-&CPU 的流向。&/p&&br&&p&&b&数据结构与算法基础&/b&&/p&&p&如今,很多人认为编程(特别是做 web 开发)的主要部分就是使用别人的代码,能够用清晰简明的方式表达自己的想法比掌握硬核的数学与算法技巧重要的多,数据结构排序函数二分搜索这不都内置了吗?工作中永远用不到,学算法有啥用啊?这种扛着实用主义大旗的「码农」思想当然不可取。没有扎实的理论背景,遭遇瓶颈是迟早的事。&/p&&p&数据结构和算法是配套的,入门阶段你应该掌握的主要内容应该是:这个问题用什么算法和数据结构能更快解决。这就要求你对常见的数据结构和算法了熟于心,你不一定要敲代码,用纸手写流程是更快的方式。对你不懂的&a href=&https://link.zhihu.com/?target=http%3A//en.wikipedia.org/wiki/List_of_data_structures& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&数据结构&/a&和&a href=&https://link.zhihu.com/?target=http%3A//en.wikipedia.org/wiki/List_of_algorithms& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&算法&/a&,你要去搜它主要拿来干嘛的,使用场景是什么。&/p&&p&供你参考的学习资源:&/p&&ol&&li&o 《&a href=&https://link.zhihu.com/?target=http%3A//book.do& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&算法导论&/a&》:有人说别把这本书当入门书,这本书本来就不是入门书嘛,虽说书名是 Introduction to Algorithms,这只不过是因为作者不想把这本书与其他书搞重名罢了。当然,也不是没办法拿此书入门,读第一遍的时候跳过习题和证明就行了嘛,如果还觉得心虚先看看这本《&a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/1139426/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&数据结构与算法分析&/a&》&/li&&li&o Algorithms: Design and Analysis [&a href=&https://link.zhihu.com/?target=https%3A//www.coursera.org/course/algo& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Part 1&/a&] & [&a href=&https://link.zhihu.com/?target=https%3A//www.coursera.org/course/algo2& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Part 2&/a&]: Stanford 开的算法课,不限定语言,两个部分跟下来算法基础基本就有了;如果英文不过关:&a href=&https://link.zhihu.com/?target=http%3A//v.163.com/special/opencourse/algorithms.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&麻省理工学院:算法导论&/a&&/li&&li&o 入门阶段还要注意培养使用常规算法解决小规模问题的能力,结合前文的SICP部分可以读读这几本书:《&a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/3227098/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&编程珠玑&/a&》,《&a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/1173548/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&程序设计实践 &/a&》&/li&&/ol&&p&&b&编程语言基础&/b&&/p&&p&Different languages solve the same problems in different ways. By learning several different approaches, you can help broaden your thinking and avoid getting stuck in a rut. Additionally, learning many languages is far easier now, thanks to the wealth of freely available software on the Internet&/p&&p&- &a href=&%22https://&&The Pragmatic Programmer&/a&&/p&&p&此外还要知道,学习第 n 门编程语言的难度是第 (n-1) 门的一半,所以尽量去尝试不同的编程语言与编程范式,若你跟寻了前文的指引,你已经接触了:「干净」的脚本语言 Python, 传统的命令式语言 C, 以及&a href=&https://link.zhihu.com/?target=http%3A//matt.might.net/articles/i-love-you-in-racket/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&浪漫&/a&的函数式语言 Scheme 三个好朋友。但仅仅是接触远远不够,你还需要不断继续加深与他们的友谊,并尝试结交新朋友,美而雅的 &a href=&https://link.zhihu.com/?target=http%3A//mislav.uniqpath.com/poignant-guide/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Ruby&/a& 小姑娘,Hindley-Milner 语言家族的掌中宝 &a href=&https://link.zhihu.com/?target=http%3A//learnyouahaskell.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Haskell&/a& 都是不错的选择。至于 &a href=&%22http:/&&C++ &/a&,喜欢的话学学也无妨。&/p&&p&现实是残酷的,在软件工程领域仍旧充斥着一些狂热者,他们只掌握着一种编程语言,也只想掌握一种语言,他们认为自己掌握的这门语言是最好的,其他异端都是傻X。这种人也不是无药可救,有一种很简单的治疗方法:让他们写一个编译器。要想真正理解编程语言,你必须亲自实现一个。现在是入门阶段,不要求你去上一门编译器课程,但要求你能至少实现一个简单的解释器。&/p&&p&供你参考的学习资源:&/p&&ol&&li&o &a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/2152385/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&《程序设计语言-实践之路》&/a&:CMU 编程语言原理的教材,程序语言入门书,现在就可以看,会极大扩展你的眼界,拉开你与普通人的差距。&/li&&li&o &a href=&https://link.zhihu.com/?target=https%3A//www.coursera.org/course/proglang& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Programming Languages&/a&:课堂上你能接触到极端 FP (函数式)的 SML,中性偏 FP 的 Racket,以及极端 OOP (&a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E9%259D%25A2%25E5%E5%25AF%25B9%25E8%25B1%25A1%25E7%25A8%258B%25E5%25BA%258F%25E8%25AE%25BE%25E8%25AE& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&面向对象&/a&)的 Ruby,并学会问题的 FP 分解 vs OOP 分解、ML 的模式匹配、Lisp 宏、不变性与可变性、解释器的实现原理等,让你在将来学习新语言时更加轻松并写出更好的程序。&/li&&li&o &a href=&https://link.zhihu.com/?target=https%3A//www.udacity.com/course/cs262& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Udacity CS262 Programming Language&/a&:热热身,教你写一个简单的浏览器——其实就是一个 JavaScript 和 HTML 的解释器,完成后的成品还是很有趣的;接下来,试着完成一个之前在SICP部分提到过的项目:用Python写一个 &a href=&https://link.zhihu.com/?target=http%3A//inst.eecs.berkeley.edu/%7Ecs61a/fa13/proj/scheme/scheme.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Scheme Interpreter&/a&&/li&&/ol&&p&&b&其他&/b&&/p&&p&编程入门阶段比较容易忽视的几点:&/p&&ol&&li&1 学会提问:学习中肯定会遇到问题,应该学会正确的使用搜索引擎。当单靠检索无法解决问题时,去 &a href=&https://link.zhihu.com/?target=http%3A//stackoverflow.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Stack Overflow&/a& 或知乎提问,提问前读读这篇文章:&a href=&https://link.zhihu.com/?target=http%3A//mp.weixin.qq.com/s%3F__biz%3DMzI3NDI5ODQ2Ng%3D%3D%26mid%3D%26idx%3D1%26sn%3D201ccfdfb5d855& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&能有效解决问题的提问方法&/a&。&/li&&li&2 不要做一匹独狼:尝试在 &a href=&https://link.zhihu.com/?target=http%3A//cocode.cc/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CoCode&/a& 与他人交流想法。尝试搭建一个像&a href=&%22h&&这样&/a&简单的个人网站。试着在博客上记录自己的想法。订阅自己喜欢的编程类博客,推荐几个供你参考:&a href=&https://link.zhihu.com/?target=http%3A//www.joelonsoftware.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Joel on Software&/a&, &a href=&https://link.zhihu.com/?target=http%3A//www.norvig.com/index.html& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Peter Norvig&/a&, &a href=&https://link.zhihu.com/?target=http%3A//blog.codinghorror.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Coding Horror&/a&&/li&&li&3 学好英语:英语是你获取高质量学习资源的主要工具,但在入门阶段,所看的那些翻译书信息损耗也没那么严重,以你自己情况权衡吧。&/li&&/ol&&p&&b&小结&/b&&/p&&p&以上的内容你不应该感到惧怕,编程的入门不是几个星期就能完成的小项目。期间你还会遇到无数的困难,当你碰壁时试着尝试&a href=&https://link.zhihu.com/?target=http%3A//www.quora.com/Education/How-can-you-learn-faster/answer/Acaz-Pereira& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&「费曼」技巧&/a&:将难点分而化之,切成小知识块,再逐个对付,之后通过向别人清楚地解说来检验自己是否真的理解。当然,依旧会有你解决不了的问题,这时候不要强迫自己——很多时候当你之后回过头来再看这个问题时,一切豁然开朗。&/p&&p&此外不要局限于上文提到的那些材料,还有一些值得在入门阶段以及将来的提升阶段反复阅读的书籍。这里不得不提到在 &a href=&https://link.zhihu.com/?target=http%3A//stackoverflow.com/questions/1711/what-is-the-single-most-influential-book-every-programmer-should-read& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Stack Overflow&/a& 上票选得出的程序员必读书单中,排在前两位的两本书:&/p&&p&&a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/Fi%3D0& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&Code Complete&/a&:不管是对于经验丰富的程序员还是对于那些没有受过太多的正规训练的新手程序员,此书都能用来填补自己的知识缺陷。对于入门阶段的新手们,可以重点看看涉及变量名,测试,个人性格的章节。&/p&&p&&a href=&https://link.zhihu.com/?target=http%3A//book.douban.com/subject/1417047/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The Pragmatic Programmer&/a& :有人称这本书为代码小全:从 &a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/%25E4%25B8%%25AC%25A1%25E4%25B8%%25BB%%25B8%%25AC%25A1& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&DRY&/a& 到 &a href=&https://link.zhihu.com/?target=http%3A//zh.wikipedia.org/wiki/KISS%25E5%258E%259F%25E5%& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&KISS&/a&,从做人到做程序员均有涉及。&/p&&br&&p&这本书的作者 Dave ,在书中开篇留了这样一段话:&/p&&p&&b&You’re a Pragmatic Programmer. You aren’t wedded to any particular technology, but you have a broad enough background in the science, and your experience with practical projects allows you to choose good solutions in particular situations. Theory and practice combine to make you strong. You adjust your approach to suit the current circumstances and environment. And you do this continuously as the work progresses. Pragmatic Programmers get the job done, and do it well.&/b&&/p&&p&这段话以及他创立的 &a href=&https://link.zhihu.com/?target=https%3A//pragprog.com/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&The Pragmatic Bookshelf&/a& 一直以来都积极地影响着我,因此这篇指南我也尽量贯彻了这个思想,引导并希望你们成为一名真正的 Pragmatic Programmer 。&/p&&br&&p&&b&后记&/b&&/p&&p&如果你能设法完成以上的所有任务,恭喜你,你已经真正实现了编程入门。这意味着你在之后更深入的学习中,不会畏惧那些学习新语言的任务,不会畏惧那些「复杂」的 API,更不会畏惧学习具体的技术,甚至感觉很容易。当然,为了掌握这些东西你依旧需要大量的练习,腰还是会疼,走路还是会费劲,一口气也上不了5楼。但我能保证你会在思想上有巨大的转变,获得极大的自信,看老师同学和 &a href=&https://link.zhihu.com/?target=http%3A//www.csdn.net/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&CSDN&/a& 的眼光会变得非常微妙,虽然只是完成了编程入门,但已经成为了程序员精神世界的高富帅。不,我说错了,即使是高富帅也不会有强力精神力,他也会怀疑自己,觉得自己没钱就什么都不是了。但总之,你遵循指南好好看书,那就会体验「会当凌绝顶」的感觉。&/p&&figure&&img data-rawheight=&337& src=&https://pic3.zhimg.com/5d6f72ac17ad317be649f8_b.jpg& data-rawwidth=&600& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic3.zhimg.com/5d6f72ac17ad317be649f8_r.jpg&&&/figure&&br&&p&欢迎实践过的同学现身说法。几位读者的实例:&/p&&ol&&li&o &a href=&https://link.zhihu.com/?target=http%3A//zhi.hu/hhiA& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&非计算机专业,计算机如何入门? - 浪无痕&/a&&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//my.oschina.net/voler/blog/396424& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&我只想成为一名合格的程序员&/a&&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//blog.csdn.net/a910626/article/details/& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&知乎《编程入门指南v1.3》思维导图&/a&&/li&&/ol&&br&&p&附(zhèng)录(wén)&/p&&p&&b&@&/b&&b&萧井陌&/b&&b&的编程类回答汇总&/b&&/p&&p&方向:&/p&&ol&&li&o &a href=&http://www.zhihu.com/question//answer& class=&internal&&怎么成为一个优秀的程序员,而不是一个优秀的码农?&/a&&/li&&/ol&&p&优秀的程序员会告诉你打根基的重要性,会劝你在厚积薄发前要隐忍。&/p&&p&优秀的程序员应该善用包装...&/p&&ol&&li&o &a href=&http://www.zhihu.com/question//answer/& class=&internal&&计算机本科应届毕业生要有怎样的能力才算比较好的?&/a&&/li&&/ol&&p&对本科生的要求其实很简单,认真学过专业课就行。&/p&&p&所谓认真学过专业课的程度是:...&/p&&ol&&li&o &a href=&http://www.zhihu.com/& class=&internal&&想进入微软,本科该如何努力?&/a&&/li&&/ol&&p&你可以找一个美国大学学他们的计算机课程,课程设置和教材都能查到,书都能买到。那几所学校的本科课程安排差异比较大,全学也不是不可以。做好这几点: ...&/p&&ol&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&大四学生,想通过两到三年的积累去Google工作,请问应如何准备?&/a&&/li&&/ol&&p&我觉得你得先找到一个技术方向,树立一个以此技术方向为首要目标的原则,做好这个方面的事情,对这个方面的所有技术细节都务求深入了解。然后呢...&/p&&ol&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&文科生如何转行当程序员?考研是最好选择吗?&/a&&/li&&/ol&&p&0. 找一本《计算机导论》类的书籍看看,了解一下行业大致情况,随便翻翻就好&/p&&p&1. 去维基百科翻一下历年图灵奖得奖情况,粗略了解一下行业历史...&/p&&ol&&li&o &a href=&http://www.zhihu.com/question//a& class=&internal&&有哪些适合程序员读的人文书籍?&/a&&/li&&/ol&&p&程序员也是人, 程序员的整体素质在其他行业也是通用的.&/p&&p&so.... 这就产生了很多其他行业的书...&/p&&p&方法:&/p&&ol&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&如何学习不感兴趣但自己也认为很重要的东西?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&兴趣广泛和保持专注是否矛盾?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&在学习编程的过程中如何权衡寻求方法工具和埋头苦干?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&新手关于如何看编程经典书的一些疑惑?&/a&&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//zhi.hu/aaOB& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&计算机方面的经典书籍,不做或少做习题会对学习效果造成多大影响呢?&/a&&/li&&li&o 有哪些老鸟程序员知道而新手不知道的小技巧?&/li&&li&o &a href=&https://www.zhihu.com/question//answer/& class=&internal&&改bug是程序员的任务里比较低贱的工作内容吗?&/a&&/li&&li&o &a href=&https://www.zhihu.com/question//answer/& class=&internal&&如何辨别一个程序员水平的高低?&/a&&/li&&/ol&&br&&p&细分:&/p&&ul&&ul&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&如何去学习程序员的三大浪漫,编译原理,图形学,操作系统?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&数据库、操作系统、编译原理应该以怎样的的顺序学习?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&如何在六个月的时间内完成一个简单的操作系统,应该要学些什么?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&计算机系大四学生如何在六个月的时间内完成一个编译器?要学些什么?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&算法到底应该怎么学?&/a&&/li&&li&o &a href=&http://zhihu.com/question& class=&internal&&WEB 开发还有前途吗?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&嵌入式开发还有前途吗?&/a&&/li&&li&o &a href=&http://zhihu.com/question//answer/& class=&internal&&已参加工作的程序员如何系统提升英语阅读能力?&/a&&/li&&/ul&&/ul&&br&&p&&b&@&/b&&b&萧井陌的知乎回答集锦&/b&(按赞同数排列) ( 更新)&/p&&ol&&li&o &a href=&%22&&PDF 格式&/a&&/li&&li&o &a href=&https://link.zhihu.com/?target=http%3A//pan.baidu.com/s/1qWqNzPi& class=& wrap external& target=&_blank& rel=&nofollow noreferrer&&ePub 格式&/a&&/li&&/ol&&figure&&img data-rawheight=&445& src=&https://pic1.zhimg.com/3d9d7ba432eabc38cd140_b.jpg& data-rawwidth=&600& class=&origin_image zh-lightbox-thumb& width=&600& data-original=&https://pic1.zhimg.com/3d9d7ba432eabc38cd140_r.jpg&&&/figure&&br&&p&---&/p&&br&&p&...&/p&
作者:, 自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0:一个让大家学习、成长、相聚并获得乐趣的技术社区答疑邮箱: xiao. (编程入门指南学习群:--- 日 v1.5 更新2…
&p&中国互联网近几年风云变幻,有公司上市,也有公司离开,而互联网大公司在更多产业的战略布局在很大程度上影响了草根创业的兴亡,让创业者们不禁嗟叹。与此同时,却也不断有人从大公司走出来自己创业,或是在大公司的庞大产业链中找到了属于自己的更加细分的领域,或是受大公司的创业氛围感染而决定走出去实现自己的抱负。而这些创业者中有的已经将公司做到风生水起,估值过亿;有的仍处于起步阶段,不为人所知;有的或被前公司收购,或与前公司合作紧密;有的则与前公司竞争激烈、不相往来。&/p&&br&IT桔子在2014年的创业者盘点中,基于数据库,整理盘点了14个创业派系,分别是阿里巴巴、腾讯、微软、百度、盛大、新浪、网易、华为、搜狐、IBM、谷歌、金山、人人、雅虎,盘点还会为大家介绍这些大公司培养的创业者和创业公司,创业公司的投融资现状以及领域分布。(可能会有所遗漏和不精确的地方,欢迎大家补充和完善。)&br&&p&一、大公司创业概述&/p&&p&1、公司数量上:BAT盛产创业者,其他公司“产能”面临瓶颈&/p&&figure&&img src=&https://pic3.zhimg.com/50/bf8cfbbce3212eabfc94d73a_b.jpg& data-rawheight=&727& data-rawwidth=&1065& class=&origin_image zh-lightbox-thumb& width=&1065& data-original=&https://pic3.zhimg.com/50/bf8cfbbce3212eabfc94d73a_r.jpg&&&/figure&&figure&&img src=&https://pic1.zhimg.com/50/7e860ea46f41d2b7763549dcc307abaf_b.jpg& data-rawheight=&733& data-rawwidth=&1064& class=&origin_image zh-lightbox-thumb& width=&1064& data-original=&https://pic1.zhimg.com/50/7e860ea46f41d2b7763549dcc307abaf_r.jpg&&&/figure&&figure&&img src=&https://pic2.zhimg.com/50/ce54c5c43bcc38_b.jpg& data-rawheight=&733& data-rawwidth=&1064& class=&origin_image zh-lightbox-thumb& width=&1064& data-original=&https://pic2.zhimg.com/50/ce54c5c43bcc38_r.jpg&&&/figure&&p&以上三张图是基于IT桔子数据库统计出的各派系创业者人数、各派系创业公司数量及2014年新成立公司占比。&/p&&p&从数据上可以看出,BAT在创业人数和创业公司数上都位居前列,其中阿里巴巴和腾讯几乎不相上下,总数相对少的百度系则在2014年出现了很多新公司。BAT作为中国互联网巨头,无疑也成为了创业者的摇篮。而第一梯队中的微软虽然总数较多,但在2014年创造力不强,而且在后面的数据中可以看到,微软系创业公司死亡率相对较高。&/p&&p&在数量上位于第二梯队的盛大、华为、搜狐、新浪、网易,都是最早一批的中国互联网大公司,曾经的互联网创业黄埔军校,如今在创业者产能上已被BAT赶超。最后一个梯队的人人系是创业者盘点中的一匹黑马,IT桔子库共收录了51名曾在人人工作的创业者。而360作为互联网大公司之一,因为IT桔子库只收录了36名创业者而没能上榜。&/p&&p&2、投资数量上:圈子很重要,各派系投资数据力压平均值&/p&&figure&&img src=&https://pic3.zhimg.com/50/3a4c6e0f06d429e8e20236_b.jpg& data-rawheight=&733& data-rawwidth=&1064& class=&origin_image zh-lightbox-thumb& width=&1064& data-original=&https://pic3.zhimg.com/50/3a4c6e0f06d429e8e20236_r.jpg&&&/figure&&p&从整体上看,各派系创业公司中获得投资的公司占比都在40%以上,最高的人人系达到了65.6%,远高于IT桔子数据库中全部公司的获投资数占比28.82%这一数字。只看一个派系的数据可能会存在偶然,但14个派系的投资数据综合在一起,则可看出其中的必然,在互联网江湖混,也是要有圈子的。&/p&&p&从具体公司来看,各派系的投资数据相差并不悬殊,14个派系中有12个达到了50%以上,可见大公司出来的创业者获得投资人青睐的比重非常高的。&/p&&p&3、“死亡率”数据:国外大公司似乎不那么接地气&/p&&figure&&img src=&https://pic1.zhimg.com/50/abb77ae0803efd4d93cd_b.jpg& data-rawheight=&728& data-rawwidth=&1064& class=&origin_image zh-lightbox-thumb& width=&1064& data-original=&https://pic1.zhimg.com/50/abb77ae0803efd4d93cd_r.jpg&&&/figure&&p&从这组数据的总体上看,国外大公司派系死亡率排在最前列,这或许跟国外公司员工长期接触国外企业文化及业务,创业后不那么接地气有所关系。&/p&&p&相对于IT桔子数据库中全部公司的死亡率6.59%这一数据,大公司派系的死亡率普遍偏高,只有百度和华为死亡率明显低于平均值。&/p&&p&二、14家大公司具体创业派系盘点&br&&/p&&p&阿里巴巴系&/p&&figure&&img src=&https://pic4.zhimg.com/50/a0caecfcdaf_b.jpg& data-rawheight=&734& data-rawwidth=&1030& class=&origin_image zh-lightbox-thumb& width=&1030& data-original=&https://pic4.zhimg.com/50/a0caecfcdaf_r.jpg&&&/figure&&figure&&img src=&https://pic2.zhimg.com/50/4cf90aa77b359f9658928_b.jpg& data-rawheight=&514& data-rawwidth=&751& class=&origin_image zh-lightbox-thumb& width=&751& data-original=&https://pic2.zhimg.com/50/4cf90aa77b359f9658928_r.jpg&&&/figure&&p&截止到日,IT桔子数据库共收录创始人或创始团队成员来自阿里巴巴的创业公司158家, 其中2014年创办的公司36家。&br&&/p&&p&从领域分布上看,电子商务占了很大比例,而其他领域也分布广泛,涵盖旅游户外、金融服务、企业服务、SNS社交、工具软件、电子硬件等领域,2014年的途牛上市,也让大家看到阿里系的创业者并不是只在电子商务领域成绩不俗。从投资轮次分布上看,近一半获得投资的创业公司现在处于A轮阶段,达到B轮的也有11%,可以看出阿里系创业公司的融资进程在各大派系中是很快的。2014年阿里巴巴系公司中蜜淘网、堆糖网、星空琴行等完成了B轮融资。&/p&&br&&p&&strong&2014年新出现的阿里巴巴系创业公司代表:&/strong&&/p&&p&(本文中各派系创业公司代表均按姓名拼音首字母排序)&/p&&ol&&li&&p&阿稳(稳国柱),Deals99创始人、CEO。此前曾在淘宝工作一年。&/p&&/li&&li&&p&邓加旺,心安众旺创始人。此前曾在阿里巴巴工作。&/p&&/li&&li&&p&狄玮杰,黑白校园创始人、CEO,阿里巴巴资深员工,曾在阿里云和支付宝负责多个业务。&/p&&/li&&li&&p&龚义涛,万江龙网络创始人、CEO,此前曾任阿里巴巴资深技术总监。万江龙网络联合创始人谭德伟曾任阿里巴巴资深架构师。&/p&&/li&&li&&p&胡宸宇,彩贝壳创始人、CEO,前阿里巴巴产品运营负责人。&/p&&/li&&li&&p&黄剑炜,仁仁分期创始人、CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&黄若,天天百分百创始人,历任淘宝网副总裁、天猫商城首任总经理。&/p&&/li&&li&&p&蒋春成,四川环润科技联合创始人、技术负责人,负责整体技术管理。此前曾在淘宝无线事业部工作。&/p&&/li&&li&&p&空叫兽,内淘网创始人、CEO,此前曾在淘宝工作。&/p&&/li&&li&&p&赖杰,杭州树熊网络有限公司联合创始人及CEO,此前曾在淘宝工作。&/p&&/li&&li&&p&蓝耀栋,呆鹅早餐创始人和CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&李杰,大拇哥财富联合创始人、CTO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&李厦戎,Genedock创始人、CEO,北京聚道科技有限公司CEO,曾任阿里巴巴数据科学家。Genedock联合创始人王乐珩曾任阿里云数据产品经理。&/p&&/li&&li&&p&卢亮,北京第三石科技创始人和CEO,2007年加入淘宝,参与创办淘宝无线。&/p&&/li&&li&&p&马辉畅,亿蓓网创始人、CEO,曾在阿里巴巴工作。&/p&&/li&&li&&p&齐宪威,御途网创始人、CEO,大卓电商创始人、董事长,原阿里巴巴战略合作部兼阿里巴巴华南大区总经理。&/p&&/li&&li&&p&钱志龙,爱学贷联合创始人和CEO,此前在阿里巴巴工作,前支付宝用户事业部负责人。&/p&&/li&&li&&p&唐万里,北京噢耶在线科技有限公司创始人、CEO,曾经是阿里巴巴中供团队最年轻的区域经理,带领100多人的销售团队。&/p&&/li&&li&&p&王朝辉,Biu创始人,应用厨房工作室联合创始人,此前曾在淘宝担任产品经理。&/p&&/li&&li&&p&王梅,梅子淘源创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&王扬,街蜜创始人和CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&吴洋洋,二次元应用JUJU联合创始人,负责设计及用户体验。此前曾在阿里巴巴负责UX,并创办了 NinjiaDesign 工作室。&/p&&/li&&li&&p&吴岳衡,往来创始人、CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&吴志敏,杭州腾贵科技创始人、CEO,求攻略网站、世界游网站创始人,曾在支付宝工作。&/p&&/li&&li&&p&谢文斌,海淘网(&a href=&//link.zhihu.com/?target=http%3A//Haitao.cn& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&Haitao.cn&/span&&span class=&invisible&&&/span&&/a&)创始人、CEO,此前曾在阿里旗下天猫无线部门工作。&/p&&/li&&li&&p&阳端(Frank Yang),微美贷(&a href=&//link.zhihu.com/?target=http%3A//VMdai.com& class=& external& target=&_blank& rel=&nofollow noreferrer&&&span class=&invisible&&http://&/span&&span class=&visible&&VMdai.com&/span&&span class=&invisible&&&/span&&/a&)创始合伙人 ,年,就职于阿里巴巴集团担任市场营销策划。&/p&&/li&&li&&p&杨二宝,北京噢耶在线科技有限公司联合创始人、CTO,曾在阿里巴巴工作6年,任职技术总监,对于搜索、推荐、大数据、高性能、分布式等技术有较深研究。&/p&&/li&&li&&p&叶向宇,牛客网创始人、CEO,曾在支付宝工作,重庆市阿里巴巴小额贷款有限公司技术专家。&/p&&/li&&li&&p&余健,友友租车联合创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&郁佳杰,米折网联合创始人及CTO,原阿里巴巴技术经理,曾主导阿里巴巴新版旺铺的架构设计和技术实施等工作。&/p&&/li&&li&&p&喻策,杭州偶尔科技创始人、CEO,快快开店创始人,此前曾担任淘宝网商户平台事业部总经理。&/p&&/li&&li&&p&袁行远,彩云天气创始人、CEO,此前曾在淘宝担任广告算法工程师。&/p&&/li&&li&&p&袁俊,GNotes(随笔记)创始人,曾在阿里巴巴工作。&/p&&/li&&li&&p&张彪,房管通联合创始人及CTO,蔓芳微印/暄睿网络 CTO。年在淘宝网担任前端工程师。&/p&&/li&&li&&p&张曦,小橙科技联合创始人、CEO,曾在阿里巴巴支付宝O2O事业部工作。&/p&&/li&&li&&p&周楷程,琴语琴愿网创始人、CEO,此前曾在阿里巴巴工作。&/p&&/li&&/ol&&p&&strong&2014年以前的阿里巴巴系创业公司代表&/strong&&/p&&ol&&li&&p&蔡亮,湖南汇景投资运营总监,自驾友网创始人,曾在淘宝工作。&/p&&/li&&li&&p&残剑,杭州智游乐网络有限公司创始人,此前曾在淘宝工作。&/p&&/li&&li&&p&曾义,成都梦想兄弟网络联合创始人和CTO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&陈栋,杭州沃趣科技联合创始人,曾担任阿里巴巴DBA团队负责人。&/p&&/li&&li&&p&陈立国,杭州蔓藤网络联合创始人,此前曾担任融众网CTO,还曾在阿里巴巴工作。&/p&&/li&&li&&p&陈琪,蘑菇街/卷豆网 创始人,曾担任淘宝产品经理。&/p&&/li&&li&&p&陈伟,深圳市动态电子商务有限公司联合创始人及CEO,2000年加入阿里巴巴集团,曾任职于阿里巴巴、淘宝网。&/p&&/li&&li&&p&陈曦,LavaRadio创始人及CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&成新伟,童说童画运营负责人,曾在支付宝从事支付宝客户端运营工作。&/p&&/li&&li&&p&程维,嘀嘀打车创始人,曾担任淘宝B2C事业部副总经理。&/p&&/li&&li&&p&戴仁焕,聚宝吧创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&邓在超,百步淘创始人,产品经理,此前曾在淘宝工作。百步淘联合创始人黄松立此前曾任淘宝程序员,手机聚划算开发负责人。&/p&&/li&&li&&p&丁琛,乐豚Yippee Arts联合创始人,曾在支付宝做前端开发。&/p&&/li&&li&&p&丁绍顺 ,杭州米帮科技有限公司、美食行、景点特价门票联合创始人,此前曾在阿里巴巴口碑网工作。&/p&&/li&&li&&p&丁宇,曲径的联合创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&樊华,米茶屋联合创始人,曾在阿里巴巴、华数淘宝担任产品经理。&/p&&/li&&li&&p&方园,成都浩泊云动科技有限公司创始人及CEO,此前曾在淘宝工作。&/p&&/li&&li&&p&冯大辉,丁香园CTO,曾担任支付宝首席DBA、数据架构师等。&/p&&/li&&li&&p&冯健敏,漫悠悠联合创始人、总经理,曾是阿里巴巴首批空降职业经理人。&/p&&/li&&li&&p&冯月,股票雷达创始人及CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&傅军,精洗门创始人及CEO,杭州哈帝商贸创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&谷祖林,Seed Mail的创始人,前阿里云OS云应用平台架构师、阿里云邮箱前端架构师。&/p&&/li&&li&&p&顾大宇,bong健康手环创始人及CEO,此前曾在阿里巴巴工作,原阿里巴巴国际站用户体验团队、“来往”、阿里云OS垂直业务线负责人。&/p&&/li&&li&&p&顾叶挺,爱车无忧联合创始人及COO,此前曾在阿里巴巴、淘宝天下传媒工作。&/p&&/li&&li&&p&郝亚伟,微格互动创始人,曾在阿里巴巴云计算工作。&/p&&/li&&li&&p&何俊,铜板街创始人,此前曾在支付宝工作。&/p&&/li&&li&&p&侯松,镜化论创始人,品尚视诚(北京)科技有限公司创始人,此前曾在淘宝工作。&/p&&/li&&li&&p&华璐坷,杭州树熊网络联合创始人及CMO,此前曾在淘宝工作。&/p&&/li&&li&&p&黄亮新,完美衣橱创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&黄荣明,高考派创始人、CEO,曾就职于于阿里巴巴,有丰富的大数据从业经验。&/p&&/li&&li&&p&黄绍麟,范游网创始人,北京拾个梦想信息科技有限公司创始人及CEO,此前曾担任支付宝运营总监。&/p&&/li&&li&&p&黄松立,百步淘联合创始人,此前曾任淘宝程序员,手机聚划算开发负责人。&/p&&/li&&li&&p&黄小亮,内推网联合创始人,负责运营,此前曾在阿里巴巴担任产品经理。&/p&&/li&&li&&p&姬鲲,Yeapoo一铺科技联合创始人,曾任阿里巴巴集团市场部业务拓展总监。&/p&&/li&&li&&p&蒋海炳,500mi五百米/马伯乐招聘网 创始人,曾在支付宝工作。&/p&&/li&&li&&p&蒋韬,杭州同盾科技创始人及CEO,此前曾担任阿里集团安全部技术总监,长期致力于建立高性能高可扩展性的互联网风控及反欺诈平台。&/p&&/li&&li&&p&金忠堃,杭州米帮科技有限公司联合创始人及CEO,美食行、景点特价门票创始人,此前曾在淘宝担任产品经理。米帮科技的其他核心成员丁绍顺、刘志涛也来自阿里巴巴。&/p&&/li&&li&&p&空叫兽,内淘网创始人、CEO,此前曾在淘宝网工作。&/p&&/li&&li&&p&李浩,淘会展创始人,曾在阿里巴巴B2B任职6年,是阿里巴巴早期员工之一。&/p&&/li&&li&&p&李建淼,酒伯乐Mr.wine联合创始人、CEO,此前曾任阿里高级产品经理。酒伯乐另一位联合创始人、CTO徐兆朋也来自阿里巴巴。&/p&&/li&&li&&p&李杰,干洗客联合创始人,曾担任天猫首席产品架构师。&/p&&/li&&li&&p&李立恒,车蚂蚁联合创始人及CEO,百通电商及2号车库创始人,原阿里巴巴高管,曾担任阿里巴巴B2B国际站“中国供应商”福建大区销售总经理及阿里军校校长等职务。&/p&&/li&&li&&p&李琪,大嘴巴创始人,上海通吃网络CEO,阿里巴巴前高管,2000年加入阿里巴巴,负责阿里巴巴B2B的销售业务,2005年担任阿里巴巴集团COO。&/p&&/li&&li&&p&李三科,云脸应用锁创始人,曾担任阿里巴巴B2B部门客户经理。&/p&&/li&&li&&p&李洋:Feekr 市场运营负责人,有阿里巴巴等大客户服务经验。&/p&&/li&&li&&p&李治国,挖财CEO,口碑网创始人,阿米巴资本管理合伙人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&林燕,车蚂蚁联合创始人,10年阿里人,是阿里巴巴早期创业首批员工,曾经负责并担任阿里巴巴中国事业部大西南地区渠道销售总经理及天猫运动和汽车类目资深运营经理等职务,同时也是天猫商城早期创始人之一。&/p&&/li&&li&&p&蔺云,微时光运营总监,曾任职阿里运营部门。&/p&&/li&&li&&p&刘冬,Payssion创始人,此前曾在支付宝工作。&/p&&/li&&li&&p&刘俊,淘粉吧创始人及CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&刘爽,创品极地联合创始人、首席运营官,曾担任淘宝广告部负责人。&/p&&/li&&li&&p&刘阳,相亲管家联合创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&刘颖,乐豚联合创始人,曾在阿里巴巴任无线事业部总监。&/p&&/li&&li&&p&刘志涛 ,杭州米帮科技有限公司、美食行、景点特价门票联合创始人,此前曾在阿里巴巴担任UED-前端开发。&/p&&/li&&li&&p&芦宇峰,杭州乌龙岛网络CEO,旗下产品有旅途求助,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&罗鸿鹄,海南陆客旅游项目开发有限公司常务副总裁,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&罗希,杭州团聚科技、新开始网创始人,前阿里巴巴聚划算团队核心成员。&/p&&/li&&li&&p&吕广渝,孩子学啥创始人、CEO,前阿里巴巴副总裁。&/p&&/li&&li&&p&毛达晟,别致APP创始人,此前曾在淘宝网UED部门工作。&/p&&/li&&li&&p&孟荆,成都市梦想兄弟网络技术有限公司创始人、CEO,此前创办的成都网构公司被阿里巴巴收购,参与组建阿里软件并担任副总裁。成都梦想兄弟网络联合创始人、CTO曾义也来自阿里巴巴。&/p&&/li&&li&&p&苗湾儿,游多多旅行网CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&那蒙,草莓派创始人及CEO,此前曾在淘宝工作。&/p&&/li&&li&&p&欧德张,布道教育创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&潘国栋,吉屋网创始人,曾任支付宝用户事业部产品总监。&/p&&/li&&li&&p&彭毅,贝聊创始人和CEO,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&浦宇平,少年行教育创始人、CEO,曾在阿里巴巴担任产品经理。&/p&&/li&&li&&p&祁宁,SegmentFault联合创始人、技术负责人,年在阿里巴巴工作。&/p&&/li&&li&&p&乔磊,周五旅游网联合创始人,此前曾在阿里巴巴工作。&/p&&/li&&li&&p&秦俐,淘课网创始人,曾是阿里

我要回帖

更多关于 惟愿时光清浅,温柔以待 的文章

 

随机推荐