打印

[今日话题]:文字组织能力差是否写程序也会没条道?

[复制链接]
楼主: 程序匠人
手机看帖
扫描二维码
随时随地手机跟帖
21
5880527| | 2009-8-7 09:52 | 只看该作者 回帖奖励 |倒序浏览
我宁愿写程序也不愿意写几行说明书

使用特权

评论回复
22
冷漠| | 2009-8-7 11:42 | 只看该作者
本帖最后由 冷漠 于 2009-8-7 18:54 编辑

十分钦佩11楼春阳的修练功力。能够在论坛上偶遇这样一位修炼多年的高手老师很难得了。

我想借此请教春阳老师一段Keil公司程序员写的汇编程序。 95%都看懂了,就有1、2条一直看不懂,我知道请教一般段位棋手也难说。唯一的期望就在春阳或其它几位高段位大侠了。

能否愿意接受我的求教?也借此顺便给大家讲讲怎样才能“以锻炼、提高逻辑性思维能力的方法来增强自己的技术功力。”

不是简单的逻辑思维就能解决的,也许需要很深的逻辑性思维?还可能涉及更多其它方面的知识。正好检验大师的广泛知识面。

使用特权

评论回复
23
程序匠人|  楼主 | 2009-8-7 12:34 | 只看该作者
“正好检验大师?”

大师不是用来“检验”的

使用特权

评论回复
24
冷漠| | 2009-8-7 18:48 | 只看该作者
是大师自我检验。不是大师“被”什么人检验。主谓关系摆放位置理解不一样。
我们谁有资格检验大师?

我认为大师会说:“俺修炼了那么多年,出山练练手(检验)机会难得。有人向俺提问?好啊!最好刺激点,否则那么多年白练了!”

要是另一种心态:“谁敢检验我?哼......”

呵呵,心态不一样,理解就不一样。大师不会害怕别人提问吧?

那换一种说法好一点:“正好仰仗一下大师的......”

使用特权

评论回复
25
xusnwise| | 2009-8-7 20:08 | 只看该作者
这个贴子的讨论的主题,俺内心也想过无数次了。

当时得出的结论是 “语言是思维的物质外壳”

所以,那些说话做事条理清晰,语言表达流畅的人们,不管他们从事那个行业,
如果他们愿意学习C语言的话,应该也可以成为编程高手。
哈哈

使用特权

评论回复
26
chunyang| | 2009-8-7 20:52 | 只看该作者
“大师”不敢当,最多只能是目标,长期目标。


    对于读程序一事,首先,俺极少读别人的程序,因为弄清别人的思路在多数时候可能比自己重写还费事、费神,尤其是“思路”这个东西主观性很强,俺又从不做“逆向工程”,故基本上无此必要。俺与别人交流或是合作、检验工作等,要求对方以及自己提供的都是“流程”,流程的可读性强且足矣反映出流程(程序)编制者的实际思路,基于流程来交流讨论的效率相对最高,而一个合理的流程(当然,这里的流程都是细化的,例子可以参见我在通讯技术栏目所发CRC算法一帖,同时对比一下侃单片机栏目中老hot等人的同类主题帖的直接代码)可以很容易的用程序语言实现,至于如何实现的具体细节根本不必关心。
    现代条件下,因硬件资源的充裕,编程技巧反而不再像当年那么追求极致,结构才是首要的,也正是因此,从某种程度上而言,终端代码生成即具体的编程行为已被边沿化,底层程序员被称为“民工”,这正是这种趋势的体现,现在连硬件都越来越“单元化”、“模块化”,终端应用工程师几乎像在“搭积木”,一个典型例就是MTK的手机方案,设计一款基于MTK方案的手机已经没有什么“技术含量”了。
    基于流程的工作方法不仅仅是适用于交流、工作检验等,任何一个底层程序员在进行编程之前首先就应编制流程,越复杂的项目越该如此,而且流程本身也要分级,供不同层次的技术和技术/项目管理人员使用,越底层的越明细,越高层的越抓住主线,然后基于流程在不同层面上自顶而下展开工作并进行相应品质控制,虽然这么做在前期会明显增加工作量,但后期修正特别是品控会便捷、清晰很多,实际工作时间反而因此减少,纳入后期文档管理工作和进行移植等也水到渠成,现代项目管理包括软件系统等都是这么做的。
    其实,基于流程的工作方法和管理方法就涉及到逻辑语言的使用问题,在此,楼主帖及前面俺的回帖也是有效的,如果一个程序员/工程师能够适应如此的工作方法的话,熟练、严谨的使用逻辑性语言根本不会是什么问题,那工作成果还用多说么?二者相辅相成。

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
程序匠人 + 6
27
冷漠| | 2009-8-7 21:47 | 只看该作者
谢春阳老师。
我以前也从不看别人的程序,以前也碰到过其他老板拿着产品请复制源代码,报酬都不低。我只是自己重新写一个交付了事,报酬照拿。

