Search

3/26/2013

媲美日月潭的超秘境湖--夢之湖(台南六甲)

媲美日月潭的超秘境湖--夢之湖(台南六甲)

補充夢之湖由來: 亦簡稱作「夢湖」,即「大埔」,在「東膏蚋」之南,即「烏山頭水庫」上游湖邊之地,因民國六十八年(一九七九)前後有電影公司在此拍攝電影 「夢之湖」(女主角為林青霞)的文藝電影而有此地名,當時在此岸邊湖上搭設一座小木屋,致引來觀光熱潮,成為「烏山頭水庫」的一個景點, 其時快艇由大壩開來,約莫十來分鐘,盛極一時,「夢之湖餐廳」也曾在此寫下輝煌一頁。後來水利單位拆掉小木屋,致人潮漸淡而終沒落,當年頗 為豪華的「夢之湖餐廳」早已人去樓空,今已破爛不堪,目前僅三兩戶人家和兩間觀音廟。由於這裡已不通快艇,故到此必須完全靠陸路。 地圖:怎麼到夢之湖? 沿著174縣道走,看到往王爺宮方向轉,一直往下走就到了

3/19/2013

VR, cubemap, cube map

https://developer.apple.com/safaridemos/showcase/vr/ - implementation without webgl

关于z-index的那些事儿

关于z-index的那些事儿

现 在似乎更清晰了,关于为什么红色盒子跑到其他盒子的后面。原始的例子只包含两个堆栈上下文,根元素和形成span.red的那个。当我们添加 opacity到span.red的父节点上,形成了第三个堆栈上下文,结果显示在span.red上的z-index值只能应用在那个新的堆栈上下文 中。因为第一个<div>(应用opacity的那个)和它的兄弟元素没有position或者z-index值的集合,他们的堆栈顺序是由 他们在HTML里的源顺序决定的,也就是说第一个<div>,和它的堆栈上下文里的所有元素被第二个和第三个<div>元素分 离。
3.2. Transparency: the ‘opacity’ property - 無法在一個 stacking context 插入一個外來的 layer
Since an element with opacity less than 1 is composited from a single offscreen image, content outside of it cannot be layered in z-order between pieces of content inside of it. For the same reason, implementations must create a new stacking context for any element with opacity less than 1. If an element with opacity less than 1 is not positioned, implementations must paint the layer it creates, within its parent stacking context, at the same stacking order that would be used if it were a positioned element with ‘z-index: 0’ and ‘opacity: 1’. If an element with opacity less than 1 is positioned, the ‘z-index’ property applies as described in [CSS21], except that ‘auto’ is treated as ‘0’ since a new stacking context is always created. See section 9.9 and Appendix E of [CSS21] for more information on stacking contexts. The rules in this paragraph do not apply to SVG elements, since SVG has its own rendering model ([SVG11], Chapter 3).
CSS 定位之 z-index 问题分析
可以这样理解:定位树中包含了 DOM 树中 position 不为 staitc 的全部元素. 而非同级元素比较层级关系可以比较如下. 向上遍历定位树的父节点直到 2 个元素为同级元素. 根据上面的结论来最最后的比较, 层级高的元素会越靠近用户的显示器并能覆盖层级低的元素

via: What has bigger priority: opacity or z-index in browsers?

ref: CSS z-index 属性的使用方法和层级树的概念

3/18/2013

微软老将Philip Su的离职信:回首12年职场生涯的心得和随笔

微软老将Philip Su的离职信:回首12年职场生涯的心得和随笔

