中国特色程序员的「钱途」

modernizr 发布于 2014/04/23 10:59
阅读 2K+
收藏 10
今天在微博看到一篇文章,《程序员转型书商 年交易额千万元 财富江湖,作为一个合格的中国特色的码农,忍不住想写点儿什么。程序员的「钱途」在那里?

从出版业说起

网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。
许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好, 是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有些技术书读得可能很违背某人的学习习惯,就感觉不好了。
所以说网络是块神奇的空间,很能造就高手,而网络高手是绝对不能小瞧的。

建筑工程

建筑工程不乏豆腐杂,但比起软件工程来说,豆腐杂的概率还是很小的。做软件,很可能某程序员在开发阶段一天没干一点正事,但在建筑行业,除非是收尾阶段,否则绝对不可能一个工人一天没干一点活儿。建筑工人还是很较挣钱的,但绝对是血汗钱。程序员还真不一定是血汗钱,因为软件工程没有建筑业成熟,常常因为分配不当,很多程序员每天在干无用功。建筑工人的门槛相对低一些,但也并非容易达到熟练水平,就算那个最低等的搬砖推灰的小工,至少想达到这个水准,你得身体力气跟得上,一月没有一天休息你得熬得住,想想都不容易。

中国软件的用处

软件不一定验收了就是有用的,在我看来,一款软件要想达到有用,至少实现以下功能之一:
1,为使用者节省了时间
2,为使用者节省了人力
3,为使用者带来了方便
4,为使用者带来了知识
5,使使用者能做到某种难以实现的事情
6,为使用者带来了快乐(比如游戏)
7,为使用者节省了资源
8,辅助使用者做出了判断
9,为使用者解决了某些问题
10,为使用者提供了资源
而有很多软件做出来以后,使用者不用吧已花了钱了,用吧什么也没带来,还得为学 习这款软件而费时费力,得不偿失。
但有一个很悲观的消息,除了网络软件之外(包括网站),凡有用的软件中国人都习惯白去使用。而花了一大笔钱的软件,往往带来的好处不多。不是一点没有,是性价比太差。所以现状是:有用的软件没市场,有市场的软件用处有限。多尴尬的事。
而以上的一切带来的现状是:除了网络性软件外,中国的软件挣钱不容易。

程序员的被动

如果程序员做的东西要不挣不了钱,要不挣了钱反而让客户感觉不值,这样的话,程序员的价值就降低了。这样,建筑工人灌一天的水泥往往没白干,而程序员开发一周的工作往往白干,这是常事儿。
这使程序的技术定位很尴尬,在中国,说句实话,不是每个程序员都能天天用到内存管理,就连最基础的算法也都被高级语言封装好了,当然也有很多低层的程序员,所以大家不用跟我争这个,最主要的是,高级语言、业务需求、工期决定了有很多编码与操作系统、算法、内存等等越来越脱节,这样的话,很多程序员干了若干年,特定业务熟悉了很多,但编程最基础的知识反而渐渐忘去。这就出现了,让市面上很多程序员去做个基本的数据结构与算法(比如有向图,再比如好像是老赵说的排序),反而不会。这找谁说理去?还不如建筑工人呢,人家说会刷涂料真还做的不错。
有些公司,销售、行政、甚至实施人员都比程序员有优势,他们眼中这群天天如高僧般坐在那儿的人,占公司大半人数,反而做的贡献不多,反而让他们辛苦开拓的客户群都在谩骂。
程序员,好被动。

不按套路出牌的中国人

中国到处都有不按套路出牌的现象:不用正版,不守时,造假,山寨,不排队,地沟油,不按合同办事,以次充好,没服务。这是种坏氛围,以至于每天每个人都习惯了这样规律,反而麻木了,不认为这是不对的,就如同我(我也不敢说你也是)每天白看人家的书白用人家的软件,而没有感觉自己有多少罪恶感。

中国程序员的出路

中国程序员也有做好的,虽然其最优秀的那些拿到国际上什么也不是,但毕竟能达到不被动,能用自己的努力使生活美好起来的还是很多的。总结一下,有如下几种:
1,教育型,主要是学知识,写书,讲课。
2,自由型,主要是为自己打工,做好的小团队软件,以积累用户而达到做有用的软件,挣有价值的钱。
3,业务人际型,一般都走向偏管理的路子,用高级语言,对数据库、报表、服务器和某个业务领域精通。
4,高级白领型,以进入国际大公司做核心项目为主,因为待遇好,属于打工仔里的高富帅。
5,创业型,当老板,或许这个已不是纯粹的程序员了,所以这个只能算半个。
以上几种路都可以走,但大多数程序员都还不在这5类之中,都是在某些公司不温不火的为生存努力着。

