The Student Room Group

What programming language to learn

Hi, I am currently in year 11 and I would like to work in the robotics industry and build/design robots. Which degree would be better for this? Mech Eng or Computer Science.
And if I would study computer science with specialising in A.I. :biggrin: , to make sure I would like computer science, I would like to start learning programming and coding to see if I would really enjoy it.:unsure:
Can someone please suggest what would be the most ideal programming language to learn for a beginner, that would also be helpful for my application and preferred by universities.
Thank You very much in advance.
(edited 8 years ago)

Scroll to see replies

C# or Java

edit: I'm not actually studying computer science but my friend's just started it at uni and she found these two easiest to pick up when she was in Year 12 trying to decide if it was the right course for her. She tried C++ to begin with but she found C# much easier to learn the basics so did that instead and then progressed to C and C++ because apparently that gives you a good foundation for learning other languages. :smile:
(edited 8 years ago)
Reply 2
Original post by yasaminO_o
C# or Java

edit: I'm not actually studying computer science but my friend's just started it at uni and she found these two easiest to pick up when she was in Year 12 trying to decide if it was the right course for her. She tried C++ to begin with but she found C# much easier so did that instead :smile:

Thank you for your help. :smile:
Is it that these are most commonly taught languages in the first year of your CS degree that would make these more preferable to admission tutors or are they easier to understand and would give a firm understanding of the topic?
Original post by Darshan98
Thank you for your help. :smile:
Is it that these are most commonly taught languages in the first year of your CS degree that would make these more preferable to admission tutors?


I have absolutely no clue aha, but she said C and C++ gave her a stronger foundation than C# because it involves memory management (I think that's what it's called) but if you're having difficulty, C# will help with the basics first. Tbh if I were an admissions tutor I'd be impressed if you learned any programming language, but I guess it would make sense to learn one that's widely used or one that allows you to pick up a lot of techniques and skills. Just to reiterate, this is my friend who's studying CS, not me so all of this information comes from a few conversations I had with her a couple of months ago
(edited 8 years ago)
Reply 4
Hey! That sounds really exciting!

I'm agreeing with Java, especially using the software Greenfoot to get to grips with how modular programming works. I would also go with a classic HTML, CSS and JavaScript approach. These languages are pretty easy to pick up with hard work and time on your side, and they allow for a great gateway into other languages. :smile:
Reply 5
I would say Python as I've learnt html and Java too but find Python the most easy by far.

Www.codecademy.com
Reply 6
Original post by JaydAlex
Hey! That sounds really exciting!

I'm agreeing with Java, especially using the software Greenfoot to get to grips with how modular programming works. I would also go with a classic HTML, CSS and JavaScript approach. These languages are pretty easy to pick up with hard work and time on your side, and they allow for a great gateway into other languages. :smile:

I was taught JAVA a bit when I was in a different school. When I moved to a new school, I started learning python after quite a lot of time because I had lost interest in that subject :frown:.
So should I continue learning python or restart learning JAVA.
Reply 7
Java

it's the only one i know

Spoiler


well it'll come in useful when you're creating a project in year 13 :3 and it's a pretty cool language and more impressive than say Python and VB - my teacher hates VB
I've just started learning C# to prepare for computer science, most unis teach C# or Java, a lot of companies require Java or C#. Based on this, I'd say Java or C#.
Reply 9
Original post by z33
Java

it's the only one i know

Spoiler

well it'll come in useful when you're creating a project in year 13 :3 and it's a pretty cool language and more impressive than say Python and VB - my teacher hates VB

What exam board does your school do for computer science?
As my school does not teach computing as an A Level subject, I will have to do it by myself "externally", i.e. studying most of it by myself or by a personal tutor?
Would you recommend doing so?:frown:
Reply 10
Original post by SemperLiber
I've just started learning C# to prepare for computer science, most unis teach C# or Java, a lot of companies require Java or C#. Based on this, I'd say Java or C#.

If you do not mind me asking, what year are you in? And are you currently studying computer science at your school as well?
Original post by Darshan98
If you do not mind me asking, what year are you in? And are you currently studying computer science at your school as well?


I'm on a gap year, aged 20 and I'll be starting uni at aged 21. I didn't study Computer Science at school because they didn't offer it, I've been doing a Level 3 Extended Diploma in IT for the past 2 years and finished with DDM.
Reply 12
Original post by Darshan98
What exam board does your school do for computer science?
As my school does not teach computing as an A Level subject, I will have to do it by myself "externally", i.e. studying most of it by myself or by a personal tutor?
Would you recommend doing so?:frown:


OCR :3
i did Computing externally at another school though so i still had teachers
do you know anyone who did it that could tutor you?
i think it has gotten more difficult with the recent changes so idk about that but the course I did - yeah you can teach that to yourself
it's basically computer biology
obv i wouldn't RECOMMEND it but it is possible :3
just make sure you work properly at it - it's not some easy course you can just get an A in without studying :tongue:
idk if you'll do the coursework in year 13 though :/ look into that and see if they've removed it
Reply 13
Original post by SemperLiber
I'm on a gap year, aged 20 and I'll be starting uni at aged 21. I didn't study Computer Science at school because they didn't offer it, I've been doing a Level 3 Extended Diploma in IT for the past 2 years and finished with DDM.

