• 0

What is (are) the best programming language(s) for beginners?


  

465 members have voted

  1. 1. What is (are) the best programming language(s) for beginners?

    • Pascal
      13
    • Java
      68
    • Python
      36
    • Vb.net
      50
    • Basic
      23
    • Delphi
      6
    • C
      37
    • C++
      37
    • C#
      100
    • Smalltalk
      0
    • Lisp
      1
    • A++
      0
    • Curry
      1
    • Haskell
      2
    • Ruby
      12
    • Perl
      8
    • Other (refer)
      9
    • PHP
      62


Question

Recommended Posts

  • 0
C# is, for the most part, not as big of an industry standard as C or C++ or Java for that matter. Why teach a student C# when very few employers actually develop with it? Personally, I find Java to be more widespread than C# and therefore makes it a better choice as a first language.
There are indeed more jobs for Java but it's not an order of magnitude greater. (see http://javablog.franksalinas.net/2008/11/22/java-vs-net-job-market-and-salary-survey/) A lot of employers use .NET and most .NET development use C#. Most of the in-house tooling I've seen was Winforms- or WPF-based. It's the language of choice for application development on Windows.
By half compiled half interpreted I meant that Java is not like most other languages which are either fully compiled (C / C++) or fully interpreted (Perl, Schene). Java is essentially both - even if it isn't a 50-50 mix, or 70-30 mix, or 99-1 mix, it doesn’t matter. The point is Java is neither fully compiled nor interpreted - it's somewhere in between. That statement was not meant to be 100% accurate.
Java is (usually) 100% compiled and 0% interpreted, no Java source code is processed at run-time. Bytecode gets translated to machine code on-demand by the runtime, but that is not "interpreting", it is "compiling" - JIT-compiling to be precise. Edited by Dr_Asik
  • 0

I write code in several of the above languages:

  1. PHP
  2. C++
  3. Java
  4. Python

I also use VB6 for work when needed.

Apart from those listed above, AutoIt is my next port of call. It's a nice BASIC like syntax language. Try it :)

  • 0

For beginners I think Visual Basic is still the best.

If you want, you can continue to learn other languages after you master it.

C# is very good, I'm between Novice and Intermediate with it right now...

There is not much of a difference between C# and VB. And you can use both in the same project, so it's mostly about which programming syntax you prefer.

Personally I write code in PHP and Ruby for websites and C# for desktop programs. I'm also learning ASP.Net and ASP.Net MVC.

  • 0

Basic....the name says it all

That, and the fact that its visual child VB can be used in a large range of software development spheres, since it's a natural .NET language.That means you get a language which is both easy to learn and also powerful enough to depend on for most types of software developments.

  • 0

TC didn't specify when he was interested in developing exactly, but if web development is an interest, and it does open the doors to understanding most other languages and all the key concepts, PHP is my recommendation. It can also be used for a lot of things these days actually making this post pretty much moot, you can develop Windows apps, script command line tasks and do all sorts of stuff with it. Including design and print web pages and handle all related web quiries. :)

It's a very powerful language with a lot of built-in functionality for interaction with pretty much all major database, protocols, formats, etc which is why it's so great to work with, and it's not limited by that at all though.

  • 0

That, and the fact that its visual child VB can be used in a large range of software development spheres, since it's a natural .NET language.That means you get a language which is both easy to learn and also powerful enough to depend on for most types of software developments.

Actually, its not a natural .NET language. It's a heavily bastardized version of the original VB that was created to encourage VB developers to migrate to .NET. Don't get me wrong, they did a good job for the mostpart, but its a language held back by its archaic roots (IMO). C# was the only .NET language initially.

  • 0

My stock response to "what's the best programming language?" :

You know, I've seen this topic pop up a lot here and other places. And I've come to the conclusion, it really doesn't matter. As long as you go on and learn more about programming, I don't think your first language is going to affect you all that much. Both have their pros and cons and one may solve a specific problem better than the other, but at the end of the day, it really won't matter which one you choose.
  • 0

If we're going by the order of learning languages according to the curriculum of schools, here's how it looked like for me:

High school: Visual Basic 6 (now .NET) in Grade 10, then Java for Grade 11 and 12

