博文

LAMP 与 LAOP(2007-01-30 19:28:00)

摘要:LAMP 与 LAOP 2007-01-27 来自:tinydust Oracle 这只大鲨鱼胃口越来越好了。LAMP (Linux, Apache, MySQL, PHP) 一直以来被视为一个非常完美的组合形式,现在 Oracle 或许有了想把 LAMP 中的 "M" 替换为 "O" -Oracle 的想法。LAOP, LAOP? 现在这还是我的猜测,起因是看到了这篇 Drupal + Oracle: Inside the OraDrup Project。

现在 OraDrup 项目还只是刚刚起步,Oracle XE 的确拉近了使用者与 Oracle 之间的距离,这个易于部署的版本一改 Oracle 过去"重"的形象,多少有点"轻量级"的意思,在中小应用上开始抢 MySQL 的地盘。LAOP 中的 O 有点牵强,却也是可以为之。

LAOP 中的 "P" (PHP)呢? Oracle 对 PHP 也是下了不少力气的。与 Zend 的倾力合作时间也不短了,Oracle 在 PHP 这一块的技术社区也逐渐做了起来。

至于 Linux 和 Apache ,对 Oracle 来说也是必争之地,苦心经营了多年。尤其是 Linux 服务器这一块,甚至不惜与多年的合作伙伴 Red Hat 交恶。

Oracle 会花多大力气来争夺这最关键的一环还真不好说,也或许只是一些 Oracle 技术爱好者的一厢情愿(或许更多是我的猜测:))。

再过一段时间没准 LAOP 这个缩写就流行起来喽,谁知道呢。......

阅读全文(10185) | 评论:0

二度“地震”刺破用户的耐心 即时通讯搬家成风(2007-01-30 19:26:00)

摘要:二度“地震”刺破用户的耐心 即时通讯搬家成风 2007.01.27  来自:中国经营报   丁飞洋  MSN依然时断时续   1月17日台湾地区再度发生海底地震将MSN即时通讯用户的耐心震到了最低点。虽然地震属于天灾,非微软大佬可控,但是这场网络时代的“海啸”再次为海外网络巨头敲响警钟。   对手的微笑   “地震之后,我们一直持开放态度,积极与后台运营商寻找解决方案,MSN的使用最近已经基本恢复正常。服务器在美国可以统一管理,很多时候是因为技术原因,比如说安全考虑,防止黑客入侵等。”MSN公关负责人表示。   但显然,MSN的努力没能让用户完全满意。“MSN已经让我厌倦了,因为地震刚开始时候登录不上,我可以理解,但最近一段时间,虽然可以登录,但经常性的信息丢失,文件无法传输,无法与客户实时在线沟通让我完全对它没有了耐心,我不得不重新寻找原来的QQ号码。”在外贸企业工作的王梅颇为烦恼。   去年12月26日台湾海域7.2级地震,导致海底光缆中断,地震也震出了MSN的本土化危机。来自QQ、Lava-Lava的数据表明,其注册用户与在线人数都在增长中,尤其是过去的灰色用户“复活”数量骤增。“地震的第二天,我们用户一下子多了40万,令人很是意外。”腾讯公司公关部负责人程芳告诉记者,有的公司重新恢复了QQ的网管。   昔日互联网英雄、点击科技总裁王志东也紧紧地抓住了这次的机会。在断网的第二天,一些用户的手机上收到了来自点击科技的一条短信,内容是推荐使用他们的即时通讯软件Lava-Lava。王志东告诉记者,Lava-Lava的注册人数最高时增长了50%之多,为了乘胜追击,公司正酝酿在春节前后推出该通信软件的标准版本、白领都市时尚版、企业版等三大版本,而且还将单方面解决与MSN的连接问题。届时,网民运用其软件时候,可以直接与原来MSN群体聊天,不需同时开两个通信工具窗口。   互联网不是平的   国际互联网企业的本地化问题,在过去的10年间始终考验着叱咤全球的网络巨头。   “外国互联网公司在华发展一直问题很多,前段时间流行说法网络让世界是平的,其实不然。世界是平的的基础是以美国为中心的平坦,这也暴露出美国企业高管的价值观。虽然中国互联网的人口已有1亿之多,但在某些美国网络巨头眼里,中国依然是边缘市场,光缆......

