Hello,LLVM

LLVM是Low Level Virtual Machine的缩写,虽然名字叫了虚拟机,但它的目标可很宏伟,要做一套编译器的基础架构,从编译到运行无所不包。

构建LLVM

先来下载LLVM的发行版本    http://llvm.org/releases/

每个LLVM的发行版里都包括很多内容,比如为LLVM提供的C语言前端Clang,通向JVM和.NET的VMKit,给gcc提供的插件DragonEgg等等。这里,我们选择从LLVM源码开始。

LLVM以CMake作为构建系统,以便在不同的平台上用不同的编译器都可以进行构建。为了更好的对构建内容进行统一,我们在LLVM的目录下建立一个build目录,这样,就可以把所有生成的内容都放到这个目录下。进入到这个目录下    llvm/build$ cmake ..这个命令运行的结果会在build目录下生成一个Makefile。上面只是按照缺省配置进行生成,我们也可以对其定制,比如:    llvm/build$ cmake .. -DCMAKE_INSTALL_PREFIX=/home/dreamhead/applilcations/llvm -DBUILD_SHARED_LIBS=ON通过CMAKE_INSTALL_PREFIX,我们指定了安装的路径,让BUILD_SHARED_LIBS等于ON,生成的就是动态库,而非静态库。

有了Makefile,就可以进行真正的构建了。    llvm/build$ make

经过漫长的等待,最终会生成LLVM的库,然后就可以进行安装了    llvm/build$ make install

例子时间

在下面这个例子里面,我们用LLVM的指令集创建了一个非常简单的函数,求和,它等价于:  int add(int a, int b) {    return a + b;  }之后,我们以1和2作为参数调用了这个函数,并把运行结果显示出来。

#include “llvm/LLVMContext.h”#include “llvm/Module.h”#include “llvm/Function.h”#include “llvm/Analysis/Verifier.h”#include “llvm/ExecutionEngine/GenericValue.h”#include “llvm/ExecutionEngine/JIT.h”#include “llvm/DerivedTypes.h”#include “llvm/Support/IRBuilder.h”#include “llvm/Support/raw_ostream.h”#include “llvm/Target/TargetSelect.h”

using namespace llvm;using namespace std;

