一切福田,不離方寸,從心而覓,感無不通。

恐怖症

恐怖症是以恐怖症状为主要临床表现的一种神经症。患者对某些特定的对象或处境产生强烈和不必要的恐惧情绪,而且伴有明显的焦虑及自主神经症状,并主动采取回避的方式来解除这种不安。患者明知恐惧情绪不合理、不必要,但却无法控制,以致影响其正常活动。恐惧的对象可以是单一的或多种的,如动物、广场、闭室、登高或社交活动等。本病以青年期与老年期发病者居多,女性更多见。国外报道一般人口中的患病率为6‰(1983),我国各地调查患病率的平均值为0.59‰(1982)。但1969年Agras的研究报告的患病率为77‰。 病因 1.遗传因素 双生子研究发现同卵双生子比异卵双生子出现恐怖症同病的现象多一些,提示遗传因素可能与发病有关。但也有对恐怖症的家系研究并未发现双生子同病率增加。因此尚无明确证据表明遗传在该病的发生中起重要作用。 2.素质因素 患者在病前性格偏向于幼稚、胆小、害羞、依赖性强和高度内向。 3.心理社会因素 在发病中常起着更为重要的作用。例如某人遇到车祸,就对乘车产生恐惧。可能是在焦虑的背景上恰巧出现了某一情境,或在某一情景中发生急性焦虑而对之发生恐惧,并固定下来成为恐怖对象。对特殊物体的恐怖可能与父母的教育、环境的影响及亲身经历(如被狗咬过而怕狗)等有关。心理动力学派认为恐怖是被压抑的潜意识冲突的象征作用和置换作用的结果。条件反射和学习理论在该症发生中的作用是较有说服力的解释。 2临床表现 恐怖症的核心症状是恐惧紧张,并因恐怖引起严重焦虑甚至达到惊恐的程度。因恐怖对象的不同可分为以下几种: 1.社交恐怖症 主要是在社交场合下几乎不可控制地诱发即刻的焦虑发作,并对社交性场景持久地、明显地害怕和回避。具体表现为患者害怕在有人的场合或被人注意的场合出现表情尴尬、发抖,脸红、出汗或行为笨拙、手足无措,怕引起别人的注意。因此回避诱发焦虑的社交场景,不敢在餐馆与别人对坐吃饭,害怕与人近距离相处,尤其回避与别人谈话。赤面恐怖是较常见的一种,患者只要在公共场合就感到害羞脸红、局促不安、尴尬、笨拙、迟钝,怕成为人们耻笑的对象。有的患者害怕看别人的眼睛,怕跟别人的视线相遇,称为对视恐怖。 2.特定的恐怖症 特定的恐怖症是对某一特定物体或高度特定的情境强烈的、不合理的害怕或厌恶。儿童时期多发。典型的特定恐怖是害怕动物(如蜘蛛、蛇)、自然环境(如风暴)、血、注射或高度特定的情境(如高处、密闭空间、飞行)。患者会因此而产生回避行为。 3.场所恐怖症 不仅害怕开放的空间,而且担心在人群聚集的地方难以很快离去,或无法求援而感到焦虑。场所恐怖性情境的关键特征一是没有即刻可用的出口,因此患者常回避这些情境,或需要家人、亲友陪同。 3诊断 1.符合神经症的诊断标准; 2.以恐惧为主,需符合以下4项:①对某些客体或处境有强烈恐惧,恐惧的程度与实际危险不相称;②发作时有焦虑和自主神经症状;③有反复或持续的回避行为;④知道恐惧过分、不合理,或不必要,但无法控制; 3.对恐惧情景和事物的回避必须是或曾经是突出症状; 4.排除焦虑症、分裂症、疑病症。 4鉴别诊断 1.焦虑症 焦虑症和恐怖症都以焦虑为核心症状,但焦虑症患者的焦虑是持续存在的,并非针对某一具体的处境或对象。而恐怖症伴有的焦虑多是境遇性的、针对性的、发作性的,随着回避恐惧对象或处境焦虑可减轻或消失。 2.强迫症 强迫症状源于患者内心的某些思想或观念,怕失去自我控制,并非对外界事物的恐惧,常有强迫动作。 3.疑病症 疾病恐惧的患者可能与疑病症相似,恐惧情绪一般不突出,而且疑病症担心的是自身,认为自己的怀疑和担心是合理的;而恐怖症所害怕的是外在的对象或处境,并且认为这种恐惧是不合理的,只是无法摆脱。 5治疗 1.药物治疗 减轻紧张、焦虑或惊恐发作,可选用苯二氮卓类药物或/和抗抑郁剂,如选择性5-羟色胺再摄取抑制剂、三环类抗抑郁剂等。 2.心理治疗 心理治疗是治疗该病的重要方法,常用的有: (1)行为治疗 包括系统脱敏疗法、暴露疗法等,为治疗特定恐怖症最重要的方法。其原则包括:一是消除恐惧对象与焦虑恐惧反应之间的条件性联系,二是对抗回避反应。 (2)认知行为治疗 认知行为疗法是治疗恐怖症的首选方法。既往的行为治疗方法更强调可观察到的行为动作,长期疗效不甚满意。认知行为治疗在调整患者行为的同时,强调对患者不合理认知的调整,效果更好。尤其对社交恐怖症患者,其歪曲的信念和信息处理过程使得症状持续存在,纠正这些歪曲的认知模式是治疗中非常关键的内容。 (3)社交技能训练 社交恐怖症的患者常有社交技能缺陷或低估自己的社交技能,因此可以通过一定时间的训练来改善患者的症状。包括:治疗师的示范作用、社交性强化、暴露的作业练习、自我肯定训练等。 from:http://baike.baidu.com/view/67724.htm

