Should I continue working on Algorithm problems as my main mode of learning (for now)?

I’m curious about possibly pursuing a career in web/software development so I started learning HTML/CSS and Javascript about 4 months ago. I’ve completed a couple HTML/CSS and Javascript courses online via Udemy and freeCodeCamp and have completed a couple of the basic Javascript web-apps (to-do list, note-taker, hangman, etc.). Out of the 3 languages, Javascript has been the most enjoyable and challenging and so I’ve devoted most of my time to learning and practicing just Javascript. Up until recently I would divide my study hours learning theory, reading documentation and also following along with video tutorials to create some basic projects. However, the past couple weeks I’ve devoted all my time to solving algorithm problems on CodeWars and I’ve found myself improving drastically thru practice. The time seems to fly by and I learn way better by doing as opposed to reading and watching.

I plan on dedicating all my study time to practicing solving these algorithm problems until I can consider myself a bit more than just a novice. Then go back and revisit HTML and CSS and practice bringing it all together. I was just wondering what people thought about this study-plan and how proficient at Javascript I need to be before I can really call myself a Front-end Developer? Are there other things I should be prioritizing right now? Feel free to share some of your study methods! I’m looking forward to some feedback!

Thanks!

1 Like

Hi @iamcharliekim,

Algorithms are crucial, as whiteboarding is all about algorithms. Most in person interviews will ask you to solve a problem on the whiteboard.

Id suggest you checkout hackerrank as well, as it seems like its the popular option for companies to look at to make sure you know your stuff.

I do like your study plan, but id focus on making projects with JavaScript/HTML/CSS, as building, designing, and functionality takes practice as well. You dont need to be advanced at JS to start projects and “putting things together” itself takes a lot of practice.

Also, many of the algorithms you solve will rarely be used in actual development. This is why I suggest that you should also emphasize development skills, not just algorithms.

Make sure you also tap in on data structures, linked lists, big O notation and such.

1 Like

appreciate the advice Young! I checked out your website…really digging your portfolio. I’m a musician myself and was also planning on building some cool music web-apps like your drum-machine and synth!

Do you have any recommendations for good CSS courses online and any other resources to practice my development skills?

Np! Im glad you like my portfolio and projects :grin:
Hope you had fun playing with them!

I think FCC teaches you great basics and touches on most concepts about CSS that you need to know.

Other than that, youll run into a lot of problems when you are building projects.For example, how do you center things on a page? How to make divs render in a row or how do you make them stack on top of each other? These are some simple questions that I had to look up because I didnt know how to do these when I started. But I learned them by running into problems and searching. Starting any projects, any level of difficulties, is the best way to learn css.

For resources to practice your development skills, there are tons of youtube videos that you can checkout for reference. Net ninja has a playlist on JavaScript DOM manipulation. Then if you want to use a framework or library like React, Vue or Angular, TraversyMedia, Academind, and Net Ninja also has great tutorials on them. It took me a while to see how html/css and Javascript fits in together, but it made web development so much more fun once I saw the bigger picture. FCC projects are a great place to start!

Once you get the hang of it, youll realize all the cool things that you can do. Then aim for harder projects, run into problems, solve them, understand the solution, repeat and rinse.