当一朵花选择盛开:鸿蒙开发者的个人史诗
当一个鸿蒙开发者决定用代码“种花”。
坐在电脑前,李尚儒紧盯着屏幕,他突然发现了一个熟悉的应用界面。出现在了余承东背后的PPT上——他在今年5月上线的鸿蒙原生应用“每日咖啡”的画面,在原生鸿蒙之夜暨新产品发布会上被展示于众。
他赶紧把这一幕截图转发到了开发者们的群聊。他很开心,应用出现在发布会的PPT上,这是对开发者的最好奖赏。他想,“这一切都是值得的”。
2024年10月22日,在深圳迟迟没有落幕的夏夜,常务董事余承东的介绍下,被称为纯血鸿蒙的HarmonyOS NEXT终于亮相世人面前。聚光灯下,余承东用响亮的声音向在座的所有人宣布:“鸿蒙用10年走过国外同行30年的路,实现了完全自主的原生系统开发!”
掌声和欢呼声此起彼落。从初版“鸿蒙OS”发布到今年,五年过去,一个强大的系统已经建立,更来之不易的是,繁荣的生态也逐渐形成——今年的原生鸿蒙之夜上,余承东介绍,鸿蒙生态已经支持了超15000的应用和元服务,远远超出华为的原定目标和人们的想象。如果每个应用和开发者是一朵花,那么眼前就是花海遍野。
原生鸿蒙之夜暨华为全场景新品发布会
这是关于奇迹的故事——是个体和整体互相助力交织的最大成果,是无数火光聚集后的灼热蔓延。今天,像李尚儒这样的鸿蒙开发者已数以万计。他们在间歇不断的质疑声中选择加入,克服困难开发,到持续为系统和生态创造价值,最终缔造了今天的鸿蒙。
五年来,开发者们为何选择了鸿蒙,为鸿蒙带来什么,又因鸿蒙而获得了什么?
放弃安卓选择鸿蒙,
用两周登上发布会的独立开发者
李尚儒是最早关注鸿蒙的一批独立开发者。
2019年,兴趣使然,法律专业的李尚儒决定学习编程。面对每天都在打交道的手机应用,他很好奇,“我是不是也可以做一个应用出来使用?”他开始尝试成为一名独立的安卓开发者。
也就是那年,这名新手开发者收看了华为HDC(开发者大会),并被那年发布的鸿蒙勾勒的图景吸引了——作为一个全新的系统,他认为鸿蒙有机会从根本上解决安卓系统老生态过于臃肿的问题,对这个新手开发者来说,“如果这个生态真的做成了,那就意味着一个新的蓝海!”这是个颇具商业和技术吸引力的发展场域。
2019年的华为HDC振奋了许多开发者,但那还像是一个美丽的梦。许多人选择继续观望。当时市场上主流的操作系统是经发展已久的IOS和安卓,鸿蒙只是个还未成熟的系统。而最引人担忧的是几近荒芜的生态,想要短时间内达到其他两家操作系统生态的丰富性难度极大。人们想象、好奇也怀疑,鸿蒙是一个值得进军的市场吗?
鸿蒙几乎每一年都给予开发者们更多的信心。2020年12月,鸿蒙2.0手机开发者Beta版发布,新大陆随时迎接开拓者的到来,有人步伐坚定地奔向蓝海。
2021年,李尚儒已经在安卓系统做出了好几个应用,同时,他关注到鸿蒙堪称飞速的发展。他对华为建设生态的能力一直很信任,认为华为的操作系统和其他品牌相比更加完整,有丰富的系统功能、账号支付系统、开发社区,和官方的对话也更直接更有效率,有利于开发者打磨产品。
“无论从技术还是市场上看,我认为鸿蒙都是有前途的”。那年,他开始尝试用Java语言进行鸿蒙的应用开发。那时,李尚儒在安卓已经有几款稳定盈利的项目了,但他依然觉得,作为开发者要持续向前,就不能守在“旧大陆”。此后,他一边兼顾着安卓应用的维护,一边富有热情地探索鸿蒙。
李尚儒在HarmonyOS NEXT立牌前合影
改变命运的机会正在悄然来到勇敢者的身边。今年年初,鸿蒙发布了关于HarmonyOS创新赛的信息,李尚儒看到,参赛者只要申请这一赛事,就可以抢先体验“单框架鸿蒙”(当时还未发布的鸿蒙5.0),这对开发者的吸引力堪比巨额奖金,体验单框架鸿蒙,意味着更早一步登上新大陆。李尚儒不愿错过这次机会。
为了参加比赛,他考察市场上的应用,发现健康管理的应用很受欢迎,而咖啡文化的流行,让他产生了开发一款服务于咖啡爱好者的健康应用。他只花了两周时间,就把原生鸿蒙应用“每日咖啡”做了出来。“每日咖啡”通过记录用户的咖啡饮用行为,估算体内咖啡因含量,提醒用户调整摄入量,以避免对睡眠或精神产生负面影响。李尚儒一直希望自己的产品能够做到“细节满满”,而鸿蒙系统天然对动画的简洁设计,让他更专注于优化用户体验。
“与安卓相比,鸿蒙的动画开发更加直观,也更符合开发者的直觉。”李尚儒说道。正是这种简洁和直观,使他能够在短时间内将“每日咖啡”打造得既小巧精致,又充满创意。
鸿蒙的开发者,是勇敢的开发者。无论出于对技术、商业甚至就是纯粹的好奇心,开发者们都带着勇气向前。这是一场未来的投资。没人知道未来会发生什么,但勇敢者有自己的答案。
最终,他凭借“每日咖啡”走到了决赛,并获得了“最具社会价值奖”。被宣布得奖的那一刻,他的心脏跳得很快:“无论有没有这个奖项,我已经是一个坚定的鸿蒙开发者”。
“死磕”算法还开源,
大四小白终夺冠军
“困难非常大,其实我都在想当时是怎么坚持下来的。”再回忆起“便单”的开发过程,周哲宇说。
在投身鸿蒙的开发者里,不乏校园开发者的身影。2022年10月,周哲宇在软件工程专业读大三,是一名忠实的“花粉”。那年,他在使用手机里的待办清单应用时,怎么看怎么都觉得不实用——比如在智能穿戴设备上没办法很好地同步数据。
当时,这位充满好奇心的入门级开发者经常在华为的开发者社区上闲逛,他发现华为官方已经为开发者们提供了鸿蒙开发的代码清单和详细的教程,周哲宇想,“其实做一个鸿蒙的应用门槛并不高,为什么好的作品不多呢?”
也正是那年,他萌生了在鸿蒙上开发应用,并参加鸿蒙为开发者们举办的赛事的想法。一年前,他看到了鸿蒙举办过的HarmonyOS创新赛,作为一个面向开发者的公开赛事,为获奖者提供了丰厚的奖金。因此,他很快组建了一个只有3个人的项目团队,将项目取名为“便单”——待办清单类的应用,开始了这场有些理想色彩的创业。
但作为一名开发小白,在一个全新系统开发出第一款自己的应用并不容易。
决定开发的一个月后,周哲宇和团队就把“便单”全部推翻重做。当时他们发现,团队使用的是一个过时版本,系统接口(API)版本较低,而这一版本差异导致了开发中出现了各种各样的技术问题。那时,基础demo已经完成了,但开发语言用的还是JS,周哲宇决心,要做就做“纯鸿蒙”的产品,他和团队讨论后决定彻底转用ArkTS(鸿蒙生态的开发语言),重头再来。
“鸿蒙化”的内涵不仅仅是推动产品上线,也是在最大化应用在鸿蒙系统和生态下的创造力。周哲宇也始终在想,“如果我是用户,我会想要一个什么样的应用”,他从最初就已经决心便条必须是能够部署在多个终端的应用,因为要利用一次开发、多端部署的特点,甚至他也考虑到应用对折叠屏的适配,让用户能在不同的屏幕尺寸下都能够获得流畅的产品体验。但鸿蒙支持的分布式能力还有限,提供的分布式数据库功能并不能直接满足需求。
为了解决这一问题,团队自行设计了一种传输算法,将关系型数据库数据压缩后传输到键值型数据库中,完成数据同步。研发过程颇为艰难,他用了将近一个月,最终将这一难题攻克。“如果不做,那将毫无意义,毕竟我都用鸿蒙了,不做分布式就挺没劲的”。他形容自己在“死磕”——一种鸿蒙的开发者特质。也是倚靠着这样的特质,便单逐步开发完善。周哲宇完成自己编写的传输算法后,将其开源推广。如今,已经有许多开发者用着这个方法同步数据。周哲宇认同开源的精神。“保护开发者的成果,和分享技术资源,是开发者文化重要的两个部分”。
开发者们迎接挑战的决心得到了回报。2023年5月,“便单”基本定型。3个月后,周哲宇和团队靠着“便单”在2023年的极客马拉松大赛中获得了三等奖。那之后,他和团队成员又将“便单”的第二个版本(基于API9)全部开源。
尽管周哲宇尝过胜果,但他也曾想放弃。比赛获奖之后,周哲宇曾经短暂失落过。尽管当时,便单在应用市场上线,获得了3万多的用户,但缺乏商业化,也缺乏发展计划,这个校园开发者一下子失去了维护运营的理由。
好在有华为团队也在探索的路上为开发者们照明前路。当时,华为的运营人员主动找到周哲宇,推荐他参加继续编写便单,参加23年年末的OpenHarmony应用创新赛。周哲宇答应了。