Questions tagged «personal-projects»

对于您自己从事的项目的问题,通常与工作无关。

29
我不会在业余时间编程。那会让我成为一个不好的开发者吗?
网络上的许多博客和建议似乎都暗示,要成为一名出色的开发人员,仅做日常工作是不够的。例如,您应该在业余时间为开放源代码项目做出贡献,编写智能手机应用程序等。实际上,很多建议似乎表明,如果您不喜欢整日编写程序,那么您会可能是在错误的职业中。 这对我来说并不正确。我很喜欢我的工作,但是当我从办公室回到家时,我并没有心情直接跳回计算机并开始编码,直到就寝为止。我每天只有几个小时的空闲时间,我宁愿将它们花在其他爱好,见朋友或出门旅行上,而不是在电脑前。 我确实从编程中受益匪浅,偶尔会在工作之外闲逛。我致力于个人发展,并花时间阅读技术博客和书籍,以保持学习和不断进步。但这并没有延伸到我想用我所有的业余时间进行编码。 这是否意味着我不是一个真正的“真正”软件开发人员?不用做额外的工作就能成为一名优秀的软件开发人员吗?我很想听听您的想法。 更新:谢谢大家的评论和回答。很多好的想法和建议!

21
我的代码大部分都存在主要的设计缺陷。完成还是现在修复?[关闭]
我是一名高中生,和我的一个朋友一起从事C#项目,他的技能与我差不多。到目前为止,我们已经在100次提交中编写了大约3,000行代码和250行测试代码。由于学校的原因,我推迟了几个月的项目,最近我又可以将其重新备份。 备份时,我了解到我编写的代码设计不良,例如在渲染器中包含过多线程,在模拟CPU,GPU和游戏卡带之间的交互中无法很好地防止竞争情况,以及仅仅是多余和令人困惑的代码。 问题是我什至没有完成程序的主要功能,所以我无法真正重构,因此我不鼓励继续完全意识到我的代码设计有缺陷。同时,我不想放弃该项目。已经取得了很大的进步,工作绝不能浪费。 我似乎有两种选择:通过解决不良的设计来简单地完成功能,然后在一切正常进行后进行重构,暂停一切并在完成其余功能之前努力解决一切,开始项目到处都是新鲜的东西,或者由于项目过大(基本上是“回到绘图板”)而彻底放弃该项目。 根据他人在此类项目中的经验,如何使自己重回正轨?根据该站点上的答案,普遍的共识是,通常不需要重写,但是如果不能在不付出过多成本的情况下维护代码,则可以使用重写。我确实很想继续这个项目,但是就目前而言,我的代码设计得不够好,无法继续进行下去,而沮丧的情绪使我无法继续进行下去。


12
公开开源项目而不会感到尴尬[关闭]
我一直在一个相当大的开源项目上工作了一段时间,现在已经接近要发布它的地步了。但是,我是自学成才的,我真的不认识任何可以充分审查我的项目的人。 几年前,我发布了一些代码,这些代码在我发布它的论坛上几乎被撕碎(在某种意义上)。尽管该代码有效,但批评是准确而残酷的。它促使我开始寻找所有事物的最佳实践,最终我觉得这使我成为了一个更好的开发人员。我已经遍历了项目中的所有内容,试图使它变得完美,以至于我数不清。 我相信我的项目,并认为它有潜力帮助很多人,而且我觉得我已经用有趣的方式做了一些很酷的事情。不过,由于我是自学成才,所以我不禁要问自己的自我教育存在哪些差距。我上次撕开我的代码的方式并不是我想重复的。我认为释放我的项目花了无数小时,这让我最大的两个恐惧是绝对尴尬的,因为我由于自我教育而错过了一些明显显而易见的事情,或者更糟糕的是,将其释放到of的声音中。 有没有遇到过类似情况的人?我不害怕建设性的批评,只要它具有建设性,而不仅仅是我如何搞砸的话。我知道StackExchange上有一个代码审查站点,但它并不是真正为大型项目设置的,而且我不觉得那里的社区足够大,如果我要零散发布项目的一部分,我也不会得到很好的反馈(我尝试了一个文件)。我该怎么做才能使我的项目至少取得一定程度的成功,而又不会在此过程中感到尴尬或沮丧?

20
您如何跟踪个人项目中的错误?[关闭]
我正在尝试决定是否需要为自己的项目重新评估缺陷跟踪过程。在过去的几年中,我实际上只是使用TODO代码中的标记来跟踪缺陷,并在特定的视图中跟踪它们(我使用的是Eclipse,它具有不错的标记系统)。 不幸的是,我开始怀疑这个系统是否不可持续。我发现的缺陷通常与我正在处理的代码片段有关。无法立即理解的错误往往会被遗忘或忽略。我为我的妻子写了一个申请表,该申请表有近9个月的严重缺陷,但我一直忘了修复它。 您使用什么机制来跟踪个人项目中的缺陷?您是否有特定的系统或确定优先级和管理它们的过程?

