卓越程序员炼成记

本贴最后更新于 2084 天前,其中的信息可能已经时移俗易

各位朋友大家好,我叫陶建辉,今天很高兴来到极客 Live,与大家分享一下我个人的经历。

学生时代初识编程

我是 68 年的人,今年年底就 50 岁了。我自己第一次写程序是 1984 年,高中一年级,那时候中国中学生里面很少有写程序的,我得益于一个故事:当时邓小平到一个中学考察,拍了一个中学生的脑袋说“计算机要从娃娃抓起”,这一句话让我们的中学一下有了六台蓝色 310 的计算机,但是,我们中学还没有老师知道怎么写程序,我自己拿着蓝色 310 说明书,之后又看了一本谭浩强的 Basic 语言编程,周末就开始写程序了。这样到了高二的时候我已经完全可以自己编程了。

不过,上大学的时候,我并不愿意报考计算机系,因为觉得计算机挺简单的。所以,86 年考进中国科大的时候,我没有进计算机系,而是进了力学系。整个大学期间,虽然我不是计算机系,但其实我们天天打交道的都是计算机。我自己学了 Pascal,还用 80、86 写汇编语言。

两件自豪的事

90 年,在中国科大,我进了 LB 模实验室,帮老师做了一个 LB 天平,是用 Pascal 语言写,不仅如此,我还设计了整个电路。而当年写的程序,那个实验室的研究生老师今天还在用,这个事情让我觉得特别自豪。而且,由于写这个软件,我还拿到了中国科大的一个奖学金,500 人民币,在当时是相当了不起的。拿了这 500 人民币奖学金我就到新疆、青海玩了一趟。

我们科大当时出国留学的风气很重,本来 91 年我是要到联想集团上班的,但看着我的几个长沙老乡,还有同宿舍的同学都要到美国留学,心里觉得有点羡慕,因为当时来看,到美国留学是我们那代人最佳的选择,所以我就觉得还是不能去工作,应该到美国去,因此我就留在了中国科大念书,并选择了天体物理,这样,91 年我进了中国科大天体物理系念书。

虽然一心想着去美国留学,但结果很遗憾,92 年的那个物理 GRE 专项被取消,使得我 93 年美国去不成。不过,就是 93 年的那个暑假,我又做了一件很自豪的事情。

我姐姐是做财务的,她想买套用友的财务软件,大概两千人民币。当时我就跟我姐讲,这个两千人民币给我算了,我帮你写一个财务软件。我姐说,那好啊,你能帮我写一个,我就把钱给你。于是,我翻了一本 FoxBASE 的书,写了个财务软件。令人高兴的是,我姐今天还在用我当年写的 FoxBASE 的程序,服务了无数的客户,而且我这个 FoxBASE 完全是为我姐财务定制的,因为我姐要给很多中小企业做帐,用友的财务软件没有办法做很多公司的帐,我那个小软件做几十家都没有问题。

职场生涯

94 年,我到美国印第安拉大学学天体物理。1997 年年初,我就到摩托罗拉上班了。摩托罗拉的老板面试我的时候,知道我是学天体物理的,特别喜欢,因此我就很顺利的进了摩托罗拉上班,走入通讯行业,真正开始了一个职业程序员的生涯。

在学校的时候,我一直是系里牛逼洪洪的学生,大家都公认我的程序写的好,觉得这个学生太牛逼了,太聪明了。

但是我到摩托罗拉上班的时候才发现,我离专业的程序员还有相当的距离。当时我的组,有一个 50 几岁的老头,头发全白,负责写一个手机软件,我跟他写程序差距太大了,他写的每行程序都值得我学习。一直到现在,我还在用跟他学到的一些小技巧。比如,他特别会写那种内存小的程序,因为当时的手机的内存很小,才 128K,为节省内存,他写出的程序,消耗的内存就特别小。我当时就觉得,太值得我学习了。

