Apple公司总裁( Steve Jobs)对史丹佛毕业生演讲全文
http://blog.wenxuecity.com/blogview.php?date=200902&postID=27662
Stay Hungry, Stay Foolish (求知若饥 ,虚心若愚 )
今天,很荣幸参加各位的毕业典礼,这是世界上最好的学校之一。我从来没从大学毕业过,说实话,这是我离大学毕业最近的一刻。今天,我只说三个故事,不谈大道理,三个故事就好。
第一个故事,是关于人生中的点点滴滴如何串连在一起。
我在里德学院(Reed College)待了六个月就办休学了。到我退学前,一共休学了十八个月。那么,我为什 么休学?(听众笑)这得从我出生前讲起。
我的亲生母亲当时是个研究生,年轻未婚妈妈,她决定让别人收养我。她强烈觉得应该让有大学毕业的人收养我,所以我出生时,她就准备让我被一对律师夫妇收养。但是这对夫妻到了最后一刻反悔了,他们想收养女孩。所以在等待收养名单上的一对夫妻,我的养父母,在一天半夜里接到一通电话,问他们「有一名意外出生的男孩,你们要认养他吗?」而他们的回答是「当然要」。后来,我的生母发现,我现在的妈妈从来没有大学毕业,我现在的爸爸则连高中毕业也没有。她拒绝在认养文件上做最后签字。直到几个月后,我的养父母保证将来一定会让我上大学,她的态度才软化。
十七年后,我上大学了。但是当时我无知地选了一所学费几乎跟史丹佛一样贵的大学(听众笑),我那工人阶级的父母将所有积蓄都花在我的学费上。六个月后,我看不出念这个书的价值何在。那时候,我不知道这辈子要干什么,也不知道念大学能对我有什么帮助,只知道我为了念这个书,花光了我父母这辈子的所有积蓄,所以我决定休学,相信船到桥头自然直。
当时这个决定看来相当可怕,可是现在看来,那是我这辈子做过最好的决定之一。(听众笑)
当我休学之后,我再也不用上我没兴趣的必修课,把时间拿去听那些我有兴趣的课。这一点也不浪漫。我没有宿舍,所以我睡在友人家里的地板上,靠着回收可乐空罐的退费五分钱买吃的,每个星期天晚上得走七哩的路绕过大半个镇去印度教的Hare Krishna神庙吃顿好料,我喜欢Hare Krishna神庙的好料。
就这样追随我的好奇与直觉,大部分我所投入过的事务,后来看来都成了无比珍贵的经历。 举个例来说。当时里德学院 有着大概是全国最好的书写教育。校园内的每一张海报上,每个抽屉的标签上,都是美丽的手写字。因为我休学了,可以不照正常选课程序来,所以我跑去上书写课。我学了 serif 与sanserif字体,学到在不同字母组合间变更字间距,学到活字印刷伟大的地方。书写的美好、历史感与艺术感是科学所无法掌握的,我觉得这很迷人。
我没预期过学这些东西能在我生活中起些什么实际作用,不过十年后,当我在设计第一台麦金塔时,我想起了当时所学的东西,所以把这些东西都设计进了麦金塔里,这是第一台能印刷出漂亮东西的计算机。如果我没沉溺于那样一门课里,麦金塔可能就不会有多重字体跟等比例间距字体了。又因为 windows抄袭了麦金塔的使用方式(听众鼓掌大笑),因此,如果当年我没有休学,没有去上那门书写课,大概所有的个人计算机都不会有这些东西,印不出现在我们看到的漂亮的字来了。当然,当我还在大学里时,不可能把这些点点滴滴预先串连在一起,但在十年后的今天回顾,一切就显得非常清楚。
我再说一次,你无法预先把点点滴滴串连起来;只有在未来回顾时, 你才会明白那些点点滴滴是如何串在一起的。所以你得相信,眼前你经历的种种,将来多少会连结在一起。你得信任某个东西,直觉也好, 命运也好,生命也 好,或者业力。这种作法从来没让我失望,我的人生因此变得完全不同.
我的第二个故事,是有关爱与失去。
我很幸运-年轻时就发现自己爱做什么事。我二十岁时,跟Steve Wozniak在我爸妈的车库里开始了苹果计算机的事业。我们拚命工作,苹果计算机在十年间从一间车库里的两个小伙子扩展成了一家员工超过四千人、市价二十亿美金的公司,在那事件之前一年推出了我们最棒的作品-麦金塔计算机( Macintosh),那时我才刚迈入三十岁,然后我被解雇了。
我怎么会被自己创办的公司给解雇了?(听众笑)
嗯,当苹果计算机成长后,我请了一个我以为在经营公司上很有才干的家伙来,他在头几年也确实干得不错。可是我们对未来的愿景不同,最后只好分道扬镳,董事会站在他那边,就这样在我 30岁的时候,公开把我给解雇了。我失去了整个生活的重心,我的人生就这样被摧毁。
有几个月,我不知道要做些什么。我觉得我令企业界的前辈们失望-我把他们交给我的接力棒弄丢了。我见了创办HP的 David Packard跟创办Intel的 Bob Noyce,跟他们说很抱歉我把事情给搞砸了。我成了公众眼中失败的示范,我甚至想要离开硅谷。
但是渐渐的,我发现,我还是喜爱那些我做过的事情,在苹果计算机中经历的那些事丝毫没有改变我爱做的事。虽然我被否定了,可是我还是爱做那些事情,所以我决定从头来过。
当时我没发现,但现在看来,被苹果计算机开除,是我所经历过最好的事情。成功的沉重被从头来过的轻松所取代,每件事情都不那么确定,让我自由进入这辈子最有创意的年代。
接下来五年,我开了一家叫做 NeXT的公司,又开一家叫做 Pixar的公司,也跟后来的老婆(Laurene)谈起了恋爱。 Pixar接着制作了世界上第一部全计算机动画电影,玩具总动员( Toy Story),现在是世界上最成功的动画制作公司(听众鼓掌大笑)。然后,苹果计算机买下了 NeXT,我回到了苹果,我们在NeXT发展的技术成了苹果计算机后来复兴的核心部份。
我也有了个美妙的家庭。我很确定,如果当年苹果计算机没开除我,就不会发生这些事情。这帖药很苦口,可是我想苹果计算机这个病人需要这帖药。有时候,人生会用砖头打你的头。不要丧失信心。我确信我爱我所做的事情,这就是这些年来支持我继续走下去的唯一理由
你得找出你的最爱,工作上是如此,人生伴侣也是如此。
你的工作将占掉你人生的一大部分,唯一真正获得满足的方法就是做你相信是伟大的工作,而唯一做伟大工作的方法是爱你所做的事。如果你还没找到这些事,继续找,别停顿。尽你全心全力,你知道你一定会找到。而且,如同任何伟大的事业,事情只会随着时间愈来愈好。所以,在你找到之前,继续找,别停顿。(听众鼓掌, Jobs喝水)
我的第三个故事,是关于死亡。
当我十七岁时,我读到一则格言,好像是「把每一天都当成生命中的最后一天,你就会轻松自在(听众笑)这对我影响深远,在过去33年里,我每天早上都会照镜子,自问:「如果今天是此生最后一日,我今天要做些什么?」每当我连续太多天都得到一个「没事做」的答案时,我就知道我必须有所改变了。
提醒自己快死了,是我在人生中面临重大决定时,所用过最重要的方法。因为几乎每件事-所有外界期望、所有的名声、所有对困窘或失败的恐惧-在面对死亡时,都消失了,只有最真实重要的东西才会留下提醒自己快死了,是我所知避免掉入畏惧失去的陷阱里最好的方法。人,生不带来、死不带去,没理由不能顺心而为。
一年前,我被诊断出癌症。我在早上七点半作断层扫瞄,在胰脏清楚出现一个肿瘤,我连胰脏是什么都不知道。医生告诉我,那几乎可以确定是一种不治之症,预计我大概活不到三到六个月了。医生建议我回家,好好跟亲人们聚一聚,这是医生对临终病人的标准建议。那代表你得试着在几个月内把你将来十年想跟小孩讲的话讲完。那代表你得把每件事情搞定,家人才会尽量轻松。那代表你得跟人说再见了。
我整天想着那个诊断结果,那天晚上做了一次切片,从喉咙伸入一个内视镜,穿过胃进到肠子,将探针伸进胰脏,取了一些肿瘤细胞出来。我打了镇静剂,不醒人事,但是我老婆在场。她后来跟我说,当医生们用显微镜看过那些细胞后,他们都哭了,因为那是非常少见的一种胰脏癌,可以用手术治好。所以我接受了手术,康复了。(听众鼓掌)
这是我最接近死亡的时候,我希望那会继续是未来几十年内最接近的一次。经历此事后,我可以比先前死亡只是纯粹想象时,要能更肯定地告诉你们下面这些: 没有人想死。即使那些想上天堂的人,也想活着上天堂。(听众笑)
但是死亡是我们共同的终点,没有人逃得过。这是注定的,因为死亡很可能就是生命中最棒的发明,是生命交替的媒介,送走老人们,给新生代开出道路。现在你们是新生代,但是不久的将来,你们也会逐渐变老,被送出人生的舞台。抱歉讲得这么戏剧化,但是这是真的。
你们的时间有限,所以不要浪费时间活在别人的生活里。不要被教条所局限– 盲从教条就是活在别人思考结果里。不要让别人的意见淹没了你内在的心声。最重要的,拥有追随自己内心与直觉的勇气,你的内心与直觉多少已经知道你真正想要成为什么样的人),任何其他事物都是次要的。(听众鼓掌)
在我年轻时,有本神奇的杂志叫做《Whole Earth Catalog》,当年这可是我们的经典读物。那是一位住在离这不远的 Menlo Park的Stewart Brand发行的,他把杂志办得很有诗意。那是 1960年代末期,个人计算机跟桌面版还没出现,所有内容都是打字机、剪刀跟拍立得相机做出来的。杂志内容有点像印在纸上的平面 Google,在 Google 出现之前35年就有了:这本杂志很理想主义,充满新奇工具与伟大的见解。
Stewart跟他的团队出版了好几期的《Whole Earth Catalog》,然后很自然的,最后出了停刊号。当时是 1970年代中期,我正是你们现在这个年龄的时候。在停刊号的封底,有张清晨乡间小路的照片,那种你四处搭便车冒险旅行时会经过的乡间小路。在照片下印了行小字: 求知若饥,虚心若愚(Stay Hungry , Stay Foolish)。那是他们亲笔写下的告别讯息,我总是以此自许。当你们毕业,展开新生活,我也以此祝福你们。
求知若饥,虚心若愚(Stay Hungry , Stay Foolish)。非常谢谢大家。(听众起立鼓掌二分钟)
Thursday, February 19, 2009
Tuesday, February 17, 2009
Free Defragmentation Utilities, Free Defraggers and Defragmentors (thefreecountry.com)
Free Defragmentation Utilities / Free Defragmentors / Free Defrag
The free defragmentation utilities listed on this page purport to defragment your hard disk, that is, they move the various fragments of your file so that they are in one contiguous chunk. A defragmented hard disk has at least a couple of advantages over a badly fragmented one - your system may operate faster, since the operating system does not have to move the drive head of the drive all over the hard disk to load the different portions of a file, and it is generally slightly easier to recover an accidentally deleted file, since the various segments of the file are placed in contiguous clusters.
Note that this page does not cover commercial disk defragmentation tools like O&O Defrag Professional. Be aware also that if you use Windows, you already have a defragmentation tool installed; Windows comes with a somewhat slow but otherwise functional defragmentation utility.
Related Pages
* Free Partitioning Software (Copy, Resize, Move, Create, Undelete Partitions)
* Free Data Recovery, File and Partition Recovery, Undelete and Unformat Utilities
* Free CD and DVD Burning (Writing) Software
* Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
* Free Utilities to Delete Currently Used, Locked, Undeletable, Busy Files
* Free Antivirus Utilities
* Free Secure File / Disk Deletion and Wiping Tools
* Free Spyware and Adware Removal (and Prevention) Tools
* Free Digital Audio / Sound Editors
Disclaimer
The information provided on this page comes without any warranty whatsoever. Use it at your own risk. Just because a program, book, document or service is listed here or has a good review does not mean that I endorse or approve of the program or of any of its contents. All the other standard disclaimers also apply.
Free Defraggers / Defragmenters / Defragmentation Tools
WinContig New
WinContig allows you to defragment your hard disk, folders and/or individual files. It works on Windows 2000, XP and Vista. You can also use Windows Task Scheduler to create defragmentation schedules. It can either (at your option) defragment a file into the first free area it finds, or look for an area that best fits the file you are defragmenting. If there is no space big enough to fit the defragmented file, it will try to defrag as much of the file as possible.
Ultra Defragmenter
Ultra Defragmenter is a defrag tool for Windows 2000, XP, Server 2003 and Vista. You can control it either via the graphical user interface (GUI) or the command line. It is released with source code and is distributed under the terms of the GNU General Public License.
JkDefrag
JkDefrag is a Windows 2000/2003/XP/Vista disk defrag utility that runs automatically on all your drives when invoked. You can force it to defragment only a particular volume or file if you wish (via the command line), although the default is to defrag everything. You can also invoke it via administrator scripts, run it in the background via Windows Scheduler, and use the Windows Screen Saver version to run whenever the screen saver is invoked.
Auslogics Disk Defrag
Auslogics Disk Defrag works under Windows 2000, XP, 2003 and Vista to defragment your hard disk.
Contig
Contig is a command line defragger for Windows NT, 2000 and XP. You invoke it from a Windows command prompt with the name of the file you want defragmented. It's useful if you don't want to run the built-in Windows defragmentation tool just to defragment a single file.
PageDefrag
PageDefrag defrags your Windows page file, Registry hives, event log files and hibernation files. These are files that the built-in Windows defragger is unable to defragment since they are open for exclusive access when Windows is running. PageDefrag is a boot-time defragmentation utility - it reboots the computer and defragments those files at boot-time, that is, before all the subsystems in Windows start up. The utility only works in Windows NT, 2000 and XP.
SpeeDefrag
SpeeDefrag is a program that restarts your computer and runs only the Windows defrag program. With only the Windows defragmenter running, defragmentation will presumably run faster (provided you don't count the time it takes to reboot the system). You can also schedule the defrag run, as well as shutdown the computer after defragmentation. The program runs under Windows XP and Vista.
DefragNT
DefragNT (possibly renamed to DefragXP by the time you read it) is a Windows NT, 2000 and XP defrag utility. It supports NTFS partitions only on XP but handles FAT partitions under all three OSes.
Defragmentor Lite CL
Defragmentor Lite CL is a command line tool that allows you to defragment a file or group of files. It works on Windows 2003, XP and 2000.
Related Pages
* How to Perform a Full Manual Defragmentation of Your Hard Disk Under Windows Vista
* Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
* Free Partitioning Software - Copy, Create, Move, Resize, Convert, Undelete Partitions
* Free CD and DVD Burners and Copying Software
* Free Antivirus Software
* Free Spyware/Adware/Trojan/Hijackers Detection, Removal and Prevention
* Free Personal Firewalls
* How to Create a Bootable Windows XP Setup CD/DVD on a Preinstalled Windows System
* Which Web Host Would You Recommend? (FAQ)
The free defragmentation utilities listed on this page purport to defragment your hard disk, that is, they move the various fragments of your file so that they are in one contiguous chunk. A defragmented hard disk has at least a couple of advantages over a badly fragmented one - your system may operate faster, since the operating system does not have to move the drive head of the drive all over the hard disk to load the different portions of a file, and it is generally slightly easier to recover an accidentally deleted file, since the various segments of the file are placed in contiguous clusters.
Note that this page does not cover commercial disk defragmentation tools like O&O Defrag Professional. Be aware also that if you use Windows, you already have a defragmentation tool installed; Windows comes with a somewhat slow but otherwise functional defragmentation utility.
Related Pages
* Free Partitioning Software (Copy, Resize, Move, Create, Undelete Partitions)
* Free Data Recovery, File and Partition Recovery, Undelete and Unformat Utilities
* Free CD and DVD Burning (Writing) Software
* Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
* Free Utilities to Delete Currently Used, Locked, Undeletable, Busy Files
* Free Antivirus Utilities
* Free Secure File / Disk Deletion and Wiping Tools
* Free Spyware and Adware Removal (and Prevention) Tools
* Free Digital Audio / Sound Editors
Disclaimer
The information provided on this page comes without any warranty whatsoever. Use it at your own risk. Just because a program, book, document or service is listed here or has a good review does not mean that I endorse or approve of the program or of any of its contents. All the other standard disclaimers also apply.
Free Defraggers / Defragmenters / Defragmentation Tools
WinContig New
WinContig allows you to defragment your hard disk, folders and/or individual files. It works on Windows 2000, XP and Vista. You can also use Windows Task Scheduler to create defragmentation schedules. It can either (at your option) defragment a file into the first free area it finds, or look for an area that best fits the file you are defragmenting. If there is no space big enough to fit the defragmented file, it will try to defrag as much of the file as possible.
Ultra Defragmenter
Ultra Defragmenter is a defrag tool for Windows 2000, XP, Server 2003 and Vista. You can control it either via the graphical user interface (GUI) or the command line. It is released with source code and is distributed under the terms of the GNU General Public License.
JkDefrag
JkDefrag is a Windows 2000/2003/XP/Vista disk defrag utility that runs automatically on all your drives when invoked. You can force it to defragment only a particular volume or file if you wish (via the command line), although the default is to defrag everything. You can also invoke it via administrator scripts, run it in the background via Windows Scheduler, and use the Windows Screen Saver version to run whenever the screen saver is invoked.
Auslogics Disk Defrag
Auslogics Disk Defrag works under Windows 2000, XP, 2003 and Vista to defragment your hard disk.
Contig
Contig is a command line defragger for Windows NT, 2000 and XP. You invoke it from a Windows command prompt with the name of the file you want defragmented. It's useful if you don't want to run the built-in Windows defragmentation tool just to defragment a single file.
PageDefrag
PageDefrag defrags your Windows page file, Registry hives, event log files and hibernation files. These are files that the built-in Windows defragger is unable to defragment since they are open for exclusive access when Windows is running. PageDefrag is a boot-time defragmentation utility - it reboots the computer and defragments those files at boot-time, that is, before all the subsystems in Windows start up. The utility only works in Windows NT, 2000 and XP.
SpeeDefrag
SpeeDefrag is a program that restarts your computer and runs only the Windows defrag program. With only the Windows defragmenter running, defragmentation will presumably run faster (provided you don't count the time it takes to reboot the system). You can also schedule the defrag run, as well as shutdown the computer after defragmentation. The program runs under Windows XP and Vista.
DefragNT
DefragNT (possibly renamed to DefragXP by the time you read it) is a Windows NT, 2000 and XP defrag utility. It supports NTFS partitions only on XP but handles FAT partitions under all three OSes.
Defragmentor Lite CL
Defragmentor Lite CL is a command line tool that allows you to defragment a file or group of files. It works on Windows 2003, XP and 2000.
Related Pages
* How to Perform a Full Manual Defragmentation of Your Hard Disk Under Windows Vista
* Free Hard Disk Backup and Restore, Hard Disk Image and Cloning Utilities
* Free Partitioning Software - Copy, Create, Move, Resize, Convert, Undelete Partitions
* Free CD and DVD Burners and Copying Software
* Free Antivirus Software
* Free Spyware/Adware/Trojan/Hijackers Detection, Removal and Prevention
* Free Personal Firewalls
* How to Create a Bootable Windows XP Setup CD/DVD on a Preinstalled Windows System
* Which Web Host Would You Recommend? (FAQ)
Tuesday, February 10, 2009
Efficient and DYNAMIC Server-Side Paging with SQL Server 2000
Efficient and DYNAMIC Server-Side Paging with SQL Server 2000
(From Jeff's SQL Server Blog:
http://weblogs.sqlteam.com/jeffs/archive/2004/03/22/1085.aspx)
(UPDATE: If you are using SQL Server 2005 or above, there is a much easier and more efficient way to page your data.)
Here is a completely dynamic version of my paging technique in the form of a stored procedure. Just pass in a short SQL statement, the Order By clause, and the start row and end row you'd like to return in the resultset. The stored procedure then will process your SQL in the order specified and return only the rows indicated. It is based on the same principals I presented in my blog several months ago, in which the paging technique is described.
The basic idea is to process as few rows as possible; this means finding the starting point, and then returning all rows “past“ that starting point until the desired number of rows has been returned.
The stored procedure is called “ReturnPage“ and uses the following arguments:
* @Select = the select statement to return
* @OrderBy = the order by clause; don't include the “ORDER BY“ part, just the columns. You must include ASC or DESC for each column in the sort
* @StartRow = the first row to return
* @EndRow = the end row to return
A minor tweak in the code could allow for a @RowCount argument instead of @EndRow if you wish.
Let's start with some examples from northwind:
returnpage 'select contactTitle, City, CustomerID from customers', 'ContactTitle ASC, City DESC, CustomerID ASC', 1, 10
returnpage 'select * from Orders','EmployeeID ASC, OrderDate DESC, OrderID ASC',12,31
returnpage 'select * from [order details]','productID ASC, Quantity DESC, OrderID asc',30,45
And a couple of caveats / notes about this procedure:
* First off, it is still in beta testing so use at your own risk. Please give me some feedback !
* As written, the ASC/DESC designation is required for each column in the @OrderBy argument, unlike in a regular SELECT, in which ASC is the default
* Currently, all column names in the @OrderBy argument must consist of only 1 word; even using [ ] around a column name will not work. I didn't feel like spending too much time on the parsing routine, but feel free to improve upon it in your own implementation.
* Feel free to print out the @SQL statement generated by the routine to see how it works
* As a reminder, a requirement of my algorithm is that the sort columns must form a unique constraint for the resultset; you cannot sort only by “Customer Name“ if it is not always unique for each row -- you would need to include “CustomerID“ as a secondary sort. Notice how I have done this in all of the Northwind examples.
* There should not be any Null values in the @OrderBy columns for this technique to work
I hope you enjoy and it works fine for you. It might seem like this routine is doing a lot of work to parse the arguments and generate the T-SQL to execute on each call, but it is all done on the server and the parsing is extemely quick since it requires no I/O or database access -- it's all just in-memory manipulation of variables.
Anway, like the other paging implementations, it's not perfect, but it is truly a 100% server side implementation and it will process as few rows as theoretically possible for a dynamically sortable paging solution.
Final note: if anyone is interested, please let me know and I can provide some more information about how this procedure was written and how it works. To keep the code somewhat compact, I'm sure it's not very clear. The algorithm to generate the WHERE clause was one of the more challenging ones I've written recently.
The original post describing the paging technique can be found here: http://weblogs.sqlteam.com/jeffs/archive/2003/12/22/672.aspx
CREATE PROCEDURE ReturnPage(@Select varchar(1000), @OrderBy varchar(1000),
@StartRow int, @EndRow int)
AS
BEGIN
declare @ColList varchar(2000);
declare @Where varchar(2000);
declare @i int;
declare @i2 int;
declare @tmp varchar(1000);
declare @dec varchar(1000);
declare @f varchar(100);
declare @d varchar(100);
declare @Symbol char(2);
declare @SQL varchar(5000);
declare @Sort varchar(1000);
set @Sort = @OrderBy + ', '
set @dec = ''
set @Where = ''
set @SQL = ''
set @i = charindex(',' , @Sort)
while @i != 0
begin
set @tmp = left(@Sort,@i-1)
set @i2 = charindex(' ', @tmp)
set @f = ltrim(rtrim(left(@tmp,@i2-1)))
set @d = ltrim(rtrim(substring(@tmp,@i2+1,100)))
set @Sort = rtrim(ltrim(substring(@Sort,@i+1,100)))
set @i = charindex(',', @Sort)
set @symbol = case when @d = 'ASC' then '>' else '<' end +
case when @i=0 then '=' else '' end
set @dec = @dec + 'declare @' + @f + ' sql_variant; '
set @ColList = isnull(replace(replace(@colList,'>','='),'<','=') + ' and ','') +
@f + @Symbol + ' @' + @f
set @Where = @Where + ' OR (' + @ColList + ') '
set @SQL = @SQL + ', @' + @f + '= ' + @f
end
set @SQL = @dec + ' ' +
'SET ROWCOUNT ' + convert(varchar(10), @StartRow) + '; ' +
'SELECT ' + substring(@SQL,3,7000) + ' from (' + @Select + ') a ORDER BY ' +
@OrderBy + '; ' + 'SET ROWCOUNT ' +
convert(varchar(10), 1 + @EndRow - @StartRow) + '; ' +
'select * from (' + @Select + ') a WHERE ' +
substring(@Where,4,7000) + ' ORDER BY ' + @OrderBy + '; SET ROWCOUNT 0;'
exec(@SQL)
END
(From Jeff's SQL Server Blog:
http://weblogs.sqlteam.com/jeffs/archive/2004/03/22/1085.aspx)
(UPDATE: If you are using SQL Server 2005 or above, there is a much easier and more efficient way to page your data.)
Here is a completely dynamic version of my paging technique in the form of a stored procedure. Just pass in a short SQL statement, the Order By clause, and the start row and end row you'd like to return in the resultset. The stored procedure then will process your SQL in the order specified and return only the rows indicated. It is based on the same principals I presented in my blog several months ago, in which the paging technique is described.
The basic idea is to process as few rows as possible; this means finding the starting point, and then returning all rows “past“ that starting point until the desired number of rows has been returned.
The stored procedure is called “ReturnPage“ and uses the following arguments:
* @Select = the select statement to return
* @OrderBy = the order by clause; don't include the “ORDER BY“ part, just the columns. You must include ASC or DESC for each column in the sort
* @StartRow = the first row to return
* @EndRow = the end row to return
A minor tweak in the code could allow for a @RowCount argument instead of @EndRow if you wish.
Let's start with some examples from northwind:
returnpage 'select contactTitle, City, CustomerID from customers', 'ContactTitle ASC, City DESC, CustomerID ASC', 1, 10
returnpage 'select * from Orders','EmployeeID ASC, OrderDate DESC, OrderID ASC',12,31
returnpage 'select * from [order details]','productID ASC, Quantity DESC, OrderID asc',30,45
And a couple of caveats / notes about this procedure:
* First off, it is still in beta testing so use at your own risk. Please give me some feedback !
* As written, the ASC/DESC designation is required for each column in the @OrderBy argument, unlike in a regular SELECT, in which ASC is the default
* Currently, all column names in the @OrderBy argument must consist of only 1 word; even using [ ] around a column name will not work. I didn't feel like spending too much time on the parsing routine, but feel free to improve upon it in your own implementation.
* Feel free to print out the @SQL statement generated by the routine to see how it works
* As a reminder, a requirement of my algorithm is that the sort columns must form a unique constraint for the resultset; you cannot sort only by “Customer Name“ if it is not always unique for each row -- you would need to include “CustomerID“ as a secondary sort. Notice how I have done this in all of the Northwind examples.
* There should not be any Null values in the @OrderBy columns for this technique to work
I hope you enjoy and it works fine for you. It might seem like this routine is doing a lot of work to parse the arguments and generate the T-SQL to execute on each call, but it is all done on the server and the parsing is extemely quick since it requires no I/O or database access -- it's all just in-memory manipulation of variables.
Anway, like the other paging implementations, it's not perfect, but it is truly a 100% server side implementation and it will process as few rows as theoretically possible for a dynamically sortable paging solution.
Final note: if anyone is interested, please let me know and I can provide some more information about how this procedure was written and how it works. To keep the code somewhat compact, I'm sure it's not very clear. The algorithm to generate the WHERE clause was one of the more challenging ones I've written recently.
The original post describing the paging technique can be found here: http://weblogs.sqlteam.com/jeffs/archive/2003/12/22/672.aspx
CREATE PROCEDURE ReturnPage(@Select varchar(1000), @OrderBy varchar(1000),
@StartRow int, @EndRow int)
AS
BEGIN
declare @ColList varchar(2000);
declare @Where varchar(2000);
declare @i int;
declare @i2 int;
declare @tmp varchar(1000);
declare @dec varchar(1000);
declare @f varchar(100);
declare @d varchar(100);
declare @Symbol char(2);
declare @SQL varchar(5000);
declare @Sort varchar(1000);
set @Sort = @OrderBy + ', '
set @dec = ''
set @Where = ''
set @SQL = ''
set @i = charindex(',' , @Sort)
while @i != 0
begin
set @tmp = left(@Sort,@i-1)
set @i2 = charindex(' ', @tmp)
set @f = ltrim(rtrim(left(@tmp,@i2-1)))
set @d = ltrim(rtrim(substring(@tmp,@i2+1,100)))
set @Sort = rtrim(ltrim(substring(@Sort,@i+1,100)))
set @i = charindex(',', @Sort)
set @symbol = case when @d = 'ASC' then '>' else '<' end +
case when @i=0 then '=' else '' end
set @dec = @dec + 'declare @' + @f + ' sql_variant; '
set @ColList = isnull(replace(replace(@colList,'>','='),'<','=') + ' and ','') +
@f + @Symbol + ' @' + @f
set @Where = @Where + ' OR (' + @ColList + ') '
set @SQL = @SQL + ', @' + @f + '= ' + @f
end
set @SQL = @dec + ' ' +
'SET ROWCOUNT ' + convert(varchar(10), @StartRow) + '; ' +
'SELECT ' + substring(@SQL,3,7000) + ' from (' + @Select + ') a ORDER BY ' +
@OrderBy + '; ' + 'SET ROWCOUNT ' +
convert(varchar(10), 1 + @EndRow - @StartRow) + '; ' +
'select * from (' + @Select + ') a WHERE ' +
substring(@Where,4,7000) + ' ORDER BY ' + @OrderBy + '; SET ROWCOUNT 0;'
exec(@SQL)
END
Query in Pages - TSQL (2005)
WITH myaddress AS
(
SELECT ROW_NUMBER() OVER(ORDER BY id) AS 'RowNumber', *
FROM address
)
SELECT *
FROM myaddress
WHERE RowNumber BETWEEN 790000 AND 790050;
(
SELECT ROW_NUMBER() OVER(ORDER BY id) AS 'RowNumber', *
FROM address
)
SELECT *
FROM myaddress
WHERE RowNumber BETWEEN 790000 AND 790050;
Friday, January 30, 2009
哈佛图书馆墙训:像狗一样地学 绅士一样地玩 (新华网)
哈佛图书馆墙训:像狗一样地学 绅士一样地玩 新华网
http://news.wenxuecity.com/messages/200901/news-gb2312-783244.html
作为闻名于世的学府,哈佛大学培养了许多名人,他们中有33位诺贝尔奖获得者、7位美国总统以及各行各业的职业精英。究竟是什么使哈佛成为精英的摇篮?哈佛学子接受了什么样的精神和理念?这些问题吸引着成千上万的人去探知其中的答案。
哈佛图书馆墙上的20条训言似乎已经给出了答案。短短数语,引发深思,给人启迪。
此刻打盹,你将做梦;而此刻学习,你将圆梦
哈佛老师经常给学生这样的告诫:如果你想在进入社会后,在任何时候任何场合下都能得心应手并且得到应有的评价,那么你在哈佛的学习期间,就没有晒太阳的时间。在哈佛广为流传的一句格言是“忙完秋收忙秋种,学习,学习,再学习。”
人的时间和精力都是有限的,所以,要利用时间抓紧学习,而不是将所有的业余时间都用来打瞌睡。
有的人会这样说:“我只是在业余时间打盹而已,业余时间干吗把自己弄得那么紧张?”爱因斯坦就曾提出:“人的差异在于业余时间。”我的一位在哈佛任教的朋友也告诉我说,只要知道一个青年怎样度过他的业余时间,就能预言出这个青年的前程怎样。
20世纪初,在数学界有这样一道难题,那就是2的76次方减去1的结果是不是人们所猜想的质数。很多科学家都在努力地攻克这一数学难关,但结果并不如愿。1903年,在纽约的数学学会上,一位叫做科尔的科学家通过令人信服的运算论证,成功地证明了这道难题。
人们在惊诧和赞许之余,向科尔问道:“您论证这个课题一共花了多少时间?”科尔回答:“3年内的全部星期天。”
同样,加拿大医学教育家奥斯勒也是利用业余时间作出成就的典范。奥斯勒对人类最大的贡献,就是成功地研究了第三种血细胞。他为了从繁忙的工作中挤出时间读书,规定自己在睡觉之前必须读15分钟的书。不管忙碌到多晚,都坚持这一习惯不改变。这个习惯他整整坚持了半个世纪,共读了1000多本书,取得了令人瞩目的成绩。
我荒废的今日,正是昨天殒身之人祈求的明日
闻名于世的约翰霍普金斯学院的创始人、牛津大学医学院的讲座教授、被英国国王册封为爵士的威廉·奥斯勒在年轻时,也曾为自己的前途感到迷茫。一次,他在读书时看到了一句话,给了他很大的启发。这句话是“最重要的就是不要去看远方模糊的事,而是做手边清楚的事。”
对此,哈佛提醒学生说“我荒废的今日,正是昨天殒身之人祈求的明日”。明天再美好,也不如抓住眼下的今天多做点实事。
获得哈佛大学荣誉学位的发明家、科学家本杰明·富兰克林有一次接到一个年轻人的求教电话,并与他约好了见面的时间和地点。当年轻人如约而至时,本杰明的房门大敞着,而眼前的房子里却乱七八糟、一片狼藉,年轻人很是意外。
没等他开口,本杰明就招呼道:“你看我这房间,太不整洁了,请你在门外等候一分钟,我收拾一下,你再进来吧。”然后本杰明就轻轻地关上了房门。
不到一分钟的时间,本杰明就又打开了房门,热情地把年轻人让进客厅。这时,年轻人的眼前展现出另一番景象———房间内的一切已变得井然有序,而且有两杯倒好的红酒,在淡淡的香气里漾着微波。
年轻人在诧异中,还没有把满腹的有关人生和事业的疑难问题向本杰明讲出来,本杰明就非常客气地说道:“干杯!你可以走了。”
手持酒杯的年轻人一下子愣住了,带着一丝尴尬和遗憾说:“我还没向您请教呢……”
“这些……难道还不够吗?”本杰明一边微笑一边扫视着自己的房间说,“你进来又有一分钟了。”
“一分钟……”年轻人若有所思地说,“我懂了,您让我明白用一分钟的时间可以做许多事情,可以改变许多事情的深刻道理。”
珍惜眼前的每一分每一秒,也就珍惜了所拥有的今天。哈佛的这句话实际上揭示了一种人生哲学,那就是人生要以珍惜的态度把握时间,从今天开始,从现在做起。
觉得为时已晚的时候,恰恰是最早的时候
安曼曾经是纽约港务局的工程师,工作多年后按规定退休。开始的时候,他很是失落。但他很快就高兴起来,因为他有了一个伟大的想法。他想创办一家自己的工程公司,要把办公楼开到全球各个角落。
安曼开始一步一个脚印地实施着自己的计划,设计的建筑遍布世界各地。在退休后的三十多年里,他实践着自己在工作中没有机会尝试的大胆和新奇的设计,不停地创造着一个又一个令世人瞩目的经典:埃塞俄比亚首都亚的斯亚贝巴机场,华盛顿杜勒斯机场,伊朗高速公路系统,宾夕法尼亚州匹兹堡市中心建筑群……这些作品被当作大学建筑系和工程系教科书上常用的范例,也是安曼伟大梦想的见证。86岁的时候,他完成最后一个作品———当时世界上最长的悬体公路桥———纽约韦拉扎诺海峡桥。
生活中,很多事情都是这样,如果你愿意开始,认清目标,打定主意去做一件事,永远不会嫌晚。
今天不走,明天要跑
在哈佛,教授们会时常提醒学生们要做好时间管理,并列举如下事例:
当今世界上最大的化学公司———杜邦公司的总裁格劳福特·格林瓦特,每天挤出一小时来研究蜂鸟,并用专门的设备给蜂鸟拍照。权威人士把他写的关于蜂鸟的书称为自然历史丛书中的杰出作品。
休格·布莱克在进入美国议会前,并未受过高等教育。他从百忙中每天挤出一小时到国会图书馆去博览群书,包括政治、历史、哲学、诗歌等方面的书,数年如一日,就是在议会工作最忙的日子里也从未间断过。后来他成了美国最高法院的法官。
一位名叫尼古拉的希腊籍电梯维修工对现代科学很感兴趣,他每天下班后到晚饭前,总要花一小时时间来攻读核物理学方面的书籍。随着知识的积累,一个念头跃入他的脑海。1948年,他提出了建立一种新型粒子加速器的计划。这种加速器比当时其他类型的加速器造价便宜而且更强有力。他把计划递交给美国原子能委员会做试验,又再经改进,这台加速器为美国节省了7000万美元。尼古拉得到了1万美元的奖励,还被聘请到加州大学放射实验室工作。
在人生的道路上,你停步不前,但有人却在拼命赶路。也许当你站立的时候,他还在你的后面向前追赶,但当你再一回望时,已看不到他的身影了,因为,他已经跑到你的前面了,现在需要你来追赶他了。所以,你不能停步,你要不断向前,不断超越。
狗一样地学,绅士一样地玩
我们说要珍惜时间,努力为实现理想而打拼,但有一点要注意,那就是不要一味地拼命,也要有适度的休息和放松。对此,哈佛有个很贴切的说法,叫做“狗一样地学,绅士一样地玩”。话虽略显粗俗,但揭示的道理却很深刻。
在哈佛,虽然学习强度很大,学生们承受着很大的学习压力,但他们也不提倡学生把所有的时间都用来学习。他们认为,学要尽力,玩也不能忽视。哈佛的学生也说,哈佛的课余生活要胜过正规学习。而哈佛也意识到适度的课外活动不但不会背离教育使命,而且还会给教育使命以支持。因此,他们提出要像“绅士一样地玩 ”。
在哈佛,学生们除了紧张地学习,还会参加学校组织的多种艺术活动,比如音乐会、戏剧演出、舞蹈表演及各种艺术展览等,此外,哈佛每年还会举办艺术节,以活跃学生的业余生活。这些充满着浓厚艺术氛围的活动不仅让学生接受了艺术教育和熏陶,而且提高了学生的艺术修养和审美能力。
哈佛的理念就是要求你在紧张的学习和工作后,能够暂时地完全忘记它们,像投入工作那样投入玩耍,尽情地放松。的确,在你尽心休闲的时候,所得到的体力和精力的恢复会为你下一阶段的奋斗增添无穷的动力。所以,在前进的路上,你不仅要勤奋努力,更要学会放松。
现在流的口水,将成为明天的眼泪
成功与安逸是不可兼得的,选择了其一,就必定放弃了另一结局。正像哈佛所提醒的那样:现在流的口水,将成为明天的眼泪。今天不努力,明天必定遭罪。
我的邻居查尔斯曾经在哈佛度过4年的大学时光,他现在就职于纽约的一家软件公司,做他最擅长的行政管理工作。不久前,他的公司被一家法国公司兼并了。在兼并合同签订的当天,公司的新总裁宣布:“我们不会随意裁员,但如果你的法语太差,导致无法和其他员工交流,那么,不管是多高职位的人,我们都不得不请你离开。这个周末我们将进行一次法语考试,只有考试及格的人才能继续在这里工作。”
散会后,几乎所有的人都拥向了图书馆,他们这时才意识到要赶快补习法语了。只有查尔斯像平常一样直接回家了,同事们都认为他已经准备放弃这份工作了,毕竟,哈佛的学习背景和公司管理层的工作经验会帮助他轻而易举地找到另一份不错的工作。
然而,令所有人都想不到的是,考试结果出来后,这个在大家眼中没有希望的人却考了最高分。原来,查尔斯在毕业后来到这家公司后,他在工作中发现与法国人打交道的机会特别多,不会法语会使自己的工作受到很大的限制,所以,他很早就开始自学法语了。他利用可利用的一切时间,每天坚持学习,最终学有所获。
在哈佛,你从来看不到学生在偷懒,在消磨时间。当若干年后回想起曾经的梦想时,希望带给你的是无尽的欣慰笑容,而不是因蹉跎而流下的悔恨泪水。
投资未来的人,是忠于现实的人
作为世界知名的学府,哈佛十分强调要有长远眼光,为未来投资。要投资未来,就要定好未来的投资方向,也就是要及早地设定人生目标。没有目标,就谈不到发展,更谈不上成功。
哈佛大学曾进行过这样一项跟踪调查,对象是一群在智力、学历和环境等方面条件差不多的年轻人。调查结果发现:27%的人没有目标;60%的人目标模糊;10%的人有着清晰但比较短期的目标;其余3%的人有着清晰而长远的目标。
以后的岁月,他们行进在各自的人生旅途中。25年后,哈佛再次对这群学生进行了跟踪调查。结果是这样的:
3%的人,在25年间朝着一个方向不懈努力,几乎都成为社会各界的成功人士,其中不乏行业领袖和社会精英;10%的人,他们的短期目标不断地实现,成为各个领域中的专业人士,大都生活在社会的中上层;60%的人,他们安稳地生活与工作,但都没有什么特别成绩,几乎都生活在社会的中下层;剩下27%的人,他们的生活没有目标,过得很不如意,并且常常在抱怨他人,抱怨社会,当然,也抱怨自己。
其实,他们之间的差别仅仅在于:25年前,他们中的一些人就已经知道自己最想要做的是什么,而另一些人则不清楚或不很清楚。这个调查生动地说明了明确生活目标对于人生成功的重要意义。
哈佛图书馆的二十条训言
1.此刻打盹,你将做梦;而此刻学习,你将圆梦。
2.我荒废的今日,正是昨日殒身之人祈求的明日。
3.觉得为时已晚的时候,恰恰是最早的时候。
4.勿将今日之事拖到明日。
5.学习时的苦痛是暂时的,未学到的痛苦是终生的。
6.学习这件事,不是缺乏时间,而是缺乏努力。
7.幸福或许不排名次,但成功必排名次。
8.学习并不是人生的全部。但既然连人生的一部分———学习也无法征服,还能做什么呢?
9.请享受无法回避的痛苦。
10.只有比别人更早、更勤奋地努力,才能尝到成功的滋味。
11.谁也不能随随便便成功,它来自彻底的自我管理和毅力。
12.时间在流逝。
13.现在流的口水,将成为明天的眼泪。
14.狗一样地学,绅士一样地玩。
15.今天不走,明天要跑。
16.投资未来的人,是忠于现实的人。
17.受教育程度代表收入。
18.一天过完,不会再来。
19.即使现在,对手也不停地翻动书页。
20.没有艰辛,便无所获。
http://news.wenxuecity.com/messages/200901/news-gb2312-783244.html
作为闻名于世的学府,哈佛大学培养了许多名人,他们中有33位诺贝尔奖获得者、7位美国总统以及各行各业的职业精英。究竟是什么使哈佛成为精英的摇篮?哈佛学子接受了什么样的精神和理念?这些问题吸引着成千上万的人去探知其中的答案。
哈佛图书馆墙上的20条训言似乎已经给出了答案。短短数语,引发深思,给人启迪。
此刻打盹,你将做梦;而此刻学习,你将圆梦
哈佛老师经常给学生这样的告诫:如果你想在进入社会后,在任何时候任何场合下都能得心应手并且得到应有的评价,那么你在哈佛的学习期间,就没有晒太阳的时间。在哈佛广为流传的一句格言是“忙完秋收忙秋种,学习,学习,再学习。”
人的时间和精力都是有限的,所以,要利用时间抓紧学习,而不是将所有的业余时间都用来打瞌睡。
有的人会这样说:“我只是在业余时间打盹而已,业余时间干吗把自己弄得那么紧张?”爱因斯坦就曾提出:“人的差异在于业余时间。”我的一位在哈佛任教的朋友也告诉我说,只要知道一个青年怎样度过他的业余时间,就能预言出这个青年的前程怎样。
20世纪初,在数学界有这样一道难题,那就是2的76次方减去1的结果是不是人们所猜想的质数。很多科学家都在努力地攻克这一数学难关,但结果并不如愿。1903年,在纽约的数学学会上,一位叫做科尔的科学家通过令人信服的运算论证,成功地证明了这道难题。
人们在惊诧和赞许之余,向科尔问道:“您论证这个课题一共花了多少时间?”科尔回答:“3年内的全部星期天。”
同样,加拿大医学教育家奥斯勒也是利用业余时间作出成就的典范。奥斯勒对人类最大的贡献,就是成功地研究了第三种血细胞。他为了从繁忙的工作中挤出时间读书,规定自己在睡觉之前必须读15分钟的书。不管忙碌到多晚,都坚持这一习惯不改变。这个习惯他整整坚持了半个世纪,共读了1000多本书,取得了令人瞩目的成绩。
我荒废的今日,正是昨天殒身之人祈求的明日
闻名于世的约翰霍普金斯学院的创始人、牛津大学医学院的讲座教授、被英国国王册封为爵士的威廉·奥斯勒在年轻时,也曾为自己的前途感到迷茫。一次,他在读书时看到了一句话,给了他很大的启发。这句话是“最重要的就是不要去看远方模糊的事,而是做手边清楚的事。”
对此,哈佛提醒学生说“我荒废的今日,正是昨天殒身之人祈求的明日”。明天再美好,也不如抓住眼下的今天多做点实事。
获得哈佛大学荣誉学位的发明家、科学家本杰明·富兰克林有一次接到一个年轻人的求教电话,并与他约好了见面的时间和地点。当年轻人如约而至时,本杰明的房门大敞着,而眼前的房子里却乱七八糟、一片狼藉,年轻人很是意外。
没等他开口,本杰明就招呼道:“你看我这房间,太不整洁了,请你在门外等候一分钟,我收拾一下,你再进来吧。”然后本杰明就轻轻地关上了房门。
不到一分钟的时间,本杰明就又打开了房门,热情地把年轻人让进客厅。这时,年轻人的眼前展现出另一番景象———房间内的一切已变得井然有序,而且有两杯倒好的红酒,在淡淡的香气里漾着微波。
年轻人在诧异中,还没有把满腹的有关人生和事业的疑难问题向本杰明讲出来,本杰明就非常客气地说道:“干杯!你可以走了。”
手持酒杯的年轻人一下子愣住了,带着一丝尴尬和遗憾说:“我还没向您请教呢……”
“这些……难道还不够吗?”本杰明一边微笑一边扫视着自己的房间说,“你进来又有一分钟了。”
“一分钟……”年轻人若有所思地说,“我懂了,您让我明白用一分钟的时间可以做许多事情,可以改变许多事情的深刻道理。”
珍惜眼前的每一分每一秒,也就珍惜了所拥有的今天。哈佛的这句话实际上揭示了一种人生哲学,那就是人生要以珍惜的态度把握时间,从今天开始,从现在做起。
觉得为时已晚的时候,恰恰是最早的时候
安曼曾经是纽约港务局的工程师,工作多年后按规定退休。开始的时候,他很是失落。但他很快就高兴起来,因为他有了一个伟大的想法。他想创办一家自己的工程公司,要把办公楼开到全球各个角落。
安曼开始一步一个脚印地实施着自己的计划,设计的建筑遍布世界各地。在退休后的三十多年里,他实践着自己在工作中没有机会尝试的大胆和新奇的设计,不停地创造着一个又一个令世人瞩目的经典:埃塞俄比亚首都亚的斯亚贝巴机场,华盛顿杜勒斯机场,伊朗高速公路系统,宾夕法尼亚州匹兹堡市中心建筑群……这些作品被当作大学建筑系和工程系教科书上常用的范例,也是安曼伟大梦想的见证。86岁的时候,他完成最后一个作品———当时世界上最长的悬体公路桥———纽约韦拉扎诺海峡桥。
生活中,很多事情都是这样,如果你愿意开始,认清目标,打定主意去做一件事,永远不会嫌晚。
今天不走,明天要跑
在哈佛,教授们会时常提醒学生们要做好时间管理,并列举如下事例:
当今世界上最大的化学公司———杜邦公司的总裁格劳福特·格林瓦特,每天挤出一小时来研究蜂鸟,并用专门的设备给蜂鸟拍照。权威人士把他写的关于蜂鸟的书称为自然历史丛书中的杰出作品。
休格·布莱克在进入美国议会前,并未受过高等教育。他从百忙中每天挤出一小时到国会图书馆去博览群书,包括政治、历史、哲学、诗歌等方面的书,数年如一日,就是在议会工作最忙的日子里也从未间断过。后来他成了美国最高法院的法官。
一位名叫尼古拉的希腊籍电梯维修工对现代科学很感兴趣,他每天下班后到晚饭前,总要花一小时时间来攻读核物理学方面的书籍。随着知识的积累,一个念头跃入他的脑海。1948年,他提出了建立一种新型粒子加速器的计划。这种加速器比当时其他类型的加速器造价便宜而且更强有力。他把计划递交给美国原子能委员会做试验,又再经改进,这台加速器为美国节省了7000万美元。尼古拉得到了1万美元的奖励,还被聘请到加州大学放射实验室工作。
在人生的道路上,你停步不前,但有人却在拼命赶路。也许当你站立的时候,他还在你的后面向前追赶,但当你再一回望时,已看不到他的身影了,因为,他已经跑到你的前面了,现在需要你来追赶他了。所以,你不能停步,你要不断向前,不断超越。
狗一样地学,绅士一样地玩
我们说要珍惜时间,努力为实现理想而打拼,但有一点要注意,那就是不要一味地拼命,也要有适度的休息和放松。对此,哈佛有个很贴切的说法,叫做“狗一样地学,绅士一样地玩”。话虽略显粗俗,但揭示的道理却很深刻。
在哈佛,虽然学习强度很大,学生们承受着很大的学习压力,但他们也不提倡学生把所有的时间都用来学习。他们认为,学要尽力,玩也不能忽视。哈佛的学生也说,哈佛的课余生活要胜过正规学习。而哈佛也意识到适度的课外活动不但不会背离教育使命,而且还会给教育使命以支持。因此,他们提出要像“绅士一样地玩 ”。
在哈佛,学生们除了紧张地学习,还会参加学校组织的多种艺术活动,比如音乐会、戏剧演出、舞蹈表演及各种艺术展览等,此外,哈佛每年还会举办艺术节,以活跃学生的业余生活。这些充满着浓厚艺术氛围的活动不仅让学生接受了艺术教育和熏陶,而且提高了学生的艺术修养和审美能力。
哈佛的理念就是要求你在紧张的学习和工作后,能够暂时地完全忘记它们,像投入工作那样投入玩耍,尽情地放松。的确,在你尽心休闲的时候,所得到的体力和精力的恢复会为你下一阶段的奋斗增添无穷的动力。所以,在前进的路上,你不仅要勤奋努力,更要学会放松。
现在流的口水,将成为明天的眼泪
成功与安逸是不可兼得的,选择了其一,就必定放弃了另一结局。正像哈佛所提醒的那样:现在流的口水,将成为明天的眼泪。今天不努力,明天必定遭罪。
我的邻居查尔斯曾经在哈佛度过4年的大学时光,他现在就职于纽约的一家软件公司,做他最擅长的行政管理工作。不久前,他的公司被一家法国公司兼并了。在兼并合同签订的当天,公司的新总裁宣布:“我们不会随意裁员,但如果你的法语太差,导致无法和其他员工交流,那么,不管是多高职位的人,我们都不得不请你离开。这个周末我们将进行一次法语考试,只有考试及格的人才能继续在这里工作。”
散会后,几乎所有的人都拥向了图书馆,他们这时才意识到要赶快补习法语了。只有查尔斯像平常一样直接回家了,同事们都认为他已经准备放弃这份工作了,毕竟,哈佛的学习背景和公司管理层的工作经验会帮助他轻而易举地找到另一份不错的工作。
然而,令所有人都想不到的是,考试结果出来后,这个在大家眼中没有希望的人却考了最高分。原来,查尔斯在毕业后来到这家公司后,他在工作中发现与法国人打交道的机会特别多,不会法语会使自己的工作受到很大的限制,所以,他很早就开始自学法语了。他利用可利用的一切时间,每天坚持学习,最终学有所获。
在哈佛,你从来看不到学生在偷懒,在消磨时间。当若干年后回想起曾经的梦想时,希望带给你的是无尽的欣慰笑容,而不是因蹉跎而流下的悔恨泪水。
投资未来的人,是忠于现实的人
作为世界知名的学府,哈佛十分强调要有长远眼光,为未来投资。要投资未来,就要定好未来的投资方向,也就是要及早地设定人生目标。没有目标,就谈不到发展,更谈不上成功。
哈佛大学曾进行过这样一项跟踪调查,对象是一群在智力、学历和环境等方面条件差不多的年轻人。调查结果发现:27%的人没有目标;60%的人目标模糊;10%的人有着清晰但比较短期的目标;其余3%的人有着清晰而长远的目标。
以后的岁月,他们行进在各自的人生旅途中。25年后,哈佛再次对这群学生进行了跟踪调查。结果是这样的:
3%的人,在25年间朝着一个方向不懈努力,几乎都成为社会各界的成功人士,其中不乏行业领袖和社会精英;10%的人,他们的短期目标不断地实现,成为各个领域中的专业人士,大都生活在社会的中上层;60%的人,他们安稳地生活与工作,但都没有什么特别成绩,几乎都生活在社会的中下层;剩下27%的人,他们的生活没有目标,过得很不如意,并且常常在抱怨他人,抱怨社会,当然,也抱怨自己。
其实,他们之间的差别仅仅在于:25年前,他们中的一些人就已经知道自己最想要做的是什么,而另一些人则不清楚或不很清楚。这个调查生动地说明了明确生活目标对于人生成功的重要意义。
哈佛图书馆的二十条训言
1.此刻打盹,你将做梦;而此刻学习,你将圆梦。
2.我荒废的今日,正是昨日殒身之人祈求的明日。
3.觉得为时已晚的时候,恰恰是最早的时候。
4.勿将今日之事拖到明日。
5.学习时的苦痛是暂时的,未学到的痛苦是终生的。
6.学习这件事,不是缺乏时间,而是缺乏努力。
7.幸福或许不排名次,但成功必排名次。
8.学习并不是人生的全部。但既然连人生的一部分———学习也无法征服,还能做什么呢?
9.请享受无法回避的痛苦。
10.只有比别人更早、更勤奋地努力,才能尝到成功的滋味。
11.谁也不能随随便便成功,它来自彻底的自我管理和毅力。
12.时间在流逝。
13.现在流的口水,将成为明天的眼泪。
14.狗一样地学,绅士一样地玩。
15.今天不走,明天要跑。
16.投资未来的人,是忠于现实的人。
17.受教育程度代表收入。
18.一天过完,不会再来。
19.即使现在,对手也不停地翻动书页。
20.没有艰辛,便无所获。
Friday, January 23, 2009
我收集的蛋炒饭做法 (ZT)
http://blog.wenxuecity.com/blogview.php?date=200901&postID=63934
我收集的蛋炒饭做法 2009-01-21 07:30:43
1、这是最传统的蛋炒饭的做法。但大部分人不知道.将水煮开沸腾后,将洗干净的米倒入水中过滤捞出,记住,一下下就可以了。然后,将米放在炉子上蒸熟后,与鸡蛋混在一起炒。这样做出的蛋炒饭,不仅米饭香和蛋香不会混合,而且哦,米是一粒粒分开,不会粘在一起的。
2、米饭要先在冰箱冷藏2-3小时,并且不要加盖;炒饭前饭内加少许素油拌匀,让饭粒分开,再倒入一半蛋液拌匀浸泡20分钟;旺火油锅下拌好油和蛋液的米饭,迅速炒匀炒干,使鸡蛋包住每粒米饭,行话叫“金包银”。然后下熟青豆及跑马蛋,加盐、葱花,翻炒片刻后出锅。
鸡丝蛋炒饭
1. 将鸡蛋摊成蛋皮,切成丝;
2. 鸡肉洗净切成细丝用淀粉,少许精盐、糖拌匀腌片刻;
3. 葱洗净切成葱花,备用;
4. 将锅内倒入花生油,用旺火烧热后放入鸡肉丝、虾仁和料酒同炒至熟;
5. 加入米饭、葱花 6.撒入蛋丝炒透,即可装盘.
工艺关键:主料中的米饭若选用粳米的做米饭,配料中的虾仁选用鲜虾仁,这样做出的炒饭将更加干香滑嫩。
火腿蛋炒饭
1. 将火腿切成小粒;
2. 黄瓜洗净,剖开去瓤,籽,切成豆粒大小的丁;
3. 葱洗净切成葱葱花;4. 鸡蛋磕入碗内打散,加入少许精盐搅匀;
5. 豌豆洗净,焯熟,备用;
6. 将锅内倒入花生油,烧至六七成热,放入葱花炝锅,出香味后倒入蛋液,炒成碎块。
7. 倒入火腿丁、黄瓜丁、豌豆,同炒约2分钟。
8. 放入米饭和余下的精盐、味精,改用中火炒。
9. 至饭粒松散,溢出香味后,即可装盘。
什锦蛋炒饭
1. 将鸡蛋打入碗内,略加精盐调成蛋液;
2. 莴笋、火腿肠、鲜蘑菇、洋葱、蒜切丁;小葱切成细末。
3. 锅内放花生油,烧热后,倒入蛋液煎泡至熟,捣烂捞出;
4. 炒锅内再放少许花生油,下蘑菇丁、蒜粒炒出香味后,再放莴笋、洋葱略炒,加入米饭和煎熟的鸡蛋同炒,再下火腿肠、最后加葱花、盐和鸡精即可。
健康提示:
1.本菜含有蛋白质、不饱和脂肪酸、碳水化合物、多种矿物质和维生素;同时也有防止便秘的作用。2.蘑菇含多种氨基酸、维生素和其他营养成分,亦有一定的抗菌作用。
工艺提示:可用苹果代替小蘑菇,或起锅时加些西瓜丁,又另具一番风味。
大虾仁蛋炒饭
1. 将大虾仁片成小片,放入开水锅内烫一下,鸡蛋磕入碗内打匀。
2. 炒锅放油烧热,倒入鸡蛋,炒熟搅开,下入虾肉片翻炒,放入米饭,加入精盐炒匀炒适,盛入盘内即成。
工艺提示:1. 虾仁要新鲜,翻炒均匀,锅用油炼好,防止煳锅底,可搭配生菜蘸酱。2. 此炒饭可与蛋汤一起食用。
扬州蛋炒饭
1. 虾仁洗净,加入适量蛋清、淀粉、清水搅匀上浆;
2. 干贝用水浸泡,洗净,备用;
3. 香菇去蒂,洗净;
4. 鸭肫洗净,煮熟;
5. 冬笋去皮,洗净,煮熟;
6. 葱去根须,洗净,切末;
7. 鸡脯肉洗净,煮熟。
8. 将海参、鸡肉、火腿、鸭肫、香菇、笋、猪肉均切成小方丁。
9. 鸡蛋磕入碗内,加精盐20 克、葱末5 克,搅打均匀。
10. 将锅置火上,舀入熟猪油75 克烧热,放入虾仁滑熟,捞出。
11. 放入海参丁、鸡丁、火腿丁、干贝、香菇丁、笋丁、鸭肫丁、猪肉丁煸炒,加入黄酒、精盐10 克、鸡清汤25毫升,烧沸,盛入碗中作什锦浇头。
12. 锅置火上,放入熟猪油150 克,烧至五成热时,倒入鸡蛋液炒散,加入米饭炒匀,倒入一半浇头,继续炒匀。
13. 将饭的2/3 分装盛入小碗后,将余下的浇头和虾仁、豌豆、葱末10 克倒入锅内,同锅中余饭一同炒匀,盛放在碗内盖面即成。
工艺提示:扬州炒饭不同于家常蛋炒饭,配料众多,工艺精湛,按文索骥,可登大雅之堂。
家常蛋炒饭的窍门:
大家可别小看了蛋炒饭,炒的不好就成炒蛋拌白饭了。炒的时候锅里放的油要少许多一点,不光够炒蛋还要考虑到饭呢,白饭要用隔夜的冷饭,热饭水分太多。开火烧油,记得油温不要太高,不要冒烟就可以了,蛋打不打匀都可以。直接打碎往里倒就可以了,千万不要让蛋结块,在锅里快速的滑炒把蛋打碎,等蛋液开始凝固,就可以少许加点盐不要太多哦否则咸死你我不负责的。等完全凝固了加白饭。这时候的白饭因为是冷饭是结成块,所以不要把火开的太大,一般就可以了。一点点把饭铲松了,把它和蛋拌匀。切记不要加水要变泡饭的。饭虽然结块炒了之后会松成一粒粒的。然后根据自己的口味加点盐。还可以在最后装盆的时候加点葱花。一盘好香好好吃的蛋炒饭就做好了。不知大家有没有兴趣自己动手,丰衣足食一下。
要点:
蛋液下锅油温勿高,快速滑炒打散;
冷饭下锅慢慢铲松不加水;
蛋抄饭切记不要放味精,放了味精就没有鸡蛋的鲜味了。
我收集的蛋炒饭做法 2009-01-21 07:30:43
1、这是最传统的蛋炒饭的做法。但大部分人不知道.将水煮开沸腾后,将洗干净的米倒入水中过滤捞出,记住,一下下就可以了。然后,将米放在炉子上蒸熟后,与鸡蛋混在一起炒。这样做出的蛋炒饭,不仅米饭香和蛋香不会混合,而且哦,米是一粒粒分开,不会粘在一起的。
2、米饭要先在冰箱冷藏2-3小时,并且不要加盖;炒饭前饭内加少许素油拌匀,让饭粒分开,再倒入一半蛋液拌匀浸泡20分钟;旺火油锅下拌好油和蛋液的米饭,迅速炒匀炒干,使鸡蛋包住每粒米饭,行话叫“金包银”。然后下熟青豆及跑马蛋,加盐、葱花,翻炒片刻后出锅。
鸡丝蛋炒饭
1. 将鸡蛋摊成蛋皮,切成丝;
2. 鸡肉洗净切成细丝用淀粉,少许精盐、糖拌匀腌片刻;
3. 葱洗净切成葱花,备用;
4. 将锅内倒入花生油,用旺火烧热后放入鸡肉丝、虾仁和料酒同炒至熟;
5. 加入米饭、葱花 6.撒入蛋丝炒透,即可装盘.
工艺关键:主料中的米饭若选用粳米的做米饭,配料中的虾仁选用鲜虾仁,这样做出的炒饭将更加干香滑嫩。
火腿蛋炒饭
1. 将火腿切成小粒;
2. 黄瓜洗净,剖开去瓤,籽,切成豆粒大小的丁;
3. 葱洗净切成葱葱花;4. 鸡蛋磕入碗内打散,加入少许精盐搅匀;
5. 豌豆洗净,焯熟,备用;
6. 将锅内倒入花生油,烧至六七成热,放入葱花炝锅,出香味后倒入蛋液,炒成碎块。
7. 倒入火腿丁、黄瓜丁、豌豆,同炒约2分钟。
8. 放入米饭和余下的精盐、味精,改用中火炒。
9. 至饭粒松散,溢出香味后,即可装盘。
什锦蛋炒饭
1. 将鸡蛋打入碗内,略加精盐调成蛋液;
2. 莴笋、火腿肠、鲜蘑菇、洋葱、蒜切丁;小葱切成细末。
3. 锅内放花生油,烧热后,倒入蛋液煎泡至熟,捣烂捞出;
4. 炒锅内再放少许花生油,下蘑菇丁、蒜粒炒出香味后,再放莴笋、洋葱略炒,加入米饭和煎熟的鸡蛋同炒,再下火腿肠、最后加葱花、盐和鸡精即可。
健康提示:
1.本菜含有蛋白质、不饱和脂肪酸、碳水化合物、多种矿物质和维生素;同时也有防止便秘的作用。2.蘑菇含多种氨基酸、维生素和其他营养成分,亦有一定的抗菌作用。
工艺提示:可用苹果代替小蘑菇,或起锅时加些西瓜丁,又另具一番风味。
大虾仁蛋炒饭
1. 将大虾仁片成小片,放入开水锅内烫一下,鸡蛋磕入碗内打匀。
2. 炒锅放油烧热,倒入鸡蛋,炒熟搅开,下入虾肉片翻炒,放入米饭,加入精盐炒匀炒适,盛入盘内即成。
工艺提示:1. 虾仁要新鲜,翻炒均匀,锅用油炼好,防止煳锅底,可搭配生菜蘸酱。2. 此炒饭可与蛋汤一起食用。
扬州蛋炒饭
1. 虾仁洗净,加入适量蛋清、淀粉、清水搅匀上浆;
2. 干贝用水浸泡,洗净,备用;
3. 香菇去蒂,洗净;
4. 鸭肫洗净,煮熟;
5. 冬笋去皮,洗净,煮熟;
6. 葱去根须,洗净,切末;
7. 鸡脯肉洗净,煮熟。
8. 将海参、鸡肉、火腿、鸭肫、香菇、笋、猪肉均切成小方丁。
9. 鸡蛋磕入碗内,加精盐20 克、葱末5 克,搅打均匀。
10. 将锅置火上,舀入熟猪油75 克烧热,放入虾仁滑熟,捞出。
11. 放入海参丁、鸡丁、火腿丁、干贝、香菇丁、笋丁、鸭肫丁、猪肉丁煸炒,加入黄酒、精盐10 克、鸡清汤25毫升,烧沸,盛入碗中作什锦浇头。
12. 锅置火上,放入熟猪油150 克,烧至五成热时,倒入鸡蛋液炒散,加入米饭炒匀,倒入一半浇头,继续炒匀。
13. 将饭的2/3 分装盛入小碗后,将余下的浇头和虾仁、豌豆、葱末10 克倒入锅内,同锅中余饭一同炒匀,盛放在碗内盖面即成。
工艺提示:扬州炒饭不同于家常蛋炒饭,配料众多,工艺精湛,按文索骥,可登大雅之堂。
家常蛋炒饭的窍门:
大家可别小看了蛋炒饭,炒的不好就成炒蛋拌白饭了。炒的时候锅里放的油要少许多一点,不光够炒蛋还要考虑到饭呢,白饭要用隔夜的冷饭,热饭水分太多。开火烧油,记得油温不要太高,不要冒烟就可以了,蛋打不打匀都可以。直接打碎往里倒就可以了,千万不要让蛋结块,在锅里快速的滑炒把蛋打碎,等蛋液开始凝固,就可以少许加点盐不要太多哦否则咸死你我不负责的。等完全凝固了加白饭。这时候的白饭因为是冷饭是结成块,所以不要把火开的太大,一般就可以了。一点点把饭铲松了,把它和蛋拌匀。切记不要加水要变泡饭的。饭虽然结块炒了之后会松成一粒粒的。然后根据自己的口味加点盐。还可以在最后装盆的时候加点葱花。一盘好香好好吃的蛋炒饭就做好了。不知大家有没有兴趣自己动手,丰衣足食一下。
要点:
蛋液下锅油温勿高,快速滑炒打散;
冷饭下锅慢慢铲松不加水;
蛋抄饭切记不要放味精,放了味精就没有鸡蛋的鲜味了。
网友用一句话概括了四大名著 (ZT:)
网友用一句话概括了四大名著 (ZT:) 2009-01-21 09:25:31
最热门的答案:
西游:《论西部开发——唐朝学者出国考察团调研报告》
红楼:《论大观园开发——美女公关公司内幕》
水浒:《论梁山开发——108人旅游团的悲惨遭遇》
三国:《论中原开发——三大公司争夺开发权内幕》 笑话幽默
最点题的答案:
西游:(疯狂的猴子!)
红楼:(疯狂的石头!)
水浒:(杀杀人,喝喝酒!)
三国:(大哥,我们动手吧!)
最雷人的答案:
西游:(驴友西域拓展训练博客)
红楼:(败家子是怎样炼成的)
水浒:(兄弟连)
三国:(纪实文学:是金子总会发光——记农村青年孔明)
最江湖的答案:
西游:(俺们天上有人!)
红楼:(俺们朝廷里有人!)
水浒:(俺们江湖上有人!)
三国:(俺们有的是人!)
最心寒的答案:
红楼:(亲戚靠不住)
西游:(神仙靠不住)
三国:(战友靠不住)
水浒:(老大靠不住)
最热门的答案:
西游:《论西部开发——唐朝学者出国考察团调研报告》
红楼:《论大观园开发——美女公关公司内幕》
水浒:《论梁山开发——108人旅游团的悲惨遭遇》
三国:《论中原开发——三大公司争夺开发权内幕》 笑话幽默
最点题的答案:
西游:(疯狂的猴子!)
红楼:(疯狂的石头!)
水浒:(杀杀人,喝喝酒!)
三国:(大哥,我们动手吧!)
最雷人的答案:
西游:(驴友西域拓展训练博客)
红楼:(败家子是怎样炼成的)
水浒:(兄弟连)
三国:(纪实文学:是金子总会发光——记农村青年孔明)
最江湖的答案:
西游:(俺们天上有人!)
红楼:(俺们朝廷里有人!)
水浒:(俺们江湖上有人!)
三国:(俺们有的是人!)
最心寒的答案:
红楼:(亲戚靠不住)
西游:(神仙靠不住)
三国:(战友靠不住)
水浒:(老大靠不住)
Subscribe to:
Posts (Atom)
如何发掘出更多退休的钱?
如何发掘出更多退休的钱? http://bbs.wenxuecity.com/bbs/tzlc/1328415.html 按照常规的说法,退休的收入必须得有退休前的80%,或者是4% withdrawal rule,而且每年还得要加2-3%对付通胀,这是一个很大...
-
魏杰教授这篇演讲,深入浅出,把未来几年的经济形势讲的非常透彻。 魏杰:我和大家一起对未来一段时间做一个交流,可能在座的知道从2018年3月份开始,中国社会生活出现了六个很严重的现象。 第一个现象 ,大量的中小企业反映企业非常难做,压力很大。既有成本压力,也有资金...
-
如何发掘出更多退休的钱? http://bbs.wenxuecity.com/bbs/tzlc/1328415.html 按照常规的说法,退休的收入必须得有退休前的80%,或者是4% withdrawal rule,而且每年还得要加2-3%对付通胀,这是一个很大...
-
关于开户炒股 关于开户炒股(ZT) 去自己的银行询问怎么开设股票投资账户,很简单,贴个表,签个字就搞定了,没有任何费用,然后再到指定的网上操作一遍,签订个real-time的 quote协议(也是免费)就可以再网上看到实时行情并下单交易了,如果现自己的银行不专业,加拿大最快的就是...