{非技术}请各位分享一下自己做side project的经验吧

536 views
Skip to first unread message

emuer

unread,
Mar 10, 2009, 4:35:21 PM3/10/09
to TopLanguage
所谓的side project,就是大家在工作之余凭兴趣来做的一些project,这里特指软件project.

最近自己也想捣鼓一些有趣而且有用的软件项目,既提升自己的能力,同时也希望做出来的成果能对其他人有一定的用处。到网上找了一下,
SourceForge, TheCodeProject 和 GoogleCode上都有不少可以学习的例子,但毕竟自己在这方面没有太多经验,因此
想请教一下group上的各位,是否能分享一下你们做side project时的经历和心得?

我对做side project有以下这些疑问:
1.一开始是自己做一个独立的project好还是参与到现有的一些开源项目中去比较好?开源项目貌似一开始只能做些测试,文档之类的周边工作,对自己
的提高会不会太慢?大家能分享一下自己是什么开始一个项目的吗?

2.如果想在做side project的同时锻炼自己的团队协作能力,网上有什么途径能比较容易找到志同道合的朋友一起干?之所以问这个问题,是因为
自己身边的朋友要么不是做软件的,要么对做side project的兴趣不大,下班都休息去了。所以在这点上比较郁闷。大家能分享一下自己对于找合作
者方面的故事和经验吗?

3.通过网络进行的松散协作难度肯定比在学校或者公司做project要更难管理一些,大家是如何做到有效控制项目进度,最终达成目标的呢?

Anyway,各位如果有什么side project想找人一起做,可告知小弟一声?我自以为还是有比较强的学习能力和团队协作精神的,如果能跟各位
牛人一起做side project,在做出贡献的同时能让自我能力有一定提升,会是多么美好的一件事情。

谢谢!

trydofor

unread,
Mar 10, 2009, 9:09:06 PM3/10/09
to pon...@googlegroups.com
昨天写了个如何使用code.google.comsf.net来开源的话题.(现在还没全部完成)
http://www.trydofor.com/a9w3-auhome/trydofor/article/2009/0310140935/body.htm

我个人认为,在开源项目款架下写自己的project或参与别人的project,关键是学
习.学习的最佳途径,就是写代码,读代码,反馈,积累...


至于项目的协作和管理,project hosting都提供了相关功能.
code.google,大众化一点.
sf.net 比较复杂一些,提供了shell,cvs,db的高级管理功能.


--
http://trydofor.com - Simplicity is everything.

li li

unread,
Mar 10, 2009, 9:30:47 PM3/10/09
to pon...@googlegroups.com
对于我自己,学习网络编程时候我下载了一个比较原始的ping程序。这个程序不大,只有一个c文件,500多行代码,但是死活编译不过去,这激发了我研究的兴趣,经过一番调试和修改,最后成功运行了!当时我兴奋的想砸键盘。后来,我不断的修改这个程序,按照自己的想法运行输出一些东西,加入一些功能,的确,修改程序是我的令一个兴奋点。我总结了一下:
1.对于要做的事有发自内心的兴趣,这自然不必多说。
2.刚开始任务要简单,尽量要成功,这样能增加信心,可能也会提高兴趣。
3.表达自己的想法。

以上是我个人的经历,而且知道现在我还觉得我经验的缺乏,所以我并不知道该如何做一定能提高自己的能力,但这种经历的确给我带来很多快乐。

sjinny

unread,
Mar 10, 2009, 10:10:52 PM3/10/09
to pon...@googlegroups.com
我一般是这样:
先有个(对自己)有诱惑力的目标,然后有个大致的方向,接着做点验证性的事情,然后开始正儿八经地开发,最后把做出来的东西丢弃然后从头开始下一轮迭代,直到你做出来的成品能对其他人产生诱惑力。
但是不要指望一个目标能诱惑到别人一起做开发,我承认这个可能性不为0,但是以我的观察这个可能性太低。


网易邮箱,中国第一大电子邮件服务商

sagasw

unread,
Mar 10, 2009, 10:14:07 PM3/10/09
to pon...@googlegroups.com
个人来说,比较喜欢google的东西,建议可以尝试一下appengine,现在已经可以收费,
想做成正式的东西也很容易。