14
完成项目有多重要?[关闭]
我是一名学生(尚未上大学),并且我已经编程大约5年了。在那段时间里,我从一种语言到另一种语言,从一个API到一个API,以及从一个项目到另一个项目,随处可见。我曾尝试过将自己放在一件事上,但我却失去了兴趣。我的整个PC上都完成了一半的项目(至少格式化了磁盘上四倍的项目)。 我开始想知道我出于乐趣而编程的较低动机(这是我真正喜欢的一项活动),是因为我最终没有完成项目。我不能告诉我目标是否太开放,或者关注范围太短。我试图做一些较小的项目只是为了完成它们,但是它们对我一点都不感兴趣。 这可能是我动力下降的原因吗?另外,当我申请去大学(并希望将来有软件工作)时,这可能会成为问题吗? 综上所述: 完成辅助/业余项目对职业,动机或教育有多重要?

8
担心发布一个业余项目-如何克服?[关闭]
我不知道这个问题是否与软件开发完全相关,但我还是尝试一下: 像很多程序员一样,我喜欢从事业余项目。有时候,看似好的主意结果并不是那么好,所以我放弃了这个项目。但是有时候,项目会产生一些有用的东西。所以,我可以将其发布,然后发布给全世界,对吗? 错误。不知何故,我似乎无法执行此步骤。我担心我的代码不够好,我总会想到次优的事物和可以添加的功能。因此,我什么也不释放,我失去了兴趣,并一度放弃了该项目。 这正常吗?您如何克服这种情况?

16
您有自己的“杂项工具”库吗?您最为哪一部分感到骄傲?[关闭]
我知道我们许多人使用经常使用的工具和实用程序来维护自己的小型个人图书馆。 我从16岁起就拥有我的,所以它的规模已经发展到相当可观的水平。此后,我写的一些内容已添加到框架中。我在LINQ之前就编写了自己的表达树的小实现,用于遗传算法,这在当时我很喜欢,并为此感到自豪-当然,现在它已经毫无用处了。但是最近我一直在研究它并升级到.NET 4.0,并重新引起了人们的兴趣。 所以我很好奇您使用库的目的。也许我们可以得到一些有用的小片段的好主意,并在我们自己之间分享。 所以我的问题是: 您是否有其他实用程序库? 您最为哪一部分感到自豪,为什么? 如果您愿意,请提供代码示例 :-)

14
在设计了某些东西之后激发自己去实际编写代码
它只会发生在我身上吗?还是您也很熟悉? 就像这样:您必须创建一些东西;模块,功能,整个应用程序……等等。这是您从未有过的有趣的事情,充满挑战。 因此,您开始考虑如何去做。你画一些草图。您编写一些原型来测试您的想法。您将不同的部分放在一起以获得完整的视图。 您最终会得到自己喜欢的设计,它是简单,所有人都清楚,易于维护...的名称。您覆盖了所有基础,想到了所有内容。您知道您将拥有此类,该文件以及该数据库架构。在此处进行配置,在此进行其他配置,等等。 但是现在,一切都解决了之后,您必须坐下来为它编写代码。并且不再具有挑战性。...去那儿了,做到了!现在编写代码只是“形式上的问题”,使它看起来像在重复您刚刚完成的工作。 在我以前的工作中,我有时会放弃它,因为有人根据我的规范进行了编码,但是在我的新工作中,我负责整个过程,所以我也必须这样做(因为我得到报酬做它)。 但是我有一个宠物项目,我下班后正在家里进行工作,只有我一个人,没有人付钱去做。我进行了创造性的工作,然后当需要将其写下来时,我感到不满意(让我们稍微浏览一下网络,看看P.SE上,SO上有什么新内容)。 我只想移至下一个具有挑战性的事物,然后移至下一个,下一个…… 这也发生在你身上吗?你如何解决? 您如何说服自己参与编写怪异的代码? 我会回答的。

6
TDD和版本控制
我目前正在学习TDD,并试图在我的个人项目中将其付诸实践。在许多这些项目中,我还广泛使用了版本控制。我对这两个工具在典型工作流程中的相互作用感兴趣,尤其是在使提交保持较小的原则上。以下是一些示例: 我开始一个新项目,并编写一个简单的测试以创建一个尚不存在的类。即使测试甚至无法编译,我也应该在编写类之前提交测试吗?还是应该在提交之前编译测试所需的最少代码量? 我找到一个错误并编写测试以重新创建它。我应该提交失败的测试还是实施错误修复然后提交? 这是两个立即想到的例子。随时在您的答案中提供其他示例。 编辑: 我在两个示例中都假设,在编写测试之后,我将立即编写代码以使测试通过。可能还会出现另一种情况:我在使用TDD的项目上工作了几个小时而没有提交。当我最终提交内容时,我想将我的工作分解成小块。(即使您只想在单个文件中提交某些更改,Git也会使此操作相对容易。) 这意味着,我的问题是一样关于为什么承诺,因为它是何时提交。

