I find this course prepared very well. There are many perspectives and this course does not concentrate on the technology only. I find this course very helpful. The level is more then just beginner.
By Adam W
Apr 20, 2019
Needlessly difficult programming assignments, because no tests or main functions were provided. We were left to guess what was expected in a painful, slow, feedback loop of submitting to the grader, waiting several minutes for it to complete, and looking at errors to guess what might have happened. If we could compile and run locally, or (GASP!) were even provided with the tests and expected outputs (e.g., like with the Stanford Machine Learning course), the pain of the programming would have been removed, allowing us to focus on learning the material, instead of blindly guessing what was being tested and/or passed in to functions.
By Ryuji I
Jan 2, 2017
Inattentive lectures. There're only a few videos that are worth watching. You need to be prepared for wasting a lot of time for programming assignments -- it's not because the assignments are tough but because of poor descriptions and out of sync with lectures. If you're interested, just download the online material (not videos) and read through it. Much better than wasting your time with the lecture videos and assignments.
By R D
Jun 3, 2020
I didnt receive certificate for this course. This is very bad and creating negattive impression on this
By HARSHAL G
May 15, 2020
By David C
Aug 9, 2017
This was a GREAT course...one of the best offered on Coursera. The lectures were spot-on, with sufficient detail and background to make everything understandable. The first programming assignment was very difficult, however. I would strongly suggest that the Coursera team break this assignment into 8-10 chunks, with small steps to accomplish along the way (leading to the final result as currently envisioned) and provide some guidance to help students understand what is needed and perhaps how to structure some of the code. I found that assignment nearly impossible to complete, but was eventually successful. Assignment #2 was almost trivial in comparison, and #3 was somewhat challenging but not nearly as daunting as the 1st assignment. Finally, I was surprised that a certificate was not offered after successful completion of the course. This was one of the longest (and most challenging, when the programming assignments are factored in) of ANY course I've taken on Coursera (and, I've taken a lot). Oh...and one more thing, I suggest adding a final quiz at the very end of the last week's video. As soon as the 3rd assignment was completed in week 7, the course thinks everything required has been accomplished and declares victory. I still need to watch about 3 hours of videos to really finish the course (which I fully intend to do!), but the course thinks I'm done. Anyway, this was a really good course and I HIGHLY RECOMMEND it to anyone interested in all things BitCoin.
By John B
Jan 11, 2017
This is just an addendum to my previous review. To make every bodies life easier, I would suggest imposing a requirement that all homework be done using Eclipse. It is a popular IDE for Java programming and certainly adequate for this course. Then, I would have the homework cast as an Eclipse Java Project for each assignment. In each raw assignment, include something like theDropBoxTest code that gives a testing framework. Personally, I would do that with a JUNIT style framework. Again, it just makes life easier. You could even bare bones testing assertions and have the students add their own stuff in which is what I eventually wound up doing. The test, themselves show how you expect the whole thing should work.
Then, we students would import the homework as a new project, do what needs to be done and just submit the code developed. The point of including the testing framework is that ambiguities or interpretational variations can much reduced in what we are being asked to do. I found that all my problems pretty much came down to thinking about how I would implement the functionality of the specification quite differently then how it needed to be done to fit into the grading framework. There is really a lot of hidden specification in the grading framework. I could not have done the assignments without the DropBox... framework. The grading process gave very little hints about what might have gone wrong, which is ok for grading, but not so useful for debugging the problem. I think this kind of project approach would reduce a fair amount of the forum questions, and, at the same time, make this course more accessible for Java nubies.
By Ajay C
Mar 25, 2019
Enjoying it. Good lectures and books. Lectures are based on 2015-2015 data on bitcoin and crypto-currencies space. This technology is changing rapidly. Would like see the course materials/lectures updated with latest data.Thank you!
By Mikhail B
Mar 11, 2018
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 ankit g
Feb 7, 2017
Loved this course! It was very thorough. However I think assignments could have been made more clearer as it was often hard to figure out what needed to be done without checking discussion forums.
By Samarth S
Jan 27, 2019
It's literally a miracle that Coursera allows me to study from perhaps the best professors on blockchain in the world.
It's not a joke how big of an opportunity this is. And although I'm not into college yet, and even though I don't even plan to opt for a STEM major, I do have a basic knowledge of programming and I'm going to try my best to make the most of this god-send gift.
Thank you sooooooo much. I love you guys :)
By Anthony G
Dec 23, 2017
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.
By chang j y
Aug 31, 2017
Excellent intro course into blockchain technology and potential applications could be built on top of it. Also, if you're technical there are programming assignments which reinforce your learning.
By Steve T
Apr 15, 2017
Course content good but labs difficult to work with as no offline unit tests were provided which made debugging painful.
By Apoorv A
Jan 16, 2018
Not efficient use of slides and real time explanation using hand
By Sebastian S
Jan 21, 2017
If possible I would rate a 4.5 out of 5 for this course. The lecturers are very good and comprehensive (compared to all other sources I found in the web) at explaining how cryptocurrencies (especially BTC) work and what the up- and downsides are. The workload for lecture videos is pretty low for each week (1-2h a week) which makes the learning targets pretty easy to achieve in the proposed time. I found the programming assignments quite difficult when beginning with each one, since one needs to read and understand (most) of several hundred lines of starter code and also needs to understand the task setting which uses a somewhat different terminology than used in the lectures. Also for assignment 1 and 3 there is no simple test code provided to at least partially test your code submission candidates. That makes it hard to debug in case of small logical errors that cannot be detected by the compiler but probably break the complete solution and result in a very low score. I had no experience in Java programming before the start of this course but with a one day crash course of Java for Python programmers I managed to complete all assignments in time (and learn at least the basic principles of Java, which is nice for itself). Each assignment is expected to take 3h by the creators of the course. The come up with a high score (not just passing) I needed to invest about 5-9 hours for each assignment which is probably but not exclusively due to the little knowledge of Java. Nevertheless I would encourage the creators of this course to use Python assignments for future courses since this would make prototyping a lot easier (due to it's interactivity) and attract more students without having real downsides (at least to my knowledge). All in all I really enjoyed this course and would like to thank all lecturers and the Princeton University for making this course accessibly free of charge for everybody. Thanks a lot!
By Andrey A
Jul 8, 2017
The course covers not just mechanics of bitcoin and some altcoins per se, but also explains philosophy behind block chain, reasons why particular design decisions were made, alternatives considered and how the system protects itself from possible attacks. The material is also interesting as an application of different crypto primitives (but their nature is not covered). Assignments are cool, but... java-based. One of them helps to understand alternative approach to reach distributed consensus which is not covered in the lectures (see ripple).
By Giorgio A
Jun 30, 2017
Sometimes assignments not so explicit. Would be a plus to be able to run some unit tests locally.
By Rodrigo C
Sep 20, 2020
Great course to get introduced into Bitcoin and Blockchain technologies at technical level. In general is mainly focused on Bitcoin but shows some of the details behind the implementation to get a strong knowledge on how a blockchain works and which are their possibilities. I have appreciated very much discussions about the impact of such technologies in society and comparison between blockchain-fashioned systems and current systems for exchanges, data-sharing, ownership and many more. Maybe some of the discussion on altcoins it is outdated today (it covers up to early 2014) but still are valuable lessons on the subject. As a negative critic, I have struggled a lot with the programming assignments. I consider that they are great to get hands on into the matter but it was quite difficult to start working on them given the assignment guidelines. I had appreciated more examples on the APIs, explain the logic behind and expected outcomes. Assignment guidelines were too cryptic. Also, if you are new programming in Java, it will make the whole task harder.
By André L d A R
Oct 26, 2019
Excellent course by the Princeton University!
I have been studying blockchain in order to better understanding its potential paradigm shifts and was somewhat discouraged at first by the course's focus on specifically Bitcoin and Cryptocurrencies, but am happy to say that it fulfilled my expectations on explaining decentralized ledgers of trust (i.e. blockchain itself) in broader terms, along with alternate use cases and implications for the future.
Very complete conceptually and technically. The assignments delve into Java code and greatly add to technically understand the intricacies of the subject, but aren't really necessary for grasping a conceptual understanding of the matter (for programmers or those who can manage their way into code, though, they're definitely worth going through!).
Congratulations to Coursera and the Princeton University for making available a course as good as this for free!
By Kedar J
Nov 7, 2017
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
Oct 8, 2020
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
Jul 3, 2017
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
Aug 7, 2017
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.