2009/3/11 emuer <ms....@gmail.com>

居振梁

unread,
Mar 10, 2009, 10:16:23 PM3/10/09
to pon...@googlegroups.com
我嘛,一言蔽之。
今天写程序给自己用,是为了明天写程序给其他程序员用。

做好了就发布出去,也不管是否对别人有用,因为只给“需要的人”用

--
自学走了不少弯路,更浪费了太多的时间,寻找良师益友。
追求黑客精神和清心寡欲的心态。
技术博客:http://wargrey.yo2.cn
英文博客:http://wargrey.blogspot.com
琐事日记:http://www.douban.com/people/wargrey/notes
研究方向:人工智能、Unix/GNU Linux、虚拟化
其他兴趣:数学、物理、心理学、武术、自然语言

郝培强 tinyfool

unread,
Mar 10, 2009, 10:40:00 PM3/10/09
to pon...@googlegroups.com
我目前主要有两个side project,一个是在iPhone上面的记账软件,附件的图就是。另外一个是一个网站全能之眼,http://www.zmap.org/ ,全能之眼是一个基于Google maps api的开放式wiki类型的地图系统。

这两个项目都是我自己一个人在做,全能之眼做了很多年了,因为忙其实一直以来就是2006年的样子,改进不大。直到最近我才开始有功夫对全能之眼进行完善。从很久以前我就开始业务的做各种自己觉得有意思的东西,最后做成的东西很少,和别人合作成功的就更少。

不过我和好朋友火炬一起做了个365kit,其实还不错,一个手机通讯录网络同步的东西,可惜后来因为一些其他的因素关闭了。但是我们一起有了经验和战斗友谊,所以我们2006年末一起成立了一个咨询公司,做了一年的咨询业务。07年末,我们给客户咨询的副产品,站内搜索系统成熟了,我们找到了一个天使投资人,投资了一些钱,成立了现在的公司银杏泰克科技有限公司 http://www.ginkgotek.com/ ,给网站提供站内搜索引擎服务,现在饭统网,6间房,263分类信息都是我们的客户,他们的搜索使用的就是我们的技术。



我没有正式参与过任何开源的项目,下过一些代码,没仔细看过。我觉得我个人能力不能驾驭大的合作项目,之前我也曾经召集过很大的网络合作项目,但是不知道如何管理和运作,后来就不了了之了。现在,我所有的side project计划都倾向于自己一个人做,做到项目已经很清晰,很明确再考虑找其他人一起帮忙之类的。


 

Tinyfool

unread,
Mar 10, 2009, 10:44:39 PM3/10/09
to TopLanguage
论坛看不到图,-___-#

http://picasaweb.google.com/lh/photo/AJin-fT_F2gIydROBXjO5w?feat=directlink

http://picasaweb.google.com/lh/photo/OJPRzcaEVA4rnihMlPVaDw?feat=directlink

On Mar 11, 10:40 am, 郝培强 tinyfool <tinyf...@gmail.com> wrote:
> 我目前主要有两个side project,一个是在iPhone上面的记账软件,附件的图就是。另外一


> 个是一个网站全能之眼,http://www.zmap.org/,全能之眼是一个基于Google
> maps api的开放式wiki类型的地图系统。
>
> 这两个项目都是我自己一个人在做,全能之眼做了很多年了,因为忙其实一直以来
> 就是2006年的样子,改进不大。直到最近我才开始有功夫对全能之眼进行完善。从
> 很久以前我就开始业务的做各种自己觉得有意思的东西,最后做成的东西很少,和
> 别人合作成功的就更少。
>
> 不过我和好朋友火炬一起做了个365kit,其实还不错,一个手机通讯录网络同步的
> 东西,可惜后来因为一些其他的因素关闭了。但是我们一起有了经验和战斗友谊,
> 所以我们2006年末一起成立了一个咨询公司,做了一年的咨询业务。07年末,我们
> 给客户咨询的副产品,站内搜索系统成熟了,我们找到了一个天使投资人,投资了一些钱,成立
> 了现在的公司银杏泰克科技有限公司http://www.ginkgotek.com/,给网站提供
> 站内搜索引擎服务,现在饭统网,6间房,263分类信息都是我们的客户,他们的搜
> 索使用的就是我们的技术。
>
> 我没有正式参与过任何开源的项目,下过一些代码,没仔细看过。我觉得我个人能
> 力不能驾驭大的合作项目,之前我也曾经召集过很大的网络合作项目,但是不知道
> 如何管理和运作,后来就不了了之了。现在,我所有的side project计划都倾向于
> 自己一个人做,做到项目已经很清晰,很明确再考虑找其他人一起帮忙之类的。
>

