October 18, 2021 • ☕️ 6 min read
日本語

e-learning became more popular than before after COVID19. We can decide when & how to learn the new skills and the most important thing is that e-learning is more affordable than entering an offline class.
As a beginner of AWS, I entered a Udemy course for just 1200Yen and got AWS Certified Solutions Architect - Associate certification easily. But before learning on Udemy, I enjoyed Udacity’s free course a lot. For example: JavaScript Design Patterns course, the contents are very well organized and thanks for that course I finally understood why frameworks like AngularJS, React were born and what they’re trying to fix.

5 months before, I received a letter from Udacity with a 75% off coupon. I’d be able to start a 4 months span Blockchain Developer course with $339 instead of the original $1596. So I said to myself, why not take it right now? And 5 months later, right now, a little bit later than expectation, but I graduated successfully. I experienced a lot, and I’d like to share my experiences to anyone who wants to take the Nanodegree-Blockchain Developer course.

My Nanodegree certificate of completion

Concern and determination before start

  1. Pricing
    • concern: Perhaps taking a online course by $1596 is not that expensive for a programmer in America, but not in Japan IMO. By the way, the courses in Udemy usually low down to $10.
    • determination: 75% coupon pushed me.
  2. Time
    • concern: It’s too busy for a businessman to squeeze some time into the study, as overtime work is very very common in Japanese culture. And I’d like to play with my children as well. Moreover, I’ll move to a start-up company in June after the course begin and will be busy catching up at the beginning.
    • determination: Hey, don’t be lazy bro, play with children and then learn on your holidays. (That’s really a bad idea)
  3. Difficulty level
    • concern: I have no experiences in Blockchain, will I graduate successfully?
    • determination: I’ve token JavaScript Design Patterns, which is difficulty level 3 (the hardest one), I didn’t see any problems. The Blockchain course only has a difficulty level 2 (medium), so I thought it would be OK (That’s a naive decision).
  4. Language
    • concern: Course is English only
    • determination: Listening is hardly a problem, besides there are automatically generated subtitles as Udacity’s class videos are sourced from Youtube.

Expectations for Nanodegree

As described in Nanodegree’s homepage:

  1. Professional teachers: Many of the teachers in Udacity are from prestigious companies
  2. Real world projects: What we need to implement in the Udacity Nanodegree will not be students’ “homework”, but projects that can be used (and are being used) in real companies.
  3. Project Reviews: We don’t just create projects. Mentors will review the projects and point out the problems.
  4. Mentors will answer your questions in Q&A forum.

expectations.png

Eventually

It’s been said that Blockchain Developer course is often finished in 4 months, but unfortunately it took me 5 months. The course was harder than I imagined. I’ll share with you the why and my impressions.

Problems after began

Time

The main problem was the lack of time.

  1. It’s not like Udemy where you just watch a video, you have to read the recommended English articles to understand the course. It took me a lot longer than I expected. The first two projects are not complicated so it was ok. But as the course progressed, there was more and more materials that you have to research and read.

  2. It also took time to study the materials to understand the content of the course.

For example: The ZK-SNARKs that I was using in my final project was briefly introduced in a 5-minute video in Lesson 4 of the Blockchain Architecture section, but if I was asked to use this technic to complete my project, how would you know what to do without searching & reading extra articles?

  1. I moved to a new job after the course began 1 month. I’m very interested in Blockchain, but not studying 24/7. When I took some time off on weekends, I was then be late and felt a lot of pressure. At last, I ended up doing the final two projects at my own pace, which caused the delay of my graduation.

Difficulty

The JavaScript part is not difficult at all, but Solidity is absolutely the main part of the course.

  • Mastering a new language in such a short time feels like a quandary.
  • The fatal problem is that the version of Solidity used in the examples and skeleton source code in the course is too old. Most of the last updates are in 2018. There were a lot of breaking changes in the new versions, so I had to go through the documents and found the way to version up all the source code.
  • The last two projects are not explained very clearly IMO. Perhaps if you don’t use the latest version of Solidity, it will be a bit easier, but since the version of Solidity is really vital, as Solidity evolved a lot after experienced some fatal bugs which lead to the loss of vast sums of money.

In summary, I found this course was more difficult than JavaScript Design Patterns, which was level 3 for me. It may be different for different people.

Nanodegree expectations and reality

Almost as good as expected.

  1. Professional teachers

The quality of the videos is certainly high. 2. Real world projects
The more you study, the more you go close to the real world projects. Especially the last project was difficult but really interesting! 3. Project Reviews
The quality of reviews depend on the reviewer, but I think most of them are well done. However, the reviews were not as strict as in a tech company. (Although, if they are too strict, people who are not used to the review culture might give up) 4. Mentors will answer your questions in Q&A forum
This was the only disappoint point. Most of the time, mentors only answered the student’s question once and additional questions were ignored almost. The community (students) were not active as well, so the Q&A forum was not that useful for solving all the problems, you had to Google at last.

Summary

Prons

  1. Quality of course is high
  2. Completing a number of projects is required but it’s worth finishing them
  3. Reviews of every projects are really helpful

Cons

  1. The version of source code is actually too old

If Udacity’s too busy to maintain the project, it’ll be better to make it open source and ask for help from community including the graduated students. 2. The Q&A forum is not popular
At least the Blockchain Developer course does! 3. Blockchain is so deep that e-learning may not be enough 4. To be honest, there are a lot of broken links and typos in the course.
At first I tried to point out the mistakes, but when I noticed how old the projects were and then I gave up.

Lessons learned

  1. Make sure you have enough time to study!
  2. Be prepared to read a lot of English articles for understanding!
  3. The main language used will not be JavaScript, but Solidity for writing smart contracts!

Finish

The course takes an average of 4 months to complete, but it took me 5 months. If you’re a parent with kids and you want to do this course, you’d better prepare to take the same amount of time to graduate successfully. It’s not an easy course, but I enjoyed it especially after I completed my final project.

The recommendation depends on the people, but it absolutely deserves an 8 out of 10 if you are interested in Blockchain and a discount is applied. You need to study hard, though.


ThunderMiracle

Blog part of ThunderMiracle.com