星期六, 十二月 09, 2006

克服惰性的六个步骤


克服惰性的六个步骤



这件事我一定要做了。真的要做了。也许可以再等一会儿。先休息一下,看会儿电视,上会儿网,聊会儿天。这件事我明天再做吧。
我们每个人都会有这样的经验,一些事情需要我们完成,而惰性却总是占了上风。如何能克服惰性成为如何完成任务和GTD的一个重要话题。Paul's Tips最近在一篇文章中提到如何通过六个步骤来克服惰性,完成任务:




  1. 承认辛苦的代价,看重愉快的结果


    大多数人产生惰性延误工作的主要原因是因为要付出代价,让我们多少感觉有些辛苦,哪怕只有一点。就象我们都喜欢干净的厨房,但洗碗又是一件讨厌的活。渴望成果却不愿意忍受痛苦的过程。一个好的开端是承认需要付出的代价,但强调工作完成后的结果,肯定这个结果值得付出的代价。比起最终的成就感,这点痛算什么?




  2. 提高对辛苦的承受能力


    每个人对辛苦都有一定的承受能力,并且都可以一点一点的将其提高。一个好办法就是从小事和相对简单的事情做起,循序渐进,慢慢提高对"辛苦"的接受程度。




  3. 从小事做起


    勿以善小而不为。当你知道有什么小事需要你马上去做时,立刻就去做,一分钟也不要耽误。如果你心里有什么声音告诉你一堆理由妨碍你去完成这件事,不要理它们,立刻去做。不要犯嘀咕,做完就完了,只是件小事,不值得你左思右想。




  4. 大事化小


    当你已经可以克服小的阻碍完成工作后,只要学会把分量更重的工作划分成很多小的部分,一部分一部分完成,大的困难也就不在话下了。不过,要确认这些小的部分的确有意义,而不是找借口拖延时间。




  5. 不要计划太多,马上动手做


    不要花太多时间整理和规划,只找眼于整体会让你看到做这件事多难多辛苦,你应该找出可以付诸行动的小的突破点,马上开始行动。没有什么大事是一蹴而就的,将一个一个小困难一一攻破,就能获得最后的胜利。你的任务就是找到下一步能马上开始做的事情。




  6. 不要害怕浪费时间


    另一个让很多人束手不前的原因是害怕浪费时间。好像没有把什么事情都安排好就没法开始。其实,只要开始做就不可能是完全的浪费,哪怕失败也是有价值的,从失败中我们可以获得很多经验。最重要的是,在尝试中,我们除了获得失败,还能获得成功。





Web 2.0 正在扼杀语义网络吗?



原文作者:Dan Zambonini
翻译:拙尘 @ yeeyan.com
原文链接:



