Hello to all who reads this. Lately, I’ve been picking up some freelance jobs that deal with Javascript exclusively and a few full-stack but I find that my interests are heavy with Javascript over learning PHP and MYSQL etc. I know enough with the others to tread water but I just feel hungry when I work with Javascript and everything that comes with it. I’m not a professional and I’m self-taught so I just want opinions on if I should continue learning everything else under web development or just turn my attention to the one I enjoy the most and seem to grasp the most. Thanks for opinions in advance
Working on a JS stack is a perfectly acceptable thing to do, especially in the beginning. I always think it’s good to get really good at one stack and its common supporting libraries. After that you can keep growing and learn other things.
So JS on the frontend. Do you have a modern view library for that, like React, Angular, or Vue? And for backend in node, I assume you’re also doing Express. There are a lot of other supporting libraries like Passport, etc. You didn’t mention a DB except do say that you don’t want to learn SQL. So are you doing a noSQL like mongo/mongoose? I think you need a DB in there. Actually, I’d recommend learning an SQL and a noSQL.
So, yeah, that would be a respectable stack. It might be hard to find a job that fits that exactly, but if you know one stack well, they often will assume you can pick up what you need as long has you have most of what they need. So, yeah, I’d say that’s a good place to start.
if you plan on building anything that needs to store information your going to have to learn SQL and/or MongoDB
you can probably get away with only knowing nodejs but learning other languages can help you better understand key programming concepts
dont be afraid to try building something with a new language once in a while even if you dont think youll need it
I’ve been learning PHP and SQL and i’m not opposed to learning it or anything I just noticed I work harder at coding when JavaScript is involved. I’m currently learning react and how to merge it with firebase but the thing for me is I just don’t want to hinder me just because I love Javascript and everything that comes with it. I’ve been doing some PHP and SQL freelance jobs this weekend and it’s been a struggle in comparison to JavaScript so I guess in terms of employment and for more freelance chances I want to be as well rounded as possible. And thank you for your comment I def understand the bulk of what you’re saying. I’m trying to move from hobbist to professional coder the best I can
I appreciate the comment bro I understand what you and Kevin are saying. I don’t mean to come across like i’m going to completely abandon PHP and SQL and learning those things but if I should be highly efficient at Javascript and can tread water in everything else around full stack . I’ll admit this is a casual hobby slowly turning into something that I really want to do so I don’t have the best preparation habits compared to people who have taken this serious. I’m trying to make a real jump in my learning curve in 2020.
Knowing PHP will be handy for porting PHP apps to nodejs, which is a nice marketable skill. If you want to write back-end code, you’re not going to be able to get away from SQL.
There is no getting away from the fact JavaScript is the language of the web. Also knowing how to program in a language provides you valuable skills that can be easily transferred to other languages.
As such, focusing on it can be very beneficial rather than hindering. Websites/web-apps are getting more complicated every day, and all of that complexity comes primarily from JavaScript. Being a good JS developer will become more important as the web grows.
I’d focus on 4 things if your goal is to be a “JS programmer”
- Getting better at what you want to focus on (programming with JS)
- Learn Nodejs, and building back-ends with it.
- Learn a database technology (mongo is a good start)
- Learn TypeScript once you get comfortable with JS
Getting better at what you want to focus on (programming with JS)
I personally think of myself as a programmer first, web developer second. As such I focused on learning programming from a few languages to get a better perspective. Focusing on stuff like design patterns and the usual Computer Science stuff makes you a better programming regardless of the language. Picking up another language will give you a different view of the same concepts between them. Knowing all of JavaScript’s syntax, and quirks is important, but going beyond that is where CS concepts come into play.
Learn Nodejs, and building back-ends with it.
Nodejs is a JS run time and is used to run JS code on the back-end, powering full-stack JS apps. Being able to use 1 language across the entire stack is fantastic, permitting you are good with that 1 language. Any team that focuses on NodeJs will want good JS programmers. NodeJs is all JavaScript for better or worse.
Learn a database technology (mongo is a good start)
Like any back-end technology, knowing how to manage, and work with databases goes hand and hand. If your working on the back-end, working with a database is almost inevitable. Other stuff like “ops” might come into play, where you may need to manage some infrastructure or write some automation scrips also might come into play. All of this is just leveraging JS outside of the traditional browser run-time, so getting familiar will make your JS skills better and more valuable.
Learn TypeScript once you get comfortable with JS
If your going to focus on being a JS programmer you will need to consider scaling your code. JS being a dynamically typed language scales terribly when it comes to larger teams and projects. Simply put, the language flexibility turns in to an ever growing foot-gun that can destroy projects if your not careful. TypeScript is a super-set of JS, so any valid JS code is valid TS code, except TS provides strict typing, which provides a better environment to scale larger projects, as the language will enforce itself.
I primarily recommend this because any team that can have dedicated JS people, will usually be large enough to consider scaling their project beyond a few developers. As such TS is almost a no brainier on any significantly large web project, permitting those know how to use TS properly.
Beyond what I said above, I’d still work with front-end stuff (html/css) but consider it secondary knowledge. Focusing on the best programmer you can be will always be a good path to take. Its always nice to make fun and interesting UI’s, but back-ends power the world, and programming can be carried over between different languages easily, opening up more doors than just focusing on front-end technologies.
Happy coding