想學網頁程式設計卻不知道該從哪裡著手嗎?國外神人幫你把課程表排好了!
這篇把成為一個「網頁程式設計師」的課程順序排得很好!跟我理想中的順序很接近!特別推薦給大家!
Step 0: 前台語言與相關工具
首先作者推薦學習「HTML > CSS > JavaScript」,也都附上學習資源。
接著作者希望大家去學 Git。其實這個跟「網頁設計」直接關係不大,Git 是一套「程式碼版本控制軟體」。它可以比對前後兩個版本的差異,然後只把差異部分儲存起來。如此一來,你就算寫到後來,發現一個月前那個版本才是對的,也可以要求 Git 倒回特定日子的某個版本。我也強烈推薦學習。不過如果時間不夠,您可以暫時跳過(雖然很可惜),等學完之後回頭再來學也可以。
接著作者建議學 GitHub 之類的網路服務。GitHub 是程式師把原始碼分享出來,與大家交流的地方。GitHub 保有 Git 版本控制的特色,也能指定抓出某日某版。嚴格來說,您可以把 GitHub 看成程式設計界的 Facebook。只不過 Facebook 交流的是照片、打卡,這邊交流的是程式碼。這部分也是急得話可以事後再回頭學。
Step 1: 後台語言
接著作者開始教大家學習後台語言。由於作者是「Ruby 粉」(Ruby Fans),所以他會推薦 Ruby。其實這部分可以換成 PHP,或最近很流行的 Node.js 都可以。
Step 2: 磨練其它技巧(函式庫與框架,以及資料庫)
這邊作者開始要大家去 Code Academy、Coursera...等線上影音教學站,以 HTML/CSS/JavaScript 為基本功,去學習更高深的網頁程式設計學問。學這些東西,是讓你增加生產力。學習對象主要是一些 JavaScript 可使用的函式庫與框架。所謂函式庫與框架,就是人家寫好、可讓你在 JavaScript 直接叫用的一些好用工具。打個比方來說,如果有電鑽(函式庫、框架)讓你用,你想用鑿子(JavaScript)慢慢挖洞嗎?不會吧?
他推薦的框架主要有 Ember.js, Angular.js...等。我個人是很推 Google 做的 Angular.js(其它的也不錯啦~沒有筆戰的意思,自己習慣就好)。如果您沒有心儀的框架,不妨試試看。
本步驟最後,作者推薦學習一些常見的資料庫。如 MySQL、PostreSQL。或是大數據界常用的資料庫 MongoDB...等。
Step 3: 學習額外的網頁程式語言,拓寬領域
這部分我倒是覺得可以先跳過去,不急。他推薦的 Clojure、Go... 能做的事情,都大概能用 JavaScript + 各種框架做出來。所以我個人認為,這部分可以先跳過去。
Step 4: 往手機領域前進
沒錯!網頁程式語言也能做出各種 App!誰說寫 Android 或 iOS App 一定得學 Java 或是 Objective-C/Swift? 網頁程式設計領域有很多軟體,可以輕鬆地把你寫好的網頁程式,轉包成 App 發佈出去(謎之聲:吔...那個效能...就可能不要太挑剔了...笑)
Step 5: 去賺錢吧!
作者在此建議把你的網頁發佈成收費網站,或轉成 App,發佈到 Google Play 或 AppStore 賺錢。更甚者,乾脆去找家公司,過著「善用公司資源,創造優質生活」的日子...(哈哈!)作者準備了一些常見的面試題目,讓你看完後比較有信心面對各家公司奇奇怪怪的各種問題。
原文連結(能看到這裡,辛苦了~~):
http://www.developingandrails.com/2015/01/crash-course-on-modern-web-development.html
<紀老師總結>
其實我個人推薦的順序比他稍短(但也沒短多少)。如下:
1. 前台技術:HTML --> CSS --> JavaScript (基本功)
2. 前台框架技術: --> jQuery --> Node.js --> Angular.js (讓你學會怎麼用電鑽)
----- (可以去應徵「前台工程師」了) -----
3. 後台語言:PHP / Node.js 市場較大,任挑其一。
4. 後台資料庫: MySQL / MariaDB / PostreSQL 三者擇一。想進大數據領域的,加學 MongoDB。
----- (前後台兼修,可以應徵很多「網站程式設計師」的工作了) -----
接下來的路就不太一樣了。有人就這麼停住,找到一輩子可以安身立命的公司。也有人加學「統計」,與 R、MATLAB、Hadoop 等技術,往「大數據(Big Data)」走。也有人把 jQuery 裡的 jQuery Mobile 分支,與 Angular.js 磨得更亮,加上 Titanium、Sencha、PhoneGap 等嫁接「網頁」與「手機 App」專用的框架,去寫手機 App 了。到這裡,就沒有一定的「路」需要去遵循。您屆時的功力,應該也強到不用人建議,就知道接下來該學什麼了。
希望今天這一長篇文章,對大家有用!也感謝大家用力看完!覺得還不錯話,也分享到您的臉書給其他朋友看看吧!
hadoop資料庫 在 紀老師程式教學網 Facebook 八卦
[好站介紹] 大數據學院(Big Data University)
---- 免費的資料科學(Data Science)影音教學網
http://bigdatauniversity.com/
#BigData #DataScience #elearning
「大數據」(也可以翻譯成「巨量資料」)是近年來人人朗朗上口、但真的要解釋清楚又不容易的名詞。它在資訊學科裡,屬於「資料科學」(Data Science)這個分支。是一門可以從看似雜亂的原始資料,用統計的方式,找出特定趨勢的學問。舉大家都看過的例子,就像購物網站裡「您可能也喜歡...」,然後撈出一堆貨品讓你覺得「哎?電腦怎麼這麼聰明?知道這些東西也是我喜歡的?」其實就是分析網站裡每個人的購物習慣,找出與你相似的人「買了、但你沒買」的物品而已。
這類人需要很強的「統計」與「資訊」背景,大家也知道「統計」不好學,想當然爾這類人才當然很稀少。偏偏目前市場上對這類人才需求孔急,於是各家網路行銷公司紛紛出高薪挖兼具「統計」與「資訊」背景的「大數據」人才。而想投入就業市場的朋友,也在高薪的誘惑之下,前仆後繼地往「大數據」這個領域移動。
今天要介紹給大家的,是個與「大數據」有關的免費教學網站,叫做「Big Data University」。您可以用 Google 或 Facebook 帳號登入,就可以享用該站提供的免費課程。要成為大數據人才需要有的技能,該網站都幫您提供了。我還幫大家找了一些專有名詞的說明網站,希望大家喜歡。該網站提供的大數據課程分類如下:
1. 統計基礎
(1) Big Data Fundamentals 課程
(2) Data Science Fundamentals 課程
2. 資料分析工具
(1) Introduction to R 課程
(2) Introduction to Data Analysis Using R 課程
(R軟體/R語言簡介請參看: http://goo.gl/UtfVhq )
3. 資料視覺化/呈現工具
(1) Introduction to OpenRefine 課程
(OpenRefine 簡介請參看: http://goo.gl/4b6D22 )
4. 資料庫相關課程
(1) SQL Fundamentals 課程
(2) Introduction to NoSQL 課程
(NoSQL 簡介請參看: http://goo.gl/SUI2wX )
5. 大數據使用的程式語言、函式庫
(1) Hadoop Fundamentals (Hadoop: 大數據常用程式語言)
(2) Spark Fundamentals (Spark: 大數據好用函式庫/軟體框架)
(Hadoop 簡介請參看: https://goo.gl/rR7J6z )
(Spark 簡介請參看: http://goo.gl/KUV6Bw )
對於小弟如此用心補充各種專有名詞中文資料可以按讚鼓勵一下嗎? XD 你對大數據有什麼看法呢?還是有什麼問題想問呢?歡迎在下方留言喔!
如果你覺得 Big Data University 太讚了!你可以轉發給 Facebook 的其他朋友。邀請有興趣的同好一起來學,不懂時互相討論,在某人想放棄時鼓勵他堅持下去,不是很美好的一件事嗎?
希望今天的分享您會喜歡,也希望能對增加您資訊專業這方面做出一點貢獻!
hadoop資料庫 在 紀老師程式教學網 Facebook 八卦
[大數據入門書籍推薦] Big Data Glossary (O'Reilly)
http://it-ebooks.info/book/823/
咳咳...不囉唆!先點擊上面的連結,找尋一個位於「Download」字樣旁邊的超連結再來看我底下的說明...說不定你下載完也不想看我的說明就是了 (Mission Completed)... XD
這是一本很適合剛進入「大數據(Big Data)」領域的概念書。比起講解 How,更著重 What。它的書籍大綱如下:
01 Terms
名詞解釋。包含何謂「文件導向(Document-Oriented)」、「鍵-值儲存(Key-Value Stores)」...等基本名詞解釋。
02 NoSQL Database
說明用於大數據資料儲存的常見資料庫系統有哪些?優劣為何?包含 MongoDB、CouchDB、Cassandra、Redis、BigTable、HBase...等。
03 MapReduce
Google 提出的一個大數據軟體架構(Frameworks)。在已經有人做好輪子的時代,想造一部車當然是直接拿別人做好的輪子來用囉!
04 Store
如何儲存資料本體的一章。這裡介紹了 Amazon S3 與 Hadoop Distributed File System 兩個架構。
05 Servers
介紹可用於大數據管理的伺服器有哪些。包含 Amazon EC2, Google App Engine, Elastic Beanstalk, Heroku 等。
06 Processing
介紹大數據分析與處理的工具。包括 R、Yahoo! Pipes、Mechanical Turk... 等。
07 NLP (Natural Language Processing)
自然語言處理。這一章講如何教會電腦「看懂」我們人類撰寫的語言(主要是英文),然後「機器自動爬文」,篩選出隱藏在字裡行間的「數據」。這邊介紹了幾組 NLP API,包括 OpenNLP, Boilerpipe, OpenCalais...等。
08 Machine Learning
講機器學習的一章。教你如何讓你的軟體越來越「聰明」,擁有「類似」人類學習的能力(雖然還不及五歲小孩的學習能力,但現今科技水準就到這裡了,相信將來會進步的)。這篇介紹了 WEKA、Mahout、Scikits.Learn 幾套 API。
09 Visualization
介紹幾套可以把複雜數據「視覺化」成圖表的 API:Gephi、GraphVis...等。
10 Acquisition
標題雖然是「資訊取得(Acquisition)」,但這章其實在講「資料清洗」與「正規化」。如:有個表格內藏你要的資料,你如何把表格拿掉,重新排列,變成你要的資訊存入資料庫內。
11 Serialization
標題直譯的話,會翻成「序列化」。但比較偏講「如何找到一種放諸四海皆準的『中間格式』(如:XML),好讓資料從一部系統,透過這個『中間格式』,轉換到另一部系統」。這章講了 JSON、Thrift...等格式。
我覺得這是本可以帶在身上,等車無聊時隨手看兩頁的書。因為它前後章節並沒有太強烈的連貫性,內容也大多偏向名詞解釋,不需要擺台電腦在身邊實驗兩下才會懂。所以隨時中斷閱讀也沒啥關係。看完後,就應該可以參加相關的會議討論,而不會有什麼名詞聽不懂了。很適合初學大數據的工程師,或專案經理閱讀。
如果你也覺得本篇內容不錯的話,麻煩您轉分享給您的朋友,讓他們也能免費得到一本大數據的電子書喔!希望今天介紹的內容大家會喜歡!