前言

这个复盘来的些许突然,起源于一个群里的聊天记录:

yechaoa:我走了太多的弯路

小可爱1:小菜比展开讲讲

小可爱2:小菜比展开讲讲

小可爱n:小菜比说出你的故事

yechaoa:我回忆一下…

本以为三言两语可以讲述清楚,没想到200字也刹不住车,那就水一篇吧。

仅以此记,望后来者顺颂商祺!

背景

时间回到2018年下旬,由于能力比较强(工作不饱和),开始探索新的技术方向。

彼时除Android外,前端和小程序也有涉及,因为主攻Android,当然是紧跟Google的脚步。

所以,当时摆在我面前的有两个选择:

  1. Flutter
  2. Kotlin

为什么选择Flutter

其实没有太复杂的纠结犹豫,几乎很快就决定开始研究Flutter。

当然也有一些因素主导着我,大概以下几个方面:

  1. Kotlin我在2017年下旬接触过一点(Anko不知道还有多少人记得),彼时Google也没有推出「kotlin first」;
  2. 而Flutter虽然还是beta版本,但是很多人还是对其抱有期待的,加上Google背书,总觉得未来可期;
  3. 还有就是我当时对新技术的理解:
  1. Kotlin其实在更早的时间就已经支持Android开发了,只是没有推广而已,在我看来已经不算是「新」 技术了;
  2. 但是Flutter不一样,是一个全新的跨端技术解决方案;
  3. 由于我是小程序第一批开发者(2016内测),并有输出一系列简陋的文章,且阅读量还不错。
  4. 加上基于当时的时间节点,一些自媒体在推「早期红利」,加上小程序给我的错觉,基于当时的认知,我选择了Flutter。

选择Flutter之后

  1. 当时几乎没有什么三方的学习资料,除了官方文档就是源码,也踩了很多坑;
  2. 也输出了一系列简陋的文章,阅读量也还行;
  3. 有出版社联系我出书,也有字节、阿里等大佬抛来橄榄枝;
  4. 后来,在Flutter领域跌跌爬爬了将近一年的时间之后,我又转向了Kotlin,因为中间换过一次工作,然而市面上并没有公司在用Flutter。

我做错了什么

  1. 不清楚Google当时对Flutter未来的规划,以及商业重要性,就开始闷头开搞;
  2. 国内甚至全球开发者对Flutter的看法,我也不是非常清楚;
  3. 高估了Google对Flutter的推广程度,亦或是高估了大家的接受度;
  4. 也低估了微信对于小程序生态建设的决心,产生了错觉;
  5. 对自己未来的规划不够明确清晰。

我收获了什么

  1. 算是掌握了一个新技能吧;
  2. 开拓了眼界,不同的技术有不同的思想;
  3. Flutter状态管理概念,这个比较新奇,彼时ViewModel还并没有出来。

Flutter现状

在JetBrains2021年的年度报告中,Flutter在跨端领域的占比已经是Top 1了,俨然是一颗璀璨的新星了。

但是已经过去3年了,我在错误的时间选择了Flutter,以致于现在毫无建树…

再有人问我如何看待Compose时,希望能从此找到答案…

我的思考

  1. 我接受当时的认知水平,但也确实没有做好调研工作;
  2. 及时止损,当你发现某个技术的热度不高时,要么接受度不够,要么即将被淘汰;
  3. 在一个领域没有持续的深耕,即使你是先行者,但也没有人会记住你;
  4. 学习技术,一定要选择跟当前工作紧密相关的,能给工作带来收益的,一定是优先级最高的,工作之外,止于了解;
  5. 选择大于努力,技术是如此,转行亦是如此,皆如此。

最后

如果大家有类似的经历,或者更好的建议,欢迎评论区补充,让世界充满爱~