笔记本电脑的发展史
这是一段比较有趣的历史,让我们回顾一下笔记本电脑的整个历史吧。可能叫便携式电脑比较好一点。
1970 – 1981 第一个便携式的电脑概念
上世纪70年代,Alan Kay 在 Xerox PARC开始有了便携式个人电脑的想法。到了1981年, Osborne 1问世,其由Adam Osborne创造。如下图。Osborne 1 有一个5英寸的屏幕,还有一个可选的电池,两个5 ¼” 软驱,一个 modem 接口,还有一个键盘。当时的价格是$1,800(包括一块电池)。
1981 – 1984 : Gavilan 和 IBM
没有多久Gavilan Mobile Computer公司也进入了这个行业。其第一个便携式电脑的原型和今天的笔记本电脑非常相似,而且只有4公斤重并且配备了一个可以运行9个小时的镍镉电池。无论是从性能还是设计上来说,在1983年,这已经是非常超前的。而且这是 Galvin 第一次向市场引入了“移动PC”的术语。
Osborne 1的出现后, 微软公司的Kazuhiko Nishi 开始了一个便携式电脑的原型,其采用了LCD显示屏,重量2 ...
程序员的八个级别
在面试时,你可能会被经常问到“在未来5年,你想干什么?”,这可能是一个比较难回答的问题。在中国,答案一般可能会是Team leader,Manager,或是Architect,Specialist等,在中国,大家可能更多地觉得manager会是程序员的下一个目标,可是在国外,经理和程序员可能是两个不同的分支,Architect或Specialist 比经理来说更牛、代遇可能也更好,因为这些人的智商需要的更高。
在著名的“Coding Horror”上出现了这样一篇文章,我把其转到这里(我并没有完全一模一样的翻译,我只不过是用自己的话转述罢了),也让大家看看国外人的思考方式(当然,这篇文章只是分析程序员的级别而不是工种)。正如其作者结尾时所说,这八个级别并不是很严格的,其只不过是一种想法,希望能给大家另一种思路。
第八级 不朽的程序员
这一级别是程序员的最高级别。你的代码比你的生命活的还长,当你死后,你将会成为整个历史的一部分。其它程序员对你顶礼膜拜,或许你会获得计算机最高奖“图灵奖”,不然就是一系列极其影响力的论文,再不然,就是发明了一些可以影影响整个编程界根基的技术。你拥有的不仅 ...
惹恼程序员的十件事
程序员应该是一个比较特殊的群体,他们因为长期和电脑打交道所养成的性格和脾气也是比较相近的。当然,既然是人,当然是会有性格的,也是会有脾气的。下面,让我来看看十件能把程序惹毛了的事情。一方面我们可以看看程序员的共性,另一方面我们也可以看看程序员的缺点。无论怎么样,我都希望他们对你的日常工作都是一种帮助。
第十位 程序注释
程序注释本来是一些比较好的习惯,当程序员老手带新手的时候,总是会告诉新手,一定要写程序注释。于是,新手们当然会听从老手的吩咐。只不过,他们可能对程序注释有些误解,于是,我们经常在程序中看到一些如下的注释:
r = n/2; //r是n的一半
//循环,仅当r- n/r不大于t
while ((r-n/r) <=t){
… …
r = 0.5 * (r-n/r); // 设置r变量}
每当看到这样的注释——只注释是什么,而不注释为什么,相信你一定会被惹火,这是谁写的程序注 ...
非常不错的编程技术教程
下面是一些非常不错的编程教程,当然,全是英文版的。不过因为是新手教程,所以非常容易阅读,可以在学习技术的同时加强一下自己的英语阅读能力。
如果你是一个新手,建议你把本页设为你的收藏夹。C Introduction to C Programming C Optimization Tutorial Compiling C and C++ Programs on UNIX Systems – gcc/g++ Building and Using Static and Shared C Libraries Programming in C: UNIX System Calls and Subroutines Using C C FAQ C Programming Class Notes ANSI C for Programmers on UNIX Systems Sams Teach Yourself C in 24 Hours Sams Teach Yourself C in 21 Days (4th Ed.) The Standard C Library for Linux – Part ...
优秀程序员的十个习惯
在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人员(Developer)。经过一段时间后,这些人也许能够成为一个优秀的编码人员,他们会非常熟悉如何用计算机语言来完成自己的工作。但是,如果你要成为一个优秀的程序员,你还可以需要有几件事你需要注意,如果你能让下面十个条目成为你的习惯,那么你才能真正算得上是优秀程序员。
1. 学无止境。就算是你有了10年以上的程序员经历,你也得要使劲地学习,因为你在计算机这个充满一创造力的领域,每天都会有很多很多的新事物出现。你需要跟上时代的步伐。你需要去了解新的程序语言,以及了解正在发展中的程序语言,以及一些编程框架。还需要去阅读一些业内的新闻,并到一些热门的社区去参与在线的讨论,这样你才能明白和了解整个软件开发的趋势。在国内,一些著名的社区例如:CSDN,ITPUB,CHINAUINX等等,在国外,建议你经常上一上digg.com去看看各种BLOG的聚合。
2. 掌握多种语言。程序语言总是有其最适合的领域。当你面对需要解决的问题 ...
幽默:程序员的进化
高中时期
10 PRINT "HELLO WORLD"
20 END
大学新生
program Hello(input, output)
begin
writeln(\'Hello World\')
end.
高年级大学生
#include
int main(void)
{
printf("Hello, world!\\n");
return 0;
}
职业新手
#include
void main(void)
{
char *message[] = {"Hello ", "World"};
int i;
for(i = 0; i < 2; ++i)
printf("%s", message[i]);
printf("\\n");
}
职业老手
#include
#include
using namespace std;
class string
{
private:
int size;
cha ...
操作系统图形界面发展史(1981-2009)
注意,本文这罗列了从1981年以来有重大意义的操作系统的图形界面。
首先,先介绍两个网站:
http://www.guidebookgallery.org/ 如果你比较关注图形化UI的设计, 可以上这个网站上看看。
http://toastytech.com/guis/index.html 这是一个操作系统图形界面收集的网站,上面几科包括了所有的操作系统图形界面。
下面,让我们先来看看PC机上的第一个图形界面——Xerox Alto(该系统并未商用,主要用于研究和大学),其于1973年被施乐公司Xerox Palo Alto Research Center (PARC)所设计,从此,开启了计算机图形界面的新纪元,80年代以来,操作系统的界面设计经历了众多变迁,OS/2, Macintosh, Windows, Linux, Symbian OS ,各种操作系统将 GUI 设计带进新的时代。下面是其图片(70年代的东西看起来还不错哦)
Source: toastytech.com
1981-1985
Xerox ...
101个设计模式
所以设计模式,实是是一种方法,一种为了解决某种或某类物定问题所使用的设计模型。据说,在编程语言方面有100多种设计模式,而在现实生活中,传说有上成千上万个模式,比如写书有写书的设计模式,写武侠的一种,言情的另一种,连官方的新闻稿件也有。
言归正传,这个站点(http://sourcemaking.com/design-patterns-and-tips)是向大家着力推荐的讲解编程方面设计模式的网站,除了GoF那经典的23个三大类的设计模式,还有N多的其它种类的设计模式。一共101个,最重要的是,它的这101个设计模式的写作模式如下:
模式的意图
要解决什么样的问题
模式的讨论
模式的结构
模式的业务示例
实现模式的Checklist
模式的规则
代码示例(包括各种语言,如:Java, C++, PHP, Delphi…)