10 个优秀的编程项目,助你提升简历,学习编程 wemake-python-styleguide

2025-05-27

10 个优秀的编程项目,助你提升简历,学习编程

wemake-python-样式指南

在学习编程时,我们经常会问的一个问题是:“对于构建项目来说,有哪些好的想法?”

现在,我们经常听到一些老套的答案,比如“开发一个象棋游戏”或者“命令行界面”。这些答案本身并没有错。

然而,我们认为这些示例并不符合现代编程的需求。现代软件很大一部分是 SaaS 和 Web 应用。这意味着你需要知道如何进行在线编程。

编写一个拥有用户、需要服务器、身份验证和数据库的网站或应用程序,其复杂性要高得多。这迫使你不得不接触一些在开发命令行井字游戏时根本不需要的技术。

其中一些也可以由AWS和其他大型企业常用的第三方管理。同样,这会让你接触到一些在行业中实用且被广泛使用的技术。这不仅能让简历更具实用性,还能帮助你学习如何使用新技术。

提示:如果您选择了一个复杂的项目,那么请专注于一次构建一个功能。一次性构建整个网站或应用程序非常困难。请从构建登录页面开始,或者用户登录后的主登录页面。如果您试图一次性完成整个项目,那么您很可能会失败。

娱乐

1. 无需人工干预即可发布十大博客的网络爬虫

我们发现一些项目推荐帖子的一个问题是,它们推荐的项目的实现方式无法激发程序员继续开发的兴趣。例如,我看到很多人推荐开发一个网页爬虫。

构建网络抓取工具并抓取数据后,您要用它做什么?

与其仅仅抓取数据,不如用这些数据建立一个网站。它不需要花哨,也不需要获得大量的浏览量。这个抓取工具可以把数据拉入数据库,然后选出最受欢迎的帖子。从那里,它可以复制标题和几句话,然后创建一个可以在线分享的帖子。这将是一个令人印象深刻且简单的项目,你可以真正地展示一下。

现在你已经证明了,你不仅能编写系统的一小部分代码,还能思考整个系统。你需要考虑如何自动化流程、管理数据库、创建网站以及如何筛选帖子。这也让你最终能够拥有一个切实的最终产品。

如果没有有形的最终产品,人们很容易失去动力,仅仅停留在网络抓取工具上。

此外,你永远不知道,你的网站也许会变得很受欢迎!
技能:数据库、网络爬虫、自动化、Web开发(用于博客)和通用编程。

2. 使用 Meetup 和 Eventbrite API 的事件提醒系统

你有没有想过去看乐队或喜剧表演,却发现它就在上周?也许你附近有一个关于数据科学或大数据的免费会议,而你因为忘记查看而错过了。
为什么不使用 Meetup 和 Eventbrite 的 API 来创建你自己的聚合器呢?当活动描述或标题中出现关键词时,它会发出警告。我猜 Meetup 和 Eventbrite 都有类似的选项。不过,尝试构建自己的系统总是很有趣的。

您可以根据自己的需求定制系统,甚至可以将其建成网站,方便其他人创建自己的提醒。这个项目的一大亮点在于,您可以练习使用两种不同的 API。这样,您就可以比较并对比它们各自的优缺点。这样,如果您以后负责构建 API,就能更好地了解哪些 API 有效,哪些 API 无效。

技能:API、数据库、自动化、Web 开发和通用编程。

3. 9GAG 模仿者

在创建自己的项目时,你不必总是重复造轮子。一些简单的项目,比如一个允许你登录、发布照片、GIF 动图以及滚动浏览动态的网站,可以让你先创建一个坚实的基础网站。然后,你可以添加许多有趣的功能,比如关注、点赞和搜索。搜索功能尤其适合用来学习推荐系统和机器学习的工作原理!

尝试复制热门网站总是很有趣的。事实上,这实际上是一种很好的学习方式,因为你必须对每个功能进行逆向工程。逆向工程是一项很棒的技能,因为作为一名软件工程师,你将不断维护其他人的代码,你需要了解他们的想法。

技能:机器学习(用于推荐系统)、数据库、自动化、Web开发和通用编程。
零售类网站

4. 礼物推荐应用

你是否曾为给朋友挑选合适的礼物而苦恼?如果你能创建一个网站,帮你预测应该给朋友买什么礼物,那该有多好啊!它可以让最终用户创建账户,或者直接获得礼物推荐。

再次,这提供了创建需要身份验证、数据库开发等的帐户的机会。

此外,这个项目的另一个优点是您可以使用亚马逊的 API 来创建联盟链接。这将帮助您实现以下目标:首先,学习如何使用 API,并熟练阅读 API 文档;其次,如果您做得好,每售出一件产品,您都可以获得佣金。

