移动开发者已失去荣耀,原因如下

部分原因是人工智能列车。但还不止于此。

照片由Christina @ wocintechchat.comUnsplash上拍摄

作为一名资深的移动开发者,我迫切希望了解苹果、安卓以及跨平台生态系统的最新趋势。然而,最近业界发出的信号并不十分令人振奋。

这篇文章并不是关于在最新的 WWDC 或 Google I/O 大会上开发者们被灌输了什么。而是关于当前的趋势如何影响开发者的职业生涯。

移动开发人员的工作正在迅速消失 — 至少这是我从 LinkedIn 搜索中看到的情况。Reddit上也有一条有趣的帖子,由StackOverflow 开发人员调查开发人员数量统计支持:移动开发人员调查的受访者数量从12.45%下降到3.38%

虽然行业领先论坛的结果不能被认为具有足够的反思性,但线上+线下论坛的集体反馈规模太大,不容忽视。

我们是如何走到这一步的:

不到十年前,移动开发是最酷的技术。每家领先的科技公司都在试图征服两个平台:iOS 和 Android。

近五年来,原生和跨平台之间的战争一直很激烈。在此之前,Cordova、Xamarin 和 Titanium 是每个技术经理的热门词汇。这些框架在技术上并不出众,但它们成功地维护了业界最喜欢的“一次开发,随处发布,节省成本”的信念。

同一类别的第二波浪潮以 React Native 和 Flutter 等跨平台框架的形式出现。Facebook 和 Google 称它们为完全原生的。

但是只有每天辛苦工作的程序员才知道,在开发一款具有流畅、高性能和利用性(利用传感器功能——使移动体验更加深入和个性化)的用户体验(智能手机人机交互的最大组成部分)的大型应用程序时,他们有多么不足。

尽管是由 Facebook 和 Google 开发的,但它们的整个成长故事都是由那些必须向大客户推销其开发人员的代理机构传播的。在提供降低开发成本作为价值主张时,他们开始从心底里唱出跨平台的歌。为了增加代理组合,他们还通过开发组件来扩大各自框架的 GitHub 存储库。Facebook 和 Google 的开发人员很高兴看到他们的业余项目蓬勃发展。每个人都很高兴。

事实上,从长远来看,跨平台项目的成本会更高,因为这种方法存在明显的缺点:

  • 仅提供两个平台最常见的特征。
  • 开发人员疲劳(除了 Hello World,开发人员还必须学习本地语言)
  • 开源(因此不承担任何责任)开发。

完全原生的跨平台工具(Unity及其朋友)与忠诚的原生XCode和Eclipse之间也存在有趣的采用战争,尽管根据设计,这场战斗仍然局限于游戏开发。

这些战争是否削弱了移动开发职业?不完全是。但它们肯定分裂了普通开发者对这个行业的看法。新手开发者渴望跳槽并“学习一件事(跨平台) ”,这将是他们进入 IT 行业的单程票,但后来却失望了。老手们保留了经久不衰的东西(C++、Java,以及后来的 Swift、Kotlin),但由于这样或那样的原因,他们经常发现很难在不断摇摇欲坠的市场中竞争。

尤其是那些勒索事件。

是人工智能,还是其他什么?

似乎随着GenAI的到来,关于移动开发的讨论已经被提出。

然而,2017 年,随着剑桥分析公司 (Cambridge Analytica) 丑闻被曝光,移动开发领域的第一张多米诺骨牌倒下了。

西方世界的民主理念与隐私息息相关。未经同意追踪用户成为迄今为止未被承认的罪孽。CA 丑闻引发了全球范围内政府对大型科技公司的攻击。

Facebook 直接处于攻击线之下。谷歌是智能手机市场最大的股东,也是全球知名的雇主和政府服务提供商(GCP、谷歌教育等),它设法争取到了时间。为了遵守规定,它对其广告产品和货币化 SDK 进行了多项更改。收入来源围绕广告的 Android 开发者必须拖延下去,否则就会失去市场。

苹果在隐私方面占据了优势,选择成为掌权者,将广告追踪的权力交到用户手中。Facebook 成为此举的最大受害者。为了支持这一立场,苹果开始将其备受吹捧的订阅模式誉为应用开发的黄金标准。2020 年是苹果开始改进其备受厌恶的订阅 API 支持的第一年。

隐私合规性对移动开发行业产生了前所未有的冲击。独立开发者受到的冲击最大,但公司的发展也放缓了。开发人员原本可以用于创建新框架的时间开始被浪费在与支持和法律专业人士进行无休止的问答、快速修复以及与企业主进行无用讨论上。

与此同时,无代码开发也正在兴起。虽然它的成功还远未得到证实,但它已成为管理讨论的焦点,并成为主流开发的有力竞争者。

一些小型开发公司选择转向无代码/网页开发服务。大公司不再在移动交付方面冒大风险。预算不再流向开源计划。维护商店评级成为新的焦点,而预先开发的功能基本上就足够了。

