Sunday, December 25, 2011

EZScript - 滑鼠鍵盤自動動作軟體

EZ Script

"EZScript是一款模擬鼠標與鍵盤動作的軟體。是國內第一個專業游戲輔助平臺軟體。他透過使用者自行製作的腳本,可以讓它代替您的雙手,自動的執行一系列的鼠標與鍵盤的控制動作。同時它還擁有可以判斷畫面顏色與圖形的指令,透過畫面顏色與圖形的變化,作出邏輯的判斷或比較,來完成您所需要的要求。"

教學手冊

參考PTT - ezhotkey版




.

Android 入門


Android 教學 | 孫傳雄談科技

"
Android SDK 教學課程講義懶人包是孫傳雄研究室從2010年撰寫至今的 Android SDK 應用程式開發教學網路講義集。我們的 Android SDK 教學內容會跟隨 Android SDK 應用程式開發技術發展而更新。我們盼從基礎的 Android SDK 下載安裝開始,透過詳盡易懂的圖文教學,帶領 Android SDK 應用程式開發初學者由淺入深地領略 Android SDK 應用程式開發樂趣。我們的電子聯繫信箱是 gururu.tw@gmail.com。"
(圖文擷取自原網址)

最棒最棒的Andriod教學網站
讓人非常輕鬆簡單的學習
推薦!!!!



參考網站:
[ 孫傳雄研究室 ] Android 課程講義集 **推薦!!
Android Developers (官網 英文)
AndroidBMI
推薦連結


推薦好書:
Android 2.X 黃彬華
Android 開發應用 實戰篇 Advanced Application Development

.

Wednesday, December 14, 2011

Http File Server 超快速HTTP架站機(提供檔案下載、上傳)

Http File Server 超快速HTTP架站機(提供檔案下載、上傳)

"Http File Server是個歷史還算滿悠久的簡易架站程式,他的主要功能就是讓一般使用者的電腦可以快速變成可下載、上傳檔案的網路伺服器。跟一般伺服器軟體不同的 是,Http File Server著眼於設定簡單、快速上手等目標,一般使用者只要將檔案下載回來並執行之後,就可以上線讓別人連線進來抓檔案,完全不需要太多的安裝與設定等 程序。

而Http File Server伺服器的主要功能就是讓大家透過IE、Firefox或Google Chrome等一般網路瀏覽器來連線,並進行檔案的下載與上傳工作。對於不懂FTP或其他軟體設定的人來說,可以用平常最熟悉的IE等瀏覽器來下載檔案, 也是最簡單最不用費心解釋的方式。"


.

突破開發者障壁

圖片出處:brunetteblogging.com


《Talker’s Block》:突破遊戲開發者障壁



"你想要成為「什麼」,就要開始做那個「什麼」,然後日日夜夜持續不懈地把那個「什麼」做到最好。

並不是打從一開始,我就能夠寫出有條有理且論述清楚的文章;事實上是經由這兩、三年裡不間斷的寫作發表,才得以使我的思緒越來越周密嚴謹,文字語句也逐漸清晰有條理。同理可證,沒有人是天生的設計者或創造者,想要成為什麼樣的人物角色,就得從現在就開始一點一滴地累積。

如果你還是個學生,那麼你很幸運,因為在學校的時候,是各位失敗成本最低的時期,盡全力去探索各種可能性,即使跌個頭破血流也是精彩的一頁。我給 「想成為遊戲開發者的人」的建議是:如果你想做遊戲,此刻就開始動手做吧!至少做出一打或更多的「爛遊戲」。失敗是最好的老師,青春正當揮灑燃燒。在琳瑯 滿目的免費工具引擎與書籍網站面前,唯一阻擋你的去路的人,只有你自己(或英語)。

時間,永遠是輸家口中最偉大的理由。夢想,在你說「沒有時間」的那一刻中槍倒地。只要每天寫一則短文,一年後你的寫作能力會飛躍到自己無法想像的程 度;只要每天投注 30 分鐘學英文,幾個月後你就會開始不害怕它們成群結眾的霸凌;只要少玩幾場《星海爭霸》或《英雄聯盟》,你每天都會有空閒的時間可以寫遊戲。

宮本茂的第一部作品不是《瑪利歐兄弟》,Will Wright 也並非第一天就做出《模擬市民》,那麼你的第一款作品何時誕生呢?愛,不是動動嘴巴就好,請用身體老老實實地去做。

"


.

Tuesday, November 29, 2011

文件閱讀指引

文件閱讀指引 - 洪朝貴

"GNU/Linux 上文件豐富, 不可能也不需要全部讀完. 本單元介紹如何閱讀手冊, 以最少的時間取得最需要的資訊. 使用各種手冊與文件 (線上教科書除外) 時請謹記: 不需要從頭讀到尾, 如果能夠善用 regular expression 只尋找你有興趣的部分, 將可大幅度減輕閱讀與記憶的負擔. )"


.

如何有效學習電腦 *推薦

如何有效學習電腦 -洪朝貴 *推薦

培養組合的力量, 讓新舊知識發揮相乘的效果
從錯誤訊息當中學習
其他有助於學習的方式
搜尋的技巧
具體的學習重點
融入新文化, 拓展新「思界」


"
1。習於略讀 各種文件:
Linux 上的文件多到不可能讀完。 你有興趣的文件可以細讀; 其他文件都可以略讀或只讀與眼前問題相關的章節。
2。加強基本英文閱讀能力, 走出臺灣狹窄的資訊空間:
閱讀技術性文章不會很困難的, 尤其不需要把術語當做英文來敬畏, 而要把術語當做數字代號或線索來協助我們在相關文件檔當中搜尋 我們要的資訊。 對於不了解觀念的人而言, 「水管」一詞會比「pipe」 更容易記嗎?
3。 勤作筆記:
學習新語言的測試程式, 花很多時間才試出來的命令/才解決的安裝問題, 各種設定檔, URL, 同學的經驗, bbs 上看到的小技巧, 高手指導的 e-mail, ..。 以上種種, 都應該小心保存, (何不乾脆用電腦做筆記?) 不要太相信自己的記憶力。 設定檔中自己動手修改過的設定, 也算是筆記; 不用的設定還是要保留 (註解掉就好)。
4。珍惜學習成果, 勤作備份:
我每天備份 1-3 次, 每次存 4 份, 分別放在硬碟, cf 記憶卡, zip 磁碟片, 1.44MB 軟碟片上面, 每一份包含完整版 (最近一年更動過的檔案; 1.44MB 磁碟片放不下) 及更新版 (最近 15 天內更動過的檔案) 已經很多年沒有因為 format 或系統出問題而遺失重要資料的悔恨了。 如果你把備份的工作想成是備份整個分割區, 當然會很懶得做; 但其實重要的資料真的很少, 只要認真整理過一遍, 全部收集在同一個目錄下 (必須放在特定目錄的設定檔等等, 或許可以用 symbolic link / 捷徑 來取悅系統) 再寫一個簡單的 script 或 batch file 並排入每天自動執行的工作, 就可以高枕無憂了。
5。善用網路資源:
從前人那裡可以得到的, 不只是程式, 還有很多資訊。 綜合地說, 就是要善用網路上既有的資源。 有一位同學不滿專題指導老師放牛吃草, 於是在專題報告時, 指導老師欄位填上 "google"... 這說明了想要畢業, 搜尋引擎比老師更重要 :-)
6。養成良好的使用習慣, 避免使用 root 帳號:
Linux 再怎麼好, 再怎麼不怕病毒, 一碰上不小心 (或新手) 的 root 使用者, 一切優勢都喪失了。 我的 root 帳號幾乎不 customize, 所以很難用。 我又在 .cshrc 中加了一句:
set prompt = "%U%{\033[41;37m%}%m:%~%#%{\033[0m%}%u "
讓 root 的提示符號變得很刺眼。 Bash 的使用者可在 .bashrc 中加上
PS1="\[\033[4;41;37m\]\h:\w\$\[\033[0m\] "
(螢幕控制字串請見 「反樸歸真: 文字模式下的程式設計」)。
"