University: For the University of Toronto, in engineering programs minus electrical and computer engineering, students learn C for their only programming course in their undergrad degree. In electrical and computer engineering they learn C++ in their first year. After that, not sure as I did a program switch. In computer science, the first year is Python and the second year is Java in the first term, then C in the second term.

I would say Java is the easiest practical language to pick up. Visual Basic 6 is easier but I can't tell you the last time I saw people writing applications in that, minus VBA. Didn't care for Python much (although not having to declare variable types is funny).

  • 0

Actually, its not a natural .NET language. It's a heavily bastardized version of the original VB that was created to encourage VB developers to migrate to .NET. Don't get me wrong, they did a good job for the mostpart, but its a language held back by its archaic roots (IMO). C# was the only .NET language initially.

Well, you are right regarding how VB.NET shaped up and from what , that is VB6.But I presume that today VB is not any less .NET natural than C#; I can't back up that statement though as I haven't done any VB code, it's just an observation based on what I read here and there.

  • 0

What, no assembly language?

I know what's the deal :s

for understanding how things work i'd say programming a pic chip/x86 asm/C or C++ or even better C++ with inline assembly

to get stuck straight into it perhaps VB (I personally dislike VB.net) and C#

I write code in several of the above languages:

  1. PHP
  2. C++
  3. Java
  4. Python

I also use VB6 for work when needed.

Apart from those listed above, AutoIt is my next port of call. It's a nice BASIC like syntax language. Try it :)

I quite enjoy VB6 despite it being old and unable to take advantage of newer technologies correctly its a good simple language that still has some use left in it but i wouldn't recommend it to a beginner in this day and age for anything else C++/asm does the trick and c# for work

  • 0

It really also depends on what you mean by 'learning' a language. I'd be confident you could have someone writing Ruby code in far less time then say Java simply because of how much simpler it is to get running. You don't have to explain what 'public static void main(String[] args)' all means in your first breath. Yet personally I find Java code to be entirely straight forward to understand once you get over it's verboseness; whilst after several years of using Ruby I'm still baffled by some of the code I see on the Ruby mailing lists. I've also seen lots of programmers produce simple games in some of the beginner basic langauges (like Dark and Blitz Basic) who don't actually know how to define a function (and plenty who just refuse to use functions).

  • 0

Suggesting to start on a harder, heavier language? Really?

I am keen to understand your thoughts further?

I agree with learning a non-memory-managed language first.

Memory management is an important concept in both managed and non-managed code-bases but the concepts are better learned in a non-managed language. Also, with a simpler language such as C, the emphasis is on learning the language rather than putting large framework libraries front and centre. There's a purity and simplicity to C that I think still makes it a perfect beginner's language.

  • 0

Java for me. Allows you to get a grasp of the higher level of OO programming and to think that way without worrying as much about the fiddly details.

