01
2016年即将进入尾声,不禁感叹,在学校的时候过日子是以天来算,而现在是以星期来算,甚至是月份。
这一年,遇到了很多人,很多事。
机缘巧合,年中去了趟帝都,爬了长城,游了故宫。然而并没有什么唯美的感悟,只是觉得,长城好长,故宫好红。也罢,我只是个简单的人,就不发表什么深刻感想了。
工作方面,算是度过了最艰难的时期,也就是新人期。我发现,不仅仅是我,大部分程序员新人,刚刚踏入这个行业后,就会有一段迷茫期。在这个时期,颇有些手足无措之感,反正就是什么都想学,生怕自己学的东西不够。
然后带着畏惧的心里,把基础知识远远抛在脑后,认为都是些无用的东西,殊不知这些基础,比如JavaSE,Servlet,JSP才是奠定将来上升空间的基石。
我曾经也陷入这个怪圈,认为基础不重要,痴迷于三大框架(SSH),觉得会了框架就是会了Java,因为企业里面都是用框架。
可是自己servlet都不知道怎么回事,就在那写MVC,根本不明白他的内涵。刚参加工作那会,虽然很艰难,但是也能依葫芦画瓢,用各种框架做一个增删改查。
接着就是各种急躁,东打一枪,西打一枪,一会去学maven,一会又去学h5。
看了半天又看不懂,这是最麻烦的事。说到底,我不过是在寻求一些心理安慰,生怕被这个技术潮流劝退。有的时候,我甚至连一个HelloWorld都写不出来,就开始把精力转向另一门技术。
就这样白白浪费了大半年的时间。
02
虽然我很不想承认,但我必须要说,编程这行业,似乎真的有“内力”这种东西。曾经遇到一个大牛,上面安排任务下来,我一看,完了,都是没用过的技术。
诚然,依葫芦画瓢,根据详细的开发文档把功能做出来真的不难,难的是从无到有。这才是真功夫。
尤其是那种网上也找不到任何demo,需要你自己想办法搞出来的东西。
我说,“这个技术比较新,我没做过,你呢?”
他看了一眼,淡淡地道,“我也没做过”。
不过神奇的是,他随便在那捣鼓一下,没多久就把demo做出来了,然后这部分功能也就差不多成了。
我目瞪口呆,问,“你不是没做过吗,怎么这么快就弄出来了?”
他楞了一下,说:“我也不知道,随便瞎捣鼓呗,弄着弄着就出来了。”
我后来反思,为什么同样没有类似的经验,可是他却能很快做出来,而我不能?
正巧这段时间,js和css功底增长迅速,我闲暇时间也会做一些静态页面,或者jquery特效。
当一个问题出现,比如调一个样式,修改js脚本,我总能够随便捣鼓几下就解决了。
这时候我想,为什么半年前让我画一个html简直能要了我的命,而现在闭着眼睛都能快速的调样式?
对比之前那位大牛,我豁然开朗,没有为什么,原因只是我写的多了。
我不得不承认,真的有一种类似于内力的东西。
比如Java,当你遇到的问题多了,解决的手段也就多了,首先心态就不一样。
比如程序出现BUG,新人是这么想的:
“哎呀,怎么又不对了,我到底行不行啊,我会不会被劝退啊?”
“不行,要赶紧解决,不然被别人看到了笑话”(结果越这么想就越解决不了)
“算了,去百度一下吧!”(结果看了十几个链接,都是匆匆瞥了一眼,然而并没有看懂。总是把希望寄托在下一个网页上。)
而老司机是这么想的:
“妈了个鸡蛋糕,劳资干了这么长时间,什么问题没碰到过,还怕了你不成。”
然后随机冷静下来,脑子里飞速运转,开始思考对策,实在不行去网上百度,没多久,总能“神奇地”把问题解决。
03
“内力”这个东西,虽然玄乎,但的确存在。就好像游戏里面打怪升级,你副本刷得多了,哪怕一直打哥布林,也是有经验值可以拿的,升级真的只是时间问题。
很多新人就陷入一个怪圈,认为学得多就是好的,反正不能让自己闲着。这就好比,刚从新手村出来,就世界各地发出战帖,从此东奔西走。结果每次都是力有未逮,仓皇撤退。
结果时间花了不少,经验值却没有多少斩获,宝物宝箱,各种机缘也是难以获得。
因此,还不如先给自己定好位,然后有的放矢,瞄准适合你的副本,多刷几遍。
练习数量,真的是重中之重。
很多人觉得基础不重要,JavaSE才刚刚敲了一个HelloWorld,就立马去学SSH,结果看了半天又看不懂。于是演变为一种不愿意自己思考,一有问题就问,一有问题就问的恶性循环。时间长了,必然遭到同事的反感。
这就好比,为了迅速获得大师成就,你拿着新手村送的木剑,去挑战终级BOSS一样。
造成这种结果的原因,还是对自己的不自信和对这个行业的陌生。
2016年,收获了很多,同时也失去了很多。当年的朋友,因为工作关系和地域原因,一个个渐渐地不再联系。我也遇到不少其他问题,这些磨难反倒令我的心境大为改变,看明白了很多事情。
通过写博客,认识了很多朋友,这一点感觉很好。有人问我,怎么度过进入编程领域后的最艰难时期,我现在觉得,千万不要去到处乱学,先根据你公司里用到的技术,有针对性的去学一些东西。不管怎样,第一步就是先把工作稳定下来,然后,空闲时间再根据具体情况去钻研一下新的技术。
说是这么说,不过就我个人而言,最好还是先研究一下这个叫做“内力”的东西,一个技术点,你即便会了,最好还是要重复练习几遍。
学习Html和js,css的时候,我曾经一直用editplus,因为没有提示,所以所有的代码都是我手动去敲。这虽然很麻烦,但是潜在的,我获得的“经验值”是用先进IDE软件的好几倍。那段时间每天晚上学到凌晨一点钟,后来闭着眼睛都能飞快地写出一行行的css代码了。
哪怕是很简单的案例,也是有经验值的。
这些都是促成你升级的筹码,那些轻视基础,以三大框架以及各种先进技术马首是瞻的新人,未必有你稳扎稳打,一步一步刷副本来的经验值多。
在群里经常有人问我问题,有些问题确实很好,可是大部分问题都太基础了。我仔细思考了一下,这些问题大部分都是因为自己基础不够扎实才导致的,如果基础足够牢固,就不应该存在这些问题。
相反,问这些问题的人,对新技术的认知却远远甩开了我好几条街。好多新名词我听都没有听说过,他们却能娓娓道来。我想这些都是急躁的表现,如果基础都没学会,就想着要去搞什么大数据,立马月薪上万?
这真的不现实啊。
我并没有针对的意思,因为我曾经也是这样,也经历过这种状态,直到在公司里吃了几次瘪,才慢慢把这种急躁的心态放下。
这些急躁的心态,就是因为我的不自信。
技术都是死的,而人是活的。
我建议那些处于迷茫期的朋友们,先静下心来,好好思考一下将来自己到底要从事什么方向,然后有针对性的去钻研。而不是到处去乱学,我已经经历过这种阶段了,但是到头来却发现,这真的只是浪费时间。