档案 一月, 2011

1.基础知识

1.1 什么是Shell编程?

在 Unix 中,shell 可不是简单的命令解释器(典型的有 Windows 中的 DOS ),而是一个全功能的编程环境。Shell 是操作系统的一部分,用来与用户打交道,并且可以用来协调各个命令【1】。用Shell编程可以灵活地解决大量重复任务,十分方便。但是,Shell的语 法十分怪异(个人意见),不容易记,如果现在熟悉的语言可以用来写shell那就好了——比如php——就可以快速开发Shell程序了(比如我的Preminder的后台程序),于是便有了这篇文章,本文以Linux为例说明php-cli的用法,其它平台的版本类似。

1.2 什么是php-cli?

刚才说到,我们可以用php来开发Shell程序。有的同学可能会问啦:“php不是用来做网页的么?-_-”。是的,php可以用来做动态网页,并且当初php就是为做动态网页而开发的语言,但是理论上php可以用来做任何的程序,甚至是桌面程序,而-cli是php在命令行运行的支持环境,也就是我们说的可以用来写Shell的环境支持。

php-cli是php Command Line Interface的简称,如同它名字的意思,就是php在命令行运行的接口,区别于在Web服务器上运行的php环境(php-cgi, isapi等)【2】。

也就是说,php不单可以写前台网页,它还可以用来写后台的程序。
(全文 …)

在这辞旧迎新之际,企业的头头脑脑们都在寻找新的、创造性的途径来推动他们各自的品牌成长。说到他们该向谁求助,除了苹果公司CEO史蒂夫·乔布斯 (Steve Jobs)这位当代最伟大的创新型企业领袖,还能有谁比他更有资格?通过过去30年来我与苹果公司员工、专家、分析师乃至与乔布斯面对面的交流,我发现乔 布斯取得突破性的成就很大程度上要归功于7项规律。 我将它们写入了自己的新书《史蒂夫·乔布斯的创新秘诀》(Innovation Secrets of Steve Jobs)中,未来几周我还将在博客中就这些规律展开讨论。我在下文中将简要介绍这些规律,任何人都可从中借鉴,思索如何“不同凡想”地打造自己的服务、 产品和品牌。

规律一:做你喜欢做的事。乔布斯曾经对一群员工说:“人有激情就能让世界变得更美好。”乔布斯这辈子一直在遵循自己的 心,他说正是靠这股激情实现了所有的这些变化。除非你心怀推动社会前进的热情,否则很难接受新的、创造性的和与众不同的理念。

规律二:要有改变世界的理想。激情仿佛是火箭的燃料,而理想则指引它直抵终点。当乔布斯与史蒂夫·沃茲尼亚克 (Steve Wozniak)在1976年共同创办苹果公司时,乔布斯的理想就是让每个人都有一台电脑在手。1979年,当加州帕洛阿尔托的施乐公司(Xerox)研 究室向乔布斯展示一套原始、粗糙的用户图形界面时,他立即认识到这项技术将让电脑融入到人们的日常生活中。该技术最终催生出麦金托什电脑 (Macintosh),从而改变了人机交流的方方面面。施乐公司的科学家之所以未认识到其潜力,是因为他们的目光局限在制造新型复印机上。也许两个人看 到的事物是一样的,但不同的“目光”会产生不同的想法。

规律三:多动脑筋。乔布斯说过:“创造性是桥梁,是纽带。”所谓桥梁和纽带便是要从其他行业寻找灵感。乔布斯曾经从电 话簿、坐禅、对印度的访问、梅西百货出售的食品处理机或四季酒店那得到灵感,次数之多,数不胜数。他并不是在“窃取”创意,至多算是利用了其他行业的创意 来激发自己的创造性。
(全文 …)

看完之后,终于明白为什么优秀的工程师都去了/想去facebook,因为那里是工程师们的天堂。我对 facebook的运转着迷。这是一个很独特的环境,不容易被复制(他们的体系并不适合所有的公司,即使他们努力尝试过)。下面是我和facebook的 朋友们关于他们如何开发和管理项目的记录。

现在距离我收集的这些信息又过去6个月了,我相信facebook肯定又对他们的项目开发实践进行了改进。所以这些记录可能会有点过时。同时 facebook的工程师驱动文化也越来越为大众所知。非常感谢那些帮助我整理这篇文章的facebook的朋友们。
(全文 …)

每种语言都有它特别的地方,对于JavaScript来说,使用var就可以 声明任意类型的变量,这门脚本语言看起来很简单,然而想要写出优雅的代码却是需要不断积累经验的。本文利列举了JavaScript初学者应该注意的七个 细节,与大家分享。

(1)简化代码


JavaScript定 义对象和数组非常简单,我们想要创建一个对象,一般是这样写的:

var car = new Object();
car.colour = 'red';
car.wheels = 4;
car.hubcaps = 'spinning';
car.age = 4;

下面的写法可以达到同样的效果:

var car = {
	colour:'red',
	wheels:4,
  hubcaps:'spinning',
  age:4
}

后面的写法要短得多,而且你不需要重复写对象名称。
(全文 …)

【编者按】NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面。今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于NoSQL方面的经验和体会。


非常荣幸能受邀在InfoQ开辟这样一个关于NoSQL的专栏,InfoQ是我非常尊重的一家技术媒体,同时我也希望借助InfoQ,在国内推动NoSQL的发展,希望跟我一样有兴趣的朋友加入进来。这次的NoSQL专栏系列将先整体介绍NoSQL,然后介绍如何把NoSQL运用到自己的项目中合适的场景中,还会适当地分析一些成功案例,希望有成功使用NoSQL经验的朋友给我提供一些线索和信息。