刚开始,因为对通讯行业不太了解,我就到摩托罗拉大学,上了好多课,系统的、真的学习了很多软件工程的方法。

后来,我到了 3Com,遇到了人生很大的一个机会。大家都知道在大公司基本都是螺丝钉,你几乎不太可能开发一个完整的产品。我在 3Com 遇到的机会,让我成为了真正的高手。这个机会就是做测试工具。

当时手机上网需要一个设备叫 AWS,这个设备好多 Bug,我们到的实验室测试的时候,老是出问题,搞得我们老板特别没面子,最后得出的结论,就是我们测试不过关,测试不过关是因为我没有特别好的测试工具,于是专门成立了一个七八人的小组,由一位贝尔实验室出来的美国白人带领大家开发一套测试工具。

搞了好几个月,但是最后这个测试工具还是不能用。最后我的老板,有一天早上随便跟我聊天说,人人都说你好聪明,你是中国的最牛逼的大学毕业的,你能不能想想这个测试工具怎么做?我当时跟我老板讲,你给我两个月的时间,我一个人来给你写个测试工具,行不行?我老板说两个月没问题,于是我就开始琢磨,后来不到两个月的时间,我就把一个测试工具做出来,之后在实验室演示的时候,完全让大家惊呆了,我做的测试工具把大家想的到问题全部解决了。

这个事情以后,我在 3Com 公司的地位一下子不一样了,我的老板特别重视我,把我变成了所谓的架构师了,开始参与产品整体的讨论。我是留学生,当时留学生里面很少人参与产品整体设计,而且待遇各方面都很高了。

还有一个想要跟大家分享的,就是我总说的,努力是最重要的。

我是一个有 Bug 睡不着觉的人。在 3Com 的时候,我有天早上七点钟不到,就跑到实验室去 Debug,结果发现我的老板已经在机房里了,我一问我老板,他说他六点钟就到了实验室,还有好几个人,他们也相当努力。包括我身边好多朋友,有的比我年长几岁,当时都是特别努力,我意识到,所有优秀的人都很努力,这个我就不多讲了。

创业经历

98 年,我在美国工作不到一年的时间,就贷款买了房子,房子很大,三千平方英尺的房子,很不错。我回国后,把房子卖了,这个事情我还专门写了一篇文章《芝加哥的房子》纪念。

我在美国工作了将近十年的时间,工作挺轻松,收入也不错。后来,我是在摩托罗拉 CDMA 的 CTO 办公室上班。CTO 办公室基本上都是技术高手,但是工作真的没意思,每天都不知道怎么打发时间,每天我们就解决一些小的难题之类的,很轻松,我觉得这样活下去没意思,我跟我太太讲,这简直是坐牢。

我觉得一定要重新做点事情,07 年年底,我发现互联网的春天真的到来了,用户体验完全改观,我决定要做通讯,做及时通讯的工具。当时,我太太带着我儿子到波士顿去玩儿,我自己就一个人呆在家里写程序,整整 10 天的时间,我把产品的原形写完了,不仅把客户单写出来,还把服务器写出来了,产品能够实现从一台手机到另外一台手机免费发短信,我演示给太太看,说我一定得回中国创业。

就这样, 2008 年 3 月 1 号我回到北京,开始我的创业生涯,而且很顺利,马上挖到了志同道合的人,还拉到了几百万人民币的天使投资。因为当时大家觉得这个技术很牛,我能够免费发短信、彩信。大家可以到网络搜索一下,09 年人民日报有一篇文章叫做《免费短信彩信的时代已经到了》,采访的就是我。

当时公司的名字叫做和信,大家可以百度一下,翻很多页,还可以翻得到和信的很多信息,但创业相当不容易,我们做了两年,几乎一分钱都没有赚到过,我们十几个人,到 10 年的春节,一分钱都没了,春节后回到办公室,发现办公室被贴了封条,因为我们没有付房租。

