开源的魅力不仅仅在于他是免费的,更重要的是创新。即使淘宝,阿里巴巴他们在MySQL方面也毫无建树。是的,我听说他们在尝试修改底层了,但是他们的目的只是为了证明他们可以修改,而不是在于创新,他们所做的事情都是在模仿前人做过的事情。
比如开发一个apache的module,挡掉那些不起眼的爬虫。这个是最重要的!
小站可以:if(stripos($_SERVER['USER_AGENT'],'robot')!==fales){
exit;
}
或者bot
后面有其他的方法,值得去参考。
阅读全文
小站可以:if(stripos($_SERVER['USER_AGENT'],'robot')!==fales){
exit;
}
或者bot
后面有其他的方法,值得去参考。
阅读全文
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Js的onload和js表单提交submit的demo示例</title>
<script language="javascript">
window.onload=function()
{
document.forms.registerform.submit();
}
</script>
</head>
<body>
<form id="registerform" name="register" method="post" action="www.baidu.com">
<label for="name"></label>
<input name="name" type="text" id="name" value="name" />
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Js的onload和js表单提交submit的demo示例</title>
<script language="javascript">
window.onload=function()
{
document.forms.registerform.submit();
}
</script>
</head>
<body>
<form id="registerform" name="register" method="post" action="www.baidu.com">
<label for="name"></label>
<input name="name" type="text" id="name" value="name" />
</form>
</body>
</html>
前阵子总是发现 httpd 进程的使用内存总量居然达到了上百Mb,有时甚至上Gb,真是夸张。Apache 是架在 Squid 的后面,照理说不应该出现这种情况。通过排查,发现是 Apache 中开启了持续长连接导致。
阅读全文
阅读全文
我 是那种就是不能停止创业的孩子。我想我真的害怕给别人打工。问题是,我以前在创业这件事情上似乎糟透了。屡战屡败。某些时候我会想说,“管他的,我可以拿 到一份高薪工作。”问题是,我就是不能不去想那些让我兴奋得有些可笑的下一件伟大的事情。事实证明,问题并不出在我自身。相反,我身边没有足够熟悉创业的 人来指出我的方法错了。
阅读全文
阅读全文
人在顺利的时候,成功的时候就是胜不骄;在失败的时候就不要轻易服输。你有个不服输的这股劲头,再难的关都能过。所以我建议他们(创业者)在这个时候能坚强一点,没有过不去的坎,当然也不是靠睡大头觉睡过去的。
其实某种程度上,人遇到波折是好事。人在成功的时候,在顺利的时候,其实是学不到啥东西的。只有那些失败的时候,总结教训往往是深刻的,确实是受用的。
向柳传志取经
我在最困难的1997年的时候,准备做脑白金还没做的时候,找柳传志深入聊过一次,问他他的一些企业文化。后来我们公司的企业文化,就是吸收了他公司的很多。
第一条就是说到做到,做不到就不要说。这个话很土,但是很实用,这个就从柳传志挑起来的,他跟我说了这个标准。因为我过去也经常发生这个情况,我的部下向我拍胸脯,我下个月销售额一定做到多少,然后到下个月没有完成,没完成好像也没啥,然后他又再往下个月再拍胸脯,这样一搞就等于下面骗上面,上面再一放炮又骗下面,团队的气氛就非常不好,没有战斗力。
后来我跟柳总聊过之后,我就定了这样的。分公司要向上面报销售的时候,我就跟他们说,你可以报少,但报了就一定做到。这个气氛一形成好之后,公司在这个方面就很踏实。
未来的创业者,最重要的素质,我觉得他需要两个:第一是他个人的悟性,没有悟性的话你应该去打工,不一定去做一个创业者,悟性可能是天生的成分很大。就是一个要有悟性的人才能作为一个创业者的领导者;第二个,他能很勤奋能吃苦。就是这两个,少一个我觉得都不行。这两个加起来我觉得他就成功了一大半。
第一桶金源于智慧积累
真正的成功是资源整合
其实某种程度上,人遇到波折是好事。人在成功的时候,在顺利的时候,其实是学不到啥东西的。只有那些失败的时候,总结教训往往是深刻的,确实是受用的。
向柳传志取经
我在最困难的1997年的时候,准备做脑白金还没做的时候,找柳传志深入聊过一次,问他他的一些企业文化。后来我们公司的企业文化,就是吸收了他公司的很多。
第一条就是说到做到,做不到就不要说。这个话很土,但是很实用,这个就从柳传志挑起来的,他跟我说了这个标准。因为我过去也经常发生这个情况,我的部下向我拍胸脯,我下个月销售额一定做到多少,然后到下个月没有完成,没完成好像也没啥,然后他又再往下个月再拍胸脯,这样一搞就等于下面骗上面,上面再一放炮又骗下面,团队的气氛就非常不好,没有战斗力。
后来我跟柳总聊过之后,我就定了这样的。分公司要向上面报销售的时候,我就跟他们说,你可以报少,但报了就一定做到。这个气氛一形成好之后,公司在这个方面就很踏实。
未来的创业者,最重要的素质,我觉得他需要两个:第一是他个人的悟性,没有悟性的话你应该去打工,不一定去做一个创业者,悟性可能是天生的成分很大。就是一个要有悟性的人才能作为一个创业者的领导者;第二个,他能很勤奋能吃苦。就是这两个,少一个我觉得都不行。这两个加起来我觉得他就成功了一大半。
第一桶金源于智慧积累
真正的成功是资源整合
前言:
很多很有道理,只不过我一直认为经历可以改变命运,书籍只能改变想法或是看世界的角度而已……
正文:
1、一个人,如果你不逼自己一把,你根本不知道自己有多优秀。
2、赚钱是一种能力,花钱是一种水平,能力可以练,水平是轻易练不出来的。
3、年轻人不可以太狂。
4、一个人的知识,通过学习可以得到;一个人的成长,必须通过磨练。
5、这个世界上好书很多,可以改变命运的书很少。
6、这个世界上朋友很多,可以用一生托付的朋友很少。
7、如果发现一个人,一个地方,一件事,一本书,可以改变你的命运。一定要想办法跟他发生关系,否则,他就跟你没关系。
8、当一个人没有成功的时候,装也装出成功的样子。(因为装的时候,他已经成为你性格的一部分)
9、我们学习的目的,是为了使用,不是知识没有用,而是你没有使用,说明你没有用。
10、别人对你的态度,决定了你的命运。
11、笑由心生。
12、一个人出门的时候,口袋里都装的钱,装钱的目的,就是为了花出去,那里舒服就往那里花。一个人让别人舒服,他就是一个经营者;别人让你舒服,他就是一个消费者。
13、一个人,敢听真话,需要勇气;一个人敢说真话,需要魄力。
14、因为你的存在,让别人快乐起来,你叫朋友;因为你的存在,让别人卓越起来,你是教练;因为你的存在,让别人强大起来,你是领导。
15、一件事情,对你伤害的程度与事情本身没有任何关系,取决于你对这件事的态度。
16 、你,简单了,你的世界就简单了;你,简单了,事情就简单了。
17、一件事,会干了,好好干;不会干了,乱干。干的次数多了,自然会干。但是,首先,你要干。
18、一个人,想要优秀,你必须要接受挑战;一个人,你想要尽快优秀,就要去寻找挑战。
19、一个人想要创业,先要学会打工。
20、世界上,成功的有两种人,一种人是傻子,一种人是疯子。傻子是会吃亏的人,疯子是会行动的人。
来源:http://www.umiwi.com/article/3187
很多很有道理,只不过我一直认为经历可以改变命运,书籍只能改变想法或是看世界的角度而已……
正文:
1、一个人,如果你不逼自己一把,你根本不知道自己有多优秀。
2、赚钱是一种能力,花钱是一种水平,能力可以练,水平是轻易练不出来的。
3、年轻人不可以太狂。
4、一个人的知识,通过学习可以得到;一个人的成长,必须通过磨练。
5、这个世界上好书很多,可以改变命运的书很少。
6、这个世界上朋友很多,可以用一生托付的朋友很少。
7、如果发现一个人,一个地方,一件事,一本书,可以改变你的命运。一定要想办法跟他发生关系,否则,他就跟你没关系。
8、当一个人没有成功的时候,装也装出成功的样子。(因为装的时候,他已经成为你性格的一部分)
9、我们学习的目的,是为了使用,不是知识没有用,而是你没有使用,说明你没有用。
10、别人对你的态度,决定了你的命运。
11、笑由心生。
12、一个人出门的时候,口袋里都装的钱,装钱的目的,就是为了花出去,那里舒服就往那里花。一个人让别人舒服,他就是一个经营者;别人让你舒服,他就是一个消费者。
13、一个人,敢听真话,需要勇气;一个人敢说真话,需要魄力。
14、因为你的存在,让别人快乐起来,你叫朋友;因为你的存在,让别人卓越起来,你是教练;因为你的存在,让别人强大起来,你是领导。
15、一件事情,对你伤害的程度与事情本身没有任何关系,取决于你对这件事的态度。
16 、你,简单了,你的世界就简单了;你,简单了,事情就简单了。
17、一件事,会干了,好好干;不会干了,乱干。干的次数多了,自然会干。但是,首先,你要干。
18、一个人,想要优秀,你必须要接受挑战;一个人,你想要尽快优秀,就要去寻找挑战。
19、一个人想要创业,先要学会打工。
20、世界上,成功的有两种人,一种人是傻子,一种人是疯子。傻子是会吃亏的人,疯子是会行动的人。
来源:http://www.umiwi.com/article/3187
我在设置禁止显示文件列表后发现访问有index.php文件的文件夹时无法找到index.php
解决:
找到apache的配置文件httpd.conf后找到
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
在其中添加index.php,搞定.
我的配置:
主要是对某些网站需要通过passport转发一下:
来源:http://learnmore.javaeye.com/blog/425176
解决:
找到apache的配置文件httpd.conf后找到
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
在其中添加index.php,搞定.
我的配置:
主要是对某些网站需要通过passport转发一下:
DocumentRoot ***
ServerName ***
AddDefaultCharset UTF-8
DirectoryIndex passport.php
ServerName ***
AddDefaultCharset UTF-8
DirectoryIndex passport.php
来源:http://learnmore.javaeye.com/blog/425176
□彭树涛
钱老非常关注创新型人才培养问题。他认为,培养创新型人才的两个基本途径在于实现科学和艺术的结合,实现自然科学和社会科学的结合。因为创新是逻辑思维、形象思维和灵感思维这三种思维,以及人类智慧中的“性智”和“量智”这两种智慧共同作用的结晶。
高度重视创新型人才的培养
钱老一直倡导和推崇创新精神,他的一生真正做到了“活动老,学到老”,他取得的杰出成就是对创新精神的最好的诠释。他晚年还特别关注科技创新人才培养问题,将此作为国家未来发展的关键。2005年和2007年,温家宝总理两次看望钱老,耄耋之年的钱老都谈到了国家要高度重视培养具有创新能力的人才,并语重心长地说:“现在中国没有完全发展起来,一个重要原因是没有一所大学能够按照培养科学技术发明创造人才的模式去办学,没有自己独特的创新的东西,老是‘冒’ 不出杰出人才。这是很大的问题。”并且指出“处理好科学和艺术的关系,就能够创新,中国人就一定能赛过外国人。”平时,钱学森也就创新人才的培养多次强调,“今天我们办学,一定要有科技创新精神,培养会动脑筋,具有非凡创造能力的人才。”“如果不创新,我们将成为无能之辈!我们要敢干!”钱老强调的创新,在很大程度上就是要突破传统观念和思维,不人云亦云;就是要“敢于研究别人没有研究过的科学前沿问题。而不是别人已经说过的东西我们知道,没有说过的东西,我们就不知道”。
钱老对创新精神的切身感悟和培养创新型人才的高度重视是和他的教育经历密切相关的。1935年,钱学森留学美国,先后入麻省理工学院和加州理工学院学习。留学美国的这段时间对钱学森来说意义重大,尤其是加州理工学院这一阶段。加州理工学院崇尚对知识与真理的追求,学术民主和创新之风尤盛,这令钱学森受益终身。用他自己的话说,这是他一生的道路上的两个高潮之一。钱老回国后身体力行,在学术研究和人才培养上一直坚持这种作风,以教育中国学者和开创国内新的研究风气。无疑,这对我国科技发展和人才培养等产生了极为重要的作用。
培养创新型人才的两个基本途径
钱老认为要培养具有创新能力的人才,要培养复合型人才和领军人物,就要坚持走科学与艺术结合之路,在科学和艺术的结合上下功夫;就要坚持走自然科学和社会科学结合之路,在自然科学和社会科学的结合上下功夫。
科学和艺术,有如车之两轮、鸟之两翼,二者的完美结合和共同作用,以致科学世界和艺术世界合而为一,正是培养创新型人才的奥秘。钱老对此有切身感受。1991年,钱老荣获“国家杰出贡献科学家”荣誉称号和一级英雄模范奖章。在授奖仪式上,钱老说,“蒋英(钱老夫人,笔者注)是女高音歌唱家,而且是专门唱最深刻的德国古典艺术歌曲。正是她给我介绍了这些音乐艺术,这些艺术里所包含的诗情画意和对于人生的深刻理解,使得我丰富了对世界的认识,学会了艺术的广阔思维方法。或者说,正因为我受到这些艺术方面的熏陶,所以我才能够避免死心眼,避免机械唯物论,想问题能够更宽一点、活一点,所以在这一点上我也要感谢我的爱人蒋英同志。”1999年7月 10日,钱学森在中央音乐学院庆祝蒋英教授执教40周年大会上也表示,“蒋英对我的工作有很大的帮助和启示,这实际上是文艺对科学思维的启迪和开拓!在我对这一件工作遇到困难而百思不得其解的时候,往往是蒋英的歌声使我豁然开朗。”2005年7月29日,温家宝总理前往医院看望钱学森时,钱老再次表达了科学和艺术相结合的深刻体会。“一个有科学创新能力的人,不但要有科学知识,还要有文化艺术修养。”“小时候,我父亲就是这样对我进行教育和培养的,他让我学理科,同时又送我去学绘画和音乐。就是把科学和文化艺术结合起来。我觉得艺术上的修养对我后来的科学工作很重要,它开拓科学创新思维。”钱老在谈到自然科学问题时,时常联系到文学艺术问题,从艺术家大跨度的形象思维得到借鉴。比如“我觉得科学和艺术是相通的……因此我提倡搞科学的人不要死心眼儿,要懂点艺术,它可以防止科学家犯机械唯物论。”“你们搞艺术的人需要灵感,难道搞科学的人只需要数据和公式吗?搞科学的人同样需要有灵感,而我的灵感,许多就是从艺术中悟来的。”这都充分展示了钱老将科学与艺术结合起来的思维特征。
钱老认为,培养创新型人才的另一个途径是实现自然科学与社会科学的结合。作为一名著名科学家,钱老不仅多次谈到他对众多自然科学学科的看法,而且还谈到他对许多社会科学,如经济学、社会学、法学、史学,甚至宗教等问题的看法。他在论述某一社会科学问题时,往往吸收自然科学的成果,或从自然科学的视角,将其与社会科学结合起来,由此提出他自己的新见解。比如1990年,钱老就曾两次致信中国社会科学院党组书记、副院长郁文,提出要建立自然科学和社会科学的联盟。钱学森认为这不仅是适应现代科学技术发展和经济、社会发展的要求,更是马克思主义认识论的要求。
创新型人才是人类不同思维和智慧共同作用的结晶
钱老根据思维方式的不同特点,将人的思维分为逻辑思维、形象思维和灵感思维。同时,他又借鉴哲学家熊十力教授把人类智慧分为“性智”“量智”的观点,认为数学科学、自然科学、系统科学、军事科学等10大科学技术部门的知识是性智、量智的结合,但主要表现为“量智”;而文艺创作、文艺理论、美学以及各种文艺实践活动,也是两者的结合,但主要表现为“性智”。“量智”是侧重对事物从微观到宏观、从局部到整体、从量变到质变的发展过程去探索其本质和规律的学问; “性智”是侧重对事物从宏观到微观,从整体的、形象的感受上,从事物的“质”上入手去探索其本质和规律的学问。“量智”、“性智”是相通的。
量性双悟智,天人一贯同。创新思维和创新型人才的培养,正是这三种思维和两种智慧共同作用的结果。从思维方式来看,“量智”主要是逻辑思维与形象思维的结合,但侧重于逻辑思维方式,大多用于科学研究与实验;“性智”固然也是逻辑思维与形象思维相结合,但侧重于形象思维方式,大多用于艺术创造与艺术活动;二者都离不开灵感思维的作用。对此,钱老有过精辟的分析:“从思维科学角度看,科学工作总是从一个猜想开始的,然后才是科学论证;换言之,科学工作是源于形象思维,终于逻辑思维。形象思维是源于艺术,所以科学工作是先艺术,后才是科学。相反,艺术工作必须对事物有个科学的认识,然后才是艺术创作。在过去,人们总是只看到后一半,所以把科学和艺术分了家,而其实是分不了家的;科学需要艺术,艺术也需要科学。”而它们也离不开灵感思维的启发。“灵感思维是人们在生活中真有的,我自己就有过多次,解决了研究中遇到的难题。这都是半梦半醒时发生的。现在我想:这是在正常清醒情况下,头脑中框框太多,阻碍大跨度的思维,所以要在半梦半醒中突破障碍,见到事例。”
当前,全国正高举邓小平理论和“三个代表”重要思想伟大旗帜,全面贯彻落实科学发展观,共同致力于创新型国家的建设。在新的时代背景下,如何培养更多的创新型国家的建设者?钱学森对培养创新型人才和创新思维的深刻论述无疑具有重要的启示意义。
钱老非常关注创新型人才培养问题。他认为,培养创新型人才的两个基本途径在于实现科学和艺术的结合,实现自然科学和社会科学的结合。因为创新是逻辑思维、形象思维和灵感思维这三种思维,以及人类智慧中的“性智”和“量智”这两种智慧共同作用的结晶。
高度重视创新型人才的培养
钱老一直倡导和推崇创新精神,他的一生真正做到了“活动老,学到老”,他取得的杰出成就是对创新精神的最好的诠释。他晚年还特别关注科技创新人才培养问题,将此作为国家未来发展的关键。2005年和2007年,温家宝总理两次看望钱老,耄耋之年的钱老都谈到了国家要高度重视培养具有创新能力的人才,并语重心长地说:“现在中国没有完全发展起来,一个重要原因是没有一所大学能够按照培养科学技术发明创造人才的模式去办学,没有自己独特的创新的东西,老是‘冒’ 不出杰出人才。这是很大的问题。”并且指出“处理好科学和艺术的关系,就能够创新,中国人就一定能赛过外国人。”平时,钱学森也就创新人才的培养多次强调,“今天我们办学,一定要有科技创新精神,培养会动脑筋,具有非凡创造能力的人才。”“如果不创新,我们将成为无能之辈!我们要敢干!”钱老强调的创新,在很大程度上就是要突破传统观念和思维,不人云亦云;就是要“敢于研究别人没有研究过的科学前沿问题。而不是别人已经说过的东西我们知道,没有说过的东西,我们就不知道”。
钱老对创新精神的切身感悟和培养创新型人才的高度重视是和他的教育经历密切相关的。1935年,钱学森留学美国,先后入麻省理工学院和加州理工学院学习。留学美国的这段时间对钱学森来说意义重大,尤其是加州理工学院这一阶段。加州理工学院崇尚对知识与真理的追求,学术民主和创新之风尤盛,这令钱学森受益终身。用他自己的话说,这是他一生的道路上的两个高潮之一。钱老回国后身体力行,在学术研究和人才培养上一直坚持这种作风,以教育中国学者和开创国内新的研究风气。无疑,这对我国科技发展和人才培养等产生了极为重要的作用。
培养创新型人才的两个基本途径
钱老认为要培养具有创新能力的人才,要培养复合型人才和领军人物,就要坚持走科学与艺术结合之路,在科学和艺术的结合上下功夫;就要坚持走自然科学和社会科学结合之路,在自然科学和社会科学的结合上下功夫。
科学和艺术,有如车之两轮、鸟之两翼,二者的完美结合和共同作用,以致科学世界和艺术世界合而为一,正是培养创新型人才的奥秘。钱老对此有切身感受。1991年,钱老荣获“国家杰出贡献科学家”荣誉称号和一级英雄模范奖章。在授奖仪式上,钱老说,“蒋英(钱老夫人,笔者注)是女高音歌唱家,而且是专门唱最深刻的德国古典艺术歌曲。正是她给我介绍了这些音乐艺术,这些艺术里所包含的诗情画意和对于人生的深刻理解,使得我丰富了对世界的认识,学会了艺术的广阔思维方法。或者说,正因为我受到这些艺术方面的熏陶,所以我才能够避免死心眼,避免机械唯物论,想问题能够更宽一点、活一点,所以在这一点上我也要感谢我的爱人蒋英同志。”1999年7月 10日,钱学森在中央音乐学院庆祝蒋英教授执教40周年大会上也表示,“蒋英对我的工作有很大的帮助和启示,这实际上是文艺对科学思维的启迪和开拓!在我对这一件工作遇到困难而百思不得其解的时候,往往是蒋英的歌声使我豁然开朗。”2005年7月29日,温家宝总理前往医院看望钱学森时,钱老再次表达了科学和艺术相结合的深刻体会。“一个有科学创新能力的人,不但要有科学知识,还要有文化艺术修养。”“小时候,我父亲就是这样对我进行教育和培养的,他让我学理科,同时又送我去学绘画和音乐。就是把科学和文化艺术结合起来。我觉得艺术上的修养对我后来的科学工作很重要,它开拓科学创新思维。”钱老在谈到自然科学问题时,时常联系到文学艺术问题,从艺术家大跨度的形象思维得到借鉴。比如“我觉得科学和艺术是相通的……因此我提倡搞科学的人不要死心眼儿,要懂点艺术,它可以防止科学家犯机械唯物论。”“你们搞艺术的人需要灵感,难道搞科学的人只需要数据和公式吗?搞科学的人同样需要有灵感,而我的灵感,许多就是从艺术中悟来的。”这都充分展示了钱老将科学与艺术结合起来的思维特征。
钱老认为,培养创新型人才的另一个途径是实现自然科学与社会科学的结合。作为一名著名科学家,钱老不仅多次谈到他对众多自然科学学科的看法,而且还谈到他对许多社会科学,如经济学、社会学、法学、史学,甚至宗教等问题的看法。他在论述某一社会科学问题时,往往吸收自然科学的成果,或从自然科学的视角,将其与社会科学结合起来,由此提出他自己的新见解。比如1990年,钱老就曾两次致信中国社会科学院党组书记、副院长郁文,提出要建立自然科学和社会科学的联盟。钱学森认为这不仅是适应现代科学技术发展和经济、社会发展的要求,更是马克思主义认识论的要求。
创新型人才是人类不同思维和智慧共同作用的结晶
钱老根据思维方式的不同特点,将人的思维分为逻辑思维、形象思维和灵感思维。同时,他又借鉴哲学家熊十力教授把人类智慧分为“性智”“量智”的观点,认为数学科学、自然科学、系统科学、军事科学等10大科学技术部门的知识是性智、量智的结合,但主要表现为“量智”;而文艺创作、文艺理论、美学以及各种文艺实践活动,也是两者的结合,但主要表现为“性智”。“量智”是侧重对事物从微观到宏观、从局部到整体、从量变到质变的发展过程去探索其本质和规律的学问; “性智”是侧重对事物从宏观到微观,从整体的、形象的感受上,从事物的“质”上入手去探索其本质和规律的学问。“量智”、“性智”是相通的。
量性双悟智,天人一贯同。创新思维和创新型人才的培养,正是这三种思维和两种智慧共同作用的结果。从思维方式来看,“量智”主要是逻辑思维与形象思维的结合,但侧重于逻辑思维方式,大多用于科学研究与实验;“性智”固然也是逻辑思维与形象思维相结合,但侧重于形象思维方式,大多用于艺术创造与艺术活动;二者都离不开灵感思维的作用。对此,钱老有过精辟的分析:“从思维科学角度看,科学工作总是从一个猜想开始的,然后才是科学论证;换言之,科学工作是源于形象思维,终于逻辑思维。形象思维是源于艺术,所以科学工作是先艺术,后才是科学。相反,艺术工作必须对事物有个科学的认识,然后才是艺术创作。在过去,人们总是只看到后一半,所以把科学和艺术分了家,而其实是分不了家的;科学需要艺术,艺术也需要科学。”而它们也离不开灵感思维的启发。“灵感思维是人们在生活中真有的,我自己就有过多次,解决了研究中遇到的难题。这都是半梦半醒时发生的。现在我想:这是在正常清醒情况下,头脑中框框太多,阻碍大跨度的思维,所以要在半梦半醒中突破障碍,见到事例。”
当前,全国正高举邓小平理论和“三个代表”重要思想伟大旗帜,全面贯彻落实科学发展观,共同致力于创新型国家的建设。在新的时代背景下,如何培养更多的创新型国家的建设者?钱学森对培养创新型人才和创新思维的深刻论述无疑具有重要的启示意义。
作为开发中应用最广泛的语言之一,PHP有着大量的粉丝,那么你是一名优秀的程序员吗?在进行自我修炼的同时,你是否想过面对各种各样的问题,我该如何突破自身的瓶颈,以便更好的发展呢?
阅读全文
阅读全文
毛氏管理法的三定律:
毛氏第一定律:只有政治反抗能量最小化之后,政权才有稳定的可能,行政管理和利益协调才有可靠的基础。这个定律的内容直接涉及到民众的生存权竞争,属于赤裸裸的阶级斗争范畴,所以也可以称之为“阶级斗争定律”。
阅读全文
毛氏第一定律:只有政治反抗能量最小化之后,政权才有稳定的可能,行政管理和利益协调才有可靠的基础。这个定律的内容直接涉及到民众的生存权竞争,属于赤裸裸的阶级斗争范畴,所以也可以称之为“阶级斗争定律”。
阅读全文
(亮点在于对爱情的产品分析) 本人乃一介布衣,以产品经理的外皮苟活于世,不敢说混的太好,可是好歹懂得一些产品类浅显的道理!那天在《非诚勿扰》的舞台上用产品的角度片面的分析了一下爱情,觉得很不过瘾,于是今天做个稍微全面点的分析吧。 首先,告诉大家,产品中有这么几个比较重要的对象: 。 1、产品:能满足用户需求的有形或者无形的集合。 2、需求:用户希望产品能够解决的问题。 3、用户:使用产品的人。 一个产品可能同时满足用户很多需求,比如一把雨伞可以遮阳,可以挡雨,有时候也能够当做自慰器,更有时可能被当成MP3,这都是一把雨伞所满足用户的需求。 但是这些需求不管大小,皆可以归纳分成三类: 1、必备需求:这类需求构成产品的主框架,若无这些,则无产品。比如一把雨伞,那么他的必备需求就是挡雨或者遮阳。
2、扩展需求:这类需求通常是可有可无的,当然有了更好。比如一把雨伞,不光可以挡雨或者遮阳,还能当做MP3 或者自慰器,那么这个就是扩展需求。
3、增值需求:这类需求一般是潜在的,但是却会影响产品在未来的价值。比如这把雨伞是迈克尔杰克逊用过的,那么折伞就很值钱了。
那么用户呢?其实也可以分为三种:
1、 基础用户或稳定用户。这类用户首先看重的是产品所能满足的基础需求,次要看重的是产品的扩展需求。这类用户理性,且稳定,也是占最大比例的用户。
2、 投机用户或聪明用户。这类用户首先看重的也是产品所能满足的基础需求,但是次要看重的是产品的增值需求。这类用户聪明,且极具投机能力,往往在最后会获得更大的价值。他们占据用户中的第二大的比例。
3、 不理智用户或傻子用户。这类用户往往首先看重的是产品的扩展需求,而忽略掉基础和增值需求,当产品的扩展功能出现问题时,往往他们将失去基础需求,最终导致产品崩溃,被淘汰。他们占据用户中最小的比例。
分析如下: 男人为产品,女人为用户。 当男人为一个产品,满足女人对她们的期望时。
基础需求:男人是否爱女人,是否能让女人吃饱穿暖。
扩展需求:男人很帅,并且有很多钱,能让女人吃好穿好。
增值需求:虽然男人现在没有能力让女人吃好穿好,但是在将来,会成长为让女人吃好穿好过上付裕生活的男人。
这时候女人(即用户)也分为如下三种:
1、 稳定的女人:她们看重的是男人是否爱她,能否让他们吃饱穿暖,过上平凡踏实的生活。当然,如果男人能够有点钱,或者长得帅一点,更好。
2、 聪明的女人:她们看重的也是男人是否爱她,能否让他们吃饱穿暖,过上平凡踏实的生活。不过跟第一种不同的是,他们更加能看到男人的潜力,也就是说,他们在乎的是这个男人是否是潜力股,能否在将来变得事业有成,挣很多钱,让他们过上富足的生活。
3、 傻女人:她们只看重男人是否有钱,是否长得帅气,却忽略掉这个男人本身所具有的能力。如果在将来这个男人一旦失去了扩展需求,比如突然某一天变穷了,没钱了,或者毁容了,那么这个女人可能连最基础的需求都不能被满足,说白了,就是这个男人都没有能力靠自己的本事让心爱的女人吃饱穿暖。那么这段爱情就结束了! 不过也有一种可能,就是她们的男人越来越有钱,也就是产品越来越优秀,那么这个产品将会变得更加抢手,会有更多优秀的用户来获取产品,也就是她们手中的男人。如果这些女人如果没本事了,那么婚外恋,小三等等,就发生了! 女人为产品,满足男人对他们的期望时。 基础需求:这个女人是否善良,勤俭持家,孝顺,是否深爱着男人。 扩展需求:这个女人身材好,长得漂亮。 增值需求:这个女人有旺夫之能,将来会辅佐丈夫,让丈夫作为产品的增值需求变大。
这时候男人(即用户)也分为如下三种:
1、 稳定的男人:他们最先看重的是女人是否善良,勤俭持家,孝顺,是否爱他们。其次如果这个女人身材好点,长得漂亮一些。 2、 聪明的男人:他们最先看重的也是女人是否善良,勤俭持家,孝顺,是否爱他们。不过其次他们看重的是这个女人将来能否帮助他们在事业或者别的方面取得成功。
3、 傻男人:他们看重的只有女人的脸蛋和身材,其他的一概不顾。这样,他们就会让自己变得很累。让自己从一个用户,活活的变成一个产品,让自己变成更强大的产品来吸引住女人。因为傻男人太多太多了,而身材好、脸蛋好的用户太少了。于是,男人一辈子活得很累,稍有不顺,手头的产品就被别人抢走了。 不过也有一种可能,就是这个女人又善良,又勤俭持家,又孝顺,又爱他们,然后长得又漂亮,身材又好,还能辅佐他们事业成功。这样的结果,就是男人开心顺心的去工作,衣食无忧,生活幸福。 这就是我从产品的角度来分析的爱情,说的不一定对,大家见谅
2、扩展需求:这类需求通常是可有可无的,当然有了更好。比如一把雨伞,不光可以挡雨或者遮阳,还能当做MP3 或者自慰器,那么这个就是扩展需求。
3、增值需求:这类需求一般是潜在的,但是却会影响产品在未来的价值。比如这把雨伞是迈克尔杰克逊用过的,那么折伞就很值钱了。
那么用户呢?其实也可以分为三种:
1、 基础用户或稳定用户。这类用户首先看重的是产品所能满足的基础需求,次要看重的是产品的扩展需求。这类用户理性,且稳定,也是占最大比例的用户。
2、 投机用户或聪明用户。这类用户首先看重的也是产品所能满足的基础需求,但是次要看重的是产品的增值需求。这类用户聪明,且极具投机能力,往往在最后会获得更大的价值。他们占据用户中的第二大的比例。
3、 不理智用户或傻子用户。这类用户往往首先看重的是产品的扩展需求,而忽略掉基础和增值需求,当产品的扩展功能出现问题时,往往他们将失去基础需求,最终导致产品崩溃,被淘汰。他们占据用户中最小的比例。
分析如下: 男人为产品,女人为用户。 当男人为一个产品,满足女人对她们的期望时。
基础需求:男人是否爱女人,是否能让女人吃饱穿暖。
扩展需求:男人很帅,并且有很多钱,能让女人吃好穿好。
增值需求:虽然男人现在没有能力让女人吃好穿好,但是在将来,会成长为让女人吃好穿好过上付裕生活的男人。
这时候女人(即用户)也分为如下三种:
1、 稳定的女人:她们看重的是男人是否爱她,能否让他们吃饱穿暖,过上平凡踏实的生活。当然,如果男人能够有点钱,或者长得帅一点,更好。
2、 聪明的女人:她们看重的也是男人是否爱她,能否让他们吃饱穿暖,过上平凡踏实的生活。不过跟第一种不同的是,他们更加能看到男人的潜力,也就是说,他们在乎的是这个男人是否是潜力股,能否在将来变得事业有成,挣很多钱,让他们过上富足的生活。
3、 傻女人:她们只看重男人是否有钱,是否长得帅气,却忽略掉这个男人本身所具有的能力。如果在将来这个男人一旦失去了扩展需求,比如突然某一天变穷了,没钱了,或者毁容了,那么这个女人可能连最基础的需求都不能被满足,说白了,就是这个男人都没有能力靠自己的本事让心爱的女人吃饱穿暖。那么这段爱情就结束了! 不过也有一种可能,就是她们的男人越来越有钱,也就是产品越来越优秀,那么这个产品将会变得更加抢手,会有更多优秀的用户来获取产品,也就是她们手中的男人。如果这些女人如果没本事了,那么婚外恋,小三等等,就发生了! 女人为产品,满足男人对他们的期望时。 基础需求:这个女人是否善良,勤俭持家,孝顺,是否深爱着男人。 扩展需求:这个女人身材好,长得漂亮。 增值需求:这个女人有旺夫之能,将来会辅佐丈夫,让丈夫作为产品的增值需求变大。
这时候男人(即用户)也分为如下三种:
1、 稳定的男人:他们最先看重的是女人是否善良,勤俭持家,孝顺,是否爱他们。其次如果这个女人身材好点,长得漂亮一些。 2、 聪明的男人:他们最先看重的也是女人是否善良,勤俭持家,孝顺,是否爱他们。不过其次他们看重的是这个女人将来能否帮助他们在事业或者别的方面取得成功。
3、 傻男人:他们看重的只有女人的脸蛋和身材,其他的一概不顾。这样,他们就会让自己变得很累。让自己从一个用户,活活的变成一个产品,让自己变成更强大的产品来吸引住女人。因为傻男人太多太多了,而身材好、脸蛋好的用户太少了。于是,男人一辈子活得很累,稍有不顺,手头的产品就被别人抢走了。 不过也有一种可能,就是这个女人又善良,又勤俭持家,又孝顺,又爱他们,然后长得又漂亮,身材又好,还能辅佐他们事业成功。这样的结果,就是男人开心顺心的去工作,衣食无忧,生活幸福。 这就是我从产品的角度来分析的爱情,说的不一定对,大家见谅
步骤:
1、数据库----反向工程
2、在反向工程向导中选择--设置--然后选择---Microsoft--ODBC-for--oracle
3、新建数据源---选择用户数据源----Microsoft--ODBC-for--oracle
4、输入用户名和数据库名
5、输入数据库密码---选择需要绘制的表
来源:http://www.newwhy.com/2010/0912/14288.html
在日常的工作中,你或许经常用到数据库。当然,首先,你要先对数据库的结构及关系进行设计,当然,如果你首先用visio来画出你要的图形这样对于理清思路是很有帮助的。不过,在许多时候,你可能需要维护现有的数据库,并要理清现有数据库的表与表之间的关系。你仍然可以采用visio.visio有一项非常有意思的功能,叫做反向工程功能。一般而言,visio对数据库的连接是通过ODBC进行的,新建一个图表,在模型中找到数据库下面的数据库模型,在菜单栏中会多出一项数据库,在里面找到反向工程,然后,按照提示走即可了。对于mysql或是postgresql这样的开源数据库,你或许需要先安装其connect,如mysql connect,然后按提示即可自动绘出你所要的图形,简单再通过自己的润色即可得出你所要的结果,如何,很有意思也可以很迅速的提高工作效率吧。
具体操作:
三步走。
<1>建立数据源
打开控制面板—>管理工具—>数据源 (ODBC),或直接运行odbccp32.cpl命令。打开ODBC数据源管理器。添加一个系统数据源。选择Sql Server作为数据源的驱动程序,键入数据源名称demo,选择合适的sql server服务器,然后一路默认下去。(在后面的步骤中可以选择需要进行反向工程的数据库,默认是master)数据源信息如图一示。
<2>在visio中新建数据库模型图
打开visio 2003,文件—>新建—>数据库—>数据库模型图。建立数据库模型图之后,菜单栏多出一个菜单项"数据库"。
<3>反向工程
菜单项数据库—>反向工程。启动反向工程向导,一步步完成反向工程设置。
1.建立与数据库的连接。选择visio驱动程序的类型决定了可以连接的数据库类型及可用选项。数据源指定数据库位置及连接信息。这里我们选择visio驱动程序为Microsoft Sql Server,数据源为刚建立的demo。如图二示。
2.连接数据源。输入用户名和密码用于连接数据源。
3.选择要进行反向工程的对象类型,如图三示。
4.选择要进行反向工程的表和视图。
5.选择要进行么向工程的存储过程。
6.是否想让选择了反向工程的项添加到当前工程中。选择是才能生成图。
结果大致向下面这样。
复制来源参考:http://www.cnblogs.com/sharpaxe/articles/555276.html
Mysql:
Mysql ODBC驱动包 5.1 For WIN32
下载参考:http://www.hzzhit.com/blog/tool/Mysql-ODBC-driver.html
官方下载:http://dev.mysql.com/downloads/connector/odbc/3.51.html
老外下载:http://www.freewarefiles.com/downloads_counter.php?programid=19970
1、数据库----反向工程
2、在反向工程向导中选择--设置--然后选择---Microsoft--ODBC-for--oracle
3、新建数据源---选择用户数据源----Microsoft--ODBC-for--oracle
4、输入用户名和数据库名
5、输入数据库密码---选择需要绘制的表
来源:http://www.newwhy.com/2010/0912/14288.html
在日常的工作中,你或许经常用到数据库。当然,首先,你要先对数据库的结构及关系进行设计,当然,如果你首先用visio来画出你要的图形这样对于理清思路是很有帮助的。不过,在许多时候,你可能需要维护现有的数据库,并要理清现有数据库的表与表之间的关系。你仍然可以采用visio.visio有一项非常有意思的功能,叫做反向工程功能。一般而言,visio对数据库的连接是通过ODBC进行的,新建一个图表,在模型中找到数据库下面的数据库模型,在菜单栏中会多出一项数据库,在里面找到反向工程,然后,按照提示走即可了。对于mysql或是postgresql这样的开源数据库,你或许需要先安装其connect,如mysql connect,然后按提示即可自动绘出你所要的图形,简单再通过自己的润色即可得出你所要的结果,如何,很有意思也可以很迅速的提高工作效率吧。
具体操作:
三步走。
<1>建立数据源
打开控制面板—>管理工具—>数据源 (ODBC),或直接运行odbccp32.cpl命令。打开ODBC数据源管理器。添加一个系统数据源。选择Sql Server作为数据源的驱动程序,键入数据源名称demo,选择合适的sql server服务器,然后一路默认下去。(在后面的步骤中可以选择需要进行反向工程的数据库,默认是master)数据源信息如图一示。
<2>在visio中新建数据库模型图
打开visio 2003,文件—>新建—>数据库—>数据库模型图。建立数据库模型图之后,菜单栏多出一个菜单项"数据库"。
<3>反向工程
菜单项数据库—>反向工程。启动反向工程向导,一步步完成反向工程设置。
1.建立与数据库的连接。选择visio驱动程序的类型决定了可以连接的数据库类型及可用选项。数据源指定数据库位置及连接信息。这里我们选择visio驱动程序为Microsoft Sql Server,数据源为刚建立的demo。如图二示。
2.连接数据源。输入用户名和密码用于连接数据源。
3.选择要进行反向工程的对象类型,如图三示。
4.选择要进行反向工程的表和视图。
5.选择要进行么向工程的存储过程。
6.是否想让选择了反向工程的项添加到当前工程中。选择是才能生成图。
结果大致向下面这样。
复制来源参考:http://www.cnblogs.com/sharpaxe/articles/555276.html
Mysql:
Mysql ODBC驱动包 5.1 For WIN32
下载参考:http://www.hzzhit.com/blog/tool/Mysql-ODBC-driver.html
官方下载:http://dev.mysql.com/downloads/connector/odbc/3.51.html
老外下载:http://www.freewarefiles.com/downloads_counter.php?programid=19970
http://www.weberliu.com/2011/01/nginx-jquery-php-comet/
这位兄弟的文章是完全可以实现这个Nginx的Push的,特别注意它不是持续的推:
DownLoad:
下载文件
测试示例:
发送:
http://wenkongbao.com/send.html
接受:
http://wenkongbao.com/listen.html
===================EOF
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
使用NGiNX_HTTP_Push_Module实现简单的服务器推送 收藏
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
http://pushmodule.slact.net可以下载该模块。
如果已安装Nginx,需要重新编译安装Nginx,要用命令"./configure --add-module=/home/hfahe/ngnix_http_push_module"来配置,然后执行make和make install来安装Nginx。
安装完成后,在Nginx配置文件的Server段里添加两个路径配置:
view plaincopy to clipboardprint?
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
重启Nginx后,请求http://localhost/activity?id=10000的地址,可以看到浏览器处于请求堵塞阶段。
使用一段Perl脚本来Post数据到publish地址:
view plaincopy to clipboardprint?
use LWP::UserAgent;
use HTTP::Request::Common;
my $ua = new LWP::UserAgent;
my $response = $ua->request(
POST 'http://localhost//publish?id=10000',
Content_Type => 'text/html',
Content => 'Server Push'
);
my $content = $response->content;
print $content;
use LWP::UserAgent;
use HTTP::Request::Common;
my $ua = new LWP::UserAgent;
my $response = $ua->request(
POST 'http://localhost//publish?id=10000',
Content_Type => 'text/html',
Content => 'Server Push'
);
my $content = $response->content;
print $content;
运行后,可以看到浏览器已经输出了推送的内容。
如果要完成一个大的消息系统,还需要实现持续的推送机制,另外还需要实现Nginx和后台服务器的交互(或者考虑AgentZh推的Nginx编程,呵呵)。
出处:http://blog.csdn.net/hfahe/archive/2010/06/09/5659308.aspx
基于Nginx开发的第三方module,可以实现comnet的server.....功能很到位啊....
这个module是对php做comnet的一大补充啊,要是web程序是php的话,client发起连接,php只能自己进行阻塞并等待任务处理完返 回信息,要是遇到超过HTTP会话的内容,虽然client可以继续重练,但是php本身没法保证会话的一致,虽然可以用些奇技淫巧,但毕竟不靠谱啊。像 java这类可以在server端自己派生线程的语言,就会比PHP容易多了。
阅读全文
这位兄弟的文章是完全可以实现这个Nginx的Push的,特别注意它不是持续的推:
DownLoad:
下载文件 测试示例:
发送:
http://wenkongbao.com/send.html
接受:
http://wenkongbao.com/listen.html
===================EOF
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
使用NGiNX_HTTP_Push_Module实现简单的服务器推送 收藏
NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。
http://pushmodule.slact.net可以下载该模块。
如果已安装Nginx,需要重新编译安装Nginx,要用命令"./configure --add-module=/home/hfahe/ngnix_http_push_module"来配置,然后执行make和make install来安装Nginx。
安装完成后,在Nginx配置文件的Server段里添加两个路径配置:
view plaincopy to clipboardprint?
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
location /publish {
set $push_channel_id $arg_id;
push_publisher;
push_store_messages on;
push_message_timeout 2h;
push_max_message_buffer_length 10;
}
location /activity {
push_subscriber;
set $push_channel_id $arg_id;
push_subscriber_concurrency broadcast;
default_type text/plain;
}
重启Nginx后,请求http://localhost/activity?id=10000的地址,可以看到浏览器处于请求堵塞阶段。
使用一段Perl脚本来Post数据到publish地址:
view plaincopy to clipboardprint?
use LWP::UserAgent;
use HTTP::Request::Common;
my $ua = new LWP::UserAgent;
my $response = $ua->request(
POST 'http://localhost//publish?id=10000',
Content_Type => 'text/html',
Content => 'Server Push'
);
my $content = $response->content;
print $content;
use LWP::UserAgent;
use HTTP::Request::Common;
my $ua = new LWP::UserAgent;
my $response = $ua->request(
POST 'http://localhost//publish?id=10000',
Content_Type => 'text/html',
Content => 'Server Push'
);
my $content = $response->content;
print $content;
运行后,可以看到浏览器已经输出了推送的内容。
如果要完成一个大的消息系统,还需要实现持续的推送机制,另外还需要实现Nginx和后台服务器的交互(或者考虑AgentZh推的Nginx编程,呵呵)。
出处:http://blog.csdn.net/hfahe/archive/2010/06/09/5659308.aspx
基于Nginx开发的第三方module,可以实现comnet的server.....功能很到位啊....
这个module是对php做comnet的一大补充啊,要是web程序是php的话,client发起连接,php只能自己进行阻塞并等待任务处理完返 回信息,要是遇到超过HTTP会话的内容,虽然client可以继续重练,但是php本身没法保证会话的一致,虽然可以用些奇技淫巧,但毕竟不靠谱啊。像 java这类可以在server端自己派生线程的语言,就会比PHP容易多了。
阅读全文
为何模拟浏览器的cookie,或者登陆,必须要再别的url抓取cookie,然后再模拟cookie发出:
curl:
把curl_setopt($ch,CURLOPT_HEADER,false)就行了。
需要展现cookie:
//打开cookie显示!!!
curl:
把curl_setopt($ch,CURLOPT_HEADER,false)就行了。
需要展现cookie:
curl_setopt ( $ch_curl, CURLOPT_HEADER, true);
//打开cookie显示!!!
function curl_post($url, $content)
{
//echo $url;
//echo $content;
$str_url = $url;
$str_post_data = $content;
$ch_curl = curl_init ();
curl_setopt ( $ch_curl, CURLOPT_TIMEOUT, 3 );
curl_setopt ( $ch_curl, CURLOPT_HEADER, true);
curl_setopt ( $ch_curl, CURLOPT_POST, 1 );
curl_setopt ( $ch_curl, CURLOPT_RETURNTRANSFER, true );
curl_setopt ( $ch_curl, CURLOPT_URL, $str_url );
curl_setopt ( $ch_curl, CURLOPT_POSTFIELDS, $str_post_data );
$str_return = curl_exec ( $ch_curl );
if ($str_return === false)
return false;
curl_close ( $ch_curl );
return $str_return;
}
{
//echo $url;
//echo $content;
$str_url = $url;
$str_post_data = $content;
$ch_curl = curl_init ();
curl_setopt ( $ch_curl, CURLOPT_TIMEOUT, 3 );
curl_setopt ( $ch_curl, CURLOPT_HEADER, true);
curl_setopt ( $ch_curl, CURLOPT_POST, 1 );
curl_setopt ( $ch_curl, CURLOPT_RETURNTRANSFER, true );
curl_setopt ( $ch_curl, CURLOPT_URL, $str_url );
curl_setopt ( $ch_curl, CURLOPT_POSTFIELDS, $str_post_data );
$str_return = curl_exec ( $ch_curl );
if ($str_return === false)
return false;
curl_close ( $ch_curl );
return $str_return;
}
MySQLdb是一个Python的Mysql数据库接口,Python通过它来实现对Mysql数据库的操作,可以在http://sourceforge.net/projects/mysql-python/这里找到它。
来源:http://blog.chinaunix.net/u2/61619/showart.php?id=2452650
#!/usr/bin/env python
# -*-coding:UTF-8-*- #这一句告诉python用UTF-8编码
#=========================================================================
#
# NAME: Python MySQL test
#
# AUTHOR: yuzebin : yuzebin#gmail.com
# DATE : 2004-12-28
#
# COMMENT: 这是一个python连接mysql的例子
#
#=========================================================================
"""
***** This is a MySQL test *****
select:
conn=Connection()
conn.select_db('test')
cur=conn.cursor()
cur.execute('select * from user')
cur.scroll(0)
row1=cur.fetchone()
row1[0]
row1[1]
row1[2]
insert:
cur.execute('insert into user (name,passwd) values(\'benyur\',\'12345\')')
cur.insert_id()
update:
cur.execute('update user set passwd=\'123456\' where name=\'benyur\'')
delete:
cur.execute('delete from user where id=2')
**********************************
"""
#以上““““““中间的部分就是本模块的__doc__的内容
from MySQLdb import * #导入MySQLdb模块
def conn(): #定义conn函数
conn=Connection() #打开连接
conn.select_db('test') #选择数据库
cur=conn.cursor() #取得游标
cur.execute('select * from user') #执行查询语句
cur.scroll(0) #滚动游标到头
row1=cur.fetchone() #取得一行,row1是一个列表
row1[0]
row1[1]
row1[2]
def usage(): #定义打印用法函数
print __doc__ #打印内部属性__doc__,即上面的““““““中间的部分
if __name__=='__main__': #如果是主程序运行(不是导入模块)
usage() #打印用法
# -*-coding:UTF-8-*- #这一句告诉python用UTF-8编码
#=========================================================================
#
# NAME: Python MySQL test
#
# AUTHOR: yuzebin : yuzebin#gmail.com
# DATE : 2004-12-28
#
# COMMENT: 这是一个python连接mysql的例子
#
#=========================================================================
"""
***** This is a MySQL test *****
select:
conn=Connection()
conn.select_db('test')
cur=conn.cursor()
cur.execute('select * from user')
cur.scroll(0)
row1=cur.fetchone()
row1[0]
row1[1]
row1[2]
insert:
cur.execute('insert into user (name,passwd) values(\'benyur\',\'12345\')')
cur.insert_id()
update:
cur.execute('update user set passwd=\'123456\' where name=\'benyur\'')
delete:
cur.execute('delete from user where id=2')
**********************************
"""
#以上““““““中间的部分就是本模块的__doc__的内容
from MySQLdb import * #导入MySQLdb模块
def conn(): #定义conn函数
conn=Connection() #打开连接
conn.select_db('test') #选择数据库
cur=conn.cursor() #取得游标
cur.execute('select * from user') #执行查询语句
cur.scroll(0) #滚动游标到头
row1=cur.fetchone() #取得一行,row1是一个列表
row1[0]
row1[1]
row1[2]
def usage(): #定义打印用法函数
print __doc__ #打印内部属性__doc__,即上面的““““““中间的部分
if __name__=='__main__': #如果是主程序运行(不是导入模块)
usage() #打印用法
来源:http://blog.chinaunix.net/u2/61619/showart.php?id=2452650
这是根据自己的笔记整理的,如有错误,欢迎指出来.
tcp协议本身是可靠的,并不等于应用程序用tcp发送数据就一定是可靠的.不管是否阻塞,send发送的大小,并不代表对端recv到多少的数据.
在阻塞模式下,send函数的过程是将应用程序请求发送的数据拷贝到发送缓存中发送并得到确认后再返回.但由于发送缓存的存在,表现为:如果发送缓存大小比请求发送的大小要大,那么send函数立即返回,同时向网络中发送数据;否则,send向网络发送缓存中不能容纳的那部分数据,并等待对端确认后再返回(接收端只要将数据收到接收缓存中,就会确认,并不一定要等待应用程序调用recv);
在非阻塞模式下,send函数的过程仅仅是将数据拷贝到协议栈的缓存区而已,如果缓存区可用空间不够,则尽能力的拷贝,返回成功拷贝的大小;如缓存区可用空间为0,则返回-1,同时设置errno为EAGAIN.
linux下可用sysctl -a | grep net.ipv4.tcp_wmem查看系统默认的发送缓存大小:
net.ipv4.tcp_wmem = 4096 16384 81920
这有三个值,第一个值是socket的发送缓存区分配的最少字节数,第二个值是默认值(该值会被net.core.wmem_default覆盖),缓存区在系统负载不重的情况下可以增长到这个值,第三个值是发送缓存区空间的最大字节数(该值会被net.core.wmem_max覆盖).
根据实际测试,如果手工更改了net.ipv4.tcp_wmem的值,则会按更改的值来运行,否则在默认情况下,协议栈通常是按net.core.wmem_default和net.core.wmem_max的值来分配内存的.
应用程序应该根据应用的特性在程序中更改发送缓存大小:
socklen_t sendbuflen = 0;
socklen_t len = sizeof(sendbuflen);
getsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, &len);
printf("default,sendbuf:%d\n", sendbuflen);
sendbuflen = 10240;
setsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, len);
getsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, &len);
printf("now,sendbuf:%d\n", sendbuflen);
需要注意的是,虽然将发送缓存设置成了10k,但实际上,协议栈会将其扩大1倍,设为20k.
-------------------实例分析----------------------
在实际应用中,如果发送端是非阻塞发送,由于网络的阻塞或者接收端处理过慢,通常出现的情况是,发送应用程序看起来发送了10k的数据,但是只发送了2k到对端缓存中,还有8k在本机缓存中(未发送或者未得到接收端的确认).那么此时,接收应用程序能够收到的数据为2k.假如接收应用程序调用recv函数获取了1k的数据在处理,在这个瞬间,发生了以下情况之一:
A. 发送应用程序认为send完了10k数据,关闭了socket:
发送主机作为tcp的主动关闭者,连接将处于FIN_WAIT1的半关闭状态(等待对方的ack),并且,发送缓存中的8k数据并不清除,依然会发送给对端.如果接收应用程序依然在recv,那么它会收到余下的8k数据(这个前题是,接收端会在发送端FIN_WAIT1状态超时前收到余下的8k数据.),然后得到一个对端socket被关闭的消息(recv返回0).这时,应该进行关闭.
B. 发送应用程序再次调用send发送8k的数据:
假如发送缓存的空间为20k,那么发送缓存可用空间为20-8=12k,大于请求发送的8k,所以send函数将数据做拷贝后,并立即返回8192;
假如发送缓存的空间为12k,那么此时发送缓存可用空间还有12-8=4k,send()会返回4096,应用程序发现返回的值小于请求发送的大小值后,可以认为缓存区已满,这时必须阻塞(或通过select等待下一次socket可写的信号),如果应用程序不理会,立即再次调用send,那么会得到-1的值,在linux下表现为errno=EAGAIN.
C. 接收应用程序在处理完1k数据后,关闭了socket:
接收主机作为主动关闭者,连接将处于FIN_WAIT1的半关闭状态(等待对方的ack).然后,发送应用程序会收到socket可读的信号(通常是select调用返回socket可读),但在读取时会发现recv函数返回0,这时应该调用close函数来关闭socket(发送给对方ack);
如果发送应用程序没有处理这个可读的信号,而是继续调用send,那么第一次会像往常一样继续填充缓存区,然后返回,但如果再次调用send,进程会收到SIGPIPE信号,该信号的默认响应动作是退出进程.
D. 交换机或路由器的网络断开:
接收应用程序在处理完已收到的1k数据后,会继续从缓存区读取余下的1k数据,然后就表现为无数据可读的现象,这种情况需要应用程序来处理超时.一般做法是设定一个select等待的最大时间,如果超出这个时间依然没有数据可读,则认为socket已不可用.
发送应用程序会不断的将余下的数据发送到网络上,但始终得不到确认,所以缓存区的可用空间持续为0,这种情况也需要应用程序来处理.
如果不由应用程序来处理这种情况超时的情况,也可以通过tcp协议本身来处理,具体可以查看sysctl项中的:
net.ipv4.tcp_keepalive_intvl
net.ipv4.tcp_keepalive_probes
net.ipv4.tcp_keepalive_time
所以,要想编写优秀的socket程序也是很不容易的.特别是在为应用做优化时,很多工作都非常的烦琐.
来源:http://blog.chinaunix.net/u2/76292/showart.php?id=2406631
tcp协议本身是可靠的,并不等于应用程序用tcp发送数据就一定是可靠的.不管是否阻塞,send发送的大小,并不代表对端recv到多少的数据.
在阻塞模式下,send函数的过程是将应用程序请求发送的数据拷贝到发送缓存中发送并得到确认后再返回.但由于发送缓存的存在,表现为:如果发送缓存大小比请求发送的大小要大,那么send函数立即返回,同时向网络中发送数据;否则,send向网络发送缓存中不能容纳的那部分数据,并等待对端确认后再返回(接收端只要将数据收到接收缓存中,就会确认,并不一定要等待应用程序调用recv);
在非阻塞模式下,send函数的过程仅仅是将数据拷贝到协议栈的缓存区而已,如果缓存区可用空间不够,则尽能力的拷贝,返回成功拷贝的大小;如缓存区可用空间为0,则返回-1,同时设置errno为EAGAIN.
linux下可用sysctl -a | grep net.ipv4.tcp_wmem查看系统默认的发送缓存大小:
net.ipv4.tcp_wmem = 4096 16384 81920
这有三个值,第一个值是socket的发送缓存区分配的最少字节数,第二个值是默认值(该值会被net.core.wmem_default覆盖),缓存区在系统负载不重的情况下可以增长到这个值,第三个值是发送缓存区空间的最大字节数(该值会被net.core.wmem_max覆盖).
根据实际测试,如果手工更改了net.ipv4.tcp_wmem的值,则会按更改的值来运行,否则在默认情况下,协议栈通常是按net.core.wmem_default和net.core.wmem_max的值来分配内存的.
应用程序应该根据应用的特性在程序中更改发送缓存大小:
socklen_t sendbuflen = 0;
socklen_t len = sizeof(sendbuflen);
getsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, &len);
printf("default,sendbuf:%d\n", sendbuflen);
sendbuflen = 10240;
setsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, len);
getsockopt(clientSocket, SOL_SOCKET, SO_SNDBUF, (void*)&sendbuflen, &len);
printf("now,sendbuf:%d\n", sendbuflen);
需要注意的是,虽然将发送缓存设置成了10k,但实际上,协议栈会将其扩大1倍,设为20k.
-------------------实例分析----------------------
在实际应用中,如果发送端是非阻塞发送,由于网络的阻塞或者接收端处理过慢,通常出现的情况是,发送应用程序看起来发送了10k的数据,但是只发送了2k到对端缓存中,还有8k在本机缓存中(未发送或者未得到接收端的确认).那么此时,接收应用程序能够收到的数据为2k.假如接收应用程序调用recv函数获取了1k的数据在处理,在这个瞬间,发生了以下情况之一:
A. 发送应用程序认为send完了10k数据,关闭了socket:
发送主机作为tcp的主动关闭者,连接将处于FIN_WAIT1的半关闭状态(等待对方的ack),并且,发送缓存中的8k数据并不清除,依然会发送给对端.如果接收应用程序依然在recv,那么它会收到余下的8k数据(这个前题是,接收端会在发送端FIN_WAIT1状态超时前收到余下的8k数据.),然后得到一个对端socket被关闭的消息(recv返回0).这时,应该进行关闭.
B. 发送应用程序再次调用send发送8k的数据:
假如发送缓存的空间为20k,那么发送缓存可用空间为20-8=12k,大于请求发送的8k,所以send函数将数据做拷贝后,并立即返回8192;
假如发送缓存的空间为12k,那么此时发送缓存可用空间还有12-8=4k,send()会返回4096,应用程序发现返回的值小于请求发送的大小值后,可以认为缓存区已满,这时必须阻塞(或通过select等待下一次socket可写的信号),如果应用程序不理会,立即再次调用send,那么会得到-1的值,在linux下表现为errno=EAGAIN.
C. 接收应用程序在处理完1k数据后,关闭了socket:
接收主机作为主动关闭者,连接将处于FIN_WAIT1的半关闭状态(等待对方的ack).然后,发送应用程序会收到socket可读的信号(通常是select调用返回socket可读),但在读取时会发现recv函数返回0,这时应该调用close函数来关闭socket(发送给对方ack);
如果发送应用程序没有处理这个可读的信号,而是继续调用send,那么第一次会像往常一样继续填充缓存区,然后返回,但如果再次调用send,进程会收到SIGPIPE信号,该信号的默认响应动作是退出进程.
D. 交换机或路由器的网络断开:
接收应用程序在处理完已收到的1k数据后,会继续从缓存区读取余下的1k数据,然后就表现为无数据可读的现象,这种情况需要应用程序来处理超时.一般做法是设定一个select等待的最大时间,如果超出这个时间依然没有数据可读,则认为socket已不可用.
发送应用程序会不断的将余下的数据发送到网络上,但始终得不到确认,所以缓存区的可用空间持续为0,这种情况也需要应用程序来处理.
如果不由应用程序来处理这种情况超时的情况,也可以通过tcp协议本身来处理,具体可以查看sysctl项中的:
net.ipv4.tcp_keepalive_intvl
net.ipv4.tcp_keepalive_probes
net.ipv4.tcp_keepalive_time
所以,要想编写优秀的socket程序也是很不容易的.特别是在为应用做优化时,很多工作都非常的烦琐.
来源:http://blog.chinaunix.net/u2/76292/showart.php?id=2406631
101007 22:30:31 [ERROR] Can't open the mysql.plugin table. Please run the mysql_upgrade script to create it.
101007 22:30:31 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
101007 22:30:31 mysqld ended
再源码下面执行,如下:
linux-Jack-nb4:~/webserver/mysql-5.1.12-beta # ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/var
Installing all prepared tables
Fill help tables
To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
/usr/local/mysql/bin/mysqladmin -u root -h linux-Jack-nb4 password 'new-password'
See the manual for more instructions.
NOTE: If you are upgrading from a MySQL <= 3.22.10 you should run
the /usr/local/mysql/bin/mysql_fix_privilege_tables. Otherwise you will not be
able to use the new GRANT command!
You can start the MySQL daemon with:
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &
Please report any problems with the /usr/local/mysql/bin/mysqlbug script!
The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at http://shop.mysql.com
Mysql运行Ok了:
linux-Jack-nb4:~/webserver/mysql-5.1.12-beta # ps aux|grep mysql
root 5515 0.0 0.1 2804 1312 pts/0 S 22:40 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe
mysql 5566 0.3 1.6 81984 13132 pts/0 Sl 22:40 0:01 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --pid-file=/usr/local/mysql/var/linux-Jack-nb4.pid --log-error=/usr/local/mysql/var/linux-Jack-nb4.err --socket=/tmp/mysql.sock --port=3306
前面指定了DB位置,后面就会对于那个--datadir=位置所在:
/usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql-/ --user=mysql --pid-file=/data/mysql-//linux-jack-xiang.pid --log-error=/data/mysql-//linux-jack-xiang.err --socket=/tmp/mysql.sock --port=3306
root 5606 0.0 0.0 1900 652 pts/0 S+ 22:47 0:00 grep mysql
root 5515 0.0 0.1 2804 1312 pts/0 S 22:40 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe
mysql 5566 0.3 1.6 81984 13132 pts/0 Sl 22:40 0:01 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var --user=mysql --pid-file=/usr/local/mysql/var/linux-Jack-nb4.pid --log-error=/usr/local/mysql/var/linux-Jack-nb4.err --socket=/tmp/mysql.sock --port=3306
前面指定了DB位置,后面就会对于那个--datadir=位置所在:
/usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql-/ --user=mysql --pid-file=/data/mysql-//linux-jack-xiang.pid --log-error=/data/mysql-//linux-jack-xiang.err --socket=/tmp/mysql.sock --port=3306
root 5606 0.0 0.0 1900 652 pts/0 S+ 22:47 0:00 grep mysql
在MYSQL启动老失败即:Starting MySQL.Manager of pid-file quit without updating file.[FAILED]
查看错误日志显示:mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
/usr/local/mysql/bin/mysqld: Table 'mysql.plugin' doesn't exist
Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
InnoDB: The first specified data file ./ibdata1 did not exist:
编译命令
gcc -g connect_db.c -L/usr/lib/mysql -lmysqlclient -lz
注意:
如果 /tmp/ccTGmMS21.o: In function 'main':
/tmp/ccTGmMS21.o(.text+0x11): undefined reference to 'mysql_init'
那么参数增加-L参数
如果 /usr/lib/mysql/libmysqlclient.a(my_compress.o): In function 'my_uncompress':
my_compress.o(.text+0xaa): undefined reference to `uncompress'
那么增加-lz参数
如下问题,也是加上-lz:
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_uncompress':
my_compress.c:(.text+0x60): undefined reference to `uncompress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_compress_alloc':
my_compress.c:(.text+0x102): undefined reference to `compress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_compress':
my_compress.c:(.text+0x1ae): undefined reference to `compress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `unpackfrm':
my_compress.c:(.text+0x2bc): undefined reference to `uncompress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `packfrm':
my_compress.c:(.text+0x3bb): undefined reference to `compress'
collect2: ld returned 1 exit status
如下:
gcc -g connect_db.c -L/usr/lib/mysql -lmysqlclient -lz
注意:
如果 /tmp/ccTGmMS21.o: In function 'main':
/tmp/ccTGmMS21.o(.text+0x11): undefined reference to 'mysql_init'
那么参数增加-L参数
如果 /usr/lib/mysql/libmysqlclient.a(my_compress.o): In function 'my_uncompress':
my_compress.o(.text+0xaa): undefined reference to `uncompress'
那么增加-lz参数
如下问题,也是加上-lz:
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_uncompress':
my_compress.c:(.text+0x60): undefined reference to `uncompress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_compress_alloc':
my_compress.c:(.text+0x102): undefined reference to `compress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `my_compress':
my_compress.c:(.text+0x1ae): undefined reference to `compress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `unpackfrm':
my_compress.c:(.text+0x2bc): undefined reference to `uncompress'
/usr/local/mysql/lib/mysql//libmysqlclient.a(my_compress.o): In function `packfrm':
my_compress.c:(.text+0x3bb): undefined reference to `compress'
collect2: ld returned 1 exit status
如下:
g++ -o out mysql_fetch_rows.cpp str.cpp str.h -I/usr/local/mysql/include/mysql/ -L/usr/local/mysql/lib/mysql/ -lmysqlclient -lz
或许我写这些,有很多朋友会问我是在创业的吗?我现在没有创业。或许又会问,那你怎么可以说呢?其实,这些感想、总结是自己之前的一些经历加上朋友的情况,还有看的一些资料,才得到的。所以,看后还希望各位看官多多给意见,拍砖也行呀。
打从政府提出了“创业带动就业”这个政策口号,我的很多朋友就很多人怀揣创业的梦想,其中很多人最后还是在企业或单位里开始“打工”生涯,另一部分则开始自己创业,或者是工作一段之后开始创业。我嘛,属于第三种,不过现在又开始“打工”了。之前有那么一段不完美的“创业”经历。大致情况就从这些开始说吧。对于“创业带动就业”这个我或许有着不同的理解。一个人或者几个人开始创业了,那么在这过程中,大部分行业都需要招收更多的“员工”,以一个例子来说明,3个人创业,他要对外招收10个“员工”,那么他就带动了10个就业了。所以嘛,我就是这么理解的。所以,不得不佩服政府考虑之周全。那么我的总结就是在中间总结的。
一个小的公司或者小的工作室,他在创业之初什么是他最首要最根本的问题呢?活下来!对,在中国这15亿的人口大国中,一个小公司要存活下来,并且活得好,并不是一件容易的事!活下来就必须让自己有收入,这些收入主要的来源就来自于订单,其他的一些广告等等一些营销手段在创立之初很难建立起来。所以,在这个阶段要想更多的订单,就必须好的营销“高手”去推销公司,去让更多的人认可我们的公司,这样才能有立足之地。人脉,在这个阶段成了最重要的手段,创始人的个人魅力也成了维持公司生存手段之一。如此看来,创业之前就要大量奠定自己的人脉基础。
马云说过一个公司最重要的四个环节:营销、财务、技术、管理。那么创业之初,我们根本不可能去做那么完善的体制,那是很困难的,也是不适合的,当然也有不一样的情况。比如,有一个公司的部门独立成为一个公司时,或有大公司投资,成立起的公司,这个另当别论。在我看来,创业之初四个环节中,可以把技术和管理,甚至是会计统一起来做。为什么呢,3个人或者几个人的公司,管理起来不难,而且大家来创业是为了自己的梦想,管理体制不健全没什么大问题,问题是有了不拼命干活。而财务呢,我们在这阶段,能有多少资金流动呢,无非营业额、工资、水电等等,再就是一些广告收入的。技术就不用说了,如果是主要靠技术生存的公司,他自然有一个技术的牛人,而这很可能就是创始人或者发起者。所以,管理、财务、技术者三者分不清楚,对这个时候没有什么大的影响吧。但是关键,营销不能和这些搅在一起,必须独立,因为营销很可能成为使公司生存下去最主要的出入。
还有我觉得是最难的,就是和你一起创业的人,该是怎么样的呢?我的经验失败就是,找的合作伙伴,不坚定,在大家一起干的时候,都是一边“打工”,业余时间创业。但是很多人不坚定,中途放弃了,结果导致人力紧缺。。。。。。所以我觉得马云说的有道理,要找没成功过渴望成功,信任你的,愿意跟着你的人一起创业。太正确了,相互之间的信任,相互之间的了解,可能让你在工作中减少很多不愉快。渴望成功的人,也会和你一样拼命的奋斗,这样最好的了。愿意跟着你的人,多少都有些信仰你,这为你的稳定发展提供很重要的条件。有的朋友,自己创业的时候,完全不喜欢招人,总是招些临时的,这样不好,没有固定的人力,即使你节约了财务上,但做大做稳很难的。所以创业之初要懂得舍得,懂得信任等。还有,最重要的是,你要专注,不能因为做着做着,觉得累了,就放弃了;也不能够越做越亏,又放弃了。坚定的信念,独特的眼光,很重要。
讲了这么多总结来就下面几点:
1、要培养人脉关系;
2、要找合适的人;
3、要重视销售;
4、要专注;
5、要自信。
或许还有其他的,希望大家给予更多的支持。
详细出处参考:http://bbs.firnow.com/dview74t167334.html
打从政府提出了“创业带动就业”这个政策口号,我的很多朋友就很多人怀揣创业的梦想,其中很多人最后还是在企业或单位里开始“打工”生涯,另一部分则开始自己创业,或者是工作一段之后开始创业。我嘛,属于第三种,不过现在又开始“打工”了。之前有那么一段不完美的“创业”经历。大致情况就从这些开始说吧。对于“创业带动就业”这个我或许有着不同的理解。一个人或者几个人开始创业了,那么在这过程中,大部分行业都需要招收更多的“员工”,以一个例子来说明,3个人创业,他要对外招收10个“员工”,那么他就带动了10个就业了。所以嘛,我就是这么理解的。所以,不得不佩服政府考虑之周全。那么我的总结就是在中间总结的。
一个小的公司或者小的工作室,他在创业之初什么是他最首要最根本的问题呢?活下来!对,在中国这15亿的人口大国中,一个小公司要存活下来,并且活得好,并不是一件容易的事!活下来就必须让自己有收入,这些收入主要的来源就来自于订单,其他的一些广告等等一些营销手段在创立之初很难建立起来。所以,在这个阶段要想更多的订单,就必须好的营销“高手”去推销公司,去让更多的人认可我们的公司,这样才能有立足之地。人脉,在这个阶段成了最重要的手段,创始人的个人魅力也成了维持公司生存手段之一。如此看来,创业之前就要大量奠定自己的人脉基础。
马云说过一个公司最重要的四个环节:营销、财务、技术、管理。那么创业之初,我们根本不可能去做那么完善的体制,那是很困难的,也是不适合的,当然也有不一样的情况。比如,有一个公司的部门独立成为一个公司时,或有大公司投资,成立起的公司,这个另当别论。在我看来,创业之初四个环节中,可以把技术和管理,甚至是会计统一起来做。为什么呢,3个人或者几个人的公司,管理起来不难,而且大家来创业是为了自己的梦想,管理体制不健全没什么大问题,问题是有了不拼命干活。而财务呢,我们在这阶段,能有多少资金流动呢,无非营业额、工资、水电等等,再就是一些广告收入的。技术就不用说了,如果是主要靠技术生存的公司,他自然有一个技术的牛人,而这很可能就是创始人或者发起者。所以,管理、财务、技术者三者分不清楚,对这个时候没有什么大的影响吧。但是关键,营销不能和这些搅在一起,必须独立,因为营销很可能成为使公司生存下去最主要的出入。
还有我觉得是最难的,就是和你一起创业的人,该是怎么样的呢?我的经验失败就是,找的合作伙伴,不坚定,在大家一起干的时候,都是一边“打工”,业余时间创业。但是很多人不坚定,中途放弃了,结果导致人力紧缺。。。。。。所以我觉得马云说的有道理,要找没成功过渴望成功,信任你的,愿意跟着你的人一起创业。太正确了,相互之间的信任,相互之间的了解,可能让你在工作中减少很多不愉快。渴望成功的人,也会和你一样拼命的奋斗,这样最好的了。愿意跟着你的人,多少都有些信仰你,这为你的稳定发展提供很重要的条件。有的朋友,自己创业的时候,完全不喜欢招人,总是招些临时的,这样不好,没有固定的人力,即使你节约了财务上,但做大做稳很难的。所以创业之初要懂得舍得,懂得信任等。还有,最重要的是,你要专注,不能因为做着做着,觉得累了,就放弃了;也不能够越做越亏,又放弃了。坚定的信念,独特的眼光,很重要。
讲了这么多总结来就下面几点:
1、要培养人脉关系;
2、要找合适的人;
3、要重视销售;
4、要专注;
5、要自信。
或许还有其他的,希望大家给予更多的支持。
详细出处参考:http://bbs.firnow.com/dview74t167334.html