过去的 12 年里,我一直很喜欢在微软工作,但是今天是我在微软的最后一天。 我一直是一个比较随意的人,所以我希望今天的信也一样是有个性的、有争议的、乐观的、凭感觉的,而可能没有让人读后很满意的答案。 请不要在我的信里找连贯性,因为你是不会找到的。如果有内容冒犯了你,那你可能不太了解我,因为我经常会在无意中冒犯到别人,几乎已经成为了定律。 谢谢所有的一切。 上大学时,我从来没有想过在微软工作。但我 1997 年的时候在微软实习后,就对它一见钟情:免费的饮料、自己的办公室、奔腾 66... 一个程序员还能要求什么?几年后,我实习时的老板突然离职了。他电脑的硬盘当时发生了故障,丢失了几个月的工作。他说这是一个来自上天的征兆。我不知道他现在人在哪里,在做些什么事情。 人们在拿到一个不好的业绩审查后总是会抱怨老板和上级不公平而且不客观。但是你不觉得,每个人对自己的评估其实是最不客观的吗?我有时会平和地告诉别人这一点,但是没有人信。 不要不吃甜的东西。吃饭时先吃甜点。 在处理人际关系时,我们应该运用奥卡姆剃刀原理,也就是对于别人的行为,找到最简单,最信任别人的解释。对那些爱搞办公室政治,勾心斗角的人敬而远之。 大学里的教授评估往往会参考学生在那门课得到的成绩,因为学生的成绩与他对教授的评价有很明显的关系。我一般不会认真听一个业绩不好的人对他老板的吐槽,但是如果一个业绩好的人批评他的老板,我会洗耳恭听。 让行动代表你。但是注意自己说的话,因为言语是有力量的。 如果你不断做公司最需要的事情,你是一定会被重用的。有人说,不是的,人际关系和在人前表现自己更重要。我不明白,如果你持续做对公司意义很重大的事情,怎么可能不被别人注意到。我很讨厌程序员问我怎么才能在人前表现自己。他们也很讨厌我的答案“把事情做得更漂亮”,觉得我是在讽刺他们。 做一个真诚的人。给别人建议时不要考虑自己的利益。我从没有说服过任何人加入我的团队,或者说服他们不要走,仅仅因为我需要他们。 听人说话时尽量理解,讲话时尽量容易让别人理解。 好的创意很多。伟大的创意常常会遭受嘲笑,除非你去实现它。不要光说,用行动来证明你的点子。在大学的一门创业课里,我讲了一个网上租看和邮寄电影光碟的点子,我当时把它起名叫“NetVideo”,所有人都觉得很荒唐。以前我讲这个故事是为了炫耀我当时多么有远见(指后来用相同点子起家的上市公司 Netflix),但是现在我讲这个故事是想告诉你,行动和执行是最重要的。 你在微软最终的职位级别是什么?请不要说 CEO 或科技院士,因为我几乎可以保证你达不到。对自己能力更现实的认识会帮助你更准确找到目标,而且也会让你更加快乐。一位副总裁曾经告诉我, 他已经做到了他在微软能做的最高职位。这不是假谦虚,也不是抱怨。他对自己很自信,而且很有事业心。他只不过是对自己有很清楚的认识,而且懂得满足。不要放弃,也不要出卖自己。但是你要正确认识你自己。 如果你只采用你赞同的反馈,那很有可能这些反馈从一开始就不是你需要的。真正有价值的反馈是那些你在一开始并不赞同的反馈。要不然,你怎么去发现你的盲点? 有能力而且有流程的人永远会做得比有能力而没有流程的人更好。 不要惧怕流程。惧怕没有能力的人控制流程。惧怕流程试图去弥补人们缺乏的能力。 我管理过 150 人的开发团队。我估计 60% 的人觉得自己应该是排名在前 20%。我从来没有遇见过认为自己是排在最后 10% 的人。 Mini 会怎么做?一个经理曾经很严肃的问我,我是不是 Mini-Microsoft。 等我离开微软后,你们就会知道了。(Mini-Microsoft 是一个写微软内情的匿名博客,在微软内部有很大影响力) 在微软这么大的公司中,你一定能够找出职位比你高,但你认为能力却不如你的人。但是你不应该钻这个牛角尖,因为这只会让你气馁。你应该做的是找到和你级别差不多的,但是你很佩服的人。你能从他们身上学到什么?你有什么他们不具备的优点? 一个人,要么有激情,要么没有。一个期望管理者把他工作变得更有趣的人是走不了多远的。 有一次在必胜客,我看到所有签信用卡的笔上都插上了小花,放在一起的时候看起来像一束鲜花。我问服务员,这是必胜客的新政策吗?她说不是,是她自己弄的。你是不是也很想聘用这样的员工? 愤世嫉俗的人是一事无成的。不要和第一反应总是质疑的人交流,你会吃不消的。 我有一位同事,他在我 1998 年加入微软的时候已经在微软干了 15 年,应该有足够的钱来买一栋楼。但是他每天还是开一辆破旧的 Datsun 汽车来上班,来编程。说这不是他深爱的事业,会有谁信呢? 去读 Tony Hsieh 的《Delivering Happiness》吧,它会改变你的一生。 给我一位优秀的工程师,我会很乐意拿五个“还不错的”工程师跟你换。 练习如何有说服力的表达你不同意的观点,如果你不这样做,你就会在心里暗骂与你“道不同”的人是蠢货一个。聪明人会明白为什么其他聪明的人有时会不同意。 发生问题的时候,人们总是让管理人担当责任。你什么时候见过底下的工程师说过:“这是我的错,应该写在我的业绩审查里面。我会把它修好,或者辞职。” 你最想加入的团队就是最难进的团队。 如果你很容易就能够拿到公司对你许多很好的评价,可能这说明你进入了错误的团队。 你还在坚持练习你的技术么?运动员天天训练,音乐家也会演练更难的曲章。你呢? 有些新员工会问我获得职业成功的秘诀。当我告诉他们答案是“努力工作”时,他们通常会很失望。这听起来像陈腐的说教,还像是自夸。如果我的答案是“我之所以能够爬到中层管理岗位是因为我很善于给上级拍马屁”,他们也许会更满意。我来微软的第一年就带了个睡袋到办公室,而且经常加班,周末的时候,我也是在写代码,学习新技术。我会看团队管理和如何与人沟通的书籍。才智相当的人在职业生涯上会有不同的发展,主要是因为他们的付出有多有少。如果有人另有说法,那他可能是想向你“兜售”点什么。 跟随杰出的人,为杰出的人工作。 最重要的是:做人要诚信。你必须信任和你一起工作的人。罗斯福有一次开除了他的牧场主,因为那位牧场主偷了邻居的牛,然后把它们放到了罗斯福的牛群中。当他的朋友询问他为什么时,罗斯福回答 “为我偷东西的人,也会从我这里偷东西。” 一位 PM 曾经评价过一位在会议上很具进攻性的副总裁,“我宁可让他从我这边往别人那里喷,而不是从别人那里往我这里喷。”听到的所有人都笑了。我更希望谁也别喷谁。 康威定律(Conway’s Law):“设计系统的组织,最终产生的设计等同于组织之内、之间的沟通结构。” 永远不要发出组织的架构图。-Steven Sinofsky 你可以通过三种方法控制你的结果:1. 控制人,你可以选择雇佣谁,解雇谁,把什么人放到什么位置上;2. 行为控制,你可以告诉他们该做什么;C. 结果控制,你告诉他们需要什么样的结果而度量标准是什么。你要知道什么时候适合用什么方法。 当你被介绍认识同事的孩子或者配偶时,这种感觉是不是很好?在一瞬间,工作和生活之间的隔阂消失了,你会联想到篮球,音乐会,庆祝晚宴等。当我对同事不满意的时候,我就会用这些提醒自己。 我喜欢看到有才能的人们做他们最擅长的事情,因为这能够很好的激励我。我在上海的一个胡同里面看到一个大厨把一个篮球大小的面团用手拉成了 8 个人吃的面条,而且整个过程都在一分钟内完成。我们每人都具有惊人的潜能。 当我编写的 Dr. Who 网站(微软内部查询人的工具)受到了法律事务部的一些抗议时,有人把一个两英尺高的“Dalek”塑像放在我的办公室里,表示支持。我现在还不知道这是谁做的,但是如果你在读这封信,谢谢。 交朋友不要考虑这个人对你有没有用。回复所有人的邮件,无论他是副总裁还是一名实习生。这条建议可能会降低你的效率,但你也应该这么做。 我们以前经常会有免费的啤酒和吃的,基本每一个产品的大小里程碑都会有一次庆祝。我们为什么现在没有了?我知道答案,但是真的,为什么?省那点钱值得吗?现在的微软比从前更好了吗? 有一天, 一个标贴出现在微软雷德蒙西区的冰箱上,它是这样写的:“你知道微软每年在饮料上要花费掉几百万美金吗?饮料是公司的,请不要带回家”。这使我非常郁闷的原因很多,简单说几个: 有人闲到打印出这些标贴并且把它们贴到了冰箱上。 有人在领工资干这件事情。 有人认为员工带走几瓶饮料是值得微软去注意的问题。 一个人能带走几瓶饮料呀?而一位微软人每小时的薪水和福利是多少?我们盈利来自于最大化我们能抓住的机会,而不是最小化我们的成本。我相信,做财务的人看到这段话会想揍我。相信我们赚钱的能力,把注意力放在赚钱上面,而不是省钱。 带领和管理的艺术是让人们想去做你认为必须要做的事情。 你在微软最开心的是什么时候?是什么让你这么开心?你怎样可以做得更好? 如果中了彩票大奖,你会做什么?当中有什么是你现在就能动手做的呢? 所有发生的一切都是从个人开始的。(事在人为。)