.

字串樣版 Regular Expression

字串樣版 Regular Expression

"Regular Expression (簡稱 regexp 或 RE) 是什麼? 有人直譯為「常規表示式」; 筆者偏好意譯, 姑且叫它「字串樣版」。 Regexp 是一組大約三四十個特殊符號, 只要學會其中常用二十來個, 就能搜尋字串/代換字串, 甚至完成許多滑鼠選單做不到的驚奇繁雜工作。 "


.

長線投資的電腦學習策略

長線投資的電腦學習策略 - 洪朝貴


.

Saturday, November 19, 2011

Linux程式設計

Linux程式設計

"課程投影片:

0. 前言(2003/11/11)
1. 簡介(2003/11/11)
2. 開發工具(2003/11/11)
3. 檔案與目錄I/O(2003/11/11)
4. 標準I/O函式庫(2003/11/11)
5. 系統相關檔案與資訊(2003/11/10)
6. 行程控制(2003/11/10)
7. 訊號(2003/11/10)
8. 進階I/O(2003/11/10)
9. 行程通訊(2003/11/10)
10. Socket程式設計(2003/11/10)

範例程式(說明):

簡介 範例程式
開發工具 範例程式

automake與autoconf 範例 說明
gdb 範例

檔案與目錄I/O 範例程式
標準I/O函式庫 範例程式
行程控制 範例程式
訊號 範例程式
進階I/O 範例程式
行程通訊 範例程式
Socket程式設計 範例程式
chatroom 範例程式
echo server 範例程式
"

非常好的網站



.

Monday, October 31, 2011

朱孝 國的筆記本 Peter Ju's Notebook

朱孝 國的筆記本 Peter Ju's Notebook

這個人的教學網頁相當不錯

簡單清楚 版面設計的十分漂亮 閱讀起來很舒服

推薦!


.

Saturday, October 22, 2011

Code::Blocks - 小巧的C++編輯器

Code::Blocks是一款Open source、跨編譯器、跨平臺的C++ IDE - from Victor易學記


"為什麼選擇Code::Blocks

Open source

如果有興趣的話,你可以看看它的原始碼,甚至修改它
跨平臺

能在不同平臺下用同一款IDE會是美好的事,你在Linux或是任何你喜歡的各種平臺下,使用Code::Blocks
支援多種編譯器

它支援多種編譯器,這讓你可以自由選擇,例如你想使用Visual C++的編譯器,同樣一個專案,你不必使用VC++的IDE在特地創建一個,只要切換編譯器就可以了
完善的功能

基本上該有的功能它都有,Debugger、Pre-build steps、自動完成 等功能該有的都有,例如在#include按右鍵選擇開起該檔案就可以直接開起那個表頭檔,名稱按右鍵也可以找到定義或實體
漂亮的介面、編輯器

漂亮的IDE讓人愛不釋手,從來沒有人喜歡醜陋的IDE,而它的語法高亮度編輯器也相當亮眼
彈性的設置

它該有的設置功能都有,編譯器參數、Pre/post-build steps等等
良好的擴充性

它支援插件的功能,如果你不滿意某些功能,或想要加強,可以上網找插件甚至自己寫一個,而專案的樣版也一樣可以自行修改、新增或上網下載
活躍的社群

Dev C++,已經有好幾年沒有更新,有很多bug都沒修複,但是Code::Blocks幾乎每天都有Nightly build釋出 (我記得好像有看過一個說法,說Dev C++原本開發人員不滿意Dev C++只有Windows版本,而出走開發Code::Blocks)
小巧且高效率

以這樣完備功能的編譯器來說,它是相當小巧而且高效率的,相較於eclipse,你就知道什麼叫做笨重、痴肥"


以上文字轉錄自Victor易學記

.

Monday, October 10, 2011

Tuesday, October 4, 2011

PTT 資工相關版

PTT版:
C_and_CPP 程設 ◎[C/C++]
CompBook 資訊 ●電腦書&資工用書正夯!
OOAD 程設 ◎Object-Oriented Analysis&Design
Programming 程設 ●Programming
StudyGroup 讀書 ◎====【讀書會】徵求新版主 ======
Tech_Job 工作 ◎科技業工作討論板
Soft_Job 工作 ◎軟體工作。分享/詢問
nb-shopping 硬體 ◎買筆電功課要做好 不然會死當的


.

學習的好方法!! from Head First 深入淺出系列




from "深入淺出Java程式設計"
的"我們認為Head Fisrt Java 的讀者是為了學習"一文
(其他部分全文)

"
.視覺化。
.運用交談與真人化的風格。
.讓學習者更深入的思考。
.取得並維持住讀者的注意。
.觸動情緒。
"


"你要如何大腦接受指揮:
1.慢慢來。了解得越多,你就越不需要死記。
2.做習題、寫筆記。
3.認真閱讀"沒有蠢問題"
4.不要只用一種姿勢
5.把這本書當作睡前讀物,不然至少要當作每天的最後一項挑戰。
6.多喝水。
7.大聲說出來。
8.傾聽大腦的聲音。
9.感受內容。
10.自己打程式並執行。
"



非常的有道理



.

Saturday, October 1, 2011

[轉錄] 一個程序員的成長六個階段

[轉錄] 一個程序員的成長六個階段

第一階段
此階段主要是能熟練地使用某種語言。
這就相當於練武中的套路和架式這些表面的東西。

第二階段
此階段能精通基於某種平臺的介面
(例如我們現在常用的Win 32的API函數)
以及所對應語言的自身的庫函數。
到達這個階段後,也就相當於可以進行真實散打對練了,
可以真正地在實踐中做些應用。

第三階段
此階段能深入地瞭解某個平臺系統的底層,
已經具有了初級的內功的能力,也就是“手中有劍,
心中無劍”。

第四階級
此階段能直接在平臺上進行比較深層次的開發。
基本上,能達到這個層次就可以說是進入了高層次。
這時進入了高級內功的修煉。
比如能進行VxD或作業系統的內核的修改。
這時已經不再有語言的束縛,
語言只是一種工具,即使要用自己不會的語言進行開發,
也只是簡單地熟悉一下,就手到擒來,
完全不像是第一階段的時候學習語言的那種情況。
一般來說,從第三階段過渡到第四階段是比較困難的。
爲什麽會難呢?這就是因爲很多人的思想變不過來。

