I have learned some coding before (C, in an undergrad elective course) and I know html and php from years of tinkering with websites, so I found it really easy to keep up with. I even managed to complete the advanced courses, that are not part of CodeYear, and I have LOTS of badges now:
Codecademy rewards you with a virtual badge when you reach a particular goal. Completely useless, but it’s still motivational.
Although it’s meant for beginners, I noticed that it’s not always very “introductory”. My main qualm is that there is often no background given. Why am I supposed to learn how to make a function that calculates powers of four? What kind of real-world applications use this? I personally don’t mind – I just like going through the assignments and learning new things. Plus, maths doesn’t put me off. But since the intro courses are meant for everyone, I think there could be a bit more backstory.
It’s very clear that it’s made by coders – let me put it that way. It’s fun, it’s free, it’s creative, but at no point has anyone taken a big step back and asked “WHY do we want people to know all this?” and put things in context.
And that’s perhaps another good reason to sign up and take part in CodeYear. It not only teaches you how to code, but it shows you how coders think. They don’t, like biologists do, always feel the need to emphasize the practical applications. If you have computer-geeky friends, you will probably have heard them say things like “I wrote a programme that adds grocery items to an editable grocery list on my computer when I send a text message to myself starting with BUY.” and you’ll think “is that really worth it?”. It’s never worth it. It’s always just for fun.
I just made up the grocery list example. I am not the kind of person who would actually make things like this, but I do understand why people do.
Many biologists are not very computer-savvy at all, and have never taken a coding course. I recommend you do CodeYear, just so you understand coders a bit better. At some point you’re going to have to work with a bioinformatician or a web developer, and it’s easier if you understand how they think.