福斯零件

0926747347 阿賓, 我零件和保養的耗材都是找他

Bulletproof Demos

Bulletproof Demos

We all like to build software which is reliable, but every once in a while it seems like a good idea to demo something still in it's unreliable infancy. Google Chrome has a little known feature which can help. Record modes let you record every request Chrome makes. Playback mode serves requests out of that recorded cache just as if they were being loaded on the spot. It doesn't record where you click or what you open, just every request as it moves over the wire. These instructions are tuned for OS X, but can be adapted to any operating system. 1. Start by closing Chrome (after copying down these instructions!) 2. Open a Terminal (Cmd+Space then type "Terminal") 3. Type open -a "Google Chrome" --args --record-mode and hit enter. 4. Run through your demo, and close Chrome, returning to the terminal. 5. Type open -a "Google Chrome" --args --playback-mode and hit enter. 6. Everything will be served out of the recorded cache, even if your servers have exploded, a bug has been deployed, or the conference wifi has dropped out. Thanks to commenter Michael Kenniston we have these commands for Ubuntu (and most other Linux): google-chrome --record-mode google-chrome --playback-mode As with the OS X instructions, remember to close Chrome before beginning and between steps. Once we have verified Windows instructions, we'll post those as well!

台灣--被財團主導的社會

台灣--被財團主導的社會