windstorm

unread,
Mar 10, 2009, 10:56:49 PM3/10/09
to pon...@googlegroups.com
? I can see the picture clearly.

----------------------------------------------------------------------------------
Yours Sincerely
Kun

blog: www.forwind.cn

2009/3/10 Tinyfool <tiny...@gmail.com>:

Tinyfool

unread,
Mar 10, 2009, 11:01:33 PM3/10/09
to TopLanguage
貌似是邮件可以看到,论坛看不到吧

On Mar 11, 10:56 am, windstorm <likunarmstr...@gmail.com> wrote:
> ? I can see the picture clearly.
>
> --------------------------------------------------------------------------- -------
> Yours Sincerely
> Kun
>
> blog:www.forwind.cn
>

> 2009/3/10 Tinyfool <tinyf...@gmail.com>:
>
>
>
> > 论坛看不到图,-___-#
>
> >http://picasaweb.google.com/lh/photo/AJin-fT_F2gIydROBXjO5w?feat=dire...
>
> >http://picasaweb.google.com/lh/photo/OJPRzcaEVA4rnihMlPVaDw?feat=dire...

windstorm

unread,
Mar 10, 2009, 11:20:36 PM3/10/09
to pon...@googlegroups.com
Sorry for the OT and English, I will be in library all the night.

This software looks good, but how convenient it will be when really in
use? Does it require user to input every piece of information, e.g.
item and corresponding price? Will it be able to collaborate with
other apps for iPhone which is in charge of purchasing online, and
obtain the record from them?

----------------------------------------------------------------------------------
Yours Sincerely
Kun

blog: www.forwind.cn

2009/3/10 Tinyfool <tiny...@gmail.com>:

郝培强 tinyfool

unread,
Mar 10, 2009, 11:25:17 PM3/10/09
to pon...@googlegroups.com
方便这方面,还好吧,用户确实需要每次输入所有的信息。但是就我自己这几个月
的使用来看,还好。我有些便民措施,就是说,比如你输入过一次打车,你可以把
打车存为一个快捷方式,下次点击打车,你只需要写金额就可以了。

除了录入需要用户操心,其他用户都可以不管,自动按照日期统计,自动的做一些
分析。

这东西已经写好了几个月,我一直在生活中使用,不过我自己的设计目标还没有完
全达成,所以还没有在app store上面卖。

暂时没有和其他的程序联系起来的想法,也没有看到任何程序适合联系起来。

windstorm

unread,
Mar 10, 2009, 11:29:11 PM3/10/09
to pon...@googlegroups.com
Sounds interesting~ Lot's of data mining techniques can be applied here.

Thanks for the reply and GL.

----------------------------------------------------------------------------------
Yours Sincerely
Kun

blog: www.forwind.cn

2009/3/10 郝培强 tinyfool <tiny...@gmail.com>:
> 方便这方面,还好吧,用户确实需要每次输入所有的信息。但是就我自己这几个月的使用来看,还好。我有些便民措施,就是说,比如你输入过一次打车,你可以把打车存为一个快捷方式,下次点击打车,你只需要写金额就可以了。
>
> 除了录入需要用户操心,其他用户都可以不管,自动按照日期统计,自动的做一些分析。
>
> 这东西已经写好了几个月,我一直在生活中使用,不过我自己的设计目标还没有完全达成,所以还没有在app store上面卖。