龙生   28 Oct 2014
View Details

焦虑症

焦虑症,又称为焦虑性神经症,是神经症这一大类疾病中最常见的一种,以焦虑情绪体验为主要特征。可分为慢性焦虑(广泛性焦虑)和急性焦虑发作(惊恐障碍)两种形式。主要表现为:无明确客观对象的紧张担心,坐立不安,还有植物神经症状(心悸、手抖、出汗、尿频等)。 注意区分正常的焦虑情绪,如焦虑严重程度与客观事实或处境明显不符,或持续时间过长,则可能为病理性的焦虑。 病因 目前病因尚不明确,可能与遗传因素、个性特点、认知过程、不良生活事件、生化、躯体疾病等均有关系。 2临床表现 1.慢性焦虑(广泛性焦虑) (1)情绪症状在没有明显诱因的情况下,患者经常出现与现实情境不符的过分担心、紧张害怕,这种紧张害怕常常没有明确的对象和内容。患者感觉自己一直处于一种紧张不安、提心吊胆,恐惧、害怕、忧虑的内心体验中。 (2)植物神经症状头晕、胸闷、心慌、呼吸急促、口干、尿频、尿急、出汗、震颤等躯体方面的症状。 (3)运动性不安坐立不安,坐卧不宁,烦躁,很难静下心来。 2.急性焦虑发作(惊恐发作、惊恐障碍) (1)濒死感或失控感在正常的日常生活中,患者几乎跟正常人一样。而一旦发作时(有的有特定触发情境,如封闭空间等),患者突然出现极度恐惧的心理,体验到濒死感或失控感。 (2)植物神经系统症状同时出现如胸闷、心慌、呼吸困难、出汗、全身发抖等。 (3)一般持续几分钟到数小时发作开始突然,发作时意识清楚。 (4)极易误诊发作时患者往往拨打“120”急救电话,去看心内科的急诊。尽管患者看上去症状很重,但是相关检查结果大多正常,因此往往诊断不明确。发作后患者仍极度恐惧,担心自身病情,往往辗转于各大医院各个科室,做各种各样的检查,但不能确诊。既耽误了治疗也造成了医疗资源的浪费。 3.恐怖症(包括社交恐怖、场所恐怖、特定的恐怖) 恐怖症的核心表现和急性焦虑发作一样,都是惊恐发作。不同点在于恐怖症的焦虑发作是由某些特定的场所或者情境引起,患者不处于这些特定场所或情境时不会引起焦虑。例如害怕社交场合或者人际交往,或者害怕某些特定的环境:如飞机、广场、拥挤的场所。恐怖症的焦虑发生往往可以预知,患者多采取回避行为来避免焦虑发作。 4.在美国的精神障碍诊断标准中,焦虑障碍内容很广泛,包括 广泛性焦虑、急性焦虑发作、恐怖症、创伤后应激障碍、急性应激障碍、强迫障碍。 3诊断 主要根据病史、家族史、临床症状、病程及体格检查、量表测查和实验室辅助检查,由专科医生诊断。其中最主要的是临床症状和病程。诊断标准具体可参照国际疾病的诊断分类标准(ICD-10)中焦虑症的诊断。 另外,作为早期筛查或自我诊断,大家也可以采用一些简单的焦虑自评量表,如SAS。如果分数较高,建议到精神科或心理科做进一步检查。 4治疗 焦虑症是神经症中相对治疗效果较好,预后较好的疾病。通常采用心理治疗和药物治疗。 1.药物治疗 医生一般会根据患者病情、身体情况、经济情况等因素综合考虑。一般建议服药1~2年左右。停药及加量请咨询医生,不可自行调整药物治疗方案。在服药期间,注意和医生保持联系,出现副作用或其他问题及时解决。 (1)苯二氮卓类药物(又称为安定类药物)①优点见效快,多在30~60分钟内起效;抗焦虑效果肯定;价格较便宜。②缺点效果持续时间短,不适合长期大量使用;有可能产生依赖。常用药物:劳拉西泮(罗拉)、阿普唑仑,一天2~3次。属于短中效的安定类药物,抗焦虑效果好,镇静作用相对弱,对白天工作的影响较小。使用原则:间断服药原则,焦虑严重时临时口服,不宜长期大量服用;小剂量原则,小剂量管用就不用大剂量;定期换药的原则,如果病情需要长期服用,3~4周就更换另一种安定类药物,可以有效避免依赖的产生;换药时,原来的药慢慢减,新加上的药慢慢加。如果患者年龄偏大,服药剂量不大,疗效较好时,也可以不换药。只要安定类药物服用的剂量不增加,在正常范围内,疗效不减弱,就可以认为没有产生依赖性。 (2)抗抑郁药因为焦虑的病因会导致机体神经-内分泌系统出现紊乱,神经递质失衡,而抗抑郁药可使失衡的神经递质趋向正常,从而使焦虑症状消失,情绪恢复正常。①广泛性焦虑常用治疗药物是帕罗西汀(赛乐特)、艾司西酞普兰(来士普)、文拉法辛(博乐欣、怡诺思)、黛力新等。②惊恐发作常用治疗药物是帕罗西汀(赛乐特)、艾司西酞普兰、氯米帕明等。 (3)这类药物的特点抗焦虑效果肯定、从根本上改善焦虑、无成瘾性,适合长期服用、抗焦虑效果见效慢,2~3周后起效,常常需要同时短期合用安定类药物、价格偏贵。 2.心理治疗 心理治疗是指临床医师通过言语或非言语沟通,建立起良好的医患关系,应用有关心理学和医学的专业知识,引导和帮助患者改变行为习惯、认知应对方式等。药物治疗是治标,心理治疗是治本,两者缺一不可。 还有适合焦虑症患者的心理治疗生物反馈治疗、放松治疗等等。 5治疗 越早诊断,越早治疗,焦虑症的预后就越好。经过专科规范治疗后,绝大多数患者会得到临床康复,恢复往日愉快心情。 特别应该强调的是:症状缓解后,仍需要坚持服用1~2年时间抗抑郁药物;停药以及减药需咨询专科医生,千万不要擅自调整药物治疗方案。 from:http://baike.baidu.com/view/69241.htm