阅读全文(10600) | 评论:0

一个极其简单的防止SQL注入的办法(只针对部分有效)转自csdn论坛(2007-01-30 19:23:00)

摘要:一个极其简单的防止SQL注入的办法(只针对部分有效)转自csdn论坛 首先,先声明一下,这个办法是我WoW时候忽然想出来的,绝不会完美。 其次,说明一下我的方法的大致思想:判断最后要提交到数据库的SQL,通过禁止某些可能具有危害性的SQL的执行而达到防止SQL注入的目的。判断每个QueryString是很麻烦的(至少像我这种懒人觉得麻烦),而只判断最后那句SQL要简单很多。并且可以做个通用的函数,简单地调用一下即可。
先研究一下可能的SQL注入的特点。如果什么安全措施也不做,那么最后提交到数据库的SQL很可能是这样: http://www.abcdefg.com/type.asp?id=6;update admin set password='helloworld' where username='admin'--   
Select * from abc where id = 6 ;update admin set password ='helloworld' where username='admin'-- 那么应对措施如下:
1) 判断SQL中有没有注释符号
  自己写的SQL还用得着注释?并且注释居然不是写在代码里而是写在SQL里?先汗一下。在SQL中出现注释符号的直接pass,这必然不是什么好东西。   if ( sql.Contain("--") ) throw new Exception("SQL injection!"); 2) 判断SQL是不是一句话
  上例中因为有; 的存在而使本来好好的一个查询变成了两句话,而第二句话基本上就不会是什么好东西了。我可以通过判断这个SQL中有没有;的存在来判断这句SQL是不是一句话。   if ( sql.Contain(";") ) throw new Exception("SQL Injection!"); 3) 很有可能这些危险的符号是用十六进制存放的,那么就需要翻译一下。
  所谓“智者 当借力而行”,我们可以用现成的库函数来实现这个翻译过程   sql = Server.UrlDecode( sql ); // 把这句话放在 1 和 2 的前面 4) 说不定在一些奇怪的查询中,;是作......

阅读全文(10335) | 评论:0

程序入门:初学者应从何种编程语言开始学起 (来自csdn论坛)(2007-01-30 19:16:00)

摘要:程序入门:初学者应从何种编程语言开始学起 (来自csdn论坛) 这是一个争论不休的话题,不同人总会有不同的见解。传统的说法是从Pascal开始,而较为新点的是C开始,这几年以来,也有提出直接从C++或者C#/Java开始学起。 本人是本科出身的,对于专科或者不读书的初学者来说,他们的环境也许跟我的不同,不过我的观点可以作为参考。 首先,我先来介绍一下各种编程语言的来源、特点。 Pascal语言: Pascal是一种计算机通用的高级程序设计语言,由瑞士Niklaus Wirth教授六十年代末设计并创立的。 Pascal的主要特点有:严格的结构化形式、丰富完备的数据类型、运行效率高、查错能力强等特点。 由于上述特点,Pascal可以方便用于描述各种算法和数据结构。对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林匹克信息学竞赛)把Pascal语言作为三种程序设计语言之一。NOI(全国奥林匹克信息学竞赛)把Pascal语言定为唯一提倡的程序设计语言,在大学中Pascal语言也常常被用作学习数据结构与算法的数学语言。 C语言: C语言是介于汇编语言和高级语言之间的语言,属于高级语言,也称为中级语言,是集汇编和高级语言优点于一身的程序设计语言。于1972年在美国贝尔实验室里问世。早期的C语言主要用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了九十年代,C语言开始进入其他操作系统,并很快在各类大、中、小和微型计算机上得到广泛的应用。成为当代最优秀的程序设计语言之一。 C的特点 1. 是一种结构化语言。层次清晰,便于按模块化方式组织程序,易于调试和维护。 2. C语言的表现能力和处理能力极强。不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,它还可以直接访问内存的物理地址,进行位级别的操作。 3. 由于C语言实现对硬件的编程操作,所以既可用于系统软件的开发,也适合于应用软件的开发。C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类计算机上,从而形成了多种版本的C语言。 4. 由于C语言允许直接对位、字节和地址进行操作,能实现汇编语言的大部分功能。 5. 目标代码质量高,程序执行效率高。 总体上来说,C语言的优点是简洁、紧凑、使用方便、灵......