(译者:Web 2.0同语义网络在形式和内容上到底有多大的差别?这种差别是否会像一些人质疑的那样"正在扼杀语义网络"?怎样才能完成从Web 2.0到语义网络的进化? Dan Zambonini在这篇文章里尝试着给出一些答案或思考。同类文章推荐:



我是如此的期待语义网络的早日到来,不幸的是,我有一个很糟糕的感觉--它离我们还很遥远。更糟的是,Web 2.0 的红火有可能把它推得更远。这里,我不想介入"如何准确定义 Web 2.0" 的无止境纷争,就让我们采用一种普遍接受的共识吧--一切的一切都是为了大众。(在 Web 2.0 里)我们不需要关心技术或是标准:不管你用 AJAX,SVG,FOAF,PHP,Ruby,XHTML,P2P 还是 XSL,都无所谓;你只需要记住:要让大众来主导一切。让大众去创造、去协作、去共享、去交互吧。谁会在乎你后台用的是什么,怎么用的呢?你只要让大众又快又好地享有权力就万事大吉了。


而语义网络则是在地球的另一极:你需要用RDF(Resource Description Framework,一种用于描述Web资源的标记语言)来规范你的数据,用XML来编写你的代码(除了XML,还有一个N3,不过它最终很可能变成XML的一部分),并定制你的OWL(Web Ontology Language,一种用于描述语义网上本体论关系的语言)。当你有了这些标准化的数据后,就把一切都交给机器吧!因为这些数据正是给计算机去阅读和理解的。语义网络对它的用户来说,多多少少应该是透明的。


(两者对比来说,)Web 2.0 是与位于高端的用户的体验戚戚相关的,它的效果立竿见影;而语义网络则是与低端的数据有关,是一种长远的解决方案。用户们所能看到的都是那些很酷的、千变万化的 Web 2.0 的东东,这使得语义网络看起来是那么复杂、苛刻和毫无必要。对于外部的世界来说,两种技术是很相似的--都是为了共享和整合数据;但是,Web 2.0 有很漂亮的界面,并且它就实实在在地在眼前。这就是为什么那些有限的资金都投给了wiki和blog们,而不是RDF数据库转换器。


但是请不要就此忽略了语义网络。(让我们问自己这样一个问题:)对于未来的网络,我们到底有哪些期待呢?我是指真正的期待。不错,Web 2.0 已经使得我们可以更有效地使用地图,可以共享图片,还可以汇集大家的意见来对某个网站品头论足。但是,那又怎么样呢?难道这些就是我们梦寐以求的成就吗?难道这些就是我们可以留给后世的遗产吗?(要知道,)语义网络是有可能挽救人们的生命的。它可以从大规模的分布式数据中找出其它方法所不能确定的模式;它可以帮助人们寻找治疗方法和解决生命科学中的其它问题;它可以探查和防止有组织的犯罪和恐怖活动;它可以帮助分析地质和气象学信息,从而减少自然灾害的破环;它可以检测和限制病毒的爆发;它还可以用来分配和再使用重要的教育资源。这些都是很大胆的宣言,也正是我们所要努力的目标。这就是为什么我们需要语义网络能够大行其道。我们不可以让一张花里胡哨的地图阻挡了前进的道路。


那么,前面的路该如何走呢?首先,我们要充分利用 Web 2.0 所奠定的基础。正如 Daniel Weitzner 最近对我说的,关键的关键就是要在语义网络的中规中举的语义学和 Web 2.0 的灵活多变的形式之间找到一个最佳的折衷。GRDDL 就是一个致力于此的项目。它通过将现存的网络内容重新定义为语义网络的数据,来帮助我们寻找两者之间若隐若现的中间地带。


我们还可以充分保留 Web 2.0 的灵活性。由于其技术无关性(technology agnostic),我们可以在 Web 2.0 中应用语义网络的技术来实现两者的最佳融合(FOAF RDF 的语汇已经被成功地集成到了许多社交网络的应用中)。


让我们来努力推动事物的发展吧!毫无疑问,Web 2.0 是有趣、有效并令人惊叹的,它是向前迈进的巨大一步。但是,我们不能因此而忘记了语义网络可能带来的巨大利益。这个世界上只有10%的人能够上网,而其中经常接触 Web 2.0 应用的人则更少。语义网络则大大延伸了受惠者的范围:它不仅让我们的开发人员有了新的玩具,更将对世界上60亿无法接触网络的人产生深远而重大的影响。


星期五, 十二月 08, 2006

使用Quartz实现定时功能

使用Quartz实现定时功能
Quartz是一个完全由java编写的开源作业调度框架,具体的介绍可到http://www.opensymphony.com/quartz/官方网站查看。

Quartz的几个核心的接口和类为:
Job接口:自己写的“定时程序”实现此接口的void execute(JobExecutionContext arg0)方法,Job还有一类为有状态的StatefulJob接口,如果我们需要在上一个作业执行完后,根据其执行结果再进行下次作业的执行,则需要实现此接口。
Trigger抽象类:调度类(Scheduler)在时间到时调用此类,再由trigger类调用指定的定时程序。
Quertz中提供了两类触发器为:SimpleTrigger,CronTrigger。前者用于实现比较简单的定时功能,例如几点开始,几点结束,隔多长时间执行,共执行多少次等,后者提供了使用表达式来描述定时功能,因此适用于比较复杂的定时描述,例如每个月的最后一个周五,每周的周四等。
JobDetail类:具体某个定时程序的详细描述,包括Name,Group,JobDataMap等。
JobExecutionContext类:定时程序执行的run-time的上下文环境,用于得到当前执行的Job的名字,配置的参数等。
JobDataMap类:用于描述一个作业的参数,参数可以为任何基本类型例如String,float等,也可为某个对象的引用.
JobListener,TriggerListener接口:用于监听触发器状态和作业扫行状态,在特写状态执行相应操作。
JobStore类:在哪里执行定进程序,可选的有在内存中,在数据库中。

简单的定时程序:

public class TestJob implements Job
{
public TestJob(){}
public void execute(JobExecutionContext arg0) throws JobExecutionException
{
String name = context.getJobDetail().getJobDataMap().getString("name");
System.out.println("job executing..."+name); }
}

public class QuartzTest
{
public static void main(String[] args)
{
QuartzTest test = new QuartzTest();
try
{
test.startSchedule();
}
catch (Exception e)
{
e.printStackTrace();
}
}
public void startSchedule() throws Exception
{
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
JobDetail jobDetail =
new JobDetail("testJob", Scheduler.DEFAULT_GROUP, TestJob.class);
//结束时间
long end = System.currentTimeMillis() + 9000L;
//执行10次,每3秒执行一次,到9秒后结束
SimpleTrigger trigger = new SimpleTrigger("test",null,new Date(),new Date(end),10,3000L);
scheduler.scheduleJob(jobDetail, trigger);
scheduler.start();
}
}

执行上面这个类基本实现了一个简单的定时程序。但问题是现在这个类只能应用在application中,在web环境里执行还需要添加一些配置,例如添加servlet,添加配置文件quartz.properties或者quartz-job.xml(在XML文件里以配置方式定义 triiger,定时描述等)。

web应用中使用


在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用,提供了一个 QuartzInitializerServlet和一个QuartzInitializerListener,用于在加载web应用时,对quartz 进行初始化。我在使用servlet时加载成功,在使用listener时不成功,不知道怎么回事?


servlet配置:

QuartzInitializer
org.quartz.ee.servlet.QuartzInitializerServlet

shutdown-on-unload
true


config-file
quartz.properties

2

listener配置可以看源码,主要的上面的参数配置为,再加一个.

上面提到了quartz.properties,这是自行指定的,Quartz提供了一个默认的配置文件,可以满足基本的j2se应用,如果在 web应用中,我们想把job,trigger配置都写到文件中,就需要自己来写,并指定在初始化时加载我们自己的quratz.properties,位置放在classes下。

#============================================================================
# Configure Main Scheduler Properties
#============================================================================
org.quartz.scheduler.instanceName = org.quartz.scheduler.instanceId = AUTO
#============================================================================
# Configure ThreadPool
#============================================================================
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 3
org.quartz.threadPool.threadPriority = 5
#============================================================================
# Configure Plugins
#============================================================================
org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName = /scheduler/quartz_jobs.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = true
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10

quartz要使用插件来加载自己的xml配置文件,上边我们指定了在初始化时加载classes\scheduler\quartz_jobs.xml,默认的是加载classes\quartz_jobs.xml文件。

quartz_jobs.xml文件:




  
  test
  DEFAULT
  testJobhere
  TestJob
  
  
  name
   test
  


  

  

testCron
DEFAULT
test
DEFALUT
0/3 * * * * ?


 



上面配置了一个作业,并声明一个参数Name;配置了一个CronTrigger,每三秒执行一次。如果要配置SimpleTrigger ,可以使用标签。

上面与Job对应的类为TestJob,源码为:
public class TestJob implements Job
{
public TestJob(){}
public void execute(JobExecutionContext context) throws JobExecutionException
{
String name = context.getJobDetail().getJobDataMap().getString("name");
System.out.println("job executing..."+name);
}
}

在quartz_job.xml文件中还可以指定TriggerListener,JobListener等,可以使用,标签来指定。

由于quartz目前文档不是很多,大部分都是看源码。总体看Quartz提供的CronTrigger使用表达式方式描述定时规律这个功能还是很强大的,在其源码中有很多例子。

spring已经把quartz集成在一起,并进行了封装,使用起来还是很方便的。

Quartz表达式说明

Quartz表达式说明

表达式是一个字符串,它有六个子表达式构成。这些子表达式用空格来分隔。

子表达式描述如下:

秒(0~59)

分钟(0~59)

小时(0~23)

天(月)(0~31,但是你需要考虑你月的天数)

月(0~11)

天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)