第五階級
此階段就已經不再局限於簡單的技術上的問題了,
而是能從全局上把握和設計一個比較大的系統體系結構,
從內核到外層介面。可以說是“手中無劍,心中有劍”。
到了這個階段以後,能對市面上的任何軟體進行剖析,
並能按自己的要求進行設計,就算是MSWord這樣的大型軟體,
只要有充足的時間,也一定會設計出來。

第六階級
此階段也是最高的境界,達到“無招勝有招”。
這時候,任何問題就純粹變成了一個思路的問題,
不是用什麽代碼就能表示的。也就是“手中無劍,
心中也無劍”。此時,對於練功的人來說,他已不用
再去學什麽少林拳,只是在旁看一下少林拳的對戰,
就能把此拳拿來就用。 這就是真正的大師級的人物。
這時,Win 32或Linux在你眼?堿O沒有什麽差別的。
每一個階段再向上發展時都要按一定的方法。
第一、第二個階段通過自學就可以完成,
只要多用心去研究,耐心地去學習。

要想從第二個階段過渡到第三個階段,
就要有一個好的學習環境。例如有一個高手帶領或
公司?埵酗@個好的練手環境。經過二、三年的積累就
能達到第三個階段。但是,有些人到達第三個階段後,
常常就很難有境界上的突破了。他們這時會産生一種觀念,
認爲軟體無非如此,認爲自己已無所不能。其實,
這時如果遇到大的或難些的軟體, 他們往往還是無從下手。

現在我們國家大部分程式師都是在第二、三級之間。
他們大多都是通過自學成才的,不過這樣的程式師一般在
軟體公司也能獨當一面,完成一些軟體的模組。但是,
也還有一大堆處在第一階段的程式師,他們一般就能
玩玩VB,做程式時,去找一堆控制項集成一個軟體。

Saturday, September 10, 2011

陳鍾誠的網站 及其免費電子書

陳鍾誠的網站

作者
陳鍾誠,於金門大學資訊工程系,電子郵件:ccc@nqu.edu.tw,網站:http://ccckmit.wikidot.com

已完成 之免費電子書

  1. [2010] 系統程式 — 作者:陳鍾誠, 書號:F7501, 定價:480 元, 出版:旗標出版社, ISBN:978-957-442-827-4.
  2. [2010] 高等 C 語言 — 專業限定版,初學者請勿閱讀,初稿已完成。
  3. [2010] Wikidot 維基網誌 — 初稿已完成。
  4. [2010] C# 程式設計 — 初稿已完成。
  5. [2010] GNU 程式設計 — 初稿已完成。
  6. [2010] 組合語言 — 初稿已完成。
  7. [2005] PDF 檔案格式研究 — 初稿已完成。
  8. [2010] 歷史與系統 — 初稿已完成。
  9. [2010] Mercurial 版本管理系統 — 又稱 Hg,初稿已完成。
  10. [2010] 人工智慧 — 初稿已完成。
  11. [2010] JavaScript 程式設計 — 初稿已完成。
  12. [2010] 機率與統計:使用 R 軟體 — 初稿已完成。
  13. [2010] 網路資源運用 — 初稿已完成。
  14. [2010] 動畫設計:使用 Blender — 初稿已完成。
  15. [2010] Java 程式設計 — 初稿已完成。
  16. [2010] Android 手機程式 — 初稿已完成。
  17. [2010] 開放原始碼與智慧財產權 — 初稿已完成。


.

Wednesday, August 24, 2011

[電腦玩物] 2011我電腦中必備的免費軟體下載,給工作與學習的備忘錄

[電腦玩物] 2011我電腦中必備的免費軟體下載,給工作與學習的備忘錄





Evernote:Evernote 4.1 新增繁體中文、資料夾群組,與我的筆記整理方法

Xmind:http://www.xmind.net/

Windows Live Writer:Windows Live Writer 2011 部落格文章離線編輯軟體新功能點評

LibreOffice:LibreOffice 免費文書處理軟體中文版下載,替代盜版微軟Office

Ditto:快速上手 Ditto ,文書工作者必備的免費免安裝剪貼簿增強軟體

有道詞典:有道詞典:取詞精準免費翻譯軟體,實用的背單字、查百科功能

Everything:Everything 取代 Windows 內建搜尋,超快速檔案檢索工具

Docfetcher:DocFetcher 快找文件檔案內文的輕巧桌面搜尋器,支援中文索引

Q-Dir:快速上手Q-Dir 4.x,用多窗格、多分頁高效率瀏覽管理檔案

Dropbox:Dropbox 雲端資料同步軟體能用來幹嘛?10個我最常被滿足需求

PDF XChange Viewer:新版 PDF XChange Viewer 註解工具功能詳解

AntRenamer:Ant Renamer 快速大量檔案更名軟體,重新命名增加管理效率

Unlocker:Unlocker 「解鎖」無法移動、刪除、重新命名的檔案和資料夾

KeePass:個人帳號密碼的安全保險箱:KeePass Password Safe (附自動化填表技巧補完)

Fences:Fences 1.0 正式版推出!管理桌面圖示從此井然有序,美化優化桌面的收納盒

Launchy:Launchy 2.1.2 快捷列:最強快速啟動的完整優化指南

Firefox:我的 Firefox 攻略

PicPick:PicPick 3.0.3 三合一免費簡報、修圖、抓圖軟體,新增延遲截圖

RIOT: RIOT 批次圖檔壓縮減肥軟體,最佳化部落格圖片載入速度

Picasa:Google Picasa 網路相簿開始提供「技術性」無限容量上傳空間!

iTunes:iTunes 數位音樂管理中心 完全應用筆記

Digsby:Digsby:桌面上的交流中心,即時通、Email、社會性網路三合一

Focus Booster:Focus Booster 善用桌面電子番茄鐘,讓工作專注力加速

Workrave:Workrave 健康計時器,幫你預防電腦長期操作的職業病傷害

7-Zip:免費開源的高效壓縮軟體:7-ZIP4.43Beta 附圖標美化

Toolbox:IObit Toolbox 免費免安裝、應有盡有好上手的系統優化工具箱

EASEUS ToDo Backup:快速上手EASEUS Todo Backup 2.0 ,免費備份還原Windows系統

Comodo Internet Security:Comodo Internet Security 5.0 免費防毒防火牆軟體新手上手教學



.

Monday, August 22, 2011

App Inventor for Android,寫手機程式真簡單



[教學] 不管你幾歲,都能開發Android App

App Inventor for Android,寫手機程式真簡單

"Google不但推出App Inventor for Android免費開發工具,而且操作直覺,只要拖拉就可以完成簡單的Android程式,標榜不懂程式也沒問題。"


.

Sunday, August 21, 2011

Python入門懶人包

Victor 易記學 程式設計教學
最佳入門