当时觉得很气愤,怎么创业创成了这个样子,也开始想了很多办法,我的同学借钱给我,先把工资发了,把房租付了,又重新开干。正由于弹尽粮绝,人的潜能才能一下子爆发出来。我拉着我们的几个同事,拉来了一两百万人民币的合同,让我们度过了几个月的难关。而且很幸运,在谈融资的时候,台湾的联发科集团想收购和信,这样,2010 年,我的和信被收购了。虽然这次收购价格不高不低,不过,正因此,我家里完全实现了财务自由,这让我太太很开心,不用担心上班的问题,不用担心家里没钱,这是我第一次创业,那之后我继续做 CEO,做了两年,因为我自己是个特别不安分的人,我特别不愿意有人管,因此我决定我要重新干。

那个时候我已经对手机行业很熟悉,我要做一个创新的产品,因为创新对我来讲是至关重要,我特别不喜欢做 me too 的产品。

13 年的时候,我觉得智能硬件会起来,我怎么利用智能手机来做一些事情,我就列了很多款可以做的产品,当时我列了测血压,测血糖,测 PM2.5,测皮肤干湿度,好多,还包括测酒驾。我最后挑了一个孕妇的胎心仪来做,我觉得我可以把胎心仪这个产品完全革命化,我就把测胎心的探头直接接到了这个手机上来做,后来这就变成了我的第二家公司,叫快乐妈咪。

网上搜可以搜到很多快乐妈咪的信息,好多朋友觉得我快乐妈咪做得很好,其实也是问题一大堆。智能硬件相当不好卖,而且我们人很少,15 年年底的时候,我们帐上没有钱了,大概就几万人民币,我当时让几个人走,最后剩下了四个人,我就跟他们讲,我自己不领工资了,你们四个人就继续呆在办公室,卖卖我们的胎心仪,每个月也有十几万人民币,能够养活自己就行了。但是,我只回家了一个星期,我觉得特别气愤,怎么创业创到这个样子,又搞得我弹尽粮绝。几天之后我就回到办公室,说我要重新回来,不能这样。人在走投无路的时候,爆发的潜力真的是前所未有的,这样,在一个月之后我就把钱搞定,我的快乐妈咪又能继续做下去。

最后,15 年年底,我跟太平洋网络谈成,我彻底退出,于是我就完成了我的第二次创业,至少让我们的投资都没有亏损,有一定的回报。

等我退出快乐妈咪之后,真的是想休息,不想折腾了。但是我看到很多项目之后,发现一点意思都没有,而且我觉得,我是真的爱写程序,那怎么办?我看了很多物联网的项目,我觉得又找到了一个机会,在物联网的平台里面,有一个相当重要的东西,就是这个时序数据的处理,它的存储、查询、计算、分析相当之重要,而这块,我分析了整个业内的提供方,我觉得竞争力都不够,一不够,我就觉得这是我的机会。

我自己是个动手能力很强的人,虽然我已经创业两次,不算发大财,但财务上也没有问题,但我依旧觉得应该动手做。因为这里面牵扯到算法,牵扯到一些核心的设计,这个设计必须出自我自己的手。因此我就跟我太太讲,我要重新做一个产品,这个产品要比时序数据库排名第一的产品性能高 5 倍以上。如果高 5 倍以上,我就重新做一家公司,高不了 5 倍以上,就算了。

做了两个月研究,16 年 12 月 15 号, 我写下了第一行程序,开始把我的环境搭建好,整整两个月的时间,我写了一万八千多行代码,这个代码完全验证了我对存储结构、索引结构、索引的方法,OK,这个验证,测试出来,比 MySQL 性能高的多的多,我当时特别兴奋,我跟太太讲,我还要再折腾一次。

17 年 2 月份过完春节之后,拿到这个测试结果,我就开始找风险投资,找了一两个月,最后,薛蛮子说你怎么不找我?还有明势的黄明明,说,Jeff,到底做的怎么样?我跟他们讲完,他们就说 Jeff,我支持你,要多少钱?我说我要多少钱,股份多少,好,马上就谈成,因此我的第三次创业就开始了。

