#學習寫程式 #誰可以成為軟體工程師 #小吃貨轉職日記 #個人心歷路程
不知道是否還有人記得,很久以前我問了大家一個問題是,覺得什麼樣的人可以成為軟體工程師。
其實一直以來,我覺得只要會英文的人就可以學會寫程式,就可以成為軟體工程師。
為什麼會這麼覺得呢?
首先,就像是,你覺得誰學會使用電腦是一樣的道理。如果你在三十年前問大家這個問題,可能很多人會覺得,只有念相關科系的人可以學得會。
在我們還在DOS的時代,還在打指令的時代,那時只要會打字,就可以成為文書處理專業。沒錯,那個年代,文書處理是一個科系。
但現在,有誰會去大學念一個科系,只有學打字使用Microsoft Office系列。
當然,軟體工程師也並不是一個容易的職業,就像我之前提過的,這個職業也有很多利與弊,不是像外面形容的那樣,好像坐在電腦前面打打字就可以做的,或者像其他工作那樣,可能學了一技之長可以用很久,這個行業的一技之長,可能很快就過保鮮期了。
回到學習寫程式這件事情,在台灣聽很多人都說,「啊!寫程式就是要有天份啦!」「聰明的人啊!」也看過很多網路上的人在吵,資工vs 資管 vs 非本科系什麼之類的。
最近有朋友問我說,為什麼在台灣的時候學不會,可是來英國以後我就學會了,是因為來英國以後特別努力嗎?
其實你到現在問我學會了嗎?我也不會跟你說我什麼都會。但的確光是coding這點,我覺得在台灣學習跟來英國學習最大的差異還是在,學習的動力上面。
在台灣的時候,其實有點為了學而學,從來沒有思考過自己是否真的有興趣,有時候以為自己其實也滿有興趣的,因為那些東西以前沒有碰過,可是只要碰到一點瓶頸 ,就會開始退縮,覺得好煩喔!這些東西怎麼這麼難,只要上課聽不懂老師在說什麼,就會很不想繼續學。
在台灣除了去資工系修課以外,也有去台大資訊系統訓練班上過課,也有上過一些線上的課程。
幾乎都是同樣的感覺,甚至覺得,自己是不是年紀大了,感覺什麼都學不會,聽不懂,自己好像很笨。
來了英國以後,上課的第一天,老師說,我會用英語授課,而且不會為你們放慢速度,因為你們必須要去習慣。當時覺得自己更不可能聽懂,也不可能學會。
可是我們上課的狀況通常是,一天上課兩個小時,上完以後有兩個小時的實驗課,大家坐在電腦前,老師一個一個看你做的東西,從很小的東西開始學。
我覺得這個應該算是滿關鍵的,就是有沒有動手實作。然後不會的話老師也很耐心的教,此外老師還有另外的課後時間,只要我們有問題都可以去找他。
在實驗課的時候,中間只要卡住,老師也會盡量讓我們自己去思考,而不會直接告訴我們答案,例如會問我們,為什麼你想這麼做,這麼做的原因是什麼。
我記得很久以前在台灣的大學,問了老師一個問題,老師的答案是,你以後就會知道了。當下其實就讓人覺得有點反感,而且後續問老師很多問題,老師也是都這樣,這個以後就會學到了。
我自己算是一個滿會因為老師而喜歡一個科目或不喜歡一個科目的人。就像我小時候很討厭數學課,也是因為不喜歡數學老師。也不是真的不喜歡,就是有一種覺得,反正老師也不在乎我學不學的會,只在意那些學得好的人。
在台灣也聽過很多人說,啊要學會寫程式,數學就要先打好基礎,數學不好怎麼寫程式。可是真的成為工程師以後,在工作上根本沒用到什麼基礎數學啊!
其實在英國也遇過很多數學系畢業的,可是害怕寫程式的人也很多,他們這邊通常學校會有一兩堂課是寫程式,可能學個Python, 像我之前念書的學校,學不好的很多,一些很厲害的大學的數學系,也有人就乾脆放棄那門課,不學,因為覺得很複雜,他們寧願把時間拿去研究純數。
不過現在的電腦,都會幫你做好各種基本數學運算了,大部分現在的程式語言,你要跑什麼線性回歸什麼的都幫你做好了,也想不到什麼時候會用到三角函數之類的,除非你的工作是什麼data scientist 之類,可能要建立複雜的數學模型,或者quant 那類的,不然就算你要做Machine Learning這類的東西,也有很多已經現有的工具,軟體工程師大部分就是拿來跑一跑。
要是你真的是做機器學習相關的研究,人家也不要你軟體工程師,人家要的是資料科學家背景,人家至少要你有個PhD唸完再來,你要至少會讀paper, 寫paper做研究啊!!
如果是醫學相關的軟體,需要有專業技能,人家也要找醫學背景的來,如果是金融相關的,需要有非常多的金融專業技能,當然也是從金融背景的比較容易。
通常軟體工程師,普通的軟體工程師職缺,就是不太會需要太多納些相關的專業領域,他們也願意你進去了再學,你主要需要的是快速學習、適應環境的能力,還有溝通能力,這樣如果跟其他專業領域的科學家、研究員、分析師溝通之類的,至少你可以不會有太多的障礙。
當然,軟體工程師的工作也可以細分成很多領域,像是遊戲產業的軟體工程師,或者IoT產業的軟體工程師,甚至還有像是軟體架構師、軟體分析師、資料工程師之類的,他們可能需要使用到的技能也不一樣,但也不會沒事就需要叫你算個三角函數之類的.........通常你的背景還是在於你對於寫程式的熟悉程度,你會使用那些工具,你是否是個團隊合作的人,能否跟大家一起寫程式。
總之,回到前面說的,所以到底學習寫程式需要什麼,英文真的是很重要的一環,因為程式語言本來就是英文為主,在來就是網路上的資源,也幾乎都是英文為主。還有你寫程式的環境,也幾乎都是英文,像是你使用的工具,回報給你的錯誤訊息也常常可能是英文的。
來英國以後一直在思考的一點,在台灣討論到會不會寫程式,或者學不學的會,通常英文好的話,也可能在閱讀文件方面比較快,可以快速學到一些東西。
語言也不是全部,如果已經在工作的話,工作環境也很重要,學習環境也很重要,在學校如果遇到一個很好的老師,或者有一起學習的夥伴們,也會比自己一個人獨自專研來的快,不過每個人的學習方法不同,更重要的是找到自己喜歡的學習方法。
反正如果你想學的話,也不用管其他人講什麼,想學就學啊!當初我要學的時候,也很多人覺得我不可能學的會或者不可能成為軟體工程師之類的。
其實也不是因為我原本念歷史系的原因,主要就是,大家覺得,我是一個沒有邏輯,邏輯不好的人。還有覺得我是一個三分鐘熱度的人,以及數學指考考了不到30分。這些我也都寫在部落格裡面了,所以一直以來都有在看我文章的人,大概也都知道了。
當時,我大概聚集了所有身邊當工程師的朋友,都覺得不可能會成為工程師的因素吧!但現在我還是做為一個軟體工程師賺錢就是了。
有時候想做什麼就去做,反而是一件比較容易的事情。尤其是學習這種事情,網路上也有很多資源可以學習也不一定需要花錢。
在學校的時候,除了老師給予我一些自信以外,另外也是在英國認識了一些人,給予了一些鼓勵,有些素未謀面的人,也有些一面之緣的人,可能也是因為他們不認識原本的我,所以都覺得,沒有什麼是我不能找到工作或成為軟體工程師的原因。
現在想想,或許這就是初生之犢不畏虎的概念,當初沒有想太多就跑來英國,然後來了以後才開始覺得必須要努力一點才能找到工作,中間也遇到了很多困境,工作以後也曾經想過要放棄當軟體工程師,想要去當個什麼辦公室助理之類的。
也經歷了很多覺得很困惑的時期,雖然自己現在還是滿困惑的。但我覺得如果你真的想要學習或者轉職,只要做好功課(這點真的滿重要的,至少不要覺得只是看別人好像不錯,就決定要去做,至少要衡量一下利與弊),就可以去做吧!也不用管別人說你適不適合走這條路怎樣的。
每個人適合走的路也不太一樣,還沒走之前都看不到,就算你看身邊的人都怎樣,自己還是自己。
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
python數學運算 在 軟體開發學習資訊分享 Facebook 的最佳貼文
✅ 課程說明
成為一個完整的資料科學家和機器學習工程師! 加入一個由20多萬名工程師組成的線上社群,參加一個由行業專家教授的課程,這些專家實際上為矽谷和多倫多等地的大公司工作過。 這是一個剛剛在 2020年 1 月推出的全新機器學習和資料科學課程! Andrei 課程的畢業生現在在谷歌、特斯拉、亞馬遜、蘋果、 IBM、 JP 摩根、 Facebook 等頂級科技公司工作。
從頭開始學習資料科學和機器學習,得到聘用,並在 Udemy 的最現代、最新的資料科學課程(我們使用最新版本的 Python、Tensorflow 2.0 和其他程式庫)的道路上享受樂趣。 本課程的重點在於提高效率: 不要再花時間在令人困惑的、過時的、不完整的機器學習教程上了。 我們非常自信,這是你找遍任何地方才能找到的最全面、最現代的課程(我們知道,這是一個大膽的陳述)。
這個綜合性的、基於專案的課程將向你介紹資料科學家的所有現代技能,在這個過程中,我們將建立許多真實世界的專案,新增到你的履歷組合中。 你可以訪問 Github 上的所有程式碼、工作簿和模板( Jupyter Notebooks ) ,這樣你就可以馬上把它們放到你的作品集中了! 我們相信這門課程解決了進入資料科學和機器學習領域的最大挑戰: 在一個地方擁有所有必要的資源,並學習僱主想要的最新趨勢和工作技能。
課程將是非常實際的,因為我們將帶領你從頭到尾成為一名專業的機器學習和資料科學工程師。 課程提供兩個路徑。 如果你已經知道程式設計,那麼你可以直接進入並跳過我們從頭教你 Python 的部分。 如果你是全新的,我們將從一開始就教你 Python 以及如何在現實世界中使用它來完成我們的專案。 不要擔心,一旦我們通過了像機器學習 101 和 Python 這樣的基礎知識,我們就可以進入高階主題,像神經網路、深度學習和轉移學習,這樣你將能夠在真實世界中實踐,並為實戰做好準備(我們向你展示完全成熟的資料科學和機器學習專案,並給你程式設計資源和備忘錄) !
本課程的主題包括 :
✅ 資料探索與視覺化
✅ 神經網路和深度學習
✅ 模型評估與分析
✅ Python 3
✅ Tensorflow 2.0
✅ Numpy
✅ Scikit-Learn
✅ 資料科學與機器學習專案和工作流程
✅ 在 Python 用 MatPlotLib 和 Seaborn 做資料視覺化
✅ 轉移學習( Transfer Learning )
✅ 影像辨識和分類
✅ 訓練/測試並交叉驗證
✅ 監督學習 : 分類、迴歸和時間序列
✅ 決策樹和隨機森林
✅ 整體學習( Ensemble Learning )
✅ 調整超參數( Hyperparameter Tuning )
✅ 採用 Pandas 資料框解決複雜任務
✅ 採用 Pandas 處理 CSV 檔
✅ 採用 TensorFlow 2.0 和 Keras深度學習 / 神經網路
✅ 使用 Kaggle 並進入機器學習競賽
✅ 如何呈現你的發現並讓你的老闆印象深刻
✅ 如何為你的分析清理並準備你的資料
✅ K 最近鄰( K Nearest Neighbours )
✅ 支援向量機( Vector Machines )
✅ 迴歸分析( Linear Regression/Polynomial Regression )
✅ 如何運用 Hadoop、Apache Spark、Kafka 和 Apache Flink
✅ 如何用 Conda、MiniConda 和Jupyter Notebooks 設定你的環境
✅ 配合 Google Colab 採用 GPUs
到本課程結束時,你將成為一名完整的資料科學家,可以在大公司找到工作。 我們將利用我們在課程中學到的一切來建構專業的真實世界專案,比如心臟病檢測、推土機價格預測器、犬種影像分類器等等。 到最後,你將有許多你已經建立的專案向其他人炫耀。
事實是: 大多數課程都教你資料科學,而且就只這樣。 他們會告訴你如何開始。 但問題是,你不知道接下來要往哪去,也不知道如何建立自己的專案。 或者他們會在螢幕上顯示大量的程式碼和複雜的數學運算,但是他們並沒能好好地解釋清楚到你能夠自己去解決現實生活機器學習問題的程度。
無論你是程式設計新手,還是想提高你的資料科學技能,或者來自不同的行業,這門課程都是為你而設的。 這個課程不是讓你在沒有理解原則的情況下編寫程式碼,這樣當你完成這個課程的時候,除了看另一個教學,你不知道還能做什麼。 不! 這門課程將推動你且向你挑戰,從一個完全沒有資料科學經驗的初學者,到成為一個可以滿載離開、忘記 Daniel 和 Andrei、建立自己的資料科學和機器學習工作流程的人。
機器學習在商業行銷和金融、醫療保健、網路安全、零售、運輸和物流、農業、物聯網、遊戲和娛樂、病人診斷、詐欺檢測、製造業的異常檢測、政府、學術 / 研究、推薦系統等等方面都有應用。 在這門課程中學到的技能將為你的職業生涯提供許許多多的選擇。
你聽到許多像人工神經網路或人工智慧等敘述,完成本課程,你將對這些詞有深刻的了解。
現在就加入課程,加入我們社群,在這個行業獲得支持,學習資料科學和機器學習。 我們保證這比任何關於這個話題的訓練營或者線上課程都要好。 課堂內見!
https://softnshare.com/complete-machine-learning-and-data-science-zero-to-mastery/
python數學運算 在 軟體開發學習資訊分享 Facebook 的精選貼文
udemy 上第一堂也是唯一的一堂中文 python 深度學習課程
打好 Python 基礎,應用在大數據,機器學習和人工智慧,並使用 Tensorflow,Keras,MNIST 實際打造手寫辨識系統
從這 9.5 小時的課程,你將學到
1. 使用 Python 作大數據運算基礎
2. 使用 Python 作機器學習基礎
3. TensorFlow+Keras 的基礎
4. CNN 卷積神經網路
5. RNN 遞迴神經網路
6. 手寫辨識數字
7. 學習機器感情
8. 使用 Python 作數學運算
9. 物件導向程式設計精華
10. 支持向量機的萬用分類機
11. 支持向量回歸回歸分析
https://softnshare.wordpress.com/2017/11/12/python-b/