阅读全文(10134) | 评论:1

IBM推出敏感信息屏蔽软件并开放源代码(2007-01-30 19:12:00)

摘要:IBM推出敏感信息屏蔽软件并开放源代码 2007.01.30  来自:网络世界 位于苏黎世的IBM研究实验室最近提出了一个在文档交换过程中屏蔽敏感信息如信用卡号码、医疗数据等的方法。
  这个基于XML的软件技术叫Identity Mixer,它应用了一种新颖的方法,即使用基于X.509的数字证书来屏蔽文档中要传输的敏感信息,但仍允许授权浏览者浏览被屏蔽的信息。IBM著名工程师、Tivoli首席安全架构师Anthony Nadalin称,IBM的目标是通过Eclipse Open Source Foundation使Identity Mixer作为开源软件提供,鼓励其广泛使用。
  Nadalin说:“Identity Mixer代码正处在知识产权审核阶段,几个星期后就可以通过Eclipse获得。”
  Identity Mixer软件的目的是在Project Higgins下增强“以用户为中心的身份管理”(一种计算机用户可以管理并控制个人信息的方法)。Project Higgins项目是一年以前由IBM、哈佛大学和Novell共同起动的。
   ......

阅读全文(11314) | 评论:0

程序员成功之路 ——来自csdn(2007-01-29 22:13:00)

摘要:程序员成功之路 ——The road ahead for programmer(演讲稿) 来自csdn: http://blog.csdn.net/feixiangzaici/archive/2007/01/22/1490454.aspx
一、我很羡慕在座的各位同学,因为你们是中国未来的程序员,而我不是,我一直很遗憾。
比尔盖茨曾经写过一本书叫做《未来之路》The road ahead, 那么今天我选择这样一个题目,the road ahead for programmer, 程序员的未来之路,也就是程序员的成功之路,希望大家未来也能够拥有像比尔盖茨一样的智慧的头脑和开一家像微软一样的公司。俗话说:心有多大,人生的舞台就有多大!
二、最近看了几篇csdn上的漫漫人生路专辑,很有感触,这里摘抄了几句,非常愿意和大家分享, 优秀程序员的心里话:
编程的原因是喜欢,不是为了别的。 
从摸上电脑的那一刻,我就知道,这才是我的世界。
我一心一意地想作个程序员,尽管知道很累。
人真的不能轻言放弃,否则,失去的永远无法挽回!
生命是一种长期而持续的累积过程 
所有成功的人都有一个不变的黄金法则: 积累!与 坚持!
大家听了这些话,不知道是怎样的想法呢?
提问,(1)你以前有没有读过这样的文章或有没有程序员跟你说过这样的感受?
(2)你怎样看待程序员这个职业?你有这种感觉吗?
上面的话其实都在说明一个道理,只有全身心地投入,写程序才会有意思,才会体会到其中的乐趣。
电脑的世界其实很大,程序员是活在自己想象的王国里。你可以想象到电脑里细微到每一个字节、每一个比特位的东西。通过电脑可以实现你的设想,解决你的问题。电脑远没有人那么复杂,如果程序写得好,你就可以和电脑处好关系,就可以指挥电脑干你想干的事。每每你坐在电脑面前,这个时候你是十足的主宰。
理想和梦想,比尔盖茨自从见到了计算机这个东西,就想象有一天个人计算机将是每一部办公桌面系统以及每一家庭的必备的工具,并为这一信念所指引,开始为个人计算机开发软件。
三......

阅读全文(10800) | 评论:3

[职场生存]细节和感觉[三]:感觉-csdn郑昀著(2007-01-29 22:00:00)

摘要:[职场生存]细节和感觉[三]:感觉
    zhengyun_ustc 200701 -csdn郑昀著 前文链接:[职场生存]细节和感觉[一]