NoSQL概念

随着web2.0的快速发展,非关系型、分布式数据存储得到了快速的发展,它们不保证关系数据的ACID特性。NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not Only SQL”也被很多人接受。(“”一词最早于1998年被用于一个轻量级的关系数据库的名字。)

NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。在NoSQL概念提出之前,这些数据库就被用于各种系统当中,但是却很少用于web互联网应用。比如cdb、qdbm、bdb数据库。
(全文 …)

新浪科技讯 北京时间1月15日下午消息,美国商业网站Under30CEO从全球30岁以下的企业CEO中,评选出2010年最有影响力的30位。其 中, CEO马克·扎克伯格(Mark Zuckerberg)位居首位。

以下为上榜的前十大CEO:

Facebook CEO马克·扎克伯格Facebook CEO马克·扎克伯格

1、马克·扎克伯格

公司:Facebook

年龄:26

净资产:69亿美元

扎克伯格2004年在哈佛大学的寝室里创办了Facebook,这家社交网站如今的用户量已经超过5亿。他是全球最年轻的亿万富翁,而 Facebook也于2010年获得了超过300亿美元的估值。扎克伯格改变了人们的互动方式,而且以超乎想象的速度推倒了社会隔阂。《时代》周刊甚至将 他评为2010年年度人物。Facebook至今仍然没有出现放缓的迹象。

Groupon CEO安德鲁·梅森Groupon CEO安德鲁·梅森

(全文 …)

导语:美国知名投资者、作家保罗·科德罗斯基(Paul Kedrosky)周二在其个人网站上发表文章,称谷歌的排名搜索算法正在被淘汰,而最初的内容管理将取而代之。

以下为文章内容摘要:

最初是内容管理(Curation),这很好。人们发现有趣的事情后,可以把他们创建成目录。通过这份目录,人们就会找到所需内容。这就是最初的列表和目录,即雅虎当初的服务形式。

但随着互联网的迅猛发展,最初的内容管理已经跟不上互联网的发展节奏,因此让位于基于算法的搜索。最初,算法搜索也只是对互联网的简单抓取,只是后来变得智能化,通过关键字抓取。
(全文 …)

进入IT行业,等于在无形之中进入了一个高压力、高需求、低满足的行业圈中。压力那么大,主观快乐却那么的少,并且主观快乐会随着 从业时间的推移而不断减少。在身体健康之外,IT从业者的心理健康已经成为了关注焦点。到底IT从业者们的心理面临着怎样的挑战呢?“编 写代码是极费脑筋的事,一旦思路打断就很难续上,必须得一鼓作气地干。”一个小时的咨询里,韩青抽了5支烟,尼古丁对他而言,已经无法刺激神经、提神醒脑 以及安抚情绪了,“我上大学那会儿不抽烟,现在不得不抽。

韩青已经第三次走进心理咨询室了,可是他仍然无法完整的表达他的痛苦,不管怎样引导他,他也只能问一句答一句,多说一点儿,他就会不知如何回 答,而他反复表达的意思就只有一个:他已经快要32岁了,工作太忙,没时间恋爱,还没有结婚,事业无所谓上升与否,看不到未来,觉得生活实在无聊,无聊到 活着都觉得费劲了。作为一名工作了7年的资深程序设计员,韩青面临着人生各种需求的低满足困境,而他,并不是唯一有问题的人。

对于IT企业各阶层的员工而言,压力那么多,而主观感受的快乐却那么少。满怀激情地走出校园,就被湮没在“蚁族”群中,成为挣扎底层的“蚁民”;在城市中 刚刚立足,卖PC为生,成为自轻自贱的“P民”;跻身白领,在多年疲于奔命的奋斗中,成为自我迷失的公司人,也就是IT“公民”。

IT公司的“公民”已经成为高危人群——《计算机世界》的调差显示:57%的“公民”最关心的心理健康问题是“缓解工作压力”;50.6%是“调适自己的 心理健康”;31.7%是调适人际关系;31.7%是解决家庭压力。超过50%的人认为自己有必要接受心理机构的辅导和治疗。
(全文 …)

PHP里面,有众多的函数检查一个变量是否存在,或者是否为真,或者是否为空。例如: empty, is_null, isSet, == null等等,你知道他们之间的细节差异吗?表中的T就是True, F就是False

现在,PHP文档组在其 官方PHP手册中也已经添加了该规则 Appendix K. PHP type comparison tables

检查变量的函数

gettype() empty() is_null() isSet() (bool)
$x = “”; string T F T F
$x = null; NULL T T F F
var $x; (not set) NULL T T F F
$x = array(); array T F T F
$x = false; boolean T F T F
$x = 15; integer F F T T
$x = 1; integer F F T T
$x = 0; integer T F T F
$x = -1; integer F F T T
$x = “15″; string F F T T
$x = “1″; string F F T T
$x = “0″; string T F T F
$x = “-1″; string F F T T
$x = “foo”; string F F T T
$x = “true”; string F F T T
$x = “false”; string F F T T

(全文 …)

在2010年,越来越多的个人独立博客出现在网络上,真正到了全民皆博的时代。而在大部分博主看来,wordpress绝对是最好的选择。当然了, 美观大方个性的wordpress皮肤也是必需的。WDL的作者从大量的优秀的wordpress皮肤中精心挑选了下面这12款相当杰出的作品,更重要的是他们都 是免费的。

2010年最佳jQuery插件(排名不分先后):(猛击皮肤标题或者缩略图可以直达demo页面)

Shaken Grid

wordpress_2010_最佳皮肤
(全文 …)