程序员是一个在你即将30、40随时可能面临高压秃顶的工作,这是一个朋友在听到我的新职业的第一反应。我也习以为常的笑笑敷衍过去。
 

现在高压已经不是什么严重的话题了,起码在各种大大小小的跳楼、猝死事件之后也已经被人们看成普通问题。当我想聊聊的是对于编程、系统编程、系统产品编程其实其中也有很多好玩的地方与神奇的景象。

本科学的是机械方向,但第一个碰到的编程语言却不是自动化的那些汇编、程序控制语言。而是C#,对,起码我刚认识它的时候没有把它当成简写的C++,大一末刚好进了一个导师的实验室,听着高层(师兄)的建议,开始坐在那个小角落里跟着书上的代码在VS2010上编写俄罗斯方块的应用小游戏,那是我最具思考的三天,没错,我居然用了三天来思考每一个代码的意思,虽然中文注释很明确,但是我也只是一一配对的理解而已,并不能去运用其中的一两个小方法。
等到出来工作后很羡慕那些参与过大型项目的程序员,因为我至今还没有参加过那种开发一些大型产品的项目,想想就觉得很兴奋,它们会选用什么样的架构与设计,对于产品的编程究竟如何去分配给每一个参与的程序员,而这一过程心里的起伏是如何的,如果你是一个将做事的方式向完美解决方案演讲的话,或许你会异常头痛这个项目的个别限制。


 我总是热衷于分析一件事物的好与坏,我想编程带给我的乐趣会大大占据一大半的生活,我想对于每一个愿意逛社区的开发者也是一样的,我喜欢它的创作性,永远可以按照自己的思维方式去解决问题,你的程序可能是一种新的实现方式,它有非常丰富的资源,它可以处理图片,语音,视频流,直播,智能类等等,就像神话一样,你可以创造各种你想到的,且工作中解决一个问题给你带来的成就感对于每个人来说都是不一样的,同时你的能力也在以可视化的形式上升,在工作中你所希望获得的权威也在你完美完成任务中有所体现。
  

最重要的一点是,有助于他人,我很开心编程系统产品可能得到用户的认可,且对其有所帮助。

当然我们也要事先了解这种工作会给你带来多少负面的东西,我相信当你遇到一个连搜索引擎都没有提示的bug时心里是很不舒服的,且开发过程中还有很多人会给你限制,起码一开始的目标和资源及提供的信息都是他人给的,甚至部分代码,对,这就说明你可能要花一定的时间去处理这个别人写的东西,研究与修改是需要时间的,琐碎的bug总是会不断打扰你的编程生活,前期对于调试与排查没有认真对待的人,那么后期也同样不会被他宠爱,还有一个重点就是开发完发现有一个更好的产品原型或架构。其中当然也会有各种其他因素的取舍。

这就是编程,一个让许多人痛苦挣扎却又是一种乐趣和苦恼共存的创造性活动。


Java猫说
1.3k 声望930 粉丝

现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。