有網友在這篇 別讓危險成為預設的行為,讓危險的行為比安全的行為更麻煩 回應裡提到
WiyD-Luck
請問大大寫程式寫多久了
小弟今年大三要升大四了
在無意間近來大大的blog
收穫良多(請受小的一拜
會寫程式.跟會寫一個能用的程式.差別好大…
想問大大那些程式會造成的漏洞.是經過自己研讀還是有人指點才有如今的實力阿
PS.小弟就讀的大學老只有教我怎麼寫程式.並沒有教我寫出一個可以用的程式..
我覺得這是很多人心裡共同的疑問,所以就特地寫了一篇來說說我的看法…
有網友在這篇 別讓危險成為預設的行為,讓危險的行為比安全的行為更麻煩 回應裡提到
WiyD-Luck
請問大大寫程式寫多久了
小弟今年大三要升大四了
在無意間近來大大的blog
收穫良多(請受小的一拜
會寫程式.跟會寫一個能用的程式.差別好大…
想問大大那些程式會造成的漏洞.是經過自己研讀還是有人指點才有如今的實力阿
PS.小弟就讀的大學老只有教我怎麼寫程式.並沒有教我寫出一個可以用的程式..
我覺得這是很多人心裡共同的疑問,所以就特地寫了一篇來說說我的看法…
話說,有玩過魔獸爭霸三國無雙之類的地圖的人都知道,看到數字人,也就是ID全由數字組成的玩家,有很大的機會中離,不過這一點都扯不上邊 XD
最近很熱鬧的事情是,知名部落客Mr.6先生開的程式設計課程被踢暴課程的內容很差勁
大約看了一下是教一些PHP MySQL之類老掉牙的東西,但驚人的是三堂課要$4500大洋,而且跟據上面的部落格暴料還教得不怎麼樣,但是廣告詞卻寫得非常動人,想創業沒法靠別人,所以只能靠自己寫程式,學完就能靠自己寫程式創業之類的巴拉巴拉…
那我們未來要靠寫程式吃飯的資工系學生們是不是全都要去喝西北風啦? 為什麼這次事件會被罵得那麼慘,原因很簡單
頂著史丹佛等的和一堆亮麗經歷的光環,收費4500,但教的卻都是一些老掉牙了無新意的東西,PHP不難,但是真的值得不懂程式想學寫程式的人學習用來創業,用來寫網頁嗎? 先不論教得好不好,我個人認為:
PHP是一個設計很差勁的程式語言(請參考別讓危險成為預設的行為,讓危險的行為比安全的行為更麻煩),但不可否認的它是目前用來寫網頁最流行的程式語言,它也有它許多的優點,中文資源隨手可得,對於初學者來說,要用PHP寫網頁卻實是不難,但是,要寫出合格的網頁程式,卻需要很多瑣碎的know-how,不是初學者三兩天就可以達成的事情,初學者可以用PHP寫出各種常見的網頁程式,但是裡面充滿無數的問題、臭蟲、漏洞,光是一個許功蓋問題初學者可能就覺得莫明奇妙,但遲早會遇到,聲稱要三堂課教會學生寫PHP到可以用來自行創業,我只能說胡扯
一樣技術有多老掉牙,或許我們可以定一個指標,叫做天瓏書局中文書指標,用技術的名詞在天瓏書局搜尋中文書,看數量有多少
有118筆符合的書,PHP到底有多老掉牙,這表示PHP的中文資源已經是唾手可得的地步,隨便找個有工程師的頭銜的人問他,你會不會PHP? 我想有八成的機會他都會回答Yes,即使是社交工程師(誤),但在這裡我要強調的是,不是老掉牙、被用到爛掉就表示它不好,我一直都認為每種程式語言都各有優缺點,將他們用在正確的地方才是明確的選擇,而六先生聲稱想創業寫網頁教的居然是PHP土法煉鋼在寫網頁,這真的令人覺得不解,到底要寫到民國幾年,更何況既然PHP MySQL等已經那麼普遍,到底有什麼價值可以花4500元去學?
真正想要快速寫能用的網頁,最好是學習網頁框架,隨便一款網頁框架都比用PHP土法鍊鋼做起來得好,收費昂貴教的卻是那麼落伍且不明智的方式,真令人覺得無法認同,但是姜太公釣魚,願者上勾,如果覺得真的有那個價值,去學也沒人能阻止,但在我看來,這就好像去用高價買一瓶平凡無奇的水,明明是隨手可得的東西,但是上面貼著』史丹佛雙碩士』,一樣的道理
以我的看法,如果教的是現代一點的東西還令人能接受,像TurboGears、Django、Ruby On Rails等等,我們來看看天瓏書局中文書指標
TurboGears 1 (簡體中文)
Django 0筆
Ruby On Rails 12筆
同樣是中文資源,差那麼多,我如果今天是初學者,也沒辦法靠自己學習最新的技術,中文書少得可憐,或著根本沒有,就算英文能力夠,礙於技術的背景知識的需要而學不了那些東西,如果是這樣的話,開課教這些網頁框架,快速開發、省略細節、更安全、更有生產力、更敏捷,也比較適合創業的目的,再者很少人會,才有那樣的價值,這樣看來花4500去學明明已經被用到爛掉,那麼多人會的東西其實蠻冤大頭的,真的要學PHP找家教一對一教學都來得便宜和實在,或是買本書來自學也便宜又實惠
但是,再次的,我必須要強調,也不是越新的技術就越好,它們有比現有的東西更好的地方,但缺點就是因為很新資源比較少,可能有不夠穩定等問題,物以稀為貴,正因為很少人懂,才顯得有價值,我記得我以前我有個家教學生在討論價錢時這麼跟我說
我去家樂福打工一個小時才多少
我想了一想,就這麼回答他
你去路邊隨便拉一個人都能去家樂福打工,但是你沒辦法路邊拉一個人來教你C語言
這是同樣的道理,隨手可得的東西沒什麼價值,而學習最新技術的基本門檻是英文能力,英文能力不好,只能看中文書的話,等到有人翻譯通常又有更新更好的東西出來了,只會中文的話就永遠只能落在人後,六先生自稱
美國史丹佛電機、管理雙碩士,14歲移民加拿大,而後移居美國矽谷
即然有能力,為何不教一些較現代的技術,卻教PHP MySQL等土法鍊鋼的方式,想要創業,自己寫程式,這明明PHP+MySQL是個很不切實際的選擇,六先生如果真的有心想開課教人寫網頁創業,個人建議還是學一些現代一點的東西來教比較實在
我認為,可能,但機會很小,即然我們知道速成的程式設計能力是胡扯,那麼表示真的要能夠寫真正能用的程式需要時間,網路是瞬息萬變的,等你真的學會,寫出程式來,網路可能又是另一回事了,不過到了那個時候至少有技術,有能力可以實現自己的想法,視當時的情況實現也不是不可能,至於要花多久呢? 我想… 十年吧,我曾看過一篇文章這麼說,學習一樣專業,需要十年的時間,這文章我一時找不到,我個人覺得蠻認同這樣的說法,我個人從國一開始學寫程式,到今年差不多九年了,畢業的話就剛好十年了,但是我覺得我還是有很多東西要學,或許你覺得不認同,你說我照著六先生教的可能三天就能寫個留言版還什麼的,但是事實是,程式有分大小,小程式就算隨便亂寫、躺著寫、坐著寫、趴著寫、跳著寫,也硬是可以寫出來,但大程式就不一樣了,當你程式寫著寫著,規模越來越大,你會發現程式越來越混亂,越來越難以除錯,到最後你的程式變成一沱難以想像的東西,你這邊改了發現那邊居然跑出漏洞,那邊改了又跑出新的漏洞,為什麼我瞭解,原因很簡單,我寫過數不清的爛程式,從土法鍊鋼開始慢慢地摸索,因此我很清楚爛程式寫大的時候到底是什麼情況,但寫出來就算了,事情才剛開始,程式不是寫出來就結束了,你還得維護它,如果有新的功能要加進去怎麼辦? 使用者太多原本的系統沒辦法負擔又該怎麼辦? 又得想辦法改寫程式,現實是殘酷的,不是每個人都是你網站、程式的愛護者,會有一群無聊的、為了利益的人,想盡各種方法來玩你的系統,為了好玩、為了撈你的資料賣給詐騙集團,老練的設計師都有可能出錯導至系統被攻擊,更何況是半生不熟的設計師,所以為了要能創業而學寫程式,真的能成功的機會可能比中樂透還低,不過我相信真的有人能做到,但肯定是有過人毅力的奇才
土法練鋼寫程式的人我個人稱為』黑手』,不可否認我當過很久的黑手,用各種笨方法硬寫程式,所以才會遇到各種問題,那到底缺少什麼? 程式設計師和程式黑手的差別到底在哪裡? 程式設計的重點在於設計,到底什麼是設計? 六先生提過設計
姚老師告訴對方,「啊,他在學程式設計!」
17歲的我,非常驕傲的抬起頭來。不是因為「程式」這個炫麗的字眼,而是「設計」。
加拿大沒有什麼好科系和壞科系的,沒有「選系不選校」的問題,我一點都不為「程式」而驕傲,我為「設計」而驕傲。
17歲,只有考試,只有作業,只有報告…什麼,「設計」?所以,以後我真的可以這個叫「程式」的東西來「設計」囉?
從那隻會動的蟲子以後,我果然就發現,原來,用程式要實現自己的任何點子,是這麼容易的一件事!
六先生說對了重點,程式設計真正重要的的確是設計而不是程式,但是我很懷疑他到底懂不懂得設計,我承認我對於設計還差很遠,有人曾這樣說過
有才華洋溢的年輕編程人員,但沒有年輕的程式設計師
原文是英文,我記得似乎是在某本書上看到的,一時也想不起來,我寫的語意用詞可能也沒有那麼正確,但是他想表達的大概是這樣,寫程式這件事情要寫得好其實不難,很多程式設計師很年輕就表現出很強的編程能力,但是很少有程式設計師在年輕時就能表現出設計能力,這表示設計不是很短的時間內可以學會的,需要的是長時間的累積,不是說設計兩個字就真的會設計
除此之外六先生還有提到
所謂速成,就是一個月內就開始寫點子。
我們希望找到一群志同道合的人或許一起創業。
我們希望一邊寫,一邊還討論現在網路最新的狀況與可用的API。
我們還一邊交換自己使用的機房與SEO的建議。
甚至,我們互相幫對方寫對方的程式,整個課程就像一個超大的創業團隊,各有各的目標,但各自之間是互相幫忙的。
這問題就更大了,團隊寫程式和一個人寫程式是兩回事,著名的軟體專案開發經驗談的書 『人月神話』 裡有提到,軟體的開發不像是收割小麥,人越多就越有效率,而是人越多,所需要付出的溝通成本就越多,反而會更沒有效率,一個人寫程式,你自己怎麼寫,你自己知道,所有的東西都在你的掌控中,歐~ 不,連你自己都可能忘記自己以前寫的程式,更何況是和別人合作,你得讀別人的程式,他寫出來的如果是天書,你也要能讀懂天書才能夠和他合作,而且程式的開發,如果需求是自己想,自己來實現會最有效率,如果是別人的需求,經過溝通,很容易發生寫出來的程式不是需求者要的東西,從六先生所謂的互相幫對方寫對方的程式,真的是莫名奇妙, 一整個團隊成員們都有不一樣的目標,但是卻又能共同開發來達成這些目標,真的能辦到,我只能說六先生太神了….
我沒有史丹佛學歷,也沒待過知名企業,只有自學程式九年,寫程式不怎樣,打嘴砲還有點自信的小小阿宅,以上純屬嘴砲….僅供參考,看看就好 XD