顯示具有 STEM 標籤的文章。 顯示所有文章
顯示具有 STEM 標籤的文章。 顯示所有文章

2016年12月15日 星期四

如何自學Python?六大網路自學coding線上資源


很多領域都需要coding技能,很多人想要轉領域,大家都有個問題:初學者如何從零開始自學coding。我的學生說「第一個程式語言, 選簡單易上手的(ex: python),因為這樣才能培養寫程式的興趣」因此我又詢問了CS領域的同學的意見,經同意後整理出來大家分享的coding自學資源,給大家參考。網頁內有圖文連結,若有需求,建議儲存本文


Bamboo: 雖然不是coding大神,但分享一些自己的心得:

1. Codecademy


以互動式教學方式從基礎開始,適合入門者學習,對於有程式底子的人可能會覺得步調過慢,但不失為學習一個新語言的管道,重點是完全免費,付費升級後可實作課程裡的project。


2. Code School


同樣是互動式教學方式,課程選擇更多元,並會依據你想學習的能力建議學習課程,缺點是通常只有前幾堂入門課是免費的,愈進階的課程需要付費,所以後來我使用率也不高。


3. Coursera

個人使用頻率最高的 MOOC,比較少針對某種語言開課,適合已有底子想增進個人實力時使用,課程有免費也有付費的,重點是非常多名校教授親自授課,例如 Algorithms (Princeton) 、Machine Learning (Stanford) 等熱門領域學習,這兩門我都有修過,強力推薦!

4. LeetCode
如果目標是 Google、Facebook 的工作,都會把上面的題庫刷完,據我了解不管你是申請什麼職缺,都會考演算法白板題,即使答對也會更進一步問你是否能優化,所以上面的題型是最佳面試練習題。

5. Stack Overflow

如果你有程式開發經驗,只要 google 你遇到的問題,大約 90% 的機會答案會從這網站找到。

突然想到,再補充一點 (雖然可能大家已經知道)

6. GitHub
Git 是好物,個人認為是軟體開發者應該具有的基本技能,GitHub是免費的,不儘可以做版本控制,還可以記錄自己的開發心路歷程,也方便分享給其他人,趕快申請一個吧!