>>>>>> 我目前主要有两个side project,一个是在iPhone上面的记账软件,附件的图就是。另外一
>>>>>> 个是一个网站全能之眼,http://www.zmap.org/,全能之眼是一个基于Google
>>>>>> maps api的开放式wiki类型的地图系统。
>>>>
>>>>>> 这两个项目都是我自己一个人在做,全能之眼做了很多年了,因为忙其实一直以来
>>>>>> 就是2006年的样子,改进不大。直到最近我才开始有功夫对全能之眼进行完善。从
>>>>>> 很久以前我就开始业务的做各种自己觉得有意思的东西,最后做成的东西很少,和
>>>>>> 别人合作成功的就更少。
>>>>
>>>>>> 不过我和好朋友火炬一起做了个365kit,其实还不错,一个手机通讯录网络同步的
>>>>>> 东西,可惜后来因为一些其他的因素关闭了。但是我们一起有了经验和战斗友谊,

>>>>>> 所以我们2006年末一起成立了一个咨询公司,做了一年的咨询业务。07年末,我们


>>>>>> 给客户咨询的副产品,站内搜索系统成熟了,我们找到了一个天使投资人,投资了一些钱,成立

>>>>>> 了现在的公司银杏泰克科技有限公司http://www.ginkgotek.com/,给网站提供
>>>>>> 站内搜索引擎服务,现在饭统网,6间房,263分类信息都是我们的客户,他们的搜
>>>>>> 索使用的就是我们的技术。
>>>>
>>>>>> 我没有正式参与过任何开源的项目,下过一些代码,没仔细看过。我觉得我个人能
>>>>>> 力不能驾驭大的合作项目,之前我也曾经召集过很大的网络合作项目,但是不知道
>>>>>> 如何管理和运作,后来就不了了之了。现在,我所有的side project计划都倾向于
>>>>>> 自己一个人做,做到项目已经很清晰,很明确再考虑找其他人一起帮忙之类的。
>>>>

>>>>>> 在 2009-3-11,上午4:35, emuer 写道:
>>>>

>>>>>>> 所谓的side project,就是大家在工作之余凭兴趣来做的一些project,这里特
>>>>>>> 指软件project.
>>>>
>>>>>>> 最近自己也想捣鼓一些有趣而且有用的软件项目,既提升自己的能力,同时也希

>>>>>>> 望做出来的成果能对其他人有一定的用处。到网上找了一下,
>>>>>>> SourceForge, TheCodeProject 和 GoogleCode上都有不少可以学习的例子,但
>>>>>>> 毕竟自己在这方面没有太多经验,因此


>>>>>>> 想请教一下group上的各位,是否能分享一下你们做side project时的经历和心
>>>>>>> 得?
>>>>
>>>>>>> 我对做side project有以下这些疑问:
>>>>>>> 1.一开始是自己做一个独立的project好还是参与到现有的一些开源项目中去比

Lyman

unread,
Mar 10, 2009, 11:47:54 PM3/10/09
to pon...@googlegroups.com
按我的经历,兴趣项目主要是看机会。为了写而写,主要是学生时代补贴家用。

念研那会女朋友的索爱 T618 缺个看电子小说的东西,就写了个 J2ME 的。可惜后
来没多久来日本了,就没有继续更新。现在的手机应该也不需要这东西了。
http://code.google.com/p/walkbook/

后来用 Linux 桌面,遇到有用却用不爽,又因为相对小众而缺少维护的东西,就
帮把手。
http://giplet.sourceforge.net/

更多时候,是遇到问题的时候报 bug,力所能及就读读代码写些 patch,或者帮忙
添加翻译。

--
Lyman Li
博客: http://lymanrb.blogspot.com
相册: http://picasaweb.google.com/lymanrb

limodou

unread,
Mar 11, 2009, 12:08:56 AM3/11/09
to pon...@googlegroups.com
2009/3/11 emuer <ms....@gmail.com>:

