于开源之夏后
双选会上下定的决意
双选会博文片段传送门这篇文章是接续着双选会博文段后的内容,建议没看过前文的读者先去补充一下上下文。
在双选会结束后我很快的投身于鸿小易的开发,毕竟是挑战杯的项目,ddl追的还是比较紧的。开发、写博客、改bug、给队友当顾问……这样的循环充满了我的四月,虽然忙碌,但却让我的内心异常的充实,我非常享受这种感受,一方面是对于技术的狂热,另一方面我能清醒的认识到这是在让我自己成长,在沿着自己所选的道路前进,实现自我价值的感觉让我感到满足。
开发完成,材料上交。似乎一切都告一段落。走出信息楼,那道夕阳因丁达尔效应而拉出的一道金光照在我身上,让我仿佛被拉回到了双选会结束时那充满希望,满心憧憬的傍晚。我没有过多的停下脚步,因为这段经历本就不让我感到疲惫,反而,我内心的悸动开始难以抑制的推着我开始思考接下来该做些什么。优化鸿小易的话,我可以在agent上下功夫,去认真学习一下比较成熟的工作流,去优化我生成回答的速度,去优化我知识库的索引标签;也可以在客户端,做更多的页面,加入华为账号一键登录,设置对话历史列表,开发同账号云同步功能等等,一大堆todolist出现在我脑海中带来的不是压力与焦虑,而是强有力的心跳所带来的兴奋与期待。
我开始实施不久后,我发现开源之夏2025开始报名了,我本来打算说用暑假好好完善一下我的鸿小易之后直接用这个项目去找一个实习,用实习时间上的领先来去创造优势,所以犹豫了一下决定先不去报名,先做着手上的事,稳步推进。就这样我在实验室沉浸式的开发了一段时间,突然我收到了来自子安学长的微信。
说是要推荐我去报开源之夏,里面有开源鸿蒙的相关项目,还有他导的项目,我就说去看看是否是我力所能及的内容,毕竟当时的我还没有那么深的VibeCoding功底。

