导航:首页 > 程序命令 > 程序员非码农

程序员非码农

发布时间:2022-08-04 20:30:22

‘壹’ 程序员如何摆脱“码农”的称谓

首先,程序员和这些民工、矿工一样,都是使用非常简单的工具,典型的就是vim/emacs加make,典型的活动就是使用这些工具一个字符一个字符地敲代码,这和使用榔头的农民没有本质的区别。要摆脱码农的命运,就需要使用更加先进的工具,比如DSM(Domain Specific Modeling,这里有一篇中文的简介 ),使用模型(领域知识)构建产品。 其次,程序员的产品一般都是一个萝卜一个坑,为一个产品写的代码下一次还需要再写一次,也就是同样的价值需要差不多同样工作量的重复劳动才可以创造,有人据此称软件开发为一个劳动密集型的产业。其实程序员在一个产品开发过程中,创造的财富不仅仅是代码,还包括领域知识、需求工程、架构、设计决定、文档(有兴趣的可以看一下,SEI的 发掘现有产品中的财富 ),可以说在软件开发的整个生命周期中,程序员的劳动成果都是宝贵的财富。就我个人的工作经验来说,一个月用于编写代码的时间不会超过25%,所以带着重用的思想做每一件事情就显得非常的重要。 第三,如果我们比较一个工人和农民的区别,就会发现,有形形色色的工人(环卫工人、机械工人、纺织工人等数百个工种),但是农民只有非常有限的几种(粮农,菜农,花农,还有吗?)。从分工的力度和专业化的程度来看,写代码的都叫程序员,程序员也是什么都干,写脚本、装机器、写代码、写文档、做测试。套用某培训机构的广告语只有正规,才有机会!,只有分工明确、专业化程度增加,程序员才能从民工跨越到工人。 顺着工人这条路子,我们就走进了软件工厂 。软件工厂的概念其实很简单,为了更加的专业化,它把软件工程分成了两部分,领域工程和应用工程。领域工程根据领域支持提取公共的知识,构建可以重用、定制的软件资产;应用工程使用这些资产为客户定制出产品。领域工作者就可以根据领域通用规则、知识、需求进行工作,当然还是要把应用程序的需要放在比较重要的位置,程序员在这里可以发展成为领域分析专家,企业在这里就类似于零件提供商。应用工作者可以专注于客户商业需求分析和产品构建,程序员在这里可以发展成一个产品专家,企业在这里就类似于产品装配商。 从个人的角度来讲,软件工厂并不意味着程序员从一个码农成为一个组件生产员或者一个组件装配工,那些还是重复劳动,每个领域都有产业链的上游,还是要有意识、有计划地力争上游。

‘贰’ 程序员和码农有什么本质上的区别

码农就是只会敲代码,不会学习新技术,不会学习管理,不会往上爬.

程序员就是分为:码农和非码农
<?php
if(程序员=不会学习新技术,不会学习管理,不会往上爬){
echo '码农';

}else{
echo '非码农';
}

?>

‘叁’ 嵌入式程序员算码农吗

呵呵,我觉得算,只不过是码农里的劳动能手,多半是在生地上干活,经常要开个荒啥的,不如他们熟地上PC码农那么舒服。

‘肆’ 为什么中国的程序员总被称为“码农”

对于一些贬义的说法,个人认为作为一个程序员应该保持“诚意开张圣听,不要妄自菲薄”的态度。

程序员一直以来看哪个是别名最多的一个职业,我姑且不分褒贬的称之为你才吧!就像小学的时候一样,相互之间往往喜欢区别名叫昵称之类的,而又往往外号叫的最响小名最多的就是最受关注的哪一个,程序员在当今网络上的处境大抵如此。