一个完整的例子

“0 0 12 ? * WED”表示每个星期三中午12点



有些子表达式能包含一些范围或列表

例如:子表达式(天(星期))可以为 “MON-FRI”,“MON,WED,FRI”,“MON-WED,SAT”



“*”字符代表所有可能的值

因此,“*”在子表达式(月)里表示每个月的含义,“*”在子表达式(天(星期))表示星期的每一天



“/”字符用来指定数值的增量

例如:在子表达式(分钟)里的“0/15”表示从第0分钟开始,每15分钟

在子表达式(分钟)里的“3/20”表示从第3分钟开始,每20分钟(它和“3,23,43”)的含义一样



“?”字符仅被用于天(月)和天(星期)两个子表达式,表示不指定值

当2个子表达式其中之一被指定了值以后,为了避免冲突,需要将另一个子表达式的值设为“?”



“L” 字符仅被用于天(月)和天(星期)两个子表达式,它是单词“last”的缩写

但是它在两个子表达式里的含义是不同的。

在天(月)子表达式中,“L”表示一个月的最后一天

在天(星期)自表达式中,“L”表示一个星期的最后一天,也就是SAT

如果在“L”前有具体的内容,它就具有其他的含义了

例如:“6L”表示这个月的倒数第6天,“FRIL”表示这个月的最一个星期五

注意:在使用“L”参数时,不要指定列表或范围,因为这会导致问题

SOA是什么?

SOA是英文Service-Oriented Architecture,即面向服务架构的缩写。简单来说,SOA就是一种进行系统开发的新的体系架构,在基于SOA架构的系统中,具体应用程序的功能是由一些松耦合并且具有统一接口定义方式的组件(也就是service)组合构建起来的。本质上说,SOA体现的是一种新的系统架构,SOA的出现,将为整个企业级软件架构设计带来巨大的影响。

星期三, 十二月 06, 2006

在清华练摊儿

一次简单的创业实战可以让刚刚入校的MBA们获得很多课堂上得不到的体验。

为了给四川省某个贫困县的孩子募集学费,你需要参与一次“义卖”,但必须遵守一些游戏规则:首先要有一份用来募集资金的商业计划书,然后采购一些商品用来销售,你所能贡献的捐款数额就取决于销售利润。但你既不能从自己钱包里拿钱,也不能到附近办公楼游说、募捐,能做的就是在清华大学的操场旁边支一个小摊儿,向路过的学生们推销,所有这一切活动必须在1天之内完成,周围还会有12个与你争夺客户的“竞争对手”。想获得尽可能多的利润,你会怎么办?

这不是一个纸上谈兵的问题,不久前清华大学经管学院2006级的400多名MBA就亲身经历了这样一次“创业实战”。他们被分成13个小组,在1天的时间内完成了从制定商业计划、融资、采购到销售的全部工作。虽然所谓的“创业实战”就是在清华大学的校园里摆个小摊儿,但对那些刚刚开始 MBA学习的人来说,从摆摊儿中还是学到了不少经验。

满足需求还是创造需求?

笔记本、台灯、小盆栽、小饰品,哪一个产品在校园里的销路更好、更赚钱?大家只有1个晚上的时间做决定,几乎每个小组都在这个问题上爆发了激烈的争论,第4小组也不例外。在分析了市场情况、消费者构成、产品来源以及资金规模之后,第4小组将所要销售的产品确定为“笔记本”。选择这个产品的理由很简单:学生都要做笔记,对笔记本都会有需求,尤其是在刚开学的时候,不会有卖不出去的风险。
第4小组也对周围的商场、超市以及学校内的便利店进行了调查,为了能够与普通的笔记本有所区别,他们将产品最终确定为一种可以更换活页纸的“活页夹”,可以重复使用。不过竞争压力依然非常大,除了大量竞争对手存在之外,还有多种多样的替代产品,随便一张白纸就能代替它。在分析了竞争情况后,第4小组将竞争优势确定为“价格”。但是要比超市、便利店的价格都低,还要保证一定的利润率,只能通过两种方法:找到价格更低的供应商、提高资金周转率。

