目前分類:未分類文章 (133)

瀏覽方式: 標題列表 簡短摘要
剛剛在facebook成立了一個有關FingerStyle的社團,歡迎各位新手老手加入喔!!!
Facebook 指彈台灣社團

Oscar 發表在 痞客邦 留言(0) 人氣()

好久沒更新啦~~
在雅虎實習也到了最後一週,要demo project了,大家都在加班,今天因為太累了就沒加班了
昨天在竹北弄熱力搖滾弄太晚沒時間坐車,所以要一大早就起床坐高鐵到台北趕上班
半睡半醒間彷彿以為自己還在六福村玩遊樂設施~_~

表演時拿的木吉他弦距好高,彈的我手好痛,我的手指大概是因為擦痘痘藥時有去角質的成份,繭都弱掉了
拿電吉他彈的話就輕鬆多了= =
很多學生都越來越厲害啦,劉德礎不錯唷,彈押尾的"翼~you are the hero",不過音還沒setting好就衝了= =有點可惜
彈押尾還真的需要一把好吉他彈起來才爽!

Oscar 發表在 痞客邦 留言(4) 人氣()

昨天改了一下樣式
也許有人會發現多了一個廣告
其實我也不喜歡廣告,但為了研究這種商業模式
就放了一個來試試
昨日收入…… 2 元
真是哭笑不得,哈哈~_~
如果我的網誌人氣是今天的100倍也才200元=.=

這種模式的廣告無疑的讓廣告點閱率大增
因為至少會有一個人(就是放廣告的人)去點
有名的大站的人氣也增加了他的曝光率
而且現在的廣告其實都滿有創意的
有空的話大家可以點進去看看~

Oscar 發表在 痞客邦 留言(0) 人氣()

哈哈,不好意思最近都不是吉他的文章
我已經變"半"個工程師啦XD
今天玩玩YAP,總算有比較懂一些
之前阿嗚的投影片還不是很懂
自己玩了一下後再看就懂多了,呵

Yahoo! 阿嗚大大的文章
http://josephjiang.com/entry.php?id=195

Oscar 發表在 痞客邦 留言(0) 人氣()

來源 http://www.songyan.com.tw/200805034877/index.html
內容再豐富的網站,如果慢到無法訪問也是毫無意義的; SEO做的再好的網站,如果搜索蜘蛛抓不到也是白搭; UE設計的再人性化的網站,如果用戶連看都看不到也是空談。

