Top to bottom or specialised start?

Hi All,

Hope everyone is having a great time learning. I had a question I was hoping someone could shed some light on.

I’m starting my coding journey in the next couple of weeks, leaving behind a 3D Art and UI/UX career. My preference is definitely software development, dream job would be something with the ESA using Python. I’m not at all a fan of web development anymore, although I’m very familiar with it front and back end and studied HTML/CSS pretty extensively already at Uni.

I’ve got plenty of time allocated for this endeavor, up to two years if need be.

With that background to help give some context, my question is this;

Should I do the fCC curriculum from top to bottom? Below image is the reason I ask. I’m happy to step through absolutely everything top to bottom methodically. I want to excel and be able to offer a highly polished, professional and useful value proposition to either an employer or my own studio, but I want to make sure I’m doing this as intended. I don’t want to miss anything important.

Many thanks folks and I’ll see you out in the study trenches shortly.

Its recommended to go from “top to bottom” because the skills learned “at the top” carry down to the bottom to a point. Specifically the “Scientific Computer with Python” section more “branches off” into another data-science direction, where-as everything before that was more focused on web development.

So technically you could start there to focus on data-science with Python, or you could start at the top and work your way down to that cert to focus on full stack web development with the MERN stack. With the goal being that you learn helpful and useful concepts as early in the process as possible. Knowing what HTML is, and how the front-end is setup is useful even if you don’t progress any further.

Its also worth mentioning FreeCodeCamp isn’t a one stop shop where you learn everything. It focuses on some core technologies, a few fundamentals and focuses on at least showing you what is available. But there are holes, stuff like React Hooks (which didn’t exist at the time of the release of the curriculum), to changes in supporting software ( changed how environment varables work for example) to not even going into some “necessary” topics, like setting up your own environment locally.

Its highly recommended you use external sources while going through freeCodeCamp, using it more as a guide rather than the guide.

I’d at least brush up with web-development stuff, as thing change fast, and even if your familiar with, its hard to deny web development jobs are one of the most common areas of job growth.

Just remember, there are plenty of other paths. Looking directly into what ESA jobs are looking for, could lead into another path of different kind of work so you can more “build toward your dream job”, rather than do FCC and try to make a “jump” from what it teaches, to whatever ESA jobs are looking for.

Regardless of what you do, good luck, keep building, keep learning :+1:

Doesn’t sound like you would need to go top to bottom.

I think you might as well just jump to the “Scientific Computing with Python” and “Data Analysis with Python” part of the curriculum.

Many thanks for the comprehensive reply Brad, I appreciate the guidance right now. It’s been a confusing time, charting this course away from art and design. I understand what you’re saying, makes a lot of sense. So essentially a brush-up and good understanding of the front end and various concepts is needed, but you don’t think I need to go top to bottom. I’m pretty relieved to hear that.

So you’re also saying that fCC isn’t a one-stop shop and I need to get broader knowledge. I’ve subscribed to codecademy as well now (plus several YouTube channels and will take the PCEP cert), and I am looking at requisite frameworks I’ll need to implement for each language and field. I’m also looking at data structures and algorithms and supplementary training in other CS concepts on coursera to try to round out the training and Cory Althoffs’ the self-taught programmer. Plus GIT and version control training as well.

Looking at focussing on paths more, as you’ve suggested, I’m watching jobs at ESA as they drop and reading through general and specific requirements now. Absolute wealth of information there from technical and behavioral competencies etc. brilliantly useful working backwards like that. Seems I might need to add MATLAB amongst a bunch of other frameworks and skills depending on which way I go.

If you think I’ve missed any broad strokes, good books or subjects I need to focus on, do let me know, and I’ll add them to the training regimen.

Again, let me stress how much I appreciate you taking the time out to help mate.

Hi @lasjorg many thanks for the reply. It sounds like you agree I should jump to the relevant Python sections as well and carry on also. I appreciate the advice and confirmation mate.

Seems I’ll do just that then. I’m hoping it’s not going to be too difficult to add more syntactically complex, lower level OOP languages later after I’ve learned Python. From what I’ve heard working with devs in the past, once you understand how to learn and develop with one, you understand how to learn new ones easier? I’m hoping so.

Again many thanks’ fella.


Hoping to be as helpful to others as I can, I found this MIT Open Course Ware site with free, and seemingly comprehensive at first glance, high quality courses and was keen to share.

This is going to form the guide or backbone of my studies supplementing everything I do here and on codecdemy (foundational study). Bringing it all together, hopefully. There is even a MATLAB course.

Colour me excited. :slight_smile:

1 Like

Hi @samhakem !

MIT opencoursweare is a great resource.

You might look into their intro to computer science course.

1 Like

Hi @jwilkins.oboe

Many thanks for the link, certainly serendipitous timing considering my previous post!

Cheers for the info. :slight_smile:

Something else I found that people might find particularly useful, I think, is the below link. I’m not knowledgable enough to fully vet the information yet, but from what I can tell based on my research, this appears to be a brilliant find to help me close up any remaining gaps in my training.

Maybe you can help verify its usefulness? Essentially, I’m trying hard to put together a lean, highly relevant self-taught CS syllabus with the languages and focusses I’ve decided to pursue that also give me a rounded CS foundational understanding.

Hope it helps someone else out there too.

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.