初识开源之夏
结缘 NebulaGraph
Hello,⼤家好,我叫刘⽂豪。⽬前是⼀名计算机专业的研⼆钻研⽣,就读于北京邮电⼤学。我很⾼兴能参加到这次的开源之夏项⽬中,加⼊到了 NebulaGraph 的社区建设中,并胜利实现了可视化⼤屏项⽬的实现。
说起与开源之夏结缘,须要归功于我的好敌人男哥,他是我实验室的同⻔,在研⼀的时候给予了我很多帮忙。他是⼀名技术控,对数据库、云原⽣、传统前后端开发等各个领域都有涉猎,在本次开源之夏的流动中参加了 KubeVela 社区的项⽬,获得了丰硕的成绩。在往年上半年北京疫情冲击下,咱们北邮经验了⼀段封校的⽇⼦,在百⽆聊赖之际,男哥向咱们举荐了本次开源之夏的流动,成为了我开源之夏的引路⼈。
在选取开源之夏的项⽬时,我依据⾃身特点进⾏思考——我研⼀时接⼿了实验室⼀个国家级项⽬的前端局部。在开发迭代过程中,与负责后端的男哥有许多交换。我过后认为⾃⼰对前端⽅向的⼯程化实现更感兴趣⼀些,也⾃学了很多前端畛域的常识。但前端⽅向的特点是芜杂,加上国内前端⽣态建设良莠不⻬,很容易让⼈摸不清努⼒的⽅向。如果能找到⾏业内从业多年的⾼⼿亲⾃领导,将事倍功半。抱着试⼀试的态度,我被动分割了我的导师汪洋,浏览运⾏了 NebulaGraph Dashboard 的项⽬,甚⾄还发现了⼀个⼩ bug,提了⾃⼰在 GitHub 上的第⼀个 PR。
介绍下这是我的导师
汪哥给我的初印象是⽐较平易近⼈,⽽且反馈很快,不是那种⾼⾼在上的导师,可能亲⾃领导⼀些技术上 Google 不到的具体问题。在认真考量对⽐之后(导师汪洋通过了考核🎉),我抉择了 NebulaGraph 社区的可视化⼤屏实现的项⽬。
很多同学可能会认为,谋求名字看上去“⾼⼤上”的项⽬才是正确的。⽽我认为,⽆论是怎么的项⽬,能落地才是最重要的。
我认为⼀个项⽬是否胜利落地次要取决于两点:
- 项⽬自身是否具备可⾏性;
- 参加项⽬的⼈是否靠谱。
这两点也在最终敲定项⽬⼈选的⾯试时,双⽅达成了⼀致。
“辛”而不酸的我的项目史
这可是可视化大屏
可视化大屏项⽬旨在帮忙运维⼈员更直观、便捷地感知零碎内的各项要害指标,设计出 NebulaGraph Dashboard 的 Community 版可视化⼤屏。
整个项⽬流程波及 需要剖析 、 原型设计 、 代码实现 、 合⼊仓库 等残缺的软件开发流程,深⼊体验了企业外部产品的上线、开发流程。
在整个开发流程中,代码施行只是其中的⼀局部。导师汪洋思考到⼯作量较⼤,尤其是起步的需要剖析和原型设计局部,冀望更多的开源⼒量加⼊本次项⽬开发中。这不是巧了,来⾃美国的宇晴⼩姐姐对这个可视化我的项目也很感兴趣,通过协商沟通,宇晴⼩姐姐也参加到了咱们的项⽬开发中,咱们组成了三⼈的开发⼩团队。
在起步阶段,咱们做了具体的调研,仔细阅读导师汪洋提供的资料,敲定了设计蓝图、开发语⾔、框架、环境。咱们抉择从新设计仪表盘的整体布局,在打包⼯具的抉择上,咱们⽤ Vite 搭建了新的开发环境,没有使⽤旧的 Webpack 开发环境,提⾼了开发效率。
在具体的代码施行阶段,因为我跟宇晴的跨时区因素,体验了⼀下近年很⽕的跨国团队的近程合作⽅式——⼤家在项⽬沟通群中提出问题,明确各⾃的分⼯,采⽤“接⼒式”的开发模式,别离在各⾃时区的⼯作工夫,在 NebulaGraph 社区提供的开发机上进⾏代码编写。咱们也常常会在群⾥提前磋商工夫,来进⾏⼩组组会,确保项⽬的顺利推动。⼩组组会的模式和内容,也随着项⽬开发阶段的深⼊,一直地在做调整适应,做到了灵活性和有效性的统⼀。
开源之旅不停
尽管可视化大屏是一个开源之夏的我的项目,我的项目总有结项之日。然而,开源之旅不停,后续我将会从以下方面持续走我的开源之路:
- 优化 UI 设计、晋升代码品质
- 更多参加开源社区的建设中
在开源之夏感触开源的魅力
本次流动,我亲自领会了 NebulaGraph 社区敌对的开源气氛。
而我认为 开源社区的魅⼒在于,它不仅只为代码⾼⼿凋谢,还欢送刚⼊⻔的⼩⽩。我在参加到 NebulaGraph 的社区前,并没有从零开始残缺地搭建过⼀个⼤型的前端项⽬,不足对所学前端常识的整合。
⽽宇晴⼩姐姐是转码选⼿,往年还⾯临着严厉的应聘局势。咱们在整个项⽬开发过程中,互帮互助,互相⿎励,不仅攻克了⼀个个具体的问题,更播种了信⼼和彼此之间的友情。这⼀切的本源在于,咱们怯懦地迈出了最重要的第⼀步,抉择被动参加到开源之夏的流动中,并且幸运地加⼊到了 NebulaGraph 社区。在 NebulaGraph 社区,⽆论是负责技术的汪哥,还是负责经营的迷⼈的⼩姐姐,都向咱们展现出了他们踊跃、宽容、耐⼼的敌对开源气氛,帮忙咱们顺利完成了第⼀步的开源之路。
在开源中晋升自我
很显著的是 能⼒晋升,在整个项⽬的开发过程中,咱们各⽅⾯能⼒都有所晋升,具体体现在以下两点:
技术和⽂档能⼒
我的调研技术⽅案、学习技术细节、应⽤技术解决具体问题的效率失去了显著提⾼。在实践中,⼀步步利⽤所学的系统的技术常识,孕育出了残缺的产品出现。
开源之夏的官⽅组须要提供结项报告等书⾯资料,咱们没有草草了事,⽽是抉择了使⽤全英⽂的书写模式 ,认真地实现了组委会的要求。我认为 ⽆论是为了社区层⾯的与国内开源社区接轨的须要,还是为了个⼈层⾯的⻓期职业倒退的考量,抉择被动晋升英⽂技术⽂档的能⼒,都是必要且正确的。
纵观前端倒退的历史,⽆论是之前的 Flash、jQuery,还是现在的 Vue、React,都只是各个期间流⾏的代表技术⽅案。⽆论它们的设计如许精美,代码如许标准,终有⼀天会被淘汰。把握了对它们的使⽤,仅仅是达到了纯熟运⽤“术”的⼯具层⾯。近年,前端各畛域倒退迅速,各种技术⽅案层出不穷,常常会有⼈调侃“学不动了”。我也在刚⼊⻔的初期,陷⼊了努⼒⽅向的误区,以尝试各种陈腐的技术⽅案作为次要趣味驱动点。随着项⽬的深⼊进⾏,我逐步摸清了作为“道”的能⼒层⾯。我晓得了作为职业⽣涯初期的菜⻦选⼿,应该着重养成良好的职业态度和职业习惯,⽽不是⼀味沉迷于浅显地理解各种技术实现⽅案。加上⼤环境⻛云渐变,对应届⽣待业趋势越发地不敌对。如果只是将⾃⼰造就成专一“术”的技术纯熟⼯,⽽不是关注“道”的技术爱好者,也将丢失⾃⼰作为应届⽣的劣势。
沟通和合作能⼒
在项⽬开发的过程中,如何进⾏无效的沟通和合作成为了⼀个很重要的议题,尤其是在社会分⼯⽇益精细化的今⽇。咱们三⼈⼩团队均是拿出⾃⼰的业余时间来参加到项⽬中,对于沟通合作⽅式、各⾃工夫安顿上,都进⾏了屡次的探讨和改良。开源对少数人来说是⼀项业余爱好的工作,很少有⼈可能全职从事其中。⽽能有机会在职业⽣涯未正式开始之前,就参加到有公司导师牵头的开源项⽬中,也算是⼀⼤幸事,心愿能为⾃⼰将来的团队合作能⼒奠定⼀个良好的根底。
开源之外的友情
感激开源之夏官⽅提供这次机会,让我有机会接触到 NebulaGraph 社区,意识了经营⼩姐姐、汪哥和宇晴。我认为任何东⻄想要做成,关键在于“⼈”的局部。有优良的⼈才,就会有良好的气氛,就能孕育出有意思的产品。我跟汪哥、宇晴的三⼈⼩群,也逐步成为了⽆话不谈的地⽅。尽管咱们三⼈背景、身份各异,但产⽣了⾮常良好的化学反应。心愿在当前的⽇⼦⾥,⼤家可能铭刻这段有意思的经验,砥砺前⾏,奋发向上。
在这个不确定性⼤⼤减少的时代⾥,努⼒制作⼀些确定的⼩舒适。心愿⼤家之后持续为 Nebula 和其余开源社区添砖加瓦,奉献⾃⼰的⼒量,独特缔造⼀种良好的气氛,照亮⼀束光,指引后退的⽅向。
谢谢你读完本文 (///▽///)
想来近距离体验可视化大屏的酷炫晦涩吗?当初能够用用 NebulaGraph Cloud 来搭建本人的图数据系统,搭载可视化监控大屏轻松搞定线上业务吧~ NebulaGraph 阿里云计算巢现 30 天收费应用中,点击链接来用用图数据库吧~
想看源码的小伙伴能够返回 GitHub 浏览、应用、(^з^)-☆ star 它 -> GitHub;和其余的 NebulaGraph 用户一起交换图数据库技术和利用技能,留下「你的名片」一起游玩呢~