DEV Community

Discussion on: Javascript

Collapse
 
perrydbucs profile image
Perry Donham

This might be part of the problem: "I am a normal guy, I don't really code at home, or work on a personal project."

I see this as an indication that you aren't all that interested in programming; those who have a passion for it can't get enough of it. Take a look at how you spend your time at home...what is it that gets you excited, something that you'll work on nonstop until the early hours of the morning? That's your real passion, and following it might make you a happy guy.

Collapse
 
peters profile image
Peter Schussheim

Agree 100% with Perry.

Collapse
 
escobardrake profile image
Harvey

Hey, thank you for your advices!

I think I like programming, really, but I don't know, i'm going to the gym 4 times per week and the other days I'm doing my homework. I really feel like I don't have time for a personal project. But you're right, if I loved it that much I could make some times for it, this is why I'm going to learn React (or maybe another framework ?) and start creating something. I already have 2 ideas for a little project which can help me to increase my skills !

Collapse
 
fezvrasta profile image
Federico Zivolo

React isn't a framework 😉

Don't learn React, learn the programming principles that React promotes: functional programming, data driven UI development, libraries composition (and composition in general).

Collapse
 
marcegarba profile image
Marcelo Garbarino

I agree with Perry, about the passion. I always find something interesting to do or at least to read about.

As for JS, I've avoided it until now (59 y/o and counting... being a programmer since I was 20).

The approach I took with JS is to use it as a compilation target and focus on Typescript instead. I read so many praises about the language, so I started learning it. It's amazing.

A few more points on JS:

  • Modern JS is fricking fast, sometimes even more so than compiled C++
  • Node.js and npm (i.e. like PHP and Composer) are such a great, complete platform. I guess you won't miss a thing from Composer).
  • JS is "the new assembler". And typed arrays gives the language stellar performance, there's even a CPU emulator running Linux, right on your browser tab.
Thread Thread
 
erebos-manannan profile image
Erebos Manannán

Ok calling JavaScript "fricking fast" or "the new assembler" is simply dishonest and I can't not call you out on this.

Yes, JavaScript is a lot faster than it used to be. Yes, you can do many neat things with it. And yes it is definitely fast enough for a lot of common uses.

However many things are NOT that fast in JavaScript and the single-threaded nature prevents JavaScript from solving a lot of performance problems easily. Additionally MANY languages are much faster than JavaScript and are much more suitable for writing performance critical software.

In my experience for most common use-cases nowadays the performance limitations come from I/O, network, and other such things and the absolute performance of the language (as long as it's fast enough) does not matter much. This means you can write perfectly fine programs in JavaScript, Python, Go, as well as Java (and others) and mostly personal preference and the fit of e.g. various frameworks and libraries available for your needs matters much more than pure performance in benchmarks.

Collapse
 
danhomola profile image
Dan Homola

I would argue with this. He says he is in college, so I totally understand there is no time for personal projects (I know I had none between school, work and homework).

Collapse
 
elarcis profile image
Elarcis

I disagree with that.

With your definition of “passion”, and with the advice itself. I think it’s important that your studies and your job are something you like to do, and that do not feel like chores. Wether you make your whole life revolving around it is your choice to make, but I’m old school, I consider variety equals sanity ;)

I have many interests and friends, and only so much time. I am very glad I get to spend my working hours doing something I love, I think I’m even becoming pretty good at it, but work is work and life is… well, life. At the end of the day, I like to let my head rest and focus on other things to have variety.

As to wether I’m passionate about it, well – according to your definition – surely not; I do not have pet projects and I will never ever spend my night on anything that is not an absolute emergency (or astronomy, obviously). That does not mean I’m a sad person at work, or that I’m not all that interested in what I do. I just have varied occupations.

I’ll conclude by highlighting the fact that many companies – at least in France – avoid hiring newbies who make it seem that programming is their only life, because they have a reputation of not fitting in with the team very well (heck, we ourselves have an intern who only ever speaks about his pet programs and a single video game, and boy is it a hassle). This might or might not be related, this talk just made me think about it.

Collapse
 
kinnat profile image
Kinna

I agree with you rather than Perry. If I'm "not passionate" because I have a relationship and friends and spend time with my coworkers completely divorced from work, then so be it. But I (and those I work with) believe that code should fit into your life, not be your life. Pet projects and after-hours work are great, but they aren't the sole determinant of passion.

I will put it this way: We respect doctors for the work they do. It's highly specialized and takes a long time to learn to do well. Is a doctor less passionate about their field if they leave the hospital and go to dinner and a movie with their spouse? Or to the gym? Or should every waking moment be focused on their job, reading and doing research in their spare time?

A big reason we want doctors to have lives and get sleep is so they don't make mistakes out of fatigue or burnout. Considering developers write the code that runs healthcare systems, banks and websites that individual businesses depend on, does it not make sense to subscribe to the same beliefs with us?

We can keep developers passionate about the field by NOT demanding they be consumed by it. Plus, if all someone can ever bring to the table is coding X, they'll never be able to relate to the people they're writing the code for (and by extension the projects themselves).