读技术书籍未必就真是无敌之出路

我常爱说,会中国常用的三千字写不了个好文章的话,学会中国八万汉字也未必就能写出来。同样,市面上的程序员如果去实现个初期的Facebook大多数还是能做到的,但你会这些知识还不能做出一个像Facebook一样有用的软件,那么你再精读了操作系统、设计模式、代码大全、算法导论......也还是照样做不出来。所以我很反感网上列的程序员必读书目,一列就是五十大本,  你花十年啃完这五十本,你还能写代码吗?
从环境入手,找到自己所缺少的知识与资源,突破再突破
个人感觉 程序员首先应该定位目标,然后界定目标所涉及的环境圈,在环境圈的范围内捕捉问题,界定自己的知识与资源范围,有目标的展开学习与环境方面的突破,这样更适合程序员。
也就是说,你要是教育型的,你在你所涉及的知识范围里要细到知识点;但你是自由型的话,还没必要都细到点,否则你天天不是在开发了,而是在学习了。如果是业务人际型,可能你对操作系统、网络什么的不必要了解太细了,但业务得精纯。
尽可能缩小范围,持之以恒是关键
其实不管是技术还是人际,所涉及的学问是无边的,如果都要学精再去做事,我想这样的话就没有做事的机会了。所以尽可能缩小知识领域的范围,比如上面我分5类人才,就是缩小了一层范围,但是这还是很粗的。假如你是教育型的,你想教会大家用设计模式,那尽可能先不要去学习WPF,先把设计模式搞到专家地步再说。此间道理,我想大家是可以理解的。

结束语

写了这么多,其实我并非在教育谁,我没有这个资格。 网上高人一把一把的,怎么能轮到我来说教。目的只有一个,想找到程序员的出路,想让程序员不那么民工(或码农)。大家是拍砖也好,送花也罢,这都是对我有帮助的,毕竟我也是在摸索当中。我不喜欢那些写类似《如何让程序员成为百万富翁》而自己连十万都没有的作者,但我确不反对作者们抛砖引玉。
加载中
2
bigtiger02
bigtiger02

赞同你的观点,
首先,同样我认为光读技术书是不行的,学以致用,融汇贯通才是重点,做程序是为了帮助解决实际问题的,无论是为客户开发的还是自研。从狭义上来说开发程序的过程是思考方式体现的过程,这一思考方式将会是用户,公司以及自身思考方式的综合体。
其次,只注重技术而忽视了其他方面的东西这样未免太过狭隘了,科学,人文以及艺术我觉得是互通的,可以互相借鉴,激发灵感,现在市面上的很多的技术书大多其实都只能称之为工具书,在闲暇也看看其他领域的书吧,往往大有裨益。
最后我想同大家探讨一下,我们的出路在那里?中国互联网的未来在那里?
现在一提到程序员给大家的第一印象就是呆板,技术宅,沟通障碍,当前互联网业界确实存在很多问题,与其到处喷,不如静下心来,思考一下症结所在,共同探讨,在自己力所能及的范围内将之付之实践,并传递给大家,影响更多的人。

1
__Steve__
__Steve__

写得非常好。我觉得这个问题主要在于变通,程序员只是个职业,在我们学习技术之道的同时,多掌握生存之道,才能融会贯通,活出自己的精彩。

1
xu4v
xu4v

"反感网上列的程序员必读书目,一列就是五十大本" +1

苏子仙
苏子仙
+1024
1
太医
太医

地沟油我没见过,不过我看楼主发这么多肯定是因为地沟油吃多了,好好挣钱买房子然后养老才是正道

太医
太医
@modernizr 怪不得智商高,补了很多DHA
modernizr
modernizr
我吃的地沟油,连起来可以绕地球10圈。
1
Brin想写程序
Brin想写程序

好文章。软件本质是服务,而服务的本质是人。

采用软件能提供更高质量,更低成本的服务。

这个是软件的价值。所以单纯开发功能性软件去卖根本赚不到钱。

1
OSC首席保安
OSC首席保安

每天白看人家的书白用人家的软件,不但没有感觉最恶感,反而对原创者说三道四的人非常多

0
amonxu
amonxu

太长了。。

0
modernizr
modernizr

引用来自“魏武帝”的评论

太长了。。

内容长?
modernizr
modernizr
回复 @天堂口 : 大家都懂滴~
红桃K
红桃K
某个部位
0
weiyon
weiyon

赞一个

返回顶部
顶部