July, 2005 > 所有文章列表
臨睡前看到 joel 的這篇文章,實在太震撼,忍住睡意快寫下來。
這篇文章中joel提到他當年成立Fog Creek軟體公司的理念:
Best Working Conditions -> Best Programmers -> Best Software -> Profit!
他用了很長的篇符來解釋為何請最好的工程師對軟體公司很重要,原因如下:
-以生產軟體產品為主的公司,不像一般的製造業,例如wal-mart, 傳統製造業中人力成本越低,每件產品的單位成本就越低,因此製造業都會跑到東南亞設廠;但軟體產品的成本不會隨者銷售數量增加而倍增,一套產品寫出來後,成本只會隨者越賣越多而攤銷掉,不會上升。
-因此,一開始就請最好的工程師把產品寫好,這些成本反而可以更快回收。
Essentially, design adds value faster than it adds cost.
-好的工程師可以用更快更短的時間寫出更高品質的程式,這比請三個二流工程師還好,因為二流工程師只會把案子拖的更慢,效果更慘,而且永遠也生產不出一樣好品質的東西(人月真的只是神話)。
不過joel也提到,他的這套 高品質論 只適用於 software company, 而不是一般百大企業的IT部門,因為兩者的需求完全不同,就像沒有人會請dolly parton去婚禮唱歌一樣,她只適合大舞台。
全篇最讓人震撼的quote:
The mediocre talent just never hits the high notes, they just don’t have it
| by admin
下午大概從四點半起 dreamhost的mysql就開始不穩定,斷斷續續出現 databast connection error, 本來我還以為是這兩天玩plugin惡搞的太兇把db給搞掛了,結果連到 gslin也是同病相憐,心裏就好過了多了(哈哈~這是什麼心態…)
大約到了六點半左右已經恢復正常,附帶一提 dreamhost的客服回信真是快的驚人,如果每次downtime都能維持這樣短暫,我到是不介意偶爾發生一下。
| by admin
看了很多家提出的 tag 方案,目前為止對這個最中意,支援 technorati,也可以用free tag,只可惜沒法提供一個 presets讓人勾選,這樣就方便多了。
WordPress, WordPress Plugin, test tags, flash, actionscript
| by admin
wordpress 1.5採用了全新的theme概念來設定版型,因此以往一張 index.php通吃的作法就行不通了,大部份時後甚至連舊版型也無法直接套用到新系統上,因此乾脆趁這次移機順便設計一張新版型,然後照 v1.5的規則玩一遍版型製作。
簡單來說wp的版型是由五大部份組成,由上而下依序是:
-header.php: 網頁最上方的圖案、logo、導覽系統等...
-index.php:主要文章顯示區域, 裏面是一個大loop
-sidebar.php: 旁邊的連結區,例如可放 category, recent post之類的東西
-footer.php: 最下方通常是放版權聲明的地方
-layout.css: 這是全站精華之所在,所有的版型與視覺效果都靠它來設定。
而在 v1.5則是新增了下列版型要處理:
-404.php: 當找不到頁面時顯示的錯誤訊息畫面
-comments.php:顯示與填寫 comments的畫面
-page.php:單一頁面的內容版型
-search.php:搜尋結果版型
-single.php:單一文章的版型
一般情況下都是先將最上面的五大版型搞定,整個blog的視覺樣貌就勾勒出來了,之後有空再處理其它的版型。
對初學者來說,設計wp版型最基本的概念就是:區塊 與 程式碼。
區塊一般長這樣:
XML:
-
<div class="minientry">
-
....
-
</div>
程式碼則是長這樣
PHP:
-
<?php the_permalink(); ?>
-
<?php the_author() ?>
所以只要用先用 div 把版型上的區塊都排出來,然 後再放入適當的程式碼,例如 < ?php the_author() ?>,就可以在這個 div裏面填入作者的名稱。
更簡單一點想,你也大可先用 dreamweaver寫一張空的版型出來,只要命名規則清楚(最好follow wp的規則,例如 header, entry, comment, footer之類的),然後再將php code套進去就可以了。
以這次的製作來說,我是先用 fireworks 把版型做好,等確定滿意後,再依需要的部份將背景、logo、底紋分別輸出成gif,之後就看者這張版型到 dreamweaver寫 css,先用幾個大的 div tag將版型拉出來,再開始設定長寬與顏色,整個過程大約花兩天(反正最近支氣管炎頗嚴重也做不了正事,so....)
另外也趁這次機會來個plugin大進擊,把 wp-plugins站上所有的plugin都看了一遍,撈了大約十幾個回來,例如現在右邊可以看到的 recent-comments就寫的挺不錯,還可以分類。
還有一個 technorati tag也很好玩,我得仔細想想這種tag要怎麼融入blog才有真正的意義。
當然,我也找了
Actionscript:
-
class Myblog extends Blog implements WeTheMedia{
-
public function sayHello():Void{
-
trace("漂亮的 actionscript 2 語法顯示器啊");
-
}
-
}
接下去我得找一個強力的流量分析軟體,目前看過 awStats, web trends都不是很滿意,一個太陽春,一個太強大,我希望能找到的是以 php/mysql為主,可直接丟到hosting站上執行的程式,最好功能完整,畫面簡單易懂,有人可推薦嗎?
總之未來幾天只要病還沒好,我就會不斷的沒事找事做東改改西改改, 所以如果一下子連不進來也就別太訝異。
| by admin
*中文亂碼
大部份人升級wordpress 1.5時碰到的問題都是中文亂碼,尤其是如果原本用 mysql 4.0 而同時要升級到 mysql 4.1的話。
主要原因是mysql 4.1在語系方面增加了許多功能,它可以設定語系的層次從最底層的 server, database 到單一 table, column, connection 都可以設定,而除了語系之外,還可以指定搭配不同的 collation,所以組合百百種,只要一個錯了就難逃亂碼的命運。(而之前用mysql 4.0為何不用設定也不會出問題呢?主要原因是那時預設是 latin-1,正好相容大部份的utf-8字元,所以不常碰到亂碼)
所以如果你的情況跟我一樣,同時要將 wordpress 從 v1.2升級到 v1.5, 然後mysql也要 v4.0 升級到 v4.1 的話,請看下面流程:
0. 先進phpmyadmin找到可輸入 sql query的畫面,然後鍵入:
show variables like '%character%';
這句話會顯示目前資料庫使用的語系設定,一般國外的網站或剛裝好的 mysql 4.1預設都是 latin-1。
1 新增wordpress blog要用的database名稱,例如 myblog.
如果你熟悉 phpmyadmin 的操作,在畫面上就可以選擇這個新database 要用的語系,
charset 請選擇 UTF-8 Unicode (utf8)
collation 請選擇 utf8_general_ci (ci 代表 case insensitve 大小寫沒差)
2、改 database語系,同樣在 phpmyadmin 的query畫面鍵入下面兩行:
如果你在上一步中沒正確選擇語系,或是在看到本文前已經先建好database了也沒關係,用下面語法可以改回來
alter database myblog
character set utf8;
3、匯入舊的 sql
到這裏為止mysql裏面已經有一個 utf-8的 database, 可以準備倒資料進去了,把舊版的sql 文字檔直接copy-paste或上傳到 phpmyadmin即可。注意要告訴phpmyadmin這個文字檔是 utf-8 編碼的才能正確匯入。
根據我的經驗,總是會有一兩個小地方出問題,可能要手動修改一下內容,例如將某些中文字先換成英文,等倒進mysql後再進wordpress 改回來。
4、改 wp-db.php 的設定
前面曾經提過,mysql的語系設定是多層次的,前面我們把database與table的語系都設定正確,但程式與mysql連線時的語系則是由 connection 來決定,這部份就要改wordpress的程式碼,在 \wp-includes\wp-db.php 的第 44行加上:
$this->query("SET NAMES 'utf8'");
這句話會同時設定 client, results, connection三者使用的語系為 utf-8。
*最後檢查是否全部改成 utf-8
show variables like '%character%';
此時你應該會看到大部份欄位都是utf-8了,除了 server 這項之外,因為我是用別人的hosting主機,所以沒法兒改這部份,但平常做案子時大部份都可以直接控管mysql,此時就可以用 my.ini 設定:
[mysqld]
default-character-set=utf8
告訴mysql server啟動時要用 utf-8即可。
附帶一提,經過這樣調校的mysql,連接 flash - amfphp - php - mysql 也完全沒問題,可以互傳中文/日文。
| by admin
Next Posts
Previous Posts