[职场生存]细节和感觉[二]:细节包括哪些部分? 下面我们来说第二点: 感觉。 我所说的这个感觉不是以前我曾经强调过的“在工作中寻找不断的良性刺激和成就感”的感觉,而是“打怪”的感觉。 你也许被领导数落过,也许经历过项目迅速演变成无序状态,也许领导今天为了一个销售或市场短期目的而让大家加班加点后天却戛然而止成了“无用功”,甚至于你的项目直接被勒令停止。 也许你属于某一个“矩阵”中,你的分属领导让你向东,而你的直属领导让你向西,你夹在其中不知所措。 也许你不知不觉中参与了公司政治斗争,今天你的派系转眼被击溃,明天你就遭到了排挤。 也许你对直属领导的行事风格颇为不满,总觉得他事事都在针对你。 。。。 只要你身在江湖的时间足够长,你一定会遇到上面的情形。你一定会不开心。 那么我们应该抱有什么样的心态呢? 好答案之一就是,保持“打怪”的感觉。 我们打RPG游戏的时候,会有意识地期望去下一个目的地之前的路上,赶紧打够各种各样的怪物,积累足够多的经验,来应付下一个不知道什么样的大BOSS。越是临近见到大BOSS,我们越紧张,尽可能地把路上的所有怪物都打一遍来获取各种各样的宝物或者各种类型的经验值。 其实,前面我所描述的那些困境,你完全可以把他们认为是大BOSS之前的种种怪物,但是与RPG游戏不同的是,无论你打掉他们或者是被他们打掉,都是游戏的一个过程,你还会继续前行,你都会因此而增加经验,只要你不放弃,只要你不伤害自己,没有什么能够阻止你见大BOSS。 分属领导向东,直属经理向西,这是多好的打怪机会,这也是你成长的必然过程。这时候就有点像是我们以前打过的一个游戏,回答对游戏里那个女孩的问题,你才能有机会获取她的芳心。现在,游戏手柄握在你手里了,就看你怎么选择了。选择过几回之后,你就知道下次该怎么作了。年轻就是这点好处,永远有下一次,用不着保存游戏进度,用不着reload。重要的是,是你在主动选择,你知道你做出了什么选择,也最终知道结果是什么,这就够了,过了马上要来的大BOSS,下一关还会有同样的关卡,这时候你总知道该怎么选了吧。 对于你牵涉到了政治斗争漩涡里面或者......

阅读全文(9766) | 评论:1

[职场生存]细节和感觉[二]:细节包括哪些部分?-csdn郑昀著(2007-01-29 21:59:00)

摘要:[职场生存]细节和感觉[二]:细节包括哪些部分?
    zhengyun_ustc 200701  -csdn郑昀著 前文链接:[职场生存]细节和感觉[一] 前面说了细节是一种技巧,并且展示了老外的细节之一。那么到底我所说的细节都包括哪些部分呢? 简单地说,这需要你去用心发现和学习。但在学习的过程中,请记住两点: 一,最佳的成长方式是,找到一个优秀的领导,并向他身上的优点迅速靠拢;吸收得差不多了,再换一个领导模板。很多人都谈到过这一点,模仿,是让你飞得更高的一个捷径。因为你要学习的那些优点已经在职场中部分验证过了,比你从管理的或软件工程的书本上看到的要真实有效的多。 二,不要把注重细节变得让别人误以为是繁文缛节。请保持一个原则:细节是为了让别人更舒服,而不是让人浑身不自在。如果你的注重细节让别人如坐针毡,那么可能你的做法是错误的,这时候你也许需要用奥卡姆剃刀法则来审视自己了。所以我们会认为ISO9001的评选过程是错误的,就是因为它让大多数人不自在,因为它是非自然的,而并非自然健康的。如果一个项目的大多数文档写得催人入眠,格式呆板如同嚼蜡,那它能够算优质资产吗?No,No,我们所说的细节不是这种的细节。你必须让人觉得贴心和舒服,否则“细节”就不是一种技巧,而变得和外企的“邮件文化”一样既无用又引起内讧。 人们还会说,“细节”会让我付出过多的机会成本,有这个功夫,我能写好多行程序了。郑昀说,这恰恰是因为你从来没有注重过细节,所以不知道这做起来有多容易。因为你天天忙得屁滚尿流的,所以,你根本没有时间思考做事的方式方法,也正是因为你没有时间思考,所以你没办法养成好习惯和好细节。一天一天地日子过去,你就这么恶性循环下去。 我举一个浅显易懂的例子(正如我经常说的,作为技术人员,给倾听者举简单易懂的例子、用浅显的语言表述,也是表示你能做到贴心和职业的重要特征),我大学时候每隔两三天就会洗一次衣服,而不像大多数男生动辄一个月洗一次,所以以这种频率洗衣服的话,基本每次洗衣服很容易,本来就没几件嘛。就算是这么几件,我也以很轻松的态度洗完,丝毫不会觉得会是什么负担。为什么呢?要洗衣服的时候,我就会在宿舍自修,先把他们泡起来略微搓搓,然后自修一段时间去厕所的时候顺便到那里猛搓他们每件四五十把,这样既不挤出特别的时间来对付他们,......

