What would be a good programming language to learn if you're a beginner to programming?

  • Thread starter Deleted User
  • Start date
  • Views 10,565
  • Replies 106

filfat

CTO @ Nordcom Group Inc.
Member
Joined
Nov 24, 2012
Messages
1,261
Trophies
1
Location
Gothenburg, Sweden
Website
www.sweetsideofsweden.com
XP
1,749
Country
Sweden
C# Is a great starting language it also quote easy to learn C++ once you know C#.
Anyhow don't learn python just yet; there's _no_ real use for it (for example how many large application uses it?) If you want to learn a high level language go with Javascript (EMCA 6)

Actually I would recommend Java over C/C++ for learning.
I don't see what's wrong with JAVA. This shares a lot of similarities with C/C++, so it may be easy to jump from one to another if the guy wishes to.



Java is not relevant anymore, and saying its a good language is a lie; however i can agree on the fact that it's easy ;) C# hower is the way to go (especially now when C# is cross platform) :)
 
  • Like
Reactions: Deleted User

Arras

Well-Known Member
Member
Joined
Sep 14, 2010
Messages
6,318
Trophies
2
XP
5,444
Country
Netherlands
Most people will honestly just recommend whatever they use/started with. I use C# myself and rather like it. It's similar to Java and very object-oriented. It takes some getting used to, but it's really useful to know how to create decently structured code instead of just hacking everything together in one file with 2000+ lines. You can also use it in Unity if you want, which might be a pretty good idea to start out with, since you can use the Unity editor combined with simple scripts to practice things and get fun visual feedback on what you're doing.
Microsoft also offers Visual Studio for free now, so I recommend downloading that. I think it has support for C(++) and a few other things too. https://www.visualstudio.com/products/visual-studio-community-vs

(also, I really don't think it's a good idea to start with Javascript. Javascript has a RIDICULOUS number of bad things you can do)
 
  • Like
Reactions: Deleted User

sarkwalvein

There's hope for a Xenosaga port.
Member
Joined
Jun 29, 2007
Messages
8,524
Trophies
2
Age
41
Location
Niedersachsen
XP
11,288
Country
Germany
Java is not relevant anymore, and saying its a good language is a lie; however i can agree on the fact that it's easy ;) C# hower is the way to go (especially now when C# is cross platform) :)
Really?
Everyday around me I see Java used more and more, but I mostly know what they use in academics/research in Universities, and in some companies related to the automotive industry.
Not that I am defending Java, only saying what I see in my very narrow view/contact with professional programming.
I myself don't normally program Java anyway, most of my work is either in C/C++ or in a specific engineering research related scripting language (MATLAB & friends).
 

filfat

CTO @ Nordcom Group Inc.
Member
Joined
Nov 24, 2012
Messages
1,261
Trophies
1
Location
Gothenburg, Sweden
Website
www.sweetsideofsweden.com
XP
1,749
Country
Sweden
Really?
Everyday around me I see Java used more and more, but I mostly know what they use in academics/research in Universities, and in some companies related to the automotive industry.
Not that I am defending Java, only saying what I see in my very narrow view/contact with professional programming.
I myself don't normally program Java anyway, most of my work is either in C/C++ or in a specific engineering research related scripting language (MATLAB & friends).

Weird how _all_ the development job listings asks for .NET developers (That might just be Sweden and US though)
 
  • Like
Reactions: Deleted User
D

Deleted User

Guest
OP
Really?
Everyday around me I see Java used more and more, but I mostly know what they use in academics/research in Universities, and in some companies related to the automotive industry.
Not that I am defending Java, only saying what I see in my very narrow view/contact with professional programming.
I myself don't normally program Java anyway, most of my work is either in C/C++ or in a specific engineering research related scripting language (MATLAB & friends).

I see Java being used quite often myself. A lot of the hacking utilities I have on my computer are in Java, and quite a few other types of programs, too.
 
  • Like
Reactions: RodrigoDavy

sarkwalvein

There's hope for a Xenosaga port.
Member
Joined
Jun 29, 2007
Messages
8,524
Trophies
2
Age
41
Location
Niedersachsen
XP
11,288
Country
Germany
Weird how _all_ the development job listings asks for .NET developers (That might just be Sweden and US though)

Perhaps that is just the way it is, not in my field (engineering/research), but I believe you are much more knowledgeable than me in the actual IT/development programming business. So I take your word.

No anon, once you got to "failed to compile, *some error*" How did you adjust the compiler to the correct C version the tutorial is using?
How did you find the language documentation for the version, to correct your code so it compiled?

Sorry, but that is just too few information to know what are yo talking about,
What tutorial? What compiler? What error?
The reason I suggested using a linux distro with development packages installed is that all is already set up and working correctly.
 

filfat

