今天分享下在23期群的聊天记录,关于做项目正确的思维,自己曾经走过一些弯路,希望大家能Get到。
做项目,一定要从学生思维里跳出来。
1.学生思维就是前期就想每个细节都要搞懂,感觉才能往下,其实像lora,蓝牙这种,涉及的东西太多了,别说新手,哪怕工作多年,也不可能把每个细节都搞懂,产品做出来,里面很多细节不懂,都是常态,类似的技术栈还有很多,要提前适应,爱钻牛角尖,对新手的学习,是致命的。
给大家说个自己的经历,刚毕业,我去到一家公司做刷卡器,踩了1个大坑。
通讯协议涉及到CRC16的校验算法,当时没经验,我以为要自己去把这个算法代码写出来,还研究了很多数学公式。
耗费半个月以上,还是一点头绪都没有,后面发现,TM的网上原来有现成代码,直接用就行了,后面问了下研发部经理,他说都是直接拿现成代码用的呀。
就这么一个校验算法,产品又不常用,就耗费了半个月以上,如果每个细节搞明白再去做,那等产品出来,估计公司都倒闭了。
2.没完全搞懂,不代表会影响做产品,任何单片机、功能芯片、模块,都只当做工具,我们首先要做的,就是先找有没有现成的资源或代码,官方提供的代码和数据手册,相当于工具使用说明书,只要知道调用那些东西,能把功能用起来就够了。
3.工程师的核心能力还是产品架构设计,可靠性设计,编程思维,代码水平,这些没说明书,也没参考的,只能靠不断做项目积累,领悟,举一反三,融会贯通,越早意识到,越早针对性锻炼,越领先于别人。
4.不要和自己杠,为什么我学不懂这玩意,是不是我傻逼?有些东西,不是你这个阶段能够理解得了的,一个项目没做过的,和做了几十个项目的人,同时去学习RTOS,他们的效率和理解的东西,完全不在一个层面上。
5.正确的阶段,做正确的事,在新手阶段,哪怕你只会复制粘贴,能把项目功能做出来,也能学到不少东西,接下来就是举一反三带着思考去学习,为什么别人要这样做?我那样做试试?随着经验积累,你会发现,原来你理解不了的东西,现在恍然大悟。