Don't you need a teacher for a diploma as well?
Can you please help me on this topic about BTECs and Diplomas. I do not really understand what they are and how do you do them.
I checked out websites but did not succeed in discovering anything new:frown:
the programming language used mostly on robots will be C (at least diy ones) but C is difficult to learn as a beginner, so I will suggest python. You can can program an arduino microcontroller with python, or use a raspberry pi to build a robot (also programmed in python). Python can also be used for other stuff. Java/C#/C++ are more for the brains behind the robot, so you wont program the robot directly from any of the three languages, but you can use them to write user interfaces or even the AI for the robot.

Generally this is how robot projects go
Small projects:
Hardware -> Arduino (C)

Big projects:
Hardware -> Arduino (C) + Raspberry pi (Java/Python)

Really Big projects like industry level
Hardware -> Embedded computer/controller (C) + More Powerful Linux computers actually running C++ code which talks to the embedded controller.

but ultimately, C can be used to make most beginner projects. But since C is hard-ish, there are ways to use python instead of C.

EDIT: also since you want to get into AI, the I recommend python even more, it has lots of libraries to do AI
stuff,https://wiki.python.org/moin/PythonForArtificialIntelligence
(edited 8 years ago)
Reply 15
Original post by bigboateng_
the programming language used mostly on robots will be C (at least diy ones) but C is difficult to learn as a beginner, so I will suggest python. You can can program an arduino microcontroller with python, or use a raspberry pi to build a robot (also programmed in python). Python can also be used for other stuff. Java/C#/C++ are more for the brains behind the robot, so you wont program the robot directly from any of the three languages, but you can use them to write user interfaces or even the AI for the robot.

Generally this is how robot projects go
Small projects:
Hardware -> Arduino (C)

Big projects:
Hardware -> Arduino (C) + Raspberry pi (Java/Python)

Really Big projects like industry level
Hardware -> Embedded computer/controller (C) + More Powerful Linux computers actually running C++ code which talks to the embedded controller.

but ultimately, C can be used to make most beginner projects. But since C is hard-ish, there are ways to use python instead of C.

EDIT: also since you want to get into AI, the I recommend python even more, it has lots of libraries to do AI
stuff,https://wiki.python.org/moin/PythonForArtificialIntelligence


Thank you very much bigboateng,

I am not really into coding, so can you explain me in simpler detail, what an Arduino microcontroller is?:s-smilie:
And you suggest that I should learn Python as a beginner.
As you told me I could build a robot with a raspberry pi, using python, I got really excited as I wanted to do this kind of stuff for my UCAS and because I like it a lot. I've found this website. Is it good enough?http://www.instructables.com/id/Building-robots-with-Raspberry-Pi-and-Python/

Your post was really helpful. Thank you very much.:biggrin:
(edited 8 years ago)
Original post by Darshan98
Thank you very much bigboateng,

I am not really into coding, so can you explain me in simpler detail, what an Arduino microcontroller is?:s-smilie:
And you suggest that I should learn Python as a beginner.
As you told me I could build a robot with a raspberry pi, using python, I got really excited as I wanted to do this kind of stuff for my UCAS and because I like it a lot. I've found this website. Is it good enough?http://www.instructables.com/id/Building-robots-with-Raspberry-Pi-and-Python/

Your post was really helpful. Thank you very much.:biggrin:



Arduino or any micro-controller for that matter is like a tiny computer in which you can connect to an electrical circuit to take readings or use it to power motors etc. So if you want to make a circuit where you push a button to blink a light, doing this without any microcontroller is doable but will require a lot of components and might be complicated where as by using a microcontroller, you just connect the button to the microcontroller and the led to the microcontroller (so it's like the middle man) then you make a program to check when the button is pressed, then run code on the microcontroller which will blink the led light by sending pulses of voltage in intervals.

If you want a project to work on, making a robot which moves in a path you give it. so for example say move in a circle of radius 100cm. That should be doable. You just need dc motors, dc motor encoder, arduino/raspberry and some cables.
Reply 17
Original post by bigboateng_
Arduino or any micro-controller for that matter is like a tiny computer in which you can connect to an electrical circuit to take readings or use it to power motors etc. So if you want to make a circuit where you push a button to blink a light, doing this without any microcontroller is doable but will require a lot of components and might be complicated where as by using a microcontroller, you just connect the button to the microcontroller and the led to the microcontroller (so it's like the middle man) then you make a program to check when the button is pressed, then run code on the microcontroller which will blink the led light by sending pulses of voltage in intervals.

If you want a project to work on, making a robot which moves in a path you give it. so for example say move in a circle of radius 100cm. That should be doable. You just need dc motors, dc motor encoder, arduino/raspberry and some cables.


Ok so an arduino is similar to a raspberry pi.
What would you rather prefer to buy? An arduino or a raspberry pi? Mainly for building robots and to learn coding(if I can do so...):tongue::wink:
Original post by Darshan98
Ok so an arduino is similar to a raspberry pi.
What would you rather prefer to buy? An arduino or a raspberry pi? Mainly for building robots and to learn coding(if I can do so...):tongue::wink:


probably Arduino as its easier to set it up and start using it straight away and is cheaper, where as raspberry by requires you to know some basic linux and can be annoying, etc. So for beginner just use Arduino. Most electrical components are made to with with Arduino so I'd go for it.
Reply 19
Fortran...just kidding.

Original post by yasaminO_o
C# or Java


I would agree with this. Also, once you have learned one, learning the other is not difficult as they are similar.

I would not start with C or C++. While it would be more impressive, they aren't the easiest to code in which is part of the reason why languages like C# and Java exist. C is quite good for teaching the basics, but beyond that it gets complicated. In year 1 at uni they will start you off with C# or Java - mine used Java.

Whatever you choose, don't make it VB.
(edited 8 years ago)

Quick Reply

Latest

Trending

Trending