Python 项目推介:扇贝网,一个从 2 到 30 万的故事

标签: python 项目 扇贝 | 发表时间:2011-06-11 16:42 | 作者:(author unknown) 杀手
出处:http://simple-is-better.com/

达芬奇的密码

我想说一说“扇贝网 http://shanbay.com”,一家致力于帮助英语学习者解决词汇问题的网站,我是创始人之一。

在创办扇贝网之前,我曾经花了几个月时间看完一本原版的达芬奇密码,期间最为纠结的无非是随处可见的英语生词,一开始我还能不厌其烦的查字典做记录,但是发现这些生词再次出现,我依然不记得是什么意思;屡经挫折后,我渴望能有一个网站让我在看书或者文章过程中把遇到的单词丢进去,而后我只要登录这一网站,它就能按照一定规律提醒我复习。想必这样一来我看完一本书后,上面的词也该会了七七八八。

而我的搭档呢,在他学习英语时,一直很想找个途径可以把属于某个话题的单词都组织在一起,譬如学finance这个词时,就可以顺藤摸瓜地接触到金融或者经济相关的其他词汇;这样词汇学习就不是面对几千上万个孤立的单词,而是一组一组有意义的专题。更有意思的是,还可以由多人来共同编撰这样的专题,添加相关的文章链接和评论,不断丰富专题内容。

于是我们一拍即合,决定融合彼此想法,把这样一个网站做出来。

但是摆在面前的是一个巨大的问题 — 我们不会做网站!

十年编程,从 0 到 1

我自己有十多年编程经验,但是限于桌面(Delphi和VC)和服务器端(Java),HTML都不怎么熟;而我搭档则是从心理学专业毕业后一直从事数据分析工作,除了用于统计的R语言外,没有写过代码。但是无论怎样,我们就这样上路了,当时的想法是边学边做,哪怕做出来的东西只有我们自己用也不错,毕竟现有的英语学习网站都无法满足我们的需求。

我们的开发语言选用了Python,实际上我们差一点就选了Ruby,但是我写了两周的Ruby程序后就实在无法忍受 “===” 和 “=>;改了Python后,我花了一个多小时写了100来行代码完成了一个最简陋的中文分词程序,心想就是它了;为了省钱,我们选了Google App Engine作为平台,开发框架也自然就用了Django。

在此同时,我的搭档也从零开始学习HTML,CSS,JavaScript跟JQuery框架,大概在两个多月后我们拼凑成了一个能用的网站,放在GAE上,但很快由于某些大家都懂但又不是很明白的原因,GAE无法访问了,我无奈改写了数据访问层,改用MySQL,并买了一台国外的虚拟主机,把网站搬迁过去。

我们自娱自乐了几天,觉得还凑合,就想着去找用户了。我们在各类和英语学习相关的论坛上发贴,留言,还打印了传单去英语角发放。看到每天几个十几个新注册用户时很兴奋,原来还真有其他人也有一样的需要阿。但是过了几个月注册人数就达到了3万,网站也变得非常不稳定;于是我们再次迁移,换了VPS,和虚拟主机相比系统资源更有保障,同时我们也改用了Nginx作为HTTP服务器,uwsgi作为Web服务器;几个月后,我们的注册人数突破了10万,各种问题又接踵而至,好在届时我们对Nginx已经有了更多的了解,于是部署了更多的VPS来提供服务。

扇贝网

三度濒临瘫痪,很 2

虽然上面只有短短的几句话,但是个中过程其实非常折腾,网站曾经三度濒临瘫痪而我们束手无策,无论重启系统还是加机器都不能立刻解决,只能被迫暂停新用户的注册。与此同时我们的网站程序也愈加复杂,开始引入各种粒度的静态化,Memcache, SSI,以及将一些访问放入队列消息系统进行异步处理。

相应的,我们在网站功能设计上也走过弯路,我们曾经有一次非常不成功的改版,那一段时间我们需要鼓起非常大的勇气才能打开网站论坛,因为上面尽是用户的咆哮;我们也开发过一个初衷很2.0,而结果很2的学习记录分享功能,2到我们突然将之从首页取消后,连一个抱怨的帖子都没有看到,仿佛它从未存在。

从 2 到 30 万

不过几经风雨,扇贝网依然发展到了现在,我们的注册用户也超过了30万,更令人欣慰的是,很多用户之前经历过单词忘了再背,背了又忘的挫折,自从开始使用扇贝网后,能坚持几十上百天每天学习,这让我们更加有信心自己在做一个有价值的产品。

今年年初我们接受了一笔投资,团队现在也由最初的两人变成了三人,有了自己的办公室和公司,但是这依然只是一个开始,我们还有很多很多东西没有实现,也面临很多难题尚待解决,譬如:

产品方面——
如何进一步提升学习效果;
如何进一步促成用户间的互相鼓励,督促和学习;
如何分析用户的学习行为以及结果,智能和动态的为其挑选合适的学习内容和方式;

系统方面——
如何优化应用程序,以及软硬件的配置,使其能够支撑更多人的同时在线学习;
如何优化数据库或者采用其他存储方案,来支持更海量的数据(我们的某些数据库表已经有了几千万的记录数)

