I just completed freecodecamp beta

Hey, thought someone else might be interested, here’s a showcase of all my projects: http://selhar-showcase.surge.sh/
And here’s a temporary portfolio i made: http://codepen.io/Selhar/full/pegvmw/
Here’s my github, too, you can see the whole process if you have enough patience to flip through commits: https://github.com/selhar
I’m writing two posts about FCC beta if anyone is interested, i’m not sure when they’re gonna be ready though, I’m trying make my text as direct and brief as possible, otherwise i don’t think people are likely to care too much about it. One of the posts is about some of the pitfalls from FCC and general self-learning tips, and the other is about resources that helped me during FCC beta.

Edit: I wrote a review for the beta curriculum, it’s here: https://forum.freecodecamp.com/t/freecodecamp-beta-review/116127

Edit 2: I finished the tests a while ago, removed paragraph about it.


Haiiiyo! Congratulations on finishing the curriculum. :slight_smile:

What I like:

  • Minimalist design
  • Using a consistent theme across projects where possible
  • Cupcakes


Please don’t take way my doughnuts. :frowning:

Bad, bad user. No donuts for you.

Anyhow, below are my comments on some of the pages that I sampled based on where they are placed in either your Project Showcase or the Portfolio page:

  • Project Showcase
    • Consider using title case for “Project showcase”
    • I feel that the font sizes fo the page title and the short description are relatively small; their current font sizes look like they are out-of-place footer content. My attention was immediately drawne away by the projects
    • Lowe case “I” in the description
    • The FA icon for FCC currently opens the same page in a new window—is that intended?
    • Image quality is consistent, it could be an artefact
    • Icons at the bottom are invisible and only become visible on hover
    • Consider using a placeholder image (perhaps of a snippet of code?) for the “Javascript algorithm and data structures” section—it’s not immediately clear that your intention is to refer someone to your GitHub repository there

Comments on some projects I sampled (and haven’t seen before):

  • Imperial to Metric Converter
    • The example output string may be too long and there is no word wrapping
    • An empty string returns an error TypeError: Cannot read property 'join' of null—given the heading that the project is under and that it’s placed right at the top in the personal portfolio page, it may be worthwhile fixing it
      • You may want to check this for other projects in the same group, too
  • Anonymous Textboard
    • One can create empty replies
    • Things can be deleted without a password (is that intended?)
  • Data visualisation projects
    • I have looked at those and commented where I can over the past week or so—I think you mentioned that there you intend to fix the font issue in the Tree Map so… I think that’s all from me
  • Calculator
    • The display font is missing top: 0 in the CSS and is currently overlapping
    • There is no operation chaining after pressing the equal sign—the first operator button press after pressing the equal sign will perform that operation of the number on the number itself
    • The calculator does not respect the common order of operations. For example, 100 + 100 x 100 returns 1000000
    • Underscore started appearing next to the FA icons, it seems to be the case in some other “Front end libraries” projects
  • Drumkit
    • <audio> has a delay on Safari. As far as I know that delay is impossible to get rid of without using other APIs, such as the Web Audio API
    • A second press of the same key in short sucession may be not register because the clip hasn’t finished. I haven’t dabbled with using the audio element programatically but I valuely remember that it’s possible to control the position of the clip with JavaScript

Looking forward to read the posts regarding your journey. Good luck with job hunting. :slight_smile:


Thanks a LOT! I’ll fix these errors over the weekend, before i send in applications.

Again, thanks a lot for taking the time to review the projects.


First of all, congratulations! I think you’re the first person to complete all of these projects. Even though you didn’t formally get all of the tests to pass, from doing a quick spot check, this looks like excellent work!

Did you also work through all the new coding challenges? Such as the Information Security challenges, and the advanced Node challenges?

I know you mentioned waiting until these are live on freecodecamp.com before you get the tests to pass. Well, we’re working on shipping beta as soon as possible.