这个项目也有机会尝试创建一个基本的机器学习模型。你可以创建一个类似测验的题目,尝试找出最好的礼物是什么,然后根据人们是否点击了礼物,驱动模型根据响应率进行学习​​。

技能:API、数据库、通用编程和应用程序开发。

5. 易货贸易场所

想想 OfferUp,但与其赚钱,不如创建一个只允许交易的网站。这个概念会迫使你开发一些需要深思熟虑的功能。如果没有计划,你不可能轻易开始这个项目。

人们将如何发布内容,在哪里可以找到最近发布的物品,以及人们将如何搜索。所有这些都是您可以构建的独立功能。此外,您还需要考虑用户将如何互动,甚至他们如何进行实际交易。

这个想法不必 100% 适用于现实生活——它需要能够提升你作为程序员的技能。
技能:数据库、Web 开发、通用编程和应用程序开发(如果你选择将其开发成应用程序)。

B2B

6.发票及合同管理系统

合同和发票管理是一个非常复杂的过程。合同中可能包含许多细微的条款和规定,难以追踪。

即使你将其简化为一些核心组件,这也使得这个项目非常出色。将复杂的业务流程转化为软件并非易事。但这正是这个项目极具挑战性的原因。
再次强调,我们不会把事情搞得太复杂。先开发一个基本功能,比如输入合同条款。然后,你可以添加其他功能,比如发票跟踪、合同分析和预测。

技能:流程管理、数据库、Web 开发和通用编程。

7.任务管理系统

像 KanbanFlow 这样的任务板内置了多种模块化功能,使其成为一个值得尝试的好项目。上手需要一些准备工作,因为您需要设置一个健壮且动态的用户界面。事实上,这个项目更像是两个人的工作。一个人负责前端,另一个人负责后端。

别灰心!这实际上是一个锻炼沟通和团队合作能力的机会。你们需要仔细讨论设计方案,确保双方都完全理解,并且清楚模块的连接方式。

这总是比看起来更具挑战性。

技能:沟通、前端、数据库、Web 开发和通用编程。

8. 求职板

任何强制用户以各种类型输入的项目都会增添有趣的设计元素。您将如何确保网站的用户体验既符合雇主的需求,又能吸引求职者呢?与大多数其他项目一样,您无需一次性关注所有方面。首先尝试创建招聘信息的功能。然后,您可以专注于求职者及其反馈。

技能:数据库、Web 开发和通用编程。

9.基于标准化数据集预测利润的网站

对于大多数公司来说,有很多数据集是非常标准化的
。这包括通常基于成本中心、账户、明细描述以及最终实际交易成本的会计数据。

任何数据集标准化的好处在于,它使得基于这些数据集进行分析变得更容易。何不创建一个标准化的仪表板,帮助公司预测支出、查看每月支出,并可能帮助他们改善支出?

对于这个项目,你可能需要花费大量时间学习如何确保数据安全。当然,我们建议你先尝试构建专注于数据采集、标准化和显示的模块,然后再深入研究安全性。这是一个你可能永远无法逃脱的陷阱!

技能:预测、业务逻辑、数据库、Web 开发和通用编程

游戏创意

10.蛇

如果你在 21 世纪初有手机,你可能玩过贪吃蛇。这是一款简单的游戏,但你总能尝试让它变得更复杂!首先,先尝试制作游戏。

这需要你弄清楚如何开发一款线上游戏。Sebastian Opperman 的这款霓虹蛇游戏是个不错的起点。之后,你或许可以添加一些很酷的新功能,比如特殊物品或特殊能力。

这将是一次玩乐的好机会。从拥有大量注册用户和使用你网站的角度来看,这个项目的技术性并不高。然而,弄清楚如何让游戏在线运行是一个不错的挑战。

技能:Web 开发、通用编程和 UI

我们真心希望这份清单能激励你,打造一个精彩的新项目,让你的简历锦上添花,并在面试中大放异彩。说不定,我们会看到你成为下一个十亿美元初创公司的CEO!

您是否有兴趣了解数据科学或技术?

学习数据科学:我们最喜欢的数据科学书籍
使用 Python 抓取 MeetUp API
我们最喜欢的 Coursera 免费机器学习课程
算法如何变得不道德和带有偏见
如何使用 SQL 加载多个文件
如何开发强大的
动态算法 将 CSV 数据批量插入 SQL Server
数据科学家必须具备的 4 项技能
SQL 最佳实践 - 设计 ETL 视频

文章来源:https://dev.to/seattledataguy/10-great-programming-projects-to-improve-your-resume-and-learn-to-program-1e2h
PREV
11 个最棒的工程博客,为你带来灵感
NEXT
Database 101: How social media “likes” are stored in a database