“As long as politics is the shadow cast on society by big business, the attenuation of the shadow will not change the substance.” -- John Dewey 「一旦政治受到財團的影響,無論財團的影響力有多少,都不會改變政治為財團服務的本質。」 早年在1960年代台灣剛開始工業化的時候,當時的人們只要有一技之長,幾乎都能在台灣社會裡找到好工作。在那個時代,台灣的政治力量十分強大,戒嚴體制提供政治力量強大的保護傘。台灣的公司主要為黨國所經營的公有企業,如中油,中船等等。私人企業發展的空間並不大。 但接著,在各種國際情勢的影響下,台灣專制的政權逐步的解體,而社會運動也逐漸興起。台灣政治的開放降低了國民黨對於黨國經營企業的控制權,而私人企業在政府有意的扶植之下,也逐漸成為市場上的大宗。由於市場不穩定,只要稍有資本並引入國外技術,就可以在市場上成為不錯的公司。在蔣經國過世後,李登輝為了鞏固權力,選擇和商業及黑道結盟,開啟了台灣的黑金政治(註1)。台灣的私人財團開始在政治舞台上扮演角色。 在政治開放的狀況下,媒體也漸漸的開放,脫離由黨國所控制的年代。當時的報社已經為三強鼎立的狀況(自由,聯合,中時),但電視台的經營需要不少資本,因此有些電視台由政治人物集資成立,如民視(註2);但大部分的電視台為財團所成立。而由於政治開放的緣故,各個媒體不必只說政府好話,也因此這些媒體開始出現各自的商業及政治取向。如自由時報社長向來支持李登輝,因此在李登輝離開國民黨後,其政治取向逐漸朝綠營靠攏(註3)。 現在台灣雖然有很多的有線電視業者,但事實上,這些業者或多或少都受到來自財團的力量影響。財團老闆對於媒體內的人事具有任命權,因此這些媒體員工會自動的選擇新聞取向(自我審查)以滿足上面的老闆。而最極端的例子莫過於被旺旺收購以後,蔡衍明和中時集團在旺旺中時併購中嘉案中的表現(註4、5)。在這個事件中,記者的文章被長官改寫以投老闆所好,而拒絕批判老闆敵人的人則只能離職(註6)。台灣市場太小,媒體無法單純經由閱聽人的購買獲利(註7),大部分的媒體開始使用業配新聞(註8),或是報導符合老闆政治取向的新聞,使用名嘴節目煽動對立(註9),以賺取金錢。例如:TVBS的2100全民開講和三立的大話新聞對同樣的事物往往有不同的解讀,遇到和媒體本身政治取向衝突的,說法還會轉彎。 台灣人民就在這種狀況下被洗腦。既然有線電視是財團的,老闆會希望媒體怎麼評論自己?當然是講有錢人生活多辛苦,講有錢人過去多努力才有今天。可是媒體卻沒有告訴閱聽人,王永慶是因為違法盜伐珍貴林木才撈到第一桶金(註10),而成立的台塑集團卻黑心到獲頒黑星球獎(註11)。當年還好陳定南力擋王永慶,否則宜蘭縣民就會跟現在的麥寮的居民一樣暴露在致癌風險中(註12)。那些名人傳記真的會說出實情嗎?媒體讓老百姓認為:那些人之所以可以當老闆,是因為他很努力,他很勤奮,他很節儉,所以才成功(註13),卻對這些有錢人曾經利用的制度、法規漏洞或是階級利含糊其詞,甚至不提。 藉著天下,遠見,Cheers這類雜誌的推波助瀾,讓一般人覺得:只要藉由努力,就有成功的機會。這類雜誌投中產階級保守的價值觀所好,天天寫著似是而非的成功學,但是卻沒有告訴讀者這些有錢人利用不公正的制度到底獲取了多少利益。就像戴勝益這篇「戴勝益忌諱靠爸 不准兒女接班」的新聞,文章裡寫著戴勝益忌諱靠爸,卻又提到他送子女出國(註14)。送子女出國不就是靠爸嗎?另外這篇「釣到魚,要分享才會開心」的文章說,十七年前,戴勝益離開家族企業,憑著好人緣借來的一億六千萬元,他創立了自己的第一個事業「BB樂園」(註15)。關鍵字在於「家族企業」和「好人緣」。究竟是多好的人緣可以在17年前借到一億六千萬?到底有幾個台灣人可以創業11次還餓不死?這些好人緣,有多少不是以前在家族企業裏面認識的?這些資源,又有多少是一個普通人可以找的出來的? 有錢人往往都有關鍵一戰取得第一桶金,政治人物也都有關鍵一戰取得關鍵職位。就像李登輝逼退郝柏村(註16),蔣介石的奪權(註17),也都是這些人們人生中非常重要的大事。可是這些事情往往參雜很多是非,因此幾乎不會在傳記裏面提到。所以黃春明說不要看偉人傳記(註18)就是這個道理。因為這些媒體只會說好話,而不會告訴閱聽人真相。而真相,往往是殘酷的。 當這些媒體成為有錢人、財團和政客的打手之後,可怕的事情就開始出現了。這些媒體不只有些東西不說,有時候還會刻意錯誤地解讀數據誤導大眾(註19)。在政治方面,財團會藉由政治獻金等方式扶植對自己有利的政治人物(註20),然後藉由媒體來美化這些政治人物(註21)。人民習於接受媒體的觀點,沒有質疑,沒有思考,還把媒體給予的觀點當成自己的論點,投票支持媒體和財團所偏好的政治人物。當這些政治人物上台以後,就可以推行對財團有利的政策。甚至這些政治人物也不避嫌的在公司行號兼職擔任董事長等職務。 根據澄社2007年的調查,在113席立委中,有41席立委兼任其他公司職務(註22)。如果這個政策有爭議,政府和財團就會利用業配新聞和媒體對民眾進行洗腦,塑造民意以通過那些對財團有利的政策(註8)。台灣的資本主義就此成為裙帶資本主義,而台灣的民主就成為空殼(註23)。這些政策和想法在媒體的美化之下,很多人民往往還會當成自己的觀點,支持那些對財團有利的政策。例如這些財團常常出來喊話要求政府像南韓補助三星一樣地補助自己(註24),卻對南韓錯誤政策造成的大量債務絕口不提(註25)。財團出來大喊房市是經濟的火車頭(註26),卻不告訴人民房市炒作犧牲的是老百姓的利益,成就的是財團的利潤(註27)。台灣的工商團體善於透過媒體塑造民意,影響政策的改變(註28、29)。在媒體上常常會看到財團在賺錢的時候出來喊話,要求政府鬆綁政策,開放市場,支持自由市場(註30);但是等到虧損嚴重,財團又會要求政府注資,給他們融資貸款(註31)(如果是全然的自由市場,則政府不該給公司注資,應該放任公司倒閉。)。而人民對這樣的論點也深信不疑。因為媒體告訴大家,要是大公司倒了,失業率就會增加;但是媒體沒說的是:大公司倒了,經營的更好的小公司會長大,而新的公司會更有競爭力,也能給勞工更好的待遇,就像芬蘭對待NOKIA那樣(註32)。資本主義的本質是創造性破壞。更有效率,更高效能的企業應當取代這些無法符合市場需求的企業。 在國外,如果公司或企業太大,造成壟斷,媒體會提出質疑,司法會介入,以反托拉斯法分拆公司。因為資本主義對消費者最有利的狀況是自由競爭,而對企業最有利的狀況是壟斷。在壟斷的狀況下,企業可以不受任何控制的提高價格,賺取大量的利潤,再以雄厚的資本阻止其他公司進入市場。西方國家理解壟斷的危害,因此制定了反托拉斯法。但是在台灣,許多通路商都會聯合漲價。通常理由是是原物料上漲--但是從來不見漲上去的東西因為原物料下跌而降價(註33)。如果是自由競爭的狀況下,廠商為了搶佔市場,會主動降價求售;但是在台灣幾乎沒有看見,因為這些廠商已經聯合漲價了。像台灣的農業,收購的中盤商也往往只有一間,中盤商的價格再爛,農夫也只能賣(註34)。這種行為形同壟斷,卻不見政府或司法單位出來調查,也不見媒體出來質疑或是調查。因為政府、媒體基本上和財團關係良好,何必調查這種事情去砸朋友或是金主的腳呢? 對於老闆來說,員工的薪資愈少,工作時數愈多,對老闆就愈有利。而派遣人力的人力銀行為了討好老闆,讓老闆願意使用他們的平台,不惜塑造出各種假民調,假新聞,讓民眾恐懼失業,打壓勞工薪資(註35)。台灣的勞工薪資就在這種狀況下,只能在形同壟斷的工作環境下工作(因為市場上都是這個價格,求職者沒有選擇。)。台灣開始出現呼聲,希望政府開始出來管制企業主不要剝削勞工;但是由於政府也和財團過從甚密,因此勞委會雖是公家機關,卻形同虛設。對於CNN報導台灣工時過長一事,勞委會只說可能是個案(註36),要了解,要加強勞檢(註37)。但是如何了解?如何加強?根據新聞,裁罰563件,罰款總額為新臺幣1210萬2000元。這樣平均一件只罰約兩萬元(註38),這樣的開罰對於企業主真的有效力嗎? 財團的魔爪不只伸向勞工,還伸向教育。許多的財團老闆在電視上站出來,要學校多生產企業需要的人才(註39)。這件事情基本上也是在降低企業成本。只要人才多,競爭大,工資水平就會在競爭下往下拉。而企業還可以省下自己的教育成本。更重要的是,教育應當訓練學生去應付未知的問題,而企業主只要求學校訓練學生去應付已知的問題;結果連企業也無法應付未知的未來,在變動的市場下逐漸被邊緣化。 為什麼這樣的狀況會在台灣出現?最重要的原因在於台灣人的價值觀。台灣主流價值觀事實上來自中國的儒家價值觀。而中國經過了數千年的專制政權,儒家價值觀所鼓勵的觀點和所服務的政治體系都是符合專制政府的。從小到大,台灣人被鼓勵的第一件事情是「乖」和「聽話」,「囝仔人有耳無嘴」,台灣的教育制度也不教育學生獨立思考的能力;而君君臣臣父父子子的觀念進一步的告訴台灣人:不能要求別人,只能要求自己。不要踰越本份去要求長官。孔子說:「君子有三畏:畏天命,畏大人,畏聖人之言。」(註40)。因此大部份老百姓相忍為謀,卻不知道政客和財團已經在背後瓜分大眾的利益;就算知道,也只會兩手一攤說沒辦法。千年來的專制政權讓台灣人們本能的保護自己:不要知道,不要去想,只要有個聖王出現,這個人自然會給人民們幸福的生活;只要公司老闆賺錢,老闆自然會多僱用員工,提高員工薪資福利,給大家更好的生活。但是,台灣選了有道德的人當總統,台灣人的生活幸福了嗎?台灣的大老闆賺錢了,台灣的失業率有降低嗎?台灣人的生活水準有提高嗎? 台灣的社會就是這樣沈淪下去的。不問公平,不問正義,中產階級的保守觀念又只自私的只想要自己好好的活著。這些主流價值認為窮人之所以窮,遊民之所以流浪,是由於他們不努力(註41)。至於政治,就交給那些精英,甚至要是有個有道德的聖人就好,這不是人民們的本份(註42)。這些中產階級習慣於被媒體餵養,聽從那些大師與專家的「投資意見」,爭相投入股市,然後被抬轎的財團套牢;聽到不悅耳的真話就說是偏激,看到勇於表達意見的人群就說是暴民(註43)。看看那些不投票的年輕人,或是那些在競選活動場合跟著呼喊口號的選民,究竟有誰曾認真的去了解和思考過候選人的政見?台灣已經是民主國家,而不是專制國家了。但大多數人仍不關心政治,不關心自己的權益,結果就是失去自己應得的待遇,失去自己應有的生活。台灣理應要有轉型後的產業,而不是還在代工的企業;台灣的企業理應多重視研發,給台灣的人才發揮的機會,而不是以高工時壓榨員工(註44)。台灣的稅制應當可以縮小貧富差距,而不是擴大貧富不均(註45)。台灣的政客在考量政策時應該先想到投票給他們的選民,而不是那些給他們政治獻金的財團。這樣的台灣社會造成台灣的企業逐漸大型化,中小企業的比重下降(註46)。近年來,經營中小企業的狀況更形嚴峻(註47)。這樣的結果造成階級流動更加困難。底層的人民就在高工時,低工資,高房價和高物價的狀況下被壓的喘不過氣,而在同時,財團藉由這些低廉的勞動力、減稅以及炒房等手段,在政府政策的鼓勵下一再的增加獲利,降低成本,並且用獲得的利益更進一步的主導台灣社會。如同圖一所示,台灣就此陷入惡性循環的死結。 但是因為大多數的人並不關心,新聞媒體也不斷美化環境,許多人仍舊不知道發生什麼事情。甚至大多數台灣人在工商團體和媒體的誤導下(註48),還誤以為是新一代的年輕人問題(註49、50)。事實上,許多台灣的年輕人已經看透這一點。在網路上,這些年輕人私下常稱台灣為鬼島;而且許多有能力的年輕人都已經轉往國外發展,並且已經有一片天了(註51、52)。而在鬼島上的人,還是只能苦苦掙扎。 民主社會變成由財團主導的假民主,最該負責任的是誰?事實上最該負責的是台灣的人民。民主政治不只是人民作主,人民在作主的同時也負上了對政治的責任。但是民主政治裡集體投票的特性讓人民產生責任分散的效應(註53),容易出現「我這一票並不重要」的錯覺,轉變為集體冷漠。如果大多數的台灣人忘記自己對政治的責任,懶得用自己的腦袋思考,受到媒體的左右,只隨著自己的感覺和喜好投票,就會給予財團和政客可趁之機(註54),更嚴重的甚至會失去民主。人民不經思考,不負責任的決定,將會使民主制度名存實亡,就像當年的德國威瑪共和國被希特勒粹奪取政權一樣(註55)。 解決之道其實不是沒有。只要大多數的人停止收看那些財團撐腰的媒體,在網路上尋找公正的新聞來源(如BBC中文網、紐約時報中文網、台灣公共電視等等),多利用社群網路取得其他資訊,有機會多多關心政治。如果要台灣人能夠明白,依靠好的領導人,不如依靠正確的制度(註56);如果更多人有思考能力,拒看台灣那些已經被財團綁架的媒體,媒體就會停止造神,開始往中立客觀的方向發展。不過筆者對於這樣的發展持悲觀的態度。民主政治不只是民眾作主,民眾也應當為政治負責,而這與台灣主流的價值觀是有衝突的。台灣有太多問題是來自於自私自利,漠不關心的價值觀。價值觀造就了台灣人的思維和行為模式。只要價值觀不改,台灣的政治不會改,台灣的教育不會改,而台灣的社會就只能這樣沈淪下去。 ● 註1:台灣黑金政治:http://zh.wikipedia.org/wiki/%E5%8F%B0%E7%81%A3%E9%BB%91%E9%87%91%E6%94%BF%E6%B2%BB ● 註2:民間全民電視公司:http://zh.wikipedia.org/zh-tw/%E6%B0%91%E9%96%93%E5%85%A8%E6%B0%91%E9%9B%BB%E8%A6%96%E5%85%AC%E5%8F%B8 ● 註3:自由時報:http://zh.wikipedia.org/zh-tw/%E8%87%AA%E7%94%B1%E6%99%82%E5%A0%B1 ● 註4:旺旺中時併購中嘉案:http://zh.wikipedia.org/wiki/%E6%97%BA%E6%97%BA%E4%B8%AD%E6%99%82%E4%BD%B5%E8%B3%BC%E4%B8%AD%E5%98%89%E6%A1%88 ● 註5:我曾侍候過米果國王(不太算是懶人包):http://blog.chinatimes.com/dander/archive/2012/07/30/2317785.html ● 註6:人生總有非賣品 我拒絕旺中老闆保衛戰:http://cherryaki66.blogspot.com/2012/08/blog-post_31.html ● 註7:普通人的自由主義-專業媒體的迢迢長路:http://chenjiayuh.blogspot.com/2011/04/blog-post_16.html ● 註8:(我做了一個夢)關於「媒體危機解密」:http://blog.chinatimes.com/dander/archive/2010/12/14/580172.html ● 註9:從TVBS李慧芬事件看台灣政論節目的綜藝化傾向:http://blog.roodo.com/cylin1999/archives/14250505.html ● 註10:王永慶:http://zh.wikipedia.org/zh-tw/%E7%8E%8B%E6%B0%B8%E6%85%B6 ● 註11:「恥」不見了! 跨國社群緊盯台塑污染行徑 頒「黑星球獎」:http://alingling.blogspot.com/2010/05/blog-post_20.html ● 註12:學者研究:5鄉鎮罹癌率 六輕「顯著相關」:http://www.libertytimes.com.tw/2009/new/jun/8/today-fo4.htm ● 註13:《經營之神》王永慶:http://www.businessweekly.com.tw/feature/detail.php?id=85&p=1 ● 註14:戴勝益忌諱靠爸,不准兒女接班:http://tw.news.yahoo.com/%E6%88%B4%E5%8B%9D%E7%9B%8A%E5%BF%8C%E8%AB%B1%E9%9D%A0%E7%88%B8-%E4%B8%8D%E5%87%86%E5%85%92%E5%A5%B3%E6%8E%A5%E7%8F%AD-023810299.html ● 註15:釣到魚,要分享才會開心:http://www.businessweekly.com.tw/article.php?id=38159 ● 註16:二月政爭:http://zh.wikipedia.org/wiki/%E4%BA%8C%E6%9C%88%E6%94%BF%E7%88%AD ● 註17:【昨天的陰謀政變】蔣介石的奪權之路!:http://sophist4ever.pixnet.net/blog/post/25553493-%E3%80%90%E6%98%A8%E5%A4%A9%E7%9A%84%E9%99%B0%E8%AC%80%E6%94%BF%E8%AE%8A%E3%80%91%E8%94%A3%E4%BB%8B%E7%9F%B3%E7%9A%84%E5%A5%AA%E6%AC%8A%E4%B9%8B%E8%B7%AF!(%E4%B8%8A) ● 註18:「藝文新訊」黃春明:別讓孩子看偉人傳:http://blog.udn.com/eastolga/5519400 ● 註19:李濤不是唯一有理性的人──失業問題的真相:http://mhperng.blogspot.tw/2012/09/blog-post_26.html ● 註20:遠雄金脈揭密-政治獻金大公開:http://panhan3.pixnet.net/blog/post/35345335-%E9%81%A0%E9%9B%84%E9%87%91%E8%84%88%E6%8F%AD%E5%AF%86-%E6%94%BF%E6%B2%BB%E7%8D%BB%E9%87%91%E5%A4%A7%E5%85%AC%E9%96%8B ● 註21:談造神運動-從陳水扁到馬英九:http://www.wretch.cc/blog/No1Kelvin/6456212 ● 註22:2007年澄社國會評鑑:http://www.taipeisociety.org/node/177 ● 註23:裙帶資本主義:http://zh.wikipedia.org/wiki/%E8%A3%99%E5%B8%B6%E8%B3%87%E6%9C%AC%E4%B8%BB%E7%BE%A9 ● 註24:以美韓為鏡 張忠謀籲馬政府 珍惜本土產業:http://www.libertytimes.com.tw/2011/new/oct/26/today-t2.htm ● 註25:要學韓國可不可以不要慢半拍:http://ethias.blogspot.com/2012/05/blog-post_31.html ● 註26:楊玄吉:房產是火車頭產業:http://tw.news.yahoo.com/%E6%A5%8A%E7%8E%84%E5%90%89-%E6%88%BF%E7%94%A2%E6%98%AF%E7%81%AB%E8%BB%8A%E9%A0%AD%E7%94%A2%E6%A5%AD-213000816--finance.html ● 註27:房市的財富效果:http://jbwu.pixnet.net/blog/post/42008550-%E6%88%BF%E5%B8%82%E7%9A%84%E8%B2%A1%E5%AF%8C%E6%95%88%E6%9E%9C-(1)-%E8%AA%B0%E6%90%AC%E8%B5%B0%E8%AA%B0%E7%9A%84%E4%B9%B3%E9%85%AA ● 註28:證所稅敗給了右翼民粹主義:http://www.coolloud.org.tw/node/68964 ● 註29:林濁水炮轟藍綠版證所稅(民進黨還是有腦筋清楚的人):http://davidli.pixnet.net/blog/post/37529724-%E6%9E%97%E6%BF%81%E6%B0%B4%E7%82%AE%E8%BD%9F%E8%97%8D%E7%B6%A0%E7%89%88%E8%AD%89%E6%89%80%E7%A8%85(%E6%B0%91%E9%80%B2%E9%BB%A8%E9%82%84%E6%98%AF%E6%9C%89%E8%85%A6%E7%AD%8B ● 註30:龔天行喊話別怕金融對等開放:http://news.chinatimes.com/focus/501011701/122012080900124.html ● 註31:經長證實茂德獲銀行增資五十億:http://estock.marbo.com.tw/asp/board/v_subject.asp?ID=5014658 ● 註32:最大企業落難,芬蘭竟敢不救:http://www.businessweekly.com.tw/article.php?id=43864 ● 註33:馬政府應要求各層廠商降價,以反映原物料價格下跌事實:http://blog.udn.com/hcyang1527/2339903 ● 註34:吃不飽餓不死─何處是原鄉青梅出路?:http://www.newsmarket.com.tw/blog/2867/ ● 註35:人力銀行民調亂象肆虐 惡整上班族薪資!:http://www.naipo.com/Portals/1/web_tw/Knowledge_Center/Editorial/publish-28.htm ● 註36:太拚命 台灣過勞現象上了CNN:http://news.chinatimes.com/focus/501012109/112012101100076.html ● 註37:工時太長常過勞 勞委會:加強勞檢:http://news.chinatimes.com/focus/501012109/132012101100964.html ● 註38:勞檢開店商家未給加班費違法多罰款共上千萬:http://ican168blog.pixnet.net/blog/post/28175911-%E5%8B%9E%E6%AA%A2%E9%96%8B%E5%BA%97%E5%95%86%E5%AE%B6%E6%9C%AA%E7%B5%A6%E5%8A%A0%E7%8F%AD%E8%B2%BB%E9%81%95%E6%B3%95%E5%A4%9A%E7%BD%B0%E6%AC%BE%E5%85%B1%E4%B8%8A%E5%8D%83%E8%90%AC ● 註39:57%企業:碩、學士能力不符需求:http://www.appledaily.com.tw/appledaily/article/headline/20090915/31941353 ● 註40:中国传统文化的冷思考:http://blog.sina.com.cn/s/blog_482712a301000bkt.html ● 註41:我們為什麼要在乎遊民?:http://www.coolloud.org.tw/node/54451 ● 註42:走鋼索的民主:http://richter.pixnet.net/blog/post/22369983-%E8%B5%B0%E9%8B%BC%E7%B4%A2%E7%9A%84%E6%B0%91%E4%B8%BB ● 註43:所謂中產階級的省思:http://www.wretch.cc/blog/bonddealer/14368019 ● 註44:HTC掰掰:http://www.wretch.cc/blog/chloewu100/19003507 ● 註45:全民經濟與富人經濟:http://mhperng.blogspot.tw/2012/10/blog-post_22.html ● 註46:台灣與日本中小企業發展變遷之比較研究:http://www.globalpes.com/Crossstrait/TJSME.htm ● 註47:每天倒閉246家,台灣企業 保不住消失中的朝夕?:http://magazine.sina.com/bg/excellence/279/2007-11-21/ba43265.html ● 註48:社會新鮮人抗壓性不足,2個月就快閃http://www.nownews.com/2011/07/29/11490-2731278.htm ● 註49:草莓族,或被犧牲的一代?─台灣的案例:http://mhperng.blogspot.tw/2012/09/blog-post_3509.html ● 註50:六、七年級生,你為何不生氣?:http://blog.career.com.tw/managing/default_content.aspx?na_id=100&na_toolid=401 ● 註51:沒有野心的台灣人:http://mypaper.pchome.com.tw/polyandry/post/1323144762 ● 註52:找無人才真相!慣老闆給薪差 年輕人赴澳打工狂增十倍:http://tw.naipo.com/Portals/1/web_tw/Knowledge_Center/Editorial/publish-44.htm ● 註53:責任分散:http://zh.wikipedia.org/zh-tw/%E8%B4%A3%E4%BB%BB%E5%88%86%E6%95%A3 ● 註54:為自己而戰—淺談七年級生的政治冷感症: http://www.wretch.cc/blog/chloewu100/19040149 ● 註55:趣谈何为真正的民主:http://blog.china.com.cn/3981818/art/7736804.html ● 註56:美國護士瑪麗發錯藥之後:http://plamc.pixnet.net/blog/post/27470846-%E8%AB%87%E3%80%8A%E7%BE%8E%E5%9C%8B%E8%AD%B7%E5%A3%AB%E7%91%AA%E9%BA%97%E7%99%BC%E9%8C%AF%E8%97%A5%E4%B9%8B%E5%BE%8C%EF%BC%88%E5%80%9F%E9%91%92%EF%BC%8C%E5%A6%82%E4%BD%95%E7%9C%8B ● 註57:本文線上發佈網址為:http://goo.gl/gv188