> 所谓的side project,就是大家在工作之余凭兴趣来做的一些project,这里特指软件project.
>
> 最近自己也想捣鼓一些有趣而且有用的软件项目,既提升自己的能力,同时也希望做出来的成果能对其他人有一定的用处。到网上找了一下,
> SourceForge, TheCodeProject 和 GoogleCode上都有不少可以学习的例子,但毕竟自己在这方面没有太多经验,因此
> 想请教一下group上的各位,是否能分享一下你们做side project时的经历和心得?
>
> 我对做side project有以下这些疑问:
> 1.一开始是自己做一个独立的project好还是参与到现有的一些开源项目中去比较好?开源项目貌似一开始只能做些测试,文档之类的周边工作,对自己
> 的提高会不会太慢?大家能分享一下自己是什么开始一个项目的吗?

主要看你的能力,动力。如果你有想法,有这个能力,当然是自已做了。但做到一定程序可能希望别人加入。如果没有想法,能力也不够,主要是学别人的项目和参与。一般的项目除非是刚开始,不会很容易就让你加入核心团队,因为开源项目是最讲究贡献的。开始你没有贡献,别人无法信任你,除非你们认识。而且别人也不了解你的能力,也无法让你负责些什么事情。而做测试,文档的起点很低,所以便于开始。当然你也可以参加讨论,提供patch。对于提高是多方面的,关键是看你选择的方向和采用的手段。多与人交流,多看源代码和文档,多提供补丁提高会很快。天天在潜水,等着别人帮你那是不可能的。天下没有免费的午餐。特别是开源项目,更是主要靠自已去动手动脑。

对于我个人,我参与过几个开源项目,后来都退出了。现在是自已在做,别人很少参与,偶尔有人会提些建议,补丁和文档,已经不错了。感觉外国朋友的参与度很高,不象国内,基本上认为不好,就转而去使用别人的了,不是说进行改进。自已做项目,特别是现在,你一定要是主力,只做策划,管理基本上是没戏。许多东西都要你先做好,然后让别人有一个可以开始的基础之后再吸引别人。如果还没开始,只是在策划就拉人,人可能是拉了不少,不过基本上都是看看,学习的,能投入的基本上没有。如果你不是主力,你不去做,你不坚持,这个项目基本上就夭折了。因此如果你想做项目,就要先考虑一个人怎么做,先不要想让别人加入,那是不现实的。对于别人来说,他也有一个选择,凭什么他要加入你的项目?一般他要看到你的项目有实质性的进展,有成果,而他又比较感兴趣,才有可能会加入。

>
> 2.如果想在做side project的同时锻炼自己的团队协作能力,网上有什么途径能比较容易找到志同道合的朋友一起干?之所以问这个问题,是因为
> 自己身边的朋友要么不是做软件的,要么对做side project的兴趣不大,下班都休息去了。所以在这点上比较郁闷。大家能分享一下自己对于找合作
> 者方面的故事和经验吗?

前面也说了,很难。如果周围就有可能还好一些,只是在网上的话,还是需要你有一定的实力,你的想法能得到他人的认可,你自已可以承担许多事情。至于团队协作就不好说了,毕竟没有在一起面对面的实在,也很难说就可以培养出这方面的能力,可能大部分的项目人都不是很多,所以很难。

>
> 3.通过网络进行的松散协作难度肯定比在学校或者公司做project要更难管理一些,大家是如何做到有效控制项目进度,最终达成目标的呢?

靠自已。别人基本上都不靠谱。

>
> Anyway,各位如果有什么side project想找人一起做,可告知小弟一声?我自以为还是有比较强的学习能力和团队协作精神的,如果能跟各位
> 牛人一起做side project,在做出贡献的同时能让自我能力有一定提升,会是多么美好的一件事情。
>
> 谢谢!
>

不是有项目你就会参与,要看你的知识,你的技能,你的能力,你的兴趣等因素。你在选择别人,别人也在选择你。还是先加强沟通,一点点来的好。

--
I like python!
UliPad <<The Python Editor>>: http://code.google.com/p/ulipad/
UliWeb <<simple web framework>>: http://uliwebproject.appspot.com
My Blog: http://hi.baidu.com/limodou

emuer

unread,
Mar 11, 2009, 2:14:40 AM3/11/09
to TopLanguage
首先感谢大家踊跃发表自己的看法,让我获益量多!

limodou的观点印证了我的一些想法,就是做side project必须自己先弄出一些能吸引人的东西出来,在这个基础上才有可能去吸引其他人一
起干。