I know a number of people who went from Java to C variants and the other way round and almost all of them agree that Java onwards is a good way. Some of the C to Java people had real problems (if I remember rightly with over engineering things that Java just did)

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • The quantum search for Time's origin had an equally mind-boggling conclusion by Sayan Sen Image by Steve Johnson via Pexels A theoretical study from researchers at the University of Surrey suggested that the direction of time may not be fundamentally fixed in certain quantum systems. The work, published in Scientific Reports, examined how the “arrow of time” could emerge from microscopic physics and found that time-reversal symmetry can remain intact even in models used to describe processes such as energy loss and thermalisation. The arrow of time refers to the observed one-way direction from past to future in everyday life. In macroscopic processes, this is easy to see. Spilled milk spreads across a table and does not gather back into a glass, and heat flows from hotter objects to colder ones. These processes shape the common sense idea that time moves in a single direction. However, at the level of fundamental physics, many equations do not prefer a direction of time. Time-reversal symmetry means that the same physical laws can describe a system whether time moves forward or backward. This has made it difficult to explain why irreversible behaviour appears in the large-scale world even when the underlying rules do not require it. Dr Andrea Rocco, Associate Professor in Physics and Mathematical Biology at the University of Surrey, described this contrast: "One way to explain this is when you look at a process like spilt milk spreading across a table, it's clear that time is moving forward. But if you were to play that in reverse, like a movie, you'd immediately know something was wrong – it would be hard to believe milk could just gather back into a glass. However, there are processes, such as the motion of a pendulum, that look just as believable in reverse. The puzzle is that, at the most fundamental level, the laws of physics resemble the pendulum; they do not account for irreversible processes. Our findings suggest that while our common experience tells us that time only moves one way, we are just unaware that the opposite direction would have been equally possible." The study focused on open quantum systems, which are quantum systems that interact with a surrounding environment. This environment, often described as a heat bath, can exchange energy and information with the system. The researchers used this framework to study how a direction of time might appear even when the underlying physics does not enforce one. A key part of the analysis involved the Markov approximation. This is a simplification used in many models where the system is assumed not to retain memory of its past states. The idea is that changes depend only on the current state, not on earlier history. This is commonly used when studying thermalisation, which is the process where a system settles into equilibrium with its environment. The study also used concepts such as master equations, including the Lindblad and Pauli equations, which describe how probabilities of different quantum states change over time. Another related model discussed was quantum Brownian motion, which describes the random-like movement of a quantum particle interacting continuously with its environment. In these descriptions, a “memory kernel” can appear, which is a mathematical term that accounts for how past states influence current behaviour. The researchers found that applying the Markov approximation did not break time-reversal symmetry. Even when the system interacted with an effectively infinite heat bath, the resulting equations of motion remained symmetric in time. This meant that the same mathematical description could, in principle, run forward or backward in time without contradiction. The study further showed that standard frameworks used in open quantum systems, including quantum Brownian motion and master equations like the Lindblad and Pauli forms, could be written in a time-symmetric way. These equations are typically used to describe processes that look irreversible, such as dissipation and thermalisation, but the results suggested they can also be interpreted as allowing evolution in both time directions. Thomas Guff, Research Fellow in Quantum Thermodynamics, said: "The surprising part of this project was that even after making the standard simplifying assumption to our equations describing open quantum systems, the equations still behaved the same way whether the system was moving forwards or backwards in time. When we carefully worked through the maths, we found that this behaviour had to be the case because a key part of the equation, the "memory kernel," is symmetrical in time. We also found a small but important detail which is usually overlooked – a time discontinuous factor emerged that kept the time-symmetry property intact. It’s unusual to see such a mathematical mechanism in a physics equation because it's not continuous, and it was very surprising to see it appear so naturally." The researchers also noted that deriving a one-way arrow of time from time-reversal symmetric microscopic dynamics remains an open problem across fields such as thermodynamics, statistical mechanics, particle physics, and cosmology. Their results suggested that some standard descriptions of irreversible behaviour in open quantum systems may be better understood using a time-symmetric formulation of Markovianity. According to the study, processes such as thermalisation, which are usually treated as irreversible, could in theory be described in a way that allows evolution in either time direction under the same rules. This does not imply that time reversal occurs in everyday life, but rather that the underlying equations do not strictly enforce a single direction. Overall, the findings suggested that the perceived direction of time may emerge from how physical systems are modelled and approximated, rather than from a fundamental asymmetry in the laws themselves. The researchers noted that this perspective could have implications for ongoing work in quantum mechanics, thermodynamics, and cosmology on the origin of time’s arrow. Source: University of Surrey, Nature This article was generated with some help from AI and reviewed by an editor. Under Section 107 of the Copyright Act 1976, this material is used for the purpose of news reporting. Fair use is a use permitted by copyright statute that might otherwise be infringing
    • A bit premature... 100% Marketing. Bizarre.
    • A $300 price hike is insane! No one is going to want to pay that much!
    • Since the 1st one flopped, there is really no reason to make another one. It's just losing money left and right.
  • Recent Achievements

    • Reacting Well
      BizSAR earned a badge
      Reacting Well
    • First Post
      AndreaB earned a badge
      First Post
    • Week One Done
      Huge Trailer earned a badge
      Week One Done
    • Week One Done
      Classifyskilleducation earned a badge
      Week One Done
    • One Month Later
      eurospharma62 earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      581
    2. 2
      +Edouard
      182
    3. 3
      PsYcHoKiLLa
      75
    4. 4
      Michael Scrip
      73
    5. 5
      neufuse
      64
  • Tell a friend

    Love Neowin? Tell a friend!