今年一次不行了,别人拿来的是RTX51_FULL源代码!这下知道自己肤浅了。看了半年,才刚入门。感叹:难怪中国做不出windows,即使RTX51_FULL也很难说。看国外嵌入式系统同行写的51程序,真是欣赏。有些地方,很难想到。“不是做不到,而是想不到。”

所以,愿意到处求教高手,以求讨论。

使用特权

评论回复
28
gaohq| | 2009-8-7 21:52 | 只看该作者
找老HOTPOWER去啊,好一阵子没见他来了。

使用特权

评论回复
29
谈的元| | 2009-8-7 23:28 | 只看该作者
顶起,文如其人,程如其文,的确有关系

使用特权

评论回复
30
chunyang| | 2009-8-8 00:06 | 只看该作者
其实中国最缺乏的并不是精通编程的程序员,而是能够设计出复杂、高效、安全、系统化流程的系统分析员,对系统分析员而言,对编程语言仅需“了解”这一程度即可,但对其它甚至包括数学在内的知识却要求很高,需要多学科知识的综合,而且需要足够的项目经验,这几乎是用钱和时间才能堆出来的,中国当前的国情和文化对此尚不适宜。在西方发达国家,像经济学、管理学之类的学科都是对数学要求非常严格的,诺贝尔经济学奖获得者首先都是数学家,但看看国内高校专业的设置,很多经管类专业竟是文科大学的专业,教育出来的博士、硕士甚至连初等数学都早忘了,指望他们做出世界先进水平的成果?还是指望母猪会上树更实际些吧。
    比尔.盖茨本人在从哈佛大学退学成立微软公司时绝对算是个优秀的程序员,DOS系统中的BASIC就是其本人的作品,这在今天也许不算什么,但当年的计算机环境和编程思想、工具等远不能和今天相提并论,只是——只是在当年和其后的全美,有能力自行编制一个只有几百K大小的应用程序的程序员遍地都是而且层出不穷,但微软只有一个。盖茨本人在微软早期是亲自编写代码的,但很快随着微软业务的发展即转而从事项目管理进而专门进行公司的宏观运营操作,论这时的盖茨,他的编程知识早已过时,虽然其声称到现在他还偶尔写写代码,但这恐怕已经是其“业余爱好”了,未必能比他手下的初级程序员强,只是,盖茨的技术敏感度和方向把握力只增不减,在运作管理方面他更可以堪称大师,这些才是他成就微软帝国的根本。小插曲:盖茨在初中后期就开始不再上数学课了,为什么?连高中的都会了……
    再看看近点的例子:华为。
    在21IC,华为的现役技术员工是没有的,退役的虽然有,也极罕见,除了工作忙和公司不准许等理由外,不少网友认为华为的都是高手,高手不屑来21IC这种档次的BBS参和,真是这样么?否!今日的华为,如果从其研发线上随便拉一个工程师出来,请他到21IC来“华山论剑”,大体上恐怕他连前50名都排不上,这种概率非常高,尤其是论综合技术知识和能力。那么,华为的工程师很烂么?当然不可能。那怎么会这样?其实,华为的早期是主要靠高手打天下的,代表人物比如李一男,但华为老板任正非的高明之处是知人善任、眼光长远,他很清楚到了一定程度,公司要靠管理而非高手称雄,于是斥巨资在得到第一桶金后就大力开始引入正规的管理体制,中国MBA教育的领军人物都为其所用,引进国际先进水平的管理技术更是不遗余力。过程中,手下的高手不论贡献多么巨大,如果谁成为正规化管理的障碍就毫不留情的清除掉,一时可谓“腥风血雨”……很快,华为文化之一是“不欢迎高手”,所以,从1990S中后期开始至今,华为始终“疯狂”招收新毕业生,然后从中筛选培养,这批人是现在华为的主力,他们可以良好的适应高度分工下的本职研发工作,但知识面哪怕是电子/软件技术方面的知识面并无同比优势,离开其所从事的工作范围,你会发现他们没什么了不起的地方,因为他们是“螺丝钉”而非“万金油”,但一部庞大的机器是由许许多多“螺丝钉”一类的零件组成,而武功盖世的绝顶高手也不是一只训练有素由普通士兵组成的军队的对手,小说中大侠郭靖死在蒙古大军阵前,而华为就是这样的蒙古铁骑。
    回到主题,说实话,中国人做不出Windows,不是因为中国缺乏优秀的程序员,相反,中国优秀的程序员和工程师很多,我相信老hot的功力,和华为员工比或者拿到美国去也是“一览众山小”,他本人也早有这个自信和“成果”。一个人之所能,他可以论剑于华山,但Windows甚至嵌入式操作系统都不是凭一人之力就可以成就的,一人龙,三人虫,中国需要的是管理者比尔,而非程序员盖茨,这才是Windows的关键。

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
程序匠人 + 6
31
老树昏鸦| | 2009-8-8 00:07 | 只看该作者
语言、编程等等是内在思维的外部表现,逻辑思维能力强,自然也会在这些外部表象中呈现出来。
老纳印象中的几位高人,无一例外其语言表达逻辑性都很强,而且很有文学修养。
看不懂别人程序很正常,新手写的程序和高手写的一样难以看懂

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
程序匠人 + 1
32
程序匠人|  楼主 | 2009-8-8 00:37 | 只看该作者
我现在吃不准,给别人加分的同时,自己是否会被扣除相应的分数。
如是,那么估计用不了多久,匠人就变成负分了。