3/12/2013

用NodeJS打造你的静态文件服务器 - CNode

用NodeJS打造你的静态文件服务器 - CNode

1. response 要帶 expire header + cache control, 同時出現時 cache control 優先權高, 在 expire 之前瀏覽器不會來問 2. 每個 request 要帶上 Etag + Last-Modified header, 第二次 request 的時候 browser 會把這兩個資訊帶過來問, request with 'if-modified-since' header, 這也要處理
var ext = path.extname(realPath);
ext = ext ? ext.slice(1) : 'unknown';

if (ext.match(config.Expires.fileMatch)) {
    var expires = new Date();
    expires.setTime(expires.getTime() + config.Expires.maxAge * 1000);
    response.setHeader("Expires", expires.toUTCString()); // HTTP 1.0
    response.setHeader("Cache-Control", "max-age=" + config.Expires.maxAge); // HTTP 1.1
}
3. 為所有 response 都加上 Last-Modified header
fs.stat(realPath, function (err, stat) {

    var lastModified = stat.mtime.toUTCString();

    response.setHeader("Last-Modified", lastModified);

});
4. 檢查 If-Modified-Since header
if (request.headers[ifModifiedSince] && lastModified == request.headers[ifModifiedSince]) {
    response.writeHead(304, "Not Modified");
    response.end();
}
5. 加上 gzip
var raw = fs.createReadStream(realPath);
var acceptEncoding = request.headers['accept-encoding'] || "";
var matched = ext.match(config.Compress.match);

