当前位置:网站首页>【复盘】关于我在错误的时间选错了技术这件事
【复盘】关于我在错误的时间选错了技术这件事
2022-07-24 00:56:00 【yechaoa】
前言
这个复盘来的些许突然,起源于一个群里的聊天记录:
yechaoa:我走了太多的弯路
小可爱1:小菜比展开讲讲
小可爱2:小菜比展开讲讲
…
小可爱n:小菜比说出你的故事
yechaoa:我回忆一下…
本以为三言两语可以讲述清楚,没想到200字也刹不住车,那就水一篇吧。
仅以此记,望后来者顺颂商祺!
背景
时间回到2018年下旬,由于能力比较强(工作不饱和),开始探索新的技术方向。
彼时除Android外,前端和小程序也有涉及,因为主攻Android,当然是紧跟Google的脚步。
所以,当时摆在我面前的有两个选择:
- Flutter
- Kotlin
为什么选择Flutter
其实没有太复杂的纠结犹豫,几乎很快就决定开始研究Flutter。
当然也有一些因素主导着我,大概以下几个方面:
- Kotlin我在2017年下旬接触过一点(Anko不知道还有多少人记得),彼时Google也没有推出「kotlin first」;
- 而Flutter虽然还是beta版本,但是很多人还是对其抱有期待的,加上Google背书,总觉得未来可期;
- 还有就是我当时对新技术的理解:
- Kotlin其实在更早的时间就已经支持Android开发了,只是没有推广而已,在我看来已经不算是「新」 技术了;
- 但是Flutter不一样,是一个全新的跨端技术解决方案;
- 由于我是小程序第一批开发者(2016内测),并有输出一系列简陋的文章,且阅读量还不错。
- 加上基于当时的时间节点,一些自媒体在推「早期红利」,加上小程序给我的错觉,基于当时的认知,我选择了Flutter。
选择Flutter之后
- 当时几乎没有什么三方的学习资料,除了官方文档就是源码,也踩了很多坑;
- 也输出了一系列简陋的文章,阅读量也还行;
- 有出版社联系我出书,也有字节、阿里等大佬抛来橄榄枝;
- 后来,在Flutter领域跌跌爬爬了将近一年的时间之后,我又转向了Kotlin,因为中间换过一次工作,然而市面上并没有公司在用Flutter。
我做错了什么
- 不清楚Google当时对Flutter未来的规划,以及商业重要性,就开始闷头开搞;
- 国内甚至全球开发者对Flutter的看法,我也不是非常清楚;
- 高估了Google对Flutter的推广程度,亦或是高估了大家的接受度;
- 也低估了微信对于小程序生态建设的决心,产生了错觉;
- 对自己未来的规划不够明确清晰。
我收获了什么
- 算是掌握了一个新技能吧;
- 开拓了眼界,不同的技术有不同的思想;
- Flutter状态管理概念,这个比较新奇,彼时ViewModel还并没有出来。
Flutter现状
在JetBrains2021年的年度报告中,Flutter在跨端领域的占比已经是Top 1了,俨然是一颗璀璨的新星了。
但是已经过去3年了,我在错误的时间选择了Flutter,以致于现在毫无建树…
再有人问我如何看待Compose时,希望能从此找到答案…
我的思考
- 我接受当时的认知水平,但也确实没有做好调研工作;
- 及时止损,当你发现某个技术的热度不高时,要么接受度不够,要么即将被淘汰;
- 在一个领域没有持续的深耕,即使你是先行者,但也没有人会记住你;
- 学习技术,一定要选择跟当前工作紧密相关的,能给工作带来收益的,一定是优先级最高的,工作之外,止于了解;
- 选择大于努力,技术是如此,转行亦是如此,皆如此。
最后
如果大家有类似的经历,或者更好的建议,欢迎评论区补充,让世界充满爱~
边栏推荐
- Treatment of particle boundary collision
- Dynamic rip configuration
- JS related knowledge
- Tutorial on the principle and application of database system (046) -- MySQL query (VIII): group by
- [STM32] basic knowledge of serial communication
- Establishment of static route
- Are the top ten securities companies risky and safe to open accounts?
- Introduction to QT (2.1 the first procedure for the beginning of QT)
- VLAN division, automatic allocation of IP to all hosts through DHCP, and communication accessible throughout the network
- How can dbcontext support the migration of different databases in efcore advanced SaaS system
猜你喜欢

Development of main applet for business card traffic near the map

Xilinx FPGA one way clock input two PLLs

Classic examples of C language - use 4 × The matrix displays all integers from 1 to 16 and calculates the sum of each row, column, and diagonal

postman测试接口在URL配置正确的情况下出现404或者500错误

Idea hot deployment (hot load)

Image processing 1:rgb888_ YCbCr444

1000个Okaleido Tiger首发上线Binance NFT,引发抢购热潮

入职3个月的测试员面临转正,领导:1年工作经验包装成5年,试用期淘汰

Bert article translation

網絡系統實驗:ping不通的問題解决
随机推荐
Communication module sorting (II) hc-05
How to use mitmproxy to get data return in automated testing?
暑假第四周总结
1000个Okaleido Tiger首发上线Binance NFT,引发抢购热潮
Solve the problem that MySQL inserts Chinese garbled code into the table
[QNX Hypervisor 2.2用户手册]9 VM配置参考
Sparksql design and introduction, 220722,
What is the function of the select... For UPDATE statement? Can you lock tables or rows?
EFCore高级Saas系统下单DbContext如何支持不同数据库的迁移
Notes and Thoughts on the red dust of the sky (VI) due to lack
Focus on microservices
About redis: there is still a risk of data loss after redis sets data persistence
【Flyway 介绍】
[data mining engineer - written examination] Haier company in 2022
Accelerating matrix vector multiplication of special matrices with FFT
Classic example of C language - loan balance
Tutorial on principles and applications of database system (043) -- MySQL query (V): Sorting Query Results
The winverifytrust call returned 80096005 error. The timestamp signature or certificate cannot be verified or is damaged
Notes and Reflections on the red dust of the sky (V) strong culture and weak culture
Starfish OS: create a new paradigm of the meta universe with reality as the link