龙生   28 Oct 2014
View Details

动画讲解Eclipse常用快捷键

Eclipse有强大的编辑功能, 工欲善其事,必先利其器, 掌握Eclipse快捷键,可以大大提高工作效率。小坦克我花了一整天时间, 精选了一些常用的快捷键操作,并且精心录制了动画, 让你一看就会。 注释 Ctrl+/ 能为光标”所在行”或者”选中行”添加注释或者取消注释。 也可以对多行添加或取消注释 快速修复 Ctrl + 1 删除当前行 Ctrl+d 光标位于行的任何地方, 按Ctrl+D 删除当前行, 当然也可以删除空行, 不用为了删除行,而按很多删除键了 格式化整个文档 Ctrl+Shift+f 插入空行 Shift + Enter Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后) Shift + Ctrl + Enter 在当前行的上一行插入空行 编辑窗口最大化 Ctrl + m 大屏幕可以提高工作效率, Ctrl + m 可以将编辑窗口最大化 显示大纲 Ctrl + O 显示类中方法和属性的大纲,能快速定位类的方法和属性 查找Java类文件 Ctrl + Shift + T 查找工作空间(Workspace)构建路径中的可找到Java类文件,不要为找不到类而痛苦,而且可以使用“*”、“?”等通配符。 查找引用 Ctrl+Shift+G 查找类、方法和属性的引用。这是一个非常实用的快捷键,例如要修改引用某个方法的代码,可以通过【Ctrl+Shift+G】快捷键迅速定位所有引用此方法的位置。 后退历史记录 Alt+ ←、Alt+ → 后退历史记录和前进历史记录,在跟踪代码时非常有用,用户可能查找了几个有关联的地方,但可能记不清楚了,可以通过这两个快捷键定位查找的顺序。 快速查找选定的内容 Ctrl+K Ctrl + K 快速向下查找选定的内容,从此不再需要用鼠标单击查找对话框了。 Ctrl + Shift + K 快速向上查找选定的内容 重命名 Alt+Shift+R from:http://www.techug.com/eclipse-shortcut-keys

龙生   28 Oct 2014
View Details

程序员写代码时应该反复问自己的10个问题

你想成为一名优秀的程序员吗? 那么,现在是时候放下《24小时学会xxx语言v8.3》超级骗子书,相反,你应当养成每天反问自己以下10个问题的习惯。 你的代码中是否有一种模式存在? 找寻模式中的可行与不可行将发现其中看似无关的想法或基本原则。要对工作达到深入的理解,你必须养成反问自己“是否有一种模式存在?”的习惯。 它不仅仅适用于你的代码。是否有适应各类型商业变化的模式吗?是否有一种适用于技术发展的模式?你有没有看到同类型的错误如雨后春笋般冒出来? 所谓理解就是要理解模式 — 以赛亚·伯林 怎么让代码变得更简单? 开发者经常想得到复杂的和可扩展的解决方案。做一些极为复杂的东西,觉得自己就是自己宇宙的主宰。问题是将来你永远无法预知产品和业务会如何改变。 “架构”和代码更像是园艺而不是建筑。你必须要有能力去适应不断变化的环境。越复杂的解决方案越难做。 简洁是终极的复杂 —  列昂纳多·达·芬奇 你知道程序为什么要这样运行吗? 知道东西像那样运作和知道为什么会像那样运作是两个完全不同的事。如果你知道事情为什么会那样,那么你就能够做出更好的决策。 一个伟大的程序员和知道有某种编程语言的人来说,差别在于理解为什么的深度。 同样的原理也适用于问题修正。“重启一下服务。” “你试过重启吗?” 当有问题发生时,我们经常会想到这些话。每次你这样说时,你就失去了一个学习的黄金机会。 理解为什么出现这样的错误,将修正根本原因,避免出现治标不治本。最起码,你以后不要再犯同样的错误。 之前有没有人写过这样的代码? 无论何时,你发现自己发明了一个复杂的算法,你很可能走在了错误的轨道上。除非你搜索到一份别人正好解决了这个问题博士论文。 需要编写一个向用户鼠标旁的item添加标签的算法?看看Voronoi Tesselations. 想要找到卡车送货的最短路径?看看Dijkstra. 想要找到用户输入内容的最接近的标记?应该是找到它的Levenschtein distance. 这只是几个简单示例,相信我,它们无处不在。 我能够看得更远,那是因为我站在巨人的肩上 — 艾萨克·牛顿 你知道这种技术的出处吗? 你认为你知道REST吗? 你有读过Roy Fielding描述REST的论文原文吗?你真的明白它的最初用意吗?那种在IDE v7工具中比你多用REST API生成向导5分钟的家伙写出来的博客可不算数的。 帮自己一个忙,试图去读概念或原理的原始文档,然后通过各种手段去了解行业领袖的最新发展动态。如果你不知道他们是从哪些开始的,那就紧跟他们的步伐吧?(不知道他们从哪来,就跟着他们到哪去吧!) 我喜欢现在所做的吗? 请面对编程其实是很难的。 除了很难以外,编程还是发展很快的。Art框架从2年前的“笨重恐龙”已经发展到今天的标准。为了站到你“游戏”的顶端,你必须树立一个终生学习和研究的信念。 如果你不喜欢你所做的,那么你就没有跟上其他家伙(喜欢自己所做的)的可能。所以找到让你激情燃烧的编程类型!不要因为市场缺口或者收入不菲而决定成为一名安全专家,不要因为一篇文章说UX是最热门的职业而决定成为一名UX专家。 再说一次,做你喜欢的。 做你喜欢的,所需的资源将随之而来的 — 彼得·麦克威廉斯 这些代码还可以用在其它地方吗? 我看到程序员最大的一个限制就是,自己失败的想象力。 如果我们学习到一个适应于特定环境的东西,或者看到解决某个特定问题的技术时,我们认为这就它唯一适用的地方。这是完全错误的。每当学到新东西时,反问自己:“其他地方还可以使用吗?” 当发现了在图表上定位节点的新的伟大的方法时,是不是可以将它应用于二维数据集中感兴趣数据的定位呢?当发现通过websockets从客户端发送数据到服务器端的新方法时,它怎么才能应用到可扩展的后台服务上呢?有时是错误的,但有时也是正确的。 这给我们带来了下一个问题…… 逻辑只能带你从A到Z,想像力去可以带你到任何地方 — 阿尔伯特·爱因斯坦 今天有什么做错的吗? 增加创收的最简单方法是降低错误的损失。 游戏开发公司Valve和其他几个公司很认为这个观点。这同样适用你成为web开发者的进步过程。如果你害怕失败,你就不会有大的突破。 勇敢、尝试、失败、学习然后再来。 不要害怕错误,它能让你认识失败,然后重新来过。— 本杰明·富兰克林 难道真的没有办法吗? 我们生活在世界上很小的一个地方是不可能的(除了少数例外)。 假设不管你做的什么事情都是可行的,然后采用向后的方向回推回去。你可能会发现,你想做的暂时是不切实际的,但它足以改变世界,可能变成现实的速度比你想像的还要快。 似乎一切看起来都是不可能,除非你完成它 — 纳尔逊曼德拉 我可以向谁学习? 永远不要在一群你在其中是最聪明的人的地方工作。 挑选拥有可以启发你、激励你做得更多的同事的工作和公司。不要与编程扯上关系,在文本编辑器和命令行外面还有一个完整的世界存在。从其他领域学习,设法应用到你的工作中。 永远不要满足于能胜任现有的工作! from:http://www.techug.com/10-questions-developers-should-be-asking-themselves