if (matched && acceptEncoding.match(/\bgzip\b/)) {
    response.writeHead(200, "Ok", {'Content-Encoding': 'gzip'});
    raw.pipe(zlib.createGzip()).pipe(response);
} else if (matched && acceptEncoding.match(/\bdeflate\b/)) {
    response.writeHead(200, "Ok", {'Content-Encoding': 'deflate'});
    raw.pipe(zlib.createDeflate()).pipe(response);
} else {
    response.writeHead(200, "Ok");
    raw.pipe(response);
}
6. range: bytes=0-99,从0到99之间的数据字节。 bytes=-100,文件的最后100个字节。 bytes=100-,第100个字节开始之后的所有字节。 bytes=0-99,200-299,从0到99之间的数据字节和200到299之间的数据字节。
exports.parseRange = function (str, size) {
    if (str.indexOf(",") != -1) {
        return;
    }

    var range = str.split("-"),
        start = parseInt(range0], 10),
        end = parseInt(range[1], 10);


    // Case: -100
    if (isNaN(start)) {
        start = size - end;
        end = size - 1;
    // Case: 100-
    } else if (isNaN(end)) {
        end = size - 1;
    }

    // Invalid
    if (isNaN(start) || isNaN(end) || start > end || end > size) {
        return;
    }

    return {start: start, end: end};
};
var compressHandle = function (raw, statusCode, reasonPhrase) {
        var stream = raw;
        var acceptEncoding = request.headers['accept-encoding'] || "";
        var matched = ext.match(config.Compress.match);

        if (matched && acceptEncoding.match(/\bgzip\b/)) {
            response.setHeader("Content-Encoding", "gzip");
            stream = raw.pipe(zlib.createGzip());
        } else if (matched && acceptEncoding.match(/\bdeflate\b/)) {
            response.setHeader("Content-Encoding", "deflate");
            stream = raw.pipe(zlib.createDeflate());
        }
        response.writeHead(statusCode, reasonPhrase);
        stream.pipe(response);
    };

