题
我很快就会寻找新的就业机会。传统上我被归类为桌面管理员,但我实际上更像是一把 IT 瑞士军刀。我目前在管理团队中,但我被要求为团队做开发类型的事情。我有 C#/C++/C/Per/... 令人厌恶的经验,但这些经验都不是在从事正式项目的正式开发团队中。为了纠正我简历中的这个明显的漏洞,我想参与一个运行良好的开源项目,我可以在晚上工作。有谁知道我可以在哪个网站上找到这样的项目?或者谁有推荐的。我知道我可以去一些像sourceforge这样的网站来寻找项目,但是我很难确定哪些项目正在积极寻求帮助,哪些只是某人想要自己开发的业余爱好项目。我想我正在寻找的是一种开源“分类”页面。感谢您的任何建议。
解决方案
如果您正在寻找 C# 开源项目,您还应该看看 CodePlex(请参阅 按 C# 过滤的项目列表).
以下是我所知道的一些较大的 C# 开源项目(曾经合作过、使用过或听到过很多好的报告),这些项目运行良好,并且肯定欢迎大家提出意见:
- 潜台词 (博客系统)
- 亚音速 (数据访问工具包+更多)
- MVC 贡献 (ASP.NET MVC 的额外优点)
- AJAX 控制工具包 (基于 ASP.NET AJAX 框架构建的控件)
- 博客引擎.NET (博客系统)
- 达斯博客 (博客系统)
DotNetNuke(网络门户系统)可能是最大的.NET 开源项目,但它是在 VB.NET 中实现的。
我认为加入一个已建立的项目比开始自己的项目更好。您的贡献将被更多的人使用,从雇主的角度来看,我更愿意听到您为我可能听说过的项目做出了贡献,而不是“我开始了另一个 .NET 博客项目”。
其他提示
乔恩·加洛韦 写道:
我认为加入一个已建立的项目比开始自己的项目更好。您的贡献将被更多的人使用,从雇主的角度来看,我更愿意听到您为我可能听说过的项目做出了贡献,而不是“我开始了另一个 .NET 博客项目”。
表面上你可能这么认为,但事实是,开源项目比独立的宠物项目普遍得多,另一个事实是,开源项目缺少雇主希望看到的两个关键要素: 为付费客户群开发软件的经验 和 具有完整软件开发生命周期的经验.
事实上,在许多工作中,过多地强调“开源”可能会伤害你,而不是帮助你。
在许多管理者的心目中,开源仍然与学术界和编程的学术(而不是商业)观点联系在一起。公平或不公平。
现在,出于学习、社区以及其他许多原因,参与开源绝对是、永远、永远的好主意。但是,如果您专门试图弥合从“业余爱好者”程序员到“专业”程序员的差距,我认为最简单的方法,即为您的编程“成本”带来最大“爆炸”的方法是从头开始构建和推广某些东西。
这展示了完整的软件生命周期开发,并且展示了主动性。
而且您可能会学到更多关于以这种方式进行实际编程的知识,而不是为最新的流行开源项目开发左手旋转小部件 UI 组件;)
我的建议是找到一个您真正感兴趣的应用领域。如果您只是想消磨时间,有数千个项目可供加入。但它很快就会成为另一项“工作”。当我寻找加入 DotNetNuke 团队的人时,我寻找对我们的项目充满热情的人,而不仅仅是那些想来填写简历的人。充满热情的人更有可能在有趣的编码和繁重的工作中坚持与我们在一起,而想要填充简历的人通常不会坚持比在简历上添加新行所需的时间更长的时间。
不言而喻 代码复合体 应该有您正在寻找的东西。尽管其 SourceForge 因其 MS 托管性质而倾向于基于 C# 和 .net 的项目,但它支持所有技术。一定要检查一下。:)
我在一条非常相似的船上。我是一名管理员,开始进行更多开发,并且我加入了在工作中使用的 Codeplex 上托管的几个开源项目。虽然我更愿意使用 Subversion 后端(而不是 Team Foundation Server),但使用 SvnBridge 可以减轻这种痛苦。
我的建议是寻找您感兴趣的活跃项目(似乎定期(或至少频繁)发布)并加入该项目。让其他人参与你正在从事的项目,可以让你有人对你负责,也有人可以向你提出想法。它确实对我的编码有帮助,既增加了我公开发布代码的信心,又学习了一些新技巧。
参与开源是完全值得的。
老实说,这是开源最难的事情,因为一些最合法的项目看起来并不是这样,因为它们的存在只能通过 1997 年构建的糟糕网页和邮件列表来了解。其他项目非常华而不实,但没有任何支持。有些项目不知道如何接受新成员,甚至不知道如何请求。
找到这些项目的最佳方法是密切关注并在此类论坛中建立联系。