前言
自大学里接触编程开始, 就对计算机产生了浓厚的兴趣, 自己平常玩的游戏, 用的软件它们背后的原理竟然离自己如此
之近, 也终于明白了但是在我爸的手机上玩游戏看到的那一杯咖啡原来是一门语言(一直以为是某个游戏公司的图标).
大学
大学里学习的第一门语言是C++
(课程大概只会讲解到基本语法, 到类那一节就差不多了), 当我天真的以为我只要学完了这门课我就可以做出一个像样的游戏的时候, 我发现我的运行界面永远只有一个大黑框(Dos), 里面滚动着字符, 和我想象的相差的甚远, 萌生退意, 怀疑自己被欺骗.
大二课程开设了Java
, 这个我在大一的寒暑假就已经自己学完了, 但是看得黑马的Java教程, 上课时候老师发现我都知道, 就带我去了实验室, 就是这个契机, 打开了我移动端的大门.
在实验室有学长是做Android开发的, 这也是我看到编完代码能直接在界面上体现, 直观看到的, 然后我就一发不可收拾, 立即进行了学习.
期间和三个学长以及三个同级的同学一起做了个外面的项目, 每个人大概分了小一万, 这个项目给了我迷之自信, 让我觉得自己很牛逼(其实就是个菜鸡), 后面的时间就开始乱学了, 时不时看看Python, 看看Java什么的, 这样做的结果就是找工作的艰难.
工作
毕业那会是2017年, 赶上了移动端开发供不应求的时期, 自然找工作也变得困难起来, 自己也变得着急, 每天在网上看招聘要求, 看哪个岗位招的人多(想转到这个方向上去), 期间捡起了大学学的 Java
, 花了一周看 SSH
框架, 就迫不及待的改了一份简历去投, 这个都不用想, 自然是没戏的, 最后在呼和浩特找到第一份iOS
工作, 正式开始了我的工作生涯.
每天的工作完成后, 就开始思考"人生方向"
, 我要怎么才能实现自己的"人生目标"
, 就这样, 我接触到了 AI, 但是一听这名字就牛逼, 然后查找资料, AI 迟早要替代我们这一群码农, 然后被一些文章给各种"洗脑"
, 赶紧给身边的人安利, 然后一起学了起来, 为了表示自己有志向走到人工智能的方向了, 报了一堆网课(这里防止打广告的嫌疑, 我就不说名字了), 通过网课入门, 然后自己去研究各个算法背后的数学知识, 不会就开始补, 当网课成功毕业, 我自以为成功踏入了AI 领域, 带着自信来到杭州寻找 AI 相关的工作, 那真是一段惨烈的面试啊
, 被各种问住, 业务不懂, 实际工业项目没有, 论文没有, 只知道一些算法原理和推导...结局肯定还是失败告终.
最后是找了一个做 Python 的公司, 被叫去后端业务了, 这样, 我就学的更杂了(期间我还抱有自信能走 AI, 还花了相当多的时间去学习, 看cs224等公开课, 读论文等).
我彻底醒悟过来是在最近几个面试, 面试官的提醒和引导, 我终于意识到我一直以来的问题(方向不明确, 学习不够深入), 开始正视自己, 明白自己下一步应该做什么了.
总结
现在回顾整个过程, 我一直在变换自己的方向, 跟着潮流到处乱跑, 最自己的认知不到位, 最后都学的不够深, 知其然不知其所以然, 只知道这样用, 却不知道为什么要这样用, 这也是我面试失败比较主要的一个原因.
现在, 我决定优先将 iOS
学好, 然后在去横向拓展, 去学习其他的知识, 否则我还是一样, 没有核心竞争力.
下一步的学习:
- 善于总结和思考, 做完一个东西后多去想想是否还有其他方案实现, 为什么要选择这个方案, 而不是简单的做完就完事了.
- 多了解背后的原理, 去了解为什么要这么用
- 多读源码, 学习他人的设计模式以及技巧.
- 多分享, 将知识输出也是检验自己是否掌握的标准.