白素贞的身世之迷大家都知道,俺们的小白是千年蛇妖来着,但是“人是人他妈生的,妖是妖他妈生的”,按此道理,咱们的小白也应该有自己的爹娘不是?可整部电视剧从头到尾对小白的具体身世只字未提,只是模糊的交代了个在峨眉——青城山一带修行。那么...
那么小白的爹娘到底是谁呢?带着这个疑问,我们首先来观察一下人、妖、仙三界之于小白的态度。阅读全文
那么小白的爹娘到底是谁呢?带着这个疑问,我们首先来观察一下人、妖、仙三界之于小白的态度。阅读全文
下载,安装
下载sphinx-0.9.8.1.tar.gz(在撰写本文时,0.9.8.1是最新版)
安装、启动、使用Sphinx:
./configure --prefix=/usr/local/sphinx
make;make install
cp sphinx-min.conf.dist sphinx.conf
cd /usr/local/sphinx/etc/
配置sphinx的索引任务:
配置sphinx的数据源,Mysql信息配置:
vi sphinx.conf
source src1
{
type = mysql
sql_host = localhost
sql_user = root
sql_pass =
sql_db = test
sql_port = 3306 # optional, default is 3306
sql_query = \
SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
FROM documents
sql_attr_uint = group_id
sql_attr_timestamp = date_added
sql_query_info = SELECT * FROM documents WHERE id=$id
}
// ./search --config /usr/local/sphinx/etc/sphinx.conf test
index test1
{
source = src1
path = /usr/local/sphinx/var/data/test1
docinfo = extern
charset_type = sbcs
}
bogon:/usr/local/sphinx/bin # ./indexer --config /usr/local/sphinx/etc/sphinx.conf test1
./searchd --config /usr/local/sphinx/etc/sphinx.conf &
bogon:/usr/local/sphinx/bin # ./search --config /usr/local/sphinx/etc/sphinx.conf test
Sphinx 0.9.9-release (r2117)
Copyright (c) 2001-2009, Andrew Aksyonoff
using config file '/usr/local/sphinx/etc/sphinx.conf'...
index 'test1': query 'test ': returned 3 matches of 3 total in 0.000 sec
displaying matches:
1. document=1, weight=2, group_id=1, date_added=Sun Dec 12 16:28:37 2010
id=1
group_id=1
group_id2=5
date_added=2010-12-12 16:28:37
title=test one
content=this is my test document number one. also checking search within phrases.
2. document=2, weight=2, group_id=1, date_added=Sun Dec 12 16:28:37 2010
id=2
group_id=1
group_id2=6
date_added=2010-12-12 16:28:37
title=test two
content=this is my test document number two
3. document=4, weight=1, group_id=2, date_added=Sun Dec 12 16:28:37 2010
id=4
group_id=2
group_id2=8
date_added=2010-12-12 16:28:37
title=doc number four
content=this is to test groups
words:
1. 'test': 3 documents, 5 hits
权力是个好东西。
在一个官本位的国度,在一个人多嘴杂喜欢站队对掐的社会,这句话基本不会引发任何争论。拥有者享受之,缺失者羡慕之,亘古未变。
持续升温的公务员热与各地频发的招考黑幕正越来越吸引公众眼球,令人不得不对“权力世袭”产生越来越强烈的过敏反应。
仇富的同时,仇官的心态再次在公众中占据主流地位。遗憾的是,这种心态及情绪的蔓延,并未引起权力部门足够的警醒。事实上,对于他们来讲,这根本不是问题。公权力的强势,信息的不对称、不透明,监督的缺位,像一个巨大的安全套,庇佑着一个个嚣张与贪婪的灵魂。偶尔破了,只是意外中的意外。
权力所占有的更多的社会资源,建立在血缘关系基础上的核心价值观,在一定程度上决定了,官员的后代在进入仕途时,拥有普通百姓子弟无可比拟的优势。这种优势,正被无限放大,使得社会各个阶层固化异常严重。平民子弟并非没有机会进入,只是进入之后往上走的时候,往往会发现头上的天花板连个小洞都难以找到。
毫无疑问,在这种情况下,公众对官二代进入公务员队伍有一种天然的排斥和质疑,而干群关系的恶化,使得这种反应越来越强。
2011年国家公务员考试实际参考人数近百万,最热门岗位考录比达到创纪录的4961∶1,考生中众多“官二代”的存在,再次挑逗起了公众脆弱而敏感的神经。
客观讲,铺天盖地的质疑,对于部分“官二代”并不太公平,因为他们同样符合报考条件,自然有参与竞争的资格。只是问题的关键不在这儿,而在于其参与竞争时,主动或被动享受到的父辈影响力及其关系网的照顾这一天然优势,极大淡化其自身知识与才能在公众心中的权重,这就是权力世袭论的由来。
从各种潜规则到量身定做,公务员招考作弊手段的不断升级,公权力对社会资源的疯狂掠夺,平民子弟上升通道的逼仄,必将进一步加剧原本就趋于严重的社会危机。“官二代”当然也应拥有职业发展的空间,但这不应以挤压或阻断他人的空间、践踏社会公平与公正为前提。
是时候警惕与反省了。一套合理完善、公正透明的官员选拔制度,强化对公权力的限制与监督,斩断其在市场进行寻租及其他各种交易的冲动与便利,打破公务员队伍的强势地位,才能根治权力世袭。
一个和谐的社会,一定是一个公正、自由、正义、安全的社会;一个具有强大生命力的民族,一定是一个敬畏法律、崇尚正义、追求平等自由、理性思考自身责任并善于根本上寻求解决之道的民族。
惟有继续加强民主与法制建设,别无他途。
来源:http://blog.ifeng.com/article/9082284.html
在一个官本位的国度,在一个人多嘴杂喜欢站队对掐的社会,这句话基本不会引发任何争论。拥有者享受之,缺失者羡慕之,亘古未变。
持续升温的公务员热与各地频发的招考黑幕正越来越吸引公众眼球,令人不得不对“权力世袭”产生越来越强烈的过敏反应。
仇富的同时,仇官的心态再次在公众中占据主流地位。遗憾的是,这种心态及情绪的蔓延,并未引起权力部门足够的警醒。事实上,对于他们来讲,这根本不是问题。公权力的强势,信息的不对称、不透明,监督的缺位,像一个巨大的安全套,庇佑着一个个嚣张与贪婪的灵魂。偶尔破了,只是意外中的意外。
权力所占有的更多的社会资源,建立在血缘关系基础上的核心价值观,在一定程度上决定了,官员的后代在进入仕途时,拥有普通百姓子弟无可比拟的优势。这种优势,正被无限放大,使得社会各个阶层固化异常严重。平民子弟并非没有机会进入,只是进入之后往上走的时候,往往会发现头上的天花板连个小洞都难以找到。
毫无疑问,在这种情况下,公众对官二代进入公务员队伍有一种天然的排斥和质疑,而干群关系的恶化,使得这种反应越来越强。
2011年国家公务员考试实际参考人数近百万,最热门岗位考录比达到创纪录的4961∶1,考生中众多“官二代”的存在,再次挑逗起了公众脆弱而敏感的神经。
客观讲,铺天盖地的质疑,对于部分“官二代”并不太公平,因为他们同样符合报考条件,自然有参与竞争的资格。只是问题的关键不在这儿,而在于其参与竞争时,主动或被动享受到的父辈影响力及其关系网的照顾这一天然优势,极大淡化其自身知识与才能在公众心中的权重,这就是权力世袭论的由来。
从各种潜规则到量身定做,公务员招考作弊手段的不断升级,公权力对社会资源的疯狂掠夺,平民子弟上升通道的逼仄,必将进一步加剧原本就趋于严重的社会危机。“官二代”当然也应拥有职业发展的空间,但这不应以挤压或阻断他人的空间、践踏社会公平与公正为前提。
是时候警惕与反省了。一套合理完善、公正透明的官员选拔制度,强化对公权力的限制与监督,斩断其在市场进行寻租及其他各种交易的冲动与便利,打破公务员队伍的强势地位,才能根治权力世袭。
一个和谐的社会,一定是一个公正、自由、正义、安全的社会;一个具有强大生命力的民族,一定是一个敬畏法律、崇尚正义、追求平等自由、理性思考自身责任并善于根本上寻求解决之道的民族。
惟有继续加强民主与法制建设,别无他途。
来源:http://blog.ifeng.com/article/9082284.html
http://ishare.iask.sina.com.cn/f/10868512.html?retcode=0
请大家帮我解决一下。这个问题,谢谢您们了。
报的错误信息。
Unable to find the socket transport "http" - did you forget to enable it when you configured PHP? (24)
我的QQ1347901184
报的错误信息。
Unable to find the socket transport "http" - did you forget to enable it when you configured PHP? (24)
我的QQ1347901184
下面是报的错误信息。
Unable to find the socket transport "http" - did you forget to enable it when you configured PHP? (24)
很着急,不知道怎么解决。
给我做网站的公司也不管,希望各位高手能帮助我解决,谢谢您们了。
我的qq是1347901184
Unable to find the socket transport "http" - did you forget to enable it when you configured PHP? (24)
很着急,不知道怎么解决。
给我做网站的公司也不管,希望各位高手能帮助我解决,谢谢您们了。
我的qq是1347901184
从360与QQ之争看互联网资讯获取类网站的盈利模式和互联网用户群的需求演变阅读全文
MySQL性能优化的最佳20+条经验
MySQL: InnoDB 还是 MyISAM?
MyISAM 是MySQL中默认的存储引擎,一般来说不是有太多人关心这个东西。决定使用什么样的存储引擎是一个很tricky的事情,但是还是值我们去研究一下,这里的文章只考虑 MyISAM 和InnoDB这两个,因为这两个是最常见的。
下面先让我们回答一些问题:
你的数据库有外键吗?
你需要事务支持吗?
你需要全文索引吗?
你经常使用什么样的查询模式?
你的数据有多大?
思考上面这些问题可以让你找到合适的方向,但那并不是绝对的。如果你需要事务处理或是外键,那么InnoDB 可能是比较好的方式。如果你需要全文索引,那么通常来说 MyISAM是好的选择,因为这是系统内建的,然而,我们其实并不会经常地去测试两百万行记录。所以,就算是慢一点,我们可以通过使用Sphinx从InnoDB中获得全文索引。
数据的大小,是一个影响你选择什么样存储引擎的重要因素,大尺寸的数据集趋向于选择InnoDB方式,因为其支持事务处理和故障恢复。数据库的在小决定了故障恢复的时间长短,InnoDB可以利用事务日志进行数据恢复,这会比较快。而MyISAM可能会需要几个小时甚至几天来干这些事,InnoDB只需要几分钟。
您操作数据库表的习惯可能也会是一个对性能影响很大的因素。比如: COUNT() 在 MyISAM 表中会非常快,而在InnoDB 表下可能会很痛苦。而主键查询则在InnoDB下会相当相当的快,但需要小心的是如果我们的主键太长了也会导致性能问题。大批的inserts 语句在MyISAM下会快一些,但是updates 在InnoDB 下会更快一些——尤其在并发量大的时候。
所以,到底你检使用哪一个呢?根据经验来看,如果是一些小型的应用或项目,那么MyISAM 也许会更适合。当然,在大型的环境下使用MyISAM 也会有很大成功的时候,但却不总是这样的。如果你正在计划使用一个超大数据量的项目,而且需要事务处理或外键支持,那么你真的应该直接使用InnoDB方式。但需要记住InnoDB 的表需要更多的内存和存储,转换100GB 的MyISAM 表到InnoDB 表可能会让你有非常坏的体验。
来源:http://coolshell.cn/articles/652.html
http://coolshell.cn/articles/1846.html
MySQL: InnoDB 还是 MyISAM?
MyISAM 是MySQL中默认的存储引擎,一般来说不是有太多人关心这个东西。决定使用什么样的存储引擎是一个很tricky的事情,但是还是值我们去研究一下,这里的文章只考虑 MyISAM 和InnoDB这两个,因为这两个是最常见的。
下面先让我们回答一些问题:
你的数据库有外键吗?
你需要事务支持吗?
你需要全文索引吗?
你经常使用什么样的查询模式?
你的数据有多大?
思考上面这些问题可以让你找到合适的方向,但那并不是绝对的。如果你需要事务处理或是外键,那么InnoDB 可能是比较好的方式。如果你需要全文索引,那么通常来说 MyISAM是好的选择,因为这是系统内建的,然而,我们其实并不会经常地去测试两百万行记录。所以,就算是慢一点,我们可以通过使用Sphinx从InnoDB中获得全文索引。
数据的大小,是一个影响你选择什么样存储引擎的重要因素,大尺寸的数据集趋向于选择InnoDB方式,因为其支持事务处理和故障恢复。数据库的在小决定了故障恢复的时间长短,InnoDB可以利用事务日志进行数据恢复,这会比较快。而MyISAM可能会需要几个小时甚至几天来干这些事,InnoDB只需要几分钟。
您操作数据库表的习惯可能也会是一个对性能影响很大的因素。比如: COUNT() 在 MyISAM 表中会非常快,而在InnoDB 表下可能会很痛苦。而主键查询则在InnoDB下会相当相当的快,但需要小心的是如果我们的主键太长了也会导致性能问题。大批的inserts 语句在MyISAM下会快一些,但是updates 在InnoDB 下会更快一些——尤其在并发量大的时候。
所以,到底你检使用哪一个呢?根据经验来看,如果是一些小型的应用或项目,那么MyISAM 也许会更适合。当然,在大型的环境下使用MyISAM 也会有很大成功的时候,但却不总是这样的。如果你正在计划使用一个超大数据量的项目,而且需要事务处理或外键支持,那么你真的应该直接使用InnoDB方式。但需要记住InnoDB 的表需要更多的内存和存储,转换100GB 的MyISAM 表到InnoDB 表可能会让你有非常坏的体验。
来源:http://coolshell.cn/articles/652.html
mysql的where和order by 在一起时,order by 后的索引不能命中。阅读全文
第一步:修改你家目录下的.bashrc或者.bash_profile,忘了是在哪个文件里了,找到相应的PS1变量,修改保存退出。这样以后每次开机就好了。
第二步:
看看/etc/passwd
我发现我的:/etc/passwd 被人给干掉了,唉,还好有备份:看看/etc/passwd.old给恢复了。。。
第二步:
看看/etc/passwd
我发现我的:/etc/passwd 被人给干掉了,唉,还好有备份:看看/etc/passwd.old给恢复了。。。
想生成:
PHP如下:
也可以这样:
mkdir 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
PHP如下:
<?php
for($i=0;$i<100;$i++)$i<10?$ar[]="0$i":$ar[]=$i;
echo "mkdir ";
for($i=0;$i<100;$i++) echo $ar[$i]." ";
?>
for($i=0;$i<100;$i++)$i<10?$ar[]="0$i":$ar[]=$i;
echo "mkdir ";
for($i=0;$i<100;$i++) echo $ar[$i]." ";
?>
也可以这样:
<?php
for($i=0;$i<100;$i++)$i<10?$ar[]="0$i":$ar[]=$i;
for($i=0;$i<100;$i++) echo "mkdir ".$ar[$i].";\n";
?>
for($i=0;$i<100;$i++)$i<10?$ar[]="0$i":$ar[]=$i;
for($i=0;$i<100;$i++) echo "mkdir ".$ar[$i].";\n";
?>
<?php
print_r(preg_replace("/\b(\d)\b/", "0$1", join(" ", array_keys(array_pad(array(), 100, 0)))));
?>
print_r(preg_replace("/\b(\d)\b/", "0$1", join(" ", array_keys(array_pad(array(), 100, 0)))));
?>
<?php
//print_r(preg_replace("/\b(\d)\b/", "0$1", join(" ", array_keys(array_pad(array(), 100, 0)))));
print_r(join(",", array_keys(array_pad(array(), 100, 0))));
?>
//print_r(preg_replace("/\b(\d)\b/", "0$1", join(" ", array_keys(array_pad(array(), 100, 0)))));
print_r(join(",", array_keys(array_pad(array(), 100, 0))));
?>
设置Crontab,让邮件服务器每天1点和网络中的时间服务器自动对时:
crontab -e
0 1 * * * /usr/bin/rdate -s time-b.timefreq.bldrdoc.gov
crontab -e
0 1 * * * /usr/bin/rdate -s time-b.timefreq.bldrdoc.gov
Lighttpd、Nginx 、Apache 隐藏响应头信息的Server信息,apache和php的版本信息
web服务器的版本信息阅读全文
web服务器的版本信息阅读全文
我经常跟我的一个朋友一起吃午饭、闲聊。通常我会东一句西一句,说说音乐,说说正在开发的一些变态项目。 他会告诉我一些他工作上的事或者他的旅行计划,他出售了一个公司,可以悠闲好一阵了。 有一回吃完饭后,他对我说:“跟程序员聊天真是很轻松,不用谈论风险投资和协议报表之类的东西。”
风险投资和协议报表?废话,明天我要去处理一个x0xb0x,而今晚我正在修改一个新的和MulletDB集成的很酷的web服务器。 而这些人奇怪我为什么不谈谈风险投资。悲哀呀悲哀。
还是让我跟你讲讲这个很酷的新型web Server吧。 我研究出来如何将ZeroMQ事件投票系统和libtask协同例程库合并到一起,这样你可以在一个线程里使用 libtask来处理无数的TCP/UDP和ZeroMQ套接字通讯。 然后我就使用这个很酷的程序来开发了一个使用我的Mongrel HTTP解析器的web服务器,我修改了这个解析器,以让它使这个server能在同一个端口同时处理HTTP请求和XMLSockets服务。 下一步我将实现让这个server把HTTP和XMLSocket JSON信息转发到任意一个ZeroMQ后端。 这个软件让我很激动,我申请了utu.im域名来宣传它,希望能申请成功。
听起来很不错吧?完全不是这样。我可以编出像这样的程序,但没有人会因为我是个著名的程序员而注意到这些,世上根本没有著名程序员。就当我 不存在。我只是个传说。
我在公司工作,像其他人一样,也知道那些获得风险投资的创业公司创始人的情况。人们清楚他们是什么党派的,如何起步的,如何获得投资的,获 得了多少投资,资本总额是多少,他们是如何失败的,如何成为幸运儿的,他们卖了多少产品,他们为什么不愿卖掉公司,他们的下一个iPad app将会是什么样的,他们是同性恋还是异性恋,他们的女友是什么样的,他们的男友是如何甩掉她们的。
可人们对开发出这个他们自己正在使用的web框架的人却一无所知。他们从来没想过要见见这个家伙。人们从来不关心这个家伙是如何设计这个软 件的。人们从来不介意当软件开发出来了,这个家伙也就可以消失了。 研究这个家伙的生活是毫无意义的,因为他的全部生活都在软件里,人们愿意让他就这样静静的生活。
还有更出格的,人们甚至要求我们开发软件时不要使用BSD使用协议(或其他许可协议),他们不想在引用我们的程序时署上 这个软件是我们开发的。 还有些程序员根本不想在使用了我们的代码的应用程序的感谢名单里出现我们的名称。 对于人们来说你就是一个小程序。你就是一个螺丝钉,一个普通的螺丝钉。一幅画可以是著名的,螺丝钉不能。没有人愿意看见你,或把你挂在墙上。人们通常是把 你丢的沾满油污的工具箱里,直到有一天他们的橱柜松动时才会想起你。
让我们来做个实验。说出一个你每天都会用到的软件。也许这个软件是Rail的或Python的或其它语言开发的。现在,不要偷看,说出这个 软件的开发团队的四个主要成员的名称。我做不到,对任何一个我用过的软件都做不到。 那好吧,就当你能做到。你知道很多关于这个软件的开发者的资料,那你可否可以诚实的告诉我,你真的像了解这个软件一样了解给你开发这个软件的人吗。 扪心自问,当你使用这些软件时你对制作这些软件的幕后人物又知道多少?
所谓著名的程序员事实上并不是因为他的编程技术,而是因为他创建了什么公司或非营利组织。 他们的代码可不是像他们本人那样杰出,他们的杰出都是由非程序方面的荣誉构成的,这样才能让人们很容易的理解。
这就是我为什么坚信世上没有“著名程序员”的理由,而且出名对程序员的编程生涯没有任何好处。 我以前就这么说过,现在我担任的是系统负责人的工作,我还是这么说。 这样说,多少都有点让人丧气。 这个事情让我警醒,我所受雇的公司都需要我什么东西?他们唯一需要的就是我作为系统负责人的专长。
是的,我只是一个系统负责人。仍然是。
我跟其他人一样,仍要经过面试。无论我编写了多少代码,我仍然需要去解决那些愚蠢的低级错误。 不论你写了多少的web servers或email框架或数据库服务器或聊天通信服务器或汇编器,我仍然需要向人们证明我能 够编程。 不论我写的应用被人部署了多少份,我仍然需要向人们证明我还可以写出可信赖的软件。
成名对我这种职业没有任何的好处。实际上是让我更辛苦了,因为一些有古怪想法的人认为我出名了就不能再编程了。
如果时光能够重来,我真不愿意因为编程而成为名人。 但是,我实际上再也抹不掉任何我获得的名声,所以我明白现在应该尽量的把这些名声当成儿戏为好。 我应该多教育一些人去热爱编程,就像我当年那样。这样不错。去鼓励更多的怪才去成为书呆子。
也许只是我这种怪人的一种怪想法。十年或二十年之后,我想,程序员将会成为另外一种车间工人。程序员将不再关心其他程序员的作品,人们将会 热衷于这种自闭,完全失去了创新和共享的动机。
所以现在你要满足于现在的社会地位,因为以后,程序员将永远的成为二 等公民。
来源:http://www.aqee.net/2010/06/23/there-are-no-famous-programmers/
风险投资和协议报表?废话,明天我要去处理一个x0xb0x,而今晚我正在修改一个新的和MulletDB集成的很酷的web服务器。 而这些人奇怪我为什么不谈谈风险投资。悲哀呀悲哀。
还是让我跟你讲讲这个很酷的新型web Server吧。 我研究出来如何将ZeroMQ事件投票系统和libtask协同例程库合并到一起,这样你可以在一个线程里使用 libtask来处理无数的TCP/UDP和ZeroMQ套接字通讯。 然后我就使用这个很酷的程序来开发了一个使用我的Mongrel HTTP解析器的web服务器,我修改了这个解析器,以让它使这个server能在同一个端口同时处理HTTP请求和XMLSockets服务。 下一步我将实现让这个server把HTTP和XMLSocket JSON信息转发到任意一个ZeroMQ后端。 这个软件让我很激动,我申请了utu.im域名来宣传它,希望能申请成功。
听起来很不错吧?完全不是这样。我可以编出像这样的程序,但没有人会因为我是个著名的程序员而注意到这些,世上根本没有著名程序员。就当我 不存在。我只是个传说。
我在公司工作,像其他人一样,也知道那些获得风险投资的创业公司创始人的情况。人们清楚他们是什么党派的,如何起步的,如何获得投资的,获 得了多少投资,资本总额是多少,他们是如何失败的,如何成为幸运儿的,他们卖了多少产品,他们为什么不愿卖掉公司,他们的下一个iPad app将会是什么样的,他们是同性恋还是异性恋,他们的女友是什么样的,他们的男友是如何甩掉她们的。
可人们对开发出这个他们自己正在使用的web框架的人却一无所知。他们从来没想过要见见这个家伙。人们从来不关心这个家伙是如何设计这个软 件的。人们从来不介意当软件开发出来了,这个家伙也就可以消失了。 研究这个家伙的生活是毫无意义的,因为他的全部生活都在软件里,人们愿意让他就这样静静的生活。
还有更出格的,人们甚至要求我们开发软件时不要使用BSD使用协议(或其他许可协议),他们不想在引用我们的程序时署上 这个软件是我们开发的。 还有些程序员根本不想在使用了我们的代码的应用程序的感谢名单里出现我们的名称。 对于人们来说你就是一个小程序。你就是一个螺丝钉,一个普通的螺丝钉。一幅画可以是著名的,螺丝钉不能。没有人愿意看见你,或把你挂在墙上。人们通常是把 你丢的沾满油污的工具箱里,直到有一天他们的橱柜松动时才会想起你。
让我们来做个实验。说出一个你每天都会用到的软件。也许这个软件是Rail的或Python的或其它语言开发的。现在,不要偷看,说出这个 软件的开发团队的四个主要成员的名称。我做不到,对任何一个我用过的软件都做不到。 那好吧,就当你能做到。你知道很多关于这个软件的开发者的资料,那你可否可以诚实的告诉我,你真的像了解这个软件一样了解给你开发这个软件的人吗。 扪心自问,当你使用这些软件时你对制作这些软件的幕后人物又知道多少?
所谓著名的程序员事实上并不是因为他的编程技术,而是因为他创建了什么公司或非营利组织。 他们的代码可不是像他们本人那样杰出,他们的杰出都是由非程序方面的荣誉构成的,这样才能让人们很容易的理解。
这就是我为什么坚信世上没有“著名程序员”的理由,而且出名对程序员的编程生涯没有任何好处。 我以前就这么说过,现在我担任的是系统负责人的工作,我还是这么说。 这样说,多少都有点让人丧气。 这个事情让我警醒,我所受雇的公司都需要我什么东西?他们唯一需要的就是我作为系统负责人的专长。
是的,我只是一个系统负责人。仍然是。
我跟其他人一样,仍要经过面试。无论我编写了多少代码,我仍然需要去解决那些愚蠢的低级错误。 不论你写了多少的web servers或email框架或数据库服务器或聊天通信服务器或汇编器,我仍然需要向人们证明我能 够编程。 不论我写的应用被人部署了多少份,我仍然需要向人们证明我还可以写出可信赖的软件。
成名对我这种职业没有任何的好处。实际上是让我更辛苦了,因为一些有古怪想法的人认为我出名了就不能再编程了。
如果时光能够重来,我真不愿意因为编程而成为名人。 但是,我实际上再也抹不掉任何我获得的名声,所以我明白现在应该尽量的把这些名声当成儿戏为好。 我应该多教育一些人去热爱编程,就像我当年那样。这样不错。去鼓励更多的怪才去成为书呆子。
也许只是我这种怪人的一种怪想法。十年或二十年之后,我想,程序员将会成为另外一种车间工人。程序员将不再关心其他程序员的作品,人们将会 热衷于这种自闭,完全失去了创新和共享的动机。
所以现在你要满足于现在的社会地位,因为以后,程序员将永远的成为二 等公民。
来源:http://www.aqee.net/2010/06/23/there-are-no-famous-programmers/