幽默:程序员的进化
高中时期
10 PRINT "HELLO WORLD" 20 END
大学新生
program Hello(input, output) begin writeln(\'Hello World\') end.
高中时期
10 PRINT "HELLO WORLD" 20 END
大学新生
program Hello(input, output) begin writeln(\'Hello World\') end.
编程的人应该都知道什么是Hello World。这是一个最简单的程序,其只在屏幕上输出“Hello World”字样,这通常是初学者的在学习编程时的第一个示例。把打印出 “Hello World” 作为第一个范例程序,现在已经成为编程语言学习的传统。
“Hello World”起源于Brian Kernighan 和Dennis MacAlistair Ritchie写的计算机程序设计教程《C语言程序设计》(The C Programming Language)而广泛流传;但这本书并不是 “hello, world” 的滥觞,虽然这是一个普遍存在的错误认知。
这范例程序最早出现于 1972 年,由贝尔实验室成员 Brian Kernighan 撰写的内部技术文件《Introduction to the Language B》之中。不久同作者于 1974 年所撰写的《Programming in C: A Tutorial》,也延用这个范例;而以本文件扩编改写的《C语言程序设计》也保留了这个範例程式。
“hello, world” 程序的标准打印内容必须满足“全小写,无惊叹号,逗点后需空一格”,不过流传至今,完全恪守传统的反而罕见。
下面是十个非常不错的,使用Ajax技术的用PHP开发Webmail的客户端。大家在使用的时候请注意其license。
RoundCube Webmail 是一个基于浏览器的IMAP 客户端,其提供了丰富的功能,包含MIME,地址本,文件夹操作,邮件搜索和拼写检查。 RoundCube Webmail 由 PHP写成,需要 MySQL 或 Postgres 数据库的支持。其UI完全遵守于XHTML 和 CSS 2.
Vim是unix/linux下的文本编辑器,很牛,但也不好用,这是一个根本不需要小键盘和鼠标的编译器,是专业人士的编辑器。这里有一个命令速查卡。PDF文件可以在这里下载:PDF
注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。
首先,先介绍两个网站:
下面是十个最牛的也是最流行的Javascript框架。它们完全可以担任目前世界上几乎所有一些和Ajax技术相关的和图形界面相关的一切功能。
如果今天你还不知道jQuery的话,那么作为一个程序员你可能真的是从火星来的了。这恐怕是Ajax中应用最广的框架。包括了许多很不错的UI组件,做出网页的效果也是令人称道的。不过,他最牛的是它的文件大小,只有区区18K,实在是居家旅行,网站开发之首选。
下面这个网站记录了整个Linux所有发行版的时间线,很有意思
http://futurist.se/gldt/
最新的更新时间是2009-2-12,下面是下载链接:
811 kb png / 72 kb tar.bz2
我个人认为,这是一篇不错的文章,虽然我不是Program Mananger,但是我几乎在做着和这个职位很相似的工作。在这里,我把这篇文章推荐给所有的程序员,我相信,这篇文章会让你明白,只有技术是远远不够的,因为没有Program Manager这个角色,程序员们只不过一些手中拿着利器却不知所措的散兵游勇。我希望我的导读和原文能给所有的程序带来启示。
原文在这里:
“How to be a program manager”
http://www.joelonsoftware.com/items/2009/03/09.html
这篇文章的作者叫Joel Spolsky,在Microsoft做过Program Manager,这篇文章非常值得一读。下面是我给大家做的一个导读:
首先,他讲了两个人,一个是负责WYSIWYG 字处理的天才级的Program Manager——Charles Simonyi,第二个是上世纪80年代的负责Mac OS上的Excel项目的程序员Jabe Blumenthal,他发现了程序员和市场人员的代沟,Marketing的人很难通过把MBA-Speaking翻译成实际的Feature,并且,有太多的和编码不相关的工作,比如说,和用户交谈,运行usability测试,Reivew竞争者的产品,并且得冥思苦想怎么能让事情变得更简单,而我们的程序员通常来说即不具备这样的时间,也不具备这样的能力。于是,Jabe开始了他的Program Manager的生涯。
下面有三个HTML的标识,你可能从来没有用过。
第一个:<abbr> 或 <acronym>
这两个标识是一回事,主要是用于一些英语的缩写,当你把鼠标移上去的时候,你会发现会出现一个小提示来提示缩写的全称。下面是一个示例:
HTML IEEE RTFSC