码农这个词米偶遇仔细研究过来源。参考其他人的回答知中文中的码农大体相当于英文中的code monkey。程序员码农说法的由来大概来自于程序员圈内自嘲的说法。这里程序员对码农的更多理解可能更接近coder这个词,就是说我是一个写代码的。可能会有人以此来明志,表面自己很热爱写代码,或我很精通以此,再或者言外之意我只是一个写代码的,别来找我给你装系统修电脑什么的,我最烦这个了(ノ`Д)ノ。

程序员这个行业知名度虽然高,但是正在了解程序员是做什么的人并不多,大多数人直观臆想出来的感受可能是一个座在电脑前,后背前倾,颈脖前伸,面容憔悴,形容枯槁,两眼无关紧盯着电脑,两只鸡爪子似的双手快速的在键盘上敲击,屏幕快速出现一行行一块块英文字符的形象。这其实只是程序员的表面,完全米有展现出大多数程序员的内在。程序员真正的工作是解决问题,代码只是解决问题的途径,或曰实现方案。

程序员究竟解决什么问题呢,又是从哪里来的问题呢?首先要提到产品经理,产品经理给成员一个需求,程序员要思考如何实现这个需求。比如产品说这个登录过程应该这样这样,用户是否有通过手机或者邮箱验证。程序员要做的就是想方案来实现这个需求。在比如产品说我们这个网站要同时支持多少人访问不会出现卡,或者页面刷不出的情况。程序员接到这个需要就要思考如何设计这样一个高性能,高并发的服务端,最终通过代码来实现设计。好,现在代码写完啦,产品发布上线了。什么购物网站啊,大家可以随意挑选自己喜欢的产品,什么交友网站啊,大家可以写好自己的介绍发布出去让别人看到。但是还米有完,可能这个网站还要加点新功能,或者程序员自己也想,这个代码有没有什么地方实现的不好,换一个方法会不会更优雅。然后又是思考解决<=实现方案<=线下测试。自己测试发现可以,这个方法很好,发布到线上,就是用户最终使用的形态。不断提出新需求,完善新的功能我们称之为迭代。改善现有设计我们称之为重构。这些都是非常有艺术感的事!

事物发展就会演变出各种变体,有一些公司会把问题和解决问题的方法都做好,然后再交给其他公司或者个人去做实现(写代码)。由于在这里解决问题的过程被剥离出来(最有技术和艺术感的部分)剩下的就是实现,就是敲代码。好比建一栋房子,房子的设计和施工方案都已经做好了,就剩下施工了,这时候只要找个施工队就可以了。在这些做设计的公司,他们是有能力来实现这些方案(敲代码)。但由于欧美日等国家人力成本高,将这些技术含量低敲代码的苦活儿剥离出来交给相对落后地区的人去实现可以帮助他们节省人力成本。以上这个现象就称之为软件外包。另一方面,在美国主导的全球生产分工下,美帝也希望将中印这样的发展中国家固定在低端制造,劳动秘籍型的行业。

既然程序员是解决问题的,那么是否所有电脑相关的问题程序员都能解决呢?纵向来看,计算机系统可以简单的分为三层,应用程序<=操作系统<=计算机硬件。计算机硬件的设计研发基本和程序员无关。硬件往上就是程序员的职责范围了。这是可以简分为应用软件程序员和系统软件程序员。系统程序员的责任是实现高效的硬件管理,应用程序员则是为用户提供高效的服务。下面说说在这两方面和国外的差距,手机端应用软件(有服务端的包括服务端)差别不大,大家从自己手机中软件就能感觉到。PC端有差距,比如人家有PS这样的图片处理软件,而我们则没有。在这方面人家发展了几十年我们年数不够,有差距还是可以理解的。但我辈当发奋努力,以追他人之先。另外应用程序web化应该是趋势,这方面我们还是有优势的,对于普通用户来说最直观的体验就是不用装很多软件了,只要有一个浏览器就行。在操作系统层面,PC如Windows,服务器如Linux。Windows微软独家拥有的闭源系统,不说。Linux内核开发来讲国内正在迎头追赶,内核的邮件中中文拼音的人名越来越常见,越来越多的国人加入到Linux内核的开发中。

‘伍’ 为什么中国的程序员总被称为码农

首先这是一个非官方的称呼,用于非正式场合。

其来源无从考究,只有第一个使用的人才知道最初的含义,所以以下回答纯属个人猜想,纯博一笑,如有不妥欢迎指正。


  1. 这是程序员们自嘲自己的工作枯燥乏味,简单重复,可理解为程序员们的一种对压力山大的稍带不满的幽默。

  2. 可以理解为表达程序员们在向对程序员们充满崇拜的粉丝们介绍自己职业时一种谦卑的自称

  3. 从程序员们的工作特征来说,程序是由不同的模块组合在一起,每个程序员只是负责自己的一块程序代码的编制。这工作有点类似于码墙,也有点类似于码”俄罗斯方块“。

  4. 程序的功能越来越庞大,结构越来越复杂,要求掌握的技术越来越多,单个程序员将很难完成一个较大程序的编制。每个程序员只是程序员集体的一分子,所以,程序员们在代表信息高科技的同时,用这一称呼谦卑地表达了自己对集体、对同事的尊敬,唯其如此,这是一个令人尊敬的群体,他们在卓越的工作成绩面前,没有简单的个人英雄主义,而是牢记了同事们的才华和幸幸勤付出。

  5. 就象没有农民,”民以食为天“的我们无法生存,而没有程序员,我们这些纵横在网络,离不开程序的人,将无法继续潇洒,乃至寸步难行。所以,这一称呼,又可以理解为程序用户们对这一群体的尊重和感恩。

  6. 码农这一称呼,表明高科技不能忘本,没有农民的幸劳,任何高科技神码都是浮云;

    至于这一称呼的起源,已无从考究,我们不能根据考古家的简单逻辑认为无从考究的就是假的,哪怕这是既成事实;也不能认为”码农“这一称呼就代表了程序员的全部。但是从心理学来讲,这一称呼能够普及,肯定是表达了这一群体的某些特征,能够引起使用者的共鸣。然而这只是一个盲人摸象般的称呼,所谓”横看成岭侧成峰,只缘身在此山中“,喜欢则用,不喜勿喷。我们对所有的称呼概念,重要的是掌握其表达的是使用者的什么观念或者用意,而不必在乎它的表面文字,这就是依义不依语,掌握语言的深层结构而不是止步于其表层结构。

    当您使用这一称呼时,是在表达什么呢?或者,您更喜欢上面哪一种解释?

‘陆’ 如何成为一名优秀的程序员,而不是一个普通的码农

成为一名优秀的码农,至少要避免出现下列问题
1、没有明确的目标
心中没有终点目标,那就只会随波逐流。如果你想在软件开发的职业生涯上获得成功,那么你需要有一个明确的目标。你应该有坚实的目标——在某个时间段内的首要目的——明确定义的目标。
2、不投资于非技术和“软技能”
软技能对我们的编程生涯非常重要,而不仅仅是那些大多数程序员重点关注的技术技能。我们得时常与人打交道,所以人际交往能力是必须的。
此外我们也不能忽略健康以及经济因素,如果忽略它们的话也同样会导致失败甚至是毁灭。
总而言之,不管你做的是哪方面的工作,软技能几乎总是比硬技能、技术技能更重要——所以一定要好好学习这方面的知识。
3、不专业
专业化。为自己选定一个方向,然后专心致志地朝着这个方向发展。但这并不意味着你无需具备广泛的知识基础
4、没有自我教育的规划
很多程序员都没有任何形式的自我教育规划。如果你还没有用于学习和提升自我技能的规划,那么是时候为自己制定一个了

‘柒’ 程序员和码农是什么意思

程序员,是从事程序开发、程序维护的专业人员。可将程序员分为程序设计人员和程序编码人员。世界上第一位程序员是英国着名诗人乔治·戈登·拜伦的女儿AdaLovelace,曾设计了巴贝奇分析机上解伯努利方程的一个程序。

码农可指在程序设计某个专业领域中的专业人士,或是从事软体撰写,程序开发、维护的专业人员。但一般Coder特指进行编写代码的编码员。

(7)程序员非码农扩展阅读:

软件从业人员分为初级程序员、中级程序员、高级程序员(软件设计师)、系统分析员,系统架构师,测试工程师六大类。

1、初级程序员

通过初级程序员考试认证的计算机从业者。

2、系统分析员

具有从事计算机应用系统的分析和设计工作能力及业务水平,能指导系统设计师和高级程序员的工作的一族。在软件开发流程中主要从事需求分析、信息系统项目架构设计(包括概要设计和详细设计)、开发阶段的主要模块的规划、设计和测试,同时也涉及可行性分析的工作。

3、系统架构师

一个最终确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员。主要着眼于系统的“技术实现”。

‘捌’ 为什么中国的程序员总被称为码农

本人并不是一位程序员,但是从事互联网行业也少不了与程序员朋友打交道,他们经常自嘲为“码农”、“程序猿”、“代码工人”、“码字猴”等等,这些一定程度上是幽默的称谓,但是站在旁观者的角度,本人认为还有一些深层次的原因。

第一,中国的程序员是一个庞大的群体,只要是学过计算机,只要懂一门编程语言,都可以吃这碗饭。当你看到中午吃饭时那个浩浩荡荡的场面,你就会觉得程序员真的看起来和农民差不多。

第二,大部分程序员做的都是比较枯燥的工作,一点创新性都没有。很多新项目都是在很成熟的项目之上进行修改,都有现成的模板可以套用,基本上不用怎么动脑筋。这和农民种田是多么的类似。他们年复一年地做着同样的事情(播种、插秧、收割),也不知道这种日子什么时候是个头。IT行业本应该是一个创新性非常强的行业,但到了中国就成了比较死板的东西了,这是什么原因呢?

第三,大部分程序员的视野都比较的窄,对其他行业懂得很少,这也和农民是多么的相似啊!我们都说农民阶层是没有多少文化的,但这居然也适用于以高学历着称的程序员身上,是多么具有讽刺意味啊!你随便问一下身边的程序员,当今最流行的词语是什么,我想没有几个人回答得上来。他们成天盯着代码,想着那26个字母和10个数字,视野如何能变宽广?

第四,大部分程序员都是靠自己的努力挣钱,没有强的人际关系,基本上属于“弱势”群体。就像农民一样,他们没有关系,只能世世代代在自己的土地上耕耘,只求维持生计、终老一生。如果稍微有点关系,几乎没有人愿意当程序员。在行业发展较为顺利的时候,他们能够保住饭碗,能够养家糊口;当行业不景气的时候,他们随时都有被裁的危险,因为公司要不了那么多人。程序员的命运并没有真正地掌握在自己手上。

在一个大的IT公司,程序员都占了很高的比例,少则成百上千人,多则几万人,真的像农民一样,到处都是。我在和同事聚餐的时候,程序员都在抱怨自己的工作是如何的辛苦、如何的累,都说自己是“码农”。

‘玖’ 怎么成为一个优秀的程序员,而不是一个优秀的码农

优秀码农,干活,凶猛的干活;优秀程序员,发现问题,解决问题。仅此而已。好的程序员的基本要求(我认为):1. 学好数学:高等数学,线性代数,离散数学,算法,图论(可选),数值方法(可选),优化方法(可选),计算理论(可选);2. 打好基础:操作系统,编译原理,汇编语言,数据库原理,计算机网络,密码学,人工智能;3. 多动手:至少用面向对象语言(C++/Java)写5万行;脚本语言(Perl,Ruby)写5千行;至少在工作中正确实践5种设计模式;维护过10万行代码的系统;参与过一次大项目的重构(或设计);4. 多交流: 至少做过3个新人的mentor;参与需求分析和项目计划的制定;独立领导过项目的开发进度;能建立在团队里的威信(人品和技术两方面);1和2是一个人在学生时代该干的,本科四年足够了;工作后干3和4,一般2年也能有所心得,最好能理论联系实际,做到融会贯通举一反三。而且要放下“唯代码独尊”的优越感,能正确定义开发的目标,并不断提醒自己这个目标。到此为止,优秀的程序员应该可以出炉了。有些人可能不同意我的定义,但我认为,优秀的程序员不只是能写多好的代码,而是能独立解决问题(理论加经验),带领团队一起最大限度的实现需求(沟通能力)。代码只是其中的冰山一角啊。在实践中,“高效又优美”并不一定是好程序员,因为程序员的一个通病就是追求“代码完美”,耽误工期是常有的事,项目经理往往也没办法。优秀程序员则能正确做出取舍,做出“deliverable”的产品。优先的干的漂亮,不优先的不钻牛角尖。毕竟人的精力是有限的,在有限的时间里,做出最好的产品,还是很有讲究的。更进一步,好的程序员还要能防微杜渐,通过有效的沟通,了解团队的走向,并在必要的时候提醒团队,甚至挺身“填坑”。PS. 当然,我不是否认代码的重要性,代码能力很重要。但再优美的代码,如果不能“deliverable”,那它又有什么意义?公司给你一个项目,让你找一百万个文件中的重复文件,你可以用一个开发周期来做一个超完美的hash function,效率高,碰撞率低...但你这函数不是“deliverable”的,因为他还不能“找一百万个文件中的重复文件”。这样的程序员真的优秀么?我认为不是,因为他不分主次。

‘拾’ 码农和程序员有区别吗

码农,顾名思义就是最基础的编码人员,其基本不带管理,就像数码车床的G代码员工一样。程序员相对层面上高级一点,这是我的个人观点。

阅读全文

与程序员非码农相关的资料

热点内容
wpsppt怎么转pdf格式 浏览:86
腾讯文档在线编辑怎么添加密码 浏览:868
本地不能访问服务器地址 浏览:865
访问服务器命令 浏览:835
华为云服务器分销商 浏览:954
Linux定位内存泄露 浏览:198
工程加密狗视频 浏览:720
不在内网怎么连接服务器 浏览:664
云服务器app安卓下载 浏览:966
如何查看linux服务器的核心数 浏览:137
交易平台小程序源码下载 浏览:148
程序员记笔记用什么app免费的 浏览:646
java与单片机 浏览:897
服务器内网如何通过公网映射 浏览:478
程序员穿越到宋代 浏览:624
怎么使用云服务器挂游戏 浏览:618
真实的幸福pdf 浏览:344
d盘php调用c盘的mysql 浏览:266
怎么样搭建源码网站 浏览:429
新概念四册pdf 浏览:364