📜 [專欄新文章] Scaling Ethereum 參賽心得
✍️ Johnson
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
Scaling Ethereum 是一場由 ETHGlobal 所舉辦的線上黑客松,也是我第一次參加與以太坊有關的黑客松活動,這篇文章就來分享一人參賽的過程與心得。
源起
一開始是在 telegram 群組中得知這場比賽的消息,因緣際會之下剛好有人想組隊參賽,於是就在報名截止的前一天一起跟著報名了。
報名的方式除了填一些基本資料外,最特別的是還要 stack 以太幣,也就是要傳送 0.01 顆以太幣給主辦方,規則是必須在比賽的最後,有提交作品的人才能贖回 0.01 顆以太幣,之後看到 meme 頻道有人留言:
When your project is incomplete but you submit to get back stake.
一方面,這確實也會激勵你好好把比賽完成,就算沒做完也要有些成果上去,這也是主辦方秉持的精神,他們認為大家來黑客松相互學習成長,競賽獎金則是其次。
獎金
比賽方式是由 25 個左右的贊助者(sponsor)分別提供獎金,每個 sponsor 都有錄製一段影片,說明怎麼獲得他們的獎金,大部分會要你使用他們開發的工具,或者必須跟 sponsor 在做的研究有關,去實作出創新的作品。可參考:Prizes — Scaling Ethereum
你的專案可以選擇要投入哪個 sponsor 的獎金,一個專案可以投入多個 sponsor 底下,這樣獲獎機會也會比較高。
我選擇的 sponsor 是 zkSync,他們的說明如下:
zkSync is a user-centric zkRollup developed by Matter Labs. It uses zero-knowledge proofs to keep data availability on mainnet to achieve exponentially lower transaction costs. You may have seen us powering projects such as payments and Gitcoin Grants. We are currently rapidly developing zkSync 2.0, which will feature EVM-compatibility in testnet May 2021, soon followed by zkPorter, our new exponential scalability solution.
PrizeszkSync will be awarding their Prizes as follows:
- 1 winner — 4,000 USDC
- 2 winners — 2,000 USDC
- 4 winners — 500 USDC
We encourage builders to utilize zkSync SDK’s, implemented in JavaScript/Typescript and Rust. Prizes will be awarded to projects that make it simpler and easier for non-technical users to use zkSync, other ideas include integrations of current tools such as in Gitcoin Grants and tools for easy mass payments and multi-sigs.
社群互動
這個 hackathon 很棒的地方是他把使用者體驗做的很好。每個人都會有自己的 dashboard 顯示目前專案的進度和一些訊息。
Check-In #1 和 Check-In #2 的階段會要你提供專案的構想,你隨時都可以修改。主辦方會看你提交的資訊,幫助你找到適合的 sponsor,或是給你一些建議,就算是一人參賽也能感受到回饋。
整個賽程期間,社群都是使用 discord 在互動,discord 裡頭有很多頻道,像是基本的大會報告的頻道,或是一些不重要的迷因、閒聊頻道都有。
每個 sponsor 也都有自己的頻道,我就會在 sponsor-zksync 的頻道詢問技術的問題,例如我想問問 zkSync 一些關於專案構想的意見:
Hi there, I want to build a gas fee relayer which make my ERC-20 token transfer without transaction fee, to be more precise, delegating gas payment by another party. I think this is done by GSN https://opengsn.org/ , but maybe it could built on L2 with zkSync? I’m not sure, could somebody give me some advice about this topic?
zkSync 團隊的人回應我:
This is an amazing idea! This can totally be built, as we support batching transactions which can be used for all kinds of creative things such as paying for transaction fees in an erc-20 token. Your idea seems like a combination of that and the gitcoin grants integration. To get started, I suggest you watch the short 10 minute presentation I made on using the SDK and batching. Looking forward to your project!!
在 Check-In #2 的時候,我提交新版的專案構想,有一個欄位是問:「目前專案遇到什麼阻礙?」我的問題應該是被主辦方貼給 zkSync 的團隊,於是 zkSync 的團隊成員就用 discord 私訊我,貼了一些程式碼教我怎麼使用他們的 Javascript SDK,這突如其來的救援也幫了大忙。
除此之外,主辦方每個禮拜都會寄 email 通知一些重要的活動,賽程期間舉辦了四個 Summits 研討會,邀請世界各地有名的以太坊開發者分享議題,主辦方還有一個自己的 TV 網頁,直播所有的線上活動。這些活動都有錄影,可以在 youtube 看到過去所有的演講內容:https://www.youtube.com/c/ETHGlobal/videos
因為我的作品是使用 zkSync 的 Javascript SDK 製作的,好像也只能投稿 zkSync 作為獎金的 sponsor,不過主辦方在最後一個禮拜,也寄 email 告訴我說可以多投稿不同的 sponsors 看看,他依據我的專案構想給我一些適合的 sponsors 作為參考。
不過最後我還是只投稿了 zkSync,有點懶著再看其他 sponsors 的文件,也覺得其他 sponsors 的題目需要花比較大的功夫才能完成,一個人能力有限,就做點簡單的東西就好。
關於我的專案 — Gas Relay Service
在以太坊的世界,每一筆交易都需要額外付一筆交易費,也就是以太坊的 gas fee。
我的專案是讓「收款人」能夠幫「付款人」支付以太坊的手續費。
在黑客松之前,我就想研究「第三方支付手續費」的議題,因此我大部分時間其實都在研究一般的 meta-transactions 是怎麼實作的,有興趣的人可以看看 simple meta-transactions 的原始碼:https://github.com/chnejohnson/simple-meta-transaction
之後我才開始玩 zkSync 的 SDK,並研究怎麼在 Layer 2 實現第三方支付手續費的問題,以下就附上作品連結以及簡單的專案介紹給有興趣的人參考:https://showcase.ethglobal.co/scaling/gas-relay-service-on-zksync
The target is that token sender can choose to find another account to pay for fee. The another account can be (1) the token receiver’s account, (2) sender’s another account, (3) third party’s account.
In this project, I finished the demo, which is the (1) above, that receiver pay gas fee for the sender.
有趣的是,我在研究 meta-transactions 時學到很多智能合約的寫法,結果在最後專案上都沒用到(沒寫到合約的程式),zkSync Javascript SDK 其實很簡單,他們的文件寫得很清楚。最後 Demo 還是用 zkSync 團隊的成品修改來的…XD。
所幸在沒有懂太多技術的前提下完成了這場黑客松的專案,成功贖回了 0.01 顆以太幣。
評審與決選
整個賽程來到最後一個禮拜,主辦方安排兩天的時間進行 Judges,使用 zoom 進行線上研討會,一個人基本上是 7 分鐘,前 4 分鐘播放 Demo 簡報,後三分鐘會有評審問問題。
第一個問題是說:「Demo 中你是使用 zkSync 的錢包網頁去操作,那實際上你做得部分是什麼?」
我就回答我在他們的網頁上加了一顆按鈕,使用他們的 SDK 做出 gas relay 的功能,還有一個後端的 server 去作 relay。
第二個問題大概是問:「什麼樣的情境下會需要由 receiver 幫 sender 支付 gas fee?」
我的回答是,在一般超商購物的情境,消費者通常只支付商品的價格,不會支付額外的交易費,我認為以太坊的手續費應該屬於軟體的營運成本,由賣方支付比較適合。那如果賣方希望手續費的成本是由消費者承擔,可以直接調高商品的價格。
當然,我英文講得零零落落,希望評審有聽懂就是了…
最後一場直播就是 Finale 決選,主辦方選出十二個隊伍,公開再 Demo 一次,以及提供線上觀眾詢問問題,至此整個賽程就差不多進入尾聲。
決選後的不久,主辦方就公布了這次有獲得獎金的隊伍,幸運拿到了 zkSync 頒發的小獎~
zkSync — Matter Labs
- Zeneth — 2000 USDC
- ZeroSwap — 1500 USDC
- Kangaroo — 500 USDC
- Gas Relay Service — 500 USDC
後記
這次的參賽隊伍中,Zeneth 跟我的主題非常相似:
Zeneth — Use Flashbots to enable arbitrary meta-transactions so EOAs can enter L2s without ETH
另一個我覺得有趣的專案是 Alexandria:
Alexandria — A dApp using STARKs to verify aspects of your identity without revealing more than you should
沒想到主辦方 ETHGlobal 下個月又要再舉辦一場黑客松,有興趣的人可以看看:https://defi.ethglobal.co/ ,這次的主題是 De-Fi。
最後,只要有到 ETHGlobal 的 TV 網頁參加 Summit 研討會的直播,就能夠獲得 POAP 勳章,它就是一個酷東西~😋
POAP: Proof of Attendance Protocol
Scaling Ethereum 參賽心得 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
同時也有26部Youtube影片,追蹤數超過22萬的網紅小毛,也在其Youtube影片中提到,喜歡這個頻道的話記得按個喜歡並訂閱頻道喔! ----------------------------------------------------------------------------------------------------------- Facebook: https://b...
「rust操作」的推薦目錄:
- 關於rust操作 在 Taipei Ethereum Meetup Facebook 的最佳解答
- 關於rust操作 在 軟體開發學習資訊分享 Facebook 的精選貼文
- 關於rust操作 在 軟體開發學習資訊分享 Facebook 的最讚貼文
- 關於rust操作 在 小毛 Youtube 的最佳解答
- 關於rust操作 在 DE JuN Youtube 的最佳解答
- 關於rust操作 在 ほぅ(Housan) Youtube 的最佳解答
- 關於rust操作 在 [遊戲] RUST 新手生存指南- 看板Steam - 批踢踢實業坊 的評價
- 關於rust操作 在 用Rust写操作系统| rCore OS 教程介绍 的評價
- 關於rust操作 在 rustcc/writing-an-os-in-rust: 《使用Rust编写操作系统》 - GitHub 的評價
rust操作 在 軟體開發學習資訊分享 Facebook 的精選貼文
今日內容摘要
✅ 程式碼分析器工具、缺陷資料庫和 Clang 靜態分析器與 Clang Tidy 的檢視器擴充
✅ 人性化設計的驗證碼解決器瀏覽器擴充套件
✅ 一個容易操作和預測時間序列的 python 程式庫
✅ 基於 eBPF 用於提供並透明地保護網路連線和應用程式工作負載(如應用程式容器或 process)之間的負載平衡
✅ 功能齊全,開源,對隱私友好的 Android 電子郵件應用程式
✅ 流行的聊天和網路電話服務 Discord 的 Java 包裝器
✅ 容器的應用程式核心
✅ 一個 Rust 的資料平行處理程式庫
✅ 用 Rust 編寫可靠的非同步應用程式的 runtime
https://softnshare.com/opensource-news-167/
rust操作 在 軟體開發學習資訊分享 Facebook 的最讚貼文
今天的開源報報 ( 每週一到週五早上7:00準時發刊 )
今日內容摘要
✅ 極客的工作管理/待辦事項工具
✅ 不僅僅是改寫 Windows 檔案總管
✅ 不需要安裝任何東西就可以將你的終端機傳輸到網頁上
✅ 使用 Laravel 7 和 Vue 開發的族譜管理網站
✅ 當 Python 程式碼有變更的時候即重新載入執行
✅ 提供一個簡約的、跨平台的、高度註釋的、符合標準的 C 程式庫,用於在 xz 檔案中包含 LZMA2 封裝的壓縮資料進行解壓縮
✅ 快速獲取 JSON 的值——用於 Go 的 JSON 解析器
✅ 基於 VTK 的 3D 物件科學視覺化的 python 模組
✅ 用於操作和編輯大型 utf8 文字的 Rust 程式庫
✅ 一個以資料為優先的 Rust 原生 UI 設計工具套件
https://softnshare.com/opensource-news-147/
rust操作 在 小毛 Youtube 的最佳解答
喜歡這個頻道的話記得按個喜歡並訂閱頻道喔!
-----------------------------------------------------------------------------------------------------------
Facebook: https://bit.ly/2LQhkTT
Instagram: wl02160729
商業合作: wl02160729@gmail.com
rust操作 在 DE JuN Youtube 的最佳解答
rust操作 在 ほぅ(Housan) Youtube 的最佳解答
下から眺めるのは良いぞ。ケニー兄さんごめんなさい。
【前回】→https://youtu.be/xCyxRtAzEKg
【次回】→ちゃんと昔に撮ってます!武器の渡し方をマスター
【ゲームの内容】
私立高校で、過去に生徒10数人が立て続けに行方不明になるという事件が発生!警察の捜査も行われたが、結局事件は未解決で終わる。学校運営は続けられる。そんなある日、バスケットボールのキャプテンである「ケニー」が行方不明に!友人たちが放課後、学校内を探すことになるが、そこにとんでもないクリチャーたちが現れる!
【パンツが見える場面】
6:54から7:09まで見れます。
【キャラクター紹介】
ケニー:バスケのキャプテン。今回の操作キャラ。
シャノン:ミニスカの女の子。「ケニー」の妹。
アシュリー:へそ出し長袖女。「ケニー」の恋人。
ジョッシュ:ビデオカメラで撮影してたカメラ好き。
スタンレー:PCオタク。ピッキングがうまい。
▼チャンネル登録お願いします!
http://www.youtube.com/subscription_center?add_user=militaryboss
▼Twitter・リクエスト・質問はこちらへ!
https://twitter.com/mgsbattlefield
▼公式ブログ・PCスペック・機材などの情報を書いています。
http://housan.info
▼【GTA5】警察官になるシリーズはここから全て見ることが出来ます。
https://www.youtube.com/playlist?list=PLBcgqOO5IzwNdqDGJPaNLPXk0NiRttacV
▼【GTA5】警察官になるシリーズで人気な動画だけを見ることが出来ます。
https://www.youtube.com/playlist?list=PLBcgqOO5IzwOSAx2Cm7KL8x4anHmYhmmA
【他動画・再生リスト】
▶Cities:Skylines実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwOIdeSyC8v31O9gxnOHuMuz
▶Blues and Bullets実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwNl02pu00l6C-FUW0LjOd4A
▶GTA5実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwOSAx2Cm7KL8x4anHmYhmmA
▶BF4実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwNVurwgx6TZ3tDGpHozBtkF
▶RUST実況
https://www.youtube.com/playlist?list=PLBcgqOO5IzwParP-4FTyGT0QQCsUK8TMe
▶FarCry2実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwPeBQT3kkVx7oXR6pkH0b8L
▶マインクラフト実況の再生リスト
https://www.youtube.com/playlist?list=PLBcgqOO5IzwOC9vM0jmb-b1eSi5I-4xEV
▶その他・再生リスト
https://www.youtube.com/channel/UCw8qhq-KW8I6iqsNH0_A41w/playlists
【ハッシュタグ】これらのワードでも検索できます。
#obscure#obscure日本語#obscure実況#ほぅ
rust操作 在 用Rust写操作系统| rCore OS 教程介绍 的推薦與評價
目前常见的操作系统内核都是基于C语言的,为何要推荐Rust语言? 没错,C语言就是为写UNIX而诞生的。Dennis Ritchie和KenThompson没有期望设计一种新语言能帮助高效简洁 ... ... <看更多>
rust操作 在 rustcc/writing-an-os-in-rust: 《使用Rust编写操作系统》 - GitHub 的推薦與評價
《使用Rust编写操作系统》. Contribute to rustcc/writing-an-os-in-rust development by creating an account on GitHub. ... <看更多>
rust操作 在 [遊戲] RUST 新手生存指南- 看板Steam - 批踢踢實業坊 的推薦與評價
有圖網誌版
https://hikari-solving.blogspot.tw/2014/01/rust.html
RUST是一款在STEAM上發售的遊戲
是一款結合末日求生、輻射、喪屍、建設等要素的遊戲
官方網站:https://playrust.com/
目前仍在公開測試階段,這篇文章給沒接觸過的玩家一些指引
當然現在改版很快,文章內容可能會有些出入
許多人說這款很像末日版的創世神
但它比起創世神,物資的取得更加困難
並且更能看得出人性的險惡!
許多人在一開始遊戲的時候都不知道要做什麼
這裡有部影片供你參考
https://www.youtube.com/watch?v=SjUsHTSWJVA&list=TLmOqEmi2zbfRKHQHcX66ZOMVHUaj0fhXy
歡迎你進入RUST的世界!
首先要知道幾個RUST中的規則
1.死亡會失去你所有的道具,並且會在隨機的地點重生(除非你設置了睡袋)
2.離線後你的人物還是存在在遊戲中睡覺的,而且其他人可以挖你的角色
3.永遠假設遇到的玩家要殺死你
4.武器、道具是用合成的,但必須要取得該道具的藍圖才能學會合成方法
5.主動攻擊生物都可以輕易的幹掉沒有裝備的你!
6.進入輻射地區會開始累積輻射值,累積到了500會患得輻射病並開始扣血
7.物資集中在道路附近
開始你的第一天
你看到雜草很亂很多記得先按[F1]輸入grass.on false可以清除雜草
重生的時候會拿到三樣道具
Rock-岩石
萬能的廢物,它可以採集、攻擊、破壞東西,但超級慢
Bandage-繃帶
它不能夠回血,但它能夠治癒Bleeding(流血)狀態,可以用兩個Cloth(布料)合成得到
Torch-火炬
你可以用它來照亮四周,同時其他人也會知道你在這
接著試著熟悉操作吧!利用岩石敲敲樹木可以獲得Wood(木頭),敲敲路上的動物並練習與
他們戰鬥(但建議不要招惹熊與殭屍),就算死了也別太灰心...
按著Shift可以加速直線跑步,遇到不想面對的敵人就跑吧!
動物死掉後,使用岩石敲打屍體可以採集他們,動物們都會掉落生肉(目前都是雞胸肉,
也許以後會改吧)
若是被動物咬傷導致流血狀態,記得要使用繃帶止血,如果沒有繃帶要用動物身上得到的
布料合成
等你蒐集夠多木頭素材,用tab打開你的道具欄,找到Crafting合成按鈕,做一個Camp
Fire(營火)吧
剛產生的營火,需要用E鍵去點燃它,待在營火旁邊可以回血喔
等營火燒完了,再次使用[E]會開起營火的控制面板,這時候可以將你狩獵來的肉放上去
再次使用[E]點燃,當然要有木頭才會燒
再次燒完營火可以得到Cooked Chicken Breast(煮熟的肉)以及Charcoal(木炭)
熟肉是這款遊戲的主要糧食來源,每次可以增加500飽食度
木炭在前期沒有用,不過後期它是製作子彈的原料之一
再次強調,遊戲一開始死掉了真的沒關係...前期真的很容易死亡的
若是玩到夜幕降臨,建議找個小角落躲到白天(夜晚約20分鐘)
這時候拿火炬移動很容易成為其他玩家下手的目標......
建立據點
每次死亡都會重生在不同的地方,這樣是沒辦法累積道具的!
如果操作已經沒問題了,趕快從動物身上收集15個布料,合成一個Sleeping Bag(睡袋)
然後找個「隱密點」的地方放置,找個不會離道路或資源太遠,並且不容易被發現的地方
放吧
並且用30個木頭製作一個Wood Storage Box(木箱)放在睡袋旁邊
這就是你的暫時據點了!
至少下次重生時,可以選擇AT A CAMP重生在你的睡袋
若你認為這地點夠好,你可以選擇建立Wood Shelter(木製避難所),有了木製避難所,你
可以做一個Wooden Door(木門),木門只有設置它的人可以開關
這樣路人無法輕易拿走你的東西,但木製避難所很大,是很容易被發現的
P.S. 木門是很容易被鐵斧等武器破壞的,一開始夠隱密的地方還是比較重要
第一件工具與新武器
等到熟悉遊戲操作了,準備開始製作第一件工具吧
首先需要弄到5個Stones(石頭)
木頭可以由路邊的樹獲得,但石頭卻只能由路邊的大石塊獲得喔
等到搜集到了5個石頭、10個木頭,開始製作Stone Hatchet(石斧)吧
Stone Hatchet-石斧
攻擊力不高,但採集的速度很快
有了新工具後,採集應該變得很容易了吧,來造一隻真正的武器吧
蒐集35個木頭與5個布料製作Hunting Bow(獵弓)
Hunting Bow-獵弓
需要Arrows(箭),攻擊力很高,但需要時間拉弓
Arrows-箭
需要1個石頭、4個木頭製作,一次做出4枝箭,10枝箭為一疊
等到有了獵弓之後,大多的生物都能殺了,就算是熊也可以用獵弓風箏他
有了據點之後的日子
一開始就告訴你的:必須要取得道具的藍圖才能學會新的合成方法
知識就是力量!之後就應該以取得藍圖做為主要目標!
探索輻射區,可以拿到許多新道具,若可以的話帶回家放,若死了也要學到新設計圖
將道具收齊,按[F1]可以叫出指令視窗,輸入suicide自殺,你可以不必重生在營區,利
用空裝去輻射區裡的房子找藍色的大箱子,裡面會有隨機的道具,可能會拿到設計圖,這
時候趕快放到快捷鍵學起來吧
看到喪屍直接跑掉就好,畢竟你跑得比他們快
在輻射區遊蕩時,若看到道具箱千萬要將裡面的道具拿完,因為箱子消失後才會重生
在輻射區中可以得到許多消除輻射的道具,利用他們增加能遊蕩的時間吧
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.63.204
單人連你要破別人門那段時間都會提心吊膽
現在有2000多個社群伺服器
※ 編輯: kakahikari 來自: 61.224.63.204 (01/02 07:13)
... <看更多>