7
什么是一个好的第一个函数式编程项目?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 8年前关闭。 什么是一个好的第一个函数式编程项目? 我希望在我的单身汉项目中取得圆满成功,并且希望通过功能编程项目来完成它。我们不是在学校学习的,但是我们鼓励我们尝试自己学习新事物,而且我认为学习新的范例不仅对我来说是一种很好的练习,而且对于老师来说也可能是一件有趣的事情。 。 问题是我想提前一点开始我的项目,以利用暑假的机会,更好地理解函数式编程,并熟悉一种语言。 您会说这是一个很好的实践项目,有点挑战,但同时也让我学习了语言,范例等。那么您认为对我的单身汉项目而言,这是一个好项目(更高级的项目)吗? 对于进入函数式编程的最佳语言的建议也将不胜感激。

4
完成个人项目的最佳方法
我有许多个人项目已经开始但似乎从未完成,因为我被其他想法所困扰。我想知道完成个人项目的最佳方法是什么?有任何技巧或提示吗? 问题是我从某些项目中获得灵感,我不想失去自己的想法,而现在我的“保存想法”的方法是在一个想法中尽可能多地完成工作晚上,然后存储一些有关dos的GitHub问题。我发现这使我再也回不去老项目了。

10
我如何激励管理人员从事自由职业?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 6年前关闭。 我是一家小公司的开发人员。有时,我会为以前的雇主提供的自由职业或从事零工的工作提供额外的现金,这是我下班后可以做的,而不会以任何方式侵犯我的全职工作。 不幸的是,我的经理明确禁止我从事任何附带项目。他说的原因是,如果我一生中都有任何空闲时间,即使在周末,也应该花时间为他的公司工作。 我的论点是周末是我的时间,所以我应该能够做自己想做的事。其次,我扩大了我的技能,解决了我以前看不到的各种不同问题,而不仅仅是整年盯着同一项目。实际上,这将使我成为一名更有经验的程序员,并帮助我从事全职工作。 其他所有人似乎都在做兼职工作并赚取额外的现金,但是我不想让他们失望。我还能用什么其他动机来帮助老板看到这不是一件坏事?

3
如果不是一个经验丰富的程序员,那么启动一个开源项目有什么弊端?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我对要生产的产品有很多想法。问题是我不到一年的专业工作经验,而且我担心将来会基于我现在生产的产品而受到负面评价。我不知道我的代码是否有用。 我不熟悉任何编码模式。我所知道的是制造出行之有效的产品。我想在github上为我的未来项目提供一个公开的个人资料,我将尽力确保它得到很好的评论,被优化和干净。 这些是我担心会公开曝光的事情: 我的代码可能没有高度优化。 某些库或函数的错误使用会同时完成工作。 不知道或不遵循任何编码模式。 许多错误/不考虑边缘情况 根本缺乏对某些概念(例如线程安全性,多线程编程中的并发问题)的理解和应用。 我应该继续前进还是继续坚持在本地和私下建造东西,直到获得更多经验。从长远来看,我不想在这里犯下的错误困扰着我的职业前景。

4
在托管您的个人废弃项目时,一项服务和项目结构是否突出?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 4年前关闭。 我正在研究Google Code,SourceForge,BitBucket和GitHub,因为它们似乎是主要参与者。现在,我还没有分解它们提供的所有功能,但是我确实在寻找一个放置我编写的各种代码的地方(我为Euler项目提供的解决方案,可能为Code Golf编写的代码/在一个集中的位置编程拼图堆栈交换等。 因此,我的第一个问题是:在这种情况下,一项服务是否在其他服务中脱颖而出? 一旦选择了服务,就需要选择如何分发代码。我看到一些用于设置存储库和项目的选项。单个存储库可以容纳任意数量的项目-例如,对于我对Project Euler的所有各种解决方案,我可以拥有一个“ Tom Owens's Project Euler Solutions”存储库,该存储库内目录中的每种语言和环境的项目,另一个存储库适用于我的各种Code Kata解决方案等等。或者我可以按语言细分类似的内容(在一个存储库中有Python的Project Euler解决方案,在另一个存储库中有Java的PE解决方案,在第三个存储库中有Code Kata C ++解决方案)。 我的第二个问题:在确定应如何共享选择的代码示例时,是否存在任何限制或约定,特别是在创建存储库方面?我的想法是,这可能取决于您选择的服务(基于社区的惯例)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.