Jacky Tung:
會用github之前, 我覺得要先熟悉linux相關指令跟git基本概念比較好喔
有沒有突然不想跨組的(燦笑

線上資源課程 個人最喜歡 Udacity (https://www.udacity.com/)
幾乎都是跟CS相關的, 互動性高, 資源也很豐富
每個觀念都是幾分鐘的影片 複習起來很方便


David Zheng:
學Python的話, 想推薦一本書Automate the Boring Stuff with Python for Beginner, Amazon 評價4.6星

這本書的目標跟書名一樣, 要讓門外漢學完Python之後可以馬上做出幫助日常工作的自動化工具
從程式的基本架構學完, 就開始好幾章的實作範例, 包括整理word, excel文檔, 到簡單的網路爬蟲
我覺得蠻適合初學者, 因為讀起來簡單又可以在實作中找到成就感
作者還很佛心, 把他的電子書還有影片都免費放網站上, 搜尋一下就可找到

對了同一個作者還有出幾本教初學者用Python做遊戲的, 適合喜歡不那麼正經學習的人XD


Fraser Lai
Automate the Boring Stuff with Python for Beginner, Amazon 其實有CC,所以可以在下面找到內容!
https://automatetheboringstuff.com/#toc



Yun
要刷leetcode之前先學演算法
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/

https://github.com/prakhar1989/awesome-courses
這個repo有超多東西,要什麼有什麼

https://www.google.com/about/careers/students/guide-to-technical-development.html
非本科沒概念,先跟這個guide就對了


Liu Yi-Lin
我聽好幾個朋友的分享是看網路開源課程,coursera有基礎到進階的課程,有些組織也會有免費研討課程可以參加。練coding都是刷題(幾乎都刷leetcode)吧。也可以寫寫看台大資工的計程作業。
我自己是n年前用網路上提供的免費manual練R,但我學R純粹是為了跑統計資料而已,沒特別用R在coding。


Shih Haw Yeh
python 的話我推薦 treehouse Kenneth Love的, 教得非常清晰明白淺顯易懂。 code school 強在 javascript 以及 ruby / on rails的課程。

如果真的是想以工程為職業的唯一推薦 the odin project.
BTW 中文目前的品質還有很大的差距,有心想學的建議還是找原文的source。



Kristine Chuang
還有台灣新創codementor :)



Champion Fu

剛好最近有人提到要怎麼入門學CS。以下是魯蛇小弟我的建議。

如果你真的只想知道code是什麼樣子,可以去Codecademy, Code school之類的網站。不過這就像是剛打籃球的人,就知道把球投入籃筐裡面這樣。

但是如果真的想學好code,我建議要把data structure, algorithm, 線性代數學好。至於OS,計算機組織之類的還不急迫就先不用學,應該是也用不太到。

然而有人會說那去coursera學,是沒錯啦!但是我更建議去學校,例如stanford,berkeley看有哪些老師開課,通常在他們的personnal page都會有他們在他們自己學校教的影片。上了幾堂國外coursera的課我覺得普遍來講還是簡單了些,好的課程跟難的課程真的要自己稍微挑選過。那就不如直接上全世界最好的課程。像這個連結 http://mirlab.org/jang/courses/dsa/schedule.asp 是台大資料結構與演算法的課程網,把他學完跟作業都自己寫完,就很猛了。

這就像是學會打球後,要怎麼學V cut跟下擺球,上擺球一樣。
學完這個後再去看看你想進修哪些課程例如最夯的ML, DL, Data mining, iOS,我的建議也是直接找學校的老師的personnal page直接看他們在課堂教什麼。

至於要學什麼語言我覺得都可以,但是請學物件導向的語言。


Arbit Chen

通常剛學git(version control tool)時 我會都會叫人去玩一下這個遊戲(http://learngitbranching.js.org/) 裡面有把git常用的指令walk through過一次 這樣學起來比較快


智程梁

台灣有很多免費公開的技術社群,業界的高手新手都在這邊交流哦。有空可以跑跑外面的黑客松,觀察人們怎麼用軟體協作解決問題。我是 2013 左右認真學程式,學的方法和清單上差不多,加上這裡提的,目前是職業工程師。 https://www.facebook.com/Tw.R.User/?fref=ts


Meng-Ju Leu (Bloomberg工程師)

等一下去 Discovery Day 才知道,因為我也是初學者
BBG 80% 以上的專案都是用 c++ 寫的,所以對 intern 而言:
1. 基本的 c++ 知識(encapsulation, inheritance, polymorphism...etc)
2. OOD (object oriented design) 的技巧
3. 基礎演算法相關知識(sorting, search, graph, network...)
4. 資料結構(array, linked list, tree, hash...)
大概是這些,我有趁現在寒假看 Udacity 自學 web development ( https://classroom.udacity.com/courses/cs253 ) 和讀一些 design pattern 的書。
總而言之,就是要不斷學習新知識XD
一點淺見


盧元駿

其實大家講得很完整了,我再補充一些吧.
.
Java:
我是從Java開始學的,推薦大家可以從Head first Java (深入淺出Java)開始,這本書淺顯易懂,就算是寫過一陣子Java的回去看應該也會有點收獲.或是可以觀看良葛格學習筆記: http://openhome.cc/Gossip/
.
然後根據前輩們的說法,我補上三個覺得不錯的線上課程來源:
1. 計算機結構(交大黃婷婷老師): https://www.youtube.com/playlist?list=PLS0SUwlYe8cxMiFW_PiaBu53nOAXl3dxS
.
2. 線性代數(MIT): https://www.youtube.com/playlist?list=PLE7DDD91010BC51F8
.
3. 機器學習(台大林軒田老師): https://www.youtube.com/user/hsuantien/playlists
.
如果想學linux,從入門到進階都可以看鳥哥的私房菜: http://linux.vbird.org/
.
對電腦底層架構有興趣的話可以考慮去Nand2Tetris自己建立自己的電腦: http://www.nand2tetris.org/
.
最後,如果你寫了一段時間的code,對於物件導向程式設計(OOP)有點興趣的話,可以考慮學一點設計模式(Design Pattern),推薦入門用書:深入淺出設計模式(Head First Design Patterns)

這一篇也可以看看
https://www.ptt.cc/bbs/Soft_Job/M.1453137664.A.52D.html


--
以上整理,歡迎大家補充資源在本文的留言版或 Mason GRE 臉書社團本文

#經原po同意分享
#歡迎轉錄
#MasonGRE2016高分人數全台北第一

2016年9月11日 星期日

[懶人包] 希拉蕊:理工科碩博畢業發綠卡永久居留美國

 

希拉蕊於其競選網站端出大碗牛肉,宣示以理工科為主的STEM領域(Science, Technology, Engineering, Math)碩博士生從經認證機構畢業即給予綠卡,可在美國永久居留和工作。
As part of a comprehensive immigration solution, Hillary would “staple” a green card to STEM masters and PhDs from accredited institutions—enabling international students who complete degrees in these fields to move to green card status.
這對台灣理工科留學生來說無疑是個天大的好消息,如果政見實現,這代表者美國雇主會更加有意願雇用留學生,使得理工科學生在美國找到工作的機率大增,再也不用擔心簽證抽籤的問題,如果政見實現。

美國容許持F-1學生簽證的STEM領域留學生畢業後以OPT(optional practical training)身份在美工作最多36個月。在OPT終止之前,留學生必須抽到H-1B (通稱H1B)才有機會在美國繼續工作。

不幸地,這H-1B並非人人有獎。H-1B即所謂的『工作簽』,每年 4 月 1 號送件。2016年H-1B有6萬5000個常規名額,和2萬個發給擁有美國碩士及以上學歷的名額。申請量約為20萬件,擁有碩士學歷以上中籤率據估計約六成至七成,未擁有碩士以上學歷中籤率約兩成至四成。

若該政見得以實現,STEM碩博畢業即取得綠卡,那麼雇主會更有意願雇用留學生。目前美國雇主因簽證等限制,優先錄取本國生。若STEM碩博畢業即取得綠卡,則大幅降低雇主雇用的成本,讓美國雇主更有意願雇用留學生。

然而,這也要政見實現才行。基於我個人曾在美國媒體工作經驗,我認為這政見短期內實行可能性低。留學生沒有選票,希拉蕊即便當選,不會想要得罪美國選民,沒有立即要實現該政見的動機,讓這政見實行機率低。

然而,為什麼希拉蕊甘冒不韙,不僅支持沒有投票權的留學生在美工作,甚至計畫給綠卡,讓留學生在美國永久居留與工作,為什麼?她完全沒有需要這麼做啊?

我們應該要問,為何不?美國理工高等教育栽培了世界各國最年輕、最優秀人才,然後趕他們回去自己的國家。為什麼不把這群最優秀的理工人才留下來貢獻青春與能力,強大美國國力和經濟?

希拉蕊一個政策主軸就在於科技與創新。科技創新,需要大量充滿活力、精力和專業的理工科人才。留下這群留學生,讓美國有更強大的科技能力和創新能力,帶動美國經濟的發展,這無疑是對美國有利的。

美國的Facebook、Google、Apple,他們的創新與強大,少不了亞裔菁英留學生的貢獻。Google CEO Sundar Pichai 生於印度 Tamil Nadu, 畢業於印度理工學院,在美國史丹佛大學取得碩士學位,也是賓州大學華頓商學院的 MBA。我們身邊都有強者我朋友,在知名美國公司工作。歐巴馬、Mitt Romney都曾討論要給留學生綠卡。美國留下這些年輕又優秀人才,這無疑是對美國經濟和國力有重大利益。

在政治上,希拉蕊也可以拉攏財大氣粗的美國科技公司,拉攏美籍亞裔社群。對美國國力經濟有利,在政治上有利,希拉蕊提出這政見是非常有遠見的。

然而,我不得不承認,這甘冒不韙的政策在實行上有重大的難度。留學生沒有選票,在政治上的影響力薄弱。川普掀起的仇外主義更是掀起了美國人對外國人的警戒和敵視,認為外國人搶走了美國人工作。

因此,這時候留學生群體才要支持希拉蕊。有總統候選人告訴美國選民,留下年輕聰明有活力的留學生對美國政治經濟有利。希拉蕊告訴美國選民外國人不是威脅,而是美國長期成長的動力。無論綠卡政策能否實行,這些觀念我認為是非常高瞻遠矚,也是成熟的國家應有的思維。

相反的,台灣才要擔心,假若美國真的對留學生更加友善,優秀的台灣人都出國,那台灣下一波創新和成長動能在哪裡。為了我們的下一代,台灣應該提出更好的政策和規劃才是。


Mason

PS: 由於工作繁忙,有任何問題請至臉書社團本文留言與大家討論,謝謝!

傳送門
1. Mason GRE臉書社團
2. STEM List
3. 希拉蕊競選網站