上面这张图是同期的另一个开鸿项目PIEditor,这个项目和我最后选择的NowInOpenHarmony我其实并没有过多由于。PIEditor这个项目主要是对于开鸿的插件的一个开发,这方面我并没有相关经验,同时我并不认为这个东西做出来之后很易于向面试官展示,相比于NowInOpenHarmony来说它的领域更加深入细化,这种细化的领域对于生态的发展来说可能比做一个新闻软件更有用,但是对于那时我自身的情况来说并不适合。有着清晰架构,属于传统前后端软件开发的NowInOpenHarmony很显然对于新手来说更加友好,且更加易于展示。
软件工程的全流程实践
开发前的准备
此前我还没有很正规的去进行过完整的软件开发流程,有需求,大概明白要做出来个啥就上了,有点像是快速原型的感觉,但实际上又差得远,因为很多时候都是需求并没完全明确就开始了,“先做着再说,不行就改”的这种思想充斥着我的大一大二。由于写的东西都是很小的项目,而且也没有什么标准答案、甲方的刁难之类的,所以哪怕做出来的是一坨屎也没啥实际影响就是了。
但是这次不一样,首先是在申报的时候就需要基于这个项目的需求进行方案的设计,并撰写申报书由导师审核,审核通过之后才能动工,这彻底抹杀了我过去的开发习惯,虽然我那时还没有上软件工程这门课,但我还是知道这样做是有意义的、是正确的、也是我应当掌握的。所以我也是借助AI的力量,在期末考试期间急速补全了我对于PY服务端的知识缺失,并决定使用VibeCoding的力量来助力我去完成对于我并不熟悉的后端开发,同时要精心按照一多的三层架构以及MVVM架构去手搓鸿蒙客户端。
计划书中的部分内容当时我还是不太明白,但为了得到这个项目的机会,我还是硬着头皮投了这份方案书。在通过邮件和导师进行了一些沟通以及问题的询问后我有了信心,剩下的只剩等待中选结果了。
开发中的实践
中选后导师没有急着让我去直接开始写代码,而是先进行整体的时间规划设置ddl,这让我来了兴趣,有ddl的开发和无ddl的开发对于我来说完全是不一样的体验。在设计方案估算开发周期的时候说实话是遇到了挺大阻力的,因为我在后端的开发这一块还没有过很深度的实践,对于爬虫的可行性来说我属于是7成以上都是未知的状态。所以我先让AI给我依据正常的开发进度去设置了一个ddl先去逼一逼自己再说,然后找导师确认了一下说是先去写一份详细的计划书还是先去进行可行性验证。导的意见是先去进行可行性验证,如果验证通过我们才能进行下一步的开发,才能更好的规划时间。
开源鸿蒙官网的接口分析进展的比较快也比较顺利,因为其接口并没有设置严密的token验权,也没有进行很多的反扒,我直接通过开发者工具找到了接口也跑通了请求。但CSDN、51CTO的反扒还是比较严苛的,我试着写了几版爬虫但都在跑了一两次后就被ban了。
于是我决定去砍掉过于冗杂的爬虫,转头去实现一下将数据源爬虫接入到后端服务框架并对外提供服务的部分。又发现了单线程服务在爬取时会阻塞并且让客户端长时间等待的情况。于是又开始研究多线程以及对于多线程之间数据冲突的控制问题,避免响应的同时数据发生更新导致数据错误。等等等的问题我就不再列举了。
在实践中学习,用BUG来考试,这套逻辑对我来说异常的适用,其实回望初学编程时会发现也是这样的一个过程。
开发后的测试与结项报告
在开发完后我尽可能全面的玩弄我的软件,去多个设备频繁的请求我的后端,最后确实是发现了不少问题,服务器CPU被打满,客户端退至启动页后无法操作,首次加载无数据等等问题,都是在最后测试阶段发现的,毕竟没有人能确定自己的逻辑是无瑕的,没人能确定自己的代码是完美的,所以测试是必要的。
而对于结项报告。我在开发前本来会以为和原本的申报书内容一模一样,但实际结项开始写的时候才发现这样一次回首重温的机会有多重要。实际落实的技术细节,架构设计以及对于数据源的处理等大量VibeCoding的部分都发生了大幅度的改变,这就是在可行性分析阶段我没能很完善健全的分析整个应用开发过程中可能涉及到的问题,也是我此前对于爬虫编写经验缺失导致的。不过就结果来说还是交上了一份能看的答卷的,更多的时候完成的重要性是远远大于完美的。
上架的尝试
我试图将NowInOpenHarmony上架,做出了很多尝试,首先就是将后端部署到服务器的尝试,这让我第一次实操在Linux上部署docker,拉取webdriver镜像,编写dockerfile,排查CPU占用异常,分析服务器日志等等等后端和运维的活。确实是收获匪浅,但在我想继续向下推进时,中软来了,我想借机完成后续的繁琐事项,于是开始了鸿艺讯的开发。
新项目的孕育
无目标无ddl的开拓性开发
在项目结束之后,我很快就借助AI的力量开始大展宏图,这个项目是我当下最完整,最多遗憾的应用,当初想加入的很多功能其实都没有加入,真正完成的内容仅仅是一个新闻阅读器,最最基本的一个阅读器罢了,其余的东西都没有实现,说实话我是不甘心的。于是我开始去进行进一步的开发。而恰好这个时间iflab开始了ifvibe的训练营,我也参与其中。我借助最新的工具,利用最新的鸿蒙开发skills去拓展着功能,去一步步的“圆梦”。
中软国际带来的上架希望
在子安学长的推荐下,我认识了陈ry老师,老师让我去组一支队伍,本来是说要去打比赛的,结果和中软那边一对接发现实际上是去干一个外包项目相当于,可以帮我们上架,还可以吃到华为2025的那个上架激励的钱。
虽然目标有些变动,但我依旧认为这个是个绝佳的机会把我的NowInOpenHarmony继续完善后上架。我没有选择中软给出的一系列工业流水线垃圾充数软件选题,而是通过交涉最终决定继续开发我的项目。
有了孙妈,zx,萝卜头,dundun的加持助力,那我必然荡平一切障碍啊。
实际开发的困境与工期的紧迫
理想很美好实际操作下来还是有不小的阻力的。
最先到来的就是萝卜头以及dundun在vibecoding上的能力缺失。我本以为他们的水平会很高,结果俩人一个不会用codex一个不会写爬虫,我的天哪,指导他们开始能正常干活废了好几天。结果到结项前两种他们还是没能给我一个可直接部署的docker,有点绝望说实话,急得我都想自己上了。
随后就是工期的紧逼,我们总共只有一个月多一点的时间,我本以为齐心合力能干完,但最后的结果是只有我写的鸿蒙客户端的新增功能成功完成开发,后端磨了一个月也没成功加入任何一个新的数据源。
于此同时,孙妈在干嘛?
我们最初设计的是将我早期的项目鸿小易给接入其中,集成为一个智能AI问答分页的,结果孙妈一直很忙,没开始干,开始干时和中软的人一沟通才发现原来想要上架AI相关功能的应用是需要资质审核的,我们的时间来不及。所以只好砍掉了。幸亏我在提前按照扣子文档搓客户端接口的时候是分了两个单独的静态共享包去做的,要不现在模块拆分还是个比较麻烦的事。
后来在结项前一周时我找到孙妈聊了很久我还能做什么功能的这个问题,孙妈建议去借鉴,去把别家类似产品的好功能都继承过来,于是我开始进一步的去仿照GitHub绿墙制作热力日历,去做跟手弹窗的图文混编文章笔记功能。这两大自己实现的功能说实话确实是让我有了不小的成就感,因为其实现逻辑都不是原有的系统接口,也不是三方库的调用,而是自己实现的显示效果和逻辑,中间为了确保设置项的及时更新还借助全局状态变量自己搭建了一套扳机机制系统。
鸿艺讯最终依托着NowInOpenHarmoy已经成功的后端,仅在客户端上进行了大量新功能的实现,遗憾依旧存在,但我也认清了团队合作项目是会存在太多你意想不到的问题的。
虽然如此我在此还是得感谢兄弟们的支持的,没这个团队我也不会有第二段相对规范完整的开发。
在技术之外
优秀学员申报