做好了商业计划,接下来每个小组都要去“市场”融资了。资金来源有两个渠道,“银行贷款(由高年级同学扮演)”或找“风险投资公司(当然也是校友扮演)”,这些机构会根据每个公司(小组)的商业计划书提供资金支持,但活动结束后必须返还借款或投资,并支付利息或分红。

由于产品太普通,没有太多的差异性,第4小组并没有从风险投资商那里拿到预计的600元资金,只有300元,好在风险投资在公司股份中的比例只有10%,这一点对最后的利润分配非常有利。拿着钱采购到商品之后,“义卖”正式开始。由于大部分小组选择的是满足学生需求的产品,比如文具、日用品以及体育用品,与第4小组一样销售笔记本的小组还有两家,虽然只是“兼营”。

但有几个小组的产品却很有特色:有两个小组专门卖各种花卉和盆栽,还有一个小组销售手机荧光贴和各种小饰品。第4小组也曾经考虑销售小盆栽,最初的计划是向男生推销笔记本,向女生推销小盆栽。由于资金问题,有限的资源只能确保一种产品获得与供应商谈判的能力,而且学校中是否有对小盆栽的需求还不明确,经营风险太大,很容易砸在手里,最后放弃了。

情况却与第4小组的担心大相径庭。相邻小组的主打产品就是小盆栽,他们的摊位吸引了更多的同学,尤其是那些需求不是很明确,仅仅是被“义卖”吸引过来的同学,他们对购买小盆栽要比笔记本更感兴趣。由于笔记本和小盆栽最初的定价都是10元,更多的同学倾向于选择小盆栽。小盆栽的销售情况很好,早早就重新进货,反倒是卖笔记本、体育用品、日常用品这些“满足需求”产品的小组,在价格优势不是很明显的情况下,没有吸引到更多潜在的消费者。

满足需求和创造需求,到底哪种更能为企业创造利润呢?后者也许更有优势。企业主动开发消费者的潜在需求并将其转变为现实购买行为,就可以开辟一个新市场。从定价角度讲,被创造出来的需求往往在价格上不是很敏感,能够为企业获得更高的利润率。比较此次义卖中销售类似笔记本、日用品的小组和销售盆栽、小饰品的小组,同样印证了这个结论。当第4组笔记本价格由10元下降到5元时,甚至隔壁摊位的同学都来抢购,但最终只取得500多元的利润,而销售小饰品的小组利润超过1000元。

满足市场需求只能造就优秀的企业,创造市场需求往往造就卓越的企业,但这种创新是有风险的,因此满足市场现有需求就成为许多经营者的选择。这几年国内一哄而起做手机的企业,或者是做MP3、MP4的企业,大家都是看到了市场需求,而竞争到最后,剩下的只是价格。不过,对于生产或消费大众产品的企业来说,选择要进入的市场只是一个开始。接下来还有许多考验等待着它,摆摊儿也不例外。

1号位置就是最好的吗?

麦当劳或者肯德基会派专人到待选地段统计来往客流量,作为新店选址的重要依据;大卖场、超市也会选择人流比较集中的地段开业;在商场中,不同的产品或品牌都想占据最显眼的那些位置,目的也是吸引尽可能多的消费者。虽然“义卖”的现场更像一个小型集贸市场,“摊位”也只不过是一张桌子外加一把遮阳伞,但由于大家争夺的客户相同,不同位置的摊位间的确存在一些差别。而所谓的“1号”位置有时并不能带来更多的销售量。

从整体上看,这13个摊位呈T字型分布在清华大学篮球场两侧。在操场旁边一条南北走向的马路上从南到北依次是1号到7号摊位,其中3、4 号摊位正对着两个篮球场之间的一条马路,在这条马路上,一边3个依次是8~13号摊位,第4小组选择了1号摊位。从整体看,1号到7号摊位毗邻的马路连通学生宿舍和教学区,客流量比较大;而8~13摊位的客流主要是从操场回来的同学,客流相对少一点。但排列顺序对消费者的购买行为产生了很大影响。

如果是在大卖场或商场中,这个“1号”摊位相当于一进门那个位置,是商场中客流量最大的位置,但是“客流量最大”这个优势有时却并不能转化为消费者的购买行为。对于那些从教学区归来的同学,1号是他们经过的第一个摊位,但经过一段时间的叫卖发现,这个1号位置并没能留下更多的客流。除非是那些对“笔记本”有明确需求的同学会在这儿完成购买,其他同学更愿意多看几家。尤其是那些需求不明确,只是抱着“逛一逛”的心理的同学,1号摊位的作用更多是在为他们讲解“这些人到底在干什么”。

消费者倾向于选择有“社会责任”的企业的产品或服务,尤其是那些竞争比较激烈的行业

对于那些从宿舍到教学区去的同学,情况也差不多,只有真正有需求的同学会在1号摊位消费(前提是前面没有竞争产品),而对那些需求并不明确的同学,当他们从1号摊位经过时,手里已经拿着从其他摊位购买的产品了,即使是有“义卖”做广告,但在支出相对有限的情况下,1号摊位只能看着客流从眼前经过(7号摊位也遇到同样的问题)。