Python参考手册 (第4版) 中文高清PDF下载

official website
Python官網

咬一口周蟒程式語言
中文化的python

Python Library Reference
它把python library一一條列剖析,不管那個api,都可在這本書裡面找到,再加上有詳細易懂的範例,實是不可或缺的python reference

A Byte of Python

Think Python How to Think Like a Computer Scientist
適合高手用


Oreilly.Learning.Python.4th.Edition.Sep.2009


Python CGI
http://www.tutorialspoint.com/python/python_cgi_programming.htm

史丹佛線上人工智慧課 5.8萬網友搶破頭

史丹佛線上人工智慧課 5.8萬網友搶破頭

免費聽史丹佛大學電腦課


這裡引述自http://www.wretch.cc/blog/sveng/902210的文章片段:

"史丹佛大學的學費很貴,但是他們有把一些課程錄影放在網路上,讓人免費觀賞、試聽。矽谷工程師活到老,學到老,近來吃飽閒來無事,便上網看一些課。這一門是叫做 CS106A Programming Methodology,有教 JAVA,講師風趣,學生只要發問他便丟巧克力給學生以資獎勵(難怪矽谷工程師當年大學四年上課從未發問,因為老師從未帶巧克力來鼓勵學生):(

看來也不錯,另外還有三門人工智慧、EE261 傅立葉轉換,還有一些矽谷工程師才疏學淺,從未聽過的課,有興趣的人不妨自己到 Stanford Engineering Everywhere 瀏覽一番。

這些錄影可以用 YouTube、iTunes 等各種方式觀賞,也可以下載微軟的 Silverlight 來看 Smartnotes。除了錄影之外,還有 transcript (講稿),所以如果聽不懂是因為單字不認得的話,還可以查字典。另外還有課程大綱 syllabus、講義 handout、作業 assignment、考試 exam 及解答 answer,頗為完整。

除此之外,YouTube EDU 和 iTunes STORE 裡的 iTunes U 也有很多大學課程,例如 MIT、 哈佛、 柏克萊‧ ‧ ‧ 等名校,像UC Berkeley 的 CS162 Operating Systems and System Programming

看來似乎也不錯,沒錢出國留學的可以自修、練英語聽力,準備出國留學的可以先試聽、模擬適應一陣子,國內教授類似課程的大學和補習班也可以拿來當作參考。 "




.

[Fun] Rubber duck debugging 橡皮鴨程序調試法

[Fun] Rubber duck debugging
橡皮鴨程序調試法

wiki

Sunday, August 7, 2011

Salman Khan:影片能改變教育 | Video on TED.com










http://www.khanacademy.org


我心目中最棒的TED影片 (ps演講完,全場起立鼓掌)


節錄演講片段:

"這是我第一次算導數會微笑。"

"而且這些影片永遠不會變老,它可以幫助他們的兒子、或孫子。
如果牛頓上傳一個微積分的youtubve影片,就用不著我了。​"

"我們只要把看影片變成他們的功課,然後把以前的回家作業,變成​在課堂上的習作。"

"這裡有幾件有趣的事:1.當這些老師開始這麼做時,學生可以用​自己的節奏學習,隨時暫停或複習。2.科技可以實現因材施教的方​法,老師可以從旁輔助,甚至讓學生互相教導學習"

"更好的是,我把這些綠色的學生,送到前線,教導他們的同學。"

"不盡讓人想到,我們身上所貼的這些好/壞標籤,有多少不過來自​偶然?"


----------------------------------------------

很棒!!!! 請先看這個介紹
Khan Academy - 超過 2100 部免費教學影片的線上學院!


"Khan Academy 並非一開始就存在,創辦人 Salman 原本也只是個用遠端教學教他姪女(Nadia)的家教,為了解決她對於七年級數學的一些困惑,經過他的教導,Nadia 終於趕上班級的進度,甚至還超前呢!之後他開始用類似的方法教他的其他兄弟姊妹,但因為他本身還有工作要做,且美國各地都有時差,為了解決這個問題,他開始製作教學影片並且把教學的內容放到 YouTube 上,他當時只是單純的想解決這個問題而已。(詳細可參閱網站的 FAQ)
影片來源:Simple Equations

沒多久,許多在 YouTube 上的學生以及大人看了他的影片之後,發現其內容之棒超乎想像,並且在底下的影片評論留下極佳的讚賞,短點的例如:「我怎麼沒有早點看到這些影片?」、「這真是太棒了!我受益良多!」當然也有很長的感想:「我從沒有聽過有人能說得這麼棒,你的影片著實的幫助了許多年親人以及成年人。我今年65歲,而我現在才能夠全然的了解代數是甚麼。學習一個新的概念就像一位衝浪者抓住一個波浪或一位登山者攻頂後一樣的興奮,這就是所謂的成就感,而這感覺真的讓人覺得很舒暢。非常感謝你的幫助使許多人感到滿足。(譯自原文)」

在影片中有提到一個學校的計畫,且居然在詢問後的幾天內學校就將一些年級教學課程給 Khan Academy 處理了!這真是太令人驚訝了,而且他們正在開發的軟體其功能非常強大…不過這裡不打算介紹軟體,因為筆者自己還沒使用過 XD

雖然目前的影片都是使用英文發音加英文字幕,但我想,若有人能夠幫忙翻譯的話,相信這些影片會對我們非常有幫助。因為在我觀賞過微積分的部分後,我對微積分的概念更加的清晰,並且真的使我受益良多!

而這全新的教育方式已經影響了許多人,依個人感覺它比目前台灣提倡的許多遠距教學來得有效果,並且其內容豐富的程度絕對超乎你的想像,內容淺顯而易懂,該有的一個都沒少,如果聽不懂的話還可以讓講者暫停、倒轉、重播…想聽幾次都沒問題,甚至還能在半夜叫他為你講課!

準備好接受這跨世紀的教學網站了嗎?超過 2100 部的影片、100 個自我練習測驗程式,範圍橫跨數學、物理、化學、金融以及歷史等領域!請準備好你的腦袋與紙筆,開啟音響,前往 Khan Academy 找找有沒有你感興趣、想加強的課程吧!"



.

周思博趣談軟體

周思博趣談軟體

一些給進階的程式設計師的經驗文章

列舉篇章:
程式師的使用介面設計手冊
讓錯的程式看得出錯
無痛錯誤追蹤
無痛功能規格
約耳測試: 邁向高品質的12個步驟
無痛軟體時程
軟體人員面試教戰守則




.

Friday, August 5, 2011

程式設計 遇上小提琴

程式設計 遇上小提琴
"Victor's個人部落格,關於程式設計與小提琴"

" 我是Victor Lin,Now.in的創辦人,興趣是程式設計,Python目前是我最喜歡的語言,從國一開始寫程式到現在已經有十個年頭,不過還有很多要學習,除此之外偶爾用小提琴製造一些噪音也是我的興趣之一 "


很棒的部落格,寫python,程式觀念,應用等等