龙生   28 Oct 2014
View Details

10个帮程序员减压放松的网站!

同学们工作之余,不妨放下微博跟朋友圈,来这10个网站感受一下看着就醉了的情境:「念完往上一推音乐键,我往后一靠,潮乎乎的软皮耳机里头,音乐排山倒海。」今天推荐的网站,利用代入感强的图片与音频,迅速帮你抹平焦虑,获得平和心态,特别献给改稿千遍的设计师们。 1.  Calm 这是同类型中最火的网站了,站如其名,「平和」,通过自然的图像(阳光下的暖流、淙淙的小溪等)与缓缓的音乐,帮你在短时间内放松下来。 左侧有时间设定,从 2 分钟到 20 分钟,右底部可以改变音频、图像,调节音量等。还有 IOS 客户端下载呦。 2.  Do Nothing For 2 Minutes 「木头人,两分钟」,这是一个简单到极致的网站,当你打开的时候,自动开始计时,这时间你不能触碰键盘和鼠标,否则 2 分钟会重置。 你需要做的,就是放下手头的工作,静静地享受潮声,这也很棒,不是吗?两分钟足够你冷静下来,休息一下了。 3.  Get Relaxed 如果两分钟不足以让你彻底放松,试试这个。如下图,打开网站后,头枕着双手往后仰,欣赏自然风光,聆听网站为你精心挑选的音乐。 图像 3 秒一换,有 15 种,每种持续大概 2 – 4 分钟,现在,开始吧! 提醒:网站有简陋广告,稍微影响体验。 4.  LoungeV Studio 前三个都是图像,现在来个新鲜的。这个网站提供高清的自然风光视频 + 音乐。有沙滩、瀑布、水下景色等等,网站背景是一个温馨的客厅,右侧有视频可选,对喜欢看视频的同学来说,还是蛮不错的。 5.  A Soft Murmur 这个网站太棒了!小编玩了好久都舍不得停下来。网站让你自由创造美妙的声音。你可以通过混合不同的声音(雨声、火柴燃烧的声音、打雷声、海潮声…..不一而足。但是,总有一款令你爱不释手!)当然,声音的大小也可以自己调节。 如果你对混合的声音非常满意,也可以分享到脸书、谷歌等…. 6.  Nature Sounds For Me 这个比上面那个界面稍逊,但是玩起来更嗨!它提供的声音除了以上的自然类声音,还有很多你想不到的:绵羊咩咩、骏马跺脚喷气、不同的鸟叫声,甚至是心脏跳动、厨房叮当的声音,不仅令人身临其境,而且搭配起来简直不能更欢乐! 当然,它还有 IOS 客户端。 7.  Noisli 这个网站根据你的情绪变化,选择不同的音乐和背景颜色。颜色大多朴素平和,背景声音也有对应的图标可以选择。还有一点贴心的设计是,网站右侧有便签本,你可以一边享受静谧时光一边随手记点事。 为了造福大众,网站还提供 IOS 版。 8.  Soundrown 网站一进去,有 3 个关键词:放松、专注、逃离。的确,它成功做到了这一点。它有 10 种不同的声音帮助你放松心情,也可以混合使用。不同的声音对应不同的背景,网站非常有设计感,相信你会重新回来体验一次。 9.  The Thoughts Room 一句话简洁:世界的秘密——树洞类网站。你可以在这里向全世界倾诉你的任何想法,网站支持 37 种语言,不过看了一下,没有中国… 10.  Raining.Fm 有时候,我们需要的仅仅是一点点雨声来帮助我们平静。网站专门提供雨声,因为单一,所以也更加专业。网站有 3 种不同的雨声类型,右侧有定时器可以在你放松时提醒你,简单也好用的一个网站,赞一个。 from:http://www.techug.com/website-make-you-relax