不要破坏已经运作的东西。不要冒险创造任何令人惊叹的东西,因为我们不知道令人惊叹意味着什么。”成为了新的口头禅。

移动开发者无法应对这种有利于他们的转变。为什么?这引出了我们的下一个观点。

移动开发者的真正力量在哪里?

这一切都归结于什么才是真正优秀的移动开发人员。

优秀开发人员的标准定义(“设计师、编码员、测试员”)并不能完全定义优秀的移动开发人员。

关于“如何成为一名优秀的移动开发人员”,人们几乎没有达成一致意见。移动开发技能与 Web 开发技能几乎没有区别。

一款出色的移动应用不仅需要用户体验和用户界面,还需要巧妙运用智能手机传感器。优秀开发人员的标准定义(“程序设计者、程序员、测试员”)并不能完全定义优秀的移动开发人员。首先,开发人员必须是一名优秀的开发人员,但还远远不够。

必须弄清楚绑定(UI + 数据库 + API)。必须选择适合架构的那个。MVC 够用吗?还是需要视图模型?协调器等固执己见的模式怎么样?

设计的一个缺点是没有经过验证的验证器。一个好的设计的唯一指标是未来的开发人员是否会在现有设计的基础上进行开发,尽管他们的能力和主动性都很强。

在移动开发方面,还必须掌握硬件集成的工作流程。例如蓝牙、加速度计、光传感器、陀螺仪等。这是嵌入式工程师大放异彩的地方。金融科技(Apple 和 Google Pay)增加了另一个维度:NFC。

虽然成功整合所有这些需要付出不小的努力和时间,但从管理/领导的角度来看,它们只是具有相同即插即用接口的简单盒子。尽管移动渗透率更高,体验更佳,但尽管“移动优先”的流行语层出不穷,它仍然是公司 IT 战略中的辅助渠道。

一个像样的移动应用代码库需要一位专门的架构师,但小团队很少能找到这样的架构师。即使是大公司的团队也会因为平台分散而偷工减料。

只有大公司才有能力开发可重复使用的库和框架。当平台巨头随时可能打破一切时,中小型公司的团队没有护城河来证明他们长期的努力是合理的。

与网页不同,网页的伟大程度由个人创造者决定,而移动应用的伟大程度则由平台决定:苹果和谷歌。人机界面指南Material 设计标准引领着行业的期望。

然而,在大多数情况下,它们仍未得到充分展示。这是因为定义优秀应用的标准是在之前没有此类示例存在的情况下创建的。它们的样本大多是开发人员必须在其基础上构建的准系统。

这种设计本质上是简化的,阻碍了许多可能的创新,只有那些受到平台奖励(Android 和 Apple 编辑选择领域)的创新才会不断被复制。

超越标准的出色移动体验是例外(设计师再次发挥了巨大作用)。规则就是成为羊群中的一头绵羊,即使是最出色的移动开发者也必须遵守规则。

如果一个独立的移动开发者向世界展示了他/她可以在基本平台上添加什么内容,那么这些平台甚至会将他/她的作品封为己有,并将其打上自己的烙印。

结论:

人工智能(尤其是 GenAI)正在从其他所有部门吸走资金。尽管知道这是 FOMO,但管理者仍想证明自己没有错过这趟 FOMO 列车。

在移动端 LLM 成为现实之前,移动开发者再次大放异彩的可能性很小。他们必须再次与数据科学家分享荣耀。

当时代繁荣时,所有开发人员都会自然而然地成长,朝着城里最大的收入目标前进。当时代不那么美好但仍然很好时,有能力的开发人员旨在通过创建框架、库和可重用组件来增加他们的影响力。受到顶级开发人员的启发,中低技能开发人员开始提升自己的技能。当他们再也找不到那条路时,他们就会转换领域。他们离开狭窄的溪流(移动开发),开始在大海中畅游,模式如下:

同一平台的所有设备 (Mac、Vision pro) => 跨平台 (iOS + Android) => Web 开发 (+web)。

当情况恶化时,大多数水手都会离开船。船长会留下来。但是当海盗占据上风时,他们也会遭到屠杀。如果船运不错,海盗们就会考虑重建。

入门级开发人员或那些来自边缘领域的开发人员就是这些海盗。他们被雇来充当占位符,让这艘船继续航行,直到经验丰富的开发人员重新发现它。

这就是当今移动开发所面临的情况。它并没有注定要失败。它永远不会。它被入门级和中级开发人员保持在 2015 年的水平。

这些人热衷于通过构建组合应用程序来展示自己的技能,不想购买域名/主机,并且对 500 多个 NPM/Yarn 包感到沮丧。

这些新手能否重新夺回平台?更重要的是,他们是否能找到值得他们热爱创作的领域?唯一的办法就是超越单纯的软件开发,成为硬件+设计的大师。

在耗资巨大的人工智能正在重塑每个人的期望的时代,这种可能性尚不存在。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

先行者-阿佰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值