An idea for freeCodeCamp's future curriculum

So from what I’ve seen so far on freeCodeCamp is prepares you for a web development job primarily through use of advanced javascript, however I’d like to see the curriculum expand into sophisticated topics such as C/C++ and Computer Science - there are already countless of free resources however I’d love to see them integrated into freeCodeCamp as it’d expand what we know as freeCodeCamp today - it would also be useful in preparing users here for whiteboard interviews where you’ll generally need to write code in C++. Thoughts?

Right now I’m learning C in CS50, which isn’t much of a jump to C++ …but even so, I’m not planning to learn it on a deep level because my focus is on JavaScript, then eventually Python.

From everything I have been able to gather about the technical interview, the language is just the tool, any one of them can be used in a whiteboard interview…which one you use depends on the job you are going for so it would stand to reason, if someone is hiring a JavaScript developer, they would expect they would use JavaScript in the interview.

To be fair, I have never done an interview before, but I would find it weird if they expect me to use C/C++ as an industry standard for whiteboard interviews instead of JavaScript. I have zero zilch no interest in working in low-level programming lol so really not looking to know it on a level where I end up having to use it on the job, or in an interview… Def would like more insight on this? Cause having to know C/C++ for a whiteboard interview to get a JS job is throwing me for a spin!

1 Like

So with C and C++, I know C++ is object oriented - are they the same language except C++ has extensions to the original language? Would you mind briefly comparing and contrasting for me? I’m still learning C and if you know a bit more I’d appreciate the advice.

Google Interviewers said in a video that they want to see C++ though they let you choose.

The whole thing is coding in C/C++ proves you have the discipline needed to be successful in an actual job. Most people like the ease of use of high level languages such as Python, Javascript, etc - so if you know if people learn a difficult low-level language they’re willing to invest themselves on projects you give them. It’s not about the language as much as showing investment. At least that’s my speculation on it.

I don’t think C++ is used widely for web development. ( I think Yahoo used to use C++… not sure today.)

If you want OO, there is Java and C#. C# (ie used by Microsoft ASP.NET) does require big .NET Framework libraries installed on the server, and is only Windows hosting.

But the new .NET Core is cross-platform, and can run on Windows, OSX, Linux.

2 Likes

It’s a low level language, for example Chromium (the open source base of Google Chrome) is written using C/C++ among a variety of other languages, though I think it’s good to learn because it’s complex/difficult to learn so it shows dedication to the craft of development.

From what I know C++ is commonly used in creation of operating system and windows applications. It also very common in game design, for instance I know Unreal Engine uses C++. Unity engine on the other hand uses C#, a entirely different language, but one also based on C, and rather similar to C++.

1 Like

I agree that teach a more strictly typed language can be of a benefit for a more CS approach.
Knowing even the basics of pointers, memory alloc, and have to explicitly type conversion can be tough, but beneficial for sure.

That said I don’t think FCC is pushing into that direction so far.
I think in the beta there will be some lessons about running time and space (Big O notations) which is already a crucial knowledge to have.

There was a camper who posted an amazing list of free courses that, once completed, will give you a strong foundation in CS.

I know also that some campers are working towards new Python challenges, perhaps all this knowledge will be integrated in there.

1 Like

I think it’d be an awesome expansion to the curriculum.

They’re not the same language, but they are so incredibly similar. C++ is more involved than C, but yeah, if you know one, you pretty much know the other… Sorry I cant get more technical than that! C++ is the first language I learned because my very first computer had no operating system… but that was over 20 years ago. I can say though that C is insanely easy for me compared to JavaScript… No idea if its cause I have some info still hanging around in the recesses of my mind, but considering its the language of choice for most CS classes, Im guessing its not all that difficult really to pick up.

Thats just Google though, and its logical they would have an interest in candidates knowing C++, because thats the primary language they use. But that def doesn’t mean every company uses / wants to see C++ For Microsoft it would be C#. At Apple, Objective-C is a big deal. For the hundreds of other possible companies to work for, what they want to see is that you know the language they primary use there.

Yeah, I don’t know…maybe I’m weird but…I learned C++ by myself from a book as a kid…for about 2 years the only things on my computer was what I developed myself. Perception is everything, but I cant wrap my head around it being a particular stressful language or something that would prove anything over any other language. Right now, C is challenging for sure…but JavScript is kicking my derriere up and down the block…:joy:

1 Like