我们做的 TD 引擎,是个相当技术性的产品,是一个基础软件,而基础软件,质量性能极其之重要,这种软件对研发人员的要求相当之高,而我自己是个相当资深的程序员,而且我在美国受的教育和训练相当之好,是国内很多程序员做不到的,因此我必须走在第一线,就算我在把团队组建完了之后,我自己现在写的程序量也已经超过了五万行,就在参加直播之前的两个小时,我还在 Debug。现在我们的同事,有个负责技术的同事,每天都在给我安排活“陶总,这个 Bug 是你的活,你今天必须给我解决”。我很开心,因为我自己觉得很有乐趣,由于我的参与,我们这个产品的性能相当之好,无论是插入查询还是计算的速度,远远超过了我们的竞争对手,我说的这个竞争对手不是中国的竞争对手,而是美国的竞争对手,比如 Open TSDB。

我最后还想分享一点就是,我为什么做这个产品?做第三个产品时我已经接近 50 岁的年龄,尤其在快乐妈咪离开之后,我自己琢磨过,钱对人来讲,多一点,少一点真的意义不大,人生能够被人记住的是作品。我太太是个业余画家,有人关注我的朋友圈或者微博,可以看到我太太画的很多画,我觉得可能一百年之后,都有人在看我太太画的画。我作为一个程序员,我能留下什么东西?我希望能开发一个最好的产品,能让这个产品留下来,让我的儿子,我的孙子特别自豪。我愿意做一个基础性的产品,像我现在做的这个时序数据库,是一个相当基础性的产品,是刚性的产品,任何做物联网,做车联网的必须懂这块,我觉得一定有市场,而且它的生命周期相当长,绝对不是一年两年,我认为是十年二十年,如果我们这个 TD 引擎能够成为物联网时代的 Oracle,那就是我这个程序员一生最大的骄傲。

打破程序员 30 岁魔咒

作为一个过来人,我从 84 年写程序到现在应该有 34 年,中间断断续续确实一直在写,我写过的语言有 Basic,Pascal,C,C++,写过几行 Java,也写过几行 Python,但 GO 还没写过,脚本语言写过很多。好多人觉得程序员是吃青春饭,我不太赞成。我天天也在面试,在我手下工作过的研发人员至少也有一两百人。

作为程序员,最重要的,第一是要打好基础,这个基础相当重要。我面试的一些计算机系毕业的,你在问他一些操作系统的问题,他都不太懂,不是说怎么使用操作系统,而是操作系统里面的东西。举个例子,内存调度,CPU 的角度,有很多方法,你至少要掌握其中的一两种,内存分配的方法你要掌握,这个方法不是说你要去开发一个操作系统,你要写一个 CPU 的调度,而是这个 CPU 调度的方法可以用在别的上面,这个内存分配的方法可以用在别的地方。

比如我面试的时候,我经常喜欢考别人一道题目,英文叫做 Consumer producer 的问题,翻译成中文叫做生产者、消费者问题,到目前为止,我在国内面试这么多人,还没有一个人,当场能把 Consumer producer 问题完美的写下来,这就是个基本功的问题。如果你能把 Consumer  producer 问题写的很清楚,我觉得你写任何并发的程序都不会有问题,当然世界上已经没有一个真正的标准的生产者、消费者问题让你解决,但是你在实际的项目中一定会有 Consumer producer 类似的问题。