CTO @ Nordcom Group Inc.
Member
Joined
Nov 24, 2012
Messages
1,261
Trophies
1
Location
Gothenburg, Sweden
Website
www.sweetsideofsweden.com
XP
1,749
Country
Sweden
Perhaps that is just the way it is, not in my field (engineering/research), but I believe you are much more knowledgeable than me in the actual IT/development programming business. So I take your word.

I'm not sure thats true :P
However, might just be an enterprise thing, seems like all the schools and workplaces I have been looking at teaches/uses .NET (Most likely because of ASP.net, Xamarin and Unity) :)

Also, it's not that Java is all bad, theres quite a lot of good things (eg Cross platform and its rather quick to get something running; kind of like Windows Apps) :)
 
  • Like
Reactions: Deleted User

del_delly

Well-Known Member
Member
Joined
Sep 21, 2013
Messages
137
Trophies
0
Age
31
XP
163
Country
Norway
Sorry, but that is just too few information to know what are yo talking about,

I am talking about a hypothetical scenario. As far as I understand, half the reason to go Lua/Python for learning is because they have proper versions, meaning so long they match up whatever you do is fine.
For C and C++, what version you are using is a mess. And from the 3-4 C tutorials I have read, none of them ever adress this issue.
 

sarkwalvein

There's hope for a Xenosaga port.
Member
Joined
Jun 29, 2007
Messages
8,524
Trophies
2
Age
41
Location
Niedersachsen
XP
11,288
Country
Germany
I am talking about a hypothetical scenario. As far as I understand, half the reason to go Lua/Python for learning is because they have proper versions, meaning so long they match up whatever you do is fine.
For C and C++, what version you are using is a mess. And from the 3-4 C tutorials I have read, none of them ever adress this issue.

Oh well... Yes, actually you have kind of incompatibility with actual versions of the language standard (for example compiler not being compliant with C++14), but that is a problem mostly with old Microsoft compilers.
Stick to a (always easily obtainable) updated version of gcc and you will not have these problems that relate to the core language and the STL.
Then, the actual headache relating C/C++ programming, is that you very often (always?) use third party libraries that are not part of the standard (because there is so much missing), like Qt, boost, etc, etc, etc... and sometimes for a project you need a specific library version of a third party that you also need to get to compile, and headaches start arriving.
 
  • Like