龙生   28 Oct 2014
View Details

要想提高工作效率,请拒绝做这7种事

忙未必就说明你有生产力。要想有生产力,更多的是要管理好你的精力而不是时间。要经营好你的生活。我们需要学会花费最小的精力得到最大的收益。不干以下 7 件事,我把每周的工作时间从 80 小时缩短到了 40 小时,但是完成的工作却多了很多。 1、不加班效率高 每周 5 天,每天 8 小时的工作制是福特在 1926 年的发现。实验表明,把每天工作时间从 10 小时降至 8 小时,每周工作时间从 6 天降至 5 天后,生产力反而提升了。 1980 年由商业圆桌会议发布的《建筑项目的加班效应》指出,无论从短期还是长期来看,工作越多,效率和生产力都会下降: 若每周工作时间超过 60 小时的情况持续超过两个月,生产力下降的累积效应将导致完工日期推迟,而同样的人数每周只工作 40 小时甚至还会更早完工。 美国军方研究表明,“每天少睡 1 小时持续一周会导致相当于 0.1 血醇水平的认知退化”。 《睡眠的秘密世界》指出: 熬夜之后无论白天你干得有多好,情绪不会太高。更重要的是前瞻性思考和行动的意愿、对冲动的抑制、乐观程度、同理心、情商等也会下降。 所以保证充足的睡眠对于维持高水平的生产力十分重要。 很多名人的经验是白天多小睡。达芬奇、拿破仑、爱迪生、罗斯福夫人、吉恩•奥特里、肯尼迪、洛克菲勒、丘吉尔、林顿•约翰逊、里根等都有小睡的习惯。 2、不要老说“好的” 根据 20/80 原理(帕累托原理),20% 的努力创造出 80% 的结果;但反过来 20% 的结果消耗了 80% 的努力。因此我们应该把精力集中在能产出 80% 结果的事情上,然后放弃其他的事情。如此就能把更多的时间集中在最重要的任务上。我们应该对低产出甚至无结果的任务停止说“yes”。 成功人士和非常成功人士的区别在于后者几乎对所有事情说“不” ——巴菲特 这就引出一个问题:我们该对哪些事情说“yes”,对哪些事情说“no”呢?如果想不出哪些事情值得花时间,不妨来个简单的分离测试。跟踪自己所做的一切事情然后尽可能优化。 我们中的大多数往往都说了太多的“yes”,因为这比拒绝要容易得多。没人想当坏人。 2012 年的消费者杂志发表了一项研究,研究人员把 120 人分成了 2 组。一组人训练成说“我不能(I can’t)”,另一组则说“我不(I don’t)”。结果很有趣: 告诉自己“我不能吃 X”的学生在 61% 的时间内选择了吃巧克力糖,而告诉自己“我不吃 X”的只在 36% 的时间里抵挡不住诱惑。在说法上作这么简单的一个变化就能显著改善健康食品的选择。 所以,下次需要避免说 yes 的时候,直接说“我不”。 另一个避免不必要活动的技巧是 20 秒规则:对于不应该做的事情多给自己 20 秒的时间考虑。 3、不要事必躬亲 我曾经管理过一个非常大的社区,试图一个人做完所有事情,最后发现我干不了。我筋疲力尽,最后社区接管了自我管理的工作。令人惊奇的是大家做得比我还好。我因而领悟到了社区的力量。 我们必须意识到,在需要的时候可以去寻求帮助,这一点很重要。让做得更好的人接管你的一些工作对你来说更好。这可以让你花更多的时间在自己最重要的任务上。不要把时间浪费在自己解决问题上,让专家帮助你。 很多时候,哪怕朋友不能帮你,他们的陪伴也能让你更有生产力。 4、不要完美主义 达尔豪斯大学的心理学教授 Simon Sherry 的完美主义与生产力研究发现,完美主义是生产力的绊脚石: […]

龙生   28 Oct 2014
View Details

要嫁就嫁程序猿——钱多话少死的早