在NowInOpenHarmony结项之后我终于是长舒一口气准备简单在精神上gap一段时间,但没想到我的导师很快联系我让我去申报优秀学员的申报,其中有四个选项最佳质量奖、突出贡献奖、最快进步奖、最具潜力奖,我可以任选其一去进行申报。我十分惊喜,这种给自己项目去进行低成本升值的机会我肯定是不会放过的。在正是编写申报文案的之前我先对我自己的内心进行了一番洞察和拷问。我如果拿到了这个奖项我会不会感到心虚,我会不会出现对于自身工作难度、完成度、工作量与这个奖项不相匹配的愧疚。
一方面,这个项目中包含了太多与一开始设想预期不同的落差以及还未能实现的功能。另一方面是,这个项目本身只是一个基础难度的项目,相比于其他需要参考业界先进技术、算法,通过阅读文献编写真正有开拓性的项目相比我的这个只是属于一个很基础的开发,我真的能竞争过吗?这两方面的疑问构成了我对于自身责问的核心。
但很显然这属于是一场无用的内耗。项目中的遗憾只是没有达到我自身心中那个完美的预期,而并不是没有达到这个项目立项之初的开发目标,我很完善的完成了项目结项的要求,我的软件是实打实的经过验收并入了OpenHarmony-SIG的项目仓库的。我的付出让我完全有资格去立足于此,我完全可以大胆的去争取应属于我的荣耀。
我首次参加,项目中包含了大量的VibeCoding成分,同时前期并没有一个真正意义上的十分严谨,可行性分析逻辑自洽的方案设计,整个项目属于是能跑但并不稳定所以我不认我我自己适合申报最佳质量和突出贡献。对于最快进步和最具潜力来说,我感觉其面向的候选人群有些许重合。回首自己的整个开发经历,自己有太多的第一次,遇到的都是些没见过的问题,都是些个人的突破性1尝试,所以我最终决定去申报了最快进步奖。
申报之后
在申报完之后一段很长时间的gap到来,我开始静静的去享受了一段校园生活的悠闲时光,与此同时也去推动了NowInOpenHarmony的文档完善以及鸿易讯项目的开端。这段时间里我并没有很急的去期待着结果,我虽然我已经说服自己去避免内耗,但我仍然对于自己能在一众大佬中拿到优秀营员的称号,所以决定放低期望,将一切作为惊喜去享受。
漫长的时间被开发和游戏填充,一段轻松悠闲又美好的时光让我渐渐淡忘了这件事,直到出现了忘填银行卡号的小插曲出现我才想起了这个奖项,我去邮箱里看了看有没有被遗漏的邮件时才发现我获奖的邮件被自动分类进了垃圾邮件并且已经躺了将近一周了……,啊啊啊啊outlook你罪该万死。
最快进步奖以及金码达人称号以及奖杯递送的地址收集邮件都已落灰,我赶紧去联系组委会,不过幸好一切都来得及,我可以在开源之夏2025年度总结的大会现场领取。
开源之夏年会
12 月的风里,寒意已悄然漫开。抬眼望去,高树的枝桠早已褪尽最后一抹绿意,只剩疏朗的轮廓在天光里舒展,唯有脚下的灌木丛,还执拗地守着一身苍翠。没有盛夏的蝉声扰耳,也没有隆冬的白雪封尘,气温不暖不寒,日子不疾不徐,恰是一个在更迭里缓步前行的时节。而就在这样平稳的日常里,我的心底,正掀起一场翻天覆地的变革。

