朱文昊的中文博客--专注技术,向往自由
朱文昊 Albert Zhu
该用户没有分享资料
朱文昊 Albert Zhu
科研思维与论文写作之”5C”原则
2010年06月22日
点击下载:Notes for research design and paper writing
作者:黄合来
【核心提示】本文提出科研思维和论文写作的五大原则,包括评判性(critical)、一致性(consistent)、简洁性(concise)、清晰性(clear)和完整性(complete),以期为年轻学者和在读博士生的科研思维训练和规范提供参考。
【前言】
科学研究可以笼统的用胡适先生提出的“大胆假设,小心求证”进行概括,是一个开拓求新与严谨求实的有机结合。求新是一个基于对客观现象或问题的深入思考和探究,挣破旧有理论束缚,大胆创新,对未解决的问题提出新的假设或解决的可能。而求实是一个尊重证据,对新的方法或理论严谨求证的过程。科学的进步离不开两者的相辅相成,“求新”和“求实”两大准则应该贯穿整个科研实践过程。
然而,求新和求实两大准则往往由于其抽象性很难得到严格界定。实际科研工作过程往往要求遵循一些实用性更强的原则。良好的科研思维对于一个科研工作者极为重要,而科研思维的形成需要一个基于一系列具体原则的较为长期的训练。本文提出一个科研思维与论文写作的“5C”原则,力求具体,力求实用,以期为年轻学者和在读博士生的科研思维训练和规范提供参考。
【原则一】 Critical (评判性)
技术人才离职原因分析:一个技术管理者的总结
2010年06月22日
朱文昊按: 作为一个团结管理者,保证研发队伍的长期稳定是一项重要任务.如果公司领导真正重视员工,则下面大部分问题都不难解决.
技术人员是个特殊的群体,我接触过的HR人都这样讲,都来问我这样一个技术出身的管理者一个问题“技术人员拿么难沟通,他们到底在想什么”,对技术人员的离职就更是丈二和尚摸不着头脑,并且有个普遍的特色,技术人员的离职,对直接处理和主责的几个部门或主管,几乎没人能得到真实的信息和答案,即使有些原因被广为传颂,它可能仍然是不真实的,这一点提醒各级管理者,千万不要被猪油蒙住了双眼。我在整个与技术人员打交道的多年经历中,把经过的、经历的、处理的离职事件的原由一一列举,供参考并制定应对之策,请注意,很多是我事后,因个人朋友的身份才得到的,我自己都曾经被蒙蔽了很久。
C语言嵌入式系统编程修炼之二:软件架构篇
2010年06月12日
作者:宋宝华 来源:天极网
朱文昊按语: 最近读到的一篇文章,收藏并作为一篇程序员修炼之路专辑中的一篇文章.
模块划分
模块划分的”划”是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能进行划分在面向对象设计中成为一个错误,牛顿定律遇到了相对论),C语言模块化程序设计需理解如下概念:
(1) 模块即是一个.c文件和一个.h文件的结合,头文件(.h)中是对于该模块接口的声明;
(2) 某模块提供给其它模块调用的外部函数及数据需在.h中文件中冠以extern关键字声明;
(3) 模块内的函数和全局变量需在.c文件开头冠以static关键字声明;
(4) 永远不要在.h文件中定义变量!定义变量和声明变量的区别在于定义会产生内存分配的操作,是汇编阶段的概念;而声明则只是告诉包含该声明的模块在连接阶段从其它模块寻找外部函数和变量。如:
| /*module1.h*/ int a = 5; /* 在模块1的.h文件中定义int a */ /*module1 .c*/ /*module2 .c*/ /*module3 .c*/ |
以上程序的结果是在模块1、2、3中都定义了整型变量a,a在不同的模块中对应不同的地址单元,这个世界上从来不需要这样的程序。正确的做法是:
| /*module1.h*/ extern int a; /* 在模块1的.h文件中声明int a */ /*module1 .c*/ /*module2 .c*/ /*module3 .c*/ |
这样如果模块1、2、3操作a的话,对应的是同一片内存单元。
一个嵌入式系统通常包括两类模块:
(1)硬件驱动模块,一种特定硬件对应一个模块;
(2)软件功能模块,其模块的划分应满足低偶合、高内聚的要求。
多任务还是单任务
所谓”单任务系统”是指该系统不能支持多任务并发操作,宏观串行地执行一个任务。而多任务系统则可以宏观并行(微观上可能串行)地”同时”执行多个任务。
多任务的并发执行通常依赖于一个多任务操作系统(OS),多任务OS的核心是系统调度器,它使用任务控制块(TCB)来管理任务调度功能。TCB包括任务的当前状态、优先级、要等待的事件或资源、任务程序码的起始地址、初始堆栈指针等信息。调度器在任务被激活时,要用到这些信息。此外,TCB还被用来存放任务的”上下文”(context)。任务的上下文就是当一个执行中的任务被停止时,所要保存的所有信息。通常,上下文就是计算机当前的状态,也即各个寄存器的内容。当发生任务切换时,当前运行的任务的上下文被存入TCB,并将要被执行的任务的上下文从它的TCB中取出,放入各个寄存器中。
嵌入式多任务OS的典型例子有Vxworks、ucLinux等。嵌入式OS并非遥不可及的神坛之物,我们可以用不到1000行代码实现一个针对80186处理器的功能最简单的OS内核,作者正准备进行此项工作,希望能将心得贡献给大家。
究竟选择多任务还是单任务方式,依赖于软件的体系是否庞大。例如,绝大多数手机程序都是多任务的,但也有一些小灵通的协议栈是单任务的,没有操作系统,它们的主程序轮流调用各个软件模块的处理程序,模拟多任务环境。
GPS探测运动
2010年06月11日
GPS可以作为探测运动和观测变化世界的绝佳工具。
如果用GPS接收器对某一固定点连续读取数据的话,就可以追踪这一点的运动情况,例如火山在内部岩浆作用下的不断膨胀,或是从南极大陆架上断裂下来的冰山的移动情况。增加接收器的数量(提高精度),用已知精确位置的GPS固定基站的信号作为基准,就可以清晰地捕捉到物体1/10英寸的突然运动,并对其进行实时监测。有了这项技术,科学家们就可以“上天入地”,探索很多我们原来并不十分清楚的动态过程。
香港的青马大桥是世界上最长的悬索桥,全长2200米,主桥跨度达1377米,两座吊塔高206米,距离海面62米。大桥可以承受强烈台风的袭击,桥体摇动距离可以达到几英尺,而疾驰而过的列车也会造成大桥主跨产生上下半米左右的振动。不过大桥的摇动也不能过于剧烈,如果桥身侧摆超过5米,大桥的钢梁和吊索就会像面条一样发生扭曲和弯折。
为了防患于未然,监测青马大桥的工程技术人员采用了GPS传感器阵列来对大桥的三维空间位置进行实时监控。他们在大桥的吊索、桥面和桥塔上安装了14个GPS接收器,这些接收器用长达数公里的光缆相连。这些传感器每秒钟都会向中央主控计算机发送10次各自的空间位置信息。同时在另外两个固定点上安装的GPS传感器也向主控计算机发回数据,主控计算机对数据进行校正以减小其误差。这样就可以把大桥的空间位置精确地显示出来,其水平误差不超过1厘米,垂直误差不超过2厘米。计算机还可以计算出风速和风向,并估算出大桥各个部位的应力和载荷状况,这样维护人员就可以方便地安排修理和维护工作。
科学家们还从来没有实地观察过金星或其他星球上的火山爆发。他们只知道在远古时代那里曾经有过火山爆发,但是对岩浆的流动速度、粘稠度等许多具体情况却无从得知。现在也没有能够在金星表面进行实地勘测的设备。于是科学家们就只能寻找地球上与之相类似的物质进行替代研究,然后把地球表面的物质与卫星照片进行对照,再分析其它星球的卫星照片,以此来分析推断遥远星球的情况。
在观察地球卫星照片的时候,科学家们发现美国新墨西哥州两处长达40到50公里的岩浆流,地理学家给它们起名为Car-rizozo和McCartys。这么长的岩浆流在地球上实属罕见,但在金星上却是很典型的情况。金星上的温度要比地球高得多,岩浆流的长度和存留时间要比地球上更长。
研究人员搜集了有关这两处岩浆流的几千份GPS数据,建立了岩浆流在许多不同地点的精确地形剖面图资料。这些岩浆流经地段的高度、坡度等地形资料能够帮助地质学家们了解岩浆的粘稠度,从而也就能判断出岩浆的成份及其流动的速度。Carrizozo和McCartys这两处岩浆流中间部分的粘稠度较低,而边缘部分粘稠度则较大,所以这两处岩浆流的特点就是中间流速大、不易冷却,边缘流速慢、冷却速度快。GPS数据还显示了凝固的岩浆外壳下隐藏着的奇异现象,其中包括岩浆流中心的一条岩浆管道,这一管道可以使岩浆在长达15公里的距离内保持融化状态。研究人员目前还不知道金星上是否也存在这种岩浆管道,这是一项很吸引人的研究内容。如果没有GPS的高精度测量技术,研究人员或许根本不会去研究这个问题,了解这一切的唯一途径就是亲自深入险地进行观测,但即使研究人员呆在火山爆发的地方亲自观察也未必能有这样的发现。
GPS系统在很多领域都获得了广泛的应用,它的功能现在已经不仅仅局限于为个人提供位置和时间信息了。拥有这项技术,我们向宇宙的真相又迈进了一步。GPS系统的未来无可限量,技术进步带来的梦想也是没有止境的。
我也来公布一下QQ腾讯微博的邀请码
2010年05月29日
腾讯微博的邀请码 蒲公英种子。有人用过了的话,请评论一下,好让别人知道哪个链接已经失效了。谢谢。(失效的已删除。每日检查)
5月31日最近更新获得的QQ腾讯微博的邀请码:
http://t.qq.com/invite/1e73af0e573436d07833
http://t.qq.com/invite/6e107876a0cb9e168675
http://t.qq.com/invite/d981e8af49eb0df5624d
http://t.qq.com/invite/07be4078012495c2799d
http://t.qq.com/invite/9a5beda996feb78771a5
29日有5个新的:
http://t.qq.com/invite/8870b1e184f1eb5144b7
http://t.qq.com/invite/55eaff62b78e9e077719


Facebook
Twitter
Picasa
LinkedIn
Youtube
Digg
Buzz