一、 程序猿问科比:“你为什么这么成功? ” 科比:“你知道洛杉矶凌晨四点是什么样子吗? ” 程序猿:“知道,一般那个时候我还在写代码,怎么了?” 科比:“额…….” 二、 女神:你能让这个论坛的人都吵起来,我今晚就跟你走。 程序猿:PHP语言是最好的语言! 论坛炸锅了,各种吵架。 女神:服了你了,我们走吧,你想干啥都行。 程序猿:今天不行,我一定要说服他们,PHP语言是最好的语言。 三、 我是一个苦b的程序员,今晚加班到快通宵了,困得快睁不开眼了,女上司很关心,问我要不要吃宵夜。我没好气地说,宵夜就算了,能让我睡一觉就行了。女上司红着脸说了句讨厌啊,然后坐在我身边不动,好像距离我很近,搞得我很紧张,难道她发现我的程序出了bug? 四、 老公一定要找程序员!!!!!! 钱多话少死的早 五、 老婆给当程序员的老公打电话:“下班顺路买一斤包子带回来,如果看到卖西瓜的,就买一个。” 当晚,程序员老公手捧一个包子进了家门…… 老婆怒道:“你怎么就买了一个包子?!” 老公答曰:“因为看到了卖西瓜的。” 六、 七、 某人发帖子:“各位JR,我想做一个程序猿,请问有什么要注意的……” 某猿:“等我下班跟你细说……” 然后……就没有然后了 八、 我问程序员朋友借了1000,他说再多借你24吧,凑个整 九、 程序员A: “我吃鱼香肉丝盖饭, 你吃什么?” 程序员B: “宫保鸡丁盖饭.” 程序员A 在点菜单写上: 鱼香肉丝盖饭 1 宫保鸡丁盖饭 1 程序员B: “我还是要牛肉面吧!” 程序员A 更正点菜单: 鱼香肉丝盖饭 1 // 宫保鸡丁盖饭 1 牛肉面 1 十、 我是一个程序猿,一天我坐在路边一边喝水一边苦苦检查bug,这时一个乞丐在我边上坐下了,开始要饭,我觉得他可怜,就给了他一块钱,然后接着调试程序。他可能生意不好,就无聊的看看我在干什么,然后过了一会,他幽幽说,这里少了一个分号。 我惊奇的问:“你也懂这行啊” 乞丐说:“我以前就是做这个的。” 十一、 某程序员退休后决定练习书法,于是重金购买文房四宝。一日,饭后突生雅兴,一番研墨拟纸,并点上上好檀香。定神片刻,泼墨挥毫,郑重地写下一行字:hello world! 十二、 搞IT太辛苦了,想换一行怎么办?”“敲一下Enter键。” 十三、 程序员不喜欢乾隆的第八个儿子,因为八阿哥 bug 十四、 一女同学在食堂吃饭时,一程序猿凑到旁边,“同学,我能和你说话不,我已经一个月没和女生说话了。 十五、 两个程序员在聊天:“我昨天碰到个辣妹。我把她带回家,马上就开始如饥似渴地亲吻,她就坐在我的键盘上,然后……”“你在家里也有台电脑?CPU是什么型号的?” 十六、 程序员的读书历程:x 语言入门 —> x 语言应用实践 —> x 语言高阶编程 —> x 语言的科学与艺术 —> 编程之美 —> 编程之道 —> 编程之禅—> 颈椎病康复指南。 […]

龙生   28 Oct 2014
View Details

十大编程算法助程序员走上高手之路

