What programming language would you recommend me?

*Yes I have been googling the answer. The problem is most people have a general advice such as how to learn programming or where to start and so on. It’s usually learn one common language, then build on top of that… and then someday you too can be clever.

What programming language would you recommend for someone without experience or knowledge that’s looking for something that he or she can learn quickly (less then a year) in order to get work, earn money and change his or hers life? So my question is market oriented. A life practical question, I really don’t care if some language is beautiful or elegant or magnificent. I get it they have their own uses. So my friend, an astrophysicist uses fortran because that’s how her community of scientists does it. But what can I learn in order to make money? :smiley:

Don’t get me wrong, I have spent 5 years working on my current career which is as challenging as software development. I am educated formally at the university and have been studying constantly since I graduated. I have soft skills and right attitudes and all that crap. I am dedicated and I work hard, inventive and entrepreneurial. I am not a superficial kind a person. I go deep into the matter. I know that development is not easy and I am not looking for shortcuts, I just need a direction. I have become feed up with with work that I am doing and I am thinking about the exit. For instance my friend went to a crash course in front end dev for 3 months and then got a job in a company, he had 0 prior knowledge. He is intelligent and hard working sure. I understand that development is hard and requires a lot of learning and all that.

In other words what is a type of job that is in demand but still well paid with a low enough entry point, room to grow and a decent salary? What is that job and what does it require?
I’m guessing I can’t just learn machine learning in one year starting from 0.
Also do I really need to learn java or C if I want to work in some weird niche thing? I get that learning programming as a general skill and not a specific language is the priority, but do I really need to know python if I will be typing ruby all day. For instance people ask how to get into traditional drawn animation and a general answer would be get really good at life drawing first. While that will work and help as a good foundation it will be a painfully slow 5+ years process. It’s a bad answer, but a safe one. These two things are only loosely related. So the idea is to learn one skill only to get its side benefit instead of teaching it directly. On the other had if you wanna be a physicist learn math because psychics is math.

C++ was my first language. Didn’t use it much but it was probably the best foundation I could imagine at the time. From there other languages were simply getting familiar with syntax or built in libraries.

As a generalization: Enterprise languages. Java and .NET are probably the most prevalent across general-purpose software developer jobs these days. A lot of the “new-stack” bleeding edge startups are looking for node.js developers and a variety of front ender experences like Angular, React, etc.

C# and Java are quite similar.

C++ dominates the embedded/tailored jobs but you really need a lot of industry-specific experience in order to be considered for those positions.

If you are market language focused I’d look at your favourite local job site, drill down to all the programmer jobs, and then do a quick tally of the languages required for those. You’ll quickly gain a pretty good understanding of the majority of your local market.

If you are young and lookng to study, go to uni and do a computer science degree. That is the basis of all your programmy knowledge. Alternatively, you’ll need to get passionate and start bashing on some stuff to learn the language and all the auxilliary shit around it. SQL for data storage, configuation file languages, good design practices, etc.

Subjectivity follows:

Software is an art form and it’s friggin’ hard, when I interview developers I am not looking for people who just do it for money and have no base: You either do it because you’ve chosen it as a career and have studied it, or you’re a passionate person who has done a bunch of mad stuff just cause you like it.

Most programmers who have a computer science background go into grunt jobs just sit down and bash out work items all day, which is fine, but you need to study.

When I am interviewing I couldn’t care less about the traditional "tell me about a time where you worked in a team" pre-meditated bullshit questions where someone can formulate an answer in front of a mirror, I ask people about rad projects, what they like to develop, open-source they have contributed, and whether they can effectively communicate with a bubble in their voice and a fire in their belly about what they are doing with themselves. Bonus points if they bring in a laptop and we can sit and go over some code.

Employees who can communicate with a bit of passion about software are more valuable than people who can rehearse a standard interview. Means you’re more likely to communiate and not be a giant arse to users or stakeholders, and more likely to think for yourself. Above all, you’re more likely to do a good job if you actually care about what you are doing.

1 Like

Probably JavaScript, C (and some C++), and Go.

You can learn shell, Python and makefiles along the way.
Witg those couple under your belt you can skip php/perl/ruby/Java/lua/rust and nobody would think less of you.

1 year is long enough to get some operational experience in those, especially if you’re learning and not pressed for delivering actual products. (It’s good to pretend, but no pressure)

1 Like

I would say if you want to find a job fast go with JavaScript and after you get the basics lookup angular and node.js those are really for at the current time after you get a job in your free time you should learn other language’s and learn new stuff. The hardest thing of being a dev or a programmer is not programming but mainly that you have to learn new stuff all the time. Because tech changes rapidly. This is if you want to find a job the fastest way if you ask me.

However I am not sure if this is the right job for you. Money should never be the drive for your job. You should find something you love doing and try to make a lot of money out of it. Also don’t overwork yourself. I am 24 and already had gone through depression because of 12-14 hour shift’s. It’s not worth it for your health.

Also make a few projects while learning and use git it’s not 100% needed but learning how to use git may help you find a job. Upload your projects to github or gitlab or to your own site. When you go to a interview be ready to show this work it will help immensely.

C and C++ would be essential imo.

The answer is: 42

But seriously you will get different answer whomever you ask. Because in some way you ask very wrong question - the one that has high probability of getting wrong answer.

More appropriate is that you decide what kind of software development you want to do, then the choice of languages gets narrowed.

Although you mention physics and math, but I read that your question is still open.

Analogy would be that you want to be professional sportsmen, and you ask what wear to buy, but you have not chosen the discipline yet.

That said,
some statistics:

this. “money” is a meaningless factor. you can make money with most languages. but not because of the language — because of how good you are at it.

If you know one language, and don’t really care about it, you’ll get nowhere. programming is something you need to be interested in, or you generally won’t do it all that well. successful programmers don’t know “a language.” they know how to program. the specific language(s) are an implementation detail.

so choose what field you’re interested in. web development? ios apps? android apps? databases? games?