if (request.headers["range"]) {
    var range = utils.parseRange(request.headers["range"], stats.size);
    if (range) {
        response.setHeader("Content-Range", "bytes " + range.start + "-" + range.end + "/" + stats.size);
        response.setHeader("Content-Length", (range.end - range.start + 1));
        var raw = fs.createReadStream(realPath, {"start": range.start, "end": range.end});
        compressHandle(raw, 206, "Partial Content");
    } else {
        response.removeHeader("Content-Length");
        response.writeHead(416, "Request Range Not Satisfiable");
        response.end();
    }
} else {
    var raw = fs.createReadStream(realPath);
    compressHandle(raw, 200, "Ok");
}
test with curl:
curl --header "Range:0-20" -i http://localhost:8000/index.html

3/11/2013

Are you Ready?馬拉松新手祕笈 (中)—飲食篇

Are you Ready?馬拉松新手祕笈 (中)—飲食篇

比賽前幾天到前晚 比賽當週、到比賽前幾天,可以多吃富含碳水化合物的食品,像是米飯、麵條、地瓜芋頭、雜糧麵包、各類水果等等。全麥製品能提供更多的維生素,也幫助消化,讓比賽週腸胃運作順暢。搭配適量的蛋白質和蔬菜,減少過多的油脂攝取,身體神清氣爽,準備迎接跑馬盛會。 賽前一天,應該吃平時習慣的食物,比例上仍應多攝取碳水化合物,但以好消化吸收的食物為主,像茄汁義大利麵、糙米飯、饅頭等等。賽前一天不要吃得太多,也不要吃得太油膩或過多的蛋白質,油脂與蛋白質消化時間較久,隔天早上可能消化不及造成腸胃不適,此外,也不要吃過多的纖維或易脹氣的地瓜、豆類、白蘿蔔、包心菜、汽水等等。 比賽當天 跑馬當天,起床時可以先喝一杯溫開水,幫助腸道排空;早餐一定要吃,但要避免消化不及,所以建議在開賽前2小時食用完畢較理想,選擇簡單易消化的碳水化合物,如全麥麵包、饅頭、或便利商店隨手可能的御飯糰都可以。 整裝前往比賽會場和熱身時,可以每隔20分鐘左右喝一點運動飲料,保持血糖穩定。若有喝咖啡的習慣,要注意咖啡可能利尿而跑廁所。 前往起跑線準備出發時,可以再喝一點運動飲料,幾口就好,或帶個鋁箔包,開賽前喝掉。 比賽途中 比賽過程中最好每經過水站都要喝幾口水,身體在運動過程中代謝、比平常更需要水分補充,等到已經渴了才喝,往往已是過度缺水,這可能讓你頭昏倦怠、口乾心煩;喝水也不要牛飲,定時補充,少量多喝才適當。 有些比賽會提供運動飲料,可以在靠近水站時觀察工作人員身後的飲品種類,以辨別水杯中裝的是何種飲品;若大會有提供補給食物,可以視個人狀況吃一點,以不影響些續跑步的食物與份量為主。有個小地方要注意,若剛吃了補給品或能量膠,則喝水不喝運動飲料,運動飲料糖分濃度高,和補給品一起食用會影響水分補充和消化速度。 若有攜帶個人補給品,則應在賽前依練習狀況安排定期補給時間,而不是沒力了才吃,比方說21公里與32公里後各吃一包能量膠就是不錯的安排;若比賽是個大熱天,也可以攜帶方便補充的電解質膠囊或鹽錠,但別忘了要喝水。 賽後恢復 完賽總是令人興奮,此時注意一些小地方可以讓賽後的身心更為舒暢。緩和,伸展後馬上補充碳水化合物和適量的蛋白質,比例大約是4:1,即時的補給能啟動身體的恢復機制,補充醣分,幫助蛋白質合成與防止分解。可以事前準備調味乳、加糖豆漿、或牛奶巧克力等食物,好不容易完賽了,吃些甜食犒賞自己吧!

3/08/2013

How to match animation rate of gif files accross browsers (Fenrir Developer's Blog)

How to match animation rate of gif files accross browsers (Fenrir Developer's Blog)

It becomes obvious that it is becoming slower when the frame rate is smaller than the supported speed. When the supported max frame rate is exceeded for a browser, the frame rate is forced to 0.1 seconds. (Different in some versions of Safari, Google Chrome) If you are thinking of making a gif animation in the near future, please remember: Keep the frame rate at a maximum of 0.06 seconds.