算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists)。 算法步骤: 1 从数列中挑出一个元素,称为 “基准”(pivot), 2 重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作。 3 递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序。 递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去,但是这个算法总会退出,因为在每次的迭代(iteration)中,它至少会把一个元素摆到它最后的位置去。 算法二:堆排序算法 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。 堆排序的平均时间复杂度为Ο(nlogn) 。 算法步骤: 创建一个堆H[0..n-1] 把堆首(最大值)和堆尾互换 3. 把堆的尺寸缩小1,并调用shift_down(0),目的是把新的数组顶端数据调整到相应位置 4. 重复步骤2,直到堆的尺寸为1 算法三:归并排序 归并排序(Merge sort,台湾译作:合并排序)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 算法步骤: 1. 申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列 2. 设定两个指针,最初位置分别为两个已经排序序列的起始位置 3. 比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置 4. 重复步骤3直到某一指针达到序列尾 5. 将另一序列剩下的所有元素直接复制到合并序列尾 算法四:二分查找算法 二分查找算法是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜 素过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组 为空,则代表找不到。这种搜索算法每一次比较都使搜索范围缩小一半。折半搜索每次把搜索区域减少一半,时间复杂度为Ο(logn) 。 算法五:BFPRT(线性查找算法) BFPRT算法解决的问题十分经典,即从某n个元素的序列中选出第k大(第k小)的元素,通过巧妙的分 析,BFPRT可以保证在最坏情况下仍为线性时间复杂度。该算法的思想与快速排序思想相似,当然,为使得算法在最坏情况下,依然能达到o(n)的时间复杂 度,五位算法作者做了精妙的处理。 算法步骤: 1. 将n个元素每5个一组,分成n/5(上界)组。 2. 取出每一组的中位数,任意排序方法,比如插入排序。 3. 递归的调用selection算法查找上一步中所有中位数的中位数,设为x,偶数个中位数的情况下设定为选取中间小的一个。 4. 用x来分割数组,设小于等于x的个数为k,大于x的个数即为n-k。 5. 若i==k,返回x;若i<k,在小于x的元素中递归查找第i小的元素;若i>k,在大于x的元素中递归查找第i-k小的元素。 终止条件:n=1时,返回的即是i小元素。 算法六:DFS(深度优先搜索) 深度优先搜索算法(Depth-First-Search),是搜索算法的一种。它沿着树的深度遍历树的节点,尽可能深的搜索树的分 支。当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发 现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。DFS属于盲目搜索。 深度优先搜索是图论中的经典算法,利用深度优先搜索算法可以产生目标图的相应拓扑排序表,利用拓扑排序表可以方便的解决很多相关的图论问题,如最大路径问题等等。一般用堆数据结构来辅助实现DFS算法。 深度优先遍历图算法步骤: 1. 访问顶点v; 2. 依次从v的未被访问的邻接点出发,对图进行深度优先遍历;直至图中和v有路径相通的顶点都被访问; 3. 若此时图中尚有顶点未被访问,则从一个未被访问的顶点出发,重新进行深度优先遍历,直到图中所有顶点均被访问过为止。 上述描述可能比较抽象,举个实例: DFS 在访问图中某一起始顶点 v 后,由 v 出发,访问它的任一邻接顶点 w1;再从 w1 出发,访问与 w1邻 接但还没有访问过的顶点 w2;然后再从 w2 出发,进行类似的访问,… 如此进行下去,直至到达所有的邻接顶点都被访问过的顶点 u 为止。 接着,退回一步,退到前一次刚访问过的顶点,看是否还有其它没有被访问的邻接顶点。如果有,则访问此顶点,之后再从此顶点出发,进行与前述类似的访问;如果没有,就再退回一步进行搜索。重复上述过程,直到连通图中所有顶点都被访问过为止。 算法七:BFS(广度优先搜索) 广度优先搜索算法(Breadth-First-Search),是一种图形搜索算法。简单的说,BFS是从根节点开始,沿着树(图)的宽度遍历树(图)的节点。如果所有节点均被访问,则算法中止。BFS同样属于盲目搜索。一般用队列数据结构来辅助实现BFS算法。 算法步骤: 1. 首先将根节点放入队列中。 2. 从队列中取出第一个节点,并检验它是否为目标。 如果找到目标,则结束搜寻并回传结果。 否则将它所有尚未检验过的直接子节点加入队列中。 3. 若队列为空,表示整张图都检查过了——亦即图中没有欲搜寻的目标。结束搜寻并回传“找不到目标”。 4. 重复步骤2。 算法八:Dijkstra算法 戴克斯特拉算法(Dijkstra’s algorithm)是由荷兰计算机科学家艾兹赫尔·戴克斯特拉提出。迪科斯彻算法使用了广度优先搜索解决非负权有向图的单源最短路径问题,算法最终得到一个最短路径树。该算法常用于路由算法或者作为其他图算法的一个子模块。 该算法的输入包含了一个有权重的有向图 G,以及G中的一个来源顶点 S。我们以 V 表示 G 中所有顶点的集合。每一个图中的边,都是两个顶点所形成的有序元素对。(u, v) 表示从顶点 u 到 v 有路径相连。我们以 E 表示G中所有边的集合,而边的权重则由权重函数 w: E → [0, ∞] 定义。因此,w(u, v) 就是从顶点 u 到顶点 v 的非负权重(weight)。边的权重可以想像成两个顶点之间的距离。任两点间路径的权重,就是该路径上所有边的权重总和。已知有 V 中有顶点 s 及 t,Dijkstra 算法可以找到 s 到 t的最低权重路径(例如,最短路径)。这个算法也可以在一个图中,找到从一个顶点 s 到任何其他顶点的最短路径。对于不含负权的有向图,Dijkstra算法是目前已知的最快的单源最短路径算法。 算法步骤: 1. 初始时令 S={V0},T={其余顶点},T中顶点对应的距离值 若存在<v0,vi>,d(V0,Vi)为<v0,vi>弧上的权值 若不存在<v0,vi>,d(V0,Vi)为∞ 2. 从T中选取一个其距离值为最小的顶点W且不在S中,加入S 3. 对其余T中顶点的距离值进行修改:若加进W作中间顶点,从V0到Vi的距离值缩短,则修改此距离值 重复上述步骤2、3,直到S中包含所有顶点,即W=Vi为止 算法九:动态规划算法 动态规划(Dynamic programming)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时间往往远少于朴素解法。 动态规划背后的基本思想非常简单。大致上,若要解一个给定问题,我们需要解其不同部分(即子问题),再合并子问题的解以得出原问题的解。 通常许多 子问题非常相似,为此动态规划法试图仅仅解决每个子问题一次,从而减少计算量: 一旦某个给定子问题的解已经算出,则将其记忆化存储,以便下次需要同一个 子问题解之时直接查表。 这种做法在重复子问题的数目关于输入的规模呈指数增长时特别有用。 关于动态规划最经典的问题当属背包问题。 算法步骤: 1. 最优子结构性质。如果问题的最优解所包含的子问题的解也是最优的,我们就称该问题具有最优子结构性质(即满足最优化原理)。最优子结构性质为动态规划算法解决问题提供了重要线索。 2. 子问题重叠性质。子问题重叠性质是指在用递归算法自顶向下对问题进行求解时,每次产生的子问题并不总是新问题,有些子问题会被重复计算多次。 动态规划算法正是利用了这种子问题的重叠性质,对每一个子问题只计算一次,然后将其计算结果保存在一个表格中,当再次需要计算已经计算过的子问题时,只是 在表格中简单地查看一下结果,从而获得较高的效率。 算法十:朴素贝叶斯分类算法 朴素贝叶斯分类算法是一种基于贝叶斯定理的简单概率分类算法。贝叶斯分类的基础是概率推理,就是在各种条件的存在不确定,仅知其出现概率的情况下, 如何完成推理和决策任务。概率推理是与确定性推理相对应的。而朴素贝叶斯分类器是基于独立假设的,即假设样本每个特征与其他特征都不相关。 朴素贝叶斯分类器依靠精确的自然概率模型,在有监督学习的样本集中能获取得非常好的分类效果。在许多实际应用中,朴素贝叶斯模型参数估计使用最大似然估计方法,换言之朴素贝叶斯模型能工作并没有用到贝叶斯概率或者任何贝叶斯模型。   from:http://www.techug.com/10-algorithm-help-programmer-grow-up

龙生   28 Oct 2014
View Details

