The Student Room Group

Which programming languages should I learn

Hello, I will be starting university this year and I am hoping to do Computer Science. I wanted to know what programming languages I should be learning. My chosen university isn't as popular or isn't that 'good' of a university but I really like it because of its course structure and modules (I'm not too good at maths 😁). Because of this I am quite concerned about job prospects after university just because of the university that I will be attending.

The course itself includes C#.NET, JavaScript and I think PHP ( also including HTML and CSS) but when I look through common CS related jobs, many look for experience in C++ or Java. I have already started learning Python just because everyone was saying it's a good beginner language but there doesn't seem to be much job opportunities to do with Python.

Granted that things may change in the future and that I haven't looked at every single company and jobs out there, would learning C++ or Java(maybe both?) be more beneficial than learning Python or the programming languages my university will teach me?

p.s - I would like to be a software engineer or more of a front-end developer after graduating.
(edited 3 years ago)
I think your course is preparing you more for Web development as well as software eng. So if that's what you like then you can just search Web development jobs online and see what other stuff they want.

There should be a lot of jobs for python but a lot will be more machine learning / data science ones. You can make websites with python using django, but i dont think that's as popular as javascript (search django jobs to check)

You should learn at least one object orientated programming language for now (java, python, C#...). And learn that in enough detail, then if you need to learn another one later it will be really easy coz the concepts are the same in all OOP programming languages.
The concepts you should know by the end are: creating objects, inheritance, polymorphism...

Technically, some ppl say python is a beginner language, but if you're going to learn it up to object orientated level then it doesn't really matter coz difficulty is the same.

Look into what interests you when picking, for example, if you wanna make android apps then java is a good choice, if you go down a machine learning path then maybe python. But just learn one for now and make some projects with it, whether it be apps, websites, software or games(using something like unity).

If you're really interested in Web dev then maybe learn some javascript libraries. I think node.js and react.js are popular (pay is usually decent) , but just search up some jobs and see what ppl want right now.

Once you've learnt an OOP language learn more about data structures maybe.

Also do some programming challenges, using a website like hackerrank that has challenges from easy level to advanced and can test you on data structures and key algorthims as well (which is good for software eng)
(edited 3 years ago)
Original post by gyuigygh
I think your course is preparing you more for Web development as well as software eng. So if that's what you like then you can just search Web development jobs online and see what other stuff they want.

There should be a lot of jobs for python but a lot will be more machine learning / data science ones. You can make websites with python using django, but i dont think that's as popular as javascript (search django jobs to check)

You should learn at least one object orientated programming language for now (java, python, C#...). And learn that in enough detail, then if you need to learn another one later it will be really easy coz the concepts are the same in all OOP programming languages.
The concepts you should know by the end are: creating objects, inheritance, polymorphism...

Technically, some ppl say python is a beginner language, but if you're going to learn it up to object orientated level then it doesn't really matter coz difficulty is the same.

Look into what interests you when picking, for example, if you wanna make android apps then java is a good choice, if you go down a machine learning path then maybe python. But just learn one for now and make some projects with it, whether it be apps, websites, software or games(using something like unity).

If you're really interested in Web dev then maybe learn some javascript libraries. I think node.js and react.js are popular (pay is usually decent) , but just search up some jobs and see what ppl want right now.

Once you've learnt an OOP language learn more about data structures maybe.

Also do some programming challenges, using a website like hackerrank that has challenges from easy level to advanced and can test you on data structures and key algorthims as well (which is good for software eng)

Thank you very much! 😀👍
Original post by gyuigygh
I think your course is preparing you more for Web development as well as software eng. So if that's what you like then you can just search Web development jobs online and see what other stuff they want.

There should be a lot of jobs for python but a lot will be more machine learning / data science ones. You can make websites with python using django, but i dont think that's as popular as javascript (search django jobs to check)

You should learn at least one object orientated programming language for now (java, python, C#...). And learn that in enough detail, then if you need to learn another one later it will be really easy coz the concepts are the same in all OOP programming languages.
The concepts you should know by the end are: creating objects, inheritance, polymorphism...

Technically, some ppl say python is a beginner language, but if you're going to learn it up to object orientated level then it doesn't really matter coz difficulty is the same.

Look into what interests you when picking, for example, if you wanna make android apps then java is a good choice, if you go down a machine learning path then maybe python. But just learn one for now and make some projects with it, whether it be apps, websites, software or games(using something like unity).

If you're really interested in Web dev then maybe learn some javascript libraries. I think node.js and react.js are popular (pay is usually decent) , but just search up some jobs and see what ppl want right now.

Once you've learnt an OOP language learn more about data structures maybe.

Also do some programming challenges, using a website like hackerrank that has challenges from easy level to advanced and can test you on data structures and key algorthims as well (which is good for software eng)

Hello again, just wanted to ask about tkinter in python. Is it worth learning because I've seen others using PySQL to make GUI's or just going to Django
Original post by ChooseWisely
Hello again, just wanted to ask about tkinter in python. Is it worth learning because I've seen others using PySQL to make GUI's or just going to Django

I havent used pySQL.
I've used tkinter a bit if I need to quickly make a gui for python.
But it's only for desktop applications, whereas django seems to be only Web.
So it's up to you, I'm not really sure, it depends on your use case. But learning to use tkinter should be fairly quick, just look up some examples of what you need and make it.
Original post by gyuigygh
I havent used pySQL.
I've used tkinter a bit if I need to quickly make a gui for python.
But it's only for desktop applications, whereas django seems to be only Web.
So it's up to you, I'm not really sure, it depends on your use case. But learning to use tkinter should be fairly quick, just look up some examples of what you need and make it.

Thanks again👍
Considering you'd like to become a software/web developer afterwards here are my personal recommendations.

A lot of people will advise languages like Python as a starting point. If I'm honest, while syntactically Python is nice, I wouldn't say it gives beginners in programming a solid foundation to stand on. My advice would be to start with Java or C# where you can obtain good (and wider) knowledge on programming concepts (variables, data structures etc..) but also OOP concepts as well. Beyond that you just get to grips with what is actually happening in your code, something that is mostly masked from you in Python (not a bad thing, but when you're learning, not great either). On a side note, C# and Visual Studio can quickly get you up to speed and developing Window based apps and GUI.

For the web side of things. HTML, CSS, JavaScript and SQL are pretty much essential. As gyuigygh stated, after you ground yourself with JavaScript it is very much worth learning some JS frameworks and libraries. Node.js, React, Angular or Vue.js to name a few. The company that I work for use Angular/Vue. For starting out with that though, I'd advise Vue.js just to get you familiar with frameworks. Vue.js has very good documentation and is much easier to get started with than that of Angular.

Hope this helps.

Latest

Trending

Trending