Reactions: Deleted User

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,404
Country
United Kingdom
Very good article.
But I would suggest, even if it is anecdotal, to name some commonplace programming languages used in academics/research:
  • MATLAB and its FOSS look-alikes Octave and SciLAB (very used in research related to engineering)
  • R (very used in research that uses lot of statistics)
  • FORTRAN (very used by the old professor still giving classes that doesn't want to leave the past behind)
  • LaTeX (if CSS and HTML were there, why not the defacto standard for scientific paper typesetting)

*starts rocking in the corner at mention of matlab*
Granted taking the time to learn it meant I did in 20 minutes what others still fighting with spreadsheets did in 2 hours.

I am surprised I did not mention R, I usually mention it in passing for such articles.

I would only suggest Fortran to people that are otherwise looking at Cobol, K&R C or something so they can go in and sort problems with legacy setups. Granted the academic side still has some serious ties, I mainly notice it in astronomy related stuff but that is more because that aligns better with my interests and I am sure it is probably used lots elsewhere too.

Tex/latex. Afraid I am too cool for those and use Lyx for my multi page professional documents. I mentioned it in the articles on multimedia but I am not sure typesetting is all that relevant here.
 
  • Like
Reactions: Deleted User

JoostinOnline

Certified Crash Test Dummy
Member
Joined
Apr 2, 2011
Messages
11,005
Trophies
1
Location
The Twilight Zone
Website
www.hacksden.com
XP
4,339
Country
United States
The other way around.
For learning programming interpreted is best as you can easily go through your code, run, modify, run, and get used to how things works by experience FAST without having to deal with the compile-link-execute process.
When you already have some feeling for programming logic and algorithms I think it is a good moment to move from interpreted.
(Of course, you could always start from scratch with a compiled language but I think it is not the most effective approach)
^This. This, so many times.

And for the record, I didn't start with Java. I started with TI-BASIC (if that counts), then took SCHEME in college, followed by Java. C is self-taught.

SCHEME was horribly frustrating because it is (intentionally) so limited. Because of that, you have to learn how to be creative. I'm not an exceptionally good programmer, but because of SCHEME I'm great at compacting things and making my functions flexible for future use. Unfortunately, it's not great if it's self-taught. The temptation to quit is too easy when your grade isn't on the line. You aren't going to give yourself "homework" that can lead to you screaming out of frustration (yeah, that happened to me once, and I'm normally very level-headed).

People put down Java as a learning language because they are only thinking in terms of distribution. I never use Java anymore, and I'd certainly never distribute anything written in Java. However, it's a great language to learn with, and there is no shortage of resources for guides. Combining it with Eclipse and the downloadable API that can be linked to it, you have instant access to function examples. You can test out all your stuff without having to compile too.
 
  • Like
Reactions: Deleted User

Nollog

Well-Known Member
Member
Joined
Oct 10, 2008
Messages
2,964
Trophies
0
XP
1,327
Country
Ireland
I've actually been wanting to start a project in Unity for, well, a few months actually. Does Unity use it's own programming language?

I've only installed it, haven't bothered doing anything with it because I have no ideas.

Since minecraft? Please; Java has been the stuff of security nightmares, installation nightmares, maintenance nightmares, web browsing nightmares, more security nightmares and more besides since before minecraft was an incomplete twinkle in the eye of its creator. Java's taint was mainly limited to the business software world since everybody dropped it from websites though so not everybody felt it.

As for Basic please no. It has awful concepts underpinning it and is often considered one of the worst things to happen to early computing.
It only became popular to hate java after minecraft, I didn't say anything about any legitimate concerns.

basic is easy, it's a good base to start from if she wants to actually finish something with programming.
most others will probably cause her enthusiasm to fizzle out.


Weird how _all_ the development job listings asks for .NET developers (That might just be Sweden and US though)
.net is becoming very popular, but java is still wanted, and businesses love using the same programs for decades, so will at least be around for upkeeping.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,404
Country
United Kingdom
It only became popular to hate java after minecraft, I didn't say anything about any legitimate concerns.

basic is easy, it's a good base to start from if she wants to actually finish something with programming.
most others will probably cause her enthusiasm to fizzle out.

I quite assure you Java was loathed by basically everybody that had to maintain computers, give or take those making good money from virus cleanups, long before minecraft. Hate does not have to be unjustified. Edit. Also http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html which was from 2005.

Basic is easy, I am not about to argue otherwise. It is however a bad programming language from a lot of perspectives and the very last thing you want to be doing is unlearning bad habits. Equally if you can not keep your enthusiasm when using something like python then you picked the wrong first project.
 

Ericthegreat

Not New Member
Member
Joined
Nov 8, 2008
Messages
3,455
Trophies
2
Location
Vana'diel
XP
4,316
Country
United States
I've been wanting to get into programming for quite a while now, but I don't know what programming language would be good for someone who is a complete beginner to programming, I want to try to start with one that's at least slightly easy.
Learn java, then after you've made somthing, switch to unity and learn C# (is a easy switch from java)

EDIT: Perhaps these days there are good C# for unity tutorials. But the aforementioned was just my path, but I will say I am probably the only person in this thread wgo has published at least semi successful app, created with unity.
 
  • Like
Reactions: Deleted User

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
31,284
Trophies
2
Age
38
Location
Dr. Wahwee's castle
XP
18,969
Country
United States
I've been thinking about programming, even tried it in university classes, however, I fear lest I made a mistake in wanting to learn it. They had us learn C# to begin with, I take it C+/C++ would be better vantage point to start with? Heck, maybe I'm not meant to learn it, which would explain why I failed the course twice but, C+ sounds like the best way to start.
 
  • Like
Reactions: Deleted User

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
23,392
Trophies
4
Location
Space
XP
14,026
Country
Norway
Personally, I started with Visual Basic, didn't like it, went over to Game Maker and learned GML, and that got me familiar with the syntax that many languages share, like PHP, C, Java.
Then I went over to Delphi (Pascal) and liked how powerful the IDE was, and how easy the language was once I got used to it. I also used C/C++ a little but never really got into it. It's lower level than most others so it's probably not the best starting point.

Since then I've been using PHP, C# and a bit of java. C# is my current favorite.
think C# is a good starting point nowadays as it's a modern high-level language that is used professionally and Visual Studio is powerful not to mention free.
Unity is probably a better starting point for game development. Some people consider it the modern day equivalent to Game Maker.
Java is pretty easy too, and very similar to C#, but java isn't used much nowadays so there's not much point in learning it unless you want to do minecraft modding or something.
 
  • Like
Reactions: Deleted User

Alkéryn

Moon Dweller ~
Member
Joined
Mar 15, 2015
Messages
1,665
Trophies
1
Age
25
Location
Albategnius, Moon
XP
2,392
Country
France
Well I started with HTML5 but I dont know if I can call it a language so I would recomand you c or c++(beter of both to begin(they are diferent there isn't a better one)) but they are maybe a bit dificult for a beginer just don't begin with java or assembly
I would realy recomand you c++ and because you are canadian I admit that you speak french so I realy recomand you this site :
Learn c++ there
 
  • Like
Reactions: Deleted User

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: https://youtu.be/qv96JYhfAuA?si=_PN4PTWfj5BWI9wk