推薦文章 那些在Now.in學到的 – Software engineering practices
"邊移動邊開火才是正確的方式,這有一部份的想法是來自約耳談軟體,如投影片所看到的,一開始先從最核心的功能做起就好,然後看使用者的反應與需求再來改版與新增功能,盡量保持每個開發循環很小,才能抓到使用者所要的"




.

李大師您多久沒寫程式了 ? 一百個你不應該繼續用Dev C++的理由

李大師您多久沒寫程式了 ? 一百個你不應該繼續用Dev C++的理由


學生連開新專案都學不會?

Dev C++最大一個特色就是不用開新專案就能編譯並執行程式,在我所知道的IDE裡這是極少數有這樣特性的環境,至少以現代的眼光來看盡是如此,如果是遠古時代的Turbo C之類的就不用比了,因為這樣特性的使然,一堆學生連開新專案都不會,你或許會說,不會開新專案又怎樣?

不會開新專案問題就大了,不管是debugger、編譯器設定、函式庫連結,這些都得先建出一個專案才能進行設定或使用,不管是Visual C++、Eclipse、Code::Blocks等你所能找到的所有現代IDE都是如此,連開新專案都不會就在寫程式就好像連走路都不會就在跑步一樣的糟糕

多數不清的臭蟲和怪異的行為

因為Dev C++專案已經陣亡多年,所以其中有數不清的臭蟲還有詭異的行為都沒有被修正,通常遇到了就像是鬼打牆一樣,debugger也是問題百出,常常有些同學的程式有問題拿來問我,我在檢查了多次都找不到問題所在,接著拿到其它的IDE下就能正常執行,最後發現其實是Dev C++本身的缺陷所引起的,只能苦笑著說是Dev C++發生鬼打牆,這對初學者有什麼影響?

這影響可大了! 初學者連最基本的東西都不會,他們需要的是一個可以信賴的環境讓他們可以知道什麼是對的什麼是錯的,但是今天這個環境連什麼是對的什麼是錯的都沒辦法確定,這樣有可能可以學好程式設計嗎? 有可能嗎?

無法教會學生使用除錯器

除錯器(debugger)是學習程式到底是如何執行的,以及找到錯誤的好幫手,有一點程度的程式設計師都知道這叫trace,也就是追蹤,但是因為Dev C++本身的問題,其除錯器的功能殘缺就算了,還有一大堆未知的臭蟲在其中,更慘的是搭配先前不用建專案就能執行,就算建了專案還得手動加入除錯的選項才能使用,使得用Dev C++教會學生正確地使用除錯器根本就是天方夜譚。

Monday, August 1, 2011

程式設計心法:化繁為簡,執簡御繁

程式設計心法:化繁為簡,執簡御繁(上)

程式設計心法:化繁為簡,執簡御繁(下)

"開發系統時,通常必須面對各式各樣看似十分繁雜多變的需求,但往往需求與需求之間本質上又有共通之處,倘若能夠掌握,就能更輕易處理這多變的需求。 "

"倘若,發現了qsort()的實作有問題或需要加以擴充,只需要修改這唯一的一份qsort(),其餘呼叫qsort()來針對不同型別進行排序的程式碼,完全不需要更動,重複程式碼在維護上的問題也完全消失。 "

"我們需要針對五花八門的型別進行快速排序,這是可以看到的繁複表象,但在繁複的表象之中,有一個很簡單的核心,就是快速排序的演算法本身。倘若我們能夠像這個例子中一樣的「化繁為簡」,那麼便能夠憑藉著既單純又簡化的核心,「執簡御繁」。 "


"此即本文所想要表達的重點,當你能夠「捕捉事物的共通性」建立起程式的核心時,就可以進一步透過「界定事物的相異性」,為不同的需求建立起搭配核心一同使用的殼。 "


"核心所表示的特質就是共通性,而殼所實作的,便是不同需求之間的差異性。「化繁為簡」意謂著透過分析的手段,從看似繁瑣的諸般變化找出共通性,簡單地說,共通性就是化約後的純淨表示。"


"在概念的階層分類體系中,愈往上層愈是一般化,愈是抽象,因為它代表的是底下所有概念的共通概念。而愈往階層分類體系的下方移動,概念就愈具象,所涵蓋的範圍就會愈來愈小。

物件導向的繼承機制,其實就是試著支援人類早已習以為常的知識分類方式。而且物件導向的精神在於,讓程式員試著以理解真實世界的方式,來描述解決真實問題的電腦系統。繼承機制的支援,希望程式員能夠更自然地運用概念分類階層,以真實世界的方式理解軟體系統的開發。"

Saturday, July 23, 2011

PTT - C語言新手十誡

在PTT的C_and_CPP板中


-------------

C 語言新手十誡(The Ten Commandments for Newbie C Programmers)
by Khoguan Phuann


1. 不可以使用尚未給予適當初值的變數
2. 不能存取超過陣列既定範圍的空間
3. 不可以提取不知指向何方的指標
4. 不要試圖用 char* 去更改一個"字串常數"
5. 不能在函式中回傳一個指向區域性自動變數的指標
6. 不可以只做 malloc(), 而不做相應的 free()
7. 在數值運算、賦值或比較中不可以隨意混用不同型別的數值
8. 在一個運算式中,不能對一個基本型態的變數修改其值超過一次以上
9. 在 Macro 定義中, 務必為它的參數個別加上括號
A. 不可以在 stack 設置過大的變數
B. 使用浮點數要注意精確度所造成的誤差問題
C. 不要猜想二維陣列可以用 pointer to pointer 來傳遞
D. 函式內 new 出來的空間記得要讓主程式的指標接住



.

編譯器與連結器的基本概念

編譯器與連結器的基本概念

C/C++ 語言的特性
作業系統如何執行一個程式
編譯器的工作

"一個程式所呼叫的函式可能在另一個原始碼檔案(.c 或 .cpp)當中,也可能在另一個機械碼檔案(.obj)中,也可能在程式庫檔案中(.lib)中,無論如何,當編譯器在編譯 HelloWorld.cpp 的時候它並不知道 printf( ) 的程式碼在哪裡,亦不知道程式的流程該跳往何位址,所以在編譯出的 .obj 檔案中這個「空格」會被保留下來,而由連結器(linker)收集了所有的機械碼檔案(.obj與.lib)以後,才將它們填上,其實程式庫檔案(.lib)只不過是一些機械碼檔案(.obj)的集合體。

承續上面的例子,如下圖所示,連結器所產出的可執行檔(executable file)裡面,它把 HelloWorld.obj 和 printf( ) 的機械碼都合併 HelloWorld.exe 當中了,所以在 HelloWorld.obj 當中呼叫 printf( )函式所造成的程式流程跳躍(jump),就變成了是同一個 .exe 檔案內(作業系統載入後是同一塊記憶體內)的位址跳躍了,所以連結器可以明確地寫上位址數值,總結地來說連結器所做的事情就是收集像這樣互相參考的機械碼、合併為執行檔、並且填寫這些機械碼之間的參考位址,這就是為甚麼通常由原始碼產生的可執行檔都會比原始檔案大很多,因為合併了許多來其他檔案的機械碼。