使用特权

评论回复
33
badbird1234| | 2009-8-8 07:35 | 只看该作者
冷漠
上代码呀
都分析分析
勾人胃口
开个贴一起分析一起进步呀

使用特权

评论回复
34
huangqi412| | 2009-8-8 09:13 | 只看该作者
很精彩的了...

使用特权

评论回复
35
冷漠| | 2009-8-8 10:03 | 只看该作者
本帖最后由 冷漠 于 2009-8-8 10:12 编辑

春阳老师说的极是。很多事不是技术问题。

回28楼:HOTpower前一阵投入精力专心做51操作系统,一直闭门修炼。最近听他自己说放弃了。他说51的架构不适合做OS ,...... 那德国人怎么做的?
看来, 关于51OS 问题,Hotpower是盼望不上了。



真的希望多一些像 33 楼那样的朋友,对未知问题,充满好奇心;越遇挑战问题,越是激情。讨论谁都知道的问题有什么意思?是吧。

整理一下,另开贴讨论。

使用特权

评论回复
36
香水城| | 2009-8-8 10:34 | 只看该作者
[今日话题]:文字组织能力差是否写程序也会没条道?
[今日话题]:文字组织能力差(缺乏条理) 是否代表 写程序也会没条道? 匠人见到一些工程师,写个功能说明书都辞不达意、条理不通、没有重点、没有层次。由此不禁担心,他写出的程序是否也这幅腔调。 大家来议议看?


借用chunyang感性与理性思维的理论来说,我认为“文字组织能力差”的工程师并不一定是“写程序也会没条理”,这是因为写程序是一个理性的思维过程,而写说明书既是一个理性的思维过程也是一个感性的思维过程,之所以说它包含感性思维的部分,因为说明书是给别人看的,说明书写不好的人恰恰是没有从读者的角度去考虑问题,没有搞清楚说明书的读者是什么样的人,没有体会到人与人之间的差别,这个差别包括知识结构的差别、理解能力的差别、技术水平的差别等等。

比如说你用了一个专门的技术术语,你有没有想想,懂得并理解这个术语的人有多少,是否每个人都同你理解的一样,有没有歧义性等。

再比如,有些人在程序有问题时,喜欢直接把大段的代码贴出来,让别人帮你挑错,但你有没有想过,别人都不知道你要做什么,都不知道你的思路是什么,也许你的思路正确但你的程序实现的不是你的思路,这些根本不能直接从代码中看出来,在此前提下,谁能帮你?

再举一个例子:好的教授不但学术水平要高,还要懂得并且善于把高深的理论,根据不同学生的情况,按照学生的级别、按照人们学习的基本思路由浅入深的讲解,一步步地引导。学术水平高的教授,并不一定能把课讲好,同理,程序写得好的工程师,并不一定能够把说明书写好。