当消费者的需求并不明确时,他们更愿意多看看,而不愿意一进门就开始消费。如果是在商场中,类似1号或7号这样的位置,更适合摆放品牌产品,因为它有忠实消费者,或者就是作为产品展示、品牌推广。其实1号摊位还有另外一个问题,它竟然在一个下坡路上!

因为这个下坡存在,从教学区骑车回来的学生几乎是全速通过1号摊位,快到大家甚至来不及把促销口号说清楚。不过还是有些同学在听到这里销售的笔记本价格后会在冲出几米之后,调转车头特意回来,这些同学都是笔记本的“忠实用户”。但对于大部分同学,这个下坡确实为1号摊位制造了不少麻烦。

这个下坡可以看作是影响消费者购买行为的不利因素。任何可能对消费者的购买行为造成不便的因素都将影响潜在消费者,而对于那些有明确需求或者品牌忠实度比较高的消费者,这种不利因素造成的影响相对较小。对于消费类产品而言,挑选在合适的地方出售直接影响销售额。但最显眼、价格最贵的那个位置并不一定就是最合适的位置,关键还是要结合自己的产品特点和市场策略来“定位”。

社会责任与利润无关吗?

为什么大型跨国公司争当“企业公民”?管理学认为公司的“社会责任”和经济效益之间存在正相关关系,因为“社会责任”可以将企业与其“利害攸关者(stakeholders)”紧密联系在一起,为企业营造一个有利的生存环境。利害攸关者包括政府机构、工会、雇员、顾客、供应商、所在社区及公众利益集团。虽然这次“义卖”只是“摆摊儿”而已,但这个口号还是为参与者创造了价值。

“义卖”对销售最明显的推动莫过于对消费者购买行为的影响力了。在马路上拦着同学推销各种产品,无论是10元钱的笔记本还是1元钱的中性笔,都是为灾区献出的一份爱心,这时候,简简单单的购买行为被赋予了更加崇高的社会意义。在听到这种说法之后,路过的同学十之八九会献一份爱心。从第4小组的销售情况看,在笔记本没有降价促销前,超过70%的同学是在获悉“义卖”活动才纷纷解囊的。

在真实的市场环境下,消费者也倾向于选择有“社会责任”的企业的产品或服务,尤其是那些竞争比较激烈的行业。如果消费者与企业之间存在道德认同,这样的企业更容易让消费者产生信赖感,更容易塑造品牌。

而且,“社会责任”带来的道德认同同样存在于上下游企业的关系上。第4小组销售的笔记本全部采购自“金五星批发市场”,这是北京一家大型的小商品批发市场,经营者全部是个体商户,在与这些“供应商”砍价、谈判的过程中,当他们得知采购的目的是为四川某受灾县捐款时,他们愿意以成本价销售产品,而且有一家表示,如果在活动结束,产品没有销售光,可以退货。“义卖”让第4小组获得了很大的成本优势。

电影《教父》中经常出现一句话“business is business(生意就是生意)”,持这种观点的黑社会永远摆脱不了火并的命运。而对于以利润最大化为目的的企业,当他们用“社会责任”协调上下游关系,更容易形成与供应商的利益共同体,获得供应商的支持。因为这已经不简简单单就是“生意”,所以那样多的企业要做“最受尊敬”或“企业公民”了。

做生意的确是一门艺术,而这次“义卖”只是MBA在清华大学经管学院学到的第一课。

投资宝典

投资宝典:运营、虚拟、草根、社区
好项目:产品客户能收钱、简单扩展有壁垒、趋势独特可持续、团队人脉养小孩!

服务器实现301重定向


服务器实现301重定向


常用的重定向方式有: 301 redirect, 302 redirect 与 meta fresh:
* 301 redirect: 301代表永久性转移(Permanently Moved),301重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。
* 302 redirect: 302代表暂时性转移(Temporarily Moved ),在前些年,不少Black Hat SEO曾广泛应用这项技术作弊,目前,各大主要搜索引擎均加强了打击力度,象Google前些年对Business.com以及近来对BMW德国网站的惩罚。即使网站客观上不是spam,也很容易被搜寻引擎容易误判为spam而遭到惩罚。
* meta fresh: 这在2000年前比较流行,不过现在已很少见。其具体是通过网页中的meta指令,在特定时间后重定向到新的网页,如果延迟的时间太短(约5秒之內),会被判断为spam。



星期四, 十一月 30, 2006

如何组建创业团队


招人:态度决定一切


创业初期最需要一些具有丰富经验的高阶人才,可是这个时候往往没有足够的资本请到这些人,如何解决这样的问题?


首先得分清楚什么是"高阶人才"。在外企里拿着高工资的,一定就是高阶人才吗?其实不一定。有些外企在中国本身就很强势,产品不愁市场,有些人仅是适合打顺风牌而已。很多职业经理人空降到小公司反而失败,为什么?因为他不具备在创业企业工作的心态,他需要的资源很多,而小公司要什么没什么,很多人首先从思想上、心理上就接受不了。这种所谓的
"高阶人才"对创业企业是没有意义的。


创业公司所需要的人,一句话--态度决定一切。是不是"海归",是不是来自名校名企,这些都不重要。重要的是,一,有热情;二,对中国本地市场是专家;三,是一个踏踏实实做事情的人。企业需要的是做,需要的是结果。