Could you create a fork of your current repo and focus on getting the tests to pass on all of these? This would be extremely helpful for a number of reasons:

  1. We would like your feedback as to the relative difficulty of each project
    as you did them based on your knowledge at the time (perhaps you could rank them on a scale of 1 - 5?)
  2. We’d like to know much time it takes you to take your existing projects, which fulfill user stories - and get the test suites passing. If you can keep track of the time it takes to do this on each project, it would be really helpful.

All of this would be extremely helpful for our curriculum development team.


I read them but i didn’t do the challenges, i don’t really learn a lot through exercises.

The back-end challenges have excellent sources of information about security, but i felt like the projects didn’t really act upon them. During the API projects you learn about Mongo/mongoose, but only end up using that knowledge on the information security challenges, which ends up making them not really about information security, and more about mongodb CRUD. This was the only thing that seemed off to me, the lack of security (sessions, password management, authentication, etc…) in the security projects. Also, since it’s about learning TDD, it seemed strange to use the freecodecamp test suite, after all i was learning about how to use TDD. Creating the tests from scratch felt more intuitive.

Sure, i’ll start working on it right now. Where can i give this feedback, here or on github?

Oh, this is something i kept thinking about while i was doing the curriculum. Every single project takes less than a day to complete (complete the minimum requirements, not necessarily doing the front end/usability work). The bottleneck is always knowledge, for example, whenever i began a new curriculum the first projects could take weeks to complete, but the last 2 or 3 always took a day or two. Even the anonymous imageboard took me roughly a day to do the back end.

And while we’re at it, i have a few questions about these projects, some of them i straight out didn’t understand what the requirements were, like this one, the “relative likes” part seems a bit odd, considering the previous projects were fairly realistic in their approach. This one seems to add a feature that doesn’t really add anything to the curriculum as a whole. I think this was the only project where i felt underwhelmed, like the project wasn’t really worth the time. It’s basically API retrieval with a basic like system (and a relative like system which i couldn’t understand), but the problem is that we already did almost exactly that in the URL shortener project, except that the url shortener is much more realistic and elegant.

The imageboard project is also very strange, it asks for multiple boards, but in reality there is only one board implemented, and the end user will be unable to create multiple boards. So i don’t really get why is it supposed to be a multiple-board imageboard when you’ll only end up with one, created by the programmer.

I’ll start working on making the user stories pass and post it here when i’m finished. Thanks a lot for your work.


Your post timing couldn’t have been better. I should be done with the curriculum in the next couple of weeks as well and very encouraged going forward.


I’m really interested in both your blog posts. When you do post them, could you reply to this post?


maybe you confused me with someone else, i don’t have a blog, dude.

1 Like

congrats man! Well done…

I keep waiting for the beta to flip to prod to focus more on it but with this kind of post I might just jump right back into it…


1 Like

you better jump, i guess beta is not gonna get to production for at least 3 month ( i wish i was wrong). and that is a long time to wait.

I agree, even if it takes longer than that, what is in fact important are your projects, not the certificates.
Plus, you can contribute to nonprofits even without the certificates.

Any idea how much time will you take to make the beta version live. 1month, 2month 3month ??

Wow, massive props for being (probably?) the first one to finish them all!

Love your “cupcake landing page”, but I have one piece of feedback: it might be a good idea to preload those images at the bottom before they’re needed, otherwise users on slower connections are left waiting for them rather than seeing them as soon as the mouseover is triggered on the corresponding icon.

1 Like

Congrats on finishing all the beta projects!

I was looking at your github profile and noticed you have all your projects in one repository. Did you work on each project with this structure. How does that work?

I have all my projects in their own repository, but I kinda like how you have yours all in one place.

From the beginning i wanted to finish all projects, since some projects are really short, having everything in one big folder was easier to deal with, rather than creating a new repo for each project. There’s not a lot of logistics around it, at the beginning of each new certificate i made a boilerplate (to use in future projects) and created a new folder whenever i needed it.

Since i worked at one project at a time (instead of bouncing between them), the github aspect of it was easy to deal with, i work on a project and i commit files only to that project, so if i ever need the commit history, i have a clear understanding of what was going where. That’s basically how it worked for me.