第一次踏入中国科学院 —— 这座在我心中始终代表着中国科技最高殿堂的地方,内心却异常平静。没有预想中的激动与忐忑,反倒生出一种故地重游般的熟悉感。
步入会场,见到了此前只在线上交流的开源之夏组委会老师们。签到、领取伴手礼、找到自己的名牌落座,目光扫过带着几分古典韵味的礼堂,以及那方刻满岁月痕迹的讲台,内心依旧平静如水。是心性的成长让我学会了自动去魅,学会了以平等的眼光看待他人与周遭,不再轻易给任何人或事镀上光环滤镜,只是静静地去感受,去触摸它们最本真的模样。

会议按部就班地进行着。我坐在台下饶有兴致地听着各位领导讲述开源之夏的过往,以及这次线下年会的来之不易。听着听着,思绪忽然飘回了那个在图书馆复习的午后。
那时期末考试的压力沉甸甸地压在心头,整个人都有些喘不过气。可偏偏就在那样一个焦虑的下午,报名开源之夏的念头毫无预兆地冒了出来。我竟真的顶着压力,用一下午的时间联系了导师,写完了整份申报书。现在想来,这或许就是冥冥之中的缘分吧。
世界本就是个巨大的草台班子,我也不例外。从来没有过什么精密周全的计划,只有一个大致模糊的方向。长期以来,我都在为自身的不足而焦虑,对未来感到迷茫。学长们的建议各有千秋,我只能一遍遍告诉自己:去做,去学,去实践就好。可那时总觉得自己做的一切都像过家家,除了能在学弟学妹面前偶尔炫耀一下,似乎再无其他价值。
直到此刻回首才明白,那时的迷茫,不过是因为我从未见过真实工作的模样,不知道真正的工程级代码该是什么样子。我所拥有的,只是一个模糊不清的目标。而现在,我不想再被这种模糊感裹挟。我要以这次开源之夏的项目经历为跳板,去寻找实习机会,去亲眼看看,真正的工程世界究竟是什么样子。


开源社区
开源运动无疑是推动世界软件产业发展最伟大的力量之一,而开源社区在其中扮演着无可替代的核心角色。近年来,除了维护项目本身的核心使命外,开源社区还悄然承担起了一项愈发重要的社会功能。
如今企业间降本增效的竞争日趋白热化,产品迭代的节奏越来越快。大多数非头部企业不再愿意投入大量时间和资源去培养新人 —— 教大学生如何融入团队、如何进行工程开发、如何高效沟通协作。在他们看来,培养新人不仅短期投入高、回报慢,还随时面临着人才流失的风险。与此同时,高校里的许多课程早已与实际生产脱节,能拥有强大自驱力主动学习的学生寥寥无几。很多人沉浸在大学相对轻松的环境里,如果不主动走出去,便很难意识到自己与行业需求的差距。于是,”企业招不到合适的人,学生找不到满意的工作” 这一看似荒诞的现状,就这样形成了。
而开源社区正在做的,正是主动啃下这块难啃的骨头。它们走进高校,带着那些渴望成长的学生去接触真正的前沿技术,去了解真实的工程实践。这也是孙妈这些年来一直在坚持做的事,我一直跟在他身边,亲身参与其中。那些率先觉醒的学生,为了获得更广阔的平台和资源,主动连接各大开源社区,将社区活动引入校园。他们在丰富自身经历、提升个人影响力的同时,也让企业能够透过社区这个窗口,发现那些真正有能力、值得培养的人才。这套生态体系一旦运转起来,便会形成势不可挡的多方共赢的良性循环。我很庆幸能跟着孙妈,参与到这伟大进程的启动阶段,见证了一个又一个小小的奇迹发生。
我曾试着成为这巨轮的一部分,与它一同向前滚动。但在亲身参与之后我才明白,我并非注定要成为那个推动巨轮的人。我借着开源社区的力量找到了自己的方向,感受到了技术的魅力和开源的热情,但我会在中途下车,走上属于自己的道路。推动巨轮需要的是活动策划者和产品经理的能力,而我,更适合做一个深耕技术的开发者。
活动落幕,手中的证书与奖杯沉甸甸的,既是一份荣誉,更是未来求职面试的底气与筹码。经由这段经历沉淀与觉醒,心境与认知已然蜕变,前路不再迷茫,从明日起,步履清晰,行有方向。