写程序语言,你不能就满足学会写 Python,满足写 Java,你一定要触类旁通,我们那时候,国内计算机系的老师不行,等我到了美国,我就觉得计算机系能学到太多了。当时计算机系开一门课叫做,Program language,就是编程语言,它不是具体讲任何一门编程语言,而是讲任何一个编程语言应有的,比如说一个变量的作用范围,作用域,讲了很多这些东西,你要抽象,把 Java 语言,C 语言,C++,这种语言抽象出来看,任何一个语言它必须具备了一些元素,比如它一定要有流控制,它一定要有变量,变量就有作用范围,一旦懂了这个东西的时候,你学任何一门新语言都极其之快。虽然我快 50 岁了,但是学任何一个新语言,我保证比你快,因为我看过的语言太多了,容易触类旁通。

你希望你的职业生涯长一点,你工资涨的更快一点,你的职位提得更高一点,就必须掌握工作方法。工作方法不是说你学会了学习的语言,这个学习的语言太简单了,但是工作方法就不一样,我在摩托罗拉和 3 Com 工作的那几年的时间,跟我在学校里相比,学的最多的是工作方法。比如说,我们做通讯行业,一定要画状态机,如果不把状态机画出来,你是没有办法讨论问题的,你要画消息流,这个东西你不掌握方法怎么能行?怎么写日志很重要,大家都知道我 Debug 靠日志,我们这种技术性的软件没有日志了,根本没有办法 Debug,但这个日志到底怎么写?这是要有一套方法的,你只要掌握了这套方法你就立于不败之地。这个方法各行各业不同,包括你使用的语言工具方法都不同,我还是比较老套的人,像我自己现在分析程序,我都是靠状态机,靠消息流,靠日志这些东西定位问题,也有别的方法,但是你一定要掌握。

还有要锻炼自己的抽象能力。我个人特别喜欢招学物理的,看直播的朋友,如果有学物理的,又搞程序的,我特别欢迎,因为学物理有一个特别的能力就是抽象能力。作为成程序员最最重要的也是要抽象能力,程序员绝对不能看到所有的场景都写一个程序出来。就像我们做快乐妈咪的时候,我们做了一个产品测胎心,也测胎动,后来加了血压,血糖,这些数据要同步,一个程序员给我写的是,血糖做了一个同步,血压做了一个同步,胎心做了一个同步,被我大骂一通,在我眼里胎心、胎动、血糖、血压一点区别没有,只是个数据类型,你这个抽象能力要有,否则你就把这个程序变复杂化了。

卓越程序员必备素质

我个人认为自己是个顶级的程序员,但不能说我是顶级的 CEO,也不是顶级的企业家,因为我还没有做成一个特别大的企业,从企业家的角度来看我不算成功的。但从程序员的角度来看我应该是一个相当顶级的程序员,顶级的程序员大概需要具备以下几项能力。

第一是基本技能,你基本技能当然毫无疑问要过关,你必须很会 Debug,你会把这个问题找出来,比如说各种工具你都用着很熟,这个你必须会。

第二个很重要的是要有产品思维,就是从用户的角度去想,要从产品经理的角度去想,产品为什么要做这个功能,做成什么样子,怎么让用户使用简单,如果有产品思维,这个程序员就上了一个台阶,而且有产品思维,你就可以创业了,如果你只是基本技能好,没有产品思维,我建议你千万别创业,你就老老实实做个程序员,做个比较牛逼的程序员算了。

第三很重要的是要有沟通能力,沟通能力主要表现在三个方面:一个是听,一个是讲,一个是写。听这个大家可能很容易理解,听,主要是听听用户的声音、产品经理的声音,你不能误解别人的意思,这也有技巧,你要锻炼,千万不能怪别人没讲清楚,因为你没有找到方法。第二个是要讲,你一定要会跟同事跟产品经理,跟客户介绍你的解决方案,如果你没有这个能力,你做不了领导,你不可能创业,你也不可能有更大提升的,讲很重要。第三个,很多人忽略的就是写。写,我认为比听和讲还重要,一个 PPT 要会写,一篇文档要写的好,无论是内容,还是格式。

