<!--
/*<! [CDATA[*/
body { color: #000; background-color: #fff; margin: 0px 10%; min-width: 720px; font-family: Verdana, sans-serif;
counter-reset: chapter section subsection subsubsection paragraph lchapter lsection lsubsection lsubsubsection lparagraph}
div.footnote { border-left: 1px solid #000; margin-left: 0em; clear: both }
div.ftext { position: relative; margin-left: 50px }
div.fnumber { float: left; width: 40px; padding: 0em; margin-left: 0.5em; margin-top: 0em }
div.fnumber a { margin: 0px; padding: 0px }
div.ctext { position: relative; margin-left: 100px }
div.cnumber { float: left; width: 90px; padding: 0em; margin-left: 0.5em; margin-top: 0em }
div.cnumber a { margin: 0px; padding: 0px }
div.tip { border: 2px solid #0d0; margin: 0.5em 2em 1em 2em; padding: 0em 1em }
div.warning, div.caution, div.danger, div.error { border: 2px solid #f00; margin: 0.5em 2em 1em 2em; padding: 0em 1em }
div.note, div.hint, div.important { border: 2px solid #000; margin: 0.5em 2em 1em 2em; padding: 0em 1em }
div.figure { display: block; padding: 1em; width: 400px; clear: both}
div.topic { margin: 2em }
div.vstsidebar, div.sidebar { border: 2px solid #aaa; color: #000; background-color: #ffffee; float: right; width: 40%; margin-left: 1em; margin-right: -1em; padding: 1em }
span.strike { text-decoration: line-through }
span.big { font-size: large }
span.small { font-size: small }
span.title { font-style: italic }
span.notetitle { font-size: large; font-weight: 900; font-family: Verdana, sans-serif }
p.toc { font-size: large; font-weight: 900 }
p.notesubtitle { font-weight: 900; font-family: Verdana, sans-serif }
p.attribution { font-style: italic; margin-left: 8em; text-indent: -1.4em }
.vstright { float: right; margin: 1em }
.vstleft { float: left; margin: 1em }
.vstcenter { margin: 1em auto }
blockquote.pull { font-size: large }
p.rubric { font-size: large; margin-left: 2em }
dd.normal { margin-bottom: 0.5em }
dt.option { float: left; margin: 0em 0em 5px 2em; padding: 0px; font-family: monospace }
dd.option { padding: 0px; margin: 0em 0em 5px 10em; text-indent: 0.5em }
dd.option > p { margin: 0px }
dd.normal > p { margin: 0px }
table { border-collapse: collapse; margin: 0.5em 0em }
thead, tfoot { text-align: center; font-weight: bold }
td { border: 1px solid #000; padding: 0.25em; _top: 0%; vertical-align: top }
td blockquote p{ margin: 0px; padding: 0px}
td blockquote { margin: 0px; padding: 0px}
table.vstbless td { border: 0px solid #000; padding: 0.25em; _top: 0%; vertical-align: top }
td > p { margin: 0px }
table.field { border: 0px solid #000; margin-left: 2em; padding: 0.25em; _top: 0%; vertical-align: top }
td.fkey { font-weight: 900 }
td.fval { border: 0px solid #000; padding: 0.25em; _top: 0%; vertical-align: top }
td.fkey { font-weight: 900; border: 0px solid #000; padding: 0.25em; _top: 0%; vertical-align: top }
td.fdkey { text-align: center; font-weight: 900 }
td.fdval { text-align: center; font-style: italic }
td.fakey { text-align: center; font-weight: 900 }
td.faval { border: 0px solid #000; padding: 0.25em; _top: 0%; vertical-align: top }
hr { width: 80%; margin: 1.5em auto }
h1 { text-align: center; clear: both }
h2, h3, h4, h5, h6 { text-align: left; margin-top: 1em; clear: both }
h2 { counter-reset: section subsection subsubsection paragraph }
h3 { counter-reset: subsection subsubsection paragraph }
h4 { counter-reset: subsubsection paragraph }
h5 { counter-reset: paragraph }
h1 a { color: #000; background-color: transparent }
h2 a { color: #000; background-color: transparent }
h3 a { color: #000; background-color: transparent }
h4 a { color: #000; background-color: transparent }
h5 a { color: #000; background-color: transparent }
h6 a { color: #000; background-color: transparent }
p.subh1 { text-align: center; font-size: 120%; font-variant: small-caps }
p.subh2, p.subh3, p.subh4, p.subh5, p.subh6 { text-align: left; font-size: 120%; font-variant: small-caps }
h2:before { content: counter(chapter)" "; counter-increment: chapter }
h3:before { content: counter(chapter)"."counter(section)" "; counter-increment: section }
h4:before { content: counter(chapter)"."counter(section)"."counter(subsection)" "; counter-increment: subsection }
h5:before { content: counter(chapter)"."counter(section)"."counter(subsection)"."counter(subsubsection)" "; counter-increment: subsubsection }
h6:before { content: counter(chapter)"."counter(section)"."counter(subsection)"."counter(subsubsection)"."counter(paragraph)" "; counter-increment: paragraph}
li.h1 { margin-left: 0em }
li.h2 { margin-left: 1em; counter-reset: lsection lsubsection lsubsubsection lparagraph }
li.h3 { margin-left: 2em; counter-reset: lsubsection lsubsubsection lparagraph }
li.h4 { margin-left: 3em; counter-reset: lsubsubsection lparagraph }
li.h5 { margin-left: 4em; counter-reset: lparagraph }
li.h2:before { content: counter(lchapter)" "; counter-increment: lchapter }
li.h3:before { content: counter(lchapter)"."counter(lsection)" "; counter-increment: lsection }
li.h4:before { content: counter(lchapter)"."counter(lsection)"."counter(lsubsection)" "; counter-increment: lsubsection }
li.h5:before { content: counter(lchapter)"."counter(lsection)"."counter(lsubsection)"."counter(lsubsubsection)" "; counter-increment: lsubsubsection }
li.h6:before { content: counter(lchapter)"."counter(lsection)"."counter(lsubsection)"."counter(lsubsubsection)"."counter(lparagraph)" "; counter-increment: lparagraph}
li.h6 { margin-left: 5em }
ol, ul { margin-bottom: 0.5em; margin-top: 0.5em }
ol.loweralpha { list-style-type: lower-alpha }
ol.upperalpha { list-style-type: upper-alpha }
ol.lowerroman { list-style-type: lower-roman }
ol.upperroman { list-style-type: upper-roman }
ol.decimal { list-style-type: decimal }
ul.square { list-style-type: square }
ul.circle { list-style-type: circle }
ul.disc { list-style-type: disc }
li > p { margin: 0em }
img { border: 1px solid #000; padding: 0em; display: block; margin: 1em auto }
img.inline { border: 1px solid #000; padding: 0em; margin: 0em; display: inline }
pre { color: #000; background-color: #eee; margin-left: 2em; clear: both; overflow: auto }
div.unknown { font-family: monospace; color: #000; background-color: #fff; margin: 1em; padding: 1em; clear: both; border: 3px solid red}
pre.quoted { color: #000; background-color: #eee; margin-left: 0em; clear: both; overflow: auto }
pre.rawlatex { color: #000; background-color: #ddd; border: 1px solid #000; padding: 0.1em; clear: both; overflow: auto }
pre.address { font-family: Verdana, sans-serif; display: inline; margin: 0px; color: #000; background-color: #fff; overflow: auto }
span.target { text-decoration: underline }
div.vstfooter hr { width: 100%; margin: 0px }
div.vstfooter p { margin: 0px }
/*]]>*/
-->
Keyword: |
Sun Google James Gosling 技术公司 |
Date: |
2010.01.23. |
Java之父James Gosling在博客上发表文章,纪念即将逝去的太阳。
http://blogs.sun.com/jag/entry/so_long_old_friend
下面的评论,充满着对这家伟大技术公司的怀念,简单搜索great,就能发现很多满怀深情的言语,摘录几句:
Thanks Sun. What a great company.
Sun was like a family and what a GREAT family it was. Today is like losing a family member.
Thanks James.. an amazing company and great people like you.. just fortunate to work 10 years..
Thanks for Sun in giving me a great career, I still remember reading Java 1.2 book from Sun such a fun and educational read! :)
......
从我个人的感情上来说,SUN就是伟大技术企业的代名词,SUN的产品都是顶尖技术的代名词。Java仍然是至今最伟大的编程语言,也伴随我度过了最长的编程生涯,正是Java之美让我感受到了编程之美,现在虽然很少用Java了,但是这种美好的感觉是不会改变的,超越Java仍然路途漫漫。也许,SUN的悲情陨落,仅仅是再一次证实了技术至上的宿命,但是理想主义者们的悲情谢幕总是令人感慨。人固有一死,或重于泰山,或轻于鸿毛,一个公司也是一样,能像SUN一样对计算机科学以及IT行业产生如此重大的影响,足以名垂青史。
好在,这家叫Standford University Network的公司,有了同样来自Stanford,同样技术至上,同样理想主义的Google作为继任者,而Google的第一笔投资正是来自SUN的创始人之一Andy Bechtolsheim。历史总是充满着巧合,正如伽利略逝世那天,牛顿出生,Google是否就是为了传承SUN的衣钵而来到这个世界?
最后,像James Gosling一样,我要深情地对SUN说: So Long, Old Friend ...
转自:http://www.disandu.com/?p=535
分享到:
相关推荐
代码随想录-大厂八股文-面试
代码随想录-八股文 pdf
00.代码随想录-最强八股文-第3版-无密版本.pdf
软件随想录 - More Joel on Software,好东西啊
付费渠道买的,请珍惜
寻找优秀的程序员 2006年9月6日,星期三 优秀的程序员都在哪里 这是你第一次公开招募雇员。如同大多数人一样,你会发布广告,可能也会浏览一些大型的网上论坛.....
代码随想录知识星球精华-大厂面试八股文v1.1.pdf
多因子模型系列报告之一----模型理论随想和纯因子组合构建,多因子模型系列报告之一----模型理论随想和纯因子组合构建
代码随想录知识星球精华-大厂面试八股文v1.1 代码随想录知识星球精华-大厂面试八股文v1.1 代码随想录知识星球精华-大厂面试八股文v1.1 代码随想录知识星球精华-大厂面试八股文v1.1 代码随想录知识星球精华-大厂面试...
「代码随想录」动态规划专题精讲(v1.2).pdf
代码随想录算法PDF.rar
军事化管理法 2006年8月8日,星期二 命令和控制式的管理源于军事管理。大致上这种管理方法的思想是,人们只做你告诉他们去做的事情。如果他们没做,你就对着他们吼,知道他们做了为止........
随想出题免费版随想出题免费版随想出题免费版
寻找优秀的成员之实战指南 2006年9月7日,星期四 你是一个雇主。你在所有正确的地方刊登了招聘广告,你有一个完善的实习生制度,你面试了所有你想要的人......
软件随想录(英文版) - More Joel on Software
编程随想博客文集 2010
我的第一次BillG审查 2006年6月16日,星期五 早先,Excel有一种咩有名字的很蹩脚的编程语言,我们管它叫做“Excel宏语言”.......
最强八股文合集
二叉树遍历