Whilst on furlough I figured I'd take part in Code Institute's "5 Day Coding Challenge". It's an introductory course designed to get people to sign up to their bootcamp, which teaches some of the foundational information about HTML, CSS, and JavaScript. I knew it wouldn't be covering anything novel for me personally, but I wanted to see how their online teaching platform worked. Overall, I was impressed by the user experience but a little let down by the content.
Every day we were delivered a new module, which consisted of 2-3 videos interspersed with practical exercises. The videos introduced key concepts and with both code examples and narration, whilst the exercises tended to mirror what we'd just watched. These were completed in repl.it, which I found to be a pretty great online code editor and environment; tests were prebuilt so you just ran your code and, once all tests were marked as passing, submitted it when ready. At the end of each module there was a short pop quiz which covered the key learning points of that day; these quizzes then made up your final pass mark for the course.
I found the videos well presented and nicely paced, but then it was all stuff I knew. Code Institute also set up a Slack channel specifically for this week's cohort, many of whom have never touched HTML or CSS before, and the variety of questions I saw in there suggests that this is a learning model which doesn't work well for some people. Others also chatted about some technical issues, but for my part it all ran very smoothly.
The initial lessons on HTML and CSS were well done and it was great to see media queries and mobile-first design stressed even at a beginner level, but the JavaScript section was poor. It was rushed on the final day and saw us manipulating the font size of some FontAwesome icons on hover. Whilst I understand the need to introduce JS with a basic example, it was a real shame to see them teaching a use case that would better be solved (and much more easily) with CSS. Worse still, it was implemented using outdated practices like getElementByID
, meaning we ended up with four separate functions to do something that more modern JS functionality could have easily done in two (or which CSS would have done in one).
They also incorrectly (and repeatedly) stated that the <i>
element is deprecated, which is simply untrue.
On a more positive note, I was extremely impressed by the video player that they used. Full transcripts (albeit ones that could use a final proofread) were provided for every video, and these could be shown on a sidebar when in fullscreen mode, with the current text highlighted in bold to follow the narration. Closed captions were also available, though I found them poorly placed and so often obscured what was happening on screen. The video player itself had all the standard options, including speed modulation which was great for pushing through some of the more tedious parts. Honestly, my biggest takeaway is that I'd like to try and replicate the video player setup they had myself 😉
Overall, I'd say it was an interesting look at how a fully online bootcamp would work, which was useful for me on a personal level. If you have absolutely zero web development knowledge, it's also a decent introduction to how websites work and the core technologies that power them, which I think would be more meaningful to a lot of people than something full text-based, like freeCodeCamp. However, if you know the basics, then there's nothing new here to learn and you may even pick up some bad habits.