【想學程式的你】
不知道該從哪裡碰起程式語言的你,
Python被大家認為是個好學、有龐大AI資源、
開源平台、函式庫支援的程式🙌🏻
麻省理工、加洲柏克萊等頂大也都採用Python✍🏻
作為資訊科學的入門程式語言教學!
或許可以了解一下別人的學習經驗,
再勇敢地跨出第一步吧!
另外,C跟Java也是十分火熱的程式語言✍🏻
期待有一天看到你們的分享!
「
📍在這篇文章中,會分享我在 2021 Spring 在 ccClub Python 讀書會 的上課心得(…)
1. 「紮實程式基礎」(…)
2. 「一起努力的夥伴」(…)
3. 「從 0 到 1 的作品」(…)
從「主題確定」、「使用者體驗流程」、「架設 LINE Bot」、「程式共編」、「畫面美編」、「成果發表」都是由組員一同完成(…)
📍為什麼要學程式? 為什麼學 Python?
過去在行銷面接觸的多是「內容產製」的工作,但一直希望自己可以多培養「數據分析」的技能(…)在分析數據的過程中,因為自己沒有程式能力,只能用笨重的手法人工處理資料(…)
而 Python 一直都是學程式的必備款(…)面對未來的求職市場,即便是商科學生,從事行銷等工作,會 Python 勢必會比他人更有優勢(…)
📍那 ccClub 的上課方式是什麼?免費/保證金?
「翻轉教室教學法」重練習、有問題直接問
課前:「線上課程」講基礎觀念
課前:5-10 題練習題+ Medium 講義
課間:講師提點+進階觀念
課間:課堂練習+助教協助+講師解題
課後:限時作業
期末:專案
📍課程完全免費,但收「保證金」,一種對自己負責的態度
(…)目的是讓報名課程的人,是「足夠確定下好決心」來學習的,不是來看看或是三分鐘熱度!(…)
📍怎樣的人可以申請 ccClub?怎麼申請?
申請人「沒有任何限制」!不論是否為台大學生,不論是否為學生,不限任何身份(…)
📍最後,我的小分享
學習程式最重要的是「學習環境」,就跟學外語是一樣的,如果沒有好的學習環境,即便有課程,也很難學的下去(…)而且大家也不一定是專業出生,很多是跨領域/斜槓來的,同時年齡層較相近,溝通起來不會有壓力,就不用怕自己真的程度太差,這裡每個人都是這樣走過來的XD
」─ #太郎仔 @20_marketing_note
💡 本文選自 #太郎仔
✨全文看這裡:https://www.blink.com.tw/board/post/102742/
✨主頁Linktree有全文連結!
#大學生看選文 #大學生 #大學 #python #ccclub #台大 #程式語言 #內容 #免費課程 #讀書會 #作業
同時也有6部Youtube影片,追蹤數超過4萬的網紅吳老師教學部落格,也在其Youtube影片中提到,從EXCEL VBA到Python金融數據之網路爬蟲實作第15次(台灣股市資訊網加權指數&用IE抓取股市資訊網加權指數細節&分享大學程式設計教學交流會簡報心得&加入錄製巨集與使用encodeURL轉碼) 01_重點回顧與台灣股市資訊網加權指數 02_用IE抓取股市資訊網加權指數細節說明 03_分享...
python 使用 心得 在 Taipei Ethereum Meetup Facebook 的最讚貼文
📜 [專欄新文章] [zkp 讀書會] Cairo 語言介紹
✍️ NIC Lin
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Cairo 是 STARK 證明系統的其中一個編程語言,讓開發者能透過 Cairo 來使用 STARK,撰寫效能更高的 Dapp
Photo by Simon Berger on Unsplash
Warning:本篇會保持在 high level 的介紹,實際深入的部分請見文內附上的文檔或是官方開發者文件
背景介紹
建構於密碼學的零知識證明能提供計算的隱私性,但同時在區塊鏈生態系也被用來提升 Scalability — 我可以用 10 秒的運算資源來驗證原本耗費 1000 秒運算資源的計算過程
如同更多人熟悉的 SNARK,STARK 也是一個零知識證明的證明系統,但當前的 STARK 著重的是在 Scalability ,而非大家比較習以為常零知識證明提供的隱私性特質
其實目前基於 SNARK 的 Rollup 項目,例如 zkSync、Loopring、Aztec、zkopru,除了 Aztec 外,其他都是利用 SNARK 來增加 Scalability — 這些 Rollup 上資料都還是公開、沒有隱私性的
StarkWare 是目前唯一基於 STARK 的開發團隊
STARK 要加上隱私保護不會太難,只是 StarkWare 還沒有把這項功能放在未來規劃中
Cairo 簡介
標榜為圖靈完備的零知識證明系統語言,Cairo 對原本熟悉 Solidity 的開發者來說還是會感到比較難上手和陌生的。再加上套件庫還不夠充足,目前支援的雜湊函式是 Pedersen,數位簽章演算法是 ECDSA(相對於 SNARK,EdDSA 的效能反而比較差所以沒有支援)。
但 Cairo 還在早期開發的階段,相信開發體驗會越來越好的。
另外需要注意的是作為一個證明系統,會有 Prover 和 Verifier 的角色。而 STARK 的 Verifier 是公開的,但 Prover 軟體預計會有 License 保護。Prover 一般情況下不得用於商業用途,除非將 proof 上傳至官方的 Verifier。
最後要提及的是,第一版的 Cairo 是設計來方便開發者將 Dapp 的運算遷移至鏈下。不同於 Rollup,這個鏈下只會有它自己一個 Dapp。這個 Dapp 的項目方自己維護自己 Dapp 的 state。( Rollup 則是 operator 維護所有 Dapp 的 state,Dapp 開發者不需自己操煩)
這可能有點難懂。如果你有在寫 Solidity,想像一下今天你在合約要用到合約裡宣告的 storage 變數時,你要自己提供 merkle proof 上來,證明這個storage 變數真的是這個值。這個就是開發者要自己維護 state 的意思。
而第二版的 Cairo 則是 StarkNet 裡使用的 Cairo(第一和第二版是不同編譯器),這版的 Cairo 就是作為 Dapp 在 Rollup 開發所使用 — 開發者可以在合約裡宣告變數,變數的值不需開發者維護,可以直接假設存在。
註1:StarkWare 不喜歡 Rollup 這個詞,他們覺得 Data Availability 的需求是一段光譜:不一定得要把 data 全都送上 L1,中間有其他方式可以做不同層級的 Data Availability。
註2:第一版和第二版實際上在官方版本裡是 0.0.1 及 0.0.2,在撰文當前最新版即是 0.0.2
官方網站:https://www.cairo-lang.org
開發者文件:https://www.cairo-lang.org/docs/
開發環境
Cairo 有提供像是 Remix 的瀏覽器 IDE:playground。裡面提供各種範例練習和挑戰,除了可以編譯,還可以直接生成並上傳 proof。
註:但有些功能還是沒辦法在 playground 裡使用,例如要給你的程式 custom input 時。這時候只能在本地端開發才能使用這個功能。
開發 Cairo 要先安裝python,我將開發者文件整理出來的資料統整在這個 hackmd 文檔裡:https://hackmd.io/w690dpAQTsKeKZv3oikzTQ
裡面包含簡介、設置本地開發環境以及 Cairo 基礎(因為篇幅原因,所以不將內容複製到這裡)
註:我把開發者文件裡的代碼整理到這裡:https://github.com/NIC619/cairo_practice/tree/master/practices
如果不想在研究開發者文件過程中,還要自己手動拼湊裡面例子的話,可以直接用整理好的代碼來執行。同時 repo 裡還有包含一些額外自己測試 Cairo 功能的範例。
深入 Cairo
在那份 hackmd 文檔裡的開頭,可以連結到第二部分 — 深入 Cairo 的部分。裡面也是從開發者文件裡擷取出來我覺得比較重要的部分。如果你要讀開發者文件的話,我建議從 Hello Cairo 開始,它會從例子切入,會比較好知道 Cairo 怎麼使用。接著如果要更深入了解,再去讀 How Cairo Works。
StarkNet Cairo
第二版的 Cairo 其實功能和第一版的 Cairo 是差不多的,所以不必擔心在開發者文件裡學到的 Cairo 在 StarkNet 版本會不能用或差很多。在讀完 Hello Cairo/How Cairo works 後,就可以接著看 Hello StarkNet。會很順利的切換到 StarkNet 版本的 Cairo。
註1:我整理的文檔裡是按照第一版 Cairo 所寫的
註2:如果你從開發者文件一路看下來,體驗過非 StarkNet 版的 Cairo,那你在體驗 StarkNet 版的 Cairo 時一定會發現這更像一般智能合約的使用方式 — 你可以用 view 函式查詢 storage 變數,可以用 external 函式去執行合約(非 StarkNet 版本不是這樣操作 Dapp 的,這邊因為篇幅原因沒有詳細介紹)。
非常建議嘗試兩種版本的 Cairo,你會知道 1. 操作一個單獨在 L2 的 Dapp 和2. 操作與其他 Dapp 共存在 Rollup 上的 Dapp 的不同。這對了解 L2 怎麼運行、需要哪些資料、為什麼需要這些資料非常有幫助。
0.0.2 版的 StarkNet Cairo 目前還缺少一些功能:
函式還沒辦法宣告陣列或 struct 型態的參數
合約和合約之間還沒辦法互動
L1 沒有辦法讀取到 L2 的資料,L2 也沒辦法讀取到 L1 的資料。如果要建立跨 L2 Bridge,這個功能非常重要。
補充及個人心得
STARK 的 proof size 相比於 SNARK 系列的 proof size 大很多,又其證明所包含的交易數量對 proof size 和驗證時間的影響不大,所以把很多筆交易一併做一個 proof 會是對 STARK 非常有利、節省成本的方式(SNARK、STARK 比較表)。但這同時也是一個缺點,如果你的 Dapp 或 Rollup 的 TPS 不高,那就只能等更久時間搜集多一點的交易,要不然就只能提高成本來維持驗證 proof 的頻率。
StarkWare和 zkSync 一樣都有 Rollup 宇宙的概念( Rollup 宇宙的用詞並不精確,因為在他們的宇宙中不會所有子鏈都是 Rollup,而是會有依照 Data Availability 程度不同所區分的子鏈,像是 Validium、zk Porter 的設計),個人覺得能夠有(針對 Data Availability 程度的)選擇是會比只有一個選擇(完全 Data Available) 還好的方式,但實際上的可行性就要等其團隊釋出更多的資訊。
在 Rollup 越趨成熟的情況下,能夠提供快速跨 Rollup 服務的流動性提供者的角色會越來越重要。zk Rollup(StarkNet、zkSync、etc…)比 Optimistic Rollup (Optimism、Arbitrum、etc…)有著短上許多的 finalize 時間,這對降低流動性提供者的風險有很大的幫助,但目前 zk Rollup 支援合約功能甚至 L1 <-> L2 互動的完成度都比 Optimistic Rollup 還低上許多。短期內快速跨 Rollup 的服務應該還是侷限在 Optimitic Rollup 之間。
abbrev
[zkp 讀書會] Cairo 語言介紹 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
python 使用 心得 在 半路出家軟體工程師在矽谷 Facebook 的最佳解答
感恩節感謝 & 一些學習課程推薦
今天是美國的感恩節, 首先要謝謝各位讀者你們的支持,一開始的分享主要是我的轉職及找工作經驗, 後來逐漸擴展到我的矽谷的所見所聞、矽谷人物專訪、以及我的學習成長的筆記。 從 2012 年開始寫部落格, 2017 年開始分享 Facebook page, 也是累積了許多經驗, 文筆說不上變的很好, 但至少越來越熟練把一個靈感大目標從我的思緒整理、輸出成一篇文章分享出來, 這個過程也認識了許多有趣及厲害的人, 訪問了一些我覺得很酷很強的人,召集了許多熱心的朋友一起做了 “歹晚郎內推互助網絡” 幫助更多人在艱難的時期找工作,我個人也覺得在這個過程中有所提升。 如果你有考慮寫作分享, 或是任何創作, 希望我之前的文章“為什麼我建議你開始寫文章、或是任何形式的內容創作” 也能讓你一起加入開始練習寫作/創作/輸出的行列。
我不時會收到讀者詢問如何到美國科技公司工作,或是如何轉職成軟體工程師、如何學習程式等等的問題。 到美國工作問題我之前的文章: “如何到美國科技公司工作?” 已經把非美國人可以到美國工作的模式列出, 轉職軟體工程師及學習程式很多時候是一起的問題, 很多讀者有興趣轉職,但完全不知道軟體工程師在做什麼, 以及應該如何上手學習。 我給過不少次建議, 今天決定用這個機會公開的分享之前回答讀者的方式。
如果完全沒有學習過程式, 可以先玩玩這個 MIT Media Lab 研發的 Scratch , Scratch 可以讓你用拖拉的方式把一些程式的邏輯組合起來, 在還不熟悉電腦運作的時候, 可以很直觀的在遊戲中累積你對程式的理解。
如果玩一下 Scratch 後還有興趣, 我推薦可以上哈佛大學的 CS50 (Computer Science 50: Introduction to Computer Science) (https://bit.ly/3fDcBFG)。 這門課是近年來哈佛大學熱門課程排行榜上的常勝軍,教授 David Malan 是個很好的老師, CS50 把電腦科學的基礎用許多生動及詳細的方式傳授出來,上完這門課後對許多電腦科學領域會有好的基本認識,對課程中所用到的不同程式語言也會有個基本的了解。
當然 CS50 畢竟是大學的課程, 有一週一週制式的格式, 作業也是大學的方式, 我近年來蠻喜歡 Udemy 上的課程, 因為每個領域都有很棒的老師, 課程也更彈性及多元, 作業及測驗也比較靈活。 如果你還沒有學習任何程式的經驗, 可以嘗試從學習 Python 或 Javascript 入門, 因為這 2 們語言的特性, 對初學者上手比較容易。 此外 Javascript 是網頁主要使用的程式語言, 而 Python 在資料處理及機器學習都是首選語言, 所以這 2 個語言學習之後未來都有許多應用及職缺的可能。
如果你有興趣學 Python ,可以先學習這個有 115 萬學生上過的課程: 2020 Complete Python Bootcamp From Zero to Hero in Python (https://bit.ly/2KJDfS6), 了解 Python 語言的基礎及跟著課程建立自己的 app 及遊戲。
Javascript 的話可以看這個有 37 萬學生參與的課程: The Complete JavaScript Course 2020: From Zero to Expert! (https://bit.ly/3fFPcU8) 學習 Javascript 基礎及嘗試建立網頁 app。
如果對資料科學有興趣的, 可以和 34 萬人一起學習 The Data Science Course 2020: Complete Data Science Bootcamp (https://bit.ly/3fD315M), 了解資料科學中數學、統計、 機器學習及各種有關的知識, 因為也會用到 Python,所以也可以增加自己 Python 語言的技能。
如果你對分析資料有興趣, 這個有 32 萬名學生上過的資料課程 The Complete SQL Bootcamp 2020: Go from Zero to Hero (https://bit.ly/33nXQlj), 可以學習如何用 SQL 來查找資料庫, 並分析資料。
因為機器學習的火紅, 近年機器學習的課程也是無敵多, Machine Learning A-Z: Hands-On Python & R In Data Science (https://bit.ly/3fGB6lj) 累積有 72 萬學生學習及好評, 可以讓你了解機器學習在做什麼。
而我親愛的老婆也分享過她喜歡的課程, 以下都是她上過且去蕪存菁強力推薦的課程 (也可以參考她的推薦文章), 她靠著許多線上課程, 沒有再讀一個大學、研究所學位或是參加 bootcamp , 也成功轉職為軟體工程師, 這些課程我也有上過一些, 覺得這個老師 Andrei Neagoie 的教法也是蠻不錯的, 他的課程都很注重實作, 講解也很清楚, :
The Complete Web Developer in 2020: Zero to Mastery (https://bit.ly/3fDcwSq)
Master the Coding Interview: Data Structures + Algorithms (https://bit.ly/3fD7q8V)
The Complete Junior to Senior Web Developer Roadmap (2020) (https://bit.ly/39jeK8s)
Complete Python Developer in 2020: Zero to Mastery (https://bit.ly/37ARPS4) (這篇是她上這門課的詳細心得)
Complete Machine Learning and Data Science: Zero to Mastery (https://bit.ly/2WDBk57) (機器學習及資料科學)
許多 Udemy 的課程都是有 30 天 Money back guarantee , 代表如果你上一下子,覺得老師教的不好, 內容不喜歡, 都是可以要求退費的。 Black Friday 如果你還沒決定要買什麼, 買課程充實自我會是個不錯的決定!歐, 對了, 如果你剛好在美國,要買 Udemy 課程, 可以搭配使用 cash back 網站, 像 Rakuten 最近 Udemy 有 10% 的 cash back, 如果你還沒有用過, 可以使用我的推薦連結註冊, 還可以得到 $40 的註冊獎勵呢 (http://bit.ly/2SeLuXL)!有一些 American Express 信用卡還有 Udemy 買 $20 退 $5 的 offer , 也記得下訂前查看一下!
以上許多課程, 就算不是軟體工程師的初學者也可以得到許多新科技及方法, 我在 Udemy 買了許多課程, 也時常利用時間學習我感興趣的領域。 最後再次感謝大家一直以來的支持, 祝福大家都有個充實、健康、平安的感恩節, 2020 年最後自我學習提升, 為未來做更好的準備!
部落格原文及相關連結:
https://brianhsublog.blogspot.com/2020/11/ThanksgivingAndCourseList.html
python 使用 心得 在 吳老師教學部落格 Youtube 的最佳解答
從EXCEL VBA到Python金融數據之網路爬蟲實作第15次(台灣股市資訊網加權指數&用IE抓取股市資訊網加權指數細節&分享大學程式設計教學交流會簡報心得&加入錄製巨集與使用encodeURL轉碼)
01_重點回顧與台灣股市資訊網加權指數
02_用IE抓取股市資訊網加權指數細節說明
03_分享大學程式設計教學交流會簡報心得
04_加入錄製巨集與使用encodeURL轉碼
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/labor_python_2020
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
課程簡介:入門
VBA重要函數到Python
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
檔案與資料庫處理
課程簡介:進階
處理 CSV 檔和 JSON 資料
PM2.5即時監測顯示器轉存到SQLITE資料庫
網頁資料擷取與分析、
Python網頁測試自動化、
下載外匯資料、下載YAHOO股市類股、下載威力彩
EXCEL VBA與Phython協同運作
資產負債表與券商分點買賣超
群益八大公股銀行買賣超
鉅亨網新聞與MoneyDJ新聞
7-11門市與PChome
參考書目
Excel VBA實戰技巧金融數據x網路爬蟲
作者:廖敏宏(廖志煌)
出版社:碁峰 出版日期:2019/06/30
Python大數據特訓班(第二版)
作者:鄧文淵,文淵閣工作室
出版社:碁峰?出版日期:2020/06/01
吳老師 110/1/23
EXCEL,VBA,Python,東吳推廣部,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,金融數據,網路爬蟲實作
python 使用 心得 在 吳老師教學部落格 Youtube 的精選貼文
從EXCEL VBA到Python金融數據之網路爬蟲實作第15次(台灣股市資訊網加權指數&用IE抓取股市資訊網加權指數細節&分享大學程式設計教學交流會簡報心得&加入錄製巨集與使用encodeURL轉碼)
01_重點回顧與台灣股市資訊網加權指數
02_用IE抓取股市資訊網加權指數細節說明
03_分享大學程式設計教學交流會簡報心得
04_加入錄製巨集與使用encodeURL轉碼
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/labor_python_2020
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
課程簡介:入門
VBA重要函數到Python
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
檔案與資料庫處理
課程簡介:進階
處理 CSV 檔和 JSON 資料
PM2.5即時監測顯示器轉存到SQLITE資料庫
網頁資料擷取與分析、
Python網頁測試自動化、
下載外匯資料、下載YAHOO股市類股、下載威力彩
EXCEL VBA與Phython協同運作
資產負債表與券商分點買賣超
群益八大公股銀行買賣超
鉅亨網新聞與MoneyDJ新聞
7-11門市與PChome
參考書目
Excel VBA實戰技巧金融數據x網路爬蟲
作者:廖敏宏(廖志煌)
出版社:碁峰 出版日期:2019/06/30
Python大數據特訓班(第二版)
作者:鄧文淵,文淵閣工作室
出版社:碁峰?出版日期:2020/06/01
吳老師 110/1/23
EXCEL,VBA,Python,東吳推廣部,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,金融數據,網路爬蟲實作
python 使用 心得 在 吳老師教學部落格 Youtube 的最讚貼文
從EXCEL VBA到Python金融數據之網路爬蟲實作第15次(台灣股市資訊網加權指數&用IE抓取股市資訊網加權指數細節&分享大學程式設計教學交流會簡報心得&加入錄製巨集與使用encodeURL轉碼)
01_重點回顧與台灣股市資訊網加權指數
02_用IE抓取股市資訊網加權指數細節說明
03_分享大學程式設計教學交流會簡報心得
04_加入錄製巨集與使用encodeURL轉碼
完整影音
http://goo.gl/aQTMFS
教學論壇(之後課程會放論壇上課學員請自行加入):
https://groups.google.com/forum/#!forum/labor_python_2020
懶人包:
EXCEL函數與VBA http://terry28853669.pixnet.net/blog/category/list/1384521
EXCEL VBA自動化教學 http://terry28853669.pixnet.net/blog/category/list/1384524
課程簡介:入門
VBA重要函數到Python
建置Python開發環境
基本語法與結構控制
迴圈、資料結構及函式
檔案與資料庫處理
課程簡介:進階
處理 CSV 檔和 JSON 資料
PM2.5即時監測顯示器轉存到SQLITE資料庫
網頁資料擷取與分析、
Python網頁測試自動化、
下載外匯資料、下載YAHOO股市類股、下載威力彩
EXCEL VBA與Phython協同運作
資產負債表與券商分點買賣超
群益八大公股銀行買賣超
鉅亨網新聞與MoneyDJ新聞
7-11門市與PChome
參考書目
Excel VBA實戰技巧金融數據x網路爬蟲
作者:廖敏宏(廖志煌)
出版社:碁峰 出版日期:2019/06/30
Python大數據特訓班(第二版)
作者:鄧文淵,文淵閣工作室
出版社:碁峰?出版日期:2020/06/01
吳老師 110/1/23
EXCEL,VBA,Python,東吳推廣部,自強工業基金會,EXCEL,VBA,函數,程式設計,線上教學,金融數據,網路爬蟲實作