I've gained a strong knowledge of Bitcoin's architecture but wish this course was updated to include the developments of the last two years. A few lectures on alt-coins would have been useful as well.
Great course, a very broad and in-depth overview of concepts surrounding cryptocurrencies and Bitcoin in particular. Would be great to have an update of course; perhaps once the ICO craze is over? (-:
by Kedar J•
This was a great course that gave me introduction to diverse topics ranging from Cryptography, Consensus in distributed systems, blockchains and bitcoin of course. It is true that the course is a bit outdated (from pre Etherium days) however, anyone who wants to have a great understanding of foundations of bitcoin blockchain will still find it useful.
The assignments are designed to test your understanding and I did have to refer to some additional material on bitcoin.org to understand some of the concepts. Also I had to learn Java to complete the assignments. For Java experts, the assignments may not be very tough to deliver.
Lastly, I would like to give a huge shoutout to the mentors. They are very responsive with the questions and the course has a good vibrant discussion forum. You are likely to find answers to all the questions you may have while taking this course.
by Paul P•
Even though the course is 5 years old, it is great at covering the inner workings of bitcoin. The programming assignments are sometimes challenging (this is not trivial material in the first place, but also the assignments are not crystal clear, some online graders run out of memory, and a decent knowledge of Java is advisable - I personally did not know Java but know C++ and the programming concepts in both languages are close enough that I could make the transition with reasonable effort). Nevertheless, I find that the assignments are really key to get a good understanding of how bitcoin works. I would strongly advise anyone considering this class to allocate the time to also do the programming assignments, even though they are optional.
by Ryan C•
I came to this course with more of an interest in blockchain than in the cryptocurrencies which are built on the blockchain technology. That being said, I found this course to be really informative. The Cryptocurrency angle was really helpful in illustrating the basic principles of blockchain. I also found myself much more interested in cryptocurrencies than I thought I was. I have recommended it to colleagues as a fun way to get your head around blockchain basics. I should mention that I really had to reach back to my CS undergrad days to remember Java syntax to completed the assignments! These were fun activities, but I would caution someone with no programming background.
by Luca C•
Great course. I appreciated the hands-on experience that the assignments are designed to deliver.
The course is an excellent introduction to cryptocurrencies and the blockchain, and provides plenty of references for further reading. High quality materials (it's a pity that the lecture slides aren't available for separate download, though).
The owners of the course went great lengths to ensure even people without a deep computer science or programming background can avail of the more generic concepts (even though some level of familiarity seems to be implicitly assumed to be able to pass the assignments, which however are optional).
I highly recommend this course.
by rain b•
I tried to learn the concept of bitcoin and browsed several other videos and articles in the Internet. Yet none of them gave me a clear idea of the bitcoin technology and infrastructure. This course give me good understanding of the bitcoin ecosystem. I highly recommend this course.
Something which could be improved are the videos. The videos show the lecturers sometimes and the slides other times. The segments showing the lecturers can be significantly reduced and showing the slides videos only. It is much easier for the students to comprehend the contents in that way. The lecturers videos can be embed as a small block in the slides videos if desired.
by ADITYA R•
I would like to thank all the professors for making this course , this course was really informative and I learned a lot in this course.
by Sven F•
Challenging, but delightful. This course helped me to understand the concepts underlying a Block Chain.
by Stebin S•
by Antranik Z•
The theoretical content of the course is interesting and it gives an excellent overview of the cryptocurrency technologies through the example of bitcoin. The course also extend to alt coins and the discuss the possible challenge blockchains can help addressing beyond the purely cryptocurrency field which is interesting.
The programming assignment could however be improved. First they required a strong knowledge of java which can exclude some students. But the real issue is the lack of satisfactory explanations and guidance that sometimes make it impossible to fully resolve the practical, or even what is expected from the student.
Sometimes you can get the best mark while your code is either incorrect or not adressing the logic fully. Sometimes you run into technical limitations on the platform (memory limitation) which despite a good algorithm doesn't allow you to submit your answer. It then forces you to spend time on improving the quality of your code to save the memory used by your program (thus requiring strong java knowledge) which is time consuming and not the purpose of this course.
Overall I would advise to do the course. I would however strongly encourage Coursera/Princeton to review the assignments so that they can best help students in the understanding of the complex notions discussed in this course.
by Jonathan C•
It is difficult to complain too much about a free course, but I expected more from a course carrying the name Princeton. The videos were generally well done and interesting, but did contain factual errors almost every week.
Unfortunately the instructors were absent from the forums after a couple replies the first week. The homework assignments were disorganized, provided components contained errors, the grading system had problems and the requirements were often unclear. The assignments require Java programming experience (not mentioned in course description). Most importantly, the assignments in no way reflected what was taught in the course videos. They were of course related, but were implementing parts of a bitcoin node, but in a simplified manner. The textbook PDF is good.
It would have been nice to have assignments working with real bitcoin (or testnet) transactions, sigs, verification, hashing, etc.
Anyhow, I'm enthusiastic about this subject matter, so I'm just happy the course exists, but don't expect a glossy polished course... it's a rough ride.
Here is another Bitcoin course that looks good: https://www.pluralsight.com/courses/bitcoin-decentralized-technology
The course covered a lot of things, but the programming assessments are very poor. In first the assessments the bonus task is basically not about blockchain, but rather about graphs. I would recommend adding to course more small coding assignments to get familiar with blockchain and bitcoin platform in a more practical way.
by David N•
Lectures were extremely good, but assignments and graders were very low quality and difficult to decipher requirements from. Professors and TAs were not active in the forums.
Not a big fan of this course. I wanted to learn about the different types of currencies and their usage, but these guys go way too deep into the code structure, even making the 1st assignment code based. Just because I am interested in cars, doesn't mean I necessarily have to know how to build one. I merely need to know some base facts, it's safety, handling, fuel economy, size etc. Their approach is way more mundane and impractical for daily needs of working with Cryptocurrencies, going way too deep into early theory and applications.
by Gabriel D A•
Difficult to understand. Teachers were too stiff and not very warm to explain. Concepts were too technical and sometimes was difficult to understand the general ideas. Assignments were not very good explained and it was difficult to understand and the errors were not very helpful.
by Ramon B•
It states that you do not have to be a programmer to do this course, but the first week exam is to code. I have no clue what it is stating so i must unenroll from this course. I thought i would learn about cryptocurrencies and how the technology will impact future business.
by Fedor S•
I think that it would be a good idea to improve the grader, release more informative assignment information (take a look at the Algorithms course for example) and lecture materials in pdf format.
by Kiran K A•
Very good content. I learnt a lot and a lot of concepts became very clear. The programming exercises really enhanced my understanding of the concepts. Suggestions for improvements : The pop quizzes that pop up at the end of each video can be more, and also can pop up at random places in a video. Programming assignment grading and suggestions where failures occurred can be better. A bit more explanation on what exactly needs to be solved via programming assignments while not giving away the solutions/answers will help students learn the content/concepts faster.
by Igor J•
Great course, I had a lot of fun solving the programming assignments. I am certain that my knowledge on how Bitcoin works is much better now. In fact, I can't believe how little I knew before this course and thought I have a good grasp. The main difference is that after learning much things in detail, I realized how many assumptions I had before. This class resolved that (trustless consensus, propagating transaction on a p2p network, building the blockchain on a distributed network, underlying cryptography details and much more)
by Duncan E•
The lectures provided an excellent overview to Bitcoin technology, its place in the world and the potential of cryptocurrency-based approaches.. The assignments were more technically challenging, requiring some knowledge of Java programming and data structures and requiring some extra thought on the algorithms for the highest marks..The assignments might be made more accessible if they were integrated more systematically with the lecture concepts but nevertheless the end result is a very impressive and useful course.
by Joel B•
Good introduction class to blockchain applied to cryptocurency with some interesting practical programming exercises. A few points to improve:
1) the level of explanation of the exercises, it takes time to understand what is asked and we sometimes need to make some hypothesis bases on low level of information; also the exercises are in JAVA, would be great to have other programming languages available
2) Really looking forward to another class on other blockchain applications such as Hyperledger
by Sergi C•
This course is a glorified Nakamoto whitepaper. It explains every nuance of it and goes beyond that. Even for scientists looking to do research on cryptocurrencies this course is a valuable reference to get some hints on where it might be worth investigating. All of these without feeling too scientific or informal.
Assignments are a little inconvenient at first, but they provide a good insight on some details which need practice to understand.
Overall, definitely highly recommended.
by Giovanni A•
This course gave me a good understanding of Bitcoin and fundamental mechanisms of main alternative cryptocurrencies. A good balance between theory and programming assignments helps to to deepen the understanding of matter. I found particularly interesting the explanation of how Bitcoin achieves decentralization. I was also surprised to find how many different applications could benefit from a decentralized infrastructure similar to the Bitcoin network.
A very enjoyable and good overall look at the idea of cryptocurrencies. This is more of a technical software course that touches on the economics and politics side of things, rather than the other way around. I definitely recommend this course to software and programming specialists, who want an in depth introduction to the algorithms, mathematics and technological ideas behind Bitcoin and cryptocurrencies in general.
Finally I completed this course, it takes more effort than I thought. Through this course, I get familiar with the basic and advance concepts of the bitcoin, blockchain and somehow the whole cryptocurrency, I learned a lots form it. Beginning at the second half of 2018, I became a programmer in blockchain field, hope the blockchain tech grow more rapidly and play a more important role in the future.
by Arthur M•
Very much enjoyed the journey of learning the Bitcoin and Cryptocurrency Technologies. The instructors break down the complex into comprehensible chunks that can be understood by a amateur like me. The assignments are challenging but manageable, good refresher of my programming skill.
Would recommend to anyone who want to have an in-depth grasp of bitcoin and cryptocurrencies.