作業系統載入一個可執行檔的時候,它只會配置該程式的專屬記憶體,並且把可執行檔載入到記憶體當中,並從其中某個位置開始執行程式,所有該程式需要的一切,都必須已經在 .exe 檔案裡面,所以由原始碼產生執行檔的過程中,除了要編譯(compile)還需要經過連結(link)才能得到這樣的可執行檔。"


.

"Foo"的由來

教程式語言的書中常常用"foo"這個字作含式名字

那這個字是怎麼來的呢?

我好奇上網查了一下

發現其實有很久的淵源


資料來源

-------------------

"Foo" 的辭源

語法範例句中使用變數的第一個標準 (bar 、 baz 、 qux 、 quux 、 corge 、 grault 、 garply 、 waldo 、 fred 、 plugh 、 xyzzy 、 thud) [JARGON]
當使用 bar 有關的字眼,它追溯到二次大戰年代軍隊中的粗話縮寫 FUBAR ( 操到爛再來大修 , `***ed Up Beyond All Repair') ,後來演變成 foobar 。早期由 Jargon 的文件 [JARGON] 解釋這個變化是戰後精簡的粗話,但現在看來比較像是因 FUBAR 衍生的字 `foo' 或許 受德文 `furchtbar'( 可怖的 ) 影響, `foobar' 可能實際上就是這個原意。

至於單字 `foo' 本身從戰前在漫畫及卡通上開始出現,至少看起來是這樣。在西元 1938 年時, Robert Clampett 在華納卡通導演的 " 達菲鴨 " (The Daffy Doc) ,達菲鴨做個手勢說 "SILENCE IS FOO!" 是極早版本, `FOO' 以及 `BAR' 亦出現在 Walt Kelly 的連環漫畫 "Pogo" 中。最早的文獻該算是 Bill Holman 的有關打火弟兄的超現實連環漫畫 "Smokey Stover" 。大約從西元 1930 至 1952 年止,這本漫畫有各式的美式喜感,包括 "Everybody's" 。 "FOO" 這個字眼常出現在汽車車牌上;或是背景畫面中無義意的話,如 "He who foos last foos best" 或 "Many smoke but foo men chew" ;或者 Smokey 說 "Where there's foo, there's fire" 。連環漫畫的作者 Bill Holman 一直充滿了古怪的笑話和個人的奇謀,包括了其它的胡言亂語,諸如 "Notary Sojac" 及 "1506 nix nix" 。根據華納卡通指南 (Warner Brothers Cartoon Companion, WBCC) 所述, Holman 自稱 "foo" 這個字是由某個中國的小雕像底部來的。這似乎言之有理,中國的雕像通常都會加上趨吉避凶的刻文。這可能是中國字的 ' 福 ' (fu) ,有時將它譯成同音的 `foo' ,它是幸福的意思,口頭說時會搭配合適的語調。 ( 獅子狗守護在許 多中國餐 館的門口二側,正式的名稱為 ` 福狗 ') [PERS] 。英語的說法接納了 Holman 的 `foo' 這個胡說八道的字,肯定受了猶太的 `feh' 及英文的 `fooey' 及 `fool' 影響。 [JARGON, FOLDOC]

Holman 連環漫畫中將很有特色的消防車,稱之為 Foomobile ,它是二輪的車種。他的漫畫在 1930 年代極其流行,造成了印弟安那州已量產可用的 Holman 式 Foomobile 的傳說。根據美國漫畫百科全書 (Encyclopedia of American Comics, EAC) 的講法, `Foo' 曾在美國掀起一陣狂熱,發現經由流行歌曲,產生了超過五百個 `Foo 俱樂部 ' 。通俗文化使內含 `foo' 蔚為風潮 ( 包括了華納在 1938-39 年的卡通 ) ,但起源反而迅速遭到遺忘。 [JARGON]


......

-------------

ps.
網友uranusjr補充說
"Fucked up Beyond All Repair 其實是「爛到修不好」的意思,是在設
備根本不能用的時候狗幹用的..."




.

程式風格 - 命名規則與註解規則

程式風格 - 命名規則與註解規則

很棒的文章 整理出來命名規則
命名規則是寫程式很重要的東西

除此之外 在這個人的網頁中 還有UML基本概念和大型專案的觀念值得學習
這些是在其他地方不容易看到 需要特別找的
而這些在這裡被寫得很清楚 簡單 很讚



.

Thursday, July 21, 2011

vgod's [追求神乎其技的程式設計之道] 系列

這是一個才大我三歲的資工學生寫的
他現在在MIT讀書 非常厲害
這系列文章是寫他學程式的過程 以及寫程式的心得
很熱血!很好看!


他學程式是從寫MUD的外掛開始的
使他成為MUD裡的神手大大
此後 好奇心和學習興趣驅使他不斷的自己鑽研
從奧林匹亞資訊競賽中得到 國際科展獲取當台灣代表
進台大 進MIT
這樣的熱情 興趣讓他在"玩"的過程中完成了相當了不起的事
這樣的經驗 學習過程很振奮人心 值得參考


而他紮實的基礎和訓練而來的觀念
也可以做為程式學習者的觀念參考


我實在太愛這系列文章了
將這系列文章整理好連結列出來

追求神乎其技的程式設計之道(一)
追求神乎其技的程式設計之道(二)
追求神乎其技的程式設計之道(三)
追求神乎其技的程式設計之道(四)
追求神乎其技的程式設計之道(五)
追求神乎其技的程式設計之道(六)
追求神乎其技的程式設計之道(七)
追求神乎其技的程式設計之道(八)
追求神乎其技的程式設計之道(九)
追求神乎其技的程式設計之道(十)
追求神乎其技的程式設計之道(十一)- 抽象化與命名
追求神乎其技的程式設計之道(番外篇)



.

Monday, July 18, 2011

追求神乎其技的程式設計之道(一)

追求神乎其技的程式設計之道(一)

"最近有讀者問到我學寫程式的方法和經驗,讓我一下掉入時光隧道回想起當初用VB寫出自己第一個遊戲時的成就感,但當初沒料到的是我真的就此迷上了電腦和寫程式的快感,不知不覺也過了10年的光陰…。在這篇文章中,我想寫出我對程式設計的看法和我一路學習上來的歷程和經驗。寫程式是一條無止境的道路,不只是科學和工程,更是一種藝術。而我還在追求「神乎其技」的半路上,雖然還有很多要學的,但我也希望能讓初學者更容易看清楚這條路是什麼樣子,避免陷入盲目追求新技術的死巷中。"

他的經歷很熱血 很好看!

Tuesday, July 5, 2011

吳政勳老師的C語言教材

http://nknucc.nknu.edu.tw/~jwu/c/cpg.htm


另外還有這些 http://140.127.40.1/~jwu/
本 人 目 前 在 網 路 上 編 寫 的 教 材 有:
HTML 簡介
C 與 C++ 程式語言
資料結構
GSP 3.0
GSP
automata

Saturday, July 2, 2011

10001 件資工系畢業前一定要做的事

10001 件資工系畢業前一定要做的事

00000 擁有你自己的網域 — 買 .com 和 .com.tw 的網域有各自的竅門,如何找到最划算的價錢,你應該要知道

00001 租用你自己的雲端主機 — AWS 第一年幾乎是免費的,EC2 和 S3 是兩個你至少要摸熟的服務

00010 安裝 Apache 伺服器軟體 — 學著設定 httpd.conf,例如把 www.domain.com 轉到 domain.com (台灣 90% 的網站都忘了做這件事)

00011 安裝 WordPress,經營一個網誌 — 長期經營網誌有很多好處,況且對於程式人員來說,寫作能力是最重要的技能之一

00100 用 Ruby on Rails 寫出一個產品 — 我認為 Rails 將會取代 LAMP 的地位,現在缺 Ruby 工程師的比缺 LAMP 的還多,而且都是一些非常棒的新創團隊,我鼓勵你把這個框架學好

00101 幫同學解決一個實際的問題 — 去跟非資工系的同學、朋友、親戚聊天,找出他們生活、工作、社團有什麼實際的問題,你可以用程式幫他們解決的,然後實際做出這個網站給他們使用

00110 寫一個 iOS/Android App — 如果上面這個問題,透過 Smartphone App 可以解決得更好,那就寫一個 iPhone/Android 給他們 (台大的學生可以考慮去上我的合夥人 Prof. Mike Chen 的智慧手機開發課)

00111 實際使用 Facebook API — 用 Facebook Connect 來讓使用者快速登入你的網站,並且拿到他們的 Email 和好友名單,再想辦法利用這兩個資料給他們更好的服務

01000 實際使用 MongoDB (或是其他 NoSQL) — 學校教了很多 RDBMS,但是你要知道現在有很多時候 NoSQL 更符合需求,尤其是大規模網站

01001 把你的網站放上 AdSense — 雖然沒辦法賺大錢,但是你會因此更了解網路廣告的各種內幕

01010 讀很多別人寫的程式碼、文章和書 — 寫程式和寫作進步的方法,除了多練習,就是多讀別人的作品

01011 下載並 Compile 一個複雜的 Open Source 專案 — 像是 OpenSim 或是 Matterhorn

01100 貢獻給一個 Open Source 專案 — Open Source 界有他們的文化,跟他們實際協做過,你才能了解

01101 學會用 packet sniffer — 聽聽看你愛玩的遊戲,是怎麼跟它的主機溝通的,你會學到很多

01110 設定你的 DSL Router讓家裡電腦當伺服器 — 你會對 TCP/UDP ports 有更多了解

01111 用 map-reduce 分析資料 — 這是現在最最熱門的題目,你應該要試試 (從這裡開始)

10000 去當暑期實習生 — 暑假來了,實際去公司上班兩個月,看看真實世界是長什麼樣子吧!新創公司尤其是你的好選擇,因為你將可以摸到更多好玩的東西 (不知道要去哪裡?寫信來,我幫你介紹: mr.jamie.blog [at] gmail.com)

10001 去跟 10 個學長姐聊聊 — 在你決定要繼續攻碩士、就業還是創業前,去跟 10 個已經畢業的資工系學長姐聊聊,看看他們都在做什麼,有什麼事情他們後悔當初沒學好,有什麼事情他們覺得你可以考慮去做。不要悶著頭聽同學們的建議做決定,他們和你一樣不知道自己在做什麼。

Sunday, June 19, 2011

uva.onlinejudge

uva.onlinejudge

O'Reilly Java系列書籍建議閱讀順序

O'Reilly Java系列書籍建議閱讀順序

你該學什麼程式語言?

你該學什麼程式語言?

"我大致上把程式語言分成五類,分述如下:

Web Page Script Languages
Interpreted Languages(直譯式語言)
Hybrid Languages(混合式語言)
Compiling Languages(編譯式語言)
Compiling Languages(編譯式語言)
Assembly Languages(組合語言)

程式語言學習順序的建議
通常 Web Script 最簡單,直譯式語言其次,接著是混合式語言,和編譯式語言,最麻煩的是組合語言。如果你完全沒有程式經驗,想開始學程式設計的話,你可以從 JavaScript 著手,等到程式基礎觀念建立得差不多了,再往下學習直譯式語言,然後再學習混合式語言 ...,以此類推。"

Saturday, June 18, 2011

[進階] 程式設計的 Top 10 做與不做 & 程式設計師應讀的十本好書

程式設計的 Top 10 做與不做

程式設計師應讀的十本好書

引號內容為富有經驗的Terry學長給的評語


第一名 Code Complete,1289票,教你怎麼寫乾淨的程式。
"Code Complete 是在你會寫以後, 教你怎麼寫好一點"

第二名 Pragmatic Programmer,1138票,簡體版叫做”程序員修煉之道︰從小工到專家“。
"Pragmatic Programmer 是講開發過程會遇到的事, 主要是團隊合作的的問題, 多此一舉的書"

第三名 Structure and Interpretation of Computer Programs,672票,這本有夠貴,要六千多台幣。不過,線上有免費全文版本在這裡可以線上閱讀。
"Structure and Interpretation of Computer Programs 純貴, 不會拿來能幹嘛"

第四名 The C Programming Language,541票,大名鼎鼎的C語言聖經。
"The C Programming Language 是你在熟了C 後, 對C 若有還不懂的, 再來看, 可不是入門用的"

第五名 Introduction to Algorithms,463票,StackOverflow上面這麼來簡述各聖經的訂位:Code Complete教你正確地寫程式;人月神話教你怎麼正確管理專案;Design Patterns教你怎麼正確設計;而這本書是教你怎麼想演算法。
"Introduction to Algorithms 這本你考研究所時讀過了"

第六名 Refactoring: Improving the Design of Existing Code,459票,中文譯本在這裡。
"Refactoring: Improving the Design of Existing Code 這本書, 除非你一直在開發相同的系統, 否則refacctor 什麼鬼?"

第七名 The Mythical Man-Month 人月神話,418票,中譯本從這裡購買。這是軟體專案管理的經典書籍。
"The Mythical Man-Month 這本書只點出了, 開發系統不是說一個人幾個月的這樣來算的, 但可惜現實是, 美國人本身也是拿人月來計算系統的開發成本, 所以, 雖點出問題, 但於事無補"

第八名 Design Patterns,415票,中文譯本在這,不過似乎絕版了。
"Design Patterns 看看就好, 你一個人寫, 可以follow, 但團隊寫, 到頭來絕對還是各自為政的情況, 聽聽就好的事1"

第九名 The Art of Computer Programming,378票,數冊可做參考書。這書簡稱為TAOCP,作者是Stanford大學的Knuth教授,也就是他發明了大名鼎鼎的TeX排版系統。
"The Art of Computer Programming 共十本, but 你看不懂的啦, 它是純數的書, 雖然是用在programming 上的數學, 你要說它是算法的書更實在."


第十名 Compilers Principles, Techniques, and Tools,346票,可帶你進入compiler的奇幻世界,書的封面可是有一隻噴火龍的。
"Compilers Principles, Techniques, and Tools 你又不寫compiler , 讀來幹嘛?
腦殘的人, OS 哪本書不講, concurrent, lock, dead lock 等, 大一點的系統都會用得到, 以上的本, 一本都不會講到. 這種介紹, 看看就好"




.

VC++ IDE版面主題

http://studiostyl.es/

Sunday, June 5, 2011

O'reilly computer books

O'reilly computer books

http://www.oreilly.com.tw/index.php

深入淺出設計模式

深入淺出設計模式
http://www.oreilly.com.tw/product_java.php?id=a163

你不想重新發明輪子(或者更差的是,沒有充氣的輪子),所以你從設計模式中尋求協助-設計模式是過去人們面對軟體設計問題所學來的經驗。 有了設計模式,你就可以利用其他人經驗和實務的精華,省下的時間可以用在...其他的事情上,像是:更有挑戰性的事情、更複雜的事情、 更有趣的事情。你想要學習:
事關緊要的模式
何時使用某個模式,為何使用該模式
如何在你自己的設計中馬上採用這些模式
何時不該使用模式(如何避免對模式過度狂熱)
某個模式是依據哪些OO設計守則而設計出來的

更重要的是,讓你在學習設計模式的過程中,不會感覺到昏昏欲睡。

《電腦做什麼事》

《電腦做什麼事》

重點是我們應該先要學會「說話」,而非學會一堆「說話技巧」,可是大部分程式語言提供給初學者的教科書,多半注重「說話技巧」,忘了先要學會怎麼說。然而「說」,其實是一件很單純的事情,我們屏除大量的「技巧」,《電腦做什麼事》以系列文章的方式,嘗試教導初學者說「程式語言」,大量的範例提供給讀者以簡單、直覺的方式學習,進而了解體會電腦背後運作的道理。

第零篇 踏進電腦這扇門
第壹篇 Python基礎 -- 從 IDLE 到 CLI
第貳篇 跨過門檻 -- GUI , Pygame 模組庫
第參篇 窗外的天空 -- GUI , wxPython 模組庫
第肆篇 打開門,迎向世界 -- Web Framwork , Django 模組庫

Python 教學文件

Python 教學文件

程式語言教學誌

程式語言教學誌

怎麼寫程式
程式語言基本概念
程式語言教材

推薦C++入門書

最新C++物件導向程式設計實例入門 <增訂第三版>

Saturday, June 4, 2011

「中文電腦資訊優質部落格」懶人包

"「精選!中文電腦資訊優質部落格」" bundle created by 異塵行者

vgod's blog 程式設計觀念心得

vgod's blog 追求神乎其技的程式設計之道

麻省理工學院「開放式課程網頁」電機工程與資訊科學

麻省理工學院「開放式課程網頁」電機工程與資訊科學

安德魯的部落格 如何學好 "寫程式" 系列

安德魯的部落格 如何學好 "寫程式" 系列
該如何學好 "寫程式" #2. 為什麼 programmer 該學資料結構 ??
該如何學好 "寫程式" #3. 進階應用 - 資料結構 + 問題分析
該如何學好 "寫程式" #4. 你的程式夠 "可靠" 嗎?
該如何學好 "寫程式" #5. 善用 TRACE / ASSERT

"如果你真的有心把底子練好,我是有幾個建議的方向,雖然看起來沒什麼用,但是看熟了你一定會發現,你寫什麼程式都逃不了這幾個基礎知識。

最基本的: 計算機概論 & 資料結構
這些有助於你用正確的邏輯寫程式。要成為一個合格的 programmer 一定要有這樣的能力。
進階一點的系統層面,作業系統 & 系統程式
這些有助於你瞭解系統層面如何運作,如果你開發的系統需要些基礎建設,像是元件等等,這些知識很有用。成為 software engineer 就應該要有這些基礎。
再來就專精一點了,我推薦 OOP 理論 / Design Patterns、或是軟體工程的方法論 ( XP, TDD ... 等 )。
這個層次的知識能幫助你設計正確的架構,或是用正確的方式開發軟體,是成為 ARCHITECT 的必要技能。"

高中生程式解題系統

高中生程式解題系統

"適合所有中學生及初學者的 Online Judge 系統"

.

鳥哥的 Linux 私房菜

鳥哥的 Linux 私房菜

"學習 Linux 的過程並不簡單!因為我們過去一直都是在某些特定軟體的支配之下, 所以對於這個由一群素眛謀面的工程師因為『興趣』而發明出來的作業系統, 其實開始時候的接受度並不是很好的。 然而因為 Linux 的學習會使用到很多的基礎觀念,因此, 對於想要更深入認識您所使用的作業系統的朋友來說, 其實 Linux 真的是一套很棒很棒的作業系統喔!

這個網站的內容,是由鳥哥在剛剛接觸 linux 的時候就開始寫起的, 簡單的來說,這個網站的內容基本上就是『鳥哥的 Linux 血淚史~』 因為鳥哥在新手的時候遇到相當多的問題,雖然一步一步的找出問題,並且解決他, 不過,剛開始時,並不是那麼容易就可以解決一個小問題的。 因為很多的知識都是來自於 Internet 上面的,所以也就回饋這樣的一個網站給朋友們了。 請大家看一看鳥哥是如何學習 Linux 的吧!"

天瓏書局 電腦書專賣店

天瓏書局 電腦書專賣店

可以找到各式的電腦書 很適合入門者去翻翻

.

cplusplus

cplusplus

C++函式庫字典


"Information on the C++ language
These articles briefly describe the features of this programming language:
A brief description:
Some general aspects of this language.
History of C++:
Brief history of the development of this language.
Frequently Asked Questions:
A short list of common questions novice programmers ask."

良葛格學習筆記

良葛格學習筆記

教C++, Java

"國立臺灣大學電機工程學系畢。於網路上經營開發技術相關網站「良葛格學習筆記」,撰寫電子書、發表技術文章、影音教學,因而成為著名網路寫手,目前累積技術文件千餘篇,並於JavaWorld@TW網站擔任版主(暱稱caterpillar)。著作包括《良葛格Java 學習筆記》、《Java SE 6 技術手冊》、《Spring 技術手冊》、《Spring 2.0 技術手冊》,並翻譯《Ajax in action》中文版。目前從事技術書籍寫作、翻譯、技術顧問及講師等工作。"

Victor 易記學 程式設計教學

Victor 易記學 程式設計教學

教C++, Python

"歡迎來到Victor's 易記學 程式設計教學

在資訊爆炸的時代,寫程式未必會是資工系學生的專利,對於各種行業的人,其實都已經脫離不了電腦,因此我甚至認為,程式語言會是未來的第 二官方語言,不同領域的專長,配合電腦的輔助,可以將專長發揮到極致。
撇開程式語言的實用性,程式語言本身就像是魔法裡的咒語一般,當你會了這些語言之後,你就可以盡情的操控電腦,你希望電腦幫你做什麼,就下什麼樣的 咒語,這就是程式語言的魅力,如果都只用學習的觀點去看程式語言可能會很痛苦,但是如果用玩的心態去接觸程式語言,你會發現程式語言是你的一片天地,任你 的想像力發揮的一個舞臺。"