留人:机制决定成败


对于一些能人,创业者可能暂时付不起很高的工资,但你一定不要把他们当成打工者。创业者要建立一种与人分享的分配机制,把能干的人变成企业的中坚力量。这样的游戏规则是企业成长的根本。


硅谷精神并不像人们所说的只有创新,只有创新是成功不了的。提到雅虎好多人只看到杨致远,可是如果没有风险投资商帮他建立一个良好的企业架构,使得更多优秀人才加盟,就靠杨致远他们两个博士就能做成市值五百亿的公司?不可能。


从来没听说过美国对软件企业有什么倾斜政策,对互联网企业有什么免税优惠,这些都不是创业企业成长最重要的支撑。利益共享的核心理念才是硅谷风险投资最大的价值,只有合力,才能将1做到100。中关村不少企业做着做着散伙了,一个变成了五个,谁也做不大,所以中关村成不了硅谷。


我常劝很多创业者,不要拿国内传统企业的钱,也不要拿国内风险投资商的钱。因为国际风险投资最适合帮助你建立一个符合现代企业理念和现代企业精神的组织架构和利益分配机制,这才是风险投资最重要的价值,超越了投资本身。这一套游戏规则使创业者与员工之间不再是雇佣和被雇佣的关系,也使投资人和创业者之间产生利益共赢的关系,它引导着你与有能力的人分享利益,共享成功。
建立不起这样机制的企业是先天不足的企业。在挣钱的时候,也许能通过发展掩盖问题,一旦碰上困难,就会导致崩盘。


互联网提高生产力的一个原理


互联网提高生产力的一个原理


与传统的人造工具相比,互联网之所以能够创造价值、提高生产力,
就学习而言,它能够缩短人类整体学习与创造新知识的时间成本,
而对于任何的生产力结构(物品生产、知识生产等)而言,时间都是关键因素,
人类的生产力结构中,从来都包括了知识的创造与学习(获得)两个过程,
而这两个过程 都是需要时间的,时间越短,生产力水平越高。
互联网能够缩短人类创造新知识的时间成本,也能够缩短后来者获得这些知识的时间。
而且,很有可能,互联网对于人类文明的最大贡献,就在于缩短了知识创新与获取成本,
互联网在其他方面的贡献,比如沟通、信息传递、政治等等方面的贡献,
都是由于缩短了知识的创新与获取成本而导致的。


1、缩短创新时间
(1)、互联网本身作为一个最庞大的知识库,拥有很好的兼容性与可扩充性,不同语种的知识共存,能够减小不同语种的知识的沟通成本,增加知识各个部分相互碰撞产生化学反应的几率,也增加了各个学科的知识相互碰撞的机会,这种兼容一切语种和学科、跨越了专业知识与大众知识界限的大一统的知识库,增加了知识王国里不同部分 相互碰撞的概率,从而增加了创新的概率。因为创新的本质是排列组合之后的优胜劣汰,互联网增加了排列组合的机会以及优胜劣汰的范围,因此增加了创新的概率。


(2)、互联网的不断向前进化,本身作为一个强大的生产工具,免费几乎是其普遍特性,互联网内的各种资源的免费特性,使得全体社会成员都有机会获得以前只有极少数成员才有资格(经济门槛、专业门槛等)接触和使用的生产工具(各类工具型网络服务),而对这些生产工具的获取和使用是创新的前提。互联网使得创新的主体从少数 社会成员扩大到几乎全体社会成员,从而提高了创新的概率。中国古代的四大发明之所以出现,主要因为四大发明都属于经验性发明,不需要系统理论与知识,主要取决于试错的数量,从事试错的次数越多,发明这些经验性成果的机会越大,而一方面由于中国历史悠久,有更久的试错历史;另一方面,中国有更多的人口总量(历史累计人口 总量),有更多的个体从事经验性试错的活动。这两个因素导致了中国产生了丰富的经验性发明,比如四大发明。而今天,互联网不但使得经验性发明成为了人海战术,也是的需要理论训练的现代科技发明成为了人海战术。一方面,高等教育的普及使得社会成员普遍获得足够基本的高等教育训练,从而为理论性的科技创新提供了前提;另一 方面,互联网使得没有接受高等教育的个体也有机会自学获得系统的理论训练,可能创造出远远超出了经验范畴的创新成果。因此,互联网在一定程度上,使得现代式的超越经验试错法的发明创造也成为一个人海战术,这就增加了人类总体通过试错法获得新知识的概率。


(3)、互联网的免费特性,使得创新的激励机制更加抵达社会底层,由于创新门槛很低,人人都可以利用这些免费工具来创造新知识,并且有可能获得收入,这种利益刺激能够激励人们更加愿意创新。互联网越往前发展,它内部的盈利方式将越来越多、越来越成熟,很多的可以被普通人使用的盈利工具会出现并且逐渐在各种盈利工具的竞 争中存活并且成熟起来,比如google
adsense这样的工具,能够驱使社会个体主动整理各个有需求的专题知识,因为这些google
adsense允许专题知识的整理者在其中插播广告获利,而且,越是专题性知识越能增加获利机会,这就自动驱使人们去整理有用的专题知识,对现有知识的整理本身也是一种创新,因为创新的本质是排列组合之后的优胜劣汰,整理知识也是一种排列组合。在今后,互联网会发展出更多的适合大众利用的盈利手段,从而促使他们都投入 到排列组合的洪流中来,在优胜劣汰之后,新的知识会出现。