所以網頁的效率絕對是最值得關注的方面。如何才能提高一個網頁的效率呢?Steve Souders(Steve Souders的資料http://www.oreillynet.com/pub/au/2951)提出的提高網頁效率的14條準則,而這些準則也將是我們下篇中介紹到的YSlow工具的理論基礎:

第一條:Make Fewer HTTP Requests 盡可能的減少HTTP的Request請求數。

80%的用戶響應時間都是浪費在前端。而這些時間主要又是因為下載圖片、樣式表、JavaScript腳本、flash等文件造成的。減少這些資源文件的Request請求數將是提高網頁顯示效率的重點。

這裡好像有個矛盾,就是如果我減少了很多的圖片,樣式,腳本或者flash,那麼網頁豈不是光禿禿的,那多難看呢?其實這是一個誤解。我們只是說盡量的減少,並沒有說完全不能使用。減少這些文件的Request請求數,當然也有一些技巧和建議的:

1:用一個大圖片代替多個小圖片。
這的確有點顛覆傳統的思維了。以前我們一直以為多個小圖片的下載速度之和會小於一個大圖片的下載速度。但是現在利用httpwatch工具的對多個頁面進行分析後的結果表明事實並不是這樣。

第一張圖是一個大小為40528bytes的337*191px的大圖片的分析結果。
第二張圖是一個大小為13883bytes的280*90px的小圖片的分析結果。


一個大小為40528bytes的337*191px的大圖片的分析結果(點擊圖片可以查看完整大圖片)


一個大小為13883bytes的280*90px的小圖片的分析結果(點擊圖片可以查看完整大圖片)

第一張大圖片花費時間為:
Blocked:13.034s
Send:0.001s
Wait:0.163s
Receive:4.596s
TTFB:0.164s
NetWork:4.760s
功耗時:17.795s

真正用於傳輸大文件花費的時間為Reveive時間,即4.596s,多數的時間是用來檢索緩存和確定鏈接是否有效的Blocked時間,供花費13.034s,占總時間的73.2%。

第二張小圖片花費時間為:
Blocked:16.274s
Send:小於0.001s
Wait:0.117s
Receive:0.397s
TTFB:0.118s
NetWork:0.516s
功耗時:16.790s

真正用於傳輸文件的花費時間是Reveive時間,即0.397s,這的確要比剛才大文件的4.596s小很多。但是他的Blocked時間為16.274s,占總時間的97%。

如果這些數據還不夠說服你的話,讓我們看看下面這張圖。這裡列出了某個網頁中所有圖片中的花費時間示意圖。當然,裡面的圖片有大有小,規格不一。


大約80%以上的時間是用來檢索緩存和確定鏈接是否有效的Blocked時間。其中藏青色的為傳輸文件花費的Reveive時間,而前面白色的為檢索緩存和確認鏈接是否有效的Blocked時間。鐵一樣的事實告訴我們:

大文件和小文件下載所需時間的確是不同的,差異的絕對值不大。而且下載所需時間占總耗費時間比例很小。

大約80%以上的時間是用來檢索緩存和確定鏈接是否有效的Blocked時間。無論文件大小,這個時間的花費大致是相同的。而且所佔總耗費時間的比例是極大的。

一個100k的大圖片總耗費時間絕對大於4個25k的小圖片的總耗費時間。而且主要差別就是4個小圖片的Blocked時間絕對大於1個大圖片的Blocked時間。

所以如果可能還是使用大圖片來替代過多的瑣碎的小圖片吧。這也是為什麼翻轉門的效率要高於圖片替換實現的滑動門的原因。

但是,請注意:也不能用太大的單張圖片,因為那樣會影響到用戶體驗。例如個幾兆的背景圖片的使用絕對不是一個好主意。

2:合併你的css文件。

圖:合併與融合我以前犯了一個錯誤,你在看我《樣式表的組織與規劃》的系列文章中會知道。當時,我為了方便組織和規劃樣式表,將用於不同用途的樣式表文件分離開來,形成不同的css文件。然後在頁面中根據需要引用多個css文件。

根據「盡可能的減少HTTP的Request請求數」準則我們知道,那樣的確是不合理的,因為那樣會產生更多的HTTP的Request請求數。從而降低網頁的效率。所以,從提高網頁效率的角度上而言,我們還是應該將所有的css寫在同一個css文件中。但是問題又來了。那麼怎麼來很好的組織和規劃樣式表呢?這的確是個矛盾。我現在的做法是採用兩套版本。編輯版和發佈版。編輯版仍然使用多個css文件以便於規劃和組織。而等到發佈的時候,再將多個css文件合併到一個文件中去,從而達到減少HTTPRequest請求數的目的。

3:合併你的javascript文件。
原因和處理方法同上,不再贅言。

第二條:Use a Content Delivery Network 使用CDN

這個看上去好像很深奧的樣子,但是只要結合中國的網路特色,這個便不難理解了。「北方服務器」、「南方服務器」、「電信服務器」、「網通服務器」……這些詞聽起來是那麼熟悉和壓抑。如果,一個北京的電信用戶試圖從廣東的網通服務器上打開一個類似《壁紙合集》帖子的網頁時,你就能很深刻的理解。

鑒於這個不是我們開發人員力所能及的準則,所以這裡也就不多言了。

第三條:Add an Expires Header 添加週期頭

這個也並非開發人員來控制,而是網站服務器管理員的職責。所以,如果作為開發人員的你不瞭解和明白也沒有關係。還是把這個準則告訴公司的網站服務器管理員。

第四條:Gzip Components 啟用Gzip壓縮

這個大家應該比較熟悉。Gzip的思想就是把文件先在服務器端進行壓縮,然後再傳輸。這對於體積較大的純文字型的文件有特效。鑒於這也並非開發人員,而是網站服務器管理員的工作範疇,這裡就不詳細講解了。如果你對此感興趣,可以資訊貴公司的網站服務器管理人員。

第五條:Put CSS at the Top 把CSS樣式放在頁面的上方。

無論是HTML還是XHTML還是CSS都是解釋型的語言,而非編譯型的。所以CSS到上方的話,那麼瀏覽器解析結構的時候,就已經可以對頁面進行渲染。這樣就不會出現,頁面結構光禿禿的先出來,然後CSS渲染,頁面又突然華麗起來,這樣太具有「戲劇性」的頁面瀏覽體驗了。

第六條:Move Scripts to the Bottom 將腳本放在底部

原因同第五條一樣。只是腳本一般是用來於用戶交互的。所以如果頁面還沒有出來,用戶連頁面都不知道什麼樣子,那談交互簡直就是扯談。所以,腳本和CSS正好相反,腳本應該放在頁面的底部。

第七條:Avoid CSS Expressions 避免使用CSS中的Expressions

圖:CSS中的Expressions其實也是一種if判斷首先有必要先說明一下CSS Expressions是什麼一個東西。其實它就像其它語言中的if……else……語句。這樣在CSS中就可以進行簡單的邏輯判斷了。舉個簡單的例子——

這樣css就可以根結一些情況分別使用不同的樣式了。如果你對這個感興趣可以到我的博客上閱讀相關的文章—— 《CSS中的expression系列文章》。但是CSS中Expressions 的代價卻是極高的。當你的頁面需要根據判斷來渲染效果的元素很多的時候,那麼你的瀏覽器將長期處於假死狀態,從而給用戶帶來極差的用戶體驗。

第八條:Make JavaScript and CSS External 將javascript和css獨立成外部文件

這一條好像和第一條有點矛盾。的確,如果從HTTP的request請求數來講的話,這樣做的確是降低了效率。但是之所以這麼做,是因為另外一個重要的考慮因素——緩存。因為外部的引用文件會被瀏覽器緩存,所以如果javascript和css體積較大的時候,我們將它們獨立成外部文件。這樣當用戶只要瀏覽一次以後,這些體積較大的js和css文件就能被緩存起來,從而極高地提高用戶再次訪問時的效率。

第九條:Reduce DNS Lookups 減少DNS查詢

DNS域名解析系統。大家都知道我們之所以能記住那麼多的網址,是因為我們記住的都是單詞,而非http://202.153.125.45這樣的東西,而幫我們把那些單詞和202.153.125.45這樣的ip地址聯繫起來的就是DNS。那這一條對我們到底有什麼真正意義上的指導意義呢?其實有兩條:

1:如果不是必須,請不要把網站放到兩台服務器上。
2:網頁中的圖片、css文件、js文件、flash文件等等,不要太多的分散在不同的網路空間中。這就是為什麼那種只發一個網站中的壁紙圖片的帖子,要比壁紙圖片來源於不同網站的帖子顯示要快得多的原因。

第十條:Minify JavaScript and CSS 減少JavaScript和CSS文件的體積

這點很好理解。在你的最終發佈版本中把沒有必要的空行、空格和註釋全部去掉。顯然手工去處理效率太低,好在網上到處都是用於壓縮這些東西的工具。壓縮JavaScript代碼體積的工具隨處可見,我便不再列舉了,這裡我只提供一個用於壓縮css代碼體積的在線工具網站—— http://www.cssdrive.com/index.php/main/csscompressor
它提供了多種壓縮方式,可以適應多種要求。

第十一條:Avoid Redirects 避免跳轉

我只從網頁開發人員的角度來解讀此條。那麼我們可以解讀到什麼東西呢?2點——

1:「此域名已過期,5秒鐘以後,頁面將跳轉到http://www.xxxxxx.com/index.html頁面」,這句話看起來的確很熟悉。但是,我就奇怪了,為什麼不直接鏈接到那個頁面呢?

2:一些鏈接地址請更明確的寫出來。例如:將http://justinyoung.cnblogs.com/ 寫成http://justinyoung.cnblogs.com (注意最後面一個「/」符號)。的確,這兩個網址都能訪問到我的博客,但是,事實上,它們是有區別的。http: //justinyoung.cnblogs.com 的結果是個301響應,它會被重新指向http://justinyoung.cnblogs.com/ 。但是顯然,中間多浪費了一些時間。

第十二條 Remove Duplicate Scripts 移除重複的腳本

圖:對重複說「不!」這個準則的道理很淺顯,但是真正在工作中,很多人卻因為「項目時間緊」、「太累了」、「初期沒有規劃好」……這樣的理由搪塞過去了。你,的確可以找很多的理由不去處理這些多餘重複的腳本代碼,如果你的網站不需要更高的效率和後期維護的話。

也正是這點,我提醒大家一些,一些javascript框架、javascript包一定要慎用。至少要問一下:用了這個js kit 到底給我們多少方便,提高了多少工作效率。然後,再與它因為多餘的、重複的代碼帶來的負面效果比較一下。

第十三條:Configure ETags 配置你的實體標籤

首先來講講什麼是Etag吧。Etag(Entity tags )實體標籤。這個tag和你在網上經常看到的標籤雲那種tag有點區別。這個Etag不是給用戶用的,而是給瀏覽器緩存用的。Etag是服務器告訴瀏覽器緩存,緩存中的內容是否已經發生變化的一種機制。通過Etag,瀏覽器就可以知道現在的緩存中的內容是不是最新的,需不需要重新從服務器上重新下載。這和「Last-Modified」的概念有點類似。很遺憾作為網頁開發人員對此無能為力。他依然是網站服務器人員的工作範疇。如果,你對此有興趣,可以咨詢貴公司的網站服務器管理員。

第十四條:Make Ajax Cacheable 上面的準則也適用Ajax

圖:Ajax的使用要恰當現在的Ajax好像有點被神話了,好像網頁只要Ajax了,那麼就不存在效率問題了。其實這是一種誤解。拙劣的使用Ajax不會讓你的網頁效率更高,反而會降低你的網頁效率。Ajax的確是個好東西,但是請不要過分的神話它。使用Ajax的時候也要考慮上面的那些準則。

後記:
當然,上面的這些也只是供你參考的理論上的準則。具體的情況還是要具體的去對待。理論和準則只是用來指導現實工作的,卻是萬萬不可死記硬套。

Oscar 發表在 痞客邦 留言(0) 人氣()

{###_geniusking/15/1224955966.jpg_###}

他叫多多,在5/18不見的
貪吃又現實,給他看到吃的應該會聽坐下和握手的指令
頸上應該只有掛鐵鍊項圈
走路後腳有點歪歪的
幾年前是長這樣,現在可能比較胖一點

{###_geniusking/15/1224955967.jpg_###}

{###_geniusking/15/1224955968.jpg_###}

{###_geniusking/15/1224955969.jpg_###}

Oscar 發表在 痞客邦 留言(1) 人氣()

就是今天5/8,有人發現是我嗎?

Oscar 發表在 痞客邦 留言(0) 人氣()





最近一直下雨,就會一直想到這首歌
pia寫的歌,叫「同一個下雨天」
我就是喜歡一種簡單又動聽的感覺

Oscar 發表在 痞客邦 留言(1) 人氣()

在LAB都連不上
實在無腦…
跟交大Embedded夜市的棒球九宮格一樣無腦

Oscar 發表在 痞客邦 留言(0) 人氣()

如題,又開學了…
雖然我是一個一天不碰吉他會全身不對勁的人
但這學期因為簽約公司Elegant Tiger要來學校開課
壓力要變大啦~~~~(痘痘都跑出來了)
可能吉他就會少碰一點了,可能吧,對,只是可能
樂器行的教學也想暫時停掉了…至少平常日別排課
這樣應該可以減少一點壓力,痘痘才會消掉
P.S. 趁現在沒作業快早點睡了Z_Z

Oscar 發表在 痞客邦 留言(0) 人氣()

很快的一學期就在作業報告考試中結束了
交大北大門的上坡走起來也變成跟平地一樣
總覺得時間不太夠用,又覺得很多時間都浪費掉
這樣的生活,也算充實,來回想一下這學期

八月:暑修Grid & Cluster Computing
報告Cloud Computing

九月:開學、與碩班同學及學長姊們聚餐
運動、打籃球、網球、桌球、羽球,弄得我lab的位置什麼球都有
吉他社期初發表表演「翼~You are the Hero」與創作曲「爸爸媽媽」

十月:與鋼期社學弟才藝交換,學了一點鋼琴
認識清大的阿珠,人超nice的!
寫NP作業

十一月:HCG竹北店開幕茶會表演
寫作業、寫作業、寫作業
豊哥婚禮表演

十二月:報Paper(MailRank)、寫作業、寫作業
吉他社期末發表表演「灌籃高手演奏曲」與方大同「每個人都會」

一月:考試考試寫作業寫作業
資安軟體實驗成績與坤仔全班最高分
ND5奕力科技尾牙表演

希望下學期可以輕鬆點……雖然不太可能XD

Oscar 發表在 痞客邦 留言(1) 人氣()

http://tw.youtube.com/profile?user=meridithmonk&view=videos


這個彈法還滿有趣的




韓國小弟也來了




其他的也都好厲害!!

Oscar 發表在 痞客邦 留言(4) 人氣()

一年又過去了~
從阿兵哥變研究生、變吉他老師
其他同梯的也自己走自己的路
中翰要結婚
正好是我們弟兄聚會的日子
哈哈~
繼續coding....

Oscar 發表在 痞客邦 留言(1) 人氣()

Homework is like a sea.
I am drowning..........

Homework is like the flood.
I am drowning again........

Oscar 發表在 痞客邦 留言(0) 人氣()

心很亂

怎麼辦

來一碗

蛋炒飯



被騙進來了吧~~科科科{###_geniusking/2/1098711711.jpg_###}

Oscar 發表在 痞客邦 留言(6) 人氣()


這老兄真屌~

Oscar 發表在 痞客邦 留言(2) 人氣()

星期一身體不適~
在狂灌開水+看海角七號+星期二的休息下
已成了康復之王了~開心
要開始寫作業啦~~~~~
(明明很忙還接了浩然音樂祭的表演是怎樣=,,=)

Oscar 發表在 痞客邦 留言(0) 人氣()

唉...
一時衝動做了一件白痴的事
整個影響心情:(
眼看著作業週就要來了
卻沒心情寫作業...加上好像感冒了
鼻涕一直流,流著流著頭也昏昏的了
但也不是都壞的
這種心情練吉他
練超快的=..=

Oscar 發表在 痞客邦 留言(4) 人氣()


周杰倫的新歌,還滿好聽的。

Oscar 發表在 痞客邦 留言(0) 人氣()

颱風天怎麼可以那麼無聊啊~~

Oscar 發表在 痞客邦 留言(0) 人氣()