前言
写这篇文章的主要的原因是什么呢?主要是想到了自己是怎么从一个工科专业然后转行来做到计算机专业,这中间的酸甜苦辣,人间疾苦想分享给大家,以及学习了编程之后我的世界观、价值观的变化,希望能与大家产生共勉。
我的编程之路
作为一个从农村出来,家住四川,自然就来到天府之都——成都,开始了我的大学生涯,然而当时在那落后的农村,完全没得啥远见,也没有高人指点的,自己又没得啥高瞻远瞩,最终阴差阳错的就选择了个机械电子工程专业。
这里并没有说这个专业不好,只是自己学的不好,大学的生活是那么的丰富多彩。这里的丰富多彩是丰富多彩的玩,平时上课选修课必逃,必修课选逃,那么这些时间都拿去干嘛了呢?打游戏、打球、睡觉、出去嗨。提到打游戏必然是当时最火的游戏LOL了,回想起来大学里面的大好时光都荒废在了LOL上面了,真是LOL害人不浅(但是这就是青春嘛,总要挥霍那么些时间,你回头想起来才知道时间的宝贵),所以即使是这样,我也不会后悔上大学。
晃眼,时间流逝飞快,大学四年就那么完了,感觉自己是虚度了这四年,什么东西没学到就要参加工作了。最终毕业的时候找了个工作在一个电子厂里面上班,现在回想一下,我才觉得可能这才是我人生过得最颓废,最无知,最惨淡的一段工作经历。为什么这么说呢?可能在电子厂里面上过班的伙伴应该都知道,那种上班的日子是早进晚出,无法看到太阳(夸张了点);早上太阳刚刚升起你就进入工厂,然后就是暗无天日工作,直到加班到8、9点再下班出来,此时太阳已经落山了。在流水线上做着重复没有技术的工作,靠着加班才能多挣点钱,让自己过得好一点。
为什么说我毫不犹豫的辞职呢?因为我连我辞职了要做什么?想做什么?想过上什么样的生活我自己都不清楚,对未来充满了迷茫、疑惑,完全可以说是一条在大海中心一艘船,不知道我应该往哪里划,会遇到的下一个小岛是什么?下一个小岛会不会就是我驻足的地方。就是在这样一种状态下辞职,迎来的是我父母的说词,放着每个月固定的几千块的收入不要,要辞职换工作,而且还没有一点目标。对于农村来讲,每个月固定的几千块的收入,他们还是比较满意的了。但是我父母好在只是说说而已,但是我做什么他们都是比较支持我的。
辞职后还是选择了投大学相关专业的工作,毕竟读了4年的专业还是不忍心就丢弃了。但是投了简历之后才发现,既不是应届生而且还没有工作经验,根本没有人要,2个月过去了,依然没有找到。心灰意冷,然后就想着干脆学计算机,因为有朋友在做这一行,收入不错,工作环境又好,当时想的重点是大学还考了全国计算机VB 2级证书,后来还看过些C语言,尽管当时已经忘记完了,但是对程序还是挺感兴趣的,用程序实现某种功能,那种成就感还是很吸引我的,萌芽了这个想法之后,当即是想的自学,当然是失败的;自己买了些书,看了些视频,但是并没有什么效果;于是就多番的打听、了解了之后,最后选择了去培训机构学习,学习的什么呢?因为我一直都觉得写出界面展示出各种炫酷的效果,是非常有趣的事情,Android当时还比较火然后就选择了Android编程学习之路,至此我就走上了我的编程之路。
对我来说这相当于一个新的起点,中间的学习过程也是必然辛苦的,可以堪比读高中一样的学习,累但是内心充实着。 可能会有很多人会看不起培训机构出来的,但是我还是要说我就是培训机构出来的,我相信我慢慢的脚踏实地的一步一步的走,终会成功得到认可。从培训出来到现在已经2年多了,先后在三家公司待过,虽然三家公司都是小公司,但是自己的进步和成长还是看的见的。
联想到自己的过去,忍不住话就有点多,说的有点长了。也算是自己对以前的一些回顾和感想,请原谅我话多。通过上面的铺垫,我就来说说编程给我带了什么好处?
编程带给我的好处?
1.思维方式的改变
乔布斯说过:「每个人都应该学习编程,因为它教会你思考的方式」我们学习编程,是不一定要成为程序员的。就像每个人都应该学习法律,但不是都要成为律师;就像每个人都应该学习经济学,但不是必须成为经济学家;就像每个人都要学习数学,也不是为了成为数学家。
思维改变归结为一条就是:不能够忍受不清晰的表述。不清晰的表述包括:指代或个体不清晰,逻辑/推断不清晰,表达结构不清晰。
例如: 比如如果某组员报告进度时说:“他们。。。” 我肯定会想:“他们是谁?” 比如有人发邮件指出“旧版本不支持”,我肯定会想“你是指xxx.x号版本及以前吗?“ 比如有人报告“发生了A事件,我们进行了B操作”我肯定会想“你是说A是你进行B的理由吗?” 比如开会时有人跑题,我肯定会想立刻把他拉回来。跑一次拉一次,跑一次拉一次,直到他不讲话为止。
2.专注力和细心度
我相信每个程序员的专注力和细心度,那都是被锻炼出来的。你是不是遇到过一个字母大小写原因,然后排错一下午,最后恍然大悟的发现就是一个字母大小写问题。还有很多的这种原本是个很小的问题,但是对于程序员来说都是大问题。写程序是不能得过且过,敷衍了事,马虎行事,避免当一个差不多先生。
3.整理信息和融会贯通
整理信息和融会贯通应该是我们每个程序猿必备的能力;我相信程序猿都会遇到BUG,都会遇到技术难点。那么这个时候我们是怎么去克服这些困难的呢?可能通常会先百度,然后翻墙Google,或者是去看官方文档等等手段去获取整理信息,然后通过这些信息我们去融会贯通,解决问题、技术难点等等。
5.认知的改变
说到认知的改变,这个可能有很多的人和我不一样。我之前说过我来自农村,偏僻的地方,什么都比较落后,大学那会儿也是虚度过去,虽然增加了一些知识面,但是还是太为狭窄。学编程前后生活圈,知识圈,交际圈如果用比喻来说的话井底之蛙也不为过。学习编程之前,生活圈估计就是些同学,家人和同事;知识圈指的是我们在上网查询、了解学习新技术或者新的能力方面,以前估计就只是局限在国内;交际圈那么和生活圈就是一模一样没有变化。学习编程之后,可以说是发生了翻天覆地的变化,生活圈、交际圈可能就不局限在了身边这些人,可能通过网上群、博客、或者技术会,一群志同道合的组织的活动等等,这个知识圈最明显了,比如:以前学习的话预计度娘就是你经常找的地方了,度娘没有的估计就只能询问前辈。但是现在国内搜索不到、那就翻墙去国外,总之就是你的获取知识的途径多样化,获取到的内容丰富化。最后说个最明显的改变,那就是对电脑的认知、对电脑世界的认知,科学的获取信息,清楚C/S的原理,我们平常获取的信息从哪儿来,怎么来,知道电脑发生的各种错误等等,还有很多就不一一举例了。
6.眼界、知识面
眼界和知识面,那必然是我们的互联网的世界了。互联网的世界是丰富多彩的,以前的我可能就是看看电视、打打游戏或者购物等事。学习了编程之后我想我们更多的是了解这个互联网世界的变化,随时关注的是新的技术、国内外的科技界发生的大事,像BAT大公司的变化等等。技术界的大佬都不是单一的,他们的知识面、眼界都是比我们高很多的,因此也会模仿这学习他们,了解房产、理财、股票、区块链、虚拟数字货币等热门的内容,假如换做我没有学习编程的话,可能只有需要的时候才会了解一点。
7.奋斗和努力
奋斗和努力不分人,不管任何人都是在奋斗和努力着,我这里要说的是行动力和执行力。程序猿是个比较特殊的行业,技术更新叠加快,有着不进则退的特性,只要你停止了学习,你就可能被淘汰,因此不像很多的行业,只要你工作经验丰富,你就能有一席之地,然而程序猿就不行,假如你不学习进步、奋斗努力,你可能几年之后还是个初级码农都是完全有可能的。每个人都攀比之心,我们经常在技术圈交流、请教看到各种大佬的各种牛逼的地方,你会不会有一种我也要成为这样的技术牛人的成就感,同样会迫使你努力奋斗。所以程序猿是一个比其他行业都要努力、奋斗的行业。
总结
以上只是个人的一点感悟,并不是鼓励每个人都学编程。可能很多人都不会赞同,但是这确确实实是带给我的改变。还有一个改变就是我学习写作公众号,写文章的同时自己也能增长技术,每天进步一点,日积月累,量变引起质变,这就是我编程给我带来的变化;我希望有志同道合的朋友和我一起变化。
原创不易,如果觉得写得好,扫码关注一下点个赞,是我最大的动力。
关注我,一定会有意想不到的东西等你: 专注分享Android、JAVA干货
备注:程序圈LT