第四,顶级的程序员一定是一个不断学习的人,如果你不爱学习,那千万别做程序员,因为程序员面对的东西天天在变,今天有这个语言,明天有那个语言,今天有这个框架,明天有那个框架,当然不是说你要天天变框架,天天变编程语言,但你一定要学习,比如说区块链现在这么火,你不了解区块链能行吗?我自己春节的时候花了一两周仔细看区块链所有的东西。你说这个人工智能这么火,你不看,不了解人工智能不了解那些算法,不了解那些术语能行吗?你不了解,你就被淘汰,你不了解,你的工资就涨不上去,你不了解,你就别想找到更好的工作。你必须拥抱这个变化的世界,这是没有办法的,因此不断学习是对每一个程序员的要求。

第五个很重要的是健身。我自己健身是从 11 年起,在那之前我毫不关心健身,后来因为我骨折的原因,我变胖了,什么高血压、高血糖、高血脂都来了,我觉得不行,我还要对太太负责,对儿子负责,我觉得非得健身。健身让我保持特别充足的精力,现在,我每周大概至少健身五次,跑步,或者是快走,每周日,奥林匹克森林公园快走 10.5 公里,或者在家附近的健身房,或者就在家里骑自行车,我一定做。今天,我保证回家也要健身。看直播的你们,有想参加奥森快走的,欢迎加入,一般都是周日下午。如果你有很好的精力,脑袋转的很快,你一定能把程序写好。

最后我借这个机会说一下,如果你们有人愿意挑战技术,又有精力又爱写程序,欢迎加入我们涛思数据,我们欢迎各种人才。但是你要特别爱写程序,像我一样也能写到 50 岁,而且喜欢做底层技术,我特别欢迎,我们需要人,谢谢大家。

  • 分享

    有什么新发现就分享给大家吧!

    248 引用 • 1795 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • visus

    对了,怎么写一个内存小的程序,我发现我写的俄罗斯游戏,和别人的写的俄罗斯程序流畅度真的不能比,我是也是用 handler 通信,他是用异步,一样的设计,就是不知道,他的数据同步这么快,大神,可以分享一下如何写一个小内存的程序嘛

  • visus

    我知道了,是 surfaceView 的使用

  • AaronLux
    作者

    我是才看到这个,而且这个 pipe 在后台的管理系统里竟然不能看到消息的同步。
    这个设计有点糟糕。
    至于你问的这个问题,我还在研究,学会用 google 啊

    1 回复
  • 88250

    你好,回帖没有同步到 Pipe 是因为你没有进行配置哦。请按照这里配置一下,这样以后社区这边的回帖就可以同步到博客端了。

  • image.png
    相当的好

推荐标签 标签

  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 635 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    30 引用 • 96 回帖
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    149 引用 • 257 回帖
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 694 关注
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    12 引用 • 54 回帖 • 49 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 147 关注
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 140 关注
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    36 引用 • 35 回帖
  • 倾城之链
    23 引用 • 66 回帖 • 138 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 1 关注
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    286 引用 • 248 回帖 • 44 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 76 关注
  • WiFiDog

    WiFiDog 是一套开源的无线热点认证管理工具,主要功能包括:位置相关的内容递送;用户认证和授权;集中式网络监控。

    1 引用 • 7 回帖 • 591 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    354 引用 • 1823 回帖 • 1 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    66 引用 • 114 回帖 • 223 关注
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 486 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    53 引用 • 40 回帖 • 2 关注
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    545 引用 • 672 回帖
  • GAE

    Google App Engine(GAE)是 Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台。2008 年 4 月 发布第一个测试版本。目前支持 Python、Java 和 Go 开发部署。全球已有数十万的开发者在其上开发了众多的应用。

    14 引用 • 42 回帖 • 780 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 138 关注
  • 域名

    域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。

    43 引用 • 208 回帖
  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 101 关注
  • 电影

    这是一个不能说的秘密。

    121 引用 • 604 回帖 • 1 关注
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    5 引用 • 7 回帖 • 1 关注