使用特权

评论回复
评分
参与人数 1威望 +6 收起 理由
程序匠人 + 6
37
machunshui| | 2009-8-8 11:05 | 只看该作者
"中国需要的是管理者比尔,而非程序员盖茨,这才是Windows的关键"

结论恰恰是相反的.

中国首先需要专才,需要承认螺丝钉的价值,
否则管理者比尔比尔在就饿死了,
没饿死的都是"伪管理者比尔"

使用特权

评论回复
38
machunshui| | 2009-8-8 11:06 | 只看该作者
可是中国文化,一般是赢者通吃.

那里肯承认你们这些不掌握资源的螺丝钉的价值啊!?

使用特权

评论回复
39
chunyang| | 2009-8-8 13:10 | 只看该作者
楼上machunshui的看法过于偏激。
    管理跟文化环境是分不开的,而管理也是一门专业性极强的技术,领导和管理则是截然不同的概念。中国的专才和发达国家相比,在顶级层次上虽有差距,但中下层级比较起来并不弱,顶级专家开创前瞻性的理论和技术,中下层的专才则致力于人类社会活动中所需的大部分实现及改良型的工作,中国的中下层专才既然不比人差,如果管理水平和发达国家在同一水平线上的话,中国在国际分工中所扮演的角色就不会是今天这样。你也说“没饿死的是伪管理者比尔”,这不正说明国内的管理者水平差么。事实上,“管理”这个词目前绝大多数中国人并未真正了解其含义,往往跟“领导”混淆,当然,这跟文化密不可分,毕竟现代管理理念是100%的泊来品。

使用特权

评论回复
40
chunyang| | 2009-8-8 14:01 | 只看该作者
to 香水城
    在我的观点中,二者是很大概率上的正相关,至于少数例外,其实更多的是由于国内目前教育体制所致,很多这样的人因性格关系(这往往是天生的)导致逻辑性语言的应用水平明显偏离其实际思维能力,但逻辑性语言的使用本质上跟“文采”无直接关系,二者在大脑中对应区域是不同的,俺的文采就很普通,学生时代在写作文时,但凡需要感情抒发性的记叙文、散文等命题,老师对俺的评价基本上是“内容空洞、语言干巴巴,形式八股”,而一遇论述文,只要论述题目的涉及是俺所了解的,那俺基本上就是班上第一。俺高三时的语文老师是个非常负责的“老学究”,他就极其担心俺的“偏科”在高考时的表现,因为当年高考作文碰到俺之擅长的几率实在太低了。后来果然不幸应验,俺高考作文一踏糊涂,但俺语文单科总分仍然很高,排名进入包括文科在内的全省前100名,那是因为俺幸运,除作文扣分外,我一分未失,前80分就这样被俺稳稳的揣在了兜里,这是状元成绩,作文嘛,40分俺只得了17分!其实是不及格。
    虽然,在大学时代及其之后的一段时间,俺有意的增强文学阅读以提高俺的“文采”,甚至专门花时间学习诗歌,不过进展十分有限。后来知道,“文采”这个东西是由特定大脑区域的发达程度决定的,俺显然在这方面属于先天“弱智”,那就随它去吧,反正俺不打算写小说什么的。
    至于香水城所言写说明书之类所需的“感性思维”其实需要的程度是非常低的,像俺这个“情感弱智”都能应付有余,何况那些文采比俺强的。其实,问题的关键香水城已经指出了:之所以……、……没有搞清楚说明书的读者是什么样的人,没有体会到人与人之间的差别,这个差别包括知识结构的差别、理解能力的差别、技术水平的差别等等。香水城这句话说穿了,这是缺乏与人沟通、为人着想所致,不少工程师的生活态度过于狭隘(俺相对多少也是这样吧),完全可以说活在自己的世界里,自己和自己“说话”那是很流利、很清楚的,一遇他人却不知所言了,这是一定程度上的“心理障碍”,并非真正的能力不及,这方面完全可以通过训练和学习解决,只是目前的国内教育在这方面有所不足罢了。靠自己,其实只要有心,从细微处做起,这个“障碍”绝大多数工程师其实完全可以克服,反而相对而言,逻辑能力这个东西却要难得多,因为这也是大脑特定区域发达性所决定的,文学家文采再好,如果缺乏逻辑能力和专业知识,别看小小说明书,他(她)永远都写不好。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则