Now blogging with Ghost

Yes, I am just a casual blogger. I published my first article on Medium in July 2019 and it was about Ethereum Foundation’s Devcon V Scholars Program. After that, I continue to write when nice ideas pop up, like once a few months.

I chose Medium to start with because it seems to be the easiest platform for blogging beginners. But after I published my second article, I started to want a blog that looks more personalized. I understand that Medium is a great tool especially about gaining new readers naturally, but I still have this urge to create my…


Hacktoberfest 2020 wrapped up last weekend. It’s been the first one we’ve done here at Jina (c’mon, we were only born this year), but it certainly won’t be our last!

Hacktoberfest isn’t just about the glamor, prestige and adoration of the masses that comes with contributing to open source. You can also get a T-shirt for your contributions, or have a tree planted in your name. We’re hoping quite a few of our readers managed to hit their Hacktoberfest target and can show off their T-shirt (or sapling) with pride. 👕 🌳

Contribute to Hacktoberfest and get a tree (note…

Jina AI’s First Hackathon Experience

Since Jina was introduced to the public in April 2020, we’ve made a lot of progress on product development. Now, in October 2020, our v0.7.0 release is on the horizon.

But apart from all of this, what’s definitely worth a mention is we also kicked off our first hackathon, Jina X, in September, just 5 months after our project launch.

Let me walk you through it! 💛

Jina 🔍 Community

Jina AI is an open source company with a fairly young product. Right from the get go, one of our goals has been to engage closely with the developer community in this early…

Jina Events

We ❤ open source. Contribute to Jina!

The 2020 Hacktoberfest is starting and this year Jina is joining in!

About Hacktoberfest

Hacktoberfest is a month-long (Oct 1 to Oct 31) event, celebrating open source software and open communities. Participants can get a Hacktoberfest T-shirt if they successfully make 4 valid pull requests (Updated: PRs have to be merged, approved by a maintainer OR labelled as hacktoberfest-accepted) to any Github hosted open source projects that have also opted in with putting #hacktoberfest in their topics. Most importantly, it’s free and open for everyone. All you need to attend is your GitHub account and then register at the official website.

About Jina


Jina Events

Coming soon on Oct 1, 2020

Every day at Jina AI, we are working our best to live by open source principles, to continuously improve the user experience of Jina, and to introduce it to ever more developers.

On Oct 1, 2020 our Open Source Evangelist, Alex Cureton-Griffiths, will give a talk about how Jina works, demos, examples use cases, and how you, as developers, can use it for your own projects. In addition, our AI Engineer, Joan Fontanals Martínez, will join the talk for further technical discussions.

Jina is an open-source framework that provides an easier way to build neural search on the cloud. Whether…

Not a software developer #1

How much time do you need to build a personal website with a blog module?

I’ve been having this idea in mind for several weeks — building my personal website.

But having another full-time job, you get to plan your time well before you kick-off a side project. Otherwise you might feel like you would never see the end of it.

Now, the question is how? From completely drag & drop solutions to hand-craft the HTML pages line by line, you will have to pick a way.

After some research, I concluded my expectation as below:

  • No drag & drop

A Setup Guide

The article explains how to install and set up Manjaro KDE on your Apple MacBook Pro (Early 2015) Retina 13". If you are a Linux newbie and want to try Manjaro too, this guide is for you!

My First Linux “Work”


First of all, it’s recommended to use the stable version from Manjaro. You can download the image file at its official website, and can create a bootable USB stick from that. If you never did this before, there is a step by step guide here on the website. It is pretty understandable.

After you create the bootable USB and connect it to your…

是的,我可以去日本參加Devcon5了! 🚀

我之前從沒參加過開發者大會,所以這篇文章不會著墨太多在開發者大會的內容,而是想簡單介紹Ethereum開發者大會所提供的獎學金計畫(Scholars Program)。

英文版本:Devcon5 Scholars Program — The Beginning


身為一個重度網路使用者,每天早上還沒清醒就是在床上滑個五分鐘的手機,看看天氣,看看郵件訊息。那天早上起床,看到一封新的郵件,開頭是[Devcon 5],腦袋頓時清醒:

Ethereum Yellow Paper Reading Note #1





比特幣白皮書問世的五年之後,乙太坊(Ethereum)的創造者 Vitalik Buterin(很多人又稱他為V神)在2013年11月時首次發表了乙太坊白皮書(Ethereum White Paper),全名「乙太坊:新一代的智慧合約與去中心化應用平台」(Ethereum: A Next-Generation Smart Contract and Decentralized Application Platform)。




乙太坊黃皮書(Ethereum Yellow Paper)的全名是「乙太坊:一個安全的、去中心化的通用交易帳本」(Ethereum: A Secure Decentralized Generalized Transaction Ledger)。這個論文的作者是Dr. Gavin Wood,是乙太坊的共同創辦者,也是後來的Parity Technologies的創辦者。



創造乙太坊這個平台最重要的目的之一是想要促成使用者之間的交易,尤其針對因為在地理、政治等因素之下使用者之間無法彼此信任的前提。(Ethereum Yellow Paper Byzantium Verion)

為了達成這個目的,乙太坊項目的宗旨是建立一個通用化的科技,這個科技能夠提供軟體開發者一個計算框架,稱作可信任的物件消息傳遞計算框架(a trustful object messaging compute framwork)。在此框架之下,開發者可使用一種新的計算樣式來開發各種應用軟體。




我們可以將乙太坊的整體看作為一個基於交易的狀態機(a transaction-based state machine)。每當交易產生,然後被執行,狀態(state)就被改變。這裡的交易不一定要是金錢的轉移,它可以是任何能被電腦所有效地代表的事物






  • 乙太幣(Ether, ETH)
  • 狀態(world state or state)
  • 交易(transaction)
  • 區塊(block)
  • 燃料(gas)
  • 交易執行(transaction execution)
  • 合約建立(contract creation)
  • 虛擬狀態機(Ethereum Virtual Machine, EVM)
  • 挖礦(mining)
  • 工作證明(proof-of-work)
  • 延展性(scalability)





然而,在文中也有特別提及這樣的典型區塊鍊的一個很大的限制 — 延展性(scalability)。因此若要讓乙太坊生態圈能永續的發展,延展性勢必成為乙太坊技術上一個很重要的挑戰與課題。

值得注意的是,目前的乙太坊區塊鍊(Ethereum 1.0)還不是最終版本,致力於解決延展性以及能源消耗問題的Ethereum 2.0已經在測試階段了。



乙太坊黃皮書(Ethereum Yellow Paper, Gavin Wood)

乙太坊黃皮書中文版(Ethereum Yellow Paper Chinese Version 譯者:崔广斌、高天露、riversyang)

乙太坊黃皮書重寫版(Beigepaper: An Ethereum Technical Specification, Micah Dameron)




2008年,中本聰(Satoshi Nakamoto)在網路上發表了一篇名為「比特幣:一種點對點的電子現金交易系統」的論文,英文原文為 Bitcoin: A Peer-to-Peer Electronic Cash System,現在也被稱為「比特幣白皮書」。


在中本聰的論文中,他提出了一種可以實現點對點(P2P, peer-to-peer)交易的電子現金交易系統「比特幣」(Bitcoin)。換句話說,這是一種不需要第三方金融機構作為中間人的交易系統。



在傳統的金融交易體系中,進行交易時我們都需要可信任的銀行作為第三方金融機構,以防止金融詐騙。同樣的狀況也適用於現今的電子貨幣,由於受款人無法有效驗證付款人是否重複支付這個電子貨幣,為了避免這種雙重支付(double spending problem)的問題,我們即需要一個中介機構來擔任可信任的中間人。

這樣的運行模式,也被稱為是一種以信任為基礎的交易模式(trust-based model)。





  1. 比特幣是加密數位貨幣:使用雜湊演算法(hash)和默克爾樹(merkle tree)方式加密
  2. 可短時間內實現點對點(P2P)交易:不須透過銀行作為中間人來驗證交易
  3. 去中心化控制:使用分散式伺服器來確保交易系統難以被攻擊者掌控
  4. 低廉的交易成本:無中介機構處理費,實現大量小額交易
  5. 交易的不可逆性:惡意攻擊者很難竄改或是偽造貨幣紀錄
  6. 隱私保護:比特幣的結構設計能讓擁有或是交易貨幣的人保持匿名




在比特幣的點對點交易當中,因為沒有了可信的第三方機構來驗證,需要其他的機制來避免重複付款以保障收款人。在比特幣的交易機制中,每一筆交易都會被公開宣告(publicly announced),以此來判定交易的時間順序。


在比特幣的資料結構下,多筆交易(item)會形成一個區塊(block)。首先區塊會被雜湊演算法(hash,又譯為哈西)加密處理,然後時間戳記伺服器(timestamp server)會在此雜湊(hash)中加上時間戳記並將他公開廣播到網路上。



Developer Relations @ Jina AI | From Taiwan | Living in Germany | Passionate for Blockchain & Machine Learning |

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store