<p>You could take a look at Jeremy Rubin's TinyCoin:
<a href="https://github.com/JeremyRubin/tinycoin" rel="nofollow noreferrer">https://github.com/JeremyRubin/tinycoin</a></p>

<p>It is, exactly as the name suggests, a very small cryptocurrency written in python which is designed purely for learning purposes. Might be what you're after :)</p>

CC BY-SA 3.0
2017-09-22T19:24:29.250Z
Thanks! That's exactly what I was looking for, although the code could use more comments. TinyCoin is limited to 1000 lines of code, so it's not as tiny as NaiveChain.
ProkhorZ
CC BY-SA 3.0
2017-09-18T04:52:58.173Z
2017-09-18T04:52:58.173Z
meshcollider
<p>It's not a complete cryptocurrency, but <a href="https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54#.2973hmyoj" rel="nofollow noreferrer">NaiveChain by Lauri Hartikka</a> shows how a blockchain works in 210 lines of JavaScript code. It includes hashing of previous blocks, choosing the longest chain and communication between nodes. But there's no consensus algorithm like Proof of Work. That's probably why it's called NaiveChain. You can view and play with the source code on <a href="https://github.com/lhartikk/naivechain" rel="nofollow noreferrer">the naivechain Github repository</a>.</p>

CC BY-SA 3.0
2017-03-20T18:10:33.857Z
2017-03-21T22:49:06.630Z
2017-03-21T22:49:06.630Z
ProkhorZ
<p>Which codebase would you recommend for a novice who wants to create and run an altcoin in order to understand the technology - like a student compiling their own version of MINIX in order to understand operating systems? </p>

<p>If you want an objective criterion for difficulty, that would be how many lines of code are in the repository, not counting common libraries. Personally, I'm not interested in implementations in languages like Python that are considered easy to learn.</p>

<ul>
<li>Litecoin is a popular choice, but SegWit won't make it easier.</li>
<li>I know Cryptonote is a more complicated protocol than Bitcoin. But what about Nxt, or other cryptocurrencies developed from scratch rather than copying Bitcoin?</li>
<li>Would Ethereum be relatively comprehensible if you removed the smart contract/EVM code?</li>
<li>I know there are tools to generate your own altcoin, but that would defeat the educational purpose, wouldn't it?</li>
</ul>

<altcoin><testing><education>
Which altcoin would be the easiest to fork a cryptocurrency from for educational purposes?
ProkhorZ
# Which altcoin would be the easiest to fork a cryptocurrency from for educational purposes?

(Asked by: username_0 on 2017-03-02)

Which codebase would you recommend for a novice who wants to create and run an altcoin in order to understand the technology - like a student compiling their own version of MINIX in order to understand operating systems?

If you want an objective criterion for difficulty, that would be how many lines of code are in the repository, not counting common libraries. Personally, I'm not interested in implementations in languages like Python that are considered easy to learn.

* Litecoin is a popular choice, but SegWit won't make it easier.
* I know Cryptonote is a more complicated protocol than Bitcoin. But what about Nxt, or other cryptocurrencies developed from scratch rather than copying Bitcoin?
* Would Ethereum be relatively comprehensible if you removed the smart contract/EVM code?
* I know there are tools to generate your own altcoin, but that would defeat the educational purpose, wouldn't it?

**Tags:** altcoin, testing, education


---

## 2 answers

### Answer by username_1 on 2017-09-18. Score: 3 | Accepted answer

You could take a look at Jeremy Rubin's TinyCoin:
<https://github.com/JeremyRubin/tinycoin>

It is, exactly as the name suggests, a very small cryptocurrency written in python which is designed purely for learning purposes. Might be what you're after :)

> **Comments:**
> **username_0**: Thanks! That's exactly what I was looking for, although the code could use more comments. TinyCoin is limited to 1000 lines of code, so it's not as tiny as NaiveChain.  

---

### Answer by username_0 on 2017-03-20. Score: 1

It's not a complete cryptocurrency, but [NaiveChain by Lauri Hartikka](https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54#.2973hmyoj) shows how a blockchain works in 210 lines of JavaScript code. It includes hashing of previous blocks, choosing the longest chain and communication between nodes. But there's no consensus algorithm like Proof of Work. That's probably why it's called NaiveChain. You can view and play with the source code on [the naivechain Github repository](https://github.com/lhartikk/naivechain).


---

