January 9, 2007
iPhone combines three products — a revolutionary mobile phone,
a widescreen iPod with touch controls, and a breakthrough Internet
communications device with desktop-class email, web browsing, maps, and
searching — into one small and lightweight handheld device. iPhone also
introduces an entirely new user interface based on a large multi-touch
display and pioneering new software, letting you control everything
with just your fingers. So it ushers in an era of software power and
sophistication never before seen in a mobile device, completely
redefining what you can do on a mobile phone.
More details on Apple.com


December 9, 2006
Dr. Liu posted an interesting discussion about the relationships between data, information, and knowledge. In fact, there is another word, wisdom, which is always compared with them together. Simply put, data can be considered as the phenomenon of our physical world, information is the nature of the world, knowledge is the mapping of the world in our mind, and wisdom is our power to further understand and change the world. We have databases to manage data, information systems to organize information, and recently knowledge management systems are proposed to help people achieve knowledge.
But can we build something to unleash the power of thinking? We spend much time to build tools to reserve and retrieve information. We are more and more dependent on calculators, notepads, and Googles, meanwhile, we are losing our ability to compute, to memorize, and to think. Can you still calculate 124 X 237 in your mind? Can you still quickly remember a telephone number? Can you still believe in your own answer without the search engines? The wisdom, the creativity, the freedom of thinking, are the essential virtue of human. Please do not leave them away.
November 16, 2006
We had a guest from MIT Lincoln Laboratory in our class today. Dr. Pensa, the assistant director of Lincoln Laboratory, gave us an introduction to the laboratory, which is the research center of national security in US. It is really frightening that they have more than 100 million dollars spend on IT infrastructure each year. During Lunch, Dr. Pensa complained the waste of investment on IT and just wondered where the moeny went away. It made me remember one of the articles we read in IST 501 class last week – ” IT doesn’t matter” from Harvard Business Review, which argued that, since IT has become a common investment for most companies, the cost/profit of IT investment becomes low. On the one hand is that more than 100 million PCs are purchased every year, most of which replace older models. On the other hand, most computers are used just for word processing, email, and web browsing, which require only a fraction of the computing power.
Much of the spendings, in fact, is driven by vendors’ strategies. Hardware suppliers have become very good at parceling out new performance and capabilities in ways that force companies to buy new computers; software companies upgrade their products frequently, and plug more features and components into products, which are never used by most people. What’s more, software engineers are relying more on the improvement of hardware performance, and no longer care much about the quality of the design and codes. The time has come for IT buyers to throw their weight around and impose hard limits on upgrade costs.
As information technology’s power and ubiquity have grown, its strategic importance has diminished. The way you approach IT investment and management will need to change dramatically.
Three rules for IT management provided in the article:
- Spend less. As the commoditization of IT continues, the penalties for wasteful spending will only grow larger. It is getting much harder to achieve a competitive advantage through an IT investment, but it is getting much easier to put your business at a cost disadvantage.
- Follow, don’t lead. Moore’s Law guarantees that the longer you wait to make an IT purchase, the more you’ll get for your money. And waiting will decrease your risk of buying something technologically flawed or doomed to rapid obsolescence.
- Focus on vulnerabilities, not opportunities. It’s much harder for a company to gain a competitive advantage through the distinctive use of IT nowadays, but even a brief disruption in the availability of the technology can be devastating.
March 13, 2006
面对庞杂的Linux大家族,如果你不知道该如何选择合适自己的发行包的话,可以试试用Zegenie Studios的Linux Distribution Chooser来做个测试。测试结果说明我比较适合使用以下六个发行包:
 |