至于side project的选择上,首先side project必须是自己感兴趣的,这个毫无疑问。一些project的idea是通过自己熟悉
的技术做出一些有用的功能,例如写个自用的小C# Winform程序,这一类的项目实践难度相对低一点,在可控制的范围以内。如果但如果感兴趣的是一
些自己以前没有经验的东西,要把其做成Project,难度会比较大。例如缺乏网络编程经验,却想去做一个小小的搜索引擎,光在网上补知识,看资料,熟
悉概念,研究别人做的东西就得花上一段时间。

特别想知道有没有这种知难而上,从对一样比较复杂的技术一无所知再到最终做出来的经验?有没有一套大家觉得管用的策略?例如先花时间看资料->然后到开
源项目网站寻找类似项目并研究代码->做出基本设计->实现原型等等?

另外,个人认为浏览器相关技术,虚拟机/中间件和并发编程会是很好的做side project的方向,既实用又符合未来的趋势,但自己缺乏相关经验,
上网找到的知识也比较零散,似乎也没有太多的具体介绍。

居振梁

unread,
Mar 11, 2009, 2:55:59 AM3/11/09
to pon...@googlegroups.com


在09-3-11,emuer <ms....@gmail.com> 写道:
另外,个人认为浏览器相关技术,虚拟机/中间件和并发编程会是很好的做side project的方向,既实用又符合未来的趋势,但自己缺乏相关经验.
 
虚拟化的建议看看《虚拟机——系统与进程的通用平台》。详见http://www.douban.com/subject/1885761/,我也正在看。

wangdong

unread,
Mar 18, 2009, 4:15:55 AM3/18/09
to TopLanguage
正式工作很多,很久没做过这种项目了。我们做的东西挺大的:http://www.wps.cn,我平时老用,也总能发现很多不爽的地方,如果这是做一
个side project,我可能早已经把它改的面目全非了,但实际上想去改就很难,因为东西一大,各种改动都是牵一发动全身。这样的结果就是,任何
一个小改动,都会非常非常困难,于是人的思维,组织的文化慢慢就僵化了,就不想再去创新了,我想这对软件开发组织而言是致命的。


On 3月11日, 下午2时55分, 居振梁 <juzhenli...@gmail.com> wrote:
> 在09-3-11,emuer <ms.c...@gmail.com> 写道:

jinhu wang

unread,
Mar 18, 2009, 11:17:28 PM3/18/09
to pon...@googlegroups.com
软件从概念阶段到产品成型再到维护阶段,不可避免的会遇到这样的尴尬。

2009/3/18 wangdong <wang...@gmail.com>:

emuer

unread,
Mar 31, 2009, 8:00:43 PM3/31/09
to TopLanguage
如果一改动就"牵一发动全身"的话,会不会是OO设计的问题?当然我不会怀疑金山的软件设计能力。也许当project足够大的时候,无论如何抽象,都
难免这种情况吧。

On Mar 18, 1:15 am, wangdong <wangdo...@gmail.com> wrote:
> 正式工作很多,很久没做过这种项目了。我们做的东西挺大的:http://www.wps.cn,我平时老用,也总能发现很多不爽的地方,如果这是做一
> 个side project,我可能早已经把它改的面目全非了,但实际上想去改就很难,因为东西一大,各种改动都是牵一发动全身。这样的结果就是,任何
> 一个小改动,都会非常非常困难,于是人的思维,组织的文化慢慢就僵化了,就不想再去创新了,我想这对软件开发组织而言是致命的。
>
> On 3月11日, 下午2时55分, 居振梁 <juzhenli...@gmail.com> wrote:
>
> > 在09-3-11,emuer <ms.c...@gmail.com> 写道:
> > 另外,个人认为浏览器相关技术,虚拟机/中间件和并发编程会是很好的做side project的方向,既实用又符合未来的趋势,但自己缺乏相关经验.
>

> > 虚拟化的建议看看《虚拟机----系统与进程的通用平台》。详见http://www.douban.com/subject/1885761/,我也正在看。

Reply all
Reply to author
Forward
0 new messages