2、减少学习成本
(1)、互联网使得各种知识接近免费并且方便搜索获得,关键字式的"典故"式知识定位技术,使得相同兴趣的人被吸引到一起,从而可能相互交流对同一个知识点的心得体会,这能够极大地减少走弯路的可能性。原来你是孤军奋战,现在你和数万人一起学习,学习效率大大提高。原来你可能独自在黑暗中摸索很久,现在你可以瞬间弄明 白一个难题,互联网是一个开放的学习工具,越使用越好用。


(2)、互联网已经并将继续进化出更出色的学习工具,比如提问式社区、自由编辑的百科全书、开放图书馆、关键词引导的社区、搜索引擎、网络远程教学、BT之类的视频共享用于分享各种教学视频等等,新的技术将使得学校成为不必要,互联网本身就是一个免费的大学。你所要投入的只有时间,而且,它可以节省你的时间,它还可以 让你凭借聪明才智获得利润得以生存,你足不出户可以拥有整个世界。很有可能,你从来没有迈出过那个大门,你却拥有了遥远星球上的某片广袤的土地的巨大财富,因为你利用互联网将你的意志贯彻到了那么遥远的时空,也许在你死后的数百年,你的意志依然被始终不渝地执行着,好比明日帝国中的那个死去很多年的博士留下的整个自动 化系统在为死去的博士征服整个世界。


总之,互联网将进化,缩短人类创新与学习的时间,提高人类文明的层次,因为这个强大的新工具,人类将前进得更加迅速,这个新工具不是培根所说的类似归纳法这样的抽象思维方式,它是一个实实在在的新工具,人类创造了它,借此,人类文明进化的加速度将越来越大,在那条文明演化的曲线图上,斜率越来越大,越来越大,直到接近 垂直极限。


转自:forcode(奇想录)


星期四, 十一月 23, 2006

社区的3个层次:无聊、孤独、解决实际问题


梁宁把网站划分为"解决无聊问题的猫扑类网站,解决孤独问题的豆瓣类网站,解决实际问题的携程类网站",虽可能有些武断,却颇新颖。在我看来:

解决无聊问题的社区,是初级形态社区,诸如搜狐社区,新浪社区等此类以资讯提供为主的媒体型社区,着重解决的是人的信息饥渴,无聊需求。

搜索是一种初级形态的社区,靠解决人类对性的无聊需求得以发家,这种无聊需求目前依然在搜索引擎需求中占很大比例。高明一点的搜索引擎开始解决人的实际 问题,比如酷讯就是试图解决人们实际问题的网站。可惜的是在目前的中国互联网上,我们的带宽里游荡着的大多数是这些充满好奇心的无聊网民。而机会是,逐渐 地一些理性的网民开始把互联网作为自己的解决问题的工具,这是酷讯们的机会,也是互联网的趋势。

解决孤独问题的社区,是中级形态的社区,诸如豆瓣(也解决部分实际问题:买书)。以人际关系,寻求归属为主的群体性网站。博客就是一种最典型的以解决"无 聊问题和孤独问题"为主的社区,博客用户中情感话题,娱乐话题占了最大多数,无聊至极则孤独,孤独至极则无聊,二者相生而成,不分彼此,高明的社区拥有 者,会看到孤独是深层次的需求,无聊是最表层的需求,用无聊来吸引眼球,用孤独来留住用户。用解决实际问题来回报用户。

解决实际问题的社区,是高级形态的社区,诸如焦点房地产社区。水木清华BBS的成功在于,他不仅解决用户的无聊问题,孤独问题,还解决用户的实际问题,比如:团购,求职,二手。最好的最终的社区都将是这种解决无聊,孤独,实际问题的结合体。

不仅是社区,其实交友网站(社区另外一种表现形式),博客,SN等其他用户产品,拙劣者着重解决人类的无聊问题(这就是为什么绝大多少交友网沦为色情 网),中间者解决人类的孤独问题,高明者解决人类的实际问题(比如百合网解决婚嫁问题,是高明的)。窃以为新浪的名人博客解决的是人类的无聊问题,搜狐博 客"相逢的人会在相逢"的定位解决的是试图解决人类的孤独问题。

当然,不存在纯粹为了解决无聊问题的社区,无聊问题,孤独问题,实际问题的需求在一个社区里往往都存在,就看以谁为主体了。猫扑,天涯就是无聊问题和孤独问题的交集。

同样,任何一个网站的成长都可能要经历解决"无聊问题,孤独问题,实际问题"这三个阶段,就看如何把握,如何转折,平衡是重要的,度是重要的,规模是重要的。合适的时候做合适的事情是重要的。

如何成功组建虚拟团队