Function* create_add_function(Module* […]

[译文]招聘蹩脚程序员指南

作  者:Code_anthem

译  者:Xguru

审  校:Bearice

招聘蹩脚程序员指南

      我读了大量关于如何招募 卓越 开发者 的文章,但是如果你只对招聘蹩脚程序员感兴趣,那又该怎么办呢?也许你不愿意用钱去利滚利,或者你只觉得把工作完成就谢天谢地了。不管什么原因,这个蹩脚程序员系列文章就是玩这个把戏的。欢迎来到第一部分:“如何招聘蹩脚程序员”

      招聘启事是你潜在的程序员工对你公司的第一印象,所以要把这些令人反胃的玩意给弄上。

1.列出一大坨技术缩写

     

      不管人们写招聘启事或者做面试的时候他们有什么的想法。(最重要的是某个时刻这些技术能用在你的代码库里)

      没有什么比在招聘启事中玩时髦术语(buzzword)游戏更让开发者喜爱的了。

 

       如果这些技术都超过了十年的话则更好。别担心它们看起来好像你是在用核对表(checklist)在充字数,开发者“喜欢”把他们多年的工作边缘化到一个整洁的小框框内。

2.在每种技能前面加上任意的数字

       给人们按照工龄发工资很重要,而不是按照他们的天赋、娴熟的综合能力。为此目的,一定要在每个技能前加上一个数字来代表年份。一个招聘技术专家的启事应该像这样:

10年以上IT领域经验  8年以上的Microsoft技术的经验  5年以上关系型数据库经验,比如SQL Server  3年以上C#经验  1年以上Web技术经验

 

               (译注:作者在推上恶搞了个“5年 Visual Studio .NET 2008经验”)

      

[…]

论思维的刚性与柔性(科学的迷信-2)

论思维的刚性与柔性(科学的迷信-2) 郑晖 科学的迷信(2)

三、一切科学都是假说

有两个司空见惯的词组:科学真理和科学假说。殊不知一个是自相矛盾,一个是同义反复。科学是人造的,真理是天造的,将二者并论,如同说“人造纯天然”一样滑稽。而“科学假说”的提法则与“人造非天然”具有相同的冗余度,因为所有的科学本质上都是假说。有人会说这是在抹煞科学假说与科学理论之间的区别,理由是前者是尚未证实的主观推测,而后者是被证实的客观真理。其实前面的讨论早已化解了这一责难,现在请出波普尔(Karl Popper)先生来一锤定音。

我们一直在谈论着科学,却从未明确地给出它的定义。与其重复乏味无趣、充满误导且毫无启示性的名词解释,不如探讨一个更有意义的问题:科学与非科学的划分标准是什么?对于这个划界问题(demarcation problem),以逻辑实证主义为代表的证实主义坚持证实原则,即能被经验证实的理论便是科学,否则便不是。我们不再重述该观点的致命硬伤,只多言一句:证实论者看起来非常强调科学的客观性,自己偏偏违背了客观原则——对理论经过有限次检验后便断定其完全被证实,是不是太过主观了?波普尔的证伪主义(falsificationism)反其道而行之,坚持证伪原则:一个理论是否是科学的,当且仅当它是可证伪的(falsifiable)或可反驳的(refutable)或可验证的(testable)。乍听上去真有些荒诞,把科学与“真”(理)、(证)“实”这样的正面词汇相剥离已是有违常理了,现在竟然要与负面的(证)“伪”为伴了?居然还“当且仅当”?简直是“当当”两记闷棍嘛。

有必要先解释一下,所谓一个命题是可证伪的,并不是指它一定是错误的,而是指它在理论上容许有反例,或者等价地,它有可能被经验所否定。为更好地理解这个定义,不妨反过来思考:一个不可证伪的命题意味着什么呢?一种情形是命题在逻辑上永真,诸如2+3=5、“哥哥比弟弟年长”、“一周有七天”等等。另一种情形是命题无法被经验验证。比如“存在一个全知全能的上帝”、“我们生活的世界都是虚幻的”等等。逻辑学和数学中的命题属于第一种情形,因而这两门学科在波普尔看来都不属于科学。这并不奇怪,因为二者是纯粹理性的产物,并无经验上的意义。宗教和哲学中的命题属于第二种情形,所以宗教和哲学也属于非科学。请注意,这丝毫不意味着宗教命题或哲学命题是错误的或不重要的,仅仅是说它们无法被检验。

一个至关重要的问题是:可证伪理论的合理性在哪里?在回答这个问题之前,我们返回开篇的问题:科学为什么值得信赖?此前业已论证,科学并没有常人想象的那么可靠。科学研究的每个环节——观察、归纳、证实都不能保证它的绝对可靠性,更何况所有的科学理论还建立在假设之上。其实这些都还不是最关键的,它们只是科学工作者所关心的问题,普通民众并不关心也无从关心。可为什么后者对科学的信任度丝毫不亚于前者呢?当然不是因为他们直接参与或见证了科学研究的全过程,而是因为在日常生活中一再见识到科学的预见力(这种预见力一般通过技术来展现),从而感受到科学的价值和力量,以至于对科学坚信不疑。这也不难理解为什么古人更相信巫师、算命先生而不是科学家,因为当时的科学尚不具备令人信服的预见力。精准的预见力不仅给人们一种心理上的强烈震撼,还能带来更多新的事实。宇宙何其之大,事实何其之多,指望漫无目标的观察带来有价值的结果,无异于相信手执铁锹便可从自家后院里挖出金子。有了理论预测,人们才能针对性地安排一些实验,既可以有效地获得新发现,还能有效地检验新理论。可以想见,没有牛顿力学的预测,加勒(Johann Galle)不会从浩渺的天空中幸运地发现海王星;没有广义相对论的预测,爱丁顿也不会带领探险队远赴非洲观测日全食。

事情渐渐明朗了,判断一个命题是否有经验性的价值,关键看它是否包含目前尚未知晓的信息。“明天要么下雨要么不下雨”,对则对矣,可全无用处。“明天将要下雨”,虽未必对,但至少可作参考。有人会说:一个百分之百正确的命题岂不更有价值?此言差矣,如果一个命题不经经验事实的检验就能保证正确,那要么是一个重言式命题(tautology),要么是一个数学命题[1],不能带来超出逻辑或数学以外的知识,故而算不得是一种经验预见。“好人死后上天堂,坏人死后下地狱”倒是包含了预见性信息,惜乎无法被证实,故而它的价值仅停留于宗教或道德层面而非经验层面。作为鲜明的对照,牛顿力学因准确地预见了海王星而达到辉煌的顶点,广义相对论因准确预言了恒星光线在太阳附近的偏转角而轰动世界。

波普尔的证伪(或称否证)学说深受“犹太三杰”——弗洛伊德、马克思和爱因斯坦的影响。他本人不仅也是犹太裔,而且可以算是弗洛伊德的徒孙(为弗洛伊德的弟子阿德勒工作过),早年(自认为)是一个共产主义者,与爱因斯坦也有过直接的交往。这三位以及其追随者对各自理论的态度大相径庭,令波普尔感触极深。精神分析学者从来不预测任何事情,但却宣称能解释一切事情。一个人因私利而杀人,他们可以解释;另一个人为正义而牺牲,他们也可以解释。马克思主义者也不遑多让,他们能把任何可以设想的事件解释为对他们理论的证实。资本家降低工资?那是对工人的剥削,是本性使然。资本家提高工资?那是为了调和劳资矛盾,乃情非得已。何时该坚持本国特色、何时该与国际接轨?只要“活学活用”辩证法,何愁不左右逢源?他们也不是全无预测,不过一旦预测失败,总能很轻易地通过引入辅助性的特设来挽救原有的理论。爱因斯坦的态度则迥然不同。他总是在寻求判决性实验,如果结果不出所料,并不能确证其理论;如果结果与预言相悖,则宣告理论失效。比如,他明确地声称:如果不能发现引力红移现象,那么广义相对论将是不可信的。强烈的对比让波普尔得出一个论断:科学态度是批判的态度,必须彻底抛弃教条主义,让理论事先作出超出常识的、尽可能精确的预言,并坦然地接受实验的否证,而不是事后百般地辩解。由于因果关系的不对称性,预见结果比解释原因困难得多,因而先见之明比后见之明有说服力得多。这时候请股评家们来现身说法是再合适不过的了。提起前一天的股市行情,无论如何诡谲多变,他们都能分析得头头是道,“必然”二字贴满了一脸。可一到第二天的行情预测,他们便开始含糊其辞,扭头从“必然”王国走进了“自由”王国。

可证伪理论是时代的产物。牛顿的经典物理学曾被看作终极的宇宙真理,拉格朗日(Joseph Lagrange)的话道出了当时科学家的心声:“牛顿是伟大的,他发现了宇宙的规律;牛顿也是幸运的,因为宇宙只有一个。”随着相对论和量子力学的兴起,牛顿理论作为绝对真理的神话彻底破灭。作为这一科学史上重大事件的见证者,波普尔意识到:科学的本质不在于无误性,而在于可错性。此处的错,不一定指彻头彻尾的错误。例如,牛顿力学并未完全被否定,在宏观低速的领域仍然是适用的。爱因斯坦说得好:一个理论的最好命运莫过于它能指出一条通往一个更广泛理论的道路,而它在新的理论中作为一种极限情形继续存在。

证伪论的合理性还体现在它聪明地绕开了那些使证实论难以自拔的沼泽地。它不纠缠于认识论中有关知识的来源以及可靠性等问题,也不再枉费心机地为归纳法正名,更干脆地放弃了对科学的真理性的执着坚守,把传统的“观察-归纳-证实”的实证机制用“问题-猜想-反驳”的试错机制来代替(或:问题1-尝试解决-消除错误-问题2)。由于证伪过程是一种否定后件式的假言推理,属于演绎推理(deductive reasoning),具有归纳推理所不具备的逻辑上的严格性。只是一个反例便足以推翻一个定律,这种类似“一票否决”的机制听起来未免过于残酷。对此波普尔的说法是:不可反驳性不是一个理论的长处,而是它的短处。不敢冒被反驳的危险的理论是没有实质性内容的,如果我们的目的是追求知识的增长,那么就应该放弃追求理论的(逻辑)高概率(没有任何实质内容的重言式概率最高)。理论的内容越丰富,则包含的信息越多,禁止发生的现象越多,也就越容易被未来的经验所反驳。从这里我们看到了经济学原理的影子:理论的价值与风险成正比。此外,波普尔还把生物学中的进化论引入认识论,认为知识的增长是一个自然选择的结果,人类拥有的知识时时刻刻由迄今在适者生存的竞争中幸存下来的假说组成。

证伪论不仅重新定义了科学理论——可以被证伪但尚未被证伪的猜想或假说,也重新定义了科学态度——不是小心地呵护理论、谨慎地避免错误,而是不断地挑战理论、努力地发现错误并从错误中学习。必须了解,当一个理论完备到足以解释世间发生的任何事件的时候,当一个理论灵活到足以躲避任何攻击的时候,当一个理论被声称是放之四海而皆准、永远颠扑不破的时候,当一个理论被高喊着要坚决捍卫的时候,当一个理论被用作评判其他理论的标准的时候,恰恰是该理论远离真理接近教条、远离科学接近迷信的时候。

四、没有绝对理性的科学

波普尔开创了批判理性主义(critical rationalism)的先河,他的证伪论大胆新颖、简洁有力。但证伪论也有它的局限,同样要接受他人的批判,而这也正是它所倡导的。实际上,一个理论不可能因为一个反例就轻易地被否证。有时是因为反例本身来源于观察,而观察并不完全可靠;有时是因为忽略了某些不该忽略的因素;有时被否证的理论通过少量的修改可以继续存在。总之,否证论过于刚断激进,忽略了理论的柔韧性和稳定性(波普尔本人也意识到否证的界限并不总是那么清晰的)。例如,牛顿理论在解释水星近日点进动(perihelion precession)的问题上遭到了困难,但人们并没有立即抛弃该理论,而是孜孜不倦地寻找支持的证据,甚至希望能有类似海王星那样的发现。直到广义相对论成功地解释这一现象并被广泛地接受后,这种努力才被放弃。此外,否证论是从微观的角度来探求科学发展的模式,全然忽略了科学理论的历史背景和整体框架。

库恩(Thomas Kuhn)是一个证伪论的反对者,当然也是证实论的反对者。他创造性地提出了一套范式(paradigm)理论,认为科学的发展不是线性递增的渐进过程,而是周期性的革命或突变,即范式转移(paradigm shift)(这一术语并非库恩创造的,不过后来被广泛地应用于其他领域)。所谓范式,不是指某个具体的理论,而是指科学共同体(scientific community)共有的世界观和方法论,包括价值标准、形而上学原则、符号体系、理论框架、应用方法等等。通俗地说,范式就是看待问题和解决问题的模式与套路,既有客观成分——理论和方法体系,也有主观成分——心理信念。据此,库恩把科学的发展过程描述为如下几个周期性的阶段——

前科学-常态科学-危机-革命-新的常态-新的危机

在从事某一学科的研究者对共同研究的问题尚未达成基本共识之前,该学科处于前科学(prescience)阶段。各种候选范式激烈碰撞、互相融合,最后脱颖而出的范式成为公认的准则。于是,研究活动开始从无组织到有组织、从多样化到单一化,此时便进入常态科学(normal […]

论思维的刚性与柔性(科学的迷信-1)

论思维的刚性与柔性(科学的迷信-1) 郑晖 科学的迷信(1)

科学,一个神圣的词汇,作为名词是真理的同义语,作为形容词是正确的换喻词。渺小的人类正是依仗科学这把神兵利器,俨然已可与大自然分庭抗礼。从来没有一种信仰能象科学那样深入人心,胆敢怀疑科学者似乎不是愚昧便是狂妄。本节标题把科学与迷信并列,绝非哗众取宠,而旨在说明一个现象:科学在破除大量迷信的同时,也渐渐变成了一种新的迷信。

有关科学的神话不胜枚举,下面是一些最常见的说法——

科学是客观纯粹的、绝对理性的、价值中立的、普遍正确的、确定无疑的 科学观察是客观的、价值无涉的,并且先于科学理论 科学的发现均始于观察,完全依靠逻辑推理,因此结论是可靠的 科学建立于事实之上,科学实验是客观的、可重复的,因而科学是可靠的 科学真理是可以被证明的,科学理论就是被证实的科学假说 科学不需要假设 科学是精确的,至少可以无限地趋于精确 科学的发展完全是由其自身的内部逻辑力量推动的 科学终究能了解宇宙的终极真理,是万能的(在广度和深度上没有极限) 科学没有边界,也没有极限 不符合科学、不能用科学来解释的东西都是无用的或不正确的,应当坚决摒弃 科学不需要形而上学 科学与宗教不相容 科学给人类带来幸福

接下来我们将一一刺破这些迷信的肥皂泡。为了让话题更加集中,如无特别说明,以下科学主要指狭义的自然科学。

一、没有绝对可靠的科学

首当其冲的一个问题是:科学如此值得信赖的根本原因是什么?也许可以换种问法:科学与其他途径获得的知识有何本质的不同呢?最常见的一种解释是:科学是从客观事实中严格推导出来并通过实践检验的。言下之意,从可靠的事实出发作可靠的推理,得出的结论自然也是可靠的,更何况还要经过反复的验证。真是环环相扣、无懈可击,简直不容置疑。事实上,我们的思维早已被训练得如此地刚性,以至于对此哪怕只闪现一丝怀疑的火花,都会本能地自行掐灭,以防灼伤大脑。本着寻根究底的科学精神,我们发现以上解释实际上隐含着三个观点:一、人的感官经验(sense experience)是确实的和精确的——实证主义(positivism)的观点;二、从一系列特殊的事实能推出一般性的结论——归纳主义(inductivism)的观点;三、被经验证实(empirically verified)的理论是有效的——证实主义(verificationism)的观点。随着哲学标签的引入,我们的讨论开始弥漫起学术的气息,希望您感到的是陶醉,而不是晕眩。下面,让我们试着往思维中掺入一点柔性的元素,以审视的目光重新打量这三个观点。

1. 关于经验观察的可靠性: 人们永远不可能通过观察获得绝对客观的事实。

首先,由于测量仪器精度有限、测量方法或理论公式不够完善、实验条件不尽理想、实验者存在生理局限,实验中的各种偶然误差和系统误差无法避免。随着实验手段的进步,测量误差可以降低,但永远不可能完全消除。海森堡(Werner Heisenberg)的不确定性原理(uncertainty principle)甚至从理论上保证了有些成对的共轭(conjugate)物理量(如位置与动量)不能同时达到任意精度。有人认为只要测量误差足够小,那么对结果的影响总是可以忽略不计的。可惜混沌(chaos)现象的出现破坏了这种乐观的情绪,人们发现一个非线性动力系统可能会对初始值具有极其敏感的依赖性,即俗称的“蝴蝶效应”。换言之,一个混沌系统对测量误差是零容忍的。

其次,观察者的测量行为可能影响到被观察的事实。正如量子力学中所揭示的那样,观察者既是观众,又是演员。当我们测量水温时,温度计已经改变了水温;当我们测量轮胎气压时,已经放跑了部分气体;当我们偷窥动物的世界时,往往在不意间会惊飞几只灵敏的鸟儿。

最后,观察者的客观性存疑。种种实验表明,人的感官并不绝对可靠。耳听固然是虚,眼见也未必为实,难道忘了我们是怎么一次次地被魔术师们欺骗的吗?不仅如此,观察者的实验行为依赖于其理论知识和实验目的,同时也掺杂着个人情感和价值判断,从而不可能做到绝对的中立、客观和理性。一个家喻户晓(但未必真实)的例子是牛顿因观察到苹果的落地而得出了万有引力定律,为什么其他人都熟视无睹?另一个著名案例来自密立根(Robert Andrews Millikan),他在作油滴实验时有意识地去掉了“丑陋的”数据以迎合完美的理论,并因此获得了诺贝尔物理学奖。

2. 关于归纳推理的可靠性: […]

别人的代码——Programmers(13)

载于《程序员》杂志2010年第03期。

这个系列的漫画讲述程序员——这种神秘人类的囧事,故事多来源于我身边的程序员朋友,且以互联网开发背景为主。

如果你有什么可乐的关于程序员的故事、对话、代码,愿意通过漫画的形式分享,请给我发邮件。arthur369@gmail.com。

我的SEO经历(1)

以前有朋友想要我说说我的SEO经历的,所以这几篇文章就陆续写一下,希望能对很多SEOer有启发。我的经历非常草根,可能很多草根站长都会在其中找到自己的影子吧。

我98年开始上网,因为当时很多媒体爆炒互联网的神奇,那时候经常报道谁谁做了一个什么网站就一夜成名,所以一开始上网我就对做网站有很大的兴趣。虽然那时还在读高中,但是经常跑出去上网,对很多制作网站的技术已经很了解,还想着以后做一个大网站。到了大一,刚开学就做了我的第一个正式的网站,记得是讲叙我家乡的旅游风光的网站,拍了很多照片,还讲叙了从各地怎么到我家乡旅游。那时宣传那个网站的方法,就是去网上搜集一个又一个的email地址,然后一封封发邮件邀请他们来访问,记得每天能有一百多人访问,经常去刷计数器看看有多少人访问了。

当然后来很快的就知道了专业的email marketing 手段并应用了起来,并一直使用到现在。所以我常和周围朋友说我的 email marketing 经验和SEO经验一样多。(这么多年的email marketing,有很多值得一说的经历,以后有机会再谈)。

而SEO,我是在2000以前就有所了解,在做这个旅游网站的时候也开始应用了。以前我看到一篇关于中国SEO的介绍,说2003年中国的SEO才开始,其实早在99年的时候,就有一些中文的介绍搜索引擎排名的资料了。国外的SEO起步更早,我在《一个关于SEO的故事》中就有介绍。不过那时候,没有SEO这个名词的产生,大家都认为只是一些吸引流量的小花招而已,主要也只在雅虎上做排名。2000年的时候,大家还不用百度和google,还停留在所谓“三大门户”(搜狐、网易、新浪)的时代。

我的比较正式的SEO经验,可以说是搜狐这个网站教给我的。那时候搜狐有自己的搜索引擎,不过是仿照雅虎的做法,你要自己主动去提交网站,由人工编辑审核的。去搜狐提交网站的时候,那个页面上列了很多禁忌,如:网站名称当中不能重复关键词、网站描述中不能重复关键词、网页上的标题中不能重复关键词、网站名称不能和网站介绍内容一致等等。因为有雅虎的经验在先,我那时候马上意识到,这有可能就是在搜狐上排名的几个重要的因素。所以就在语句尽可能通顺的情况下反其道而行之,结果如我所料,有意重复的关键词都排在前面了。后来基本上在搜狐,想排的关键词都能排在第一。

不过那时候SEO也不是我的重点,因为我是在运营这个旅游网站,搜索引擎优化顶多是我拉流量的一个方法而已。我那时总觉得这个东西是旁门左道,不能长久的。那时做搜索引擎优化拉来的流量,也比通过email来的少得多。

第一次意识到SEO的价值,是在2001年给我几个师兄做了求职的个人主页后。那时候有几个要毕业的老乡听说我会做网站,就找我帮忙做一些个人主页,他们求职的时候放到简历上好看一点。我顺便就给这些个人主页做了一下排名,如在搜狐上搜索“机械设计”、“安全工程”,找到的第一个网站就是这些个人主页。有个老乡后来告诉我,他的老板就是通过搜索这些关键词找到他的。

2002年,我觉得自己有能力做一个大站了,就开始筹划做一个地区性门户网站。当时的目标是超过本地的信息港。花了5个月的时间、挂了几门功课终于做完了。从设计、程序、到运营都是我一个人完成。涉及到了房产、招聘、二手信息、供求信息、影视、聊天室、论坛、交友、本地信息查询等等。记得那时候我没有钱买网站的空间域名,是我拿了自己一半的学费来买的(这是我最佩服自己的一件事情,学费后来都还清了)。

网站是分频道上线的,而且很多信息都是网友自己发布,所以马上有了很多信息。那时候,专业的搜索引擎开始崛起,一个网站从搜索引擎上获得的流量也开始增加,所以开始了系统的SEO优化工作。我在《博客第一篇》中介绍自己是从02年开始做SEO的,就是因为这个时候才开始花很多的时间做真正的SEO。

依靠着还算凑合的运营能力和SEO水平,网站在一年后的流量已经非常大了。流量远远超过了本地的信息港,说是当地的门户网站也不为过的。记得有一次,我偶尔去一个网吧上网,旁边有一个人就在我的网站上发布他的简历,当然,那个人不会知道坐在他旁边的就是这个网站的创立者。这是我做那个网站以来觉得最有成就感的一件事情。

做这个网站期间有两件事情值得提一下,第一件就是第一次认识到了长尾的力量。当时也有一些做SEO的人,大家最常用的方法就是堆砌关键词,因为这个方法在百度还是非常有效的。我那个时候经常琢磨的,不仅仅是几个热门词语的排名,而是要如何把网站SEO流量最大化。我发现堆砌关键词尽管有效,但不一定是能带来最多流量的方法。因为每一个用搜索引擎的人,都有一个非常明确的需求,整个互联网大家的搜索流量,也是长尾占绝大部分。 当然那时候还没听说过“长尾”这个概念,只有一个简单的想法,就是关键词要匹配用户搜索的需求,既然title中的关键词排名权重很大,那把用户搜索的词语都写在title中就是。所以我的网站的房产板块的标题就是这么写的:“某某市 – 某某区- 几室几厅 –  多少平米 – 价格范围”。 这样对用户体验也是非常好的。还能吸引到对的人来访问你的网站而不是拉一些无关的流量。

第二件事情就是看着王通是怎么利用网络成名。 王通最早的成名地应该是Donews社区。(2002年的donews社区还是一个不错的地方,当时论坛周年庆,马化腾、陈天桥等很多知名人物都来参加的。Keso也是从Donews出名的,所以他的博客至今还放在donews。最初的会员需要人工审核。)然后才是大家搜索”搜索引擎排名”这类文章找到他。因为我那时觉得SEO就是和别人抢有限的流量,如果很多方法一公开,你自己的效果是要受到很大的影响的。所以我一开始特别不理解为什么王通要把很多方法公开,不过后来也很快明白了:很多方法如果不是自己辛苦总结而只是从国外别人那里听来的东西,你完全会毫不在意的公开,而且当时王通不是自己在用SEO来销售什么东西,他销售的就是SEO服务本身,也需要这些东西来提升知名度。但是我不一样,所以后来我看到很多人开博客做论坛出名,我一直不想这么做。至今还有一部分这样的想法。不过去年开始写博客,是出于别的原因,当初的目的不是想出名或以后要做一家SEO公司(我实在没想到博客能有现在这么多的访问量),原因以后会谈到。

当时运营的那个本地门户网站,虽然访问量越来越大,但是每个月都要贴钱运营,当时对于我来说从金钱和时间上都是很吃力的。如果不是因为狂热的爱好做这个事情可能早放弃了。后来我找到了一个把网站流量变现的方法,使我一下子就从一个每月生活费只有300多的穷学生,变成了一个每月都有几万收入的网站站长。(关于网站如何盈利的,以后也可以说说。其实现在回过头看看,发现那时候浪费了一个很大的机会。)

我大学学的是机械设计专业,很多师哥师姐去的都是要排资论辈和官僚的国企。所以我以前一直都担心自己可能不得不去那种地方。但是这个网站的成功,让我觉得自己拥有了一种能力:随便在互联网上做点什么,都可以维持自己的生活而不用出去工作,而且可以生活得很好。其实我比较同意“懂懂”说的一句话,大意是:如果你完全依靠自己的能力能在网上赚一定的钱,那你以后无论做什么都能达到这个赚钱标准。因为你野生野长,锻炼的能力是多方面的,它一定能支撑你到那个境界。

网站在自动产生收入,大学毕业后我不用急着找工作,想当然的就决定应该去中国最大的城市看看,这样,04年4月18日,我就去了上海。

———————————————

广告插播:

4月9日-4月10日,我去参加厦门搜索引擎营销大会 (  http://event.timev.com/sem/xiamen/ ),同去的朋友可以找我,我很希望和大家线下交流。

另外附一张最近的培训照片:

SEO培训

 这次培训我一开始很怕大家不能值回票价,不过幸好培训的人觉得钱没白花。来参加培训的人员本身也是很有经验的人,所以这是我最顺畅的不要花时间解释基础知识的SEO培训。很多东西都是只描述了过程和方法,细节还会在近期的跟踪过程中和下半期培训中补上。

论思维的刚性与柔性(前言)

论思维的刚性与柔性(前言) 郑晖 前言

尊敬的读者,您会认同以下哪些说法呢?

科学的发现靠的都是逻辑思维。 不存在脱离语言的思维。 科学完全建立在事实之上,是客观而精确的。 一切科学真理终将被发现,也一定能被证明。 有因必有果、有果必有因。 科学=真理、宗教=迷信、非科学=伪科学。 唯心论是幼稚的、形而上学是僵化的、不可知论是愚昧的,只有唯物辩证法是正确的。 哲学总能指导科学。 宗教总是阻碍科学的发展。 上帝没有藏身之所,人类是宇宙中最智慧的生物。 Marxism是一门科学。 中医、气功、特异功能等都是伪科学。 中国的科技水平在古代是世界领先的,只是在近代才开始落后了。 时间是均匀流逝的、与空间和物质无关的。 空间是连续的、三维的、平直的、无界的、与时间和物质无关的。

假如您赞同以上某些观点,您将是我意料之中的读者;假如您反对以上所有观点,您将是我意料之外的知音。下面的问题或许更现实、更有趣些——

电脑会全面超过人脑吗? 牛顿被落地的苹果砸过吗? 中国人的数学比美国人强吗? 中国人为什么难以避免中式英语? 应试教育和文理分科的弊端在哪里? 勤定能补拙吗? 智商测试可靠吗? 脑筋急转弯能训练思维吗? 如何培养幽默感? 网络上为什么充满了“牛逼”、“傻逼”、“装逼”这类字眼? 为什么网络争论通常是无效的?

您一定会问:一篇文章有可能解决这么多的问题吗?它们之间又有什么必然的联系呢?正所谓醉翁之意不在酒,本文的重点也不在于解决这一堆难题,而在于提出一种“刚柔思维”的观点。这当然不是在翻版国产的阴阳思维或舶来的辩证思维,主人的手艺再差,也不会靠炒冷饭来招待客人的。如果说后二者是看待事物的二分法——阴与阳、矛与盾,那么前者便是思维方式的二分法——刚性思维与柔性思维。换言之,后二者关注的是事物的正反两面,而前者关注的是思维的上下两层。

为阐明观点起见,本文将涉及多种学科和领域。如果您对某些方面知之甚少,不必望而却步。请记住,它们只是辅助论据,并非核心论题。容忍自己的无知,正是柔性思维的一种表现。如果您是某些方面的专家,慧眼识出文中谬误,也不必拂袖而去。别忘了,错误的论证并不必然导出错误的结论。容忍他人的无知,同样是柔性思维的一种表现。

本人在数学和计算机领域尚知一二,在其他领域则未知万一。以微薄之才而论天地之道、心灵之术,何啻以升量石。每念至此,不胜惶惑,情知贻笑大方事小、贻误后学事大。特于文后详列文献出处,以供读者参阅,或可稍安惴惴之心。然则如此,文中话题无不敏感,观点无不鲜明,结论无不坚定。或有人问:这般前后不一,岂非貌恭实倨、虚伪之至?其实不然。敬畏未知,怀疑已知,非此则无以广博,是为思维之柔;不惧未知,坚信已知,非此则无以精深,是为思维之刚(疑似坠入辩证法的泥淖)。思维之法,自当刚柔并济,文中要旨即在于此。欲知刚柔之义、刚柔之用,且听下回分解。

附言

该文的成因可一言蔽之:久积于心,不吐不快。用计算机的语言来说:它是为防止大脑内存过载(memory overload)而将部分想法序列化为语言(serialization)、持久化为文字(persistence)最终形成的一个快照(snapshot)。之所以选择开源(open source),是希望能对他人有所裨益。除此之外,别无他意,亦无他求。为避自命高深或故作矫情之嫌,并免无谓口舌之争,后续文章将关闭评论(参见问题:为什么网络争论通常是无效的?)。用恶俗得令人倒胃的流行网语来说:本人既不牛逼,也不傻逼,更不装逼。拒不相信者,请打道回府;有心赐教者,请在此留言;由衷赞赏者,请五星相赠(本博客支持评分机制);鄙视不屑者,请一分示嘲(很抱歉没有提供零分或负分)。

文中“刚性思维”与“柔性思维”的提法不幸与某些文章撞车,好在只是名称上的冲突,内涵并不相同。特此说明。

分享/保存

相关文章

2011年07月12日 — 论思维的刚性与柔性(科学的迷信-4) (0)
2010年09月20日 — 论思维的刚性与柔性(科学的迷信-3) (0)
2010年04月22日 — 论思维的刚性与柔性(科学的迷信-2) (0)
2010年04月19日 — 论思维的刚性与柔性(科学的迷信-1) (0)

Category

Archives