如果你愿意成为故事的一部分

差不多就说到这里,只是我们自己也只知道故事的开头,不知道故事的结尾。

如果你愿意成为故事的一部分,对我们的产品想要解决的问题有兴趣,欢迎看看我们的招聘启事,我们正在找Python工程师和前端工程师 http://blog.shanbay.com/recruit


在微博上关注: 新浪, 腾讯   投稿

最新招聘

更多>>

相关 [python 项目 扇贝] 推荐:

Python 项目推介:扇贝网,一个从 2 到 30 万的故事

- 杀手 - python.cn(jobs, news)
我想说一说“扇贝网 http://shanbay.com”,一家致力于帮助英语学习者解决词汇问题的网站,我是创始人之一. 在创办扇贝网之前,我曾经花了几个月时间看完一本原版的达芬奇密码,期间最为纠结的无非是随处可见的英语生词,一开始我还能不厌其烦的查字典做记录,但是发现这些生词再次出现,我依然不记得是什么意思;屡经挫折后,我渴望能有一个网站让我在看书或者文章过程中把遇到的单词丢进去,而后我只要登录这一网站,它就能按照一定规律提醒我复习.

2013流行Python项目汇总

- - ITeye资讯频道
Python作为程序员的宠儿,越来越得到人们的关注,使用Python进行应用程序开发的越来也多. 那么,在2013年有哪些流行的Python项目呢. python_koans:Python Koans 算 “Ruby Koans” 的一部分,作为交互式教程,可以学习. sure:Sure 是最适合自动化测试的 Python 工具,包含流利的断言、深度选择器等等特性.

值得学习的python项目

- - CSDN博客编程语言推荐文章
此网站整理的2014年值得一学的pytho项目,http://pycoders.com/2014/. 项目资源都在github上,python程序员进阶必备. Nice looking web dashboard written in Flask that can display data about your system and its processes as returned by psutil.

使用VitrualEnvWrapper隔离python项目的库依赖

- jeff - Jeff的妙想奇境
VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前者提供了一些便利的命令行上的封装. - 隔离项目之间的第三方包依赖,如A项目依赖django1.2.5,B项目依赖django1.3. - 为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻.

记项目 Python-MySQL 访问类的优化

- litefy - python.cn(jobs, news)
接手一些Python项目的后续开发与维护,发现这些项目都用同一个数据库访问类,而生成的结果行竟然是用list存的,一个简单的row['id']访问需要遍历整行去找,遂优化之. 一般访问数据行的字段都是使用字段名访问,显然应该使用dict. 但也有可能使用数字下标访问,例如对于select count(*)的结果集,可能就使用rs[0][0]访问了.

Python项目自动化部署最佳实践@搜狐

- - the5fire的技术博客
今天主要介绍下我们组刚刚开源出来的一个自动化部署的工具 essay ,功能在readme上已经介绍的很详细了,这篇文章只是介绍下外围的情况,产生的环境,一些决策的考虑. 事情还得从头开始说起,从那些自动化的fabric文件开始,也从我刚入职搜狐负责手机搜狐开发开始说起. 我参与开发的时候项目的部署已经是自动化了,不过并没有抽象出一个工具来.

2013年最好的Python开源项目汇总

- - ITeye资讯频道
2013年Python社区诞生了很多实用的开发工具,这些工具在一定程度上可以帮助你节省更多的时间. 本文为你汇总了这些工具,它们大部分都是开源的,你还可以通过源码来学习更多的Python开发知识. Radon是一个用于从源代码中计算出各种指标的Python工具,包括:. McCabe复杂性计算,也就是循环复杂度.

疑Google员工把8w行Python项目用4w行Java重写了

- - est's blog
发信人: daluobu (阿土仔), 信区: Python. 标 题: 终于把一个8万行的Python程序用Java重写了. 发信站: 水木社区 (Fri Dec 6 08:10:26 2013), 转信. 在噩梦般地维护了一年多一个8万多行的Python程序之后,终于争取到机会把这个破烂玩.

我们整理了20个Python项目,送给正在求职的你

- -
关注「实验楼」,每天分享一个项目教程   . “金三银四”、“金九银十”的说法. 如果你是一名正在求职或准备跳槽的程序员,不妨趁着这两个月时间好好准备一下. “金三银四”、“金九银十”的说法. 尤其是3、4月刚过完年后,很多企业的员工会选择离职,大量空缺职位被放出,同时HR招聘压力增大,求职者往往可以借此机会,获得一个更好的报价.

GitHub 上最著名的20个 Python 机器学习项目,值得收藏!

- - IT瘾-geek
源 | kdnuggets|小象. 开源是技术创新和快速发展的核心. 这篇文章向你展示Python机器学习开源项目以及在分析过程中发现的非常有趣的见解和趋势. 我们分析了GitHub上的前20名Python机器学习项目,发现scikit-Learn,PyLearn2和NuPic是贡献最积极的项目. 让我们一起在Github上探索这些流行的项目.