-
养生必知 藏在子宫的小秘密 - [健康]2011-12-01
Tag:[导读]子宫,作为女性身体内独特而重要的器官之一,不但是孕育生命的温床,也是一个女人迈向成熟的标志,月经、孕育胎儿。它所带给我们的恩惠与烦恼是独一无二的,对于它,我们也应熟悉并善待。
1、月经来自子宫内膜
子宫壁的表层是内膜,月经就在这里产生...Tag:马伊琍小S王洛丹 短发女星长发见光死
http://lady.qq.com/a/20111129/000013.htm#p=1打破对食物渴望 窈窕不是梦 - [健康]2011-11-17
Tag:http://lady.qq.com/a/20111117/000038.htm#p=10
打破对食物渴望 窈窕不是梦 - [健康]2011-11-17
Tag:
如果你总是不断减肥又总是失败,你是不是应该随身带一块镜子,放在你的餐桌上注意自己大口大口吃东西的样子,那样你是不是会为了保持形象而放弃食物呢?不要以为运动就可以完成你的瘦身计划了,食物的控制也绝对不能防松哦。不要痛苦的强迫自己,轻松让自己打消食欲...查一个表被哪些东西引用.doc - [SQL]2010-06-04
Tag:create procedure dbo.usp_depends
(
@object_name nvarchar(255)
)
as
begin
set nocount on
-- check input...Tag:转载美容天然秘方 默认分类 2010-04-22 21:53:40 阅读10 评论0 字号:大中小
查看原图
首先,第一款秘籍,痘 痘MM睁大眼睛哦。嘿嘿,准备的东西是:卷心菜,嘿嘿,晚上被恶魔的我俺吃掉了。嘿嘿,下面头发是接的,很自然吧。假发为很多MM带来很多新造型哦。
查看原图
鱼腥草(又卖中药的药 店就有),鱼腥草和在《笑傲江湖》里那种善使毒的蓝凤凰是&ldquo...让服务不再停止(在Windows Service中使用Timer的技巧) - [网络安全]2009-10-25
Tag:平时在开发中,经常遇到的一个需求就是,要开发一个后台的程序,来监视数据库中某些数据的变化,并且发生变化以后要立刻做出响应。
实际上呢,我们会建立一个Windows Service工程,在里面放一个Timer组件,然后定时的连接数据库,判断,然后进行操作。
这两天做了一个这样的小程序,可是每隔几天就会发现服务不知道在什么时候,莫名其妙的停掉了,查找程序,没有发现什么错误。于是找日志,发现那个时间数据库服务器更新了程序,自动重新启动了。因为我的Windows ...中国程序员应具有的能力2009-08-21
Tag:中国程序员应该具有的能力
默认分类 2008-01-25 00:30 阅读238 评论0 字号: 大大 中中 小小 序——程序员到底是做什么的?
偶然翻出了以前买的一本杂志,名字叫《程序员到 28 岁时应该具有 28 种能力》。以前翻过一遍,现在再翻翻看看,感觉收获良多。书常看,人常新,相同的书,不同的时间看,带给你启示也不一样。现在看这本书,我想到了一个问题——程序员到底是做什么的?
做软件,写程序,测试,写文档,开会。。。。对,那是程序员的主要工作内容,注意,仅仅是工作内容而已,而目的是什么呢?只有一个,解决不断出现的问题。这些问题都围绕在你周围,包括你自己的问题,同事的问题,公司的问题,客户的问题。。。。。这里的问题并不仅仅是技术问题,而往往比技术问题更难以解决。
如果上升到这个角度来考虑我们的工作,我想我们的工作就会有意思很多。既然要解决这么多的问题,除了要有技术能力之外,还需要更多种类的能力,这本书就给了我这样的一个指导。因为这本书是日文的,我就把它所说的每一种能力的要点列出来,并加上自己的点评。我得点评也就是自己思考过程,因为我自己也尚未具有里面所提到得种种能力,就算是给自己一个激励。另外,虽然题目里面有个 28 岁,我想多半出于吸引人的目的,大家不必理会。
之一——保持健康的能力
这个能力并不是排在这本书的第一个,但是我却想把它第一个提出来,因为程序员往往被要求不断的提高工作能力,技术水平,却很少被要求有自我管理健康的能力。 书中的要点如下:
健康管理支撑着你的工作。从公司的角度考虑,一个经常患病的人,是不会被委以重任的。从个人角度考虑,经常患病给自己和家庭都带来很大的烦恼。俗话说身体是革命的本钱,有个好身体,干什么都有可能简单的每日检查。
首先,体重的检查。对程序员来说,每日测量一下体重是最可行的方法,每个人都有标准体重,通过每天的测量,你就可以有意识的通过减少饭量,多做运动来保持自己的体重。然后是吃饭,如果因为工作很晚才能吃饭的话,就考虑一下自己的睡觉时间,把饭量减一减。少吃油腻的东西,多吃蔬菜。每天喝一升的茶,多喝无糖的水。感到疲劳的时候吃点维生素。
职业病的处方。程序员因为长时间保持坐姿,长时间面对电脑画面,容易引起肩膀疼,腰疼和眼睛疲劳。所以应该每工作一个小时就起身活动 5 分钟左右,这个活动包括身体的屈伸,肩部运动等等。同时,闭上眼睛转动眼球,使用眼药等对缓解眼睛疲劳比较有效。去厕所,去买东西的时候,做做这些,也算是对时间的有效利用吧。
对付睡眠不足。干 IT 的没有不加班的,所以很多时候就容易睡眠不足。为了保证睡眠时间就要合理的安排好自己的工作,分好优先级,把今天最应该干完的做完就可以了,然后早点回家睡觉。这一点,书里讲的我想有点牵强,在中国或许没有什么很好的办法来解决加班的问题,在全世界或许都是个问题。
心理健康很重要。不要光注意身体,也要时常注意自己的心理健康,程序员常年面临各种各样的压力,不断重复的工作,保持自己的心理健康,也是一个非常重要的课题。方法很简单,就是自己奖励自己。解决了一个 bug ,完成了一个复杂的算法,明白了一个需求,都可以适当的奖励自己。奖励的形式多种多样,总之自己喜欢什么就干什么。其实这里也给项目的领导者一个启示,就是要适当的对手下的程序员予以鼓励和奖励,完成了一个阶段计划,完成了一次测试,解决了一个关键问题,都可以组织大家轻松一下,有利于提高团队的凝聚力和个人的工作热情。
尽情的放松。如果项目时间很长,结束遥遥无期或者项目陷入了泥潭,无法前进的时候,为了保持自己的工作劲头,不妨选择适当的一天,什么也不做,让自己好好放松,换换大脑,有利于更有效率的工作。
最后说一下简单的营养补给。平常吃点食物纤维和复合维生素,肩膀疼的时候多吃维生素 E 比较有效,眼睛疲劳时多吃维生素 A 。
以上列出了几个有关健康管理的要点。自己的健康自己管理,意识到自己的健康的重要,不要勉强自己做一些会损害自己健康的事情,例如连续通宵等等。良好的健康,对自己,对家庭,对公司都是一笔财富。年轻的时候用健康换钱,上了年纪就不得不用钱来换健康了。
之二——取信于人的能力
程序员除了要学习技术知识以外,掌握更多的工作以及与人相处的技巧也是十分重要的,取信于人的能力当属其中的重中之重。
为什么要具备取信于人的能力呢?
我想对程序员来说,具备了这种能力至少有以下两点好处更多的工作机会。公司都喜欢把重要的工作交给值得信任的人来做,你也就获得了比别人更多的工作机会,同时也会不断的提高自己,至于经济上的利益,一定也会少不了的。更广泛的人际关系。如果你是一个值得信任的人,那么就会有好多人和你交朋友,你的社交圈也就比别人要广,这往往意味着更多的机会。
那么如何取信于人呢?以下几点我与大家共勉。一:不说假话。日常生活和工作中迫于各种各样的压力而说假话应该是司空见惯的事情。做到不说假话真的很难,不过不要紧,先把下面说的几点做好。二:答应的事情一定做到。反过来说,就是做不到的事情就不要答应。与任何人做的约定无论是口头的还是书面的都是非常重要的。如果一件事情你做不到的话,那么最好一开始就不要答应。常常有这种情况,面对客户或者上司,迫于面子和经济利益,不得不说保证会做到什么什么事情这样的话,如果这种事情是你不可能做到的,那么千万不要答应,后果往往很严重,别人很生气,自己很受伤。 三:不确定的事情不要断言。自己都不确定的事情不要去断言。对了到还好说,如果错了,就跟说假话一样,很容易失去别人的信任,而信任这东西,一旦失去,想再找回来很难。四:降低别人对自己的期待。如果干的工作比预想的要好得话,别人会很高兴,相反,如果低于预期的话,那就会很失望。人人都想努力做的比预想的要好,可是事实是更多的时候我们做的工作的成果比预想要有差距。所以,为了不让别人对你失望,需要降低别人对你的期望值。方法就是,提前将一些悲观的信息,问题,或者困难传达给对方。例如,这个东西我没做过,我试试看。我同时还有测试的任务,这个工作可能会往后拖一拖。等等。重要的就是要告诉对方,我很想努力做好,但是有些困难不得不考虑。五:学会示弱。都希望得到别人的认可,把自己最强的一面展现给别人。如果总是以强者的姿态出现,同时又不是真正的强者的时候,需要注意了,你会发现工作起来很费劲,因为给你的工作都是你力所不能及的。所以,不妨在一定的限度下,展示自己的弱点,这不是做作,而是让自己更顺利的提高,成为真正的强者。 六:传达风险。这个世界上没有风险的事情基本不存在,工作中更是如此。软件开发中的风险因素更多,需求的不稳定,计划的不完善,人员的流动,测试的遗漏等等。所以说话的时候不妨这样说,正常情况下,怎么怎么样,如果出现了什么什么问题,会怎么怎么样。传达风险,其实也就是给自己留有余地,问题发生的时候让自己不至于太被动。七:提出解决对策。对别人尤其是上司说我不能是比较难开口的。别人对你有所期待,所以才拜托你做一些事情,力所不能及的时候,简简单单的一句我不能并不是最好的解决办法,说我不能的同时,说说你能怎么怎么做,给别人提出一个解决对策。例如,客户要求周末交付使用,但这个实在是不可能的,可以对客户这么说,周末交付实在不可能,但是能够在下周一早上交付,这样对工作也不会有太大影响。基本原则就是,告诉别人你不能做什么的同时,也告诉别人你能做什么。八:约定的东西要双方留有记录。最好的工具莫过于电子邮件了,商量好的事情,整理到邮件里面,然后给对方发过去确认。一旦出了什么问题,谁的责任也就不言自明了。九:答应好的事情努力去做。这不用多说,是最基本的原则。努力到最后 一旦再怎么努力也做不到的时候,也不能放弃努力,一定要努力到最后。这不是做给别人看得,是为了挽救自己的信誉。 做不到的话,一定要真诚的道歉。一旦失败,好好总结,不犯相同的错误。除了不去做之外,这是避免失败的最有效的方法。 以上是关于取信于人的几个要点,其实做到并不难,都是很简单的方法,别人的信任其实是一个人的骄傲和财富。希望大家都能获取这份财富。
之三——汇报的能力
技术再出色,如果没有良好的沟通能力,也不会成为一名好的程序员的。沟通是双方的互动,把自己得信息传达给对方,再从对方获得反馈,如此循环往复。那就先说说把自己这一方的信息准确地传达出去的能力。首先是写报告。程序员经常要写日报,周报,月报,在很多人的眼里,这是一个可有可无,对日常工作没有什么帮助的体力活。可是真的是这样么?报告里面要记录自己完成了什么工作,出了什么问题,怎么解决之类的一些信息,可是作用不仅此而已,还有更重要的作用。责任的分散。这出现在工作中发生问题的时候,想象一下,如果出现了一个 bug ,出于某种目的,你没有及时把这个情况告诉别人,而是想自己解决,这种情况下,关于这个问题的所有责任全部压在了你自己身上,解决了到还好办,解决不了的话,相关模块,甚至整个项目都要受到牵连,你需要负这个责任。如果你能把这个信息通过日常报告及时传达出去,那么大家都会知道这件事情,那么这个问题的责任就不是你自己的了,而是整个团队的,团队的力量是无穷的,那个问题会很快迎刃而解。说到这里,或许有点推卸责任的意思,其实不然,项目的进行要以成功为目的,以团队协作为手段,任何问题都不是个人的,而是大家的,你也没有必要没有权利去规避任何问题,公布出来,更有利于项目的顺利进行。防止问题的发生。个人的能力毕竟是有限的,由于经验的不足,知识的欠缺会导致对某些问题的判断失误。这种时候,你如果能把对某个问题的分析判断以报告的形式公布出来,那么比你更有经验的人就会注意到你的判断中的失误以及遗漏,及时指出来也就避免了问题的发生,节省了由此而发生的各种成本。经验的借鉴。发生了问题,报告出来,有经验的人回来帮助你解决,你也会跟着学习处理这种问题的方法和技巧。消除上司的不安。一项工作布置给你了,进行到什么程度了,有没有什么问题,这是上司比较关心的问题。如果能够及时汇报的话,就会让上司及时掌握工作的进行情况,有利于工作更好的进行。构筑良好的信任关系。常常把自己的工作情况予以汇报,减少了别人对你的担心,很容易让别人对你产生信任。取信于人的好处就不多说了。
报告的形式。报告的形式有多种多样,但是其基本模式并没有太多变化。这里分两类进行说明。
第一类,初级程序员的报告。谁都有从菜鸟走过的历程,作为初级程序员更多的是从别人那里获取经验,而日常的报告是一个比较有效的途径和工具。报告的形式应该是这样:
现状 描述一下现在的情况,就是怎么做的,都做了什么
预测 根据自己的判断预测一下进行的情况
确认 询问自己的判断有没有什么问题
而出现了问题的时候除了描述现状和分析一下问题之外,第三个就应该询问该采取什么对策了。
第二类,初级以上程序员的报告。作为有经验的程序员,对很多问题都有自己的分析和解决方法了。所以这时候的报告就没有必要老是询问,更多的是自己的主张和建议,但是注意一定要把自己的判断的根据说清楚,跟论文一样,通过论据和论证来让你的论点成立。
汇报前需要考虑什么?
最重要最基本的是需要好好想想我到底要传达什么。但是这个时候要注意,自己想传达的信息和自己应该传达的信息是不一样的。应该好好想想你汇报的对象最想从你的报告里面获取什么信息,什么信息对当前的工作顺利进行最有用,当然一切要以事实为基础,不能为了取悦别人而说假话。
以上就是有关写汇报的一些介绍。应该这么说,这些信息对技术提高没什么用,但是对如何做好自己的工作或多或少有所帮助。因为程序员的工作并不是仅仅面对计算机,还要面对各种各样角色的人和各种各样的问题,能把自己这边的信息,准确有效的传达出去,有利于一切工作的顺利进行。另,强力推荐大家看余世维的有效沟通系列录像,一定会有所收获的。
之四——信息整理的能力
会议的资料不知道哪里去了。
以前的一个客户的名片没有了。
那个有关需求定义的电子邮件找不到了。
某某类的设计文档在哪里?
日常工作中,有各种各样的找不到的情况,想找却找不到东西也是五花八门,但是归根结底,我们找不到并不是什么东西,而是附着于该物体上的信息。解决这个问题的最好办法就是分类整理。分类整理的意思就是按照一定的标准,把符合这个标准的信息发到一起,便于查找。
分类的标准,大体上也就五个。类别,时间,位置,字母顺序,还有某一个数值的大小高低。所谓分类整理也就是适当的运用这几个分类标准对各种信息进行归纳分类。学问就在这个适当运用四个字上,那么什么样的分类才算适当呢?
首先,不要分的过细。就拿类别标准来说,个个类别之间应该是排他的,不能互相有重叠的部分。如果类别分的过细,很容易出现某一个信息,既属于 A, 又可以属于 B 的情况,这个时候你怎么办,那就再造一个 C 吧,专门存放这类信息,那么你的分类就会越来越多,这就直接导致了想找什么找不到的局面。
其次,分类而不是分离。相关的几个信息,可能有的打印在 A4 的纸上,有的存在电子邮件里面,有的印在名片上,这是一种信息的分离。分类与分离的不同点是,前者是根据内容来分的,后者是根据形式来分的。所以,相关的信息不限于其形式,尽量把它们整理到一起,不要让它们因为不同的形式而分开。
下面说说几个具体技巧:
一: 减少纸张的使用。软件开发中,各种各样的信息,不是存在于纸张上,就是存在于电脑里面,作为整天与电脑打交道的程序员,或许更喜欢把各种信息整理到电脑里面,那么下面的方法或许对你有用。日常的联络方式有邮件,面谈和电话,程序员或许都比较喜欢用邮件,但是因为电话和面谈的迅速与直接我们很多时候也是通过这些来进行交流的。那么,最好养成一个习惯,谈完的事情,要在邮件里面整理一下留作备份,也可以给对方发过去予以确认。无论如何都只有通过纸张来保存信息的情况下,最好能通过扫描把信息数字化。
二:纸张信息的整理。上面说到减少纸张的使用,但是现实是纸张也确实有其优势,例如,看起来舒服等等。那么纸张的信息该如何整理呢?这里介绍一个按照时间来分类整理的方法。把相关资料放到一个档案袋里面(文件夹也行,随你喜欢),然后在外面写上日期,题目,在书架上由左向右开始摆,使用过的档案袋,放回的时候要放回左边。这样有两个好处,最新的资料和经常使用的资料总是在最左边,想找的信息一下子就能找到,而右边的资料就是使用率最低的了,合适的时候就可以扔掉。
三:数字信息的整理。程序员的电脑里面有各种各样的资料,工具,程序等等,不好好整理的话,别说找,时间长了自己有什么都忘了。但是说实话,这种理并不是很好做的,但是首先自己一定要有这种意识。邮件的分类,文档的分类,程序的分类等等。另外,有好多桌面工具都可以用来整理自己的资料。只有一个原则,要严格按照自己的分类来存放资料,有时候因为懒惰,随手就把资料存放到桌面上了,那么以后桌面上的东西就会越来越多,弄得你想找个我的电脑都找不到,随手一放,贻害无穷。不要懒惰,严格执行应该是最有效的办法。
以上,就是有信息整理的一些介绍。突然想到一句题外话,好像是听余世维的讲座听到的,美国的珍珠港被炸了很多年后,才在他们的文件堆里面发现了国民党政府发给他们的警告,告诉他们日本会袭击他们的珍珠港。其实,任何没有整理好的信息,没人愿意去看,包括你自己。那就啥话都别说了,开始干吧。
之五——把握十分钟的能力
不知道大家周围有没有这种情况。工作内容大致相同,但是不同的人,工作进行的速度是不一样的。有的人累死累活好不容易赶在交付期限前把工作完成,有的人不怎么加班却能提前把设计书以及代码交付。同时,后者往往不知什么时候,学习了别人还没来得及去学的新知识,对最近出现的新技术要点也了然于胸。如果你的周围有后面这种人的话,恭喜你,赶紧向他讨教。其实,后面这种人如果不是绝顶聪明,那么他一定是具备了别人所不具备的把握时间的能力。这种能力就是把握十分钟的能力。
不妨想一下,给你 10 分钟你能干什么,或许你说,做什么都做不完,那么给你一个小时呢,其实 1 个小时不也就是 6 个十分钟组成的,如果你认为 10 分钟什么也做不了的话,那么你就真的什么也做不了。可是有的人却能将这十分钟活用起来,充分的发挥了 10 分钟的威力。细想想,一天里面零散的十分钟有多少?等车的十分钟,开始工作前的十分钟,吃完午饭的十分钟等等,能不能用好这样的十分钟,决定了你的工作能不能有效率的进行。那么该怎么用呢,举几例子来说说读书的十分钟。假如等车的话,不妨把等车的十分钟利用起来读书。其实也不一定要是书,什么材料都可以,只要你认为对你有用的。这样做的目的只有一个,就是知识储备。这直接决定了你能不能快速解决客户提出的问题,完成上司交给的工作。常常听到要抽出一段时间学习什么什么这样的话,真的能抽出时间么,如果真的如自己所愿能抽出时间的话,那我很羡慕你的运气,如果不能,我想利用好琐碎的十分钟也是一个很好的方法。个人推荐的实践是,把自己感兴趣又没有时间读的技术资料打印出来,也就是 10 分钟左右能读完的那种,放在随身携带的包里,如果有这样的十分钟,就拿出来读一读。例如,我想了解 AOP 方面的知识,利用 10 分钟时间上网搜集一下材料,把涉及基本概念的打印出来,如果有十分钟的空余,就读一下,不明白的记下来,再利用十分钟去网上搜索一下,不断的这样循环,我想有个十天半个月,等车的功夫,你就能领会 AOP 的要义了。读的时候最好随身带一支笔,便读边做个记号。
记忆的十分钟。最好的利用琐碎的时间方法莫过于记忆。技术人员有好多需要记忆的东西,环境的配置参数, API 的接口定义,设计模式的使用环境,利用琐碎的十分钟,不妨试着背一下这些东西,用的时候也就不用去查文档看资料了,也就比别人省出好多时间。有人说重复是最好的记忆方法,这样的十分钟用来进行重复记忆最好不过了,第一次没记住或者没记全不要紧,下一个十分钟再拿出来看看,再有这样的十分钟再拿出来看看,几次也就记住了。
会议前的十分钟。开会前的十分钟也很重要。至少得把会议相关资料扫一眼吧,要不然开什么会都不知道。 那跟演什么电影都不知道就去看电影有什么区别,毫无目的性。如果能大致了解一下会议的相关资料,那么你就能准确把握会议的重点,快速察觉别人发言里面的问题,不是什么会都没有用的,关键是你抱着什么态度去开会。
休息的十分钟。休息的十分钟对程序员来说是非常重要的,你可以利用十分钟闭目养神,或者打个盹,睡不着的话,不如在座位上做个伸展运动,把四肢尽量向前伸,可以放松全身。总之,工作中的 1 个小时里面,抽出十分钟来稍微放松休息一下,余下的 50 分钟你会工作的更有效率。尤其是解决项目中出现的问题的时候,不要一个劲的拼命解决,适当的休息一下,或许会给你带来意想不到的收获。张弛有度,才能体会到工作得快乐。我就经常在坐车的时候突然想到一个问题的解决方案。
不浪费属于你的十分钟,首先你要明白给你十分钟你能干什么,回邮件,技术调查,寻找Sample Code等等,总之,意识决定行动,你觉得十分钟很宝贵的话,你就会自然而然的运用好它。另外,充分利用十分钟的时候,需要注意要保持所作的事情的连续性,读书的话,不妨把读到的那一页折一下,工作的话不妨作个笔记,记录一下自己现在做到哪里了,就是说要知道自己现在处于什么位置。这种记录并不是仅仅为了备忘,更重要的是让你明确自己所作的工作。其次要明白什么事情不适于在十分钟里做。日常工作中,还是某种程度上需要大块的时间的工作比较多,给你 6 个间断的十分钟,你并不能完成平常需要整整一个小时才能做完的工作。所以做事的时候要有所选择和区别,什么工作可以利用琐碎的时间来完成,什么工作不行,不行的就尽量保证有大块的时间来做。
以上总结了一下运用十分钟的能力。其实,琐碎的时间很多,平常不用就根本看不出它们的作用,有意识的好好利用一下,你会发现,有好多工作根本不需要加班就能完成。当然了,如果你愿意加班而且你们公司愿意给你加班费的话,就算我没说。
之六——不被别人替代的能力
对于程序员来说,什么最重要?
最重要的莫过于对技术的掌握,可是应该还有更重要的东西,那就是思考的能力。 作为有一定经验的程序员来说,会发现学到的并运用的知识大体上分为两类,就是比较具体的知识和相对来说不那么具体的知识,例如:
Oracle 的性能优化有关的设置项目
Java 语言里面字符串的各种 method 的使用
Unix 负载测量的方法。
这些都可以说是比较具体的知识,基本上的类型都是 how to 。学习这样的知识,最好的方法就是读书,上网读读文档,也就是说经过一定的学习和训练就能掌握的知识。通过一定的学习,每个人对这些知识的掌握不会有太大差别,换句话说,这些知识就是属于那种查一下书就知道的那种。当然了,还有另外一种,看看下面的例子。
从客户那里获取需求的方法。
项目的进行中顺利的进行沟通的方法。
对于业务信息化的要求,决定采取什么样的技术的思考能力。
这些知识相对来说不是很具体,比较抽象,正因为比较抽象,所以获取这些知识的途径和方法并不是很明确。而且,同样的学习每个人的所掌握得程度也不一样。就拿顺利沟通来说,不和很多人进行实际的交往和沟通,不经历过一些失败和挫折,不尝试一些好的沟通方法和技巧,并不断的总结,光看书是不会学习到如何沟通的。
那么这两种知识哪一种更有价值就不言自明了,一百个程序员里面有一百个人会说第二种更有价值,更有用。那么我们不妨再考虑一下,换一个角度,不作为程序员而作为公司的管理者来来考虑这个问题。对公司来说,熟练使用 java 和 oracle 的人有很多,光考虑这一点的话, A,B 两个人,雇谁都一样,也就是说,如果光具有前面所说的具体的知识的话,你跟别人没有任何差别,没有差别说白了也就是没有竞争优势。你可能会想,那么我学点 .net, 再来点 python,这样总算可以了吧。其实,只要是技术,存在即有其存在的价值和理由,那么就肯定会有人掌握这些东西 , 也就是说,只要出钱,公司一样能找到这样的人来代替你。
中国那么多程序员,但是熟悉这个行业的人都清楚地知道,好的程序员还是很少,大家都去学习 java, 都去学习struct,spring,hibernate, 每个人好像都是很了不起,当你骄傲的时候,不妨想一想,你是不是不可替代的,你能不能做别人不能做的事情。要做一个一流的程序员,具体的知识当然要学习,同时更应该去学习那些抽象的知识。对于一个项目来说,那些只懂技术的程序员就是一个标准件,标准件对公司的好处就是替换起来很容易。那么,好的程序员,在项目中起到举足轻重的作用,别人无法替代,做这样的程序员才应该是我们的目标。
再举一个例子,我们都有过参加这种会议的经验,负责企划的部门和负责技术的部门一起开会,企划一方经常会提出各种方案并向技术部门询问其可行性,而技术部门的人,马上就说不能实现,并且用各种各样技术词汇来解释为什么不行,企划的一方,根本不懂这些技术词汇,会议也就不欢而散了。在这种情况下,一个好的程序员就会说,这个根据目前的情况还不能判断能不能实现,在我们做出 Yes 或者 No 这样的结论之前,不妨好好想想怎么才能实现。这样的话,会议的气氛就会向思考“怎么做才能实现”这样的积极的方向发展,大家也都会更有兴趣。
写程序,写设计书,管理自己的日程这些都是最最基本的素质,仅有这些并不会成为一个好的程序员。好的程序员应该是不断地考虑,如何让项目顺利的进行,如何让对方积极的回应你的意见,并付诸于实践,而且能够实现。这样的程序员,才具有了别人不可替代的价值。
那么如何成为这种不可替代的程序员呢?没有特别好的方法,建议到有一个。就是在日常的工作中有意识的要求自己去具有这种能力,不断的考虑,现在的自己应该如何思考才能成为一个不可替代的人,自己在哪些方面还有所欠缺,不断的想这些问题,不知不觉也就有了去深入思考的潜意识,具有了这种潜意识之后,你平常所作的事情都会不知不觉地向这个目标靠拢,一切都是在不知不觉中进行的,这是第一步,也是最关键的一步。写到这里,我不禁想起了前一阵在一个 Forum 里面听的一个人力资源方面的讲座,讲座的老师就提出了一个社会人要有能不依赖于公司的能力,这种能力是什么,说简单了就是离了公司你能活的很好,再进一步的话,就是公司离了你损失很大。成为这种人,人生的选择就会更加自由了。我想具有不依赖公司的能力与这里面所说的做一个好的别人无法替代的程序员的提法是比较统一的,只是从不同的角度阐述而已。
如果从谈技术的角度来看的话,做一个好的程序员并不是会使用最新的技术,会使用什么什么框架,而是有良好,全面,扎实的基础。技术的发展并不是跳跃的,而是连续的,任何的一个所谓的新技术,无非是某一个旧知识的重新包装和整合,东西还是那么多东西,只不过用的方法和方式不一样了。如果有一个好的基础,无论什么东西,你都会快速理解,看透其本质,掌握其精髓。但是任何一个人,都不可能一开始就把基础打得天衣无缝,一个好的程序员的学习曲线我想应该是上上下下的,学习上面的新技术的同时,静下心来好好学习一下相关的底层的基础知识,不断的循环往复,不断的积累,并且不浮躁,应该是一个成为好的程序员的途径。
之七——倾听的能力
有很多程序员常常为不会说话而烦恼,那不如先去学会倾听。造物主给我们两个耳朵,一个嘴巴,或许就是暗示我们要多听少说。能够很好的倾听,引导对方把他自己希望表达的内容表达出来并获取自己一方所需要的信息,是一个看似简单其实颇具挑战性的实践能力。其实应该认识到,良好的倾听是解决问题的一个重要开始。在软件开发中,首先是获取客户需求,作为信息接收得一方,需要良好的倾听能力。当客户发现他说的内容并没有被真正理解和接受的时候,会感到不安和不满,更严重的是明明没有听懂却作出一副听懂的样子迷惑了客户,结果作出的东西根本不符合要求,这种失败的例子并不少见。
那么如何才能进行良好的倾听呢?与其去寻求一些倾听的技巧不如先从最最基础的细节做起,细节做好了自然而然也就掌握了倾听的技巧。
倾听的表情从微笑开始。微笑的人给人以好感,所以要让人对你有好感的话,不妨先微笑对人。用软件行业的行话来说,就是把倾听时的缺省表情设置为微笑。当然了,随着对方表述内容的不同,表情是应该不断的变化的。
点头。说话人的行动很容易受到听众的影响而变化。如果听众对自己讲话表现出完全不感兴趣态度,那么说话人的信心和积极性就会受到打击。所以,作为一个会倾听人,应该传达给说话者这样的信息,就是我正在津津有味的听你在说话。最有效的方法就是点头。即使不完全同意对方的观点也应该点头,这不是谄媚,而是告诉对方我听懂了你说得话。
赞许。对说话人最大的褒奖就是听众都同意他所说的话。所以,如果真的觉得对方说的很对,不要吝啬,把你的赞许通过你的眼神和态度表示出来吧。
疑问。 如果说话人的传达的信息你不能马上理解或者存在疑问,那么也不用客气,表达出来。虽然多少会打击对方的情绪,但是同时也告诉对方你是在认真倾听,并且特别希望理解对方的意思。好的倾听必然伴随着好的发问,记得小时候老师常常告诉我们,不要羞于问问题,因为能问问题的学生才是听懂了课的学生。日语里面把听和问都用汉字闻来表达,我想也是有一定道理的。
下面介绍一下发问时需要注意的地方。首先要明确问问题并不可耻。有很多人会觉得问别人是一件让人不好意思的事情,因为会让人觉得自己能力不行。这是完全错误的,问问题并不是说明自己不行,而是为了更好的解决问题而进行的信息收集,所以,不要害怕和退却,大胆的问你想问的问题吧,然那些嘲笑你的人见鬼去。自己的发问得不到对方的回答这种情况也经常出现。解决这个问题,就需要在问问题的同时也把对方应该回答这个问题的理由说明一下。一般来讲,应该从以下几个方面说明。
问题意图的说明。有时候为了消除对方的疑问和不信任感,必须向被询问一方说明我为什么要向你询问这个问题,不妨同时有礼貌的请对方腾出时间来回答这个问题。最重要的一条就是要告诉对方我问这个问题是为了对方的利益着想,这样对方也会很认真的来回答你的问题先调查后发问对方和你一样,工作也很忙。所以,问问题之前,尽可能的自己多做一些调查,将自己需要问的内容具体化。让对方觉得你并不是一味等着人来教你,你自己也主动学习了很多,当然有不明白的地方,就需要对方来解答了。这种时候,大部分人都很乐意帮助你的。
显示关心。交流的过程中也有不顺畅的时候,这时候不妨对对方的情况显示一下关心,询问一下对方工作中遇到的不快,和他们聊聊工作的辛苦,赞许一下他们的长处。从人的心理角度出发,很多人都喜欢将自己的辛苦和得意之处跟别人说,不妨借用这个来让你们的交流更顺畅。
想得到具体的回答,就需要问具体的问题。问一个比较抽象的问题,对方往往不知道应该怎么回答,即使勉强回答了,答案也未必是你所需要的。所以问题越具体越好。所谓具体就是把该问题的前因后果以及关联的信息都提供给对方,这样对方才能作出比较满意的回答。
预先判断。问对方问题的时候,应该对对方会如何回答这个问题做一个假设和预先判断。这么做的目的是让自己的问题更加明了,让对方更容易回答,同时还可以随时判断对方的回答是不是自己想要的,如果不是,还可以进一步发问。
最后,说一下问问题分为闭式发问和开式发问。
所谓闭式发问就是需要对方回答 YES 或者 NO 的问题。优点:问题意图明确,对方不需要过多思考。缺点:发问方要做很多工作,将问题具体化对方选择的余地变小。
所谓开式发问就是不能仅仅回答 YES 或者 NO 的问题。优点:不用过多考虑问题的细节,对方选择的余地很大。缺点:容易导致所答非所问,给对方以思考的负担,有时对方会无法回答。
之八——说话的能力
如果你已经是善于倾听了,下一步不妨提高自己说的能力。或许有人经常苦恼于别人总是不好好听自己的说话,这里面的主要原因正是你自己。
语言交流虽然方便迅速,但是说出去的话,泼出去的水,很快就消失于无形,被人们所忘记。所以,如何良好的表达自己的意思,如何让听众准确地理解自己的思想,是一个很值得研究和学习的课题。
下面列举了几个在语言交流中容易出现的问题以及应对之策。
听众的态度问题。听众如果没有以认真的姿态来听你讲话,那么你讲多少都是没用的,得不到良好的反馈。这种情况下,自己如果一味的从最重要的部分开始讲起,往往达不到预期的效果或者效果很差,不得不重新再讲一遍。对一件事情重复多次的经历,我想谁都有过,费了很大力气,效率还不高。这种问题的对策很简单,就是在说话之前先把自己要说的内容作一个简单的概括。例如,今天我们要对今后项目中使用的文档列表做一个说明。这样做有两个好处,其一,先抛出题目,可以引起对方的注意力,大家听你的话的就不会漫不经心,其二,明确了题目之后,建立了一个上下文,有助于大家理解你的话。
话语的逻辑难于把握。说完的话,很快也就消失了,不要指望你说的任何东西都会被别人记住,那是不可能的,所以,说话的过程中,听众往往对你所说的内容的逻辑关系,前后顺序感到迷惑。这种问题的对策就是,承前启后。说话的过程中,说完一个小题目之后,总结一下刚才说的话,然后再简单扼要的说明一下下面要说的内容。这有助于听众了解你的说话的来龙去脉,并对你现在所说的内容在整体之中的位置有一个良好的把握。
没听到的内容再也无法弥补。这个经验大家都有,一个不注意,刚才讲什么就不知道了。要不然上课老师老是强调认真听讲呢。最简单的对策就是把自己讲话内容里面重要的部分不断的重复,多给听众理解你的机会,也是为了自己好。
上面列举了几个说话过程中容易出现的问题以及应对策略,下面谈一谈在谈话交流中比较实用的一些技巧。
重复对方的话。重复对方的话,意思并不是简单的重复,而是提示对方希望对方能把这部分再详细说明或者用更简单易懂的方式进行说明。举个例子,对方说这部分内容比较重要。如果你不明白为什么重要,不妨说一句,这部分是么?这时候,对方就会将话题深入下去,解释为什么重要了。
总结对方的话。谈话的过程中在适当的时机对对方的话进行总结是一个很好的方法,不仅可以明确论点和主张,也有利于对方了解自己的话是不是被你正确地理解了。例如,我想您说的是不是这么一回事?您看我这么理解行么?等等。
用沉默来让对方发话或者做决断。沉默是金,谈话中的沉默表达出的是更为复杂丰富的内容。持续一段时间的沉默,会让对方意识到是该自己说些什么的时候了。沉默的好处是,让对方自己来决定作什么,而不是通过询问来强制对方作出反应,往往不会引起反感。
说话之前想象一下对方的反应。想象一下,写完报告书后,自己总要再看一边,看看有没有错别字,标点符号的错误,排版的错误。可是,对于说话,我们往往就没有那么多耐心了。不过,为了事后不后悔,在说话之前我们应该想象一下对方的反应。
不说“不“。对方表述了自己的意见后,如果与自己的想法不同,一般来讲有三种回答的方式,虽然传达的是同样的内容和意思,但是传达的方式不一样,给人的印象也是不一样的。
直接说不。这是最直接的说法,直接表明了彼此立场的不同。
Yes,but. 这种说法的意思就是,我仔细倾听了你的意见,但是我还是主张自己的意见是正确地。
Yes,and. 这种说法的意思是在充分尊重对方的意见的基础上,更进一中国程序员应具有的能力 - [杂谈]2009-08-21
Tag:中国程序员应该具有的能力
默认分类 2008-01-25 00:30 阅读238 评论0 字号: 大大 中中 小小 序——程序员到底是做什么的?
偶然翻出了以前买的一本杂志,名字叫《程序员到 28 岁时应...将GridView中的数据导出到Excel中 - [.Net]2009-07-18
Tag: 导出protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
...Tag:摘 要:分布式应用体系结构有很多种,有的基于中间件技术,有的基于XML技术。选择一种恰当的体系结构对设计分布式应用是很重要的。先对众多的体系结构从本质上进行了分类,对各类引入的必要性、优缺点、适用范围进行了详细的介绍,并讨论了分布式应用体系结构的发展趋势。
关键词:XML;分布式应用;体系结构;中间件;移动中间件
0 引 言
目前,分布式应用体系结构有很多种,如二层与三层结构[1]、瘦客户...CascadingDropDown - [Ajax]2009-06-16
Tag: CascadingDropDownCascadingDropDown
一级 DropDownList
List<CascadingDropDownNameValue> lst = new List<CascadingDropDownNameValue>();
AccessDataSource ds = new AccessDataSource()...左脸长痘肝有火 右脸长痘肺有火 - [健康]2009-06-13
Tag:主持人:各位搜狐网友大家下午好,欢迎参加博客精品访谈(第二期)。搜狐博客健康群很荣幸邀请到北京中医药大学医学博士、副教授、硕士研究生导师、中国针灸学会腧穴专业委员会秘书长、中国医师协会养生专业委员会委员程凯博士,来和广大网友一起探讨——春季如何降火。
春季为何容易上火
主持人:程老师,许多网友都反映在春季特别容易上火,是不是和气候有关?如果与气候有关,那么又是如何对人体产生影响,进而导致上火的?
程凯:祖国医学认为:“百草...职业生涯步步高:一位资深经理人的职业生涯感悟 - [找工作]2009-06-08
Tag: 职业生涯序言
在担任公司高管的几年间,我面试过数以百计的各个层面的员工,其中最让我感到遗憾的一个现象就是很多人有着非常好的素质,甚至有的还是名校的毕业生,因为不懂得去规划自己的职业,在工作多年后,依然拿着微薄的薪水,为了一份好一点的工作而奔波。很多这样的人,他们只要稍微修正一下自己的职业方向,就能够在职业发展上走得更从容。
有一次一个大连理工大学的研究生,好像是学电子的,来应聘我们的公关企划部部长。那小伙长得不错,将近一米八的身....Net Remoting(基本操作) - [软件技术]2009-06-01
Remoting 构架
接下来我们考虑通常的情况,也就是 客户程序 与 宿主程序 位于不同的进程中的情况。
NOTE:因为我是在我本地机器做的测试,所以只是位于不同进程,实际上位于不同机器中的操作是完全一样的,仅仅是Uri不同,下面将会看到。
Remoting 是.Net Framework的一个组成部分,作为一个框架(Framework),两个必备的特性是 基本实现 和 可扩展(可定制)。基本实现的意思是说:对于Remoting机制的各...11种不可不知的网络安全保护常识 - [网络安全]2009-06-01
Tag: 网络安全加强自我防范意识是我们防御网络威胁的第一步,在本文中我们11个方面来介绍平时使用网络过程中需加强的防范意识。
1、预防第一
保持获取信息。你是否知晓几乎每天都有病毒和安全警告出现?通过把我们的安全与修复主页加入收藏夹来获取最新爆发的病毒。
2、得到保护
如果你的机器上没有安装病毒防护软件,你最好还是安装一个。如果你是一个家庭或者个人用户,下载任何一个排名最佳的程序都相当容易,而...C#/ASP.NET程序员面试题(适合电话面试/简答题) - [找工作]2009-06-01
Tag: 面试题1. ASP.NET
1.1 ASP.NET中页面传值有几种方式?
1.2 ASP.NET的Session什么时候会被清空?
1.3 &...接下来5年中有用的开发技能 - [找工作]2009-06-01
Tag:接下来5年中有用的10种开发技能,你现在为之准备了吗?
10 skills developers will need in the next five years:
One of the “Big Three” (.NET, Java, PHP) Rich Internet Applications (RIAs) Web development Web services (REST, SOAP, JSON, ...面试时十个可反问主考官的问题 - [找工作]2009-05-31
Tag: 提问面试结束前,若能够提出漂亮的关键问题,说不定,对方会因此而录用你!
在面试结束前,大多数的主考官都会丢问题给求职者,最常见的就是:你有没有什么问题或疑问,想要提出来的?无论求职者是否有提出问题,其实,这个问题背后的真正含意,通常是主考官用来测试你对这份工作有多大的企图心、决心和热情。
因此,如果你害怕发问不妥当,或是不知道该从何问起,甚至回答没有问题时,都很可能会让主考官认为,你想要这份工作的企图心、决心还不够强。
...毕业生面试4印象“社会人”火候还不够 - [找工作]2009-05-31
Tag: 面试考官“2008届天津市千名优秀毕业生选拔推荐”工作日前结束,2000余名笔试胜出的学生分组接受了面试。人力资源专家们认为,学生们的总体素质较高,但在人际沟通能力、团队合作意识等方面有所欠缺,表明他们从“学生”向“社会人”的转变还需过程。
印象一:具备基本求职技巧 但不到位
在面试现场,大多数学生都穿着整洁,其中一部分“正装打扮”的则显示出他们对本...面试中常见的15个问题 - [找工作]2009-05-31
面试常见的15个问题:
不同职位对应聘者素质要求的重点不同,因此考官在面试时所提的问题也不尽相同。某就业指导服务中心为毕业生列出了面试中常见的15个问题,同学们可以试着回答一下,看你是否准备好了。
1、请介绍一下你和你的家庭。
2、你有什么优缺点?
3、你有什么特长和爱好?
4、你对自己的学习成绩是否满意?
5、你如何评价你的大学生活...职业生涯规划赢在明天 - [找工作]2009-05-31
Tag:在人生的不同阶段,每个人多多少少都得称称自己的斤两,并分析追求的目标及价值,这一行为,人们称其为“职业规划”。
刚刚完成学业的年轻人,总是意气风发、信心百倍地想干出一番大事业,感觉美好的未来正等着他们。但是面对职业生涯这块空白的画布,你一定踌躇了,一幅好的彩绘,画家掌握先描哪一笔,后描哪一笔是至关重要的,同样,一个成功的人生,先走哪一步,后走哪一步也是至...如今,网上求职已经变为求职的重要方式之一。互联网让找工作变得更加方便和快捷。想找什么类型的公司、什么职业、期望收入……在招聘网上一搜索,适合你的求职信息即在面前展现。随后,把自己的简历和求职信通过E-maill发过去就是了。但是,网上求职,真的像这般理想吗?往往我们会听到周围人抱怨:投出去的简历就如石沉大海,没有一丝回音。可见,网络求职并不只是在招聘网站上填填简历、发几个E-maill那么简单,要使网络求职成功率大大提高,必须搞定一些小窍门。
&nb...应届毕业生的五大求职优势 - [找工作]2009-05-31
1、没有经验,更易“入模子”
没有工作经验通常被认为是应界生求职的弱点,但没有经验也有优势,也就是人们常说的“一张白纸,能画最新最美的图画。”
应界生招聘进入企业,用全新的眼光,学习的心态对待工作,能够没有保留地接受与融入企业文化,不会带着以前工作经验的,用句俗话说,就是更容易入企业文化的“模子”。
...Tag: 识人三国时期的诸葛亮不仅谋略过人,在选人、用人方面也有独到的见解。他善于从人的“志”、“变” 、“识” 、“勇”、“性”、“廉”、“信”七个方面来考察识别人才。
一、“问之以是非而观其志”
 ...话说程序员的职业生涯 - [十字路口]2009-05-30
Tag: 职业生涯有一些年轻的程序员向我咨询,将来的路应该怎么走?俗话说,条条大路通罗马。不同的路都能走向成功。到底选哪条路,取决于自己的兴趣。可能有程序员会问:如果还没找到自己的兴趣怎么办?我的建议是多尝试,努力做,这是职业生涯的必经之路。当你积累了一定的技术和经验之后,就会面临多种选择。选择哪条路,因人而异。
如果对某一种或几种技术非常感兴趣,并且能够持续钻研,经过一定时期的积累,你可以逐渐成长为专家级程序员。专家级程序员对于所掌握的专业技术的熟练程度非一般程序员能及,各类常见编程问题在...ASP.NET 2.0服务器控件开发----控件生命周期 - [找工作]2009-05-30
服务器控件生命周期简介
服务器控件的生命周期是创建服务器控件最重要的概念。作为开发人员,必须对服务器控件生命周期深刻理解。当然,这不是一朝一夕就可以做到的。对于学习控件开发技术的初学者,可以不必掌握得非常详细深入,只需对服务器控件的生命周期中的不同阶段有一个大致的了解即可。
在掌握服务器控件生命周期的过程中,读者要特别注意有关服务器控件状态的相关内容。在重点了解生命周期各个阶段的同时,对服务器控件的状态变化要注意以下问题:控件的生命周期何时保存控件和恢...Tag: 数据库数据库综合比较结果
表1.1数据库综合比较结果表
性能 伸缩性 安全 &...MySql中的相关命名 - [MySql]2009-05-29
Tag: 大小写如果标识符是一个限制词或包含特殊字符,当你使用它时,你必须总是用`引用它:
SELECT * from `select` where `select`.id > 100; 名字大小写敏感性:数据库、表、表的别名区分大小写列名,列的别名不区分大小写 MySQL中,数据库和表对应于在那些目录下的目录和文件,因而,内在的操作系统的敏感性决定数据库和表命名的大小写敏感性。这意味着数据库和表名在Unix上是区分大小写的,而在Win32上忽略大小写。
...Tag: 字符串一个字符串是一个字符序列,由单引号(“'”)或双引号(“"”)字符(后者只有你不在ANSI模式运行)
有几种方法在一个字符串内包括引号:
一个字符串内用“'”加引号的“'”可以被写作为“''”。 一个字符串内用“"”加引号的“"”可以被写作为“""&rdqu...个人资料
日历
搜索
文章分类
最新文章
最新评论
存档