Debian
|
( http://www.debian.org/ ) |
| Debian is a free operating system (OS) for your computer. An operating system is the set of basic programs and utilities that make your computer run. Debian GNU/Linux provides more than a pure OS: it comes with over 15490 packages, precompiled software bundled up in a nice format for easy installation on your machine. |
 |
Ubuntu
|
( http://www.ubuntulinux.org/ ) |
| Ubuntu is a complete Linux-based operating system, freely available with both community and professional support. Ubuntu includes more than 1,000 pieces of software, starting with the Linux kernel version 2.6 and Gnome 2.10, and covering every standard desktop application from word processing and spreadsheet applications to internet access applications, web server software, email software, programming languages and tools and of course several games. |
 |
MEPIS
|
( http://www.mepis.org/ ) |
| MEPIS Linux is a desktop Linux system that is also easy to configure as a dedicated server. It is designed for both personal and business purposes. It includes cutting-edge features such as a live/installation/recovery CD, automatic hardware configuration, NTFS partition resizing, ACPI power management, WiFi support, anti-aliased TrueType fonts, a personal firewall, KDE, and much more. |
 |
Fedora
|
( http://fedora.redhat.com/ ) |
| The goal of The Fedora Project is to work with the Linux community to build a complete, general purpose operating system exclusively from open source software. Fedora Core is built to provide choice. It includes the latest versions of many software packages, including both GNOME and KDE desktop environments. Fedora Extras, a repository built entirely by volunteers, provides thousands more packages, and is enabled for use by default. |
 |
Kubuntu
|
( http://www.kubuntu.org/ ) |
| Kubuntu is a user friendly operating system based on KDE, the K Desktop Environment. With a predictable 6 month release cycle and part of the Ubuntu project, Kubuntu is the GNU/Linux distribution for everyone. |
 |
SuSE
|
( http://www.suselinux.com/ ) |
| SUSE Linux 10.0 includes all of the latest desktop productivity tools to help you with your most common home computing tasks. Whether it’s instant messaging and communicating with friends, creating and designing graphics, or organizing digital picture and music files, you’ll find what you need on our easy-to-use desktop. And to make finding things even easier, we’ve included a preview of the latest version of the new Linux desktop search technology: Beagle Desktop Search. Beagle is the powerful new open source search engine that puts all of the content in your personal information space at your fingertips. Plus, to keep your desktop secure, SUSE Linux includes powerful built-in tools for spam blocking, virus scanning and application-level protection. |
March 4, 2006
Debian U盘制作方法
chinajz
c_xvidtune@hotmail.com
http://spaces.msn.com/chinajz
这次制作没有编译内核,u盘 256M usb1.1接口。
一、制作条件:
1. debian网络安装光盘:debian-31r0a-i386-netinst.iso;
2. U盘:256M,usb1.1接口;
3. 笔记本电脑:dell D800 ,mem 256M ,hd 40G
4.OS:debian sid (kernel 2.6.15.4)+RHEL 4 U2
二、制作步骤:
1.用fdisk分区u盘(这步可省略,放在下步做,但有时粗心直接装至sda导致系统可能不正常运行)
debian:~# fdisk /dev/sda
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won’t be recoverable.
Warning: invalid flag 0×0000 of partition table 4 will be corrected by w(rite)
Command (m for help): p
Disk /dev/sda: 263 MB, 263454720 bytes
9 heads, 56 sectors/track, 1020 cylinders
Units = cylinders of 504 * 512 = 258048 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1020, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1020, default 1020):
Using default value 1020
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83
Command (m for help): p
Disk /dev/sda: 263 MB, 263454720 bytes
9 heads, 56 sectors/track, 1020 cylinders
Units = cylinders of 504 * 512 = 258048 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 1020 257012 83 Linux
Command (m for help): a
Partition number (1-4): 1
Command (m for help): p
Disk /dev/sda: 263 MB, 263454720 bytes
9 heads, 56 sectors/track, 1020 cylinders
Units = cylinders of 504 * 512 = 258048 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 1020 257012 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
2.用debian光盘直接安装到u盘(不要装grub,不然你会后悔的,因为如果你装grub,系统会以为你从u盘启动,本地硬盘grub将不能正常工作),然后在chroot 状态下安装grub
3. 在已经装好的linux上用chroot启动U盘linux操作。(在我的电脑上,光盘上resuce模式后,在控制台(Ctrl+Alt
F2)可以完全操作成功,但做出的内核启动选项配置映象文件initrd.img不能正常启动,我想可能是光盘版本太低的缘故。execute a
shell下则不能完成。)
建议最好在控制台下操作,而不要到xwindow下操作(如果操作最好只开一个xterm),防止对硬盘linux系统误操作.
3.1增大U盘自由空间,用chroot启动U盘linux
debian:~# mkdir -p /mnt/u
debian:~# mount /dev/sda1 /mnt/u
debian:~# rm /mnt/u/var/cache/apt/archives/*
debian:~# rm /mnt/u/tmp/*
debian:~# chroot /mnt/u
以下操作全在u盘的linux环境里,别搞错了.
3.2定制源
vi /etc/apt/sources.list
# /etc/apt/sources.list generated by apt-spy v3.1
deb http://debian.cn99.com/debian/ sid main
apt-get update
3.3删除旧内核
apt-get remove kernel-image-旧内核版本
3.4安装新内核
apt-get install module-init-tools
apt-get install kernel-image-2.6-686
3.4 升级u盘linux至sid最新版
rm /var/cache/apt/archives/*
rm /. Trash/*
apt-get upgrade
rm /var/cache/apt/archives/*
rm /. Trash/*
3.5 配置编译映象文件initrd.img的相关文件
3.5.1 修改mkinitrd.conf
vi /etc/mkinitrd/mkinitrd.conf
增加usb 1.1和2.0接口及usb-storage编译的选项:
ehci_hcd
uhci_hcd
ohci_hcd
usb-storage
3.5.2 修改modules,这里设定内核装载时间为15s
vi /etc/mkinitrd/modules
# The length (in seconds) of the startup delay during which linuxrc may be
# interrupted.
DELAY=15
3.5.3 修改fstab文件
vi /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/sda1 / ext3 defaults,errors=remount-ro 0 1
/dev/hdc /media/cdrom0 iso9660 ro,user,noauto 0 0
3.6 制作内核启动选项配置映象文件initrd.img
mount -tproc none /proc
如果你电脑上硬盘linux系统和u盘linux系统版本一样,可用以下简便操作
mkinitrd -o /boot/initrd.img-$(uname -r) $(uname -r)
如果不一样,查下/lib/modules/目录
ls /lib/modules/
以2.6.15-1-686为例
mkinitrd -o /boot/initrd.img-2.6.15-1-686 2.6.15-1-686
3.7 制作u盘的grub引导
grub-install /dev/sda1
exit
4.修改/boot/grub/menu.lst文件
对usb是2.0和1.1接口,在我的电脑上/boot/grub/menu.lst不一样才能正常启动:
usb 1.1U盘
#/boot/grub/menu.lst
title Debian GNU/Linux, kernel 2.6.15.4
root (hd0,0)
kernel /boot/vmlinuz-2.6.15.4 vga=792 root=/dev/sda1 ro
initrd /boot/initrd.img-2.6.15.4
savedefault
boot
usb 2.0移动硬盘
#/boot/grub/menu.lst
title Debian GNU/Linux, kernel 2.6.15.4
root (hd1,0)
kernel /vmlinuz-2.6.15.4 vga=792 root=/dev/sda1 ro
initrd /initrd.img-2.6.15.4
savedefault
boot
### END DEBIAN AUTOMAGIC KERNELS LIST
选择从u盘重新启动电脑,或在另一台电脑上从usb启动,应该会成功。如果有什么问题欢迎联系:
我的 email是:
c_xvidtune@hotmail.com
February 21, 2006

本期Nature杂志的封面是以Google Earth为主题的,而且里边有5篇关于GIS的文章,包括一篇Editorial – Think Global,一篇Feature – Virtual globes: The web-wide world,一篇Commentary – Mapping disaster zones和2篇News – How does Google Earth work? 和 The virtual world gets bigger。主角显然是Google Earth,不过对GIS也做了不少介绍,有兴趣的可以去Nature的网站上在线看。
不得不承认,Google Earth和Google Maps对GIS的推广和普及真的是功不可没阿,尽管从某种意义上说,它还不能称为一个完整的GIS系统。
The GIS software is already an important tool for understanding spatial and temporal factors in a wide range of disciplines. But many scientists that could use GIS do not, and it has remained largely the preserve of specialists. Goodchild is convinced that tools like Google Earth will increase awareness of GIS’s potential and encourage researchers to explore more powerful GIS techniques. “It’s like the effect of the personal computer in the 1970s, where previously there was quite an élite population of computer users,” Goodchild enthuses. “Just as the PC democratized computing, so systems like Google Earth will democratize GIS.”
January 3, 2006
Asynchronous Javascript and Xml(Ajax)是当前非常流行的Web开发技术,有很多成功的应用案例,比如Gmail、 Google Map和Backbase等。作为Rich Internet Application(RIA)的一种实现技术,Ajax不仅可以改善用户体验,还可以简化Web开发,通过将页面高度模块化,数据与表现分离,从而可以使服务器端和客户端都可以很好的解耦,降低开发的复杂度。
事 实上,Ajax并不是什么新的技术,只不过是Javascript一些相对比较高级的特性的综合应用。也正因为此,Ajax与其它RIA实现技术(如 Flash、Java Applet)相比,不需要在客户端安装特殊的插件,具有更广泛的浏览器兼容性。一般来说,Ajax所涉及的Javascript特性包括:
- 通过XMLHttpRequest的异步请求调用。 客户端Javascript可以通过异步的方式,向后端服务器发送请求、响应返回结果,对页面内容进行部分的更新,而不再需要每次由用户通过改变链接地址,对整个页面进行更新。这是Ajax能够实现页面的平滑刷新,提供用户体验的基础。
- 对XML文档的解析与处理。由XMLHttpRequest返回的服务器端信息,可以是纯文本、HTML片段或者是XML文档。对于简单的Ajax应用,纯文本或者HTML片段即可完成任务(如 Gmail);然而对于比较复杂的应用(如 Google Map),服务器返回的信息可能不仅包括页面更新的内容,还包括对页面进行控制的信息,这就需要使用结构化的XML数据,通过Javascript对XML进行解析和处理,获取必要的信息。
- 基于prototype的面向对象的Javascript。从Ajax 的字面意思上讲,这一特性并不是一个Ajax应用所必需的。然而,做为一种RIA,其相当大部分的业务逻辑是由客户端Javascript来实现的,如果 使用传统的变量+函数的顺序执行的方式,其设计和实现都将是相当复杂的。而如果能够引入面向对象的思想,可以大大降低Ajax开发的复杂性。而 Javascript的Prototype属性为这一实现提供了基础。
由于Ajax的热门,网上出现了大量介绍Ajax的网站,文章。根据我的学习过程,比较有代表性的包括:
- Ajax: A New Approach to Web Applications 这是Jesse James Garrett提出Ajax这个名词的文章。尽管Ajax的应用很早就有了,但是这个术语却是Garret在这篇文章里进行了定义和介绍。文章中用到的2幅图,可以帮助我们理解Ajax与普通Web程序的区别。
- Ajax: Getting Started 这是发表在Mozilla Developer Center的一篇文章,通过简单的实例,对Ajax的流程进行了描述,让你对Ajax有一个比较基础的认识,可以作为入手的教程。很多人将其翻译成了中文,发布在网上, 这里便是其中之一,如果习惯看中文的话,可以去看看。
- prototype.js开发笔记 prototype.js 是由Sam Stephenson写的JavaScript包。这段构思奇妙编写良好兼容标准的 代码将承担创造胖客户端, 高交互性WEB应用程序的重担,轻松加入Web 2.0特性。我们对于prototype.js的兴趣主要来于两个方面。一是它提供了一系列封装Ajax逻辑的类,可以为我们编写Ajax代码提供便利。 另一方面,通过对prototype属性、call、apply等方法的应用,其提供了一套使用Javascript完成面向对象编程的机制,可以很大程 度上实现封装、继承、多态等OO特性。 这篇文章的作者通过对prototype.js源代码的分析,介绍了这个包的对象,类,方法和扩展的非官方参考。
- Ajax Patterns 通过1,2的学习,应该已经对Ajax有一个比较清楚地认识了,并可以编写一些简单的Ajax应用了。然而,如果要真正运用Ajax来进行实际的开发,就 会遇到各种各样的问题。这个Wiki站点就可以帮助你更加深入的了解Ajax,你可以在这里找到Ajax开发过程中方方面面的问题及现有的解决方案。不 过,目前有一些问题的解决方案还不完善,比如固定链接的问题。
- Ajaxian 这是一个追踪最新的Ajax应用的Blog。通过这个网站,可以了解最新的Ajax应用实例、方法,新的介绍Ajax技术的文章等等。
- AjaxMatters 这是一个关于Ajax的综合网站,包括大量的Ajax的文章、书籍、类库和工具的介绍。
- Google-ajaxslt 这是Google提供的一套开源的Javascript下的XSL-T实现,主要用于在客户端通过XSL-T对服务器返回的XML进行呈现,是从其 Google Map的开发过程中提取出来的。
- Log4Ajax 对 于Javascript程序的开发,最头疼的一件事情就是对其进行调试。对程序纪录日志,是一种常用的调试方法。这篇文章介绍了如何对Ajax程序纪录日 志,包括客户端和服务器端两方面的内容。事实上,对于调试程序来讲,可能更重要的是客户端的部分。如果只需要在客户端进行日志纪录的话,可以使用 JSLog这个小工具,它提供了一种比较方便的方式进行客户端日志的记录和显示。
这里提到的,只是我读到或使用过的关于Ajax很少的一部分内容,如果你需要了解更多的Ajax的应用框架和开源工具,可以参看Ajax Patterns的 Frameworks页面,而更多的Ajax网站,可以在links页面找到。