虽然虚拟团队与行动办公室的情况愈来愈多,不用见面、不用聚集在一起的人,照样可以组成任务团队,完成工作。但是工作者与研究团队的专家都非常清楚,能够亲身接触、面对面沟通的传统实体团队,仍然是最佳工作方式。

  要让虚拟团队顺利工作、发挥最大的效果,必须从一开始的团队组成与设计就考虑清楚。下面是专家建议的组成虚拟团队的考虑事项:

  1.有些工作不适合运用虚拟团队来进行。如果工作是连续性非常高的、整合性非常大的,就不大适合运用虚拟团队来進行,因为团队成员必须经常聚在一起来回讨论。招募、交易、创新、维持关系这些需要分享复杂资讯的活动,最好不要采用虚拟'团队,还是面对面沟通比较能够达到效果。

  2.挑选适合虚拟团队特质的人,就成功了一半。理想的虚拟团队成员应该是自动自发主动性强,不需要很多细节与工作架构的指示就可以工作。

  经常需要从与人互动中得到刺激、需要额外协助工作才能保持在稳定的轨道上、科技能力差的人员,不太适合进入虚拟团队。如果一定要将这样的人纳入团队,他们在加入团队之前,先给予团队合作、计划工作、运用和沟通等的相关训练。

  个人淘通习惯也是考虑条件之一。既乐于又善于淘通的人,才可能是适当的成员,因为他们主动与清楚的沟通习惯,有助于降低无法见面、必须透过冷漠的科技来沟通的困扰。

  3.随时检视团队是否具备虚拟合作成功条件,包括:

  工作目标与焦点清楚,成员可以自我评估进度与是否符合目标。

  团队成员了解合作需要克服的困难,并且知道如果发生危机,每个人的工作、联络对象为何,也清楚危机决策的层级。

  成员主动性强、积极沟通、互动愉快并且是行动导向的。

  团队每有一点成绩就找机会庆祝,并且建立虚拟茶水空间,让大家闲聊工作之外的主题。

虚拟团队成功第二步--谁是合适的领导人?

  虚拟团队面对很大的互信与凝聚力的挑战,其中成败的最大关键就是团队领导人,他必须有不一样的特质与工作重点。

  1.调整领导风格,不重过程,改而注重结果。一般的经理人是过程导向,每天从办公桌盯到茶水间,看到部属流血流汗而确知他们努力工作。这在几乎见不着面的虚拟团队是行不通的。领导人必须学会看结果而轻过程,要放松所习惯的传统掌控,相信成员即使在视线之外,也会竭尽全力。虽然一开始失去闲聊与监控,领导人可能浑身不自在,但是这是必要的改变。习惯之后,还要把日日监督换成随时教导,帮助成员既自主又能有最好的表现。

  2.具备对科技工具的了解与运用的能力。科技是虚拟团队存在、运作与生产力的重要命脉,所以领导人除了一般的管理能力外,还要了解科技,尤其是要了解每一种科技工具的适用范围与局限,以及电手沟通的特性,才能带领团队建立社群感,顺利合作。

  在常用的科技工具中,电子邮件适于发送讯息给群体,不适合移转知识或是刺激创意;要脑力激荡,可以用电子会议,让大家公开讨论;要向一群人宣布时,可以采用网路广播;需要临场感的时候,就要用视讯会议。

  3.善于建立团队凝聚力与主持会议。领导人除了应该要订出加强团队互动的原则、沟通时间表之外,还可以给团队一个名字,让大家有认同、归属感。

  主持会议是领导人的重要工作,这在经常虚拟、难得见面的会议情况更为重要。不论是进行视讯或是面对面会议,领导人都要明确说明目标、让大家不要失焦,让大家在分道扬镳之前清楚掌握重点。

  4.乐于帮成员大作广告。虽然虚拟团队的奖惩标准与实体团队一样,但因少与高阶打照面,较难得到肯定与升迁机会。经理人必须乐于为没有出现在组织中的成员宣传,让他们得到肯定和有成就感。

虚拟团队成功第三步--怎样沟通才会通?

  大家都知道,虚拟团队工作最大的难题,就是沟通。要做好虚拟团队的沟通,专家有下列建议:

  1.制定明确的团队沟通原则与时间表,并且强力执行。团队从一开始就要建立沟通共识,包括如何立即回复电子邮件、何时使用视讯会议、谁有决策权,因为大家无法在走道上或是午餐时间加强沟通。

  有经验的领导人会在虚拟团队组成之时给团员一份行前计划书,其中就包括解释工作流程、沟通原则、进度报告与会议时间。例如说明任一成员与客户联络后,要将联络内容以电子邮件告诉所有成员,才不会有人询问客户同样的问题。

  2.尽可能利用看得到的沟通方式。有声音的比没声音的好,有影像的比没影像的好,这是不变的道理。所以,如果可能,就使用多方通话或是视讯会议。如果工作进行中都无法实体聚会,最好能在团队一组成时先来一次聚会,让大家看看彼此的面。

如果长期团队都无法聚会或是用视讯会议见面,甚至可以鼓励成员分享彼此的照片。对于懒于沟通的人,尤其要加强海通。如果有新成员加入,要发送欢迎讯息给所有人,其中要包括所有成员的电话与电子邮件地址、附上新成员的简历,并要求新成员附上自我介绍,让所有的成员认识他,也鼓励他与大家联络。

  3.沟通要即时、正面、言之有物。虚拟团队重结果,沟通内容要重实际的协助,而且愈立即愈好。由于书面文字有时候比口语更容易伤人,而且既没有非语言讯息缓和、又无法观察对方的反应、对方又可能是在孤立的情境,所以要特别留意遣词用字,不论是建议或批评,最好都以正面的方式措词。

  4.鼓励进行非正式的沟通。即使虚拟,大家还是需要联络情感。所以要多鼓励大家在电脑线上做非正式的沟通,在视讯会议开始之前,留有一段时间大家闲聊。如果遇上成员生日或是做到一定成绩,也可举行虚拟聚会大肆庆贺,或是送个蛋糕给不在场的成员