阅读全文(9561) | 评论:0

从VC++到GCC移植:谈两者的语法差异-csdn许式伟(2007-01-29 21:57:00)

摘要:从VC++到GCC移植:谈两者的语法差异 许式伟 http://blog.csdn.net/xushiweizh/archive/2007/01/28/1496534.aspx 
2007-1-28

类型引用 template <class T>
class  Foo
{
    typedef T::SomeType SomeType;
}; 这段代码在VC++中一点问题也没有,但是GCC并不允许,因为它不知道T::SomeType是什么。你需要改为: template <class T>
class  Foo
{
    typedef typename T::SomeType SomeType;
}; 通过typename T::SomeType告诉GCC,SomeType是一个类型名,而不是其他东西。 当然,这种情况不只是出现在typedef中。例如: template <class Container>
void visit(const Container& cont)
{
    for (Container::const_iterator it = cont.begin(); it != cont.end(); ++it)
         ...
} 这里的Container::const_iterator同样需要改为typename Container::const_iterator。   基类成员引用 template <class Base>

阅读全文(10857) | 评论:1

WWW15年:改变世界的15个网站(2007-01-29 21:54:00)

摘要:WWW15年:改变世界的15个网站 2007.01.29  来自:Donews 本月,World Wide Web迎来15岁生日。在短短15年里,网络彻底地改变了我们的生活,从购物到订购飞机票,从写博客到听音乐,网络已渗透日常生活的方方面面。《观察家报》评选出了迄今为止15个最有影响力的网站。

  德国人乔纳森·古腾堡在欧洲首创活字印刷术,被西方认为是印刷之父。他的印刷改变了世界,但是他却没能活着看到自己所发动的广阔革命。假如你在 1468年——古腾堡去世之时——告诉他,他于1455年出版的圣经将削弱天主教教会的权力;推动文艺复兴;使现代科学崛起成为可能;创造新的社会阶层;他将一脸茫然,不明白你在说什么。

  但是,今天,就在我们中间有一个人有着与古腾堡类似的成就,他却活着看到了自己工作的成果。他就是提姆·伯纳斯·李(Tim Berners- Lee),他发明了一套系统,将互联网变成出版媒介。1955年6月8日,伯纳斯·李出生在英国伦敦的西南部,他的父母都是英国计算机界的名人,曾参与了英国第一台商用计算机的研制工作,他从小便耳濡目染。但他真正开始研究互联网是在加入日内瓦的CERN(欧洲粒子物理研究所)后。作为一名软件工程顾问,他编写了一个名为 “Enquire”的信息处理工具,它就是World Wide Web(简称www,万维网)的最初概念。经过一番努力,1989 年,伯纳斯·李在Enquire的基础上提出了利用 Hypertext(超文本)重新构造信息系统的设想,并设计出供多人在网络中同时管理信息的超文本文件系统。1990年,他在当时的NeXTStep网络系统上开发出了世界上第一个网络服务器(Web Server)Httpd和第一个客户端浏览编辑程序WWW。同年12月,CERN首次启动了万维网并成立了全球第一个WWW网站 info.cern.ch(至今仍是CERN的官方网站)。15年前—— 精确地说是1991年8月6日——伯纳斯·李在alt.hypertext新闻组贴出了一份关于World Wide Web的简单摘要,这个日子因此被标志为WEB页面在Internet上的首次登场。伯纳斯·李还提出了所有人都可以免费使用WWW的概念。

  WWW以惊人的速度成长。今天,没有人知道它究竟有多大。在最近的......

阅读全文(10020) | 评论:0