22条日常技巧助程序员提高工作效率、节约时间

我一直在测试和调整各种生产效率的技术,在过去的五年中,阅读了大量的书籍(其中大多数是重复的) ,这里是我的一些结论: 这不是一个关于时间的问题,而是关于精力。 为了“有效率”,我们试图在一个工作日内塞进尽可能多的小时,但最终一切都更多地取决于你的注意力,积极性和良好状态(这些都是直接与精力等级联系在一起)而不是工作时间 。 我最近在葡萄柚的一个内部演示上提及了我提高效率的想法,结果性的演示是在Slideshare上的:producitivity porn. 其中一些关键结论: 1. 决定什么是重要的事,因为在5年之内,你现在做的80%的事情都不会有任何结果。那只是无用功,没有有用的结果。 2. 睡眠,饮食和运动可以让你的成果提高到三倍,因为他们可以帮助你增强你的注意力,动力和精力水平。 3. 两分钟法则:如果你可以在两分钟内做完一件事(比如回复邮件或是一个家务),那就现在做。计划着一会儿完成它,记着它,并在未来完成它会花费五分钟甚至更多的时间。 4. 五分钟法则:治疗拖延症最好的办法不是定目标去完成一个可怕的大任务,而是只在那件事上花五分钟。你会发现在大多数情况下,它在超出五分钟的时候依旧很顺利,因为你进入了平坦期。 5. Seinfeld生产链:如果你想做好一件事,那就每天去做。包括圣诞节,复活节和审判日。没有例外。 6. 微小的生活习惯:与五分钟法则高度结合起来,你可以很快地形成好习惯。这个很有用,我测试过的。 7. 你的记忆力烂透了。 即使你是一个天才也要把每件事都从你的脑子里清出来。把他们写在一个笔记本上,放进待办事项列表的应用程序里,记在手机里,或是告诉Siri,我不在意你使用的方法。 8. 尽量少使用工具。我曾经测试过大多数代办事件管理器,并最终保持使用Cultured Code的Thing app和谷歌日历(iCal 是不错,但是谷歌日历和我的默认客户端Gmail结合得很好)。如果你了解了下一条规则,你用什么就并不重要了(铅笔或是钢笔都是可以的)。 9. 规则强于工具。你需要纪律,这对我来说意味着两件事:我每天早晨做得第一件事是计划我的一天,并且我每天都写一个简短的工作日志。这有助于帮助我保持清醒,有良好的优先级排序,去掉无用的任务,并且做有意义的事情。这节约了我很多时间。 10. 番茄计时器,这是一个时间盒。在30分钟内只做手头的事情,不做任何其他的事情:没有电话,邮件,不和别人说话,没有社交网站。除了记得在发生火灾时从楼里跑出来外,没有别的了。 11. 总是带着耳机。 你没必要在听音乐,但是这会阻碍别人接近你。 12. 邮箱调度和收件箱清零。不要把查邮箱当做你一天里的第一件事,也不要在晚上看它(这件事毁掉了我的很多 个晚上),试着一天只查三次:早上十一点,下午两点和下午五点。你的收件箱并不是一个待办事项列表。把它清空:每一封邮件都应该是一个可操作的任务(把它 和待办列表连在一起),或是一个参考文献(把它发到Evernote或存档),或是现在就应该删掉。 13. 对手机来说也是一样的。不要总是能被联系到,我总是把手机静音,并分批回电话。 14. 把小事情分批,比如邮件,电话,或是facebook等等。 15. MI3,最重要的三件事(或是改成一件必做的,3件应该做的,或是五件可以做的)。早晨开始做最重要的一件事。 16. 意志力是有限的。不要认为在你遇到麻烦的时候意志力会帮你。把最重要的事情放在早晨做,并且尽可能地让所有事情自动化(委托,分批等等)。美国总统不需要每天选择他们的菜单和衣服颜色,否则他们的意志力会在晚些他们需要按下(或不按)红色按钮时耗尽。 17. 最有驱使力的事情。总是问问自己,你现在能做的最有驱使力的事情是什么,然后应用规则14。 18. 经常推出新产品。不要过分地润色它。就像他们在创业公司圈所说的,“如果你不因你的产品感到难堪,你已经推出得太晚了。” 19. 压力会带来奇迹。使用奖励或是社会承诺。我们最近在新的葡萄柚网站上实施了这一点。之前的那个网站投入使用花了两年半的时间,而新的这个只花了两天半,我们用了一个周末进行编程马拉松(外加周一)。 20. 有计划的拖延。你的大脑需要休息,并且有时候新一期的绿箭侠可以比最好的TED演讲创造更大的奇迹。 21. 删除,说不,忽略,不要坚守日程表。我喜欢最后一点,它来自于马克·安德森,因为这样可以让他立即见任何他想见的人。这样很多人会恨你,但是你有时间做相关的事情。你认为你会在20年后后悔这样做吗?或是为了一些人做一些你不在意的事情,只是为了表面上的赞赏。 22. 假装无能。这是一个应用之前规矩的很有策略的方法。 这次就到这里,我的拖沓休息结束了,我要回去工作了。 【补充】: Colin Shillingford 在他的回复中认为,“节约”时间的最好方法是充分利用我们的时间。我们无法创建之前不存在的时间。我们所能做的,改变任务的优先级,或者调整任务的顺序。 我们中的大多数,正是在这方面出问题了。此外,Colin 在回复中也推荐了他认为很不错的番茄时间管理方法。 稿源:程序师 from:http://www.oschina.net/news/56502/what-are-the-best-day-